Issue756

Title Dialog issue when completing Tania's quest.
Priority release-blocker Status resolved
Assigned To Xenux Keywords dialog, quest
Linked issues Pendragon/Tania - dialog state error
View: 721
Watchers Xenux

Submitted on 2014-07-17 20h29 by mhwombat, last changed by matthiaskrgr.

Files
File name Uploaded Type Edit Remove
wombat.sav.gz mhwombat, 2014-07-17.20:29:01 application/x-gzip
Messages
Author: mhwombat Date: 2014-07-17   20h29
A few problems arise in completing Tania's quest. In the attached savefile, I
brought Tania to the town, and got Spencer's permission for her to come in.

Problem 1: Go back to Tania. She says "Are we there yet?" or "How much longer?".
She doesn't "remember" that we've already reached the town. Pendragon doesn't
say anything now about Tania. Sometime Tux has the option to say "Wait here",
sometimes his only option is to say "Follow me to the town."

Workaround: Leave the town. As you pass through the gate, Pendragon says "Tania
is waiting to speak to you". Come back into town, and now Tania will ask "Any
news?". Tux tells her that Spencer said it was OK. Pendragon says if it's OK
with Spencer, it's OK with him.

Problem 2: At this point, Tux may have the option to say "Wait here" (which
makes no sense, since Tux just told her to go to Doc Moore). Or worse, he may
only have the option to ask her to heal him, after which there are no dialog
options and no way to exit the dialog!

I have experienced this problem in several play-throughs. This is a different
problem from issue 721, but it may be related.

Attached wombat.sav.gz.
Author: Xenux Date: 2014-08-07   09h55
http://rb.freedroid.org/r/2111/
Author: jesusalva Date: 2014-08-12   01h45
It's present also on issue 716 .
Author: Christoph Date: 2014-10-31   21h18
Part 2 of problem 2 (no dialogue options left) happened here as well. When this
happened I went to the doc first after leaving Tania at the gate. The doc had
diealogue options as if he had already examined her. After that I went to
Spencer, got permission, but had to leave the town as described above. After
that I gotr the "loop" when talkint to Tania. A workaround is to include the
dialogue option 94 (?) after the branch to Pendragon. This makes an additional
NOTEXT dialogue item for her, so you can leave the dialogue screen.
Author: digifuzzy Date: 2014-11-10   03h15
Play tested in game and in cheat. Observations:
- to get Pendragon to state "Someone's been waiting to talk to you", you have to
hit the trigger at the outer West Gate.

- you can still go through the dialogs with Spencer/DocMoore/Ewald and still
have Tania stuck with Pendragon.

- no exit from Tania's dialog text after telling her Spencer says its okay
(ctrl+C - exit game)

My Suspicion...
switching between Pendragon/Tania in dialog mode overwrites (local Npc =
FDrpg.get_npc()) variable in dialog loop losing state change of visible nodes
between Tania and Pendragon ( hiding different nodes in each dialog variable).
Author: digifuzzy Date: 2014-11-11   00h39
RR2130 uploaded as a workaround to bug.
Author: jesusalva Date: 2014-11-11   22h53
digifuzzy: On cheat... If you run out of dialog options, instead of 'Ctrl+C'
press 'ESC'. This abruptly ends the dialogue. (since many time. It was non-cheat
on 0.14, if I'm not mistaken...)

About your suspicion. It happened before the local Npc, if I remember correctly.
Author: fluzz Date: 2014-11-22   22h02
That dialog script (and its companion scripts in Tania's quest) is really
complex and thus is subject to many bugs. We should really find a way to
simplify it.

Matthias do you think that you could draw the automaton of the quest ? Or at
least explain its different steps ?
Author: digifuzzy Date: 2014-11-22   22h45
Play tested with git update 1812d7d2bc043869d5e1a68b8506467c33e28643
Dialog error was not encountered. The interface/triggers to move the
quest/dialog threads along are still "clunky". Tux has to be at the "right" spot
almost walking out of west gate before Pendragon says "some one has been waiting
to speak with you" - which moves the quest to completion. However, the game is
playable.

+1 for closing bug.
Author: fluzz Date: 2014-11-22   23h23
That patch changes nothing to the game logic (nor do the two others related to
that patch). So the bug is still there...
Author: jesusalva Date: 2014-11-24   00h20
fluzz: Acually it may do. Depending on the way as the process is handled, the
end_dialog() function may start working properly, once again.

I didn't tested, but I doubt that it was fixed by commit 1812d (it's doc change).
This error, actually, is pretty weird. We open a lot of dialogs, and keep
opening/closing them, in rapid sucession. Depending on how NPC function is, that
amount of open/close may eventually cause overrides on variables and functions.
( I mean, we are running Tania dialog, then we switch to Pedragon with Tania
dialog still open (if I'm not mistaken) then we return back to Tania dialog, and
we keep on this messy sequence, making different outputs, depending on how you
did it. )

I already encountered some variations of this bug myself. In some Pedragon
didn't started talking to me and I had to click him, in other everything went
fine, and in another I got stuck with no option while inside Tania's dialog.

I must agree with fluzz. This part is too messy (I'll not use refined words,
like 'complex'). In fact I still remember when 'Tania's sanity' quest didn't worked.
Author: salimiles Date: 2014-12-02   03h53
Hey I'll try to take a look at this. There have been 
a large number of changes to how dialogs are done 
since I wrote it.

At the time there were a number of things included in 
the updated tania quest set that we had not 
implemented before (previously the quest was 
inaccessable and completely broken), one of them 
being a multi npc dialog.  Y'all probably have 
figured out a simpler way to do this.
Author: matthiaskrgr Date: 2015-03-05   23h25
I pushed the patch as abbef90756073d683c516d5eed5ff0a2257e8342.
History
Date User Action Args
2015-03-05 23:25:35matthiaskrgrsetstatus: open -> resolved
messages: + msg3068
2014-12-02 03:53:26salimilessetmessages: + msg2994
2014-11-24 00:20:46jesusalvasetmessages: + msg2982
2014-11-22 23:23:25fluzzsetmessages: + msg2980
2014-11-22 22:45:36digifuzzysetmessages: + msg2979
2014-11-22 22:02:49fluzzsetmessages: + msg2978
2014-11-11 22:53:45jesusalvasetmessages: + msg2961
2014-11-11 00:39:29digifuzzysetmessages: + msg2955
2014-11-10 03:15:28digifuzzysetmessages: + msg2952
2014-10-31 21:18:07Christophsetmessages: + msg2915
2014-08-12 01:45:00jesusalvasetmessages: + msg2864
2014-08-07 09:55:44Xenuxsetmessages: + msg2859
2014-08-01 10:15:54Xenuxsetpriority: bug -> release-blocker
2014-08-01 09:19:19Xenuxsetassignedto: Xenux
nosy: + Xenux
2014-07-17 20:29:02mhwombatcreate