Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#6016 closed defect (fixed)

SQ1SCI: Engine abort moving Roger around Droid

Reported by: misterhands Owned by: bluegr
Priority: normal Component: Engine: SCI
Keywords: script Cc:
Game: Space Quest 1

Description

SCUMMVM 1.4.1 win32
SQ1 SCI DOS English

At the Ulence Flats, when Roger is followed by his pilot droid, there are a few places where I've had a crash happen.
It happens in narrow places where Roger can't seem to figure out a way around the droid.
So it looks like a path finding bug to me.

Console output:
parameter 0: 0000:003f (integer), should be null, integer
parameter 1: not passed, should be null, integer
parameter 2: not passed, should be null, integer
parameter 3: not passed, should be null, integer
[VM] kGetAngle[3f]: signature mismatch via method PAvoider::doit (room 47, script 927, localCall 0xffffffff)!

I attached a savegame. Just clic to the left of the screen and kaboom.

Good luck with this one !

Ticket imported from: #3513207. Ticket imported from: bugs/6016.

Attachments (1)

sq1sci.050 (42.6 KB ) - added by misterhands 8 years ago.

Download all attachments as: .zip

Change History (6)

by misterhands, 8 years ago

Attachment: sq1sci.050 added

comment:1 by digitall, 8 years ago

Owner: set to bluegr
Resolution: fixed
Summary: SQ1SCI : (pathfinding?) crashSQ1SCI : Engine abort moving Roger around Droid

comment:2 by digitall, 8 years ago

misterhands: This was a SCI engine abort due to a detected script error with the kGetAngle call in this script.
I have replicated this with the attached savegame on the latest Git master, added a workaround to avoid this issue in commit 834e9184e5f797038574bd6ed6d6537339304b31 and confirmed that this abort no longer occurs.
You should be able to confirm this with the next daily build:
http://www.scummvm.org/downloads/#daily

thebluegr: Could you check that my workaround is "correct" and that this script issue is not going to cause any other problems, please? Thanks in advance.

comment:3 by bluegr, 8 years ago

This is a script bug indeed

I've fixed the associated workaround, as the associated method shouldn't be called at all (it's called with very few parameters). Many thanks for your help tdhs! :)

Closing

comment:4 by bluegr, 8 years ago

Keywords: script added
Status: newclosed

comment:5 by lordhoto, 8 years ago

Summary: SQ1SCI : Engine abort moving Roger around DroidSQ1SCI: Engine abort moving Roger around Droid
Note: See TracTickets for help on using tickets.