Opened 7 years ago

Closed 7 years ago

Last modified 7 years ago

#10240 closed defect (fixed)

SCI: Leisure Suit Larry 1, Spanish version, crash when trying to buy apples to the guy at the casino

Reported by: d3p4z Owned by: m-kiewitz
Priority: high Component: Engine: SCI
Version: Keywords:
Cc: Game: Leisure Suit Larry 1

Description

Game: Leisure Suit Larry in the Land of the Lounge Lizards
Language: Spanish
Game Version: Floppy, VGA, 1991
ScummVM version: 1.9.0.2
OS: Windows 10

Trying to buy an apple to the barrel guy that appears outside of the casino (using the wallet on him) makes the game crash, debugger shows:

ERROR: Send to invalid selector 0x14 of object at 0029:0242!

Buying him an apple is needed to continue de game.
I've run the game under DosBox and can't reproduce the issue.

Attachments (1)

lsl1sci-es.001 (34.3 KB ) - added by d3p4z 7 years ago.
Saved game at the casino, next to the barrel guy.

Download all attachments as: .zip

Change History (15)

by d3p4z, 7 years ago

Attachment: lsl1sci-es.001 added

Saved game at the casino, next to the barrel guy.

comment:1 by d3p4z, 7 years ago

Summary: Spanish version, crash when trying to buy apples to the guy at the casinoSCI: Leisure Suit Larry 1, Spanish version, crash when trying to buy apples to the guy at the casino

comment:2 by m-kiewitz, 7 years ago

Owner: set to m-kiewitz
Priority: normalhigh

comment:3 by bluegr, 7 years ago

This seems to be a duplicate of a very old bug:
https://bugs.scummvm.org/ticket/5392

It is caused by applying the NRS patch to non-English versions of LSL1.Try removing the patch and see if that fixes your issue. You will probably have to restart the game, I’m afraid.

comment:4 by m-kiewitz, 7 years ago

Thanks Filippos for noticing.

I guess we should blacklist that patch. At least for Non-English versions.

comment:5 by d3p4z, 7 years ago

Thanks bluegr for the advice.

The version I keep from long ago does have a 300.SCR, 300.TEX and 927.SCR (NOT 370.scr, 380.scr or 803.scr), which I think are needed for this release of the game, but I can't confirm it since I do keep a hard disc backup and no longer have access to any actual floppies.

I can't find the list of datafiles ScummVm looks for, or a list of checksums.

Anyways, I've tried to re-add the game with just the following datafiles, no additional SCR/TEX files:
RESOURCE.000
RESOURCE.001
RESOURCE.002
RESOURCE.003
RESOURCE.CFG
RESOURCE.MAP

After starting game and paying to the barrel guy at the casino, it crashes again, but the debugger throws a different message:
ERROR: Script 985 not found

This does happen near the start of the game, so no problem, I can test it quickly.

Last edited 7 years ago by d3p4z (previous) (diff)

comment:6 by m-kiewitz, 7 years ago

Really nice that I bought this a few weeks ago from a nice Spanish ebay seller.
Will look into this. Maybe your files are even corrupt.

comment:7 by m-kiewitz, 7 years ago

d3p4z, I just checked my own copy.

It definitely has those 3 files. 300.SCR, 300.TEX and 927.SCR.
Please copy those over. Your issue may probably vanish afterwards.

Anyway, my own copy actually has a broken view 302, which is that man inside the barrel, so I get a crash as soon as I reach him.

comment:8 by m-kiewitz, 7 years ago

I just checked the original interpreter. When I reach that man, the interpreter goes crazy. Will make a GIF out of that and upload it somewhere.

People, who get this issue, can easily dump that view from another copy of the game and then simply use it as patch file to fix it.

My copy is "Leisure Suit Larry Collection" / "8 Juegos De Larry". Big fat "Computer Juegos" logo on the backside.

comment:9 by m-kiewitz, 7 years ago

I just tried the same after fixing view 302.
I just got "Send to invalid selector 0x14 (brLeft) of object at 0029:02c3!"

Backtrace to PAvoider::doit in script 927.
29:2c3 is PolyPath

comment:10 by m-kiewitz, 7 years ago

Added a script patch to fix this via commit eb1f903
Improved it via commit 83436e6 (it now even works without the patch files)

comment:11 by m-kiewitz, 7 years ago

Resolution: fixed
Status: newclosed

comment:12 by m-kiewitz, 7 years ago

Oh, I forgot to mention:

It's all a big mess. Larry 1 Spanish without patch files tries to access a non existing class, which of course crashes the game. The patches add it, but at least in ScummVM there is another error which happens inside that class. This error may even happen because of pathfinding differences, but it really seems to be a script error.

What's weird is that the code is not the same as in any of the 2 English releases and it's missing checking the distance between the player and the apple man. Almost looks like some kind of beta release code, idk.

I now changed the code to work just like in the English releases.

Last edited 7 years ago by m-kiewitz (previous) (diff)

comment:13 by d3p4z, 7 years ago

m-kiewitz, I just tested the game again after the patch.

I can confirm that now, after copying back 300.SCR, 300.TEX and 927.SCR, the game plays properly when approaching the apple seller.

For the record, I'm pretty sure that the version I do own myself is a standalone one, not the one compiled by "Computer Juegos". Back in the day, people said that the one distributed by "Computer Juegos", unlike the original one, was completely messed up at certain places to the point to making the game unfinishable (Take it with a grain of salt, I've never owned that version).

Anyways, now it's working nicely. I'm going to play the version I own from start to finish, so if I find any other problem I'll report it.

Version 0, edited 7 years ago by d3p4z (next)

comment:14 by m-kiewitz, 7 years ago

Thank you for testing.

Do you own the other Leisure Suit Larry games as Spanish versions too? Like Larry 5, 6 and 7? If you do and have the time, please play those too.

Note: See TracTickets for help on using tickets.