Ink integration - conversation stops in Dialogue System, runs in Ink

Announcements, support questions, and discussion for the Dialogue System.
Post Reply
NotVeryProfessional
Posts: 150
Joined: Mon Nov 23, 2020 6:35 am

Ink integration - conversation stops in Dialogue System, runs in Ink

Post by NotVeryProfessional »

Here's a simple test case which runs in Inkle as well as the unity-ink-integration demo scene and the Ink Player, but when I run it in Dialogue Manager (the third party integration example scene) it stops in the middle.

To replicate, choose "talk to innkeeper". He will speak his first line, then the conversation ends. The console log just says "Dialogue System: Ending conversation."

When running the same file in the Ink-Demos-Basic Demo scene, it works as expected, so the issue seems to be somewhere in Dialogue System.

Code: Select all

VAR coins=50

-> inn

= inn
# location: Azmar_Inn
Narrator: The local inn is a small house with an even smaller bar. There are three tables and a tiny kitchen tucked away behind the counter. The place is almost deserted now, it is probably frequented mostly by the locals, who are in the fields at this time.
A man in fancy clothes sits at the table near the door.
* [talk to the innkeeper]
    -> Innkeeper
* [talk to the stranger]
    -> Duvas
* [leave]
    -> END

= Innkeeper
Innkeeper: "{Another visitor. It must be my lucky day. What can I do for you?|Anything else?}
* "I'm looking for a stranger from town, have you seen anyone not a local?"
    Right behind you, sitting at the table over there.
    -> Innkeeper
+ "What do you serve here?"
    Innkeeper: We have a nice house ale, 3 coppers a mug, or mead from Casuvo for 4 coppers. You can also have a nice wine from the south, that'd be 6 coppers for a glas or 35 for a bottle.
    + + "nothings, thanks."
        -> Innkeeper
    + + { coins >= 3 } "I'll take the house ale."
        ~ coins -= 3
    + + { coins >= 4 } "Give me some of the Casuvian mead, please."
        ~ coins -= 4
    + + { coins >= 6 } "A glas of wine sounds about right."
        ~ coins -= 6
    + + (bottle) { coins >= 35 } "I'd like a bottle of wine, please."
        ~ coins -= 35
    - - Innkeeper: "Certainly, here you are. Anything else?"
        -> Innkeeper
* [step away from the counter]
    -> inn
* [leave the inn]
    -> END


= Duvas
Narrator: The stranger looks at me as I approach the table, but does not say anything.
* "Hello."
    Narrator: The stranger looks up, gives you the slightest hint of a nod, but says nothing.
    * * [sit down]
    -> END
* {Innkeeper.bottle} "Care for a drink? (put the bottle on the table)"
    Duvas: "Someone with manners, I see. Sit down, friend. What brings you here?"
    * * "Player: Are you Duvas Elad?"
    * * "I am looking for someone."
    - - -> END
-> END
NotVeryProfessional
Posts: 150
Joined: Mon Nov 23, 2020 6:35 am

Re: Ink integration - conversation stops in Dialogue System, runs in Ink

Post by NotVeryProfessional »

Fun fact: If I add a line after

Code: Select all

Innkeeper: "{Another visitor. It must be my lucky day. What can I do for you?|Anything else?}
(between that and the choices) - any line except a blank one - it works.
User avatar
Tony Li
Posts: 22037
Joined: Thu Jul 18, 2013 1:27 pm

Re: Ink integration - conversation stops in Dialogue System, runs in Ink

Post by Tony Li »

Hi,

I pasted that Ink file into a test scene, and it seems to play correctly. Let's make sure you have up-to-date integration files:

DS_InkSupport_2021-05-19.unitypackage

(It may not import anything new; you may already be up to date.)

Here's the test scene I used:

DS_TomInk_2021-05-19.unitypackage
NotVeryProfessional
Posts: 150
Joined: Mon Nov 23, 2020 6:35 am

Re: Ink integration - conversation stops in Dialogue System, runs in Ink

Post by NotVeryProfessional »

I did not have the up-to-date integration files, it appears. I took the ones in the Dialogue System package, and it did import and overwrite some files with that package. It seems the issue is fixed now.
User avatar
Tony Li
Posts: 22037
Joined: Thu Jul 18, 2013 1:27 pm

Re: Ink integration - conversation stops in Dialogue System, runs in Ink

Post by Tony Li »

Great! Thanks for letting me know.
NotVeryProfessional
Posts: 150
Joined: Mon Nov 23, 2020 6:35 am

Re: Ink integration - conversation stops in Dialogue System, runs in Ink

Post by NotVeryProfessional »

Sorry, but I have to revive this. Apparently, I'm a master at breaking the Ink integration.

Here is another file that breaks, tested in the demo scene you sent.

