Tease AI General Discussion

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

sexybastardo
Explorer
Explorer
Posts: 45
Joined: Thu Nov 26, 2015 9:10 pm
Gender: Male
I am a: None of the above
Location: Germany

Re: Tease AI General Discussion

Post by sexybastardo »

avatarbr wrote: Wed Mar 29, 2017 12:48 am I had an idea for better implementation of my "control script"* and I liked to know if this could work the way I think should.

The Control Script is a script with only variables and flags, to check a/o advance the status of the session.

My "improved" idea is to create a single Link file with the control commands and, in the end, use a @CallRandom() in a folder with the real Link files.

each os these files would end with a @Call() back to the Link/Control file, in a line after the commands.

What I dont know is TeaseAI will try to call another link file after that, because the @Call() should call a module, not a link or will continue with the normal route after a @StartStroking? basically, teaseai will know its running a link (because the folder) and continue the circle?

The circle would be like this:

stroke
module
"fake link" (run control commands)
@CallRandom(folder/reallinks)
"Real Link" runs
@Call(stroke/link/fakelink.txt)
stroke

Its a lot of work to edit 62 modules and 30 links files (with 4 teases in each file) to do a blind test.

*The current way I use is to call a interrupt when all the 4 teases inside a module file already ran. The way work now is, you have around 25% to call a module where the control script will be called. But is too much ramdom, and I cant use % with the precision I wanted, because the script can be called 2 times in a row or not be called in a session.
Hey there,
Maybe this will work like you are expecting, TeaseAI is thinking you will run a module with the @Call command. But if you'll use a @StartStroking at the end of each file it could work. Maybe you'll have to try it with some test scripts. Unfortunately it will maybe cause some side effects, because you use a @CallRandom and then a @Call, there are some problems with combining different @Call commands.

I have sth similar running in my personality. It looks like this:

Stroking
1 Module Script "ChooseModule" incl. all needed checks, then runs different Scripts with @CallReturn (in Custom/CallReturn)
1 Link Script "ChooseModule" that does the same for all links.
Stroking
etc

Modules always end with an @End and Links with a @StartStroking, and it works. In this way you have full control of which module/link will be available, depending on your vars/flags. I use only @CallReturn currently, because it's the only reliable function and it works like a charm. Don't combine @Call, @CallReturn or @MiniScript.
There still exist a problem with the @Call function in 54.7 that could break the session when called after a @CallReturn or if you use a @Call/@CallReturn/@MiniScript in a Module before you use @StopStroking. I just figured it out with Daragorn and there will be a fix for some of the problems I mentioned here: viewtopic.php?f=26&t=19545#p231212
I tried to figure out the whole behavior of the combination of all the @Call etc commands. I learned that @CallReturn is the only thing that works perfectly in every case.
Last edited by sexybastardo on Fri Mar 31, 2017 5:22 pm, edited 1 time in total.
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 587
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI General Discussion

Post by Daragorn »

sexybastardo wrote: Thu Mar 30, 2017 8:03 pm Modules always end with an @End and Links with a @StartStroking, and it works. In this way you have full control of which module/link will be available, depending on your vars/flags. I use only @CallReturn currently, because it's the only reliable function and it works like a charm. Don't combine @Call, @CallReturn or @MiniScript.
There still exist a problem with the @Call function in 54.7 that could break the session when called after a @CallReturn or if you use a @Call/@CallReturn/@MiniScript in a Module before you use @StartStroking. I just figured it out with Daragorn and there will be a fix for some of the problems I mentioned here: viewtopic.php?f=26&t=19545#p231212
I tried to figure out the whole behavior of the combination of all the @Call etc commands. I learned that @CallReturn is the only thing that works perfectly in every case.
Just to clarify...currently there is a small bug with @CallReturn() not behaving properly if you use them during a module before giving the @StopStroking command (not @StartStroking as sexybastardo wrote :-D ..probably it was just mystiping from him, but i wanted to clarify this).
So, if you are NOT stroking callreturn works perfectly, if you are in a stroking cycle and callreturn, it works fine too...the only issue right now is if you are in a module/link, you are in a stroking state because you never used the @StopStroking command and you launch a @CallReturn().

P.s: always remember to use @End after the @StartStroking in the link too....not using it might cause problems. A script ALWAYS need to close with an @End

As far as using @CallRandom()-run a link-then @Call() back to the link, i think it should work fine if you give the @StartStroking command....i am not completely sure, though, but i think it should work
I currently have a similar behaviour in my personality, with a "generic" module/link which does its tricks and then @CallRandom() the "real" link or module....i don't use a @Call() back to the "generic" module/link, though.
Without that, it works perfectly for sure....i don't think there should be any issue, though, doing that since basically @CallRandom() and @Call() share similar code, so, if it works with @CallRandom() alone, i don't see why it shouldn't with a @CallRandom() followed by a @Call().

My suggestion, as always, with such complex behaviours is, first of all create some simple test files and try them in a test session...just create a pair of fake modules with 1 line (just to be sure it is reading the files correctly), a pair of fake link done in the same way and try running a session using them (do not try them with just the "run file text" option in the debug panel because it might work differently since, using that, it will NOT start a session and, for example, if you run a module, when it ends, it will send you to an end script instead of a link, since the "session timer" it is 0)
User avatar
avatarbr
Experimentor
Experimentor
Posts: 1239
Joined: Fri Aug 18, 2006 3:33 am
Gender: Male
Sexual Orientation: Straight

Re: Tease AI General Discussion

Post by avatarbr »

sexybastardo wrote: Thu Mar 30, 2017 8:03 pm Stroking
1 Module Script "ChooseModule" incl. all needed checks, then runs different Scripts with @CallReturn (in Custom/CallReturn)
1 Link Script "ChooseModule" that does the same for all links.
Stroking
etc
OK, you use a @CallReturn for every "real module" you want. @CallReturn will ensure TeaseAI dont "get confused". My problem with @CallReturn is I dont want to edit this file everytime I add a new module (I guess you have some ramdom part to call the modules too)

But I just imagined a backup plan, in case TeaseAI go back to Links after the @Call(stroke/link/fakelink.txt) runs.

I will test first if this is needed, but I can create a flag in every link file and put a @Checkflag on the start of the fake link. If the flag exist, will skip all the check part and go direct to the end of the file, deleting the flag.

thanks for the responses.
sexybastardo
Explorer
Explorer
Posts: 45
Joined: Thu Nov 26, 2015 9:10 pm
Gender: Male
I am a: None of the above
Location: Germany

Re: Tease AI General Discussion

Post by sexybastardo »

Daragorn wrote: Thu Mar 30, 2017 8:29 pm (not @StartStroking as sexybastardo wrote :-D ..probably it was just mystiping from him, but i wanted to clarify this).
ups, yes ... that was a mistake.
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 587
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI General Discussion

Post by Daragorn »

avatarbr wrote: Fri Mar 31, 2017 12:55 am OK, you use a @CallReturn for every "real module" you want. @CallReturn will ensure TeaseAI dont "get confused". My problem with @CallReturn is I dont want to edit this file everytime I add a new module (I guess you have some ramdom part to call the modules too)

But I just imagined a backup plan, in case TeaseAI go back to Links after the @Call(stroke/link/fakelink.txt) runs.

I will test first if this is needed, but I can create a flag in every link file and put a @Checkflag on the start of the fake link. If the flag exist, will skip all the check part and go direct to the end of the file, deleting the flag.

thanks for the responses.
Actually it is much easier than that (this is how my personality works too):
-put the real modules/links in a new directory (let's say realMod/realLink)
-put the "do your checks" links/module in the original modules/links folder of your personality
-at the end of this just @CallRandom(realMod) @End (or @CallRandom(realLink) @End)

P.s: if you don't want to choose randomly, then simply use a specific @Call(realMod,nameOfScript.txt) and it will work too

As long as you have a @StartStroking/Taunts command inside the links it will work just fine using @Call/CallRandom with no need to use complex call/callreturn stuff :yes: and move to a strokecycle, then to a module.
If there is no @Startstroking/Taunt inside the called script, then it will move to a new link when it ends
User avatar
avatarbr
Experimentor
Experimentor
Posts: 1239
Joined: Fri Aug 18, 2006 3:33 am
Gender: Male
Sexual Orientation: Straight

Re: Tease AI General Discussion

Post by avatarbr »

Daragorn wrote: Fri Mar 31, 2017 7:37 pm Actually it is much easier than that (this is how my personality works too):
-put the real modules/links in a new directory (let's say realMod/realLink)
-put the "do your checks" links/module in the original modules/links folder of your personality
-at the end of this just @CallRandom(realMod) @End (or @CallRandom(realLink) @End)

P.s: if you don't want to choose randomly, then simply use a specific @Call(realMod,nameOfScript.txt) and it will work too

As long as you have a @StartStroking/Taunts command inside the links it will work just fine using @Call/CallRandom with no need to use complex call/callreturn stuff :yes: and move to a strokecycle, then to a module.
If there is no @Startstroking/Taunt inside the called script, then it will move to a new link when it ends
Oh, cool...that was my concern, if a @StartStroking would be enough to make TeaseAI continue to the stroke part. Will be a lot more easy that way, I just need to move the link files to another folder and create the fake link file.

In this case, could you skip the Links if you use @StartStroking in the end of a module?

Fun fact: in my actual system, I noticed a constant 25% (+/-) of the modules are reseted (just ran the 4th tease inside the file) every session. It's almost reliable to use knowing 1 of 4 cicles will run the check module, but still can have sessions with 0% (and I am getting really annoyed with modules skiping for the "check module")
User avatar
avatarbr
Experimentor
Experimentor
Posts: 1239
Joined: Fri Aug 18, 2006 3:33 am
Gender: Male
Sexual Orientation: Straight

Re: Tease AI Download - Current Build 0.54.7

Post by avatarbr »

Daragorn wrote: Thu Mar 30, 2017 3:19 pm As i said previously, it appears that the always start with random domme has some bug and it is not working.
You either have 2 options:
-wait next version which will hopefully have it fixed
-deselect the option in the menu (to avoid trhoeing errors), open the start script/scripts of your personality and write this as the first line in each script:
@NullResponse @RandomTease

This will override the bug and call the random domme "manually" and it will work :yes:
The correct line should be this:
@NullResponse @SetDomme(Random)

This is why I have a file with all commands to copy/past in the scripts. Is so easy to put something wrong. :-D
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 587
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI General Discussion

Post by Daragorn »

avatarbr wrote: Fri Mar 31, 2017 9:49 pm In this case, could you skip the Links if you use @StartStroking in the end of a module?
I think it should work (not sure it won't create issues, though...i don't think it should but....the code is a bit "cryptic" let's say :lol: so, as always, the best advice i can give is do some test session with test modules/link and check if it follow the cycle you want to without problem...if it does then you can implement it for real in your personality.
Fun fact: in my actual system, I noticed a constant 25% (+/-) of the modules are reseted (just ran the 4th tease inside the file) every session. It's almost reliable to use knowing 1 of 4 cicles will run the check module, but still can have sessions with 0% (and I am getting really annoyed with modules skiping for the "check module")
I am not sure i understood what you mean here....if i got it right, you mean that usually 1 every 4 times that you reach the "fake module" part, it will skip it?
Keep in mind that in the "original" link/module folder (the one containing the check scripts) you have to have a normal script, a _CHASTITY script and a _EDGING script to deal with all possible situations.
If you have all three, when you reach a module/link it will surely read one of those and do the checks.
The "real" modules/link, obviously, need to be in separate directories from the one containing the check ones and, in the settings make sure that you have all available scripts checked for your personality (the "real" ones will not be in the list, obviously, since they are not in the "standard" teaseAI directories, but it is not a problem since you will manually call for them...in the settings you just need to have all the "check" modules/links checked and available.....once you have that, unless you made some weird mistake in your scripts, it will always go through the check link/module)
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 587
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI Download - Current Build 0.54.7

Post by Daragorn »

avatarbr wrote: Sat Apr 01, 2017 3:44 am The correct line should be this:
@NullResponse @SetDomme(Random)

This is why I have a file with all commands to copy/past in the scripts. Is so easy to put something wrong. :-D
Actually you can do it both ways :D
My original command were @RandomTease, @DommeTease, GlitterTease1, etc etc...then 1885 (smartly, i have to say) also created the @SetDomme(xx) command which, basically, will internally call my original commands depending on what you have written in the ()....i am still used to my old commands so i still use them that way but, anyway, they are interchangeable :-D
User avatar
avatarbr
Experimentor
Experimentor
Posts: 1239
Joined: Fri Aug 18, 2006 3:33 am
Gender: Male
Sexual Orientation: Straight

Re: Tease AI General Discussion

Post by avatarbr »

Daragorn wrote: Sat Apr 01, 2017 12:21 pm
I am not sure i understood what you mean here....if i got it right, you mean that usually 1 every 4 times that you reach the "fake module" part, it will skip it?
Keep in mind that in the "original" link/module folder (the one containing the check scripts) you have to have a normal script, a _CHASTITY script and a _EDGING script to deal with all possible situations.
If you have all three, when you reach a module/link it will surely read one of those and do the checks.
The "real" modules/link, obviously, need to be in separate directories from the one containing the check ones and, in the settings make sure that you have all available scripts checked for your personality (the "real" ones will not be in the list, obviously, since they are not in the "standard" teaseAI directories, but it is not a problem since you will manually call for them...in the settings you just need to have all the "check" modules/links checked and available.....once you have that, unless you made some weird mistake in your scripts, it will always go through the check link/module)
Well, its hard to explain, but I will try.

If you already open a module file from HoT, you notice there are 4 teases inside. Eveytime this file is called, it will check what of that 4 teases already ran, and will skip that and get 1 ramdom from the others.

When all 4 already ran, will skip the module and just reset the variable controlling this (so, next time can run any of the 4 teases again). It's only in this case the check module will be called.

That is the state I was talkin. If I run a script to show the variables from every module file, 25% of this will be in this state (not run a module and skip to the check module). So, 1 of 4 files should call the check module on a session.

Must have some math explanation for that.
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 587
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI General Discussion

Post by Daragorn »

avatarbr wrote: Sat Apr 01, 2017 9:26 pm Well, its hard to explain, but I will try.

If you already open a module file from HoT, you notice there are 4 teases inside. Eveytime this file is called, it will check what of that 4 teases already ran, and will skip that and get 1 ramdom from the others.

When all 4 already ran, will skip the module and just reset the variable controlling this (so, next time can run any of the 4 teases again). It's only in this case the check module will be called.

That is the state I was talkin. If I run a script to show the variables from every module file, 25% of this will be in this state (not run a module and skip to the check module). So, 1 of 4 files should call the check module on a session.

Must have some math explanation for that.
Ahh ok,..if you talk about the way HoT decides what module to use, i understand now (i thought it was a teaseAI error...but it is not :D).
If you want to always do the checks, then it is pretty easy.
Change this part (the one when it will not call a new script but will go to the interrupt)
(Fim)
@NullResponse @SetVar[AV_ModAud1]=[0]
#1_ST_Tease @Interrupt(AV_Controle)
and change it to
(Fim)
@NullResponse @SetVar[AV_ModAud1]=[0]
#1_ST_Tease @Goto(AV_ModAud1_NotFirstTime)

This way it will reset the variable and then redo the checks and choose a module instead of moving to the interrupt
User avatar
avatarbr
Experimentor
Experimentor
Posts: 1239
Joined: Fri Aug 18, 2006 3:33 am
Gender: Male
Sexual Orientation: Straight

Re: Tease AI General Discussion

Post by avatarbr »

Yes, I will do that if I change the Links.

For now, I still need to run the check module in this situations. But I still dont like when a module is skiped :lol:
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 587
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI General Discussion

Post by Daragorn »

avatarbr wrote: Mon Apr 03, 2017 2:52 am Yes, I will do that if I change the Links.

For now, I still need to run the check module in this situations. But I still dont like when a module is skiped :lol:
but my solution will run them every time....just the last time it runs the check, instead of sending you to an interrupt, it will go back to the selection and start again and choose a module correctly...since that it is the part you don't like i don't see why you are not willing to change it....but maybe i missed something :)
User avatar
avatarbr
Experimentor
Experimentor
Posts: 1239
Joined: Fri Aug 18, 2006 3:33 am
Gender: Male
Sexual Orientation: Straight

Re: Tease AI General Discussion

Post by avatarbr »

Daragorn wrote: Mon Apr 03, 2017 7:55 pm
avatarbr wrote: Mon Apr 03, 2017 2:52 am Yes, I will do that if I change the Links.

For now, I still need to run the check module in this situations. But I still dont like when a module is skiped :lol:
but my solution will run them every time....just the last time it runs the check, instead of sending you to an interrupt, it will go back to the selection and start again and choose a module correctly...since that it is the part you don't like i don't see why you are not willing to change it....but maybe i missed something :)
But I still need to run the AV_Controle (the check module).

And, of course, after all that discussion, I finaly realised I could have used the @CallReturn(AV_Controle) instead of the @Interrupt with your idea to "re-run" the module.

In my defense, I think we did not have the @CallRetun command when I created that system.
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 587
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI General Discussion

Post by Daragorn »

avatarbr wrote: Tue Apr 04, 2017 2:56 am But I still need to run the AV_Controle (the check module).

And, of course, after all that discussion, I finaly realised I could have used the @CallReturn(AV_Controle) instead of the @Interrupt with your idea to "re-run" the module.

In my defense, I think we did not have the @CallRetun command when I created that system.
Ahh ok the AV_Controle is the check module? i thought that for "check" module you meant the basic one doing the checks to decide which "real" module to run, that's why i didn't understand your concerns :-)
Then, yes, definitely use a @CallReturn() to it followed by a @Goto() to the module selection
Post Reply