Opened 2 years ago

Closed 6 weeks ago

#13137 closed defect (fixed)

AGI: LSL1 - Stealing from the shop should get Larry killed but it doesn't

Reported by: EstrangedEstranged Owned by: sluicebox
Priority: normal Component: Engine: AGI
Version: Keywords: original
Cc: EstrangedEstranged Game: Leisure Suit Larry 1

Description (last modified by EstrangedEstranged)

How to reproduce the bug (it doesn't need a savegame):

  1. Start playing a new game.
  2. Call a taxi (type "taxi").
  3. "Get in" the taxi, type "store" or "shop" to go to the store
  4. Type "pay" and "get out"
  5. Get in the store. "Take wine" and "Take magazine" (you have to be close to them of course).
  6. Get out of the store.

OBSERVE THE BUG: At this point in the DOS version of the game Larry gets shot by the shopkeeper for stealing. But this doesn't happen in the ScummVM version.
BONUS BUG:

  1. Get back in the store.
  2. As a result of the broken event, if you try to buy the magazine or the wine, it won't work - you can no longer do it, the game behaves as if you don't have them.

The bug can be experienced on the GoG version of Larry 1 (the text parser version), which was last updated on the 25th of April 2018 (supposedly to ScummVM 2.0 according to the patch notes). Happens both on Windows 7 and Windows 10.

I can attach two saves:

  • one in the store BEFORE taking the objects
  • one in the store AFTER taking the objects, walking out and back in

I can't do it in this form, I hope I'll be given a chance to do it when I create the ticket.

Attachments (2)

lsl1.004 (4.3 KB ) - added by EstrangedEstranged 2 years ago.
lsl1.005 (4.3 KB ) - added by EstrangedEstranged 2 years ago.

Download all attachments as: .zip

Change History (12)

by EstrangedEstranged, 2 years ago

Attachment: lsl1.004 added

by EstrangedEstranged, 2 years ago

Attachment: lsl1.005 added

comment:1 by EstrangedEstranged, 2 years ago

Description: modified (diff)

comment:2 by eriktorbjorn, 2 years ago

I can reproduce it with the attached savegames, but I can't reproduce it with the step-by-step description. Weird.

comment:3 by EstrangedEstranged, 2 years ago

I'm wrong about the steps then.
In the attached savegames, I have done everything there is to do at that point of the game in the first location (the bar), so there are more items in my inventory.

I tried reproducing the bug by obtaining the same items from the first location before going to the store but the bug didn't happen!

So it's not that either.
Perhaps it has something to do with saving and loading a lot. I will try to find the rule.

comment:4 by digitall, 2 years ago

Component: --Unset--Engine: SCI
Priority: highnormal
Summary: Stealing from the shop should get Larry killed but it doesn'tSCI: LSL1 - Stealing from the shop should get Larry killed but it doesn't

comment:5 by digitall, 2 years ago

Owner: set to digitall
Resolution: outdated
Status: newpending

EstrangedEstranged: It appears that this game ships from GOG bundled with ScummVM 2.0 which is quite outdated (17 December 2017).

I suggest checking the latest stable release i.e. v2.5.0 from here with your game files:
https://www.scummvm.org/downloads

If you can still replicate with that, then try the daily / nightly build from the development branch from the same page to see if this is fixed on the very latest code which will go into the next release build.

comment:6 by sluicebox, 2 years ago

Component: Engine: SCIEngine: AGI
Summary: SCI: LSL1 - Stealing from the shop should get Larry killed but it doesn'tAGI: LSL1 - Stealing from the shop should get Larry killed but it doesn't
  1. This is an AGI game. The point and click VGA remake is SCI.
  2. There has been very little development on the AGI engine in the last four years so I would be surprised if upgrading ScummVM affects this kind of high-level behavior. I mean, give it a try, but the commit history since 2017 is a quick read.

(I don't know much else about the AGI engine so that's all I can contribute)

comment:7 by digitall, 2 years ago

sluicebox: Thanks for the nudge. Should have realised that from the text parser note.

EstrangedEstranged: My comment still stands though. Please try testing with the latest release / nightly so that we can be sure that this is not an outdated bug. Thanks.

comment:8 by eriktorbjorn, 2 years ago

Problem is, it's apparently tricky to reproduce even with GOG's version of ScummVM. It would be interesting if someone could figure out exactly why the bug happens with the provided savegames, because then it might be possible to come up with an idea what went wrong in the first place. But I don't know enough about the AGI engine to do so. (The Leisure Suit Larry repository at https://github.com/historicalsource/leisuresuitlarry might be helpful to some, but not to me.)

comment:9 by EstrangedEstranged, 2 years ago

Like I said, I can't reproduce what happened on GoG on the GoG version itself because I don't know what actions cause it. All I can do is provide the savegames that I attached above, in case you can do something with them, like eriktorbjorn suggested.

comment:10 by sluicebox, 6 weeks ago

Keywords: original added
Owner: changed from digitall to sluicebox
Resolution: outdatedfixed
Status: pendingclosed

Fixed in: https://github.com/scummvm/scummvm/commit/ee5a70598e7143643bc8d686787825b2f8845be4

Thanks for reporting this and including those save game files. It's a bug in the original game and occurs in all versions. If it weren't for your save game files I'd have never figured this out.

The bug occurs when you leave the hooker's bedroom (room 17) via the stairs instead of the window. This leaves a flag set that disables priority triggers in all rooms, but there's only one other priority trigger in this game: the convenience store entrance. That's why you can walk out without the script checking to see if you've paid.

I totally forgot posting my comment on this two years ago! But this year I'm learning AGI, so now I can participate.

Note: See TracTickets for help on using tickets.