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
avatarbr
Experimentor
Experimentor
Posts: 1239
Joined: Fri Aug 18, 2006 3:33 am
Gender: Male
Sexual Orientation: Straight

Re: Tease Ai scripting: The HELP CORNER

Post by avatarbr »

SensEx wrote:Ok guys, I'm diving deep into TeaseAI and for me
@MiniScript
and
@CustomTask

Look the same
-they both need add files to be in Custom/..
-they can have pretty much every @commands inside their respective files

The only difference I see is CustomTask calls a routine like CBT. So you don't need to do scripting just put lines in there but we are most likely to use @RandomText and other sexy commands like these anyway..
Wich brings to... Coudn't this be recreated with @MiniScript and the help of existing commands to make variants of it while being more polished at the end as opposed to use CustomTask?

Sorry If what I say sounds absurd to you :p
Like you said, @CustomTask works like @CBT. Will call 1 ramdom line at time, wait for a user response and maybe call another ramdom line. There are no linear script there. If called when stroking/edging, will stop that.

@MiniScript its like a linear script, but did not interrupt the current state (if you are stroking, will keep stroking), and goes back for the same place when finished.
SensEx
Explorer
Explorer
Posts: 43
Joined: Fri Feb 26, 2016 2:08 pm
Gender: Male
Sexual Orientation: Straight
I am a: Dom (Male)
Dom/me(s): I only submit to my queen
Sub/Slave(s): I no longer take applications

Re: Tease Ai scripting: The HELP CORNER

Post by SensEx »

avatarbr wrote: @CustomTask, If called when stroking/edging, will stop that.
Okay! I wasn't aware that this command also Interrupts things
Thanks!
richman2
Explorer At Heart
Explorer At Heart
Posts: 119
Joined: Fri Mar 07, 2008 7:00 pm

Re: Tease Ai scripting: The HELP CORNER

Post by richman2 »

Hey there!
maybe a stupid question, but anyway: I like wicked tease personality as well as house of tease personality both very much. Is it possible to mix up the modules/ links and ends (not the start script) without any knowledge of scripting/ actually knowing what I'm doing despite copying the files? Or do I mess up the whole idea by combining scripts?
User avatar
genome231
Explorer At Heart
Explorer At Heart
Posts: 738
Joined: Wed Nov 12, 2014 8:35 am

Re: Tease Ai scripting: The HELP CORNER

Post by genome231 »

Hey guys!

Just finished the outline of a so far (Very long module)
Well! Basicly I've spent too much time looking at the lines.
If you feel like it, try the script!
If you happen to see a bug, PLEASE let me know xD I expect a few to be hiding!!

Code: Select all

