Opened 12 years ago
Closed 11 years ago
#6292 closed defect (fixed)
TOON: Drew sometimes ends up stuck walking forever
Reported by: | fuzzie | Owned by: | sylvaintv |
---|---|---|---|
Priority: | normal | Component: | Engine: Toon |
Version: | Keywords: | ||
Cc: | Game: | Toonstruck |
Description
Drew sometimes ends up stuck in a walking animation, with nothing happening. Usually you can just click somewhere else to break him out of this loop, but sometimes _mouseHidden is set to true when this happens, which means the game is stuck and you have to quit ScummVM.
I can't provide a savegame of this by nature, but it seems simple to replicate in my English copy of Toonstruck by walking behind the right-mouse gargoyle in the staircase in Nefarious' Castle, and then clicking the gargoyle. Drew will walk a bit around the gargoyle, reach the target point, and then keep walking forever, stuck.
Ticket imported from: #3611869. Ticket imported from: bugs/6292.
Attachments (1)
Change History (8)
comment:1 by , 11 years ago
comment:2 by , 11 years ago
It is a bit trickier to reproduce than I remember. Clicking on the stairs, waiting until Drew is *almost* walking down them, and then clicking the gargoyle seems to do the trick though, with your savegame (thanks). Sigh.
And, right, the walking-in-the-spot momentarily/interruptibly bugs aren't what I mean.
comment:3 by , 11 years ago
fuzzie: Thanks for looking at this. I can manage to replicate the momentary pathfinding walk on the spot... but they do end eventually. I have got it stuck once on the left gargoyle's left side, but not sure if that is what you mean... plus I think that ended eventually.
This will be some corner case in the Toon pathfinding code, which should be improved to ensure that it will always exit (as in some cases, a path may not be possible). This code is currently present, but it may fail in some circumstance.
comment:4 by , 11 years ago
AHA... managed to replicate. Drew stuck walking against the right most gargoyle with mouse hidden so all input is ignored and the game is stuck.
To replicate, load the savegame on the Second Floor Landing, click on the stairs on the right i.e. Down to First Floor Landing, then just as Drew is about to trigger the screen change i.e. on the top few steps, click on the right hand gargoyle hotspot to use it... Drew will try to walk to it and get stuck.
comment:5 by , 11 years ago
Script code is looping around Toon::ScriptFunc::sys_Cmd_Get_Actor_Facing.
comment:6 by , 11 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
comment:7 by , 11 years ago
Fixed in 114eff979d281341f9a7661a58b0ea2114fcfc7d on master
Thanks fuzzie and tdhs !
Not sure that I can replicate the lockup with the latest Git master, but I am attaching a savegame from the Second Floor Landing near the game end i.e. the screen with stairs and gargoyle head to aid replication and investigation. I can get Drew to walk on the spot if I try a few times, but it seems to give up eventually.