Bug #916

[Savegame] Restored state invalid if same addons not present

Added by jimigrey over 13 years ago. Updated over 7 years ago.

Start date:
% Done:



I play the level a while.. then save. I play some more, but then I die or do something stupid and load the save. I get into the game for some 10 seconds, and then it gives me this error message:"Z_Free: Attempt to free pointer without ZONEID." If I just play the level without using save/load, then I don't get the error.

I included a save that has the error happening in about 10 seconds after loading it.

Labels: Data

Related issues

Related to Feature #1601: Package managementIn Progress2014-04-18

Associated revisions

Revision cfc26f69 (diff)
Added by skyjake over 7 years ago

Game Save|Resources|libdoomsday: Savegames know which packages were in use

The packages used when a savegame is created are included in the
save metadata. The Home UI can then match these against the game
to see which saves are usable with which profiles.

IssueID #916


#1 Updated by danij over 13 years ago

Can you tell us any more about the problem? Which version of Doomsday are you running? Has the problem happened since? Are you loading any other addons?

I can replicate the problem when loading the save attached to this report. It would appear the player weapon state pointer serialised incorrectly, which when read results in an offset outside the states table (not good).

However I've tried numerous times to reproduce the problem to no avail.

#2 Updated by danij over 13 years ago

This is probably a long shot but were you perhaps using Per Kristian's "smooth weapons mod" when you made this save? This would account for the bogus player weapon state pointer if you are now attempting to play without it.

#3 Updated by danij over 13 years ago

I decided to put that theory to the test and lo and behold I got it bang on the mark, haha.

1) Load both and pk_weapons_dd.wad
2) Start any map and save whilst any of the player weapons is in a state not present in the original game,
3) Restart, this time loading only
4) Load the broken saved game.

Although clearly this is a case of "don't do that" we really need to do something to prevent users from making such an easy mistake in future.

NB: I'm not setting a group for this report as the same thing occurs in any version of Doomsday.

#4 Updated by skyjake over 13 years ago

Linking this to the savegame format proposal...

#6 Updated by skyjake about 10 years ago

  • Tags set to SaveGame, Resources
  • Category set to Enhancement

#7 Updated by skyjake over 7 years ago

  • Target version set to 2.0 – Home UI & Packages

#8 Updated by skyjake over 7 years ago

  • Tags changed from SaveGame, Resources to SaveGame, Resources, Packages
  • Status changed from New to In Progress

The plan is to include the list of loaded packages in savegame metadata and ensure that the same ones are loaded when the save is loaded.

#9 Updated by skyjake over 7 years ago

  • Assignee set to skyjake

#10 Updated by skyjake over 7 years ago

  • % Done changed from 0 to 30

#11 Updated by skyjake over 7 years ago

  • Status changed from In Progress to Closed
  • % Done changed from 30 to 100

The workaround is to check for package compatibility with savegames before loading. This naturally doesn't help old saves, but this will no longer be a problem in the future.

Also available in: Atom PDF