DEMOS (Please be patient while demos load. Largest demo is 23Mb)
<Dialogue> //legacy node. Can be skipped <turn> who=0; Good day, Sir <turn> who=1; Good day to you, fair lady <turn> Seeing your face always reminds me that I am home <turn> who=0; Oh! You are going to make me blush if you say things like that <turn> who=1; We shall speak soon as I leave for my next adventure. Till then, my lady <turn> who=0; next=-1; Good day, Sir. <Actors> //legacy node. Can be skipped <Actor>name=Mary Lou; avatar=HouseWife3 <Actor>name=Sir Lancelot; avatar=LancelotOnHorse1
<Actors> <Actor>name=Knight; avatar=KnightKneel1 <Actor>name=Knight; avatar=KnightKneel2 <Actor>name=Knight; avatar=KnightStand7 <Actor>name=King Colonius; avatar=King1 //who 3 <Actor>name=King Colonius; avatar=KingMad <Actor>name=King Colonius; avatar=KingSad <Dialogue> <turn> id=0 ; next=1; who=1; Afrikaans=Ek was suksesvol in my avontuur, u hoogheid [require] - PrincessFound 1 50, - DeadKnight 1 100, - Quest3 1 3 [background]ThroneRoom My king! I have returned from my adventure with tales of victory <turn> id=1 ; next=2; who=3 [Afrikaans] Ons het nie nou tyd vir dit nie!\nRed my dogter van die draak!; [keys] + Quest3 1 I'm glad to hear it but my daughter has been kidnapped You need to ride out immediately! Find the dragon! Save her! <turn> id=2 ; next=-1; who=2; Afrikaans=; Ek is reeds op pad, U hoogheid! I will leave at once your majesty! <turn> id=3 ; next=4; who=3; Afrikaans= En? Kon jy haar red? [background]ThroneRoom Have you found my daughter yet? <turn> id=4 ; next=8,5; who=1; Afrikaans=Ek het, ja, my koning\nNog nie, my koning I have her, your majesty! I have yet to find her, your majesty <turn> id=5 ; next=6; who=4; Afrikaans=Wel, gaan soek dan voort! Well get back out there then!!! <turn> id=6 ; next=-1; who=0; Afrikaans=Natuurlik, my koning Of course, my king <turn> id=7 ; next=6; who=4 [Afrikaans] As jy aanhou lieg gaan jy met jou lewe betaal!\nGaan soek haar! [require] - Liar 3 99 [keys] + Liar 1 You lie! I see her not! Speak not your lies to me again lest ye be put to death! Find her! <turn> id=8 ; next=9; who=5; Afrikaans=Ag, my engel! Ek is tog so bly jy is veilig! [require] + Princess 1 7 [keys] - Princess 1, + PrincessFound 1 Oh my darling! I am so happy you are safe! <turn> id=9 ; next=10; who=5; [Afrikaans]{:Player:Name}! Jy het vrye toegang tot my skatkamer!\nVat net wat jy wil! [keys] - Quest3 1, + Gold 10000, + Rank 5, Sound name:QuestComplete loop:false {:Player:Name}, you are hereby granted access to my treasury! Take anything your heart desires! <turn> id=10 ; next=-1; who=1; Afrikaans=Dankie, U hoogheid; Thank you, your majesty <turn> id=50; next=10; who=5; [Afrikaans]Als is reg met die wêreld!\nGaan geniet jou {:Gold} goud! [background]Courtyard My daughter is back and all is well! Go enjoy your {:Gold} gold pieces! <turn> id=99 ; next=100; who=4; Afrikaans=Iemand kap net asseblief sy kop vir my af! [background]FlamesOfHell Someone kill this lying disgrace! <turn> id=100 ; next=-1; who=5; Afrikaans=Ag tog! Is daar niemand wat my kind kan red nie? [background]ThroneRoomBlackAndWhite Oh woe is me. Who will save my daughter from the beast?
Disable to allow the UDEA to be used with NGUI/ UGUI / etc.
For example, a custom key “ChangeVolume BGSource 0.4” will send the params “BGSource” and “0.4” to a
function called ChangeVolume
as a single CMLData object so be sure to create your functions like this: public void FuncX(CMLData data)
Custom key’s parameters can now be prefixed with a descriptive name using the : seperator
Example: [keys] ChangeVolume WhichItem:BGSource Volume:0.4 FadeSpeed:0.15, KeyWithNoParams
Parameters without names are accessed in the order they are declared, ignoring named parameters before it
Paramteres with names are accessed by name and can be converted to it’s relevant type
Example:
Using key "ChangeVolume BGSource, Volume: 0.4, 0.15" with function: FuncX(CMLData fields)
string bgSource = fields.data[0]; <-- accessed via data array. First entry
float volume = fields.Float("volume"); <-- accessed by name. Converted to type
float fadespeed = float.Parse( fields.data[1] ); <-- second entry in data array. Value returned as string
Added an Audio system to THE Dialogue Engine. Just drag the audio prefab onto an object, add some clips to it and you
can now play audio right from your dialogue. Simply add the key “PlaySound track:trackname” where
trackname is the name of a track you added to the prefab. Alternatively you can also use “PlaySound index:x”
where x is the array index of a clip you added to the prefab.
You can also add in “loop:true” or “loop:false” if you want. i.e. “PlaySound track:help loop:false”
Added a barking system. Use the same audio system and add the sentences you want the character to speak
Simply tick the “random_barks” box and specify the min and max wait time between random barks. Primarily used
to make guards say random stuff, in the demo I use it to play random electrical beeps and crackles on the
damaged robot. Turn this barks system on or off during dialogues using “DisableRandomBarks” or “EnableRandomBarks”
More info on these fields can be found in the relevant documentation
from the dialogue or from script directly. More info on these fields can be found in the relevant documentation
© 2019 myBad Studios
JBR-games on 2017-11-13 20:22:38
Great Asset, with the ability to do much more. - If you need a npc chat setup for Unity this will do the job. Need your story to have multiple options this can handle it, Need your NPC to know if you picked up a "gold sword" from some other NPC this can handle it easy with out any code... This system also allows for much more like, quest tracking, quick saving features and even inventory. But you will need some coding knowledge if your doing anything fairly advanced. Publisher is very willing to help you out with any issues you may have via the forums or by email. Edit 11/13/2017 Just got a new update, works great with Unity 2017.2 ,also added a simple inventory system.