1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

Macnagum's Dialogue : Break The Zen Master! (Mini-game + Dialogue)

Discussion in 'Dialogue' started by Macnagum, Mar 13, 2015.

  1. Macnagum

    Macnagum Vivacious Visitor

    Joined:
    Jan 17, 2015
    Messages:
    48
    Likes Received:
    5
    Break the Zen master!

    Each year a young woman is invited to the Zen temple to test the will of the Master. And each year the Zen Master resists this flood of lust with ease. But today the new temptress has a special talent...
    Break the Zen master! is a little story divided into two chapter. The first is a game where you play the girl and have to try that the Zen master lose his control by making unpredictable movements. The second part is a dialogue where you play the Zen Master and can do what you want. A start menu allows you to choose different options.

    You can change the time interval between each sentence by changing the variables "half.pause" and "normal.pause" line 9 : add or remove the number of "ББББББББ" you want.

    Narration
    Playing with modes
    Playing with the characters​
    Coding
    Probability script
    Behavior script
    Synonyms script​
    Smart Girl 1 & 2, AI Script
    A "dynamic girl" project.
    Smart Girl 2 is a AI script that gives some natural reactions to the SDT Girl : she can recognize over forty situations and adap her mood, arms position and speech accordingly. You can test this script with the dialogue Smart Girl 2 or create your own dialogue with the AI Script.

    AI means character ! Smart Girl 2 is joueuse and can push her limits, but she also can let you down if you go too fast or bother her ! Try to please her or play with her patience : to you to decide ! You also can click on the menu button and one or more modes among them : No Move Arms, No Break and No Stop.

    During the fuck she can have five main reactions : "More", "Wait", "Good", "Less" and "Breathe" - each having two levels. She also has memory (at least a little bit) and always takes into account her latest reaction, so if she has to repeat the same request, she will say "Listen me", and if her first idea of speech does not match her previous speech ("less" after "more"...), she will say "Nothing" - for wait and see.

    // Smart Girl 2
    Smart Girl 2 is just a demo dialogue - I would incorporate many common expressions, but my english is quite basic.

    // AI script
    The AI script allows you to write dialogues as simply as the usual way : only linetypes (dialogues situations, as "vigorous") are different. You can use all linetypes available, or reduce their number by creating derivations between similar situations (you also can creating derivations for rewrite the names of the linetypes) - see sections below.

    Lynetypes available ------- situations
    ---------------------------------------------------------
    more_1 -------------- she wants more fuck
    more_2 -------------- she really wants more fuck
    wait_1 ---------------- she waiting
    wait_2 ---------------- she is still waiting, or already impatient
    good_1 --------------- she likes (only if a good variation of her throat endurance)
    good_2 --------------- she liked last turn, and very likes this turn (only if a good variation of her breathe and throat endurance)
    breathe_1 ------------ she needs to breathe
    breathe_2 ------------ she really needs to breathe
    less_1 ------------------ she is hurt
    less_2 ------------------ she is really hurt

    nothing ---------------- she has nothing to say (often to avoid a speech that does not match with the previous speech)
    listen -------------------- one of her requests was not take in account and she is annoyed

    cum_on_face_X------- he just cum on her face
    cum_in_mouth_X----- he just cum in her mouth
    cum_in_throat_X------ he just cum in her throat

    restart_1----------------- he continues to fuck after the first cum
    restart_2 ---------------- he continues to fuck after the second cum
    restart_3 ---------------- he continues to fuck after the third cum
    restart_4+ -------------- he continues to fuck after the fourth cum or more

    no_restart -------------- he continue to fuck after a cum and she prefers to stop
    stop ----------------------- she has no more patience
    wake_X ------------------- she awakes from fainting

    //Specials
    cough --------------------- onomatopoeia if she coughs
    interrupt ----------------- onomatopoeia if she interrupted during a dialogue

    derivations
    ---------------------------------------------------------
    more_1:"[more]"
    more_2:"[more]"
    wait_1:"[wait]"
    wait_2:"[wait]"
    good_1:"[good]"
    good_2:"[good]"
    breathe_1:"[breathe]"
    breathe_2:"[breathe]"
    less_1:"[less]"
    less_2:"[less]"

    cum_on_face_X:"[cum]"
    cum_in_mouth_X:"[cum]"
    cum_in_throat_X:"[cum]"

    restart_1:"[restart]"
    restart_2:"[restart]"
    restart_3:"[restart]"
    restart_4+:"[restart]"

    no_restart:"[end]"
    stop:"[end]"
    wake_X:"[end]"
    ---------------------------------------------------------
    lynetypes available
    ---------------------------------------------------------
    more
    wait
    good
    breathe
    less
    cum
    restart
    nothing
    listen
    end

    - This script is mainly based on two variables - oxygen level (addition to the game variables "oxygen" + "breathe") and throat endurance (equivalent to the game variable "him pleasure" - yeah, system D).
    - First the script note the variation of her oxygen and him pleasure (= throat endurance) since the last speech.
    - The difference between the oxygen variation and a reference value "oxygen level for good" indicates if the variation is (five level) too low / low / good / high / too high. Same for the throat endurance value. Ex, if the scale are : too low <= -10 < low <= -3 < good >= +3 > high >= +10 > too high, the value +5 are high. Note that the "good value reference" can change (increase if good, decrease if bad).
    - These two primary reactions are reduced to one "first idea of speech" through a simple treatment (very high > very low > good > high > low). So if there a "high" breathe and "good" throat endurance, the decision is "good".
    - This first idea of speech is compared with the previous speech (really said) to avoid unconformity, and a final speech is selected. Ex : if the first idea is low and the last speech low, the next speech can be "listen me". If no unconformity, the idea of speech becomes the final speech.
    - After the mood and arms position are changed according to this selected speech.
    - That's the main script. In fact there are some exceptions for credibility : ex with the "low oxygen" / "too low oxygen", which are not taken into account for avoid requests such "choke me !". And specials situations as "wait", "cum in/on X", "wake", "restart" or "no patience" are treated separately.

    Obvsiously this AI remains basic. Here some limitations :
    - The character of the girl is a choice among others, here a mix between "simulation/arcade" (or "shy/slut"). Feel free to modify (main are in the "variables" part).
    - The code is voluntarily lightweight : beyond simple behavior simulation, the curve progression "coding complexity / behavior complexity" decreases quickly.
    - It is quite common that the game does not detect a movement that can display a dialogue.
    - The script can run only after the game detect a situation/movement that can display a dialogue, so this script is turn-based. Problem of turn-based, the game detect only the last situation/movement. So you can do ten minutes of "vigorous", the game can take in account the last and soft "pull_off".
    - There is no game time variable - that would be useful to offset the turn-based. For example, impossible to know the average of the oxygen / throat endurance variation.

    // Recquirement
    SDT Loader

    DialoguesActions v4.00 or +
    /!\ Possible bugs with other mods

    These dialogues recquire the loader and DialoguesActions v4.00 or +. There may be problems with other mods (latency, bugs).


    My English is basic, so sorry for the mistakes that you can find.
     

    Attached Files:

    Last edited: Jul 26, 2016
  2. Pim_gd

    Pim_gd Swell Supporter

    Joined:
    Jan 25, 2013
    Messages:
    717
    Likes Received:
    44
    What the... that's some neat scripting you've got in there.

    I don't really like the duplication for the memory variables, but then I tried writing callback hax for it and it didn't really get shorter. Maybe if you could somehow define a set of triggers as a function... Although that's probably something that'd never find its way into the checker properly.
     
  3. butete09

    butete09 Potential Patron

    Joined:
    Mar 9, 2015
    Messages:
    3
    Likes Received:
    0
    testing it now, nice idea for a dialogue. will comment more
     
  4. Hank East

    Hank East Swell Supporter

    Joined:
    Jan 25, 2012
    Messages:
    538
    Likes Received:
    29
    Aye, seems like a neat dialogue! May I ask what exactly is the "sub girl"?
     
  5. taigong

    taigong Potential Patron

    Joined:
    Apr 23, 2014
    Messages:
    8
    Likes Received:
    0
    You did an awesome work, i'll keep looking for your next work or if you do any improvements.

    Good luck and thanks, keep going
     
  6. Macnagum

    Macnagum Vivacious Visitor

    Joined:
    Jan 17, 2015
    Messages:
    48
    Likes Received:
    5
    Thanks for the feedback! In fact I wondered if this kind of script had not already been done... apparently not :)

    @TheCrimsonFuckr
    It's sub for submissive. The girl prefers to be led, but with limits. Can be "passive" is better?

    @Pim_gd
    The memory - and the script in general - was written to be light... and also quick to read for the game! The script could be much lighter with conditions like "if" "else", but to my knowledge the only thing like it is the line attribute "check" and this "makes things slow". As DialogueAction plays lines with only contain triggers instantly, I preferred to use specific lines to required conditions with duplication for a specific random. Otherwise if someone finds a better code, I'm interested (not a challenge, just out of curiosity).
     
  7. Pim_gd

    Pim_gd Swell Supporter

    Joined:
    Jan 25, 2013
    Messages:
    717
    Likes Received:
    44
    line:"[line_*condition*]" //e.g. variable == 3
    line_0:"false"
    line_1:"true"
     
  8. Macnagum

    Macnagum Vivacious Visitor

    Joined:
    Jan 17, 2015
    Messages:
    48
    Likes Received:
    5
    J'achète
     

    Attached Files:

  9. Slingerbult

    Slingerbult Casual Client Content Creator

    Joined:
    Sep 15, 2012
    Messages:
    375
    Likes Received:
    50
    Nice work! I made something in the same vein, but focusing more on realistic and automated cock sucking behaviour, than emotional response and thoughts/speech. In fact, I made it completely silent in that regard - it's all sound effects, hand position changes and that sort of thing. I called it SilentAutomata - attached for your convenience.

    It's basically a looping cock sucking fest. If you like it, I might elaborate and add some position changing, maybe even slaps and stuff. Feel free to steel anything you like and incorporate it into your smart girl!
     

    Attached Files:

  10. Macnagum

    Macnagum Vivacious Visitor

    Joined:
    Jan 17, 2015
    Messages:
    48
    Likes Received:
    5
    Tested and... I like a lot :D ! Succeed in a few lines to make a script both automated and credible is surprising. Until now I thought the auto modes too random for use in a gameplay, therefore bravo ! The absence of dialogue is rather a plus : all speeches is a risk that the player tkinks "I would not say that" or "I do not like what it says" and thereby loses its identification with the characters. In this regard many sentences "bad porn" of Smart Girl will jump in the next release.

    So it's very inspiring, especially in terms of gameplay. In Smart Girl the player is always in control of the situation, but it is more by default - the game favors this approach - than by choice. Integrating automatic moments where the girl takes the initiative would be much more realistic ; it remains to see if this is possible and if this system is fun to play... For that I do not know when. In any case, if you want to elaborate this script I would follow it.
     
  11. aztlan

    aztlan Swell Supporter

    Joined:
    Sep 14, 2013
    Messages:
    507
    Likes Received:
    15
    I disagree. I much prefer to have dialog. It's not so much whether I would say it or not, but rather so I understand what the characters are thinking, feeling and why they are acting the way they are. Without that insight it all just very mechanical and quickly becomes boring. (Well sort of.)

    I see dialogs without text as skeletons which drive the game, but then fleshing it out with text makes it interesting.
     
  12. Macnagum

    Macnagum Vivacious Visitor

    Joined:
    Jan 17, 2015
    Messages:
    48
    Likes Received:
    5
    All the dialogues are not going away, just the bad as "You came so hard in my mouth. . ." or "I feel you so deep in my throat. . ." The good will be kept, and I would add probably others : as you say dialogues are needed to know what the girl thinks and feels and Smart Girl plays on this field. However the compliments of the guy (or insults, to come) will expressed indirectly.

    More important, in the current version of Smart Girl the girl reacts to every action performed, which is not very credible. It is more natural to have some moments of silence, especially when there is no discomfort. A variable "talkative/classic/quiet" would satisfy every tastes.
     
  13. Slingerbult

    Slingerbult Casual Client Content Creator

    Joined:
    Sep 15, 2012
    Messages:
    375
    Likes Received:
    50
    Glad you liked it! The idea occured to me when I remembered how much I enjoyed playing games like Ico and Shadow of the Colossus - speechless games where the character's behavior and mannerisms speak for themselves.

    If realism is the order of the day, the truth of the matter is that sex... isn't that wordy. Even in the exaggerated world of porn, you'd hardly hear a female actress say 10% of the lines usually blurted out by SDT figures. Don't get me wrong, dirty talk is a big turn on for me, but it often just gets over the top in SDT. For realism, I'd try to limit actual spoken lines to intro, position changing and cumming/restarting events. The rest should mostly be oohs and aahs ;) And maybe a few thought lines on being held down etc.

    I'm gonna try out Fleak's dynamic gf next. I reckon something big could be concocted if all these "virtual girls" got combined. I even spoke to modguy about integrating a text based interface (like a sex chat bot with SDT visual and audio support) and he sent me a PM that I didn't really understand but basically, it seemed doable. So the potential of SDT is FAR from tapped, gentlemen.
     
  14. aztlan

    aztlan Swell Supporter

    Joined:
    Sep 14, 2013
    Messages:
    507
    Likes Received:
    15
    Definitely true - but interesting and entertaining is more important than realism here... 8)

    Still, don't take me as saying less verbal dialogs are wrong, just not quite my taste...
     
  15. jase

    jase Avid Affiliate

    Joined:
    Jun 4, 2014
    Messages:
    120
    Likes Received:
    9
    Not very expressive. Often contradictory. There seems to be no way to improve mood other than cheating; she doesn't like it fast, she doesn't like it slow, she bitches about so much that it leads me to ask "Why would you even offer a blowjob is you're going to be such an unpleasant cunt about it?"

    You should look at CGma_DynamicGF. It's not smart AI, but it gives the illusion of it very well, purely through characterization.
     
  16. Macnagum

    Macnagum Vivacious Visitor

    Joined:
    Jan 17, 2015
    Messages:
    48
    Likes Received:
    5
    Hm... this portrait is not so unrealistic ::)

    Well, it is difficult to get out the girl of a angry mood, especially if she does not have submissive character. The best way is to vary the "sweet" movements (waiting, pulled_up, pull_off) to make her feel confident, reach the happy mood and starts masturbating. You can go harder or continue to take it easy until she cum : then she takes all without flinching for a moment.

    In fact I found it rather unconvincing. Apparently there are only two variables taken into account (mood and held), so the chance leads the game and causes strange events. For example after three movements I had "Your girlfriend is tired", or on the first action "Your girlfriend is worried". However some reactions/emotions are well rendered (positions of the arms, facial expression, sounds...) and there is a lot of dialogue, well written and exactly the kind I search - thanks.

    Having said that I am the first to see the flaws of Smart Girl, but it's still a draft and the next version already fixes many things. Here the ideal would be to have both a gameplay credible and entertaining ; for that I believe in simple and effective stuff and much prefer a short script and chosen dialogues.
     
  17. jase

    jase Avid Affiliate

    Joined:
    Jun 4, 2014
    Messages:
    120
    Likes Received:
    9
    Well, to a point. Women aren't so mysterious that you can't figure out with enough experience what pushes their buttons and scratches their itches. Like the CGma dialog, her hangups and turn-ons only seem arbitrary and confusing at first, but after you figure them out, you know how to get pleasant or bitchy responses. It's still random whether she'll react positively or negatively to many things, but you can figure out which actions are guaranteed to make her happy or displeased. Pissing her off isn't a game-breaker, it just changes the game, so you have the option to troll her for a grudge fuck, or for the inevitably intense make-up sex. Dynfunctional, but fun;]

    I like how you're experimenting with the dialog functions here, but without some characterization, the dialog will still have an empty feel, and the end result will just be a technical demo. That's not necessarily a bad thing, as I think it'll make a good example for other dialog writers to emulate.
     
  18. Macnagum

    Macnagum Vivacious Visitor

    Joined:
    Jan 17, 2015
    Messages:
    48
    Likes Received:
    5
    We can discuss the behavior of women in general but there is an easier way to know if the CGma's girl is credible : look at her code. Then we can see that the majority of her reactions are chosen randomly (or almost - only two variables taken into account) and the only exceptions are for pulled up (handjob) and pulled down (release). No reason or desire here, just chance. So it is possible to obtain credible scenes, but more often weird.

    If the characterization means writing dialogue according to the personality of the speaker, so CGma dialog is successful. But in a game, writing many and fair dialogues is not enough to give the impression of a plausible character. What is missing here is the context, how the girl reacts to what, and it requires a minimum of script. Big script ? I don't think.
     
  19. Tube33950

    Tube33950 Potential Patron

    Joined:
    Jun 5, 2014
    Messages:
    43
    Likes Received:
    0
    Good evening,

    first, congrats for the IA coding performance. Id' like to know how to use it to make a great dialogue but I'm not good enought at it. I mean... understanding coding...

    Regarding your opinion concerning the need of a decent script, i desagree.
    To me, the big part of characterization requiers a good work on the script. The way the character express his self is determinant to identify his personality and it makes sense quickly. To me, a good dialogue is a dialogue that you come into instantly. The first interactions and the context are determinant. Like this, a good and plausible dialogue car born with a very few variables. The chars are just to be charismatic enought to get the scene plausible. I guess it is also possible to avoid some contradictory sentences by using a quite simple progression system in part based on moods and some easy tips . If the context of the scene is close, despite the random part of the sentences, I am convinced that we can obtain a very plausible, interesting, funny and arrousing dialogue. Especially for short or medium scenes.

    Great job anyway, i'am curious to see what you or some other writters will be able to do with your coding ;)
     
  20. Macnagum

    Macnagum Vivacious Visitor

    Joined:
    Jan 17, 2015
    Messages:
    48
    Likes Received:
    5
    I also know nothing about coding :P

    If you want to write a dialogue with this script, is as simple as for a classic dialogue : only linetypes change. There is no "pull_up" or "vigorous" but "compliment" or "rough", so just write dialogues corresponding to these linetypes-situations (throat_1 is a throat with mood angry, throat_2 normal and throat_3 happy). However these situations are not ideal, and I think the next version will offer more natural (as "ask_rough_more" or "listen_me").

    What you say about the characterization joins enough Jase and aztlan, but I think you give too much importance to this point. A dialogue is a story, the important thing is that it makes sense. Just a phrase that does not go with the others and the reader no longer believes in it. How to avoid this in SDT where phrases are selected randomly ? We can decrease the random, at the expense of player freedom. We can also try to control the random, which requires a script.

    Simple progression system, few variables and some easy tips : for me it is applying a bike patch on a car wheel. It is better that the girl has a basic idea of the context - breathing, roughness, boredom - to know what to say. This is not really a A.I., or as much as Jar Jar Binks is a good character of Star Wars.

    With or without it, we can write any story and characters, is just a matter of personal taste. Here I prefer generic dialogues rather than specific to allow the player imagine what he wants - and also because it is easier for my level of english...