Opened 12 years ago

Closed 12 years ago

Last modified 12 years ago

#6140 closed defect (fixed)

SCI: QFG1VGA - Path finding bug in the forest

Reported by: misterhands Owned by: bluegr
Priority: normal Component: Engine: SCI
Version: Keywords:
Cc: Game: Quest for Glory 1

Description

Latest daily build Win64 QFG1VGA Eng

In the forest, at the screen with the log near the waterfall (room 81), clicking at the lower right corner (between the tree and the edge of the screen) triggers what appears to be a path finding bug. Hero seems to understand that he has to go to the south screen, but can't do it directly at the requested coordinates. So he walks/runs north a bit to the log, but then gets stuck instead of proceeding to the south screen. At this point, Hero stops responding to user input, you have to reload the game. There is no warning or error msg.

It is impossible to replicate this under DOSBox. In Sierra SCI, Hero always goes right to the waterfall so never attempts to go south from there. So that might be the root of the problem here.

Ticket imported from: #3568452. Ticket imported from: bugs/6140.

Attachments (1)

qfg1vga.000 (39.1 KB ) - added by misterhands 12 years ago.

Download all attachments as: .zip

Change History (4)

by misterhands, 12 years ago

Attachment: qfg1vga.000 added

comment:1 by bluegr, 12 years ago

A heads up on this: the issue is that the A* pathfinding code we got adds a penalty score to vertices on the screen edge. The lower right vertex is on the screen edge, thus the pathfinder penalizes it, making ego avoid it and turn around towards the north instead, where he encounters a barrier and stops. Removing the penalty fixes the issue, however it introduces other regressions, where ego follows the wrong path (e.g. in LB2)

comment:2 by bluegr, 12 years ago

Fixed with a workaround until a better solution is found in e7d4f88a57efc354cceb34e69acada84600c693d.

comment:3 by bluegr, 12 years ago

Owner: set to bluegr
Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.