Hexen map state bug
Moderator: Graf Zahl
- Akiradlc
- Posts: 21
- Joined: Fri Aug 12, 2016 21:26
Hexen map state bug
I was playing Hexen and just noticed that If you save and quit, then reload in some maps, when you go through a portal it resets the map state and you get stuck inside some room/puzzle.
Precise steps:
- Start new game.
- Complete first map and enter Seven Portals. "Greetings mortal, are you ready to die?"
- Do the first part of Seven Portals to unlock access to the Guardians maps (i use the Guardian of Fire for example).
- Go through the portal to Guardian of Fire (at this point the center door and both Guardians doors are open on Seven Portals).
- On Guardian of Fire save the game and quit GZDoom.
- Open GZDoom load Hexen and load the saved game. You'll be in Guardian of Fire.
- Go back through the portal to Seven Portals.
- You are now stuck inside the room that has the teleport to Guardian of Fire and Korax greets you again as if you were entering the Seven Portals for the first time in the game.
It appears to happen with all current versions of GZDoom, not sure if also happens with ZDoom.
Edit: seems random the occurrence, and is more guaranteed to happen if you save during the earthquake in Guardian of Fire. Maybe the earthquake bugs out the save file?
Precise steps:
- Start new game.
- Complete first map and enter Seven Portals. "Greetings mortal, are you ready to die?"
- Do the first part of Seven Portals to unlock access to the Guardians maps (i use the Guardian of Fire for example).
- Go through the portal to Guardian of Fire (at this point the center door and both Guardians doors are open on Seven Portals).
- On Guardian of Fire save the game and quit GZDoom.
- Open GZDoom load Hexen and load the saved game. You'll be in Guardian of Fire.
- Go back through the portal to Seven Portals.
- You are now stuck inside the room that has the teleport to Guardian of Fire and Korax greets you again as if you were entering the Seven Portals for the first time in the game.
It appears to happen with all current versions of GZDoom, not sure if also happens with ZDoom.
Edit: seems random the occurrence, and is more guaranteed to happen if you save during the earthquake in Guardian of Fire. Maybe the earthquake bugs out the save file?
- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
Re: Hexen map state bug
Hard to say. I wasn't able to reproduce it. But this looks like it couldn't load the saved level state from the savegame you made before quitting.
As for 'all current versions', when did this start? What's the oldest one you experienced this bug with?
As for 'all current versions', when did this start? What's the oldest one you experienced this bug with?
- Akiradlc
- Posts: 21
- Joined: Fri Aug 12, 2016 21:26
Re: Hexen map state bug
So far i tested GZDoom 2067, 2068, 2087, 2090 and the current 2099. Just tested latest stable ZDoom 2.8.1 and it happens there too.
But, i am actually only able to reproduce the bug 100% of the time if i save during the earthquake in Guardian of Fire. The other random occurrences must be from some other similar map trigger carrying over with the save too. As it is altering the map it must be doing some kind of load/reset and gets carried over to the save applying to the next load because it was still occurring when saved, maybe?
Now that i think of it, it's a hell of specific thing to be considered a proper bug, no? Sorry if i'm causing trouble, it's not my intent.
But, i am actually only able to reproduce the bug 100% of the time if i save during the earthquake in Guardian of Fire. The other random occurrences must be from some other similar map trigger carrying over with the save too. As it is altering the map it must be doing some kind of load/reset and gets carried over to the save applying to the next load because it was still occurring when saved, maybe?
Now that i think of it, it's a hell of specific thing to be considered a proper bug, no? Sorry if i'm causing trouble, it's not my intent.
- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
Re: Hexen map state bug
There may be something wrong with the earthquake thinker object. But the main problem with the savegame code is that the saved file format is so complex that analyzing a savegame is nearly impossible.
When this was written 15 years ago, it was clearly on nobody's agenda to make the data files sufficiently organized to do such things.
When this was written 15 years ago, it was clearly on nobody's agenda to make the data files sufficiently organized to do such things.
- Akiradlc
- Posts: 21
- Joined: Fri Aug 12, 2016 21:26
Re: Hexen map state bug
Woah, 15 years ago? That's a long time hehe
I will just be more careful when to save, it's not really worth to track such a specific bug now that i think of it, could lead to generating more problems as side effects than fixing it in the end.
Saving during a scripted event was just dumb of me anyway haha, i was in a hurry to get out of the PC and didn't think straight on what were going to be the consequences of doing it.
Lesson: learnt.
I will just be more careful when to save, it's not really worth to track such a specific bug now that i think of it, could lead to generating more problems as side effects than fixing it in the end.
Saving during a scripted event was just dumb of me anyway haha, i was in a hurry to get out of the PC and didn't think straight on what were going to be the consequences of doing it.
Lesson: learnt.
- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
Re: Hexen map state bug
A bug is a bug, and if it can be fixed it should be fixed.
- theleo_ua
- Posts: 34
- Joined: Sun Mar 04, 2012 17:24
- Contact:
Re: Hexen map state bug
Sorry for semi-offtop, but I'm just curious: when G(Z)Doom trying to save a game, it uses the method "just copy RAM to savegame file, excluding sounds, textures, iwad data and other unnecessary data" or it tries to analyze the data structure of the game, so writes "human-understandable" information to savegame files like "ettin in position X, projectile in position Y" ?Graf Zahl wrote:There may be something wrong with the earthquake thinker object. But the main problem with the savegame code is that the saved file format is so complex that analyzing a savegame is nearly impossible.
When this was written 15 years ago, it was clearly on nobody's agenda to make the data files sufficiently organized to do such things.
Nothing smells better than a dead Governor in the morning (c) http://www.rpgcodex.net/phpBB/viewtopic ... 026#808026
- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
Re: Hexen map state bug
Neither. It writes binary data that already has most unneeded stuff filtered out. Essentially "ettin in position X, projectile in position Y" in a form that's not human readable but machine readable.
- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
Re: Hexen map state bug
So, does this still happen with the latest version? I replaced the old savegame code in its entirety yesterday.
- Akiradlc
- Posts: 21
- Joined: Fri Aug 12, 2016 21:26
Re: Hexen map state bug
I'll try to see if it still happens and report back.Graf Zahl wrote:So, does this still happen with the latest version? I replaced the old savegame code in its entirety yesterday.
Edit: did a quick test, apparently it's all ok now, even if i specifically save during the earthquake in Guardian of Fire.
- Gez
- Developer
- Posts: 1399
- Joined: Mon Oct 22, 2007 16:47
Re: Hexen map state bug
Good to know.Akiradlc wrote:Edit: did a quick test, apparently it's all ok now, even if i specifically save during the earthquake in Guardian of Fire.
- Graf Zahl
- GZDoom Developer
- Posts: 7148
- Joined: Wed Jul 20, 2005 9:48
- Location: Germany
- Contact:
Re: Hexen map state bug
Indeed. This report was the ultimate reason why I did that thing. The recursive method in which the old archiver stored objects just screamed "BIG PROBLEM!"