TTLG|Jukebox|Thief|Bioshock|System Shock|Deus Ex|Mobile
Results 1 to 23 of 23

Thread: SS1 modding tools

  1. #1
    Member
    Registered: Feb 2002
    Location: Canada

    SS1 modding tools

    For a while now I've been working on a set of SS1 modding tools, including a map editor. Most of it's not done yet, but the gamesys editor (or rather, the OBJPROP.DAT editor, which seems to serve much the same purpose in SS1 as SHOCK2.GAM in SS2) is, lacking only support for the stuff that hasn't been reverse engineered yet (doors, animations, triggers, containers and critters) -- and I intend to add limited support for those (the common object properties) over the next few days.

    It's written almost entirely in Lua, using lbitlib (C) for bitwise operations and libFOX-1.4 + libfxlua (C++) for the GUI.

    Using it is fairly self-explanatory, although I would advise backing up your OBJPROP.DAT first, in case there's a bug somewhere I've missed.

    [EDIT]
    The program has been combined into a single archive which supports both OSs, available in both RAR and TAR.GZ format. Old versions will remain up for a while.

    Changelog
    200509202131
    Initial release of gamesys editor. Support for types 0 through 9.
    Screenshot 2
    200509211023
    Bugfixes and repackaging. COP support for types 10 through 14.
    200509221940
    Integration into unified GUI. Beginnings of RES support (can't do much but see what chunks have been loaded, so far). Gamesys editor will now draw names from CYBSTRNG.RES if it's loaded, rather than hardcoded tables. Better error reporting and integrated Lua debugger.
    Gamesys tab
    Resource tab
    I told it that dartguns should be 3d objects rather than sprites

    Current Version (200509221940)
    [RAR][TAR.GZ] Combined package supporting both OSs.
    Old Versions
    [RAR][TAR.GZ] Core files - the Lua code making up the program itself. Also includes OBJPROP.DAT in case you don't have SS1 but still want to try some modding.
    [RAR][TAR.GZ] Linux binaries - unpack these into the same directory as the above and run GSEdit.sh. You may need to install libFOX* in someplace appropriate like /usr/local/lib and run ldconfig to get it to run properly.
    [RAR][TAR.GZ] Windows binaries - unpack these into the same directory as the core files and run GSEdit.bat.
    Last edited by ToxicFrog; 22nd Sep 2005 at 23:56.

  2. #2
    Member
    Registered: Oct 2000
    Location: Massachusetts
    Screenshots look interesting, I don't really know too much about anything else though. Good luck.

  3. #3
    Member
    Registered: Jul 2003
    WOW! You've been quite busy at this lately! I can't wait to try it out.

    What are the prospects of you adding some other video modes to SS2 (ex. widescreen modes and higher res) and limited modification of sshock2.exe and other files that we don't know how to change?

  4. #4
    Member
    Registered: Feb 2002
    Location: Canada
    Not terribly likely, I'm afraid, at least for the forseeable future - I'll be concentrating all my efforts on SS1.
    Besides which, SS2 already has modding tools for altering the maps and gamesys; the CRF files can be edited using anything that will unpack ZIP files and most of their contents are either plaintext or well-known formats; and you can get high resolution by modifying (IIRC) cam.cfg. About the only thing to add would be widescreen mode. SS1, in contrast, lacks all of this.

  5. #5
    Member
    Registered: Mar 2001
    Location: Melbourne, Australia
    What I`d REALLY LOVE TO SEE for SS1 is a level editor.

  6. #6
    Member
    Registered: Feb 2002
    Location: Canada
    Quote Originally Posted by icemann
    What I`d REALLY LOVE TO SEE for SS1 is a level editor.
    As I said in my first post, I'm working on it. But it's a much more complex problem than a gamesys editor, depends on other components I haven't finished yet (the resource editor/subsystem, mostly), and is thus going to take a while.
    I'll get it done eventually, though. And I already have some ideas of what I'll do with it once it's done. Cortex Reavers for all!

  7. #7
    Member
    Registered: Apr 1999
    Location: Austria, Europe, Earth, Sol
    yo! As for the resource data: did you have a look at our data descriptions from TSSHP? SourceForge Project TSSHP, in the CVS path there's a big text file in the docs path containing everything we were able to find out about the resources...

    Just a hint if you didn't used it already...

    [EDIT]Ok, you probably know already about this (Saw you making a reference to TSSHP somewhere else) -- I hope it was of good use...[/EDIT]

  8. #8
    Member
    Registered: Feb 2002
    Location: Canada
    FF, if not for that file this project would never have happened. I've added a lot of info to it, too, mainly to do with the format and layout of the gamesys, and intend to expand on it as much as I can over the course of this project (and eventually post the updated version). It's been invaluable to me, especially the sections on the map format and on the compression scheme used in resfiles.

  9. #9
    Member
    Registered: Jun 2003
    Location: In His hands
    Quote Originally Posted by ToxicFrog
    Besides which, SS2 already has modding tools for altering the ... gamesys...
    While ShockED is a working gamesys editor, it would be nice to have something a tad more user-friendly.....

    [Off topic]
    Firefreak: Has TSSHP basically died?
    [/Off topic]

    This SS1 editor is looking excellent! And you're working on a level editor as well?! Sweet!
    Now if only SS1 would work in high-res.....

    Enchantermon
    Is that considered flirting?
    TNTís Lair
    Citadel Conversion Project

  10. #10
    Member
    Registered: Feb 2002
    Location: Canada
    Quote Originally Posted by Enchantermon
    While ShockED is a working gamesys editor, it would be nice to have something a tad more user-friendly.....
    I'll keep that in mind, but if I ever do get around to writing such a tool it won't be until after I finish the SS1-related stuff.

    Now if only SS1 would work in high-res.....
    It Works For Me (tm). I do intend to revisit it, though, stripping the extender so that I can properly disassemble it and implementing highres in a more elegant manner (possibly even unlocking the 1024x768 mode that's already present, but hidden, in the menus). But I want to at least get res-4.0 finished first.
    Last edited by ToxicFrog; 21st Sep 2005 at 17:29.

  11. #11
    Member
    Registered: Jun 2003
    Location: In His hands
    Quote Originally Posted by ToxicFrog
    I'll keep that in mind, but if I ever do get around to writing such a tool it won't be until after I finish the SS1-related stuff.
    W00t!
    Quote Originally Posted by ToxicFrog
    It Works For Me (tm).
    ...which is one reason I evny you so much.....
    Quote Originally Posted by ToxicFrog
    I do intend to revisit it, though, stripping the extender so that I can properly disassemble it and implementing highres in a more elegant manner (possibly even unlocking the 1024x768 mode that's already present, but hidden, in the menus). But I want to at least get res-4.0 finished first.
    Mmkay.
    Wait.....
    SS1 has a hidden 1024x768 button?
    How odd.....

    Enchantermon
    Is that considered flirting?
    TNTís Lair
    Citadel Conversion Project

  12. #12
    ZylonBane
    Registered: Sep 2000
    Location: ZylonBane
    This all seems like an awful lot of effort for a game which barely even runs anymore.

  13. #13
    Member
    Registered: Apr 1999
    Location: Austria, Europe, Earth, Sol
    Quote Originally Posted by Enchantermon
    [Off topic]
    Firefreak: Has TSSHP basically died?
    [/Off topic]
    A year ago (when for one year nothing more was done already) I responded to spurious fan mail "it's currently on ice" - one year later not even fan mail arrives anymore.

    Jim had completed university two years ago (and moved to another place as far as I remember); I had more things to do at work; Brian had other things as well...

    To come back to your question: I guess so. Basically.
    I guess it's the typical destiny for many open source projects.

    Hey, perhaps some time I'll have a mail from Jim saying "Where's your code? Your task is in overtime for 2 years, three months and ten days now - Yesterday I've added..."

    [EDIT]sorry, forgot to add this one:
    Quote Originally Posted by ZylonBane
    This all seems like an awful lot of effort for a game which barely even runs anymore.
    It's fun A (old) game that still has lot of fans which can act as a template for programmers that want to have a start - A sandbox if you like - and a fanbase that appreciates your effort. (Why making a level editor for Monster Bash if hardly anyone plays it -- I believe a MonsterBash mob is coming up now)
    [/EDIT]

  14. #14
    Member
    Registered: Feb 2002
    Location: Canada
    Mmkay.
    Wait.....
    SS1 has a hidden 1024x768 button?
    How odd.....
    There's entries in the LFB parameter table and the interface scaling table for 1024x768 (along with a lot of odd modes like 320x480). More interestingly, there's entries in CYBSTRNG.RES for "320x240", "320x400", "640x400", "640x480", and "1024x768". This implies that - unlike 800x600 mode - getting 1024x768 working might be as simple as tracking down wherever it controls what modes it makes available to the player and re-enabling 1024x768.
    Annoyingly, there doesn't appear to be any entries for 800x600, so that bit's still going to have to hacked in.

    Quote Originally Posted by Firefreak
    A year ago (when for one year nothing more was done already) I responded to spurious fan mail "it's currently on ice" - one year later not even fan mail arrives anymore.
    Excuse me? I sent mail to shodan@ asking about the status of TSSHP a few weeks ago because I'd heard disturbing rumours it was dead!
    Speaking of which, do you mind if I stea^H^H^H^Hborrow the TSSHP renderer for the map editor? I'm planning on top-down, iso flat, iso textured, and 3d view modes, and since you already have this engine written up...

  15. #15
    Member
    Registered: Jun 2003
    Location: In His hands
    Quote Originally Posted by Firefreak
    To come back to your question: I guess so. Basically.
    Ah. Unfortunate.

    Enchantermon
    Is that considered flirting?
    TNTís Lair
    Citadel Conversion Project

  16. #16
    Member
    Registered: Apr 1999
    Location: Austria, Europe, Earth, Sol
    Quote Originally Posted by ToxicFrog
    Excuse me? I sent mail to shodan@ asking about the status of TSSHP a few weeks ago because I'd heard disturbing rumours it was dead!
    The shodan@ address is probably dead, too (if you mean the one at the university) - All data/access related to Jims university was closed soon after he finished it.
    Other than that I count two distinct people that emailed me this year regarding TSSHP, one offering webspace and another one trying to get it run with the demo.
    (Furthermore, this second guy reported that both addresses at madeira returned errors - unless you know a special back door hack which I don't )


    Quote Originally Posted by ToxicFrog
    Speaking of which, do you mind if I stea^H^H^H^Hborrow the TSSHP renderer for the map editor? I'm planning on top-down, iso flat, iso textured, and 3d view modes, and since you already have this engine written up...
    TSSHP is considered open source (but I don't know the license by heart now, have a look at sourceforge) -- if it's the right one you surely can reuse the renderer (With proper credit )

    [EDIT]
    Quote Originally Posted by Enchantermon
    Ah. Unfortunate.
    Yes... But I refuse to post this 'officially' as I'm not the project leader. (And I've also not the power on SF to do any likewise administrative work...) . Jim is the one who has all the keys.
    [/EDIT]

  17. #17
    Member
    Registered: Feb 2002
    Location: Canada
    Have released version 200509221940. New in this version:
    - Gamesys editor integrated into unified GUI
    - Foundation of resource editor support (ability to load resource files and list the loaded chunks)
    - If CYBSTRNG.RES is loaded, gamesys editor will read names from it rather than the hardcoded tables; this only affects the tree entries if OBJPROP is loaded after CYBSTRNG, though. This also means you can now see the French or German names in the gamesys tab by loading FRNSTRNG or GERSTRNG instead of CYBSTRNG.
    - various bugfixes, including serious internal improvements to the 'classes' module
    - much better error reporting, including an integrated Lua debugger and a free stack trace with every error throw.

    See the first post for the download links and screenshots.

  18. #18
    Member
    Registered: Apr 2001
    Location: England
    Do we have any docs on how damage is applied in SS1, accounting for weapon type and enemy resistances?

    TF, I'll be very interested in those filespecs when you've pulled them all apart! I tried making a start on JavaShock a week ago, based on the TSSHP docs, but didn't get much beyond the planning phase due to some missing format information.

  19. #19
    Member
    Registered: Feb 2002
    Location: Canada
    Bugfix release: if you're having an issue where, when you attempt to save the gamesys, it says "No Gamesys Loaded", re-download.

    @descenterace: The ICE Breaker hintbook has detailed information on the damage mechanics, reproduced here.
    As for the file specs, what were you looking for? If it has to do with the gamesys tables <10 then I probably have it already.

  20. #20
    Member
    Registered: Apr 2001
    Location: England
    As long as the filespec is complete enough to... well... dig out all the numbers needed for the game, I can use it.

  21. #21
    New Member
    Registered: Feb 2010

    M-M-Monster bump

    Bumping this because after playing around with UViewer for Ultima Underworld 1 and 2, I always thought it would be cool to have a map viewer for Shock 1. On the strangebedfellows forums, I was told the System Shock Hack Project tool lets you do this but to be honest I can't figure out how, the program wants me to load either a .res or .dat file and I have no idea where the levels are stored and there seems to be no documentation whatsoever for it.

    Can someone enlighten me? I'd be very thankful.

  22. #22
    Member
    Registered: Mar 2001
    Location: Ireland
    You need a file named CYB.CFG in the ShockHack folder - it should have something like these two lines in it:

    Code:
    cddata			C:/Games/System Shock/Res/data
    hddata			C:/Games/System Shock/Res/data
    Then, you run the program itself thusly:

    Code:
    shack.exe -w640 -h480 -s2
    This will run ShockHack at a resolution of 640x480, on level #2 (Research).

  23. #23
    New Member
    Registered: Feb 2010
    Thanks, looks like I've been trying to use the wrong version of the tool all along, the one I tried to use was called HackEd.exe and came in a like 260 kb archive file, as the "real" tool was under 100kb in size I assumed bigger = more recent and better. Thanks again.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •