Page 26 of 31

Re: Tease Ai scripting: The HELP CORNER

Posted: Mon Apr 13, 2020 9:09 am
by mslave1969
I was thinking about changing the boxes to days chastity instead of edges, will give your suggestion a try! Where do I find the place to say how many bronze tokens I have, so I can test?
Many thanks for your help :-D

Re: Tease Ai scripting: The HELP CORNER

Posted: Fri Aug 28, 2020 2:04 am
by fusiontermite
Hello everybody

I have a couple of questions regarding dates in Tease AI and thought it would make sense to have them answered all in one place (maybe others will find it useful too :-) ):
  • (How) can I set a random date?
  • (How) can I change a date?
  • (How) can I set a date that is e.g. 15 minutes before or after a certain date? (which is the same as changing, I know: @ChangeDate[date2]=[date1]-[15 minutes])
  • (How) can I print the system date? (e.g. so that the domme can say "Today is the 15th September")
  • (How) can I access the system date (e.g. so that the domme would know when it's the first of the month; ideally the values would be accessible as variables, so that you could use them, e.g. to calculate or print them ("It's the #DayOfMonth of the month, that means #DayOfMonth days of chastity" + @SetVar[days]=[#DayOfMonth]; I remember seeing "@DayOfMonth" and similar, but don't remember their exact function)
  • (How) can you use variables when setting a date? (e.g. so that you could have a mechanism that determines the number of days in chastity and then sets a date that is 5 days from then; maybe @SetDate(#var) works, I didn't check; this would of course allow random dates)
  • What commands are there in relation to dates?
    - @SetDate
    - @CheckDate
    - @DateDifference (command filter)
Thanks for your help!

:wave:

Re: Tease Ai scripting: The HELP CORNER

Posted: Fri Aug 28, 2020 7:09 pm
by markus
OK, let's see...
fusiontermite wrote: Fri Aug 28, 2020 2:04 am
  • (How) can I set a random date?
@SetDate(YourDateVariableName, #Random(60, 85) seconds)
  • (How) can I change a date?
Simply set it anew:
@SetDate(YourDateVariableName, 10 minutes)
  • (How) can I set a date that is e.g. 15 minutes before or after a certain date? (which is the same as changing, I know: @ChangeDate[date2]=[date1]-[15 minutes])
I didn't even knew there is a @ChangeDate command, i guess it's not really needed.

Let's take a look at the @SetDate -command, if you use it, it will set a date which is the date right now plus the given time span,... so:
@SetDate(YourDateVariableName, 2 days)

Let's say right now is 28.08.2020 20:27:58 ... then that command would save the date 30.08.2020 20:27:58
You can give negative values to set the date before now, i.e.:
@SetDate(YourDateVariableName, -2 days)

Would save it as 26.08.2020 20:27:58
(When you create/set a date, it's saved in the system/variables folder of that personality, open it with a text editor to see how it looks)
  • (How) can I print the system date? (e.g. so that the domme can say "Today is the 15th September")
These commands I've found:
#CurrentTime
#CurrentDay
#CurrentMonth
#CurrentYear
#CurrentDate
#CurrentHour

Just give them a try.

  • (How) can I access the system date (e.g. so that the domme would know when it's the first of the month; ideally the values would be accessible as variables, so that you could use them, e.g. to calculate or print them ("It's the #DayOfMonth of the month, that means #DayOfMonth days of chastity" + @SetVar[days]=[#DayOfMonth]; I remember seeing "@DayOfMonth" and similar, but don't remember their exact function)
I think those commands above could simply used as variables
  • (How) can you use variables when setting a date? (e.g. so that you could have a mechanism that determines the number of days in chastity and then sets a date that is 5 days from then; maybe @SetDate(#var) works, I didn't check; this would of course allow random dates)
@SetDate(marCockcageHours,#Var[marCCHours] hours)

  • What commands are there in relation to dates?
    - @SetDate
    - @CheckDate
    - @DateDifference (command filter)
Well, the #DateDifference (not @DateDifference) could be used like this:
@Variable[#DateDifference(mar_LastOrg,hours)]<[28] @NullResponse @Goto(backNextDay)

So, let's say you want to lock up someone for 2 hours, you would use:
@SetDate(marCockcageHours, 2 hours)

Then you can check if right now has reached that set date
@CheckDate(marCockcageHours,PossibleToUnlock)
... If 2 hours are over, it would jump to (PossibleToUnlock)


Some answers are quite short, but maybe it's all you need to get into the right direction,
just experiment with that.
If you need some more help, just ask again! :-)

Btw.: If you not already use the text-editor 'Notepad++', then you should download and use it,... it has the function to find something inside files,... you can serach for i.e.: '@SetDate(' ... select 'find in files', ... select the script folder of your personality and hit 'find all',... that way you will find every '@SetDate(' commands in the whole persoanlity,... that way you can find quite quickly many examples of how a command is used.
(I use this function really often, it's super-useful).

Best greetings,
Markus

Re: Tease Ai scripting: The HELP CORNER

Posted: Mon Sep 28, 2020 6:39 pm
by fusiontermite
Hey

Thanks a lot for this extensive reply! :-D
markus wrote: Fri Aug 28, 2020 7:09 pm fusiontermite wrote: ↑
Fri Aug 28, 2020 2:04 am

(How) can I set a random date?

@SetDate(YourDateVariableName, #Random(60, 85) seconds)
Thanks!
markus wrote: Fri Aug 28, 2020 7:09 pm (How) can I change a date?

Simply set it anew:
@SetDate(YourDateVariableName, 10 minutes)
What I mean is the ability to change the value of a date variable, so that the new value is based on the current value of the date variable (and not of the current date, which it would be when setting the date anew).

For example, the domme can put the sub in chastity for a certain period of time (random date). When the asks to be unlocked and the date variable is not reached (@CheckDate), the domme would add a couple of hours, i.e. change the value of the date variable. Setting the value anew, wouldn't help here. That's why I wrote, that what would be needed here is something like @ChangeDate[unlockdate]=[unlockdate]+[#Random(2,10) hours] (which to my knowledge doesn't exist). Btw, it's the time with variables: @SetVar for setting the value anew and @ChangeVar for setting the value of the variable based on the existing value of the same or other variable(s).
markus wrote: Fri Aug 28, 2020 7:09 pm (How) can you use variables when setting a date? (e.g. so that you could have a mechanism that determines the number of days in chastity and then sets a date that is 5 days from then; maybe @SetDate(#var) works, I didn't check; this would of course allow random dates)

@SetDate(marCockcageHours,#Var[marCCHours] hours)
Thanks! :-D
markus wrote: Fri Aug 28, 2020 7:09 pm Well, the #DateDifference (not @DateDifference) could be used like this:
@Variable[#DateDifference(mar_LastOrg,hours)]<[28] @NullResponse @Goto(backNextDay)

So, let's say you want to lock up someone for 2 hours, you would use:
@SetDate(marCockcageHours, 2 hours)

Then you can check if right now has reached that set date
@CheckDate(marCockcageHours,PossibleToUnlock)
... If 2 hours are over, it would jump to (PossibleToUnlock)
#DateDifference, right, sorry about that! :lol:

I knew these commands ( :innocent: ), but this is an excellent example of how they work together!
markus wrote: Fri Aug 28, 2020 7:09 pm Some answers are quite short, but maybe it's all you need to get into the right direction,
just experiment with that.
If you need some more help, just ask again!
Thank you!

:wave:

Re: Tease Ai scripting: The HELP CORNER

Posted: Tue Sep 29, 2020 11:00 am
by markus
Hi again!
fusiontermite wrote: Mon Sep 28, 2020 6:39 pm What I mean is the ability to change the value of a date variable, so that the new value is based on the current value of the date variable (and not of the current date, which it would be when setting the date anew).

For example, the domme can put the sub in chastity for a certain period of time (random date). When the asks to be unlocked and the date variable is not reached (@CheckDate), the domme would add a couple of hours, i.e. change the value of the date variable. Setting the value anew, wouldn't help here. That's why I wrote, that what would be needed here is something like @ChangeDate[unlockdate]=[unlockdate]+[#Random(2,10) hours] (which to my knowledge doesn't exist). Btw, it's the time with variables: @SetVar for setting the value anew and @ChangeVar for setting the value of the variable based on the existing value of the same or other variable(s).
Can be done already, all it takes is a little bit math:

Code: Select all


Testing dates...
@NullResponse @SetDate(fusionTest01, 6 hours)
#Var[fusionTest01]

Do you ask me to get unlocked?
[yes] Let's see ... @Goto(SubHasAsked)
[no] ok...
@DifferentAnswer Yes or no?
@End

(SubHasAsked)
@NullResponse @CheckDate(fusionTest01)
@NullResponse @SetVar[tempMinutes]=[#DateDifference(fusionTest01,minutes)]
#Var[tempMinutes] 
Now you have negative minutes, turn them to a possitive value:

@NullResponse @ChangeVar[posMinutes]=[tempMinutes]*[2]
@NullResponse @ChangeVar[tempMinutes]=[tempMinutes]-[posMinutes]

#Var[tempMinutes] And this is the positive value

@NullResponse @ChangeVar[tempMinutes]=[tempMinutes]+[#Random(60,240)]
#Var[tempMinutes]
@NullResponse @SetDate(fusionTest01, #Var[tempMinutes] minutes)
@NullResponse @DeleteVar[tempMinutes]
@NullResponse @DeleteVar[posMinutes]
#Var[fusionTest01]
@End

(fusionTest01)
Ok, unlock...
@End
Best greetings,
Markus

Re: Tease Ai scripting: The HELP CORNER

Posted: Fri Jan 01, 2021 9:07 pm
by fusiontermite
markus wrote: Tue Sep 29, 2020 11:00 am Can be done already, all it takes is a little bit math:
You're right, it can be done. But the amount of work is immense. Just having @ChangeDate[unlockdate]=[unlockdate]+[#Random(2,10) hours] would make things a lot easier (and that is key, because when things are too complicated, people don't use it...).

One of the main restrictions of TAI (and one I really don't understand) is that the start script has to include @StartStroking and the link as well it seems (I tried it with an almost empty link file and it always kept calling the link file until I added the @StartStroking command). @StartStroking should just be a command that plays a metronome and displays taunt lines which CAN be used in EVERY TYPE OF SCRIPT (including modules, called scripts, etc.) but NEVER NEEDS to be used. I really don't see why TAI forces you to have a stroking part after each module. The script writer should be able to decide when and if the sub gets to stroke, so that there could also be a no-stroking session.

:wave:

Re: Tease Ai scripting: The HELP CORNER

Posted: Fri Jan 01, 2021 11:52 pm
by avatarbr
fusiontermite wrote: Fri Jan 01, 2021 9:07 pm One of the main restrictions of TAI (and one I really don't understand) is that the start script has to include @StartStroking and the link as well it seems (I tried it with an almost empty link file and it always kept calling the link file until I added the @StartStroking command). @StartStroking should just be a command that plays a metronome and displays taunt lines which CAN be used in EVERY TYPE OF SCRIPT (including modules, called scripts, etc.) but NEVER NEEDS to be used. I really don't see why TAI forces you to have a stroking part after each module. The script writer should be able to decide when and if the sub gets to stroke, so that there could also be a no-stroking session.

:wave:
I think the idea was really to create that loop format. If you know some od the 1885's webtease, you will recognize the pattern.

But you can skip that, by calling a Module from the Link file. You can even put a @RamdomModule command in all Link files and should fully skip the stroke/taunt part. But I think, sometimes, TAI can be confused a little and do some strange things.

I think one of the alternative versions have a @MetronomeOn command, where you can do what you wanted.

Re: Tease Ai scripting: The HELP CORNER

Posted: Sat Jan 02, 2021 2:46 am
by fusiontermite
Thanks for your reply! :-)
avatarbr wrote: Fri Jan 01, 2021 11:52 pm I think the idea was really to create that loop format. If you know some od the 1885's webtease, you will recognize the pattern.
That could be an explanation. But having the mod-link-mod-link loop cycle wouldn't require to start stroking in between ;-)

The structure I want to have is a completely empty link file and one mod_main file that does everything and is run through again and again until time is up (or the domme decides to end the session, sets a flag and calls end_main). That means that the module file decides about and calls all activities (modules, talk, stroking, etc.).
avatarbr wrote: Fri Jan 01, 2021 11:52 pm But you can skip that, by calling a Module from the Link file. You can even put a @RamdomModule command in all Link files and should fully skip the stroke/taunt part.
If I understand correctly, that means that I can just have 1 link file with "@NullResponse @RapidCodeOn @RandomModule" (never seen this command, only @CallRandom (don't use that one either)), which would then call the 1 mod file, thus in effect skipping the link file? Would be great if that's possible, will try it.
avatarbr wrote: Fri Jan 01, 2021 11:52 pm I think one of the alternative versions have a @MetronomeOn command, where you can do what you wanted.
Yeah, I like that one :-D

Thx again

:wave:

Re: Tease Ai scripting: The HELP CORNER

Posted: Sat Jan 02, 2021 3:46 am
by avatarbr
fusiontermite wrote: Sat Jan 02, 2021 2:46 am
If I understand correctly, that means that I can just have 1 link file with "@NullResponse @RapidCodeOn @RandomModule" (never seen this command, only @CallRandom (don't use that one either)), which would then call the 1 mod file, thus in effect skipping the link file? Would be great if that's possible, will try it.
Yes, if you want to call the same file every time, you can just use the @Call() command, otherside you can use:

@NullResponse @RapidCodeOn
@NullResponse @RandomModule
#StartStroking @StartStroking
@End

I think you still need to put the @StartStroking to avoid errors. But would never run that part.

Re: Tease Ai scripting: The HELP CORNER

Posted: Mon Aug 15, 2022 4:55 pm
by rayray77
Hi,

quick question:

When I call a custom script with @Call(Custom/blablba.txt) in a module, what happens with Tease AI when blabla.txt reaches an @End? Does it go to a link, a module or someplace else?

Is it the same when I do the above action during a link?

:-)

Re: Tease Ai scripting: The HELP CORNER

Posted: Mon Aug 15, 2022 9:10 pm
by avatarbr
rayray77 wrote: Mon Aug 15, 2022 4:55 pm Hi,

quick question:

When I call a custom script with @Call(Custom/blablba.txt) in a module, what happens with Tease AI when blabla.txt reaches an @End? Does it go to a link, a module or someplace else?

Is it the same when I do the above action during a link?

:-)
if i remember correctly, if the custom file called don't have a @StartStroking at the end, TAI will consider as a Module, and go to a Link after that.


I am really not sure, but a Link would call a file and then go back to another Link again. But I remember getting crazy with some of the jumps at some time. :lol:


If you want full control, use @CallReturn.

Re: Tease Ai scripting: The HELP CORNER

Posted: Sat Aug 20, 2022 12:42 pm
by Hermes888
Hi everyone,

I have some trouble copying a string from one var to another var. I understand it should be possible in Fury. I am running fury Patch 59.0.

So I suspect I am messing up somewhere.

in the next example, I try to copy the content from the variable "TestingLasagna" to the variable "food" using this test script:

Code: Select all

First input testinglasagna Variable @InputVar[TestingLasagna]
Then we show the variable: @ShowVar[testingLasagna]
Now, lets copy the testingLasagna string into the new var called food @SetVar[food]=[testingLasagna]
Now lets show VAR testingLasagna @ShowVar[testingLasagna] en VAR food @ShowVar[food]
I inserted "Coffee"and this was the result:
02:26 PM Eline: First input testinglasagna Variable This icon means your Domme will remember your answer!
02:27 PM Jeff: Coffee
02:27 PM Eline: Then we show the variable: Coffee
02:27 PM Eline: Now, lets copy the testingLasagna string into the new var called food
02:27 PM Eline: Now lets show VAR testingLasagna Coffee en VAR food testingLasagna

So food does not show the content of the variable "testingLasagna" but the name of the variable. Can anyone tell me what I am doing wrong or how i can get the content from one (user inputted) string to another?

Re: Tease Ai scripting: The HELP CORNER

Posted: Sat Aug 20, 2022 12:53 pm
by rayray77
Hermes888 wrote: Sat Aug 20, 2022 12:42 pm So food does not show the content of the variable "testingLasagna" but the name of the variable. Can anyone tell me what I am doing wrong or how i can get the content from one (user inputted) string to another?
My guess:
In line 3 >> @SetVar[food]=Var[testingLasagna] <<

Re: Tease Ai scripting: The HELP CORNER

Posted: Sat Aug 20, 2022 7:01 pm
by Hermes888
PtheV wrote: Sat Aug 20, 2022 1:29 pm
rayray77 wrote: Sat Aug 20, 2022 12:53 pm
Hermes888 wrote: Sat Aug 20, 2022 12:42 pm So food does not show the content of the variable "testingLasagna" but the name of the variable. Can anyone tell me what I am doing wrong or how i can get the content from one (user inputted) string to another?
My guess:
In line 3 >> @SetVar[food]=Var[testingLasagna] <<
I think it should be @SetVar[food]=[#Var[testingLasagna]]
Thanks PtheV, that worked great. :yes:

Re: Tease Ai scripting: The HELP CORNER

Posted: Sun Aug 28, 2022 9:41 am
by rayray77
Can you use commands inside a @RT?

For example: @RT(bla @Wait(10), blabla @Wait(15), blablabla @Wait(20)) :-)

My guess is no, since it only outputs a random text... But I wanna make sure