Home » MODDING HQ 1.13 » Flugente's Magika Workshop » New feature: dynamic dialogue
New feature: dynamic dialogue[message #333906] Sat, 28 June 2014 01:41 Go to next message
Flugente

 
Messages:3137
Registered:April 2009
Location: Germany
New Feature: Dynamic dialogue

A logical continuation of dynamic opinions, this feature allows mercs to talk to each other whenever something changes their opinion on each other. For example, if Fidel shoots a civilian, another merc might object to that. Fidel can then either admit his guilt or deny it - at which point other mercs can interject and voice their opinion. These reactions can then influence opinions further. If an IMP takes part in this, the player can even choose in what direction you want to move this talk, but only has a short time for this (this is inspired by Alpha Protocol, which has the most awesome dialogue an relationship system ever in an action game). :laugh:

Observe:

Note that the outcomes are different depending on how we choose.

Ini settings:
[Dynamic Dialogue Settings]

;******************************************************************************************************************************
; In this section you can specify wether mercs talk to each other
;******************************************************************************************************************************

; if DYNAMIC_OPINIONS is TRUE, mercs will comment on each other.
; This can happen whenever something influences their relationship
; Mercs will accuse each other of doing something - or compliment them. Other mercs can then react and choose answers 
; depending on their relations and personality
; If an IMP interejcts, the player has a short time to select the kin of response he wants to give.
DYNAMIC_DIALOGUE = FALSE

; the dialogue boxes will stay on for x milliseconds
DYNAMIC_DIALOGUE_TIME_OFFSET = 3000

A few noteworthy points:

  • This feature is OFF by default,as it might be a bit irritating.
  • Dialogue will play in tactical and strategic (but not if the sector inventory is open).
  • An IMP can decide to say nothing, side with one of the two argument sides, or decide to stop the talk with a reasonable or an aggressive approach. The last two are somewhat Mass Effect-inspired.
  • What kind of statement a merc gives is influenced by his opinion on other people in this dialogue and his personality.
  • If you load a savegame before a chain of dialogue events is finished, the dialogue will start anew. Stopping the game or disabling saving/loading would break game flow to much. As a sideeffect, you cannot avoid dialogue by smart saving.
  • At the moment the dialogue is hardcoded. It might be moved to xml, but I'm not looking forward to it - this already requires A LOT of text. Merc-specific text would require metric fucktons of dialogue. :heavy:
  • The dialogue boxes are independent of the usual dialogue boxes. The current system does not handle multiple boxes well, an is simply inadequate to my needs here.
  • Known issues: In strategic, the lower messagebox flickers. in tactical, the screen flickers when moving while dialogue plays. Both are related to the constant screen refreshing this requires, and I haven't found a fix yet.
  • No sound, because how the frell would I do that? :/
  • As of r7298, pressing 'ESC' in tactical fast forwards the dialogue boxes (just like it fast forwards the normal dialogue). This is helpful if you just want the stuff to be over with Smile
  • I expect that the community might have quite a few suggestions for this, so changes might be more than usual. This can be expanded a lot, I think, but let' see some feedback first.
This has been added to the trunk in r7297 and GameDir r2059. It is savegame compatible.

Edit 1: As of r7298, pressing 'ESC' in tactical fast forwards the dialogue boxes (just like it fast forwards the normal dialogue). This is helpful if you just want the stuff to be over with Smile

[Updated on: Fri, 03 April 2015 18:47]



Re: New feature: dynamic dialogue[message #333908] Sat, 28 June 2014 02:06 Go to previous messageGo to next message
Hanakin

 
Messages:35
Registered:June 2008
Location: Czech Rep.
Looks amazing, Flugente! Good job! :clap:

I support the move to XML though - surely the work on dialogues could then be done by people other than yourself? To share the burden?

Also, kudos on mentioning Alpha Protocol!
Re: New feature: dynamic dialogue[message #333917] Sat, 28 June 2014 11:01 Go to previous messageGo to next message
silversurfer

 
Messages:2156
Registered:May 2009
Wow, this looks interesting. This feature adds one of the missing aspects of team work that could lead to a lot more immersion. I like dialogue more than just a text message at the bottom of the screen that some opinion has changed. Smile

Re: New feature: dynamic dialogue[message #333931] Sat, 28 June 2014 19:58 Go to previous messageGo to next message
Taro_M

 
Messages:298
Registered:November 2008
What if there more then one IMP? What if I have a team made up only from 6 IMP's?
Re: New feature: dynamic dialogue[message #333936] Sun, 29 June 2014 14:38 Go to previous messageGo to next message
Flugente

 
Messages:3137
Registered:April 2009
Location: Germany
@Hanakin: I currently use statements for several parts of a conversation. For the sake of clarity, lets define the merc that begins a conversation as victim, the merc he complains about (the one who did something) as cause and any other mercs that interjects in the dialogue as interjector. We then have the following dialogue parts:
  • victim complains about other cause, beginning the dialogue
  • cause denies accusations
  • cause admits to accusation
  • interjector dialogue selection (IMP-only)
  • interjector agrees with victim
  • interjector disagrees with victim
  • interjector agrees with cause
  • interjector disagrees with cause
  • interjector appeals to reason
  • interjector agressively shuns both parties
  • victim agrees with interjector
  • victim disagrees with interjector
  • cause agrees with interjector
  • cause disagrees with interjector
  • someone else dies with victim
  • someone else dies with cause
One of the problem is that meaningful dialogue requires the lines to work with each other. If one just wants to use generic lines, then this won't look like a conversation. Example:

Victim complains about cause earning so much: "How can $CAUSE$ earn this much? It's not fair!"
Cause rebutes this: "Dream on, $VICTIM$. I'm worth every penny, and you know it!"
Another merc shares victim' sentiment: "I was gonna' point that out, too!"
Interjector denies victim's claim: "Quit whining about the money, you get more than enough yourself!"
Victim tells interjector to shut it: "This is none of your business."

#3 an #5 are selected somewhat randomly, the others are used for that specific event. We currently have ~30 events, an I haven't even begun adding new opinion events that were suggested in the thread. The problem is thus that if you create a specific line for a specific merc, it has to fit into the existing dialogue, which might not always be easy.

Also, I have to determine what kind of xml structure I want, an I still want to see wether other requirements arrive.

@Taro: If more than one IMP is available, one will be selected at random. Note that the availabilty depends on the event. E.g. if a merc complains about another merc slowing down the squad, only people in that squad can interject in the conversation, while a conversation is open to everyone.


Re: New feature: dynamic dialogue[message #333938] Sun, 29 June 2014 15:16 Go to previous messageGo to next message
Slax

 
Messages:1439
Registered:July 2006
Location: People riding polar bears...
Oh wow, where would I need to look to add some more dialog variations?

Re: New feature: dynamic dialogue[message #333939] Sun, 29 June 2014 17:40 Go to previous messageGo to next message
Flugente

 
Messages:3137
Registered:April 2009
Location: Germany
Right here once I've defined and set up xmls for that Wink


Re: New feature: dynamic dialogue[message #333942] Sun, 29 June 2014 18:00 Go to previous messageGo to next message
Mauser

 
Messages:799
Registered:August 2006
Location: Bavaria - Germany
Holy crappatoni Flugente!

Do you even do anything else in your life than creating awesome new features for 1.13?

How about you go join Full Control and inject your talent and manpower into JA:F development, we might actually get a much better game released sooner!

Anyways, very cool feature that can greatly improve RPG aspects, but will need a metric fuckton of content work to make it truly worthwhile, as basically every Merc now some general dialogue and answers for most situations, but also many character specific lines with appropriate reactions from everyone and that somewhat dynamically branching.

Sounds like a few months to a year worth of work for quite a few dialogue writers!

So this feature should definitely be optional.

Anyways, keep going strong Flugente, it seems like you are the main one keeping this project alive and progressing atm.

☆★GL★☆
Re: New feature: dynamic dialogue[message #333944] Sun, 29 June 2014 18:22 Go to previous messageGo to next message
Hanakin

 
Messages:35
Registered:June 2008
Location: Czech Rep.
Flugente
One of the problem is that meaningful dialogue requires the lines to work with each other. If one just wants to use generic lines, then this won't look like a conversation.


Thanks for the explanation!
Re: New feature: dynamic dialogue[message #333946] Sun, 29 June 2014 19:55 Go to previous messageGo to next message
RoWa21

 
Messages:2047
Registered:October 2005
Location: Austria
@flugente: cool new feature.
btw, I just added the new missing texts from the english cpp file to the other languages cpp files. I will commit soon.

EDIT: committed

[Updated on: Sun, 29 June 2014 20:04] by Moderator



Re: New feature: dynamic dialogue[message #333948] Sun, 29 June 2014 20:33 Go to previous messageGo to next message
Flugente

 
Messages:3137
Registered:April 2009
Location: Germany
RoWa21
@flugente: cool new feature.
btw, I just added the new missing texts from the english cpp file to the other languages cpp files. I will commit soon.

EDIT: committed
Yoiks! I still manage to forget that step, thanks :haloangel:

Edit: Also, just countercommitted :laugh:

[Updated on: Mon, 30 June 2014 20:27] by Moderator



Re: New feature: dynamic dialogue[message #333978] Tue, 01 July 2014 12:18 Go to previous messageGo to next message
Taro_M

 
Messages:298
Registered:November 2008
So, I presume that if I have 6 IMP's only in the team, then they will complain at each other like normal mercs and I can inject myself into their conversation with other randomly chosen IMP. Is that correct?
Re: New feature: dynamic dialogue[message #333982] Tue, 01 July 2014 20:34 Go to previous messageGo to next message
RunAwayScientist

 
Messages:70
Registered:September 2001

Flugente, marry me.

[Yes]
[No]
[Remain silent]





Testing the new feature now. Cheers mate.

Re: New feature: dynamic dialogue[message #334000] Thu, 03 July 2014 19:09 Go to previous messageGo to next message
RunAwayScientist

 
Messages:70
Registered:September 2001



Two issues:


- The dialog for using a medkit on an injured merc seems to be relaitvely static, with no variation. Considering that bandaging is something done very, very often, I highly recommend you add in some additional variations or (if you want to be lazy) insert a random number generator check to prevent the dialog from running too many times.


- When using High Speed Timer, dialog flips by without being able to be read. If you could add in a check for 'Auto-Speed Up Turns' option and multiply the miliseconds value by 3 or 5, that might allow for it to stay on screen long enough to be read.

( Alternatively, you could tie it into the 'Pause Dialog Boxes' option where a mouse click must be detected before progressing. )

Re: New feature: dynamic dialogue[message #334091] Tue, 08 July 2014 21:34 Go to previous messageGo to next message
Flugente

 
Messages:3137
Registered:April 2009
Location: Germany
@Taro: Yes.

@RunAwayScientist: At the moment there is no variation. There might be some once I've added xmls.
What are your timer settings? I can't reproduce it. I can't deduct the influence it either, as timer stuff is some seriously fucked up code. :computer2:


Re: New feature: dynamic dialogue[message #334120] Thu, 10 July 2014 09:22 Go to previous messageGo to next message
Cerhio

 
Messages:78
Registered:March 2013
Flugente,

Do you take donations? JA2 1.13 is the only game I cannot stop playing and you keep making it better and better! I dread the day you stop developing new features but until then THANK YOU!

PS: Seriously, do you take donations?
Re: New feature: dynamic dialogue[message #334210] Mon, 14 July 2014 09:43 Go to previous messageGo to next message
Zarax

 
Messages:48
Registered:February 2007
Location: Italy
I noticed a small bug.
Bandaging leads to bickering way too fast but the problematic issue is that a merc can end complaining against himself.
Re: New feature: dynamic dialogue[message #334290] Thu, 17 July 2014 18:57 Go to previous messageGo to next message
Soto Banaris

 
Messages:130
Registered:May 2012
Location: Germany
Tried the dynamic dialogue and was getting attacked with artillery strikes from a radio set. My Squad is accusing some mercs for the strike just because the strike happens at the start of the player phase although they didn't do anything. Needs to be sorted out.
Re: New feature: dynamic dialogue[message #334299] Fri, 18 July 2014 10:02 Go to previous messageGo to next message
RunAwayScientist

 
Messages:70
Registered:September 2001



Time settings are as follows:


HIGHSPEED_TIMER = TRUE (set in ja2.ini in main directory)




JA2_options.ini:

CLOCK_SPEED_PERCENT = 150

ENEMY_CLOCK_SPEED_PERCENT = 150

UPDATE_FREQUENCY = 16000

FAST_FORWARD_PERIOD = 500

Re: New feature: dynamic dialogue[message #334954] Tue, 12 August 2014 01:35 Go to previous messageGo to next message
Flugente

 
Messages:3137
Registered:April 2009
Location: Germany
Cerhio
Flugente,

Do you take donations? JA2 1.13 is the only game I cannot stop playing and you keep making it better and better! I dread the day you stop developing new features but until then THANK YOU!

PS: Seriously, do you take donations?
That is very nice of you, thank you!

However, donations are a tricky issue - the community has always provided content for free, and I would feel uncomfortable if I suddenly took donations for my personal use - the community grew on everybody doing stuff fro free, and that should not change. Shanga has said that he does plan some sort method to introduce the possibility of donations into the community in the as-of-yet unspecified future, so this might be possible in the future.

For now, If you want to donate, I would rather point you to a good cause like http://www.icrc.org/eng/donations/ . They'll put money to a much better use than I do :spend: :rulez:

@Zarax: That was fixed in... don't remember, but it is fixed by now Wink

@Soto: The idea is that they accuse you for leading them into a bad situation that might have gotten people killed. Wether or not they did is irrelevant, if people want a scapegoat, they'll find one :pitchfork:


Re: New feature: dynamic dialogue[message #335248] Sat, 30 August 2014 08:38 Go to previous messageGo to next message
walbers23

 
Messages:44
Registered:March 2009
Location: Qingdao, China
would really like to turn this feature off...it's pretty annoying. I'm using 7249 and the value is set at true with no option given to me to set it to false.

any suggestions?

thanks

regards
will
Re: New feature: dynamic dialogue[message #335249] Sat, 30 August 2014 10:27 Go to previous messageGo to next message
grim

 
Messages:290
Registered:July 2006
Location: France
In Data-1.13\Ja2Options.INI, change DYNAMIC_DIALOGUE = TRUE to DYNAMIC_DIALOGUE = FALSE. I guess it should work.

Problems spotted:
Build 7384 of 8/15
Started a new game, recruited Mitch and Nails.
I went to rebel hideout, spoke to Miguel and when i clicked on "recruit", he talked about Ira, Mitch and Snails had a -2 red number appear each, and a dynamic dialogue started, terminating the dialogue with Miguel and freezing the screen out of the scene. I couldn't see the possible answers, so i clicked by guess and finally managed to end it.
Re: New feature: dynamic dialogue[message #335252] Sat, 30 August 2014 12:47 Go to previous messageGo to next message
walbers23

 
Messages:44
Registered:March 2009
Location: Qingdao, China
"In Data-1.13\Ja2Options.INI, change DYNAMIC_DIALOGUE = TRUE to DYNAMIC_DIALOGUE = FALSE. I guess it should work."

I don't have an .INI file in my Data-1.13 folder...only a notepad doc and I can't find dynamic dialogue in there.

the problem with my .INI file is that it doesn't give me the option to change the value for dynamic dialogue though every other feature has editable option values.

regards
will
Re: New feature: dynamic dialogue[message #335257] Sat, 30 August 2014 13:58 Go to previous messageGo to next message
Flugente

 
Messages:3137
Registered:April 2009
Location: Germany
Eh? What did you install? Data-1.13\Ja2Options.INI is one of the most important files ever, and is always present in any SCI.

The dynamic dialogue settings are likely not in the ini editor though. I stopped updating that years ago after nobody seemingly bothered with the thing and never read the descriptions I added.


Re: New feature: dynamic dialogue[message #335262] Sat, 30 August 2014 15:00 Go to previous messageGo to next message
walbers23

 
Messages:44
Registered:March 2009
Location: Qingdao, China
I installed whatever was the latest unstable SCI....my INI is there...it's just in the main directory...not in the data 1.13 one. weird....

maybe I'll just go install the new stable version

rgds
will

edit: I've actually never used an .INI file in the Data directory...it's always in the main one. Looking at my install of Sm

[Updated on: Sat, 30 August 2014 15:03] by Moderator

Re: New feature: dynamic dialogue[message #335263] Sat, 30 August 2014 15:06 Go to previous messageGo to next message
Flugente

 
Messages:3137
Registered:April 2009
Location: Germany
Eh. Did you perhaps apply the sci on the wrong folder?


Re: New feature: dynamic dialogue[message #335265] Sat, 30 August 2014 15:49 Go to previous messageGo to next message
grim

 
Messages:290
Registered:July 2006
Location: France
Flugente
Eh? What did you install? Data-1.13\Ja2Options.INI is one of the most important files ever, and is always present in any SCI.

The dynamic dialogue settings are likely not in the ini editor though. I stopped updating that years ago after nobody seemingly bothered with the thing and never read the descriptions I added.


I just want to say i use it ^^
Moreover, Hrvg and i translated every description we found into french. Inieditor lives!
Re: New feature: dynamic dialogue[message #335290] Sun, 31 August 2014 05:26 Go to previous messageGo to next message
walbers23

 
Messages:44
Registered:March 2009
Location: Qingdao, China
Flugente
Eh. Did you perhaps apply the sci on the wrong folder?


hmmm, well I thought I did....I installed JA2 calling that folder JA2 1.13 and then extracted the SCI into that. I have all the data folders but those only contain the notepad files. my exe and INI are in the main directory folder. and that particular INI does not give me an option to change dynamic dialogue though every other feature is changeable.

I guess I should just reinstall again?

thanks

regards
will
Re: New feature: dynamic dialogue[message #335294] Sun, 31 August 2014 09:28 Go to previous messageGo to next message
Meitsi

 
Messages:17
Registered:June 2009
Location: Finland
Some miscommunication going on? Ja2.ini in the main folder and ja2options.ini in data-1.13 folder are two different ini files. Perhaps one of those notepad files is the ja2options.ini you're looking for?
Re: New feature: dynamic dialogue[message #335295] Sun, 31 August 2014 09:51 Go to previous messageGo to next message
DepressivesBrot

 
Messages:3765
Registered:July 2009
Yeah, I get the strong impression you are confusing the ini editor application with the ini files which will default to opening with notepad since they are plaintext files with a different extension (which you probably hide anyway).


Re: New feature: dynamic dialogue[message #335297] Sun, 31 August 2014 11:46 Go to previous messageGo to next message
walbers23

 
Messages:44
Registered:March 2009
Location: Qingdao, China
DepressivesBrot
Yeah, I get the strong impression you are confusing the ini editor application with the ini files which will default to opening with notepad since they are plaintext files with a different extension (which you probably hide anyway).


aha! you are right....that's what I'm doing. so if I edit that notepad document then the change will take place, right? I couldn't find the feature the first time I looked through it...will have to try again. thanks!

regards
will
Re: New feature: dynamic dialogue[message #338995 is a reply to message #335297] Sat, 17 January 2015 15:54 Go to previous messageGo to next message
Ravenhugger

 
Messages:22
Registered:March 2012
Location: great dark forests of Eur...
"Yes. I want this very much." How does a noob go about getting this? Is it not part of the 2014 stable release?
Re: New feature: dynamic dialogue[message #338998 is a reply to message #338995] Sat, 17 January 2015 23:13 Go to previous messageGo to next message
Flugente

 
Messages:3137
Registered:April 2009
Location: Germany
This is not included in the 2014 stable release.

To get this, get the newest unstable release here, and set both DYNAMIC_OPINIONS and DYNAMIC_DIALOGUE to TRUE.



Saren threw his head back and screamed in impotent fury, before falling to his throne, head in his claws, trembling in horrified disbelief.

Then he heard a faint chime as Sovereign subscribed to her ECHO channel.

If you want, you can donate to me. This will not affect how and what I code, and I will not code specific features in return. I will be thankful though.


Re: New feature: dynamic dialogue[message #339015 is a reply to message #338998] Mon, 19 January 2015 17:43 Go to previous messageGo to next message
Slax

 
Messages:1439
Registered:July 2006
Location: People riding polar bears...
Had a silly thing happen the other day. Had to throw something from one merc to another. Bad catch, -1 health.
"HEY, you just shot me!"



1.13: Install JA2, unpack latest, play.
AIMNAS: Complete 1.13 installation, Download ZIP and unpack, play.

Re: New feature: dynamic dialogue[message #339019 is a reply to message #339015] Mon, 19 January 2015 23:59 Go to previous messageGo to next message
Flugente

 
Messages:3137
Registered:April 2009
Location: Germany
Well, for simplicity reasons that triggers on any friendly-based damage, not just bullets happy



Saren threw his head back and screamed in impotent fury, before falling to his throne, head in his claws, trembling in horrified disbelief.

Then he heard a faint chime as Sovereign subscribed to her ECHO channel.

If you want, you can donate to me. This will not affect how and what I code, and I will not code specific features in return. I will be thankful though.


Re: New feature: dynamic dialogue[message #340794 is a reply to message #339019] Wed, 29 April 2015 12:44 Go to previous messageGo to next message
Slax

 
Messages:1439
Registered:July 2006
Location: People riding polar bears...
Developed a liking for a certain line. "Thanks, X! I thought I was gonna bleed out."
I keep hearing it in my head every time I see it.

"OH MY GOD, THANK YOU! That nick on my arm... I THOUGHT I WAS GONNA BLEED OUT!"
"Uh, no problem."

Hilarious. big grin



1.13: Install JA2, unpack latest, play.
AIMNAS: Complete 1.13 installation, Download ZIP and unpack, play.

Re: New feature: dynamic dialogue[message #340807 is a reply to message #340794] Thu, 30 April 2015 13:32 Go to previous messageGo to next message
Slax

 
Messages:1439
Registered:July 2006
Location: People riding polar bears...
Have a bug report.

http://i.imgur.com/lzWVHZh.png

Moses talking to ghosts. You're dead, Dimitri. You can't like people!



1.13: Install JA2, unpack latest, play.
AIMNAS: Complete 1.13 installation, Download ZIP and unpack, play.

thumbs26.png  Dynamic Dialog Expansion: Casual Conversation Check[message #345447 is a reply to message #340807] Thu, 12 May 2016 07:39 Go to previous message
RunAwayScientist

 
Messages:70
Registered:September 2001

What Stax posted above is correct. Dead mercs will be involved in dialog after they die (this is a low-priority, non-game breaking bug). Silly merc, you're supposed to be obliterated by the enemy mortar.


I have a recommendation for an extension to this mod that should be equivalent to a few hours small project. Every X hours a Random Number Generator (RNG) event will run that triggers a casual conversation/dialog between mercs to which the IMP can respond if they are in the same sector. The variables involved are:

; Hours between casual conversation checks between mercs, with the possibility of increasing or decreasing opinions.
; DEFAULT - Five days between checks.
HOURS_RANDOM_CONVERSATION = 120


Morale_Settings.ini:

OPINIONEVENT_CASUAL_GOOD = 2
OPINIONEVENT_CASUAL_BAD = -2


To reduce workload, make all casual conversations ONLY have a good outcome and the IMP get a relationship boost if they participate.


Example conversation strings with variable substitution:

Gear Check?


Chitzena or Balime?


How long have you been a mercenary?


Hand me that canteen


I'm hungry...


I'm hungry...go hunt


This is hopeless


I got your back


Amatuers


https://youtu.be/V9LylmwNdM0?t=53s

Flirting1


Flirting2


Joke1


Joke2


Joke3

[Updated on: Thu, 12 May 2016 08:59]


Previous Topic: Proof of concept: JA2 in 3D
Next Topic: New feature: easily placed extra civilians
Goto Forum:
  


Current Time: Wed Sep 20 01:22:53 EEST 2017

Total time taken to generate the page: 0.01582 seconds