Summoner

Summoner

Save File Editing Info
I doubt this will get much traffic considering the game's age, but here goes.

I recently came back to this game after many years and wanted to do a deep dive into the game systems, since I've always been curious about this game. Specifically, save files. I'm aware of the few guides doing basic and general save game editing, such as editing gold or character XP, and the editor made by Bruce Riggs (who also did at least one guide). I didn't want to just edit the small things, I wanted to see how it all works.

I dislike shameless self-promotion, but if anyone is interested in this like I was/am and/or wants to contribute, you can find all the information I've put together on my GitHub[github.com] wiki page along with a basic single player save editor; including being able to edit skills, stats, inventory, equipment loadout, and more. Some of the structure stuff might not be accurate as I just guessed at some stuff while focusing on the stuff that I could nail down. Example: I know that the image header at 0x1B0 contains the image size in pixels, the header is 80 bytes long, and the image starts at 0x200, but aside from the first 4-byte value being pixel size, I have only guesswork on the rest.

There are still quite a few things I'm not 100% sure on, either. For example, looking at the (very few) sources out there, you might see items with "IDs." These "IDs" are actually just CRC32 hashes of item/character names, literally "Joseph" normalised to lowercase "joseph" and then hashed into "85 5A CD E9" (little endian) using a typical CRC table, or "Felinus Pantaloons" = "felinus pantaloons" = "E3 17 C7 1C" (difference on the engine side is signed vs. unsigned int). Which makes me wonder if an editor like this is any good when when working with the other original languages aside from English—I tried installing the German version but it just tells me "Incorrect version" when attempting to launch the game, so I can't test that theory.

The hashing is just the name line (or "$Name:" tag) taken from the appropriate table file(s) and I've attempted to at least partially replicate it by reading the VPP file(s) and TBL file(s) for those text strings. If anyone has a save file in French or German and feels like sharing, please feel free to do so. If you do, please also include what the names of some items in your inventory and what your character's names are (if they're not Joseph, Flece, Rosalind, and Jekhar).