Opened 18 months ago
Closed 18 months ago
#14467 closed defect (fixed)
Sam and Max Hit the Road. Object 0 not found in room 93
Reported by: | daedalus1776 | Owned by: | AndywinXp |
---|---|---|---|
Priority: | normal | Component: | Engine: SCUMM |
Version: | Keywords: | ||
Cc: | daedalus1776 | Game: | Sam and Max |
Description
ScummVM 2.8.0git4838-g24429f74179
When speaking to Doug the Moleman at the carnival, immediately after the ball of twine is added to your map, the game crashes. This happens every time and can be replicated. (I went to make a save file but the moment I try to load any save file, I get the same crash) The error is as follows:
ERROR: (23:34:0x4a): findObjectInRoom: Object 0 not found in room 93!
Language: English
Version: CD Talkie version
My OS: Windows 11 22H2 Build 22621.1702
Attachments (2)
Change History (18)
by , 18 months ago
Attachment: | samnmax.s01 added |
---|
by , 18 months ago
Attachment: | image-20230516-204920.png added |
---|
comment:1 by , 18 months ago
comment:2 by , 18 months ago
This is strange: the savefile version appears to be 19, which is way too old and not the version produced by a current ScummVM build. Also the md5 of this version is marked as unknown. Maybe the game files are damaged somehow? Where did you get them?
comment:3 by , 18 months ago
I played the game from the beginning up to the point in which you have to talk to Doug to unlock the ball of twine location, and I couldn't crash it :(
Trying to load your savegame puts ScummVM in some kind of endless loop for some reason, this is fishy
comment:4 by , 18 months ago
That's really weird... This is just the version I got straight from GOG. Plays fine on 2.7. I mostly run it on 2.6.1 for the speedrun aspect. I can try confirm the files through gog or something (It is possible I gave you a savegame from a different scummvm version, although I was pretty sure it was the one I just did in 2.8.0git)
comment:5 by , 18 months ago
I encountered a new #14468 issue when trying to reproduce this, but I can't say whether the problems are related.
comment:6 by , 18 months ago
Any news about this ticket? Did you happen to confirm the file integrity from GOG?
comment:7 by , 18 months ago
Yeah and it all seems fine. Like I said, it plays flawlessly on 2.7 and 2.6.1. I kind of just expected you to get the crash as well... Not super sure what's causing it
comment:8 by , 18 months ago
This seems to be related to the other bug, and I can reproduce it.
- Make sure that Original GUI is enabled in the options
- Start game (happens in the office, when you have control, but also in the opening)
- Quicksave using Alt+(anynumber)
- Try to load the created save
The issue does not manifest if the original gui is disabled.
comment:9 by , 18 months ago
Additional info: it also happens if you try to quickload an empty save location, so it's not the save itself that causes it.
comment:10 by , 18 months ago
This is getting funky: on some occasions I can reproduce it, but not on others.
I'll investigate further.
comment:11 by , 18 months ago
Apparently what's causing the issue is this call which happens after loading savegames:
runScript(VAR(VAR_SAVELOAD_SCRIPT2), 0, 0, nullptr);
The reason this call is here is that it's needed for correctly restoring the cursor after saving a game from the original menu. I'll see if there's a clever way to detect that.
comment:12 by , 18 months ago
Okay, I think I found out what is happening (but not why as of right now): the aforementioned script launches a o6_cursorCommand()
command with the SO_CURSOR_IMAGE
opcode.
Unfortunately, when fetching the arguments from the stack (object id and room) it will fail to load the object id, which will then be set to 0 (when it should actually be around 880something, which identifies the cursor images). The object 0 doesn't exist in room 93 (which I believe is the room containing common graphics maybe?), hence the crash.
What is to be gathered from all of this? I think that somehow the exit-save script fails to fetch the object id of the cursor, meaning... it wasn't saved properly. I'll have to continue digging...
comment:13 by , 18 months ago
I pushed a post-load fix to master so that the game doesn't crash with the savegames which are already affected. Now the worse that can happen to those savegames is that the cursor will show the wrong icon until you change the verb :-)
I have still to fix the root cause for it, so I won't close this yet.
comment:14 by , 18 months ago
Owner: | set to |
---|---|
Resolution: | → fixed |
Status: | new → pending |
And done, pushed to master the proper fix. Please wait for a new daily build if you can't build the current master codebase and let me know if the issue is gone for you.
comment:15 by , 18 months ago
Yep! That's fixed it. No save/load crashes and it's not crashing at Doug the moleman's place now either. Thanks heaps!
Thanks, I'm on it.