I've run into some unusual and anoying behavior with Might & Magic II that I got from the Arnold archive.
I've been just using save states so far to save my progress, and I'm halfway or so progressed into the game. Unfortunately, at this point in the game you are forced to leave most of your party at the inn (on the save disk) while each character completes her own quest. Also, later in the game you have to give an item to a character and dismiss her back to the save disk in order to get an item where it needs to go, so it is 100% necessary to use the save disk to complete the game.
Now, the game uses one of its game disks as a save disk too, and it worked just fine during the character creation step. I created all my characters, they saved to the disk. I verified this by reloading the game from a clean start and it loaded all the characters fine in their created state.
Once I reached this point in the game, I left most of my characters at the inn and began adventuring with one of them. When I returned to the inn, all of my other characters had returned to their original creation state! Near as I can tell, signing in at the inn isn't saving to the disk like it should. The problem seems related to the game, since I've confirmed it on WinVICE as well. I tried Frodo but the game just resets when I try to load it on any of its versions.
Is there some kind of different save mode this game could be using that the emulators don't use by default? I've done the above steps all without ever closing the emulator and the characters still reset to their old values, so the disk image in memory doesn't even get updated. It's really frustrating to complete half a game and then have no way to continue. Any suggestions would be appreciated.
Might & Magic II won't save games.
Moderator: Håkan Sundell
-
Stuart Toomer
- Site Co-Admin
- Posts: 786
- Joined: Wed Aug 20, 2003 2:46 pm
- Location: East Yorkshire, England
That's what I'm thinking, though I've been unable to find another image anywhere.
I did finally manage to dig through the byte code of the emulator file and find the bytes for that quest. I just did the quest with one of my character types and compared the files to find it.
The hardest part is finding the character data. It moves around a bit depending on memory organization but (at least if you're in a town) it seems to show up in the 0xFA00 to 0xFDFF area. Each character block is 0x80 bytes (that's 80 Hexadecimal) in length, so if you have an 8 or 16 byte per line display you can kind of spot where they are since they'll usually have a bunch of 0's at the same offsets. Also, the first letter of the character names gets stored as ASCII, and the remaining letters (including spaces out to 10 total characters) have 0xA added to their ASCII values. Finally, assuming you have no hirelings in your party, the character data block should have a slew of FF's at the end (0x100 of them actually, where the data for the hirelings would go).
Once you've found the character data, it's pretty simple to set the plusses. They bytes you want are 10 and 11 bytes before the end of each character's data (so in my case the last byte of my last character's data is 0xFD73, so the quest bytes for her are 0xFD68 and 0xFD69). If you just want to set the plusses for your characters, for each one go to the first of those two bytes (0xFD68 for me) and add 0x80 to the value. A starting character will have 0x00 there, so just change it to 0x80. I think if you've beaten the triple crown and other such quests that byte will be 0x7F, so you'd change it 0xFF.
As an alternate option, you can add 0x01 to the next byte (0xFD69 for me) for each character, and that will mean your characters have completed the quest for their plusses but not yet visited the judges to get the reward (the actual plus and 5 million experience). Then you just need to visit the judges and you'll get the plus and the 5 million reward. I considered this option since I actually did all the plus quests (I just couldn't save it) and felt I deserved the 5 million exp too. But then I discovered how to beat the cuisinarts and no longer had to worry about experience
This only works for the emulator snapshot/saved state, the save game file seems to be encrypted some so I didn't bother figguring out how to modify that.
Anyway, I've enjoyed answering my own question. Hopefully if someone else runs into this problem, this will save them a little time.
I did finally manage to dig through the byte code of the emulator file and find the bytes for that quest. I just did the quest with one of my character types and compared the files to find it.
The hardest part is finding the character data. It moves around a bit depending on memory organization but (at least if you're in a town) it seems to show up in the 0xFA00 to 0xFDFF area. Each character block is 0x80 bytes (that's 80 Hexadecimal) in length, so if you have an 8 or 16 byte per line display you can kind of spot where they are since they'll usually have a bunch of 0's at the same offsets. Also, the first letter of the character names gets stored as ASCII, and the remaining letters (including spaces out to 10 total characters) have 0xA added to their ASCII values. Finally, assuming you have no hirelings in your party, the character data block should have a slew of FF's at the end (0x100 of them actually, where the data for the hirelings would go).
Once you've found the character data, it's pretty simple to set the plusses. They bytes you want are 10 and 11 bytes before the end of each character's data (so in my case the last byte of my last character's data is 0xFD73, so the quest bytes for her are 0xFD68 and 0xFD69). If you just want to set the plusses for your characters, for each one go to the first of those two bytes (0xFD68 for me) and add 0x80 to the value. A starting character will have 0x00 there, so just change it to 0x80. I think if you've beaten the triple crown and other such quests that byte will be 0x7F, so you'd change it 0xFF.
As an alternate option, you can add 0x01 to the next byte (0xFD69 for me) for each character, and that will mean your characters have completed the quest for their plusses but not yet visited the judges to get the reward (the actual plus and 5 million experience). Then you just need to visit the judges and you'll get the plus and the 5 million reward. I considered this option since I actually did all the plus quests (I just couldn't save it) and felt I deserved the 5 million exp too. But then I discovered how to beat the cuisinarts and no longer had to worry about experience
This only works for the emulator snapshot/saved state, the save game file seems to be encrypted some so I didn't bother figguring out how to modify that.
Anyway, I've enjoyed answering my own question. Hopefully if someone else runs into this problem, this will save them a little time.
Hmmm When I bought This title I had the same problem. Was utterly disappointed. I wasnt sure if it was my faulty disk drive or what. pity i gave up on the game. So I am afraid to use it on an emulator and get disappointed then. The Sega GenesisVersion is nice but the sound effects and music are irriating in my opinion