pick "talk to villagers" as the first option. In Inkle and the Unity Ink player, next choice is a list of names. In Dialogue System, it repeats choices 1, 2 and 4, but replaces 3 (which happens to be the "talk to villagers" one) with a name.


I made sure I'm using the recent versions of Dialogue System, Unity Ink and DS-Ink-Integration

Fun fact: If I uncheck "Player Dialogue Text Follows Response Text", then it works (but repeats all choices)

Code: Select all


// FIXME: should be linked to a variable
VAR coins = 500


Narrator: On the second day of travel, you reach the hamlet of Azmar. You are counting from that fateful night now, the one that smashed life as you knew it into pieces. Second day. Time is running and against you, but it cannot be helped, for it is here that you have been told to meet with one named Duvas Elad, who may be able to help you. And him.
-> Azmar

== Azmar ==
{The hamlet of Azmar is {~a small place of maybe 70 souls|quiet and calm, home to about 70 people|a lovely place, but small}|You are in the hamlet of Azmar}.
You decide to...
+ [wait]
    Narrator: You sit down near the entrance to Azmar, where you let the time pass for a bit before venturing on.
    -> Azmar
* [look around a bit]
    -> look_day
+ [talk to some villagers]
    Narrator: You see several villagers are wandering around nearby. Whom do you want to approach?
    + + [talk to Derian]
        -> Derian
    + + [talk to Josh]
        -> Josh
    + + { not Sarah.rude } [talk to Sarah]
        -> Sarah
    + + [Decide to not talk to any of them, after all.]
        -> Azmar
+ [visit the local inn.]
    -> inn

= look_day
The main attraction of this small hamlet is the pigs and chickens grazing right in the village centre. A tiny stream runs through the forest nearby, eventually turning east and flowing into the Monto river. A few fields and fruit trees feed the villagers. A small tavern that also sells some household items from time to time (whenever its owner was in the nearby town of Casuvo for supplies) is the only infrastructure the place has. Travellers generally pass it by.
-> Azmar

= Derian
-> Derian_Intro

= Derian_Intro
Derian: "Well met, stranger. What brings you to Azmar?"
* "I am supposed to meet someone here. Also a stranger to you, from town. Dressed in fancy clothes, I have been told, goes by the name of Duvas Elad."
    Derian: "Hm, I don't know. Haven't seen any other strangers, sorry."
    * * "If you had to guess, where would you advise I look?"
        Derian: "The inn, possibly, right over there."
        Player: "Thank you."
        -> Azmar
    * * "I will look around. Have a nice day."
        -> Azmar
* "Just visiting, nothing special."
    -> Azmar


= Josh
Josh: "{Hey there, I'm Josh. How are you today?|Anything else I can do for you?}"
- (josh_answers)
* { josh_answers < 2 } "Thanks, I'm feeling well."
    Josh: "What can I help you with?"
    -> josh_answers
* "I'm looking for a fellow from the town. Fancy dress, probably. Where could I find him?"
    Josh: "Haven't seen him. But foreigners often hang out in our small tavern. One the main road, on your right. The one with the barrels out front."
- "That's all for now, thanks."
    -> Azmar


= Sarah
Sarah: "Hello, traveller."
* "Good morning. I am looking for a fellow recently arrived from Casuvo."
    Sarah: "A stranger to Azmar? I think I saw someone foreign enter the tavern an hour ago. Just up the main road."
    Player: "Thank you and goodbye."
    -> Azmar
* "Hello peasant. Where can I find a visitor from the town to this boring place?"
    Sarah: "So rude."
    Narrator: She turns and walks away.
    - - (rude) -> Azmar
- "that is all" -> Azmar

= inn
-> END

User avatar
Tony Li
Posts: 22037
Joined: Thu Jul 18, 2013 1:27 pm

Re: Ink integration - conversation stops in Dialogue System, runs in Ink

Post by Tony Li »

I'll check this out and work up a fix ASAP.
User avatar
Tony Li
Posts: 22037
Joined: Thu Jul 18, 2013 1:27 pm

Re: Ink integration - conversation stops in Dialogue System, runs in Ink

Post by Tony Li »

Alright, finally fixed both of those issues (this one and the Always Force Response Menu issue). Please try this updated package, which is the candidate for release in 2.2.17 now:

DS_InkSupport_2021-05-21.unitypackage
NotVeryProfessional
Posts: 150
Joined: Mon Nov 23, 2020 6:35 am

Re: Ink integration - conversation stops in Dialogue System, runs in Ink

Post by NotVeryProfessional »

From what I see, everything works now. Brilliant!
User avatar
Tony Li
Posts: 22037
Joined: Thu Jul 18, 2013 1:27 pm

Re: Ink integration - conversation stops in Dialogue System, runs in Ink

Post by Tony Li »

Great! Thanks for letting me know.
Post Reply