Opened 9 years ago
Closed 6 years ago
#6736 closed defect (fixed)
TSAGE: R2R - Crash on exit Vampire Lair
|Reported by:||SF/alien-grey||Owned by:||dreammaster|
|Cc:||Game:||Return to Ringworld|
ScummVM 1.7.0 or Daily Build.
Exiting the Vampire Lair makes ScummVM crash. This also happens when switching from Seeker to Miranda or Quinn.
In the attached archive you can find three save files. One from before entering the Vampire Lair (no bug). A save file after collecting the blue crystal and scroll (switching between Seeker and Miranda or Quinn is no longer possible/crash). And one just before leaving the Vampire Lair (crash on exit).
Ticket imported from: bugs/6736.
Change History (20)
by , 9 years ago
comment:1 by , 9 years ago
comment:2 by , 9 years ago
Loading the savegame after collecting the blue crystal and scroll and switching to Miranda or Quinn gives the following assertion: scummvm: engines/tsage/scenes.cpp:116: void TsAGE::SceneManager::sceneChange(): Assertion `_objectCount == g_saver->getObjectCount()' failed.
comment:3 by , 9 years ago
Loading the savegame just before leaving the lair gives the same assertion on exit.
comment:4 by , 8 years ago
I have This game and it crashes on the ship at the very beginning I thought they were still making it compatible which would explain the crashing.
comment:5 by , 8 years ago
comment:6 by , 8 years ago
|Summary:||RINGWORLD2: Crash on exit Vampire Lair → TSAGE: R2R - Crash on exit Vampire Lair|
comment:7 by , 8 years ago
softwarespecial: Please test with the latest daily build from here: http://www.scummvm.org/downloads/#daily
If that crash still occurs, then please file it as a separate bug, attaching details including operating system, a savegame or instructions for replication, screenshots if applicable, and any debugging backtraces.
comment:8 by , 8 years ago
strangerke: Any progress on tracking down the reason for this assertion in the Vampire Lair?
by , 6 years ago
|Attachment:||R2R - Exit Vampire Lair.7z added|
by , 6 years ago
|Attachment:||R2R - Exit Vampire Lair.2.7z added|
comment:9 by , 6 years ago
I'm playing this game for the second time with ScummVM and run in to this bug again. After replaying the Vampire Lair three times and several hours later I could exit it without crashing.
As I'm not the only one running in to this bug I decided to attach a save game to exit the Vampire Lair. If you need it and don't want to loose any game play, make sure that Quinn is at the ARM Base and Miranda is waiting in the ARM cell for the ARM soldier to bring her food, before you use it.
I added it 2x by mistake because I didn't know if it was uploaded the first time.
comment:10 by , 6 years ago
|Priority:||normal → blocker|
Raising all identified crasher, hang, and memory violation bugs which I could not fully triage myself to blocker priority for the next release.
comment:11 by , 6 years ago
Removing all owners from release blockers so they can be reclaimed during the release process. If you are the previous owner and would graciously fix this bug for the next release, please go ahead and re-add yourself as owner.
comment:12 by , 6 years ago
comment:13 by , 6 years ago
comment:14 by , 6 years ago
I don’t understand what the point is of that assertion. Why is the game not supposed to be able to add/remove saved objects during a scene?
comment:15 by , 6 years ago
From memory, the savegame code for the TsAGE engine is somewhat different to how the original did things.. it simply dumped the area of memory that contained all the data for game objects. So, in the absense of that, I introduced a new mechanism where all the game objects derived from a common "saveable object" base class, that registers each object into a list. This list needs to remain constant, so that when loading a savegame, the correct data for each object can be loaded into that object.
However, there are some areas where temporary objects are created, such as "ScenePalette" objects used during the intro sequence. These need to be ensured to be freed after the sequence/cutscene is done, or else they'd permanently remain in the object list, and any save made could no longer be restored in your next play session. Hence the assert in the scenes.cpp was to ensure I'd correctly freed any temporary object I'd created.. scene transitions are a good point where any scene specific code should have already have been cleaned up and destroyed.
comment:16 by , 6 years ago
dreammaster, I really don’t seem to know enough about TSAGE/R2R to get through this bug in a reasonable amount of time. Would you be willing to take a look at it? All that needs to be done to reproduce is:
- Download the RW2-Saves.zip
- Load ringworld2-cd.016
- Walk into the doorway at the left of the screen
comment:17 by , 6 years ago
|Status:||new → closed|
I've found the problem. I should've continued with Quinn first. Once Quinn is at The Forest it's possible to make Seeker exit from the Vampire Lair.