Opened 7 years ago

Closed 6 years ago

#9952 closed defect (fixed)

SCI: LB2: Can get into the storage room early

Reported by: dafioram Owned by: sluicebox
Priority: normal Component: Engine: SCI
Version: Keywords: pathfinding
Cc: Game: Laura Bow 2: The Dagger of Amon-Ra

Description

ScummVM: 1.10.0git-3766-gb0ecbc9 64bit
Game: Laura Bow 2 CD/DOS GOG v1.1
OS: Win7-64

Once you can get to the door leading to the storage room you can get into it by walking in even though it is locked. You will be stuck once you get in.

Not sure if its in the original interpreter.

Demonstration: https://streamable.com/kjp0x

Any save game that can see this door will work (so late ACT2 and on).

Attachments (4)

laurabow2-cd.034 (39.1 KB ) - added by dafioram 7 years ago.
End of ACT2 save game. Go to storage door and walk in.
LB2SG.000 (10.9 KB ) - added by dafioram 7 years ago.
Act2 End
LB2SG.DIR (9 bytes ) - added by dafioram 7 years ago.
LB2-movie.mp4 (463.5 KB ) - added by m-kiewitz 7 years ago.

Download all attachments as: .zip

Change History (17)

by dafioram, 7 years ago

Attachment: laurabow2-cd.034 added

End of ACT2 save game. Go to storage door and walk in.

comment:1 by csnover, 7 years ago

Keywords: sci removed

comment:2 by m-kiewitz, 7 years ago

Can you please check if it happens when using the original interpreter?
We need to know that in any case. It probably does.
A saved game of the original interpreter would be also very helpful.

by dafioram, 7 years ago

Attachment: LB2SG.000 added

Act2 End

by dafioram, 7 years ago

Attachment: LB2SG.DIR added

comment:3 by dafioram, 7 years ago

Doesn't happen in the original.

by m-kiewitz, 7 years ago

Attachment: LB2-movie.mp4 added

comment:4 by m-kiewitz, 7 years ago

Seems to be caused by pathfinding.
Time to reverse Sierra's pathfinding :/

comment:5 by dafioram, 7 years ago

Keywords: pathfinding added

comment:6 by sluicebox, 6 years ago

Script patch: https://github.com/scummvm/scummvm/pull/1427

This bug is indeed due to differences in the pathfinding algorithms that let Laura reach one pixel further in ScummVM and trigger a room change. I worked around this by expanding the closed door's polygon by one pixel to prevent this.

This is a game-breaking bug as there's no way to return from the crate room the way you came. The crate room doorway isn't wired up to anything since you're not allowed to go backwards during act 5 chase.

comment:7 by bluegr, 6 years ago

Owner: set to bluegr
Resolution: fixed
Status: newclosed

I've added the patch for this, together with the other pathfinding related pull requests, and will mark these and any other pathfinding related script patches we already have as workarounds. Thanks for your work! Closing

comment:8 by dafioram, 6 years ago

Resolution: fixed
Status: closednew

I can still repo this.

comment:9 by sluicebox, 6 years ago

Dag nabbit. Well, given that m-kiewitz is working on an implementation of Sierra's pathfinding algorithm which should fix these edge cases correctly, I'm not inclined to put too much time into this, since it's just a temporary workaround. I am impressed that you found this in the first place. You must have really wanted in that door!

comment:10 by sluicebox, 6 years ago

Are you reproducing the bug from the attached saved game? If so, you have to leave and re-enter the room so that it's reinitialized with the new obstacle coordinates. The original coordinates are already in the save game's memory. That's an important detail that I meant to type =)

comment:11 by dafioram, 6 years ago

yeah, I can reproduce it after leaving the room and coming back.

comment:12 by sluicebox, 6 years ago

Thank you for confirming that, I found the right furious clicks to reproduce on my end.

This should now be correctly fixed in: dc56d70b5dc13ec736f7c8ec59cd91c3c58bec64

Reminder, for a save game in the hallway, you have to re-enter the room. (I keep forgetting)

Please report if you can still break it but be aware that I may burst into tears.

comment:13 by dafioram, 6 years ago

Owner: changed from bluegr to sluicebox
Resolution: fixed
Status: newclosed

Looks like you will have to save your tears for another time as this fix does prevent the bug. Great work.

Note: See TracTickets for help on using tickets.