diasurgical / devilutionX

Diablo build for modern operating systems
Other
8.05k stars 791 forks source link

Broken game when going through Hell levels (32 bit big endian powerpc) #1033

Open Cowcat5150 opened 3 years ago

Cowcat5150 commented 3 years ago

System: MorphOS (compiled debug binary)

Started with -^ -l 3 12. Killed some enemies, going up to 13 and 14 levels (saved some) and going back to town and save again.

Restarted game with -^ . Going back to 14 level from town, saved game is mostly broken: Stops while loading (hangs there or crashes the system). Sometimes you get through to the other side. broken.zip

AJenbo commented 3 years ago

Any idea when this issue first occurred?

Cowcat5150 commented 3 years ago

Many many moons ago. I switched from the Amiga fork (it happens there) to "official".

Sometimes you can end the game but is a 50/50 chance. But something happens when going from 12 level to 13: From beginning to 12 seems to be stable from numerous saves.

AJenbo commented 3 years ago

Arh, that interesting. We do have some special handling in the save game code for Amiga afaik since it doesn't support one of the features used. Tbh the save game code scares me and should probably be fully rewritten.

Cowcat5150 commented 3 years ago

I don't think that is an exclusive problem of save code (I was bitching about those Amiga file problems back in time till worked ok).

What I notice is, if I'm no mistaken that saved file increase from time to time but right going through "Hell", it starts to do funny things like decreasing in size. Don't know if it is a "feature".

AJenbo commented 3 years ago

Yeah, that's the spooky part that we haven't figured out yet. It's probably related to how it allocates space in the MPQ archive.