#GNMStopStroking @StopStroking 
EdgeATon time!  @CheckFlag(EdgeATonIntro)
And it seems like you're a rookie to the concept! @SetFlag(EdgeATonIntro)
So you are allowed to be a little confused right now #GNMEmoteHappy @SetVar[EdgeATonLevel]=[1]
The edge a ton is proud tradition for slaves
A few times a year slaves gather and compete with edging.
There are competitions about who can do the most,
Who can do them the fastest etc.
I think you get the point..
Well I wanna train you for your first competition!
And that would HalfATon
A HalfATon is comprised of 21 edges #GNMMoan 
Well we're gonna start you off easy with just 10 edges :) 
Lets us not delay! @SetVar[EdgeATonCounter]=[10]
(PracticeHalf)
#GNMEdge @Edge
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(PracticeHalf)
(EdgeATonIntro)
Now remember!
If you at any point lose control and go over the edge..
Ruin it and just tell me "I ruined" @RuinedMode(Goto, Ruined)
If you at any point cant handle a single edge anymore
Just tell me "no more" @NoMode(Goto, NoMore)
Now lets see whats on todays @schedule
@NullResponse @If[EdgeATonLevel]>=[100]Then(Legendary1000)
@NullResponse @If[EdgeATonLevel]>=[70]Then(Epic500)
@NullResponse @If[EdgeATonLevel]>=[45]Then(Migthy100)
@NullResponse @If[EdgeATonLevel]>=[20]Then(EdgeATon)
@NullResponse @If[EdgeATonLevel]>=[1]Then(HalfAton)
(DecidePractice)
@NullResponse @If[EdgeATonLevel]>=[70]Then(Practice1000)
@NullResponse @If[EdgeATonLevel]>=[45]Then(Practice500)
@NullResponse @If[EdgeATonLevel]>=[20]Then(Practice100)
@NullResponse @If[EdgeATonLevel]>=[1]Then(PracticeFull)
(PracticeFull)
@NullResponse @Chance10(PracticeBrutal) @SetVar[EdgeATonCounter]=[#Random(5, 15)]
Its gonna be a fun practice today #PetName!
(PF)
@NullResponse @Goto(EdgeNoHoldA,EdgeHoldA,EdgeLongHoldA,EdgeExtremeHoldA)
(EdgeNoHoldA)
#GNMEdge @EdgeNoHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(PF)
(EdgeHoldA)
#GNMEdge @EdgeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(PF)
(EdgeLongHoldA)
#GNMEdge @Edge @LongHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(PF)
(EdgeExtremeHoldA)
#GNMEdge @Edge @ExtremeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(PF)
(Practice100)
@NullResponse @Chance25(PracticeBrutal) @SetVar[EdgeATonCounter]=[#Random(10, 20)]
Its gonna be a Solid practice today #PetName!
(P100)
@NullResponse @Goto(EdgeNoHoldB,EdgeHoldB,EdgeLongHoldB,EdgeExtremeHoldB)
(EdgeNoHoldB)
#GNMEdge @EdgeNoHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P100)
(EdgeHoldB)
#GNMEdge @EdgeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P100)
(EdgeLongHoldB)
#GNMEdge @Edge @LongHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P100)
(EdgeExtremeHoldB)
#GNMEdge @Edge @ExtremeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P100)
(Practice500)
@NullResponse @Chance45(PracticeBrutal) @SetVar[EdgeATonCounter]=[#Random(15, 25)]
Its gonna be a hard practice today #PetName!
(P500)
@NullResponse @Goto(EdgeNoHoldC,EdgeHoldC,EdgeLongHoldC,EdgeExtremeHoldC)
(EdgeNoHoldC)
#GNMEdge @EdgeNoHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P500)
(EdgeHoldC)
#GNMEdge @EdgeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P500)
(EdgeLongHoldC)
#GNMEdge @Edge @LongHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P500)
(EdgeExtremeHoldC)
#GNMEdge @Edge @ExtremeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P500)
(Practice1000)
@NullResponse @Chance70(PracticeBrutal) @SetVar[EdgeATonCounter]=[#Random(20, 30)]
Its gonna be a hard practice today #PetName!
(P1000)
@NullResponse @Goto(EdgeNoHoldD,EdgeHoldD,EdgeLongHoldD,EdgeExtremeHoldD)
(EdgeNoHoldD)
#GNMEdge @EdgeNoHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P1000)
(EdgeHoldD)
#GNMEdge @EdgeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P1000)
(EdgeLongHoldD)
#GNMEdge @Edge @LongHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P1000)
(EdgeExtremeHoldD)
#GNMEdge @Edge @ExtremeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(P1000)
(PracticeBrutal)
Well today #PetName @SetVar[EdgeATonCounter]=[#Random(20, 30)]
Practice will be tough
I need to train you hard!
(BP)
@NullResponse @Goto(EdgeNoHoldE,EdgeHoldE,EdgeLongHoldE,EdgeExtremeHoldE)
(EdgeNoHoldE)
#GNMEdge @EdgeNoHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(BP)
(EdgeHoldE)
#GNMEdge @EdgeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(BP)
(EdgeLongHoldE)
#GNMEdge @Edge @LongHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(BP)
(EdgeExtremeHoldE)
#GNMEdge @Edge @ExtremeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgePractice) @Goto(BP)
(HalfATon)
@NullResponse @CheckFlag(HalfATonComplete)
Today you're doing a HalfATon! @LockImages 
21 hot Edges! @SetVar[EdgeATonCounter]=[20]
(21Edges)
@NullResponse @Goto(EdgeNoHold1,EdgeHold1,EdgeLongHold1,EdgeExtremeHold1)
(EdgeNoHold1)
#GNMEdge @EdgeNoHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgeHalf) @Goto(21Edges)
(EdgeHold1)
#GNMEdge @EdgeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgeHalf) @Goto(21Edges)
(EdgeLongHold1)
#GNMEdge @Edge @LongHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgeHalf) @Goto(21Edges)
(EdgeExtremeHold1)
#GNMEdge @Edge @ExtremeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(FinalEdgeHalf) @Goto(21Edges)
(HalfATonComplete)
Today we're practicing for the full EdgeATon @Goto(DecidePractice)
(EdgeATon)
@NullResponse @CheckFlag(EdgeATonComplete)
Today you're doing a full EdgeATon!! @LockImages
This is soo exciting!
43 hot Edges! @SetVar[EdgeATonCounter]=[42]
(43Edges)
@NullResponse @Goto(EdgeNoHold2,EdgeHold2,EdgeLongHold2,EdgeExtremeHold2)
(EdgeNoHold2)
#GNMEdge @EdgeNoHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(EdgeATonComplete) @Goto(43Edges)
(EdgeHold2)
#GNMEdge @EdgeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(EdgeATonComplete) @Goto(43Edges)
(EdgeLongHold2)
#GNMEdge @Edge @LongHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(EdgeATonComplete) @Goto(43Edges)
(EdgeExtremeHold2)
#GNMEdge @Edge @ExtremeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(EdgeATonComplete) @Goto(43Edges)
(EdgeATonComplete)
Today we're practicing for the migthy 100! @Goto(DecidePractice)
(Migthy100)
@NullResponse @CheckFlag(Migthy100Complete)
Today you're trying out for the migthy 100! @LockImages
I'm so proud that you made is this far #PetName!
100 Sweet Edges! @SetVar[EdgeATonCounter]=[99]
(100Edges)
@NullResponse @Goto(EdgeNoHold3,EdgeHold3,EdgeLongHold3,EdgeExtremeHold3)
(EdgeNoHold3)
#GNMEdge @EdgeNoHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Migthy100Complete) @Goto(100Edges)
(EdgeHold3)
#GNMEdge @EdgeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Migthy100Complete) @Goto(100Edges)
(EdgeLongHold3)
#GNMEdge @Edge @LongHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Migthy100Complete) @Goto(100Edges)
(EdgeExtremeHold3)
#GNMEdge @Edge @ExtremeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Migthy100Complete) @Goto(100Edges)
(Migthy100Complete)
Today we're practicing for the Epic 500!! @Goto(DecidePractice)
(Epic500)
@NullResponse @CheckFlag(Epic500Complete)
Today you're doing a HalfATon! @LockImages
21 hot Edges! @SetVar[EdgeATonCounter]=[499]
(500Edges)
@NullResponse @Goto(EdgeNoHold4,EdgeHold4,EdgeLongHold4,EdgeExtremeHold4)
(EdgeNoHold4)
#GNMEdge @EdgeNoHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Epic500Complete) @Goto(500Edges)
(EdgeHold4)
#GNMEdge @EdgeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Epic500Complete) @Goto(500Edges)
(EdgeLongHold4)
#GNMEdge @Edge @LongHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Epic500Complete) @Goto(500Edges)
(EdgeExtremeHold4)
#GNMEdge @Edge @ExtremeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Epic500Complete) @Goto(500Edges)
(Epic500Complete)
Today we're practicing for the LEGENDARY 1000!!! @Goto(DecidePractice)
(Legendary1000)
@NullResponse @CheckFlag(Legendary1000Complete)
Today you're doing a HalfATon! @LockImages
21 hot Edges! @SetVar[EdgeATonCounter]=[999]
(1000Edges)
@NullResponse @Goto(EdgeNoHold5,EdgeHold5,EdgeLongHold5,EdgeExtremeHold5)
(EdgeNoHold5)
#GNMEdge @EdgeNoHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Legendary1000Complete) @Goto(1000Edges)
(EdgeHold5)
#GNMEdge @EdgeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Legendary1000Complete) @Goto(1000Edges)
(EdgeLongHold5)
#GNMEdge @Edge @LongHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Legendary1000Complete) @Goto(1000Edges)
(EdgeExtremeHold5)
#GNMEdge @Edge @ExtremeHold @ShowImage
#GNMLetTheEdgeFade
#GNMCheerEdgeATon @ChangeVar[EdgeATonCounter]=[EdgeATonCounter]-[1]
@NullResponse @If[EdgeATonCounter]==[0]Then(Legendary1000Complete) @Goto(1000Edges)
(Legendary1000Complete)
I think we should start your training all over #GNMEmoteHappy @SetVar[EdgeATonLevel]=[1]
@NullResponse @DeleteFlag(HalfATonComplete)
@NullResponse @DeleteFlag(EdgeATonComplete)
@NullResponse @DeleteFlag(Migthy100Complete)
@NullResponse @DeleteFlag(Epic500Complete)
@NullResponse @DeleteFlag(Legendary1000Complete)
@NullResponse @Goto(EdgeATonIntro)
(FinalEdgePractice)
#GNMEdge @EdgeHold
@NullResponse @RuinedMode(Normal) @NoMode(Normal)
Good practice today #PetName #GNMEmoteHappy @ChangeVar[EdgeATonLevel]=[EdgeATonLevel]+[1]
@End
(FinalEdgeHalf)
#GNMEdge @EdgeHold
@NullResponse @RuinedMode(Normal) @NoMode(Normal)
Well done #PetName 
Well done! #GNMEmoteHappy @UnlockImages @ChangeVar[EdgeATonLevel]=[EdgeATonLevel]+[1]
From now on we're training for the full marathon #GNMLol
@End
(FinalEdgeFull)
#GNMEdge @EdgeHold
@NullResponse @RuinedMode(Normal) @NoMode(Normal)
@NullResponse @UnlockImages
You made it! I'm so proud of you! #GNMGrin @ChangeVar[EdgeATonLevel]=[EdgeATonLevel]+[1]
You know I would really like to train you for the Migthy 100!
The migthy 100 is a crazy goal
And you would make me so happy if you went for it! #GNMMoan
Do you wanna try for the migthy 100?
[yes]YAAA!
[no]Aww #GNMEmoteSad. Well I get that you're not ready @Set[EdgeATonLevel]=[10]
@DifferentAnswer #GNMYesOrNo
Well thank you for completing this awesome achievement today! #GNMEmoteHappy @SetFlag(EdgeATonComplete)
@End
(FinalEdge100)
#GNMEdge @EdgeHold
@NullResponse @RuinedMode(Normal) @NoMode(Normal)
@NullResponse @UnlockImages
OMG! You did it! #GNMEmoteSexy @ChangeVar[EdgeATonLevel]=[EdgeATonLevel]+[1]
100 beautifull edges!
You make so proud!
I feel like you could a lot farther!
You know..
There is the Epic 500!
Yea I know #GNMLol
500 edges
But you would make me crazy proud if you managed to do it!
Do you wanna train for the epic 500?
[yes]YAAA!
[no]Aww #GNMEmoteSad. Well I get that you're not ready @Set[EdgeATonLevel]=[30]
@DifferentAnswer #GNMYesOrNo
Well thank you so much for completing this awesome achievement today! #GNMEmoteHappy @SetFlag(Migthy100Complete)
@End
(FinalEdge500)
#GNMEdge @EdgeHold
@NullResponse @RuinedMode(Normal) @NoMode(Normal)
@NullResponse @UnlockImages
OMFG! You bloody did it! #GNMEmoteSexy @ChangeVar[EdgeATonLevel]=[EdgeATonLevel]+[1]
100 beautifull edges!
You make so proud!
I feel like you could a lot farther!
You know..
There is the LEGENDARY 500!
Yea I know #GNMLol
1000 edges sounds insane!
But you would make me crazy proud if you managed to do it!
Do you wanna train for the LEGENDARY 1000?
[yes]YAAA!
[no]Aww #GNMEmoteSad. Well I get that you're not ready @Set[EdgeATonLevel]=[50]
@DifferentAnswer #GNMYesOrNo
Well thank you so much for completing this awesome achievement today! #GNMEmoteHappy @SetFlag(Epic500Complete)
@End
(FinalEdge1000)
#GNMEdge @EdgeHold
@NullResponse @RuinedMode(Normal) @NoMode(Normal)
@NullResponse @UnlockImages
OMG! OMG OMG OMG!!! @ChangeVar[EdgeATonLevel]=[EdgeATonLevel]+[1]
1000 EDGES!! 
This is insane
Only a handfull of slaves ever complete this achievement!!
You are the most impressive slave I've ever had!¨
Congratulations!
I can barely imagine how you're cock must be feeling #GNMLol 
THANK YOU so much for completing this awesome lifetime achievement today! #GNMEmoteHappy @SetFlag(Legendary1000Complete)
@End
(NoMore)
No more huh?
I know i'm driving you hard
But I just want you to succeed #PetName
Do you want me to cool you down #GNMSlut?
[yes]Okay #PetName #GNMEmoteHappy @Goto(CoolDown)
[no]You're a tough one #GNMEmoteHappy
@DifferentAnswer #GNMYesOrNo
@End
(Ruined)
You've been a great disappointment today Slave...
But I think I know someone who can cure that from you.. @Interrupt(GNMInterruptGNMSeverePunishment)
(CoolDown)
Well the best way to cool you down
Also happens to be my favorite activity #GNMLol
@NullResponse @MiniScript(GNMFetchSpankingInstrument)
@NullResponse @CustomTask(GNMSpankingRandomInstrument)
Well that was fun!
@End
Regards
Genome
Tribute to 1885 & those involved with Tease-AI.
Thank you for spending time on this awesome project! :-)
User avatar
avatarbr
Experimentor
Experimentor
Posts: 1239
Joined: Fri Aug 18, 2006 3:33 am
Gender: Male
Sexual Orientation: Straight

Re: Tease Ai scripting: The HELP CORNER

Post by avatarbr »

richman2 wrote:Hey there!
maybe a stupid question, but anyway: I like wicked tease personality as well as house of tease personality both very much. Is it possible to mix up the modules/ links and ends (not the start script) without any knowledge of scripting/ actually knowing what I'm doing despite copying the files? Or do I mess up the whole idea by combining scripts?
You can simply copy the files from a Module folder to another, same thing with Stroke\Link folder.

However, keep in mind House of tease Modules contains 4 scripts/file and a system to avoid run the same script twice in the session. In fact, you just will get the same script after running all the others in the file.
Plus, when all 4 scripts already ran, I used the chance to run a control script, to change some things (variables, flags, etc).

Can work, but you maybe dont get the full experience.

I put a template file in my topic where you can copy and paste others modules inside and still keep the control/ramdom part.
SkyHimeros
Explorer
Explorer
Posts: 20
Joined: Sun Apr 10, 2016 6:08 pm
Gender: Male
Sexual Orientation: Straight
I am a: Switch

Re: Tease Ai scripting: The HELP CORNER

Post by SkyHimeros »

Thank you very much! That's also a great approach and I can see how it has the advantage of no possible loops. However if I want to use it to select 10+ modules I fear it could still become overwhelmingly complicated for me. So far my method seems to work reliably and fast. Even with 3 modules/punishments set it doesn't take the program longer to find the last one than it would to come up with a normal line (and I really don't have the fastest computer). Also I think as long as I don't make any scripting errors there it shouldn't be possible for it to get stuck in an infinite loop.
So for now I'll stick to my way however I'm very grateful for all the help and if I get problem in the future I definately will get back to your suggestions.
Risuld
Explorer
Explorer
Posts: 17
Joined: Mon Apr 09, 2012 4:56 am

Re: Tease Ai scripting: The HELP CORNER

Post by Risuld »

So each time I try and use something like "@Chance50(a) @Chance50(b)" It just defaults to (a) every time. Did I goof or is this a bug?
User avatar
avatarbr
Experimentor
Experimentor
Posts: 1239
Joined: Fri Aug 18, 2006 3:33 am
Gender: Male
Sexual Orientation: Straight

Re: Tease Ai scripting: The HELP CORNER

Post by avatarbr »

Risuld wrote:So each time I try and use something like "@Chance50(a) @Chance50(b)" It just defaults to (a) every time. Did I goof or is this a bug?
The correct way to use @Chance is:

Code: Select all

Text @Chance50(a)
This should be the B part
But you dont need to put the B
@End or use a @Goto() to skip the A part
(a)
Blabla
bla bla
@End
Risuld
Explorer
Explorer
Posts: 17
Joined: Mon Apr 09, 2012 4:56 am

Re: Tease Ai scripting: The HELP CORNER

Post by Risuld »

avatarbr wrote:
Risuld wrote:So each time I try and use something like "@Chance50(a) @Chance50(b)" It just defaults to (a) every time. Did I goof or is this a bug?
The correct way to use @Chance is:

Code: Select all

Text @Chance50(a)
This should be the B part
But you dont need to put the B
@End or use a @Goto() to skip the A part
(a)
Blabla
bla bla
@End
Alright and for chances longer then two things should I just keep adding new lines under the first chance till I hit the default end of the list?
User avatar
1885
Explorer At Heart
Explorer At Heart
Posts: 648
Joined: Fri Jul 08, 2011 4:27 am
Gender: Male
Sexual Orientation: Straight
I am a: Switch

Re: Tease Ai scripting: The HELP CORNER

Post by 1885 »

Risuld wrote:So each time I try and use something like "@Chance50(a) @Chance50(b)" It just defaults to (a) every time. Did I goof or is this a bug?
Risuld wrote:Alright and for chances longer then two things should I just keep adding new lines under the first chance till I hit the default end of the list?
If you just want everything to have the same chance of being selected, you can just use @Goto() and separate your GotoLines with commas:

@Goto(A, B) - 50% chance of going to A, 50% chance of going to B

@Goto(A, B, C) 33% chance of going to A, B or C

as many as you want:

@Goto(A, B, C, D, E, F, G, H, I, J) 10% chance of going to any of these
Image
Risuld
Explorer
Explorer
Posts: 17
Joined: Mon Apr 09, 2012 4:56 am

Re: Tease Ai scripting: The HELP CORNER

Post by Risuld »

1885 wrote:
Risuld wrote:So each time I try and use something like "@Chance50(a) @Chance50(b)" It just defaults to (a) every time. Did I goof or is this a bug?
Risuld wrote:Alright and for chances longer then two things should I just keep adding new lines under the first chance till I hit the default end of the list?
If you just want everything to have the same chance of being selected, you can just use @Goto() and separate your GotoLines with commas:

@Goto(A, B) - 50% chance of going to A, 50% chance of going to B

@Goto(A, B, C) 33% chance of going to A, B or C

as many as you want:

@Goto(A, B, C, D, E, F, G, H, I, J) 10% chance of going to any of these
Ok. I am seeing how I can combine these to get the results I am looking for. I can use @Goto for long lists and for small things I want to make rare I can use a @Chance. Thank you everyone!
Studfu55
Explorer
Explorer
Posts: 18
Joined: Sun Aug 05, 2012 9:18 am
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease Ai scripting: The HELP CORNER

Post by Studfu55 »

Is there a way to adjust the chances that the domme will make you continue/start another tease right way?
SkyHimeros
Explorer
Explorer
Posts: 20
Joined: Sun Apr 10, 2016 6:08 pm
Gender: Male
Sexual Orientation: Straight
I am a: Switch

Re: Tease Ai scripting: The HELP CORNER

Post by SkyHimeros »

Is there a way to "comment" in your code? Sometimes the scripting gets very confusing and it would be cool if I could add notes for myself in certain lines (without them being shown later as text)
User avatar
1885
Explorer At Heart
Explorer At Heart
Posts: 648
Joined: Fri Jul 08, 2011 4:27 am
Gender: Male
Sexual Orientation: Straight
I am a: Switch

Re: Tease Ai scripting: The HELP CORNER

Post by 1885 »

Studfu55 wrote:Is there a way to adjust the chances that the domme will make you continue/start another tease right way?
Currently it's tied to the domme's level. The higher her level is, the significantly higher the chance to repeat is. I can add more specific settings to the Ranges tab in a future patch though

SkyHimeros wrote:Is there a way to "comment" in your code? Sometimes the scripting gets very confusing and it would be cool if I could add notes for myself in certain lines (without them being shown later as text)
You can use @Info

Any line that contains @Info will automatically be ignored in any kind of script. Also, in Start, Modules, Link and End scripts, the last line that contains @Info in a given script will appear as the description for that script in the Script Selection menu.
Image
User avatar
avatarbr
Experimentor
Experimentor
Posts: 1239
Joined: Fri Aug 18, 2006 3:33 am
Gender: Male
Sexual Orientation: Straight

Re: Tease Ai scripting: The HELP CORNER

Post by avatarbr »

Damn, this works:

Code: Select all

Contact3 name? @InputVar[AV_APAGAR]
ok
@NullResponse @If[AV_APAGAR]=[#Contact3]Then(Right)
Wrong
@End
(Right)
SHIT, This Works
@End
If you put the correct name (like Anna), will works.

But this dont work:

Code: Select all

Choose a Contact
[#Contact1] OK @Goto(01)
[#Contact2] OK @Goto(02)
[#Contact3] OK @Goto(03)
@DifferentAnswer #Contact1, #Contact2 or #Contact3?
(01)
You choose #Contact1
@End
(02)
You choose #Contact2
@End
(03)
You choose #Contact3
@End
Just if you type #ContactX

Just wanted to share this, because I think its cool. :lol:
Post Reply