Duke4.net Forums: JFSW under Linux running all 3(4) games in Shadow Warrior Classic Complete - Duke4.net Forums

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

JFSW under Linux running all 3(4) games in Shadow Warrior Classic Complete

User is offline   r.a 

#1

Now that I have jfsw working in 64-bit Linux, I'd like to know the correct setup to run the original Shadow Warrior, the Twin Dragon, and the Wanton Destruction (and of course the shareware version Enter the Wang), from the GoG version of Shadow Warrior Classic Complete.

Here is what I did so far. I created 3 separate directories, one for each sub-game, and symlink ~/.jfsw to one of the directories depending on which game I want to play.

For Shadow Warrior, I just copied everything to the top directory except dragon directory (it required some files in build directory too, and music files had to be at the top too).

I did the same for Twin Dragon, just copy everything in dragon directory to the top, plus the files in build directory to the top too.

For Wanton Destruction, i copied and renamed wanton.dat to sw.dat and wt.grp to sw.grp, otherwise jfsw won't list the the game in the menu.

Is there anything missing, or is this the correct way to setup? Can jfsw pick up all games and list them in menu somehow? Is there a better way of doing this?
0

User is offline   Hendricks266 

  • Weaponized Autism

  #2

It's a little bit complicated. You're on the right track, but you'll likely miss the addons' level and episode names. For those, you'll need to find ProAsm's packages of them and rename the TwinDrag.cfg and WantDest.cfg to swcustom.txt.

I believe JFSW should recognize the Wanton GRP file if you leave it as wt.grp. The source has its checksum, but I don't see enum flags, like EDuke32 has, for recognizing the level names. https://github.com/j...r/src/grpscan.c

wanton.dat is not necessary when playing with a port. If memory serves, it is a renamed SW.EXE that has been hex edited to change the level names.
0

User is offline   r.a 

#3

View PostHendricks266, on 21 May 2018 - 04:28 PM, said:

It's a little bit complicated. You're on the right track, but you'll likely miss the addons' level and episode names.


Thank you so much for the details. I'll look into ProAsm and follow the instructions. As long as JSFW can run all those game addons, I have no complaints. I can get by with "wrong" level names.
0

User is offline   MrFlibble 

#4

I remember the Windows build of JFSW having trouble with saved games, but that was a long while ago. Is this fixed in the Linux version? I wouldn't mind having a functional Linux port anyway (I haven't tried the Classic Redux one but I'm assuming it works?).
0

#5

@r.a - This is really cool :( Would you mind telling us how you built it? Dependencies that need installing, builds script, that kind of thing?

Just downloading (with git clone) and running make doesn't work, it seems to involve messing around with the subdirectories (e.g., jfmact) and even then gcc complains about conflicting declarations for stuff :P


src/game.c:934:12: error: conflicting types for 'startwin_run'

extern int startwin_run(void);
           ^~~~~~~~~~~~
In file included from src/game.c:45:0:
jfbuild/include/baselayer.h:30:12: note: previous declaration of 'startwin_run' was here
 extern int startwin_run(struct startwin_settings *);
            ^~~~~~~~~~~~
src/game.c: In function 'LoadDemoRun':
src/game.c:788:9: warning: ignoring return value of 'fgets', declared with attribute warn_unused_result [-Wunused-result]
     	fgets(ds, 6, fin);
     	^~~~~~~~~~~~~~~~~
src/game.c: In function 'app_main':
src/game.c:3529:17: warning: ignoring return value of 'chdir', declared with attribute warn_unused_result [-Wunused-result]
             	chdir(dirpath);
             	^~~~~~~~~~~~~~
Makefile:238: recipe for target 'src/game.o' failed
make: *** [src/game.o] Error 1


This post has been edited by Martin Howe: 01 July 2018 - 01:00 AM

0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options