Jump to content

DOS C&C Savegame decoding


Iran

Recommended Posts

Never heard of any such map editor. I've seen DOS savegame editors, and a DOS scenario editor which used its own data file which you needed to explicitly extract the ini and bin from with additional tools, but I've never seen a map editor that can open SAV files.

 

And I collect old C&C tools, so I doubt I'd have missed it. There aren't THAT many map editors.

Link to comment
Share on other sites

I added a hotkey to generate a map file from the map/mission you're currently playing, with everything in/on the map like units and triggers. It's for RA95. It was simple to do and someone who has the ability to patch DOS C&C1 should contact me, so we can extract the mission from the savegame.

 

Otherwise it should be possible to extract the map file by running a decoder for the algorithmn used to encode the map files and other stuff, but I don't know the aglorthm used. I do know the name of the class/functions responsible for encoding/decoding.

Link to comment
Share on other sites

Problem with DOS C&C remains that you need a place to dump the new code... then again, for that purpose, I doubt anyone would care if something like the LAN lobby UI code in the game was removed.

 

Biggest problem with DOS C&C is that when I last messed with it, the game mysteriously locked up on some simple edits, while others worked perfectly.

Link to comment
Share on other sites

Interesting... How did you got the triggers from the game? I know that the binary is in some sort of a array ingame. Loading an map and scanning the memory confirms that. But I can't look into it because i'm busy with something else, and I probably won't until January

As for implementing in DOS C&C: Dunno.

Link to comment
Share on other sites

When it reads everything from the map it loads it in memory. Every function to read part of the map file (say the [Trigs] section) has an equivalent function to write the triggers in memory back into a map file. It's for the built-in map editor they used.

 

Here's the code I'm using, there's loading an INI file, writing [basic] section keywords manually, calling functions to write back every other part of the map back into the loaded INI and saving the INI:

 

https://github.com/cnc-patch/ra303p/blob/master/src/map_snapshot.asm

 

Every cell of the map is part of the CellClass array inside MapClass.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...