Tease Ai scripting: The HELP CORNER

Webteases are great, but what if you're in the mood for a slightly more immersive experience? Chat about Tease AI and other offline tease software.

Moderator: 1885

User avatar
dix
Experimentor
Experimentor
Posts: 3776
Joined: Sun Aug 10, 2008 4:49 pm
Gender: Male
Sexual Orientation: Straight
I am a: None of the above
Location: North-West England

Re: Tease Ai scripting: The HELP CORNER

Post by dix »

markus wrote: Thu Dec 29, 2022 12:49 pm
dix wrote: Wed Dec 28, 2022 9:48 pm Quick question - Is there a way to test scripts that you've edited without loading up the personality and forcing it to use that script?

Thanks for any help.
Hi!

About the loaded personality, in Awakening you must have a personality selected, so that the program knows where to look for flags, variabels and vocabs, not sure how that is handled in the original Tai.

For both:
Debug-Menu -> Run Script

Best greetings,
Markus
Ah, I thought that may be the case.

Thanks for confirming though. :-)
User avatar
markus
Explorer At Heart
Explorer At Heart
Posts: 656
Joined: Tue Nov 18, 2008 11:09 pm

Re: Tease Ai scripting: The HELP CORNER

Post by markus »

I've got the feeling we are hijacking the Miss Blue Thread a little too much, so I continue in here...
TanyaHumble wrote: Sun Jun 18, 2023 11:57 am and that it would be as independent from engine as possible. Maybe it's a silly idea with the way superior version in the works.
I don't understand that part of your post, sorry, ... so I can only guess (And PLEASE correct me if I'm guessing wrong!), ...
So, as long as you don't use the new commands from Awakening, it doesn't matter if you play/test/modify a script in a installation of the original Tai or Awakening, you can move the script files back and forth, they are simple text-files anyway.


a test-installation

At the moment I just fix the bugs as I encounter them. I've tried going file by file but it gets really hard for me and I loose focus. My process is , do session -> encounter bug -> depending what bug I either paus the program and look at the script or make a mental note of it. And at the end of the session I read though the log and try to understrand how certain events came to be, look through the moduls and scripts that where used , check if any of them needs any cleaning/bug fixing and then I'm done.
Oh, how much I hear you!
I was there, did kinda the same!
At the moment I just fix the bugs as I encounter them.
This is basically how I work on new scripts, ... I encounter the old version of them, I make notes (or simply a screenshot with the script displayed (CTRL+F11)), and the next day I start to rework/rewrite/correct/rephrase/enlarge/shorten them.
The pro on this is, since you have really played that specific script, you have a much better feeling of what you like to have changed, ... that 'feeling' of that script is 'fresh' in your mind, ... if you 'just' read it while not really playing it isn't enough (for me), you get much better ideas and such if it's played and not only read.
I've tried going file by file but it gets really hard for me and I loose focus.
Exactly!
Have it played -> have a feeling for it!

My process is , do session -> encounter bug -> depending what bug I either paus the program and look at the script or make a mental note of it.
I try to not get too distracted WHILE a session is running.
As I said, I make screenshots, those work as a 'mental note' when I look them up the next day, I don't look up scripts while a session is running.

Oh, ... btw.:
If you hunting down just typos in a script, a simple / small change, you can do this in Awakening 'On-The-Fly', you must have pause activated! (!!!) and then hit CTRL+F11, click on the line you want to change, change it, hit return (!!!) , ... and when you close the program (after the session is done) a window pops up and let you save/reedit such changes you did 'On-The-Fly', ... for small changes like typos and such, this feature can safe you a lot of time!


I'm slowly learning and it will take some time. The heat will 100% slow down my work as it slowly erodes my sleep , kills my mood and destroys me as a human being. So expect to hear less from me over the summer.
Work in the pace you are most comfortable with, make pauses, make sure you don't get a Tai-'burn-out', enjoy the summer, ... I don't 'expect' anything, ... if it ever starts to feel like 'work' then just stop it, ... the best results are done by people who really enjoy what they are doing!
( I do the same, I don't make any pressure on myself, ... I work on it when I have the time for it and when I'm in the mood for it! )



