Opened 10 years ago

Closed 8 years ago

Last modified 8 years ago

#4669 closed defect (fixed)

NIPPON: No Elder

Reported by: SF/azazel1125 Owned by: bluegr
Priority: high Component: Engine: Parallaction
Keywords: Cc:
Game: Nippon Safes

Description

After picking up leaves and entering monastery you should be taken to the elder to answer some questions but your just led to the front of the monastery. You can only go back to the previous screen and relive it again never to move any further forward.

Nippon Safes Inc. (Multi-lingual/DOS) - English
ScummVM 1.0.0pre045149 (win32)
Windows 7 (x64)

Ticket imported from: #2880939. Ticket imported from: bugs/4669.

Attachments (3)

nippon.007 (343 bytes ) - added by SF/azazel1125 10 years ago.
Save Game
Bodged-Fix.patch (725 bytes ) - added by digitall 8 years ago.
Initial Bodge Fix (Help To Trace Root Cause)
checkDoorOnlyFromUser.patch (3.0 KB ) - added by digitall 8 years ago.
Slightly Better Fix (Prevent checkDoor in Pathfinding when called by Script)

Download all attachments as: .zip

Change History (15)

by SF/azazel1125, 10 years ago

Attachment: nippon.007 added

Save Game

comment:1 by jvprat, 10 years ago

Owner: set to peres

comment:2 by fingolfin, 10 years ago

Summary: Nippon - No ElderNIPPON: No Elder

comment:3 by sev-, 9 years ago

Priority: normalhigh

comment:4 by sev-, 9 years ago

This bug is nice to get fixed before the release. Raising priority for keeping the track.

comment:5 by SF/kuroshiro, 9 years ago

Confirmed that this bug is still there as of 1.3.0svn r52876. Renders Doug's section impossible to complete.

comment:6 by SF/windlepoons, 9 years ago

I confirmed this with 1.3.0svn54757

comment:7 by digitall, 8 years ago

Replicated this with Nippon Safes(Amiga) and :
ScummVM 1.4.0git1778-gd13a927-dirty (Aug 24 2011 02:11:34)
Features compiled in: Vorbis FLAC MP3 ALSA SEQ TiMidity RGB zLib FluidSynth Theora AAC

From clean new game as well as from the attached save state.

Will try to bisect for cause.

comment:8 by digitall, 8 years ago

Thr following are some details on the cause of this from peres:
<snip>
The Elder's screen should appear when you exit the location through
the lower part of the screen, triggered by a Zone in the scripts
*when the character stops walking*. What happens instead is that the
normal location switch code executes *as soon as* the character's y
coordinate is greater than the screen vertical size.

The problem was introduced after I merged the walk input loop
with the main input loop, so it's basically a priority issue.
I was meaning to fix this using a flag to disable portions of the
main loop when the character is walking, but time has always lacked.
<end snip>

by digitall, 8 years ago

Attachment: Bodged-Fix.patch added

Initial Bodge Fix (Help To Trace Root Cause)

comment:9 by digitall, 8 years ago

Attached a workaround bodged fix which avoids this issue. This is not a usable solution, but it eludicates the cause.

by digitall, 8 years ago

Attachment: checkDoorOnlyFromUser.patch added

Slightly Better Fix (Prevent checkDoor in Pathfinding when called by Script)

comment:10 by digitall, 8 years ago

Attached patch for slightly better fix. This works by blocking checkDoor() (which is called when the last node in a walking path is reached) when the walking is triggered by a script, rather than by the user. This fixes the issue, but is not a good fix as scripts do expect locationChange via door in most cases by moving to the hitZone i.e. after you pick up all the leaves and talk to the Monk, Dough and the Monk stop in the doorway now... however, this is not fatal as clicking on the doorway allows you to continue.

comment:11 by bluegr, 8 years ago

Fixed in commit 2883ebc (same cause as bug #3135868)

comment:12 by bluegr, 8 years ago

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