TanyaHumble wrote: Mon Jun 19, 2023 11:38 am I was running MB on the open beta version and I remember it having some problem with certain variable lines. Later switched to Fury due to another bug and the variable problem seems solved so my guess is that is somehow engine related?
A while ago I did some testing about this, this is from the Awakening Release Notes:
@SetVarString[]
-> I.e.:
@NullResponse @SetVar[Strokes]=[#Random(10,30)]
@NullResponse @SetVar[Speed]=[#Random(60,100)]
@NullResponse @SetVar[Timer]=[Strokes]

The problem is this line:
@NullResponse @SetVar[Timer]=[Strokes]

Correct would be:
@NullResponse @SetVar[Timer]=[#Var[Strokes]]

This line is from the original Tai command guide:
"You can also set string Variables this way, such as @SetVar[MyString]=[lasagna]"

Now different versions of Tai give different results, ... when we take the example from the guide '@SetVar[MyString]=[lasagna]'
In the before-Fury-original-Tai-versions the value of the variable is: '0' (if the variable 'lasagna' doesn't exist)... so it didn't worked as it was explained in the guide, but that way it's used by some personalities.
Also it's impossible to assign a string to a variable with @SetVar[], it ONLY reads it's value if it's exist.

But in Fury, the value of the variable is: 'lasagna' ---> like described in the guide.

That means, using different versions of Tai leads to different results, ... which could lead to incompatibility.

I've thought a while about it and implemented this compromise to be as much compatible as possible to existing scripts/personalities AND to be able to assign a string to a variable:
Let's say the variable 'Strokes' exists, THEN @SetVar will read it's value, if the variable does not exists, the value would be the given string.

The downside of this compromise is that if you would want to assign at another place of the personality the word 'Strokes' to any other variable, it would not be possible since the variable 'Strokes' exists and the value of it would be taken instead the word 'Strokes'. (This is only for @SetVar, @InputVar would work).
To bypass this problem I've added the command @SetVarString[], so even if the variable 'Strokes' exists, with @SetVarString[Whatever]=[Strokes] would work.


Best greetings,
Markus
TanyaHumble
Explorer
Explorer
Posts: 89
Joined: Fri Dec 10, 2021 9:09 pm
Gender: Male
Sexual Orientation: Straight
I am a: Switch
Contact:

Re: Tease Ai scripting: The HELP CORNER

Post by TanyaHumble »

markus wrote: Mon Jun 19, 2023 6:59 pm
I don't understand that part of your post, sorry, ... so I can only guess (And PLEASE correct me if I'm guessing wrong!), ...
So, as long as you don't use the new commands from Awakening, it doesn't matter if you play/test/modify a script in a installation of the original Tai or Awakening, you can move the script files back and forth, they are simple text-files anyway.
Just talking about an issue that is engine related. If I was running Awakening I would encounter less bugs or to be specific bugs related to that version. So the idea was to have the personality work on Sweet Patch/Fury/Awakening but it's just a dream of mine. :\'-( Yes once I'm done with MB on Fury I would switch to a different engine and work from there , was the plan anyways.
This is basically how I work on new scripts, ... I encounter the old version of them, I make notes (or simply a screenshot with the script displayed (CTRL+F11)), and the next day I start to rework/rewrite/correct/rephrase/enlarge/shorten them.
The pro on this is, since you have really played that specific script, you have a much better feeling of what you like to have changed, ... that 'feeling' of that script is 'fresh' in your mind, ... if you 'just' read it while not really playing it isn't enough (for me), you get much better ideas and such if it's played and not only read.
hm I might "borrow" the screenshot idea from you :whistle:
Oh, ... btw.:
If you hunting down just typos in a script, a simple / small change, you can do this in Awakening 'On-The-Fly', you must have pause activated! (!!!) and then hit CTRL+F11, click on the line you want to change, change it, hit return (!!!) , ... and when you close the program (after the session is done) a window pops up and let you save/reedit such changes you did 'On-The-Fly', ... for small changes like typos and such, this feature can safe you a lot of time!
wat... that sounds so good that it would be a crime not to use it!
Work in the pace you are most comfortable with, make pauses, make sure you don't get a Tai-'burn-out', enjoy the summer, ... I don't 'expect' anything, ... if it ever starts to feel like 'work' then just stop it, ... the best results are done by people who really enjoy what they are doing!
( I do the same, I don't make any pressure on myself, ... I work on it when I have the time for it and when I'm in the mood for it! )
Well, I know people doesn't expect anything from me. Poor wording from my part. But thank you for the sound advice. :love: I DO really love TAI and all it's versions and the scripts/personalities that come with it.
@SetVarString[]
-> I.e.:
@NullResponse @SetVar[Strokes]=[#Random(10,30)]
@NullResponse @SetVar[Speed]=[#Random(60,100)]
@NullResponse @SetVar[Timer]=[Strokes]

The problem is this line:
@NullResponse @SetVar[Timer]=[Strokes]

Correct would be:
@NullResponse @SetVar[Timer]=[#Var[Strokes]]

This line is from the original Tai command guide:
"You can also set string Variables this way, such as @SetVar[MyString]=[lasagna]"

Now different versions of Tai give different results, ... when we take the example from the guide '@SetVar[MyString]=[lasagna]'
In the before-Fury-original-Tai-versions the value of the variable is: '0' (if the variable 'lasagna' doesn't exist)... so it didn't worked as it was explained in the guide, but that way it's used by some personalities.
Also it's impossible to assign a string to a variable with @SetVar[], it ONLY reads it's value if it's exist.

But in Fury, the value of the variable is: 'lasagna' ---> like described in the guide.

That means, using different versions of Tai leads to different results, ... which could lead to incompatibility.

I've thought a while about it and implemented this compromise to be as much compatible as possible to existing scripts/personalities AND to be able to assign a string to a variable:
Let's say the variable 'Strokes' exists, THEN @SetVar will read it's value, if the variable does not exists, the value would be the given string.

The downside of this compromise is that if you would want to assign at another place of the personality the word 'Strokes' to any other variable, it would not be possible since the variable 'Strokes' exists and the value of it would be taken instead the word 'Strokes'. (This is only for @SetVar, @InputVar would work).
To bypass this problem I've added the command @SetVarString[], so even if the variable 'Strokes' exists, with @SetVarString[Whatever]=[Strokes] would work.
ok I read the last part 3 times and I vaguely understand it...

Ok since we are in the help corner I have a question, Does it matter if I say run a script from the debug menu or is it better to run said script by starting TAI? i.e having a diet startup script run the script you want.

I had a few more questions but I forgot... I really need to start writing down all my ideas and questions. oh well, you'll hear from me when I do remember them :yes:

Thank you for your patience and understanding!
User avatar
markus
Explorer At Heart
Explorer At Heart
Posts: 656
Joined: Tue Nov 18, 2008 11:09 pm

Re: Tease Ai scripting: The HELP CORNER

Post by markus »

TanyaHumble wrote: Tue Jun 20, 2023 10:02 am If I was running Awakening I would encounter less bugs
Ehm, ... yepp, that was the idea, new/rewritten Tai -> less bugs. :-D

ok I read the last part 3 times and I vaguely understand it...
If it becomes necessary, I could try to write a demo-script for that (if I find the time for that), ... in the meantime, just test around, set those variables and print the values of it:

@NullResponse @SetVar[MyString]=[lasagna]
MyString: #Var[MyString]

---> Test this with the sweet-patch and with Fury and you'll see the difference.

(Sorry, today, short on time, short answers)
Ok since we are in the help corner I have a question, Does it matter if I say run a script from the debug menu or is it better to run said script by starting TAI? i.e having a diet startup script run the script you want.
Personally I put everything I wanna test in my start script and just start Tai instead of using the debug menu, in theory, both ways should be the same.

Best greetings,
Markus
TanyaHumble
Explorer
Explorer
Posts: 89
Joined: Fri Dec 10, 2021 9:09 pm
Gender: Male
Sexual Orientation: Straight
I am a: Switch
Contact:

Re: Tease Ai scripting: The HELP CORNER

Post by TanyaHumble »

I've started to "mod" my MB installation and started using triggers that uses Dom mood during the taunts and a thought occurred to me.

1. I have no reliable way to improve the mood. But that is less of an issue atm.

2.I would like to have some sort of safe guard against a bad mood streak. And I am not sure how to do it. My thinking is some counter that checks if her mood is below 3 and if after 3 days at the end still rolls low it set's the mood to an average 5 ( I use 1-10 for mood ) She can be mad/pissed but after a few days it always settles down so to speak.

Any help is appreciated :wave:
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 559
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease Ai scripting: The HELP CORNER

Post by Daragorn »

TanyaHumble wrote: Thu Jan 04, 2024 10:07 am 1. I have no reliable way to improve the mood. But that is less of an issue atm.
In old TAI there were the commands @MoodUp and @MoodDown to raise/lower the mood by 1 point (and also other to set her to specific values (@MoodBest, @MoodWorst, for example, if i remember correctly, and maybe there were few more, don't remember all)
There are also @ApathyLevelUp and @ApathyLevelDown for apathy; i think they are present and working also in Awakening, not 100% sure, though.
2.I would like to have some sort of safe guard against a bad mood streak. And I am not sure how to do it. My thinking is some counter that checks if her mood is below 3 and if after 3 days at the end still rolls low it set's the mood to an average 5 ( I use 1-10 for mood ) She can be mad/pissed but after a few days it always settles down so to speak.
You could put some check in the startscript and endscript:
endscript: trigger a flag/variable if she is under a certain mood. Something like:
@BadMood @NullResponse @ChangeVar[badmoodDays]=[badmoodDays]+[1]

startscript: check wheter the number of times she ended in badmood was over a certain threshold and eventually change her mood (and reset the variable to 0)
@Variable[badmoodDays]>=[3] @NullResponse @MoodUp (repeat this line as many times as you feel like to rise her mood enough for your tastes)
@Variable[badmoodDays]>=[3] @NullResponse @SetVar[badmoodDays]=[0] (reset the variable to 0 to restart the cycle)
TanyaHumble
Explorer
Explorer
Posts: 89
Joined: Fri Dec 10, 2021 9:09 pm
Gender: Male
Sexual Orientation: Straight
I am a: Switch
Contact:

Re: Tease Ai scripting: The HELP CORNER

Post by TanyaHumble »

Daragorn wrote: Thu Jan 04, 2024 10:59 am
TanyaHumble wrote: Thu Jan 04, 2024 10:07 am 1. I have no reliable way to improve the mood. But that is less of an issue atm.
In old TAI there were the commands @MoodUp and @MoodDown to raise/lower the mood by 1 point (and also other to set her to specific values (@MoodBest, @MoodWorst, for example, if i remember correctly, and maybe there were few more, don't remember all)
There are also @ApathyLevelUp and @ApathyLevelDown for apathy; i think they are present and working also in Awakening, not 100% sure, though.
2.I would like to have some sort of safe guard against a bad mood streak. And I am not sure how to do it. My thinking is some counter that checks if her mood is below 3 and if after 3 days at the end still rolls low it set's the mood to an average 5 ( I use 1-10 for mood ) She can be mad/pissed but after a few days it always settles down so to speak.
You could put some check in the startscript and endscript:
endscript: trigger a flag/variable if she is under a certain mood. Something like:
@BadMood @NullResponse @ChangeVar[badmoodDays]=[badmoodDays]+[1]

startscript: check wheter the number of times she ended in badmood was over a certain threshold and eventually change her mood (and reset the variable to 0)
@Variable[badmoodDays]>=[3] @NullResponse @MoodUp (repeat this line as many times as you feel like to rise her mood enough for your tastes)
@Variable[badmoodDays]>=[3] @NullResponse @SetVar[badmoodDays]=[0] (reset the variable to 0 to restart the cycle)
In case of 1 I was thinking more in the lines of adding scripts or calls that gives a chance to raise the mood. But the @ApathyLevelUp command gives me some ideas to play around with!

I'll try to add those lines and see if they work. Thank you!

In a MB3.7 script I saw this line

Code: Select all

@NullResponse @RapidCodeOn @SetMood(#DomMoodMin)
but saw no documentation on it.

Code: Select all

@NullResponse @SetMood(5)
My hope is this will work, else I will resort to your solution.
TanyaHumble
Explorer
Explorer
Posts: 89
Joined: Fri Dec 10, 2021 9:09 pm
Gender: Male
Sexual Orientation: Straight
I am a: Switch
Contact:

Re: Tease Ai scripting: The HELP CORNER

Post by TanyaHumble »

I noticed with your setup it changed the mood on the first run to 5 as the variable was 0 and the @SetMood worked like a charm.

So I think this might work as I want?

If badmooddays are 3 or more ( in case of errors ) set it mood to 5. Or is it sufficient to just have it to "<[3]" I guess the later would just be 4 and up if I understand it correctly.

Code: Select all

@Variable[BadMoodDays]<=[3] @NullResponse @SetMood(5)
@Variable[BadMoodDays]<=[3] @NullResponse @SetVar[BadMoodDays]=[0]
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 559
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease Ai scripting: The HELP CORNER

Post by Daragorn »

TanyaHumble wrote: Thu Jan 04, 2024 5:32 pm I noticed with your setup it changed the mood on the first run to 5 as the variable was 0 and the @SetMood worked like a charm.
ah yes, the first time since you don't have the var it does that...unless you create the var and set it beforehand.
As for the @SetMood[#DomMoodMin] it simply uses a vocab file to decide what value you have, picking randomly from the values inside that vocab, just like when using any other vocab. I am not 100% sure it work in Awakening, though i think it does.
Basically you could use that to decide different flag/variables inside that vocab file, using filters, to determine the mood of the domme.
For example you could put these lines in the #vocab file:
3
@ApathyLevel1 4
@Flag(nameOfaFlag) 5
...
...
etc etc

In this example, considering those 3 lines in the vocab file, you could either start with the domme on a mood of 3 (this will always be used as a possible option since there is no condition specified), a mood of 3 or 4 if her apathy is 1, a mood of 3 or 5 if there is the flag but her apathy is not 1, a mood of 3-4-5 if she is on apathy 1 and there is the flag

So I think this might work as I want?
If badmooddays are 3 or more ( in case of errors ) set it mood to 5. Or is it sufficient to just have it to "<[3]" I guess the later would just be 4 and up if I understand it correctly.

Code: Select all

@Variable[BadMoodDays]<=[3] @NullResponse @SetMood(5)
@Variable[BadMoodDays]<=[3] @NullResponse @SetVar[BadMoodDays]=[0]
Doing that way will mean that you always have a mood of 5 not that you will have a mood of 5 when she has 3+ days ended up badly (you will also have it always on 5 since, first you check if the variable is less than 3, and set the mood to 5 in that case...and then you reset the var to 0, so it will always be <=3 no matter what)
To make so that she "resets" to 5 only after 3+ bad days you have to use >= in both lines; that way, when it is less than 3+ days of badmood, those lines will do nothing and the mood will remain the same, but when it goes to 3+, it will set the mood to 5 and then reset the counter to 0.
TanyaHumble
Explorer
Explorer
Posts: 89
Joined: Fri Dec 10, 2021 9:09 pm
Gender: Male
Sexual Orientation: Straight
I am a: Switch
Contact:

Re: Tease Ai scripting: The HELP CORNER

Post by TanyaHumble »

I'll give it a go. it just feels wrong to me since the variable was 0 to start with it should not have set it to 5, unless the random mood set it to 5 and I over reacted :blush:

restarted and it did work now. Thanks for the help~ :love: :love: :love:
Post Reply

Who is online

Users browsing this forum: No registered users and 57 guests