Tease AI: Community-Created Scripts

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
markus
Explorer At Heart
Explorer At Heart
Posts: 669
Joined: Tue Nov 18, 2008 11:09 pm

Re: Tease AI: Community-Created Scripts

Post by markus »

Razorsedge wrote: Mon Sep 27, 2021 5:03 pm I’m working on an intro script for contact3 and my hope is to keep track of what vocabulary terms I’ve added. Which didn’t even occur initially. Or would the easier option be to just share my whole vocabulary and people can skip replacing any files they already have, to essentially back fill with my additions?
I can think of 2 ways if you lost track which files you have added:
1. You can sort files in a folder by the date they were last edited, you may google for the term 'windows explorer sort file by last modified' ,... there are also videos on youtube for that.
2.
- Create a new folder somewhere outside TAI, i.e. on your Desktop.
- Copy all the vocabulary files (including the new ones you have created) into that new folder.
- Go find the original vocabulary files from the installed personality (maybe re-download the scripts), mark all (CTRL+A) and copy them into the new created folder.
- Windows will ask you if you want to overwrite files (copy and exchange), choose yes.
- Now every exchanged file is marked, right-click on one of them and choose 'delete'
- What's left should be the files you have new created.
User avatar
Razorsedge
Explorer At Heart
Explorer At Heart
Posts: 294
Joined: Fri Oct 25, 2013 6:09 am
Gender: Male
Sexual Orientation: Bisexual/Bi-Curious
Location: Australia

Re: Tease AI: Community-Created Scripts

Post by Razorsedge »

Thanks Markus, those sound like some solid ideas for filtering my Vocab folder. I will look into that next.
But right now I am very excited to show off my latest creation.

- the intro script for my Contact3 character!

For obvious reasons I haven't incorperated her into the main script yet, but as another sampler to run on its own, I feel really happy with it. I believe the only real requirements are to have all 3 glitter accounts filled out.
Otherwise boot it up with the debug menu and give it a whirl. I was really happy to see that it grew a lot larger than what I initially expected by including a few modules in amongst it. Which also made it feel a more organic part of TAI.


https://mega.nz/file/gptwgQRJ#4y2dJVc27 ... DrnAivkZm0


So anyone who can give it a try, I'd love to know if you enjoyed it. Or, if something went horribly wrong.

Otherwise, Happy teasing!
roots8834
Explorer
Explorer
Posts: 16
Joined: Tue Oct 28, 2014 7:07 pm

Re: Tease AI: Community-Created Scripts

Post by roots8834 »

Sooo I've been enjoying Tease AI Fury, I've added the community-created scripts and have encountered a few problems.

I managed to fix the loop issue in 'Harry2Stroke_LiveOnTheEdge' and the slideshow issue in 'Harry2Stroke_Contact1' but I can't for the life of me figure out this error I keep getting in 'unchance'.

I get to the "Haha, you didn't really believe I would do that, did you #PetName?" line and when I answer yes or no, Tease AI stops responding. The video I have playing continues and the metronome continues but everything else is frozen until an error window comes up with this message:

See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index
at System.ThrowHelper.ThrowArgumentOutOfRangeException(ExceptionArgument argument, ExceptionResource resource)
at Tease_AI.Form1.YesOrNoQuestions() in C:\Users\Elijah\Documents\Visual Studio 2010\Projects\Tease-AI\Tease AI\Form1.vb:line 3611
at Tease_AI.Form1.sendButton_Click(Object sender, EventArgs e) in C:\Users\Elijah\Documents\Visual Studio 2010\Projects\Tease-AI\Tease AI\Form1.vb:line 2630
at System.Windows.Forms.Control.OnClick(EventArgs e)
at System.Windows.Forms.Button.OnClick(EventArgs e)
at System.Windows.Forms.Button.PerformClick()
at Tease_AI.Form1.chatbox_KeyDown(Object sender, KeyEventArgs e) in C:\Users\Elijah\Documents\Visual Studio 2010\Projects\Tease-AI\Tease AI\Form1.vb:line 15881
at System.Windows.Forms.Control.OnKeyDown(KeyEventArgs e)
at System.Windows.Forms.Control.ProcessKeyEventArgs(Message& m)
at System.Windows.Forms.Control.ProcessKeyMessage(Message& m)
at System.Windows.Forms.Control.WmKeyChar(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.TextBoxBase.WndProc(Message& m)
at System.Windows.Forms.TextBox.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4420.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
Tease AI
Assembly Version: 0.59.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///Q:/Tease%20AI%200.54.9%20+%20Tease%20AI%20Fury%203.5.2020/Tease%20AI.exe
----------------------------------------
Microsoft.VisualBasic
Assembly Version: 10.0.0.0
Win32 Version: 14.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Microsoft.VisualBasic/v4.0_10.0.0.0__b03f5f7f11d50a3a/Microsoft.VisualBasic.dll
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4360.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4400.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4390.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4190.0 built by: NET48REL1LAST_B
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
System.Runtime.Remoting
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Runtime.Remoting/v4.0_4.0.0.0__b77a5c561934e089/System.Runtime.Remoting.dll
----------------------------------------
metro
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///Q:/Tease%20AI%200.54.9%20+%20Tease%20AI%20Fury%203.5.2020/metro.DLL
----------------------------------------
System.Speech
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4200.0 built by: NET48REL1LAST_C
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Speech/v4.0_4.0.0.0__31bf3856ad364e35/System.Speech.dll
----------------------------------------
AxInterop.WMPLib
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///Q:/Tease%20AI%200.54.9%20+%20Tease%20AI%20Fury%203.5.2020/AxInterop.WMPLib.DLL
----------------------------------------
Interop.WMPLib
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///Q:/Tease%20AI%200.54.9%20+%20Tease%20AI%20Fury%203.5.2020/Interop.WMPLib.DLL
----------------------------------------
Accessibility
Assembly Version: 4.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/Accessibility/v4.0_4.0.0.0__b03f5f7f11d50a3a/Accessibility.dll
----------------------------------------
Microsoft.GeneratedCode
Assembly Version: 1.0.0.0
Win32 Version: 4.8.4084.0 built by: NET48REL1
CodeBase: file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------

************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.

For example:

<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>

When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.

Any ideas?
User avatar
markus
Explorer At Heart
Explorer At Heart
Posts: 669
Joined: Tue Nov 18, 2008 11:09 pm

Re: Tease AI: Community-Created Scripts

Post by markus »

roots8834 wrote: Mon Dec 13, 2021 12:07 pm Sooo I've been enjoying Tease AI Fury, I've added the community-created scripts and have encountered a few problems.

I managed to fix the loop issue in 'Harry2Stroke_LiveOnTheEdge' and the slideshow issue in 'Harry2Stroke_Contact1' but I can't for the life of me figure out this error I keep getting in 'unchance'.

I get to the "Haha, you didn't really believe I would do that, did you #PetName?" line and when I answer yes or no, Tease AI stops responding. The video I have playing continues and the metronome continues but everything else is frozen until an error window comes up with this message:
Iirc, those harry scripts are not scripted very well, ... can you post the script?
And why is a video and the metronome on? ... Mhhh,... Could it be, that @StopStroking is missing at the top of 'unchance'?
dmas964
Explorer
Explorer
Posts: 51
Joined: Thu Aug 10, 2017 9:30 pm
Gender: Male
Sexual Orientation: Straight
I am a: Slave
Location: Poland

Re: Tease AI: Community-Created Scripts

Post by dmas964 »

The link is not working. Can someone upload the files again?
Sorry for my English, I hope you understand.
roots8834
Explorer
Explorer
Posts: 16
Joined: Tue Oct 28, 2014 7:07 pm

Re: Tease AI: Community-Created Scripts

Post by roots8834 »

markus wrote: Mon Dec 13, 2021 4:19 pm Iirc, those harry scripts are not scripted very well, ... can you post the script?
And why is a video and the metronome on? ... Mhhh,... Could it be, that @StopStroking is missing at the top of 'unchance'?
The video was one I loaded manually and the metronome was on from before this script started. That could fix it tbh, I'll give it a try.

It's pretty short so can do (this is the whole thing btw):

How are you hanging in there #PetName?
Is it #Difficult? Are you aching and #Writhing a lot right now? #Grin
Aww, poor #SubHorny #SubName #Emote
Maybe I should give you a little time to calm down? @Chance25(Mercy)
Haha, you didn't really believe I would do that, did you #PetName?
[yes]Oh, that is so adorable #Grin @Goto(Believed)
[no]#EmoteMoan of course you didn't
That's because you already understand that the only thing you do when a pet is aching and suffering as much as you are @Goto(Return)
(Return)
Is to make his suffering a hundred times worse #Grin
#Edge @Edge
#LetTheEdgeFade
#EmoteMoan should I be nice for once and let you rest a little now...
Or should I be #Mean and make you edge again?
Oh, don't bother answering that, you have no say in this matter #PetName #Emote @Chance50(Mercy)
I make the decisions here and I think I like you suffering a little worse than this #Grin
Edge again #SubName @Edge
#LetTheEdgeFade
#EmoteMoan oh yes #PetName, this is so #Hot
You sitting there going out of your mind with #Urge and me toying with your pleasure, your needs, your very sanity #EmoteMoan
Speaking of toying... @Chance50(Mercy)
I still want you to ache worse #PetName
I want you crying, squirming and begging
And I <i>will</i> get what I want, I promise you #SubName #Grin
Give me another edge @Edge
#LetTheEdgeFade
Alright, I think that's enough for now
Just remember #PetName that I can make things <i>so</i> much harder on you whenever I feel like it #Grin
You are literally in the palm of my hand
Right where you belong #Emote @Goto(Module End)
(Believed)
But you should really understand by now that the only thing you do when a pet is aching and suffering as much as you are @Goto(Return)
(Mercy)
Yeah, I think you're aching enough for me, right now #Grin
Just remember #PetName that I can make things <i>so</i> much harder on you whenever I feel like it #Grin
You are literally in the palm of my hand
Right where you belong #Emote @Goto(Module End)
(Module End)
@NullResponse
@End
User avatar
markus
Explorer At Heart
Explorer At Heart
Posts: 669
Joined: Tue Nov 18, 2008 11:09 pm

Re: Tease AI: Community-Created Scripts

Post by markus »

roots8834 wrote: Mon Dec 13, 2021 4:40 pm The video was one I loaded manually and the metronome was on from before this script started. That could fix it tbh, I'll give it a try.
Let me know if that helps.
Other ideas (just ideas, I couldn't reproduce the error, but maybe I have tested with another patch version, I don't know):
- You could add:
@DifferentAnswer Yes or no?
under this line:
[no]#EmoteMoan of course you didn't

- You could add at the top of the script:
@NullResponse @ClearModes

And just btw. ... for posting a script, it's better to use the code Tag, would look like this:

Code: Select all


How are you hanging in there #PetName?
Is it #Difficult? Are you aching and #Writhing a lot right now? #Grin
Aww, poor #SubHorny #SubName #Emote
Maybe I should give you a little time to calm down? @Chance25(Mercy)
Haha, you didn't really believe I would do that, did you #PetName?
[yes]Oh, that is so adorable #Grin @Goto(Believed)
[no]#EmoteMoan of course you didn't
That's because you already understand that the only thing you do when a pet is aching and suffering as much as you are @Goto(Return)
(Return)
Is to make his suffering a hundred times worse #Grin
#Edge @Edge
#LetTheEdgeFade
#EmoteMoan should I be nice for once and let you rest a little now...
Or should I be #Mean and make you edge again?
Oh, don't bother answering that, you have no say in this matter #PetName #Emote @Chance50(Mercy)
I make the decisions here and I think I like you suffering a little worse than this #Grin
Edge again #SubName @Edge
#LetTheEdgeFade
#EmoteMoan oh yes #PetName, this is so #Hot
You sitting there going out of your mind with #Urge and me toying with your pleasure, your needs, your very sanity #EmoteMoan
Speaking of toying... @Chance50(Mercy)
I still want you to ache worse #PetName
I want you crying, squirming and begging
And I <i>will</i> get what I want, I promise you #SubName #Grin
Give me another edge @Edge
#LetTheEdgeFade
Alright, I think that's enough for now
Just remember #PetName that I can make things <i>so</i> much harder on you whenever I feel like it #Grin
You are literally in the palm of my hand
Right where you belong #Emote @Goto(Module End)
(Believed)
But you should really understand by now that the only thing you do when a pet is aching and suffering as much as you are @Goto(Return)
(Mercy)
Yeah, I think you're aching enough for me, right now #Grin
Just remember #PetName that I can make things <i>so</i> much harder on you whenever I feel like it #Grin
You are literally in the palm of my hand
Right where you belong #Emote @Goto(Module End)
(Module End)
@NullResponse
@End
Best greetings,
Markus
roots8834
Explorer
Explorer
Posts: 16
Joined: Tue Oct 28, 2014 7:07 pm

Re: Tease AI: Community-Created Scripts

Post by roots8834 »

markus wrote: Mon Dec 13, 2021 7:14 pm Let me know if that helps.
Other ideas (just ideas, I couldn't reproduce the error, but maybe I have tested with another patch version, I don't know):
- You could add:
@DifferentAnswer Yes or no?
under this line:
[no]#EmoteMoan of course you didn't

- You could add at the top of the script:
@NullResponse @ClearModes
I think that fixed it, cheers. Did encounter another problem with "Harry2Stroke_Contact3" though... where the three dice have been rolled, once I was told what the three dice numbers were I got a "System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection" error. And when I click continue it doesn't progress.

I checked the script and I can't see why it shouldn't work, lets see if I can get this right this time :D

Code: Select all

@Contact3 So we have to set up some numbers :-)
@NullResponse @SetVar[Sub_EdgeGoal]=[0] 
@NullResponse @SetVar[Edge_Count]=[0]
@Contact3 Let 3 dices decide for us #Lol
@NullResponse @SetVar[Dice1]=[#Random(2,6)]
@Contact3 The first dice says @ShowVar[Dice1]
@NullResponse @SetVar[Dice2]=[#Random(2,6)]
@Contact3 Second one tells me @ShowVar[Dice2]
@NullResponse @SetVar[Dice3]=[#Random(2,6)]
@Contact3 And the third one says @ShowVar[Dice3]
@Contact3 And now lets multiply the numbers #Lol
@NullResponse @SetVar[Dice4]=[Dice1]*[Dice2]
@NullResponse @ChangeVar[Sub_EdgeGoal]=[Dice3]*[Dice4]
@Contact3 Your luck tell us that their need to be @ShowVar[Sub_EdgeGoal] edges for me tonight #PetName
In regards to the version I'm running, I'm running the "Full Setup Download" from the [Tease AI] Resources and Personalities page.

Edit: Forgot another bug I encountered, for some reason the edge count in "Are you ready to be teased" decreases one to many times with contact 3 as the domme, I've tracked the lines I got and everything looks right. It seems that any time contact 3 'speaks' the count reduces by 1. I think the problem is in (Start_edging) where it only says #Edge @Edge for Domme not if contact 3 is Domme, not sure though:

Code: Select all

(Start_edging)
@Group(D2) @NullResponse @Chance50(Contact2 is Domme)
@Group(D3) @NullResponse @Chance50(Contact3 is Domme)
@NullResponse @SetDomme(Domme)
#Edge @RTOff @Edge(NoHold) @Goto(Command_centre)
(Contact2 is Domme)
@NullResponse @SetDomme(2) @Goto(Command_centre)
(Contact3 is Domme)
@NullResponse @SetDomme(3) @Goto(Command_centre)
Cheers again for the help.
User avatar
markus
Explorer At Heart
Explorer At Heart
Posts: 669
Joined: Tue Nov 18, 2008 11:09 pm

Re: Tease AI: Community-Created Scripts

Post by markus »

roots8834 wrote: Tue Dec 14, 2021 9:56 am I think that fixed it, cheers. Did encounter another problem with "Harry2Stroke_Contact3" though... where the three dice have been rolled, once I was told what the three dice numbers were I got a "System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection" error. And when I click continue it doesn't progress.
@SetVar is used wrong, it isn't meant to do calculations, @ChangeVar has to be used.
Btw.: @ChangeVar is named 'misleading',... the command name implies that the variable must be set first before it can be changed, but you can use @ChangeVar without setting the variable first.
So:

Code: Select all

@NullResponse @ChangeVar[Dice4]=[Dice1]*[Dice2]
instead of:

Code: Select all

@NullResponse @SetVar[Dice4]=[Dice1]*[Dice2]
Edit: Forgot another bug I encountered, for some reason the edge count in "Are you ready to be teased" decreases one to many times with contact 3 as the domme, I've tracked the lines I got and everything looks right. It seems that any time contact 3 'speaks' the count reduces by 1. I think the problem is in (Start_edging) where it only says #Edge @Edge for Domme not if contact 3 is Domme, not sure though:
I don't see a mistake in that part of the script, just always post the whole script.

Best greetings,
Markus
roots8834
Explorer
Explorer
Posts: 16
Joined: Tue Oct 28, 2014 7:07 pm

Re: Tease AI: Community-Created Scripts

Post by roots8834 »

markus wrote: Tue Dec 14, 2021 12:29 pm @SetVar is used wrong, it isn't meant to do calculations, @ChangeVar has to be used.
Btw.: @ChangeVar is named 'misleading',... the command name implies that the variable must be set first before it can be changed, but you can use @ChangeVar without setting the variable first.
Aaah okay, perfect thanks.
I don't see a mistake in that part of the script, just always post the whole script.
It's quite long which is why I didn't but here it is:

Code: Select all

#GreetSub @NoTypo
Are you ready to be teased... @NoTypo
and denied #GeneralTime #SubName? #Grin @NoTypo @Wait(2)
You better be, because we've just started #PetName...
Is your #Cock rock hard?
[yes] Mmmm... I love when you come prepared... @Chance60(Play_something_new) @Goto(Warm_up,Start_stroking)
[no] Well... Nobody is perfect, isn't it? @Goto(No)
@DifferentAnswer #YesorNo
(Warm_up)
But I think your hard rock #Cock still needs a warm-up
You should always do a warm-up before starting any <i>physical activity</i>... #Grin @Chance50(Warm_up_exercise_2)
(Warm_up_exercise_1)
In this exercise <i>you</i> are #Gonna do three set of three edges
<i>BUT</i> @Wait(1)
With a shorter cooldown time for every set
Get ready #SubName!
#Edge @Edge(NoHold) @MultipleEdges(3,15)
You survived the first round #PetName!
That's good!
But I don't know if you will survive the last two rounds... #Grin
You have to face two rounds back to back
Holding the last edge of each round
Do you think you're ready #SubName?
[yes] Good!
[no] #YoureGoingToDoIt
@DifferentAnswer #YoureGoingToDoIt
Get ready #SubName!
Ready...
Steady...
#Edge @Edge(Hold) @MultipleEdges(3,10)
Third round!
#Edge @Edge(Hold) @MultipleEdges(3,5)
#Good #PetName!
You finished the warm-up
Now, get some rest #SubName
But be ready to start stroking that #Cock again! @Wait(#Random(15,30)) @Goto(Start_stroking)
(Warm_up_exercise_2)
For this exercise we're #Gonna play a little game
A edge ladder game
When you climb the ladder you're #Gonna have to hold longer edges
When you descend the ladder you're #Gonna hold shorter edges
Don't worry, it's just a small ladder...
Get ready to begin! @RTOn
#Edge @EdgeHold(5)
#LetTheEdgeFade @Wait(5)
#Edge @EdgeHold(10)
#LetTheEdgeFade @Wait(10)
#Edge @EdgeHold(15)
#LetTheEdgeFade @Wait(15)
#Edge @EdgeHold(20)
#LetTheEdgeFade @Wait(20)
#Edge @EdgeHold(25)
#LetTheEdgeFade @Wait(25)
#Edge @EdgeHold(30)
#LetTheEdgeFade @Wait(30)
#Edge @EdgeHold(25)
#LetTheEdgeFade @Wait(25)
#Edge @EdgeHold(20)
#LetTheEdgeFade @Wait(20)
#Edge @EdgeHold(15)
#LetTheEdgeFade @Wait(15)
#Edge @EdgeHold(10)
#LetTheEdgeFade @Wait(10)
#Edge @EdgeHold(5)
#LetTheEdgeFade @Wait(5) @RTOff
That was the last @RT(one,edge) #SubName
How's your #Cock doing so far?
I'll give you a few seconds to recover #PetName
Because <i>real</i> #Stroking will start soon @Wait(#Random(20,30))
(Start_stroking)
#StartStroking @StartStroking
@End
(Play_something_new)
@RT(I'd like to play something new with you #GeneralTime, I'd like to do something new with you #GeneralTime, I want to do something new with you #GeneralTime, I want to play something new with you #GeneralTime, I feel like doing something new with you #GeneralTime, I feel like playing something new with you #GeneralTime) @RT(#SubName, #PetName)
@RT(I think we should explore more, I think we should play some, I'd like to play some, #GeneralTime I feel like playing some, Why don't we play some, I think we should do some)... @Goto(CBT, Edging)
(CBT)
#CBT! @TempFlag(CBT_Game)
@RT(Don't be afraid, Don't worry, Don't be so worried, Don't be so afraid, You don't need to be so worried, You don't need to be afraid) @RT(#PetName, #SubName). @RT(I'm not #Gonna #Hurt you, This is not #Gonna #Hurt you, It won't #Hurt you)
I mean...
Not too much... #Grin @NoTypo
Now... @If[#Random(1,100)]<=[#Random(25,35)]Then(Phone is ringing)
(Start_CBT)
@RT(#StartStroking, #Stroke it for #Me), @RT(slowly, very slowly, but you have to do slowly, but you have to do very slowly, but very slowly, at a very slow pace, but at a very slow pace, but do it slowly)
@RT(Don't edge!, I don't want you to get on the #EdgeNoun, And don't edge, And don't think about getting to the #EdgeNoun, Don't you dare edge, Don't you dare get to the #EdgeNoun)
@RT(If you feel you're #Gonna edge,, slow down, Slow down,, if you feel you're #Gonna edge,If you feel you're #Gonna get to the #EdgeNoun,, slow down, Slow down,, if you feel you're #Gonna get to the #EdgeNoun)
But never stop #Stroking
@Group(D2) @Contact2 And don't #Cum #SubName, otherwise @RT(#DomName, #ShortName) will have to @RT(punish, #Hurt) you
@Group(D2) @Contact2 And I don't like seeing you in pain!
@RT(Now we're #Gonna spice it up a bit, Let's spice it up a bit, Now we need to spice this thing up, Let's try to spice this game up)!
@RT(I think we could use some mild #CBT, I think some mild #CBT would be perfect) @CBTBalls
#HowAreYourBallsFeeling
#Balls_in_pain
You know what that means #SubName? @CBTCock
And again your #Cock @CBTCock
By now your #Cock should be a mess...
@Group(D2) @Contact2 Please @RT(#DomName, #ShortName) stop! He's in pain, don't you see?!
@Group(D2) Ok, I'll stop now @Goto(Stop_CBT_Game)
@RT(By the time I'm done with you your #Balls will be a mess too, I think we should focus more on your #Balls, I think <i>you</i> should focus again on your #Balls, Better give those #Balls some attention) @RT(#SubName, #PetName)... @CBTBalls
(Stop_CBT_Game)
#StopStroking
#BallBusting_1_A2
How is your #Cock doing #SubName? @Goto(Goodbye_time)
(Edging)
Edging! @TempFlag(Edging_Game) @Wait(2)
#Grin Calm down @RT(#PetName,#SubName)!
If I were you, I would not be so happy
I would have preferred some @RT(#CBT,harsh #CBT)
I think you're #Gonna find this <i>game</i> pretty intense
Because you can't get used to #Stroke knowing that you're #Gonna stop just @RT(a few strokes, a stroke) before cumming... @NoTypo
Seeing your #Cock twitching... @NoTypo
Feeling your body squirming on the #EdgeNoun looking for an orgasm that will never cum... @NoTypo @RTOn
Sorry... that will never <i>come</i> @NoTypo
Let's start @RTOff @If[#Random(1,100)]<=[#Random(25,35)]Then(Phone is ringing)
@NullResponse @Goto(Start_edging_game)
(Phone is ringing)
Wait a moment, my phone is ringing...
Oh... Don't worry about @RT(our game, our little game)
@RT(This is only a little delay, This will be only a little delay,This is #Gonna be only a little delay)... #Grin @Wait(20)
@RT(Look who's here #SubName!, Look who's here!, Look who joined us @SubName!, Look who joined us!) @Goto(Contact2, Contact3)
(Contact2)
@NullResponse @AddContact2
Do you remember my friend #Contact2 #SubName?
@Contact2 Hello #SubName!
@Contact2 I hope I didn't interrupt anything important...
Don't worry #Contact2... We were about to play a game...
@Contact2 A game?
Yes #Contact2
@Contact2 What kind of game? @CheckFlag(CBT_Game, CBT_Game_Contact2) @CheckFlag(Edging_Game, Edging_Game_Contact2)
(Contact3)
@NullResponse @AddContact3
Do you remember my friend #Contact3 #SubName?
@Contact3 Hello #SubName!
@Contact3 I hope I didn't interrupt anything important...
Don't worry #Contact3... We were just playing a game...
@Contact3 Mmm... Sounds interesting...
@Contact3 I play games with my slaves too...
@RT(Yeah,, I saw you playing with your slaves, I know what kind of games you like, I saw what kind of games you like playing with your slaves)...
The kind that you pretend to be the hero who frees their #Cock from those cages...
Just to lock them in a newer and more painful one #Grin
@Contact3 @RT(You know my methods #ShortName,You know  which are my methods)...
@Contact3 Keep a man denied in a cage and he will do almost everything, just to have a small chance to cum again
@Contact3 @RT(What are you #Gonna do, What have you planned to do)? @CheckFlag(CBT_Game, CBT_Game_Contact3) @CheckFlag(Edging_Game, Edging_Game_Contact3)
(CBT_Game_Contact2)
A #CBT game!
@Contact2 Ok, but don't #Hurt him too much @Goto(Start_CBT)
(Edging_Game_Contact2)
@RT(I was going to make him edge, An edging game!)
@Contact2 Ok, seems interesting
@Contact2 But don't exaggerate...
@Contact2 Give him enough time to cool down @Goto(Start_edging_game)
(CBT_Game_Contact3)
I was thinking to #CBT but, you know, after a while it gets repetitive...
@Contact3 It seems you ran out of ideas #ShortName...
I could really use some help: do you have any idea #Contact3?
@Contact3 Glad you asked it #DomName
@Contact3 Actually I have a few games in mind I think you'll like
@Contact3 Get ready @SubName... #Grin
@Contact3 I suspect you won't like my games...#Grin @Goto(Contact3_CBT_Game1,Contact3_CBT_Game2)
(Edging_Game_Contact3)
We were about to play a little edging game
@Contact3 I love edging games!
@Contact3 Can I stay here and watch?
Of course #Contact3! You may even edge him yourself if you wish
@Contact3 That's actually a better idea! #Grin
(Start_edging_game)
Here's what we're #Gonna do:
I will think an adequate amount of edges
And all you have to do is try to guess it
Do you like the idea?
[yes] #Good
[no] #YoureGoingToDoIt
@AcceptAnswer #YoureGoingToDoIt
@NullResponse @RapidCodeOn
@NullResponse @SetVar[tgr8_edging_game_min]=[#Random(8,12)] @SetVar[tgr8_edging_game_max]=[#Random(15,20)]
@NullResponse @SetVar[Domme_amount_of_edges]=[#Random(#Var[tgr8_edging_game_min],#Var[tgr8_edging_game_max])]
@NullResponse @SetVar[Domme_amount_of_edges_2]=[#Var[Domme_amount_of_edges]]
@NullResponse @ChangeVar[Domme_amount_of_edges_2]=[Domme_amount_of_edges_2]-[#Random(4,6)]
@NullResponse @RapidCodeOff
@Group(D2) @Contact2 The number of edges you owe us goes from @ShowVar[tgr8_edging_game_min] to @ShowVar[tgr8_edging_game_max]
@Group(D3) @Contact3 The number of edges you owe us goes from @ShowVar[tgr8_edging_game_min] to @ShowVar[tgr8_edging_game_max]
@Group(D2) @Contact2 Which is the right amount of edges you think you owe #Me? @InputVar[Sub_amount_of_edges]
@Group(D3) @Contact3 Which is the right amount of edges you think you owe #Me? @InputVar[Sub_amount_of_edges]
@Group(D2) @NullResponse @Goto(Check amount)
@Group(D3) @NullResponse @Goto(Check amount)
The number of edges you owe me goes from @ShowVar[tgr8_edging_game_min] to @ShowVar[tgr8_edging_game_max]
Which is the right amount of edges you think you owe #Me? @InputVar[Sub_amount_of_edges]
(Check amount)
@NullResponse @RapidCodeOn
@NullResponse @DeleteVar[tgr8_edging_game_min,tgr8_edging_game_max]
@NullResponse @If[Sub_amount_of_edges]=[Domme_amount_of_edges]Then(Guessed)
@NullResponse @If[Sub_amount_of_edges]>[Domme_amount_of_edges]Then(The_more_the_better)
@NullResponse @RapidCodeOff
(Correct_amount_is)
@NullResponse @If[Sub_amount_of_edges]<=[Domme_amount_of_edges_2]Then(Way_too_low)
@ShowVar[Sub_amount_of_edges] edges is not an adequate @RT(amount, number)!
I won't tell you which is the right amount of edges
I want to see the desperation in your eyes...
I mean... how many times will I ask you to edge that #Cock? @RTOn
10?
20?
Maybe 30?
@NullResponse @RTOff
Since you didn't even get close to the number I thought
I'm #Gonna add @RT(a few, few more, some) edges to the total @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]+[#Random(1,3)]
And now... @Goto(Start_edging)
(Way_too_low)
Are you kidding me? @DeleteVar[Domme_amount_of_edges_2]
@Group(D3) @Contact3 Did he just say @ShowVar[Sub_amount_of_edges], @RT(#DomName, #ShortName)?
@ShowVar[Sub_amount_of_edges] edges are not even remotely an adequate @RT(amount, number)!
I won't tell you which is the right amount of edges
I want to see the desperation in your eyes...
I mean... how many times will I ask you to edge that #Cock? @RTOn
10?
20?
Maybe 30?
@NullResponse @RTOff
Since you didn't even get close to the number I thought
I'm #Gonna add @RT(a few, few more, some) edges to the total @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]+[#Random(3,6)]
And now... @Goto(Start_edging)
(Guessed)
@RT(You guessed, You guessed it) @RT(#SubName, #PetName)! @RT(Today must be your lucky day,Today surely is your lucky day,Today is your lucky day) @RT(#SubName, #PetName)! @Goto(Start_edging)
(The_more_the_better)
@Group(D2) What do you think about @ShowVar[Sub_amount_of_edges] edges #Contact2? @Chance20(Too_much_edges)
@Group(D2) @Contact2 It's okay
@Group(D2) @Contact2 But give him enough time to cool down #ShortName, please!
@Group(D2) @Contact2 I don't like seeing him suffer too much!
@Group(D3) I was thinking to @ShowVar[Domme_amount_of_edges] edges @RT(#SubName, #PetName)
@Group(D3) But I guess @ShowVar[Sub_amount_of_edges] is a good number too...
@Group(D3) Don't you think #Contact3?
@Group(D3) @Contact3 A #PetName like #SubName <i>MUST</i> always accept what his #DomHonorific decides...
@Group(D3) @Contact3 so you, @RT(#SubName, #PetName), are #Gonna @RT(edge, #Stroke to the #EdgeNoun, get yourself #NearTheEdge, #Stroke yourself #NearTheEdge) for @ShowVar[Sub_amount_of_edges] times
@Group(D2) @NullResponse @Goto(Continue)
@Group(D3) @NullResponse @Goto(Continue)
I was thinking to @ShowVar[Domme_amount_of_edges] edges
But I guess @ShowVar[Sub_amount_of_edges] is a good number too...
(Continue)
@NullResponse @SetVar[Domme_amount_of_edges]=[#Var[Sub_amount_of_edges]]
@Group(D2) Now you owe us @ShowVar[Domme_amount_of_edges] edges @Goto(Start_edging)
@Group(D3) Now you owe us @ShowVar[Domme_amount_of_edges] edges @Chance50(Add_some_more) @Goto(Start_edging)
Well #SubName, now you owe me @ShowVar[Domme_amount_of_edges] edges @Goto(Start_edging)
(Too_much_edges)
@Contact2 Don't be so cruel #ShortName!
@Contact2 @ShowVar[Sub_amount_of_edges] are too much for his #Cock
@Contact2 You're not making him edge yet, but he's already suffering!
@Contact2 I can see it in his eyes!
@Contact2 Please #ShortName, make him edge only @ShowVar[Domme_amount_of_edges] times!
Okay #Contact2. You convinced me
But only for this time #Contact2
Next time you won't be so lucky #PetName...
You should thank #Contact2 #SubName
She really saved your #Ass! @Timeout(7, I didn't hear the magic word!)
[thank you,thanks,merci] @Contact2 You're welcome #SubName! @SetVar[Domme_amount_of_edges]=[#Var[Domme_amount_of_edges]]
@DifferentAnswer I didn't hear the magic word @RT(#SubName, #PetName)!
Now you owe us @ShowVar[Domme_amount_of_edges] edges @Goto(Start_edging)
(I didn't hear the magic word!)
I didn't hear the magic word #PetName!
I told you to thank #Contact2 for being so #Kind! @Wait(3)
Now you will edge @ShowVar[Sub_amount_of_edges] times as punishment for your @RT(rudeness, lack of good manners)!
@NullResponse @SetVar[Domme_amount_of_edges]=[#Var[Sub_amount_of_edges]] @Goto(Start_edging)
(Add_some_more)
@Contact3 Since you @RT(are #Gonna do, MUST do) what we decide, I decided you are #Gonna @RT(edge, #Stroke to the #EdgeNoun, get yourself #NearTheEdge, #Stroke yourself #NearTheEdge) for us @RT(longer, a little longer, a bit more, more)
@NullResponse @ChangeVar[Domme_amount_of_edges]=[Sub_amount_of_edges]+[5]
(Start_edging)
@Group(D2) @NullResponse @Chance50(Contact2 is Domme)
@Group(D3) @NullResponse @Chance50(Contact3 is Domme)
@NullResponse @SetDomme(Domme)
#Edge @RTOff @Edge(NoHold) @Goto(Command_centre)
(Contact2 is Domme)
@NullResponse @SetDomme(2) @Goto(Command_centre)
(Contact3 is Domme)
@NullResponse @SetDomme(3) @Goto(Command_centre)
(Start_edging_for_the_last_time)
@Group(D2) He's all yours #Contact2 @RTOff
@Group(D2) @Contact2 Get ready #SubName!
@Group(D2) @NullResponse @SetDomme(2)
@Group(D2) #Edge @RTOff @Edge(Hold) @Goto(Command_centre)
@Group(D3) He's all yours #Contact3 @RTOff
@Group(D3) @Contact3 Get ready #SubName!
@Group(D3) @NullResponse @SetDomme(3)
@Group(D3) @NullResponse @Chance20(Long_edge) @Chance10(Extreme_edge)
@Group(D3) #Edge @RTOff @Edge(Hold) @Goto(Command_centre)
@NullResponse @Chance10(Long_edge) @Chance05(Extreme_edge)
#Edge @RTOff @Edge(Hold) @Goto(Command_centre)
(Long_edge)
@Group(D3) #Edge @RTOff @Edge(LongHold,HoldTaunts) @Goto(Command_centre)
#Edge @RTOff @Edge(LongHold,HoldTaunts) @Goto(Command_centre)
(Extreme_edge)
@Group(D3) #Edge @RTOff @Edge(ExtremeHold,HoldTaunts) @Goto(Command_centre)
#Edge @RTOff @Edge(ExtremeHold,HoldTaunts) @Goto(Command_centre)
(Command_centre)
@NullResponse @RapidCodeOn
@NullResponse @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]-[1]
@NullResponse @If[Domme_amount_of_edges]=[1]Then(One_last_edge_to_give)
@NullResponse @If[Domme_amount_of_edges]=[0]Then(Finished_edging)
@NullResponse @RapidCodeOff
@NullResponse @Goto(Boob Cooldown, Boob Cooldown 2, Butt Cooldown, Butt Cooldown 2, Could Let You Rest, Edge Count, Even When These Edges Are Done, I Could Let You Rest, I Love Playing Games, It's Kinda Funny, Know What'd Be Funny, Pause For Edge Count, Probably In A Hurry, Stare At This Picture, This Many Edges Left, Wait For It, Wait For It JK, We Should Play More, Who Has A Nicer Ass, Who owns that cock)
(Boob Cooldown)
#LetTheEdgeFade
I think you could use some recovery time @Chance50(Boob 2)
But I wouldn't want you to get bored, so...
Here's some #Boobs for you to look at while you wait #Grin @ShowBoobsImage @LockImages
I know guys like a nice, full pair of #Boobs
Just like I like a nice, full pair of #Balls #Lol
And yours aren't gonna get any fuller staring at that picture, so... @UnlockImages @Goto(Start_edging)
(Boob 2)
But I don't want you to get <i>too</i> comfortable, so here's some #Boobs #Lol @ShowBoobsImage @LockImages
Yeah, making #Boobs appear is kinda like my super power
Just like it's <i>your</i> kryptonite #Grin
Making you suffer and writhe
Making you weaker for me
And making it all the more vicious 
When I tell you to edge again @UnlockImages @Goto(Start_edging)
(Boob Cooldown 2)
Here's some more #Boobs for you to relax to #Grin @ShowBoobsImage @LockImages @Chance50(Then Again Boob)
Maybe relax isn't the best word
Suffer to?
Squirm to?
Ache to?
Fuck it @RapidTextOn
Let's just go with all of the above #Lol @UnlockImages @Goto(Start_edging)
(Then Again Boob)
Just kidding #Lol @RapidTextOn @UnlockImages @Goto(Start_edging)
(Butt Cooldown)
#LetTheEdgeFade
I think I'll let you relax for a minute @Chance50(Butt 2)
While you stare at this sexy ass and try not to squirm #Grin @ShowButtImage @LockImages
I bet you're looking at it and thinking
"Fuck, do I or don't I want to stroke to that?"
Don't worry #PetName
You won't have to debate that for very much longer #Lol @UnlockImages @Goto(Start_edging)
(Butt 2)
Assuming you even <i>can</i> relax while staring at an ass this hot #Lol @ShowButtImage @LockImages
Try not to squirm too much though
You don't have much of a break until the next edge
And that #Cock needs to recover if it's going to finish the remaining @ShowVar[Domme_amount_of_edges] #Grin
Then again
Maybe I don't <i>want</i> you to recover
Maybe I just want you to suffer, so... @UnlockImages @Goto(Start_edging)
(Butt Cooldown 2)
Here's another sexy ass to cool down to #Grin @ShowButtImage @LockImages @Chance50(Then Again Butt)
Just follow the shape of her curves
Imagine how how her ass would feel in your palms
Or the moans she would make if you spanked it
Me, on the other hand...
I would rather hear the moans <i>you</i> make having to edge again #Grin @UnlockImages @Goto(Start_edging)
(Then Again Butt)
Then again, you'll never finish your edges ataring at butts all day, so... @UnlockImages @Goto(Start_edging)
(Could Let You Rest)
I could let you rest for a minute @Chance50(You Could Probably Use It)
But I won't #Grin @RapidTextOn @Goto(Start_edging)
(You Could Probably Use It)
You could probably use it
But the more you rest, the more that desperation's gonna fade, so... @RapidTextOn @Goto(Start_edging)
(Edge Count)
#LetTheEdgeFade
@ShowVar[Domme_amount_of_edges] edges left to go
I wonder what's harder on you
Doing these edges for me
or the things I do to you between each one #Grin @Goto(Start_edging)
(Even When These Edges Are Done)
#LetTheEdgeFade
Even when these edges are done
Your #Cock still won't be free of #Me @Chance50(Stay In Debt)
I might let you have a little break
Or I might just make you keep on edging for me @RapidTextOn
Just because I can #Grin @RapidTextOff @Goto(Start_edging)
(Stay In Debt)
You can pay off all the edges you want
But at the end of the day when the stroking is done
And you're throbbing, aching with desperation
That #Cock still belongs to me #Grin @Goto(Start_edging)
(I Could Let You Rest)
I could let you rest for a bit @Chance50(You Gotta Be Aching)
But I just don't fucking want to #Grin @Goto(Start_edging)
(You Gotta Be Aching)
I mean, you <i>gotta</i> be aching right now 
But oh yeah @RapidTextOn
That's kinda the point #Lol @Goto(Start_edging)
(I Love Playing Games)
#LetTheEdgeFade
I love playing games like this @Chance50(Board Game Talk)
The choices...
The consequences...
It's nothing I can't make you do already
But I love knowing each of these edges, well
You brought them on yourself #Grin @Goto(Start_edging)
(Board Game Talk)
If we ever played board games together
I'd make sure every game would have some element of risk to it
A certain amount of denial if you lose
Edging every time I rolled a six
You don't even wanna know what I would do to you for rolling doubles #Grin @Goto(Start_edging)
(It's Kinda Funny)
It's kinda funny @Chance50(Thought of Debt)
I don't need games like this to make you edge
But it's just so much fun playing games when there's something at stake #EmoteHappy @Chance50(Denial On The Line)
@NullResponse @Goto(Start_edging)
(Thought of Debt)
The thought of you being in debt
And the only way you can pay it off is to edge
I think I would be a pretty good edge collector
Practice makes perfect after all #Grin @Goto(Start_edging)
(Denial On The Line)
Maybe next time we'll play for even higher stakes
Like when... @RapidTextOn
Or if...
You get to cum again #Grin @RapidTextOff @Goto(Start_edging)
(Know What'd Be Funny)
#LetTheEdgeFade
You know what would be funny? @Chance50(This Would Be Funny)
If after you were done giving me these edges
I made you edge some more for me @RapidTextOn
Just because I can #Grin @Goto(Start_edging)
(This Would Be Funny)
This... @RapidTextOn @Goto(Start_edging)
(Pause For Edge Count)
#LetTheEdgeFade
This is how many edges you have left -> @ShowVar[Domme_amount_of_edges] @Goto(This is Ass, This is Boobs, This is Random Pic)
(This is Ass)
This is a sexy ass @ShowButtImage @Goto(This Is Me Telling You To Edge)
(This is Boobs)
This is a pair of #Boobs @ShowBoobsImage @Goto(This Is Me Telling You To Edge)
(This is Random Pic)
This is a hot fucking picture I just found @ShowBlogImage
(This Is Me Telling You To Edge)
And <i>this</i> is me telling you to edge again @RapidTextOn @Goto(Start_edging)
(Probably In A Hurry)
You're probably in a hurry to finish these edges, so... @RapidTextOn @Goto(Start_edging)
(Stare At This Picture)
Now just stare at this picture until I tell you to edge again @ShowBlogImage @Wait(#Random(15,60)) @Goto(Start_edging)
(This Many Edges Left)
@ShowVar[Domme_amount_of_edges] edges left #SubName @Wait(#Random(5,20)) @Goto(Start_edging)
(Wait For It)
Wait for it... @Wait(#Random(5,20)) @Chance20(Start_edging)
<i>Wait</i> for it... @Wait(#Random(5,20)) @Chance40(Start_edging)
Keep waiting for it... @Wait(#Random(5,20)) @Chance60(Start_edging)
<i>Almost</i> there... @Wait(#Random(5,20)) @Chance80(Start_edging)
#SubName... @Wait(#Random(5,20)) @Goto(Start_edging)
(Wait For It JK)
Wait for it... @Chance50(Fuck That)
Just kidding #Lol @RapidTextOn @Goto(Start_edging)
(Fuck That)
Fuck that #Lol @RapidTextOn @Goto(Start_edging)
(We Should Play More)
We should play games like this more often @Chance50(Direct Control)
I like the competition
Not knowing the outcome
Maybe I'll win big and score a lot of edges
Maybe you'll get lucky and score a lot of tokens
Either way, you have to come back to chat with me eventually
And that's when I show you that house <i>always</i> wins #Grin @Goto(Start_edging)
(Direct Control)
I know I have to give up a little direct control
But I think it's kinda hot leaving the fate of your #Cock up to chance once in a while
How much pleasure you feel @RapidTextOn
How much agony you endure
All down to the roll of the dice
The flip of a card
Holding your breath as your entire destiny unravels in a second @RapidTextOff
All it takes to feel a rush like that...
Is for the stakes to be high enough #Grin @Goto(Start_edging)
(Who Has A Nicer Ass)
#LetTheEdgeFade
Who has a nicer ass: @RapidTextOn
Me
or this girl? @ShowButtImage @RapidTextOff @LockImages
[you] So you think my ass is better... @Goto(Good Thing Asskisser) @UnlockImages
[she, her, that] Oh really #Lol
@DifferentAnswer Me or her #SubName?
I appreciate your honesty #SubName #EmoteHappy @SetVar[Domme_amount_of_edges_Add]=[#Random(5,10)]
But I still added @ShowVar[Domme_amount_of_edges_Add] edges to what you owe me for not picking mine :P @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]+[Domme_amount_of_edges_Add] @UnlockImages
@NullResponse @Goto(Start_edging)
(Good Thing Asskisser)
I guess that's a good thing
Since you apparently like to kiss it so much #Lol @Goto(Start_edging)
(Who owns that cock)
#LetTheEdgeFade
@RT(Let me ask you a question, Let me ask you something, I have a question for you, Your #DomHonorific has a question for you) @RT(#SubName, #PetName)
@RT(Who owns that #Cock?, Who's the owner of that #Cock?, That #Cock you have between your legs,, who owns it?)
#Me...
or you?
[you] @RT(That's right my #PetName!, #Good, That's how a proper #PetName behaves...)
[me, I] I don't think so... @Goto(I don't think so)
@DifferentAnswer #Me or you @RT(#SubName, #PetName)?
@RT(Since it's my #Cock,, I want you to #ReachTheEdge, And now edge!, Prepare to #ReachTheEdge) @Goto(Command center)
(I don't think so)
@RT(Are you sure #PetName?, I don't think so..., I'm not so sure about it)
@RT(If you were the owner you wouldn't be here #Stroking and #Edging for #Me, You wouldn't be here #Stroking and #Edging for #Me if what you just said were true, If you were right you wouldn't be here #Stroking that #Cock in front of #Me with your hand)
@RT(instead you would be doing this for your girlfriend/wife, but you would be fucking a real woman, you would be pounding a real #Pussy #Now, you would be with your woman fucking her hard in all her holes...)
However, since that #Cock belongs to #Me I just added a few edges to the total amount you owe me @ChangeVar[Domme_amount_of_edges]=[Domme_amount_of_edges]+[#Random(5,10)] @Goto(Command center)
(One_last_edge_to_give)
I could let you rest for a bit @Chance50(You Gotta Be Aching last time)
But I just don't fucking want to #Grin @Goto(Start_edging_for_the_last_time)
(You Gotta Be Aching last time)
I mean, you <i>gotta</i> be aching right now 
But...
yeah @RTOn
That's kinda the point #Lol @Goto(Start_edging_for_the_last_time)
(Finished_edging)
#LetTheEdgeFade
@Group(D2) @NullResponse @SetDomme(Domme)
@Group(D3) @NullResponse @SetDomme(Domme)
@Group(D2) @Contact2 That was the last edge you owed us #SubName
@Group(D2) @Contact2 I hope you had as much fun as we did #EmoteHappy
@Group(D3) @Contact3 That was the last edge you owed us #SubName
@Group(D3) @Contact3 I hope you had as much fun as we did #EmoteHappy
@Group(D2) @NullResponse @Goto(Delete)
@Group(D3) @NullResponse @Goto(Delete)
That was the last edge you owed me #SubName
I hope you had as much fun as I did #EmoteHappy
(Delete)
@NullResponse @DeleteVar[Domme_amount_of_edges,Domme_amount_of_edges_2,Domme_amount_of_edges_Add,Sub_amount_of_edges] @Goto(Goodbye_time)
(Contact3_CBT_Game1)
@Contact3 This game is called <i>edges&ballbusting</i>
Sounds interesting...
@Contact3 As the name says, you, @RT(#PetName,#SubName), are #Gonna edge... @RTOn
And bust your #Balls in your cooldown time
@Contact3 That's right #ShortName! @RTOff
I like it #Contact3!
Do you like it @RT(#PetName,#SubName)?
@Contact3 He doesn't have to like it #ShortName
@Contact3 #YoureGoingToDoIt
@Contact3 Now #DomName, choose the number of edges you want him to do
@NullResponse @RapidCodeOn
@NullResponse @SetVar[tgr8_Game1_CBT_min]=[#Random(8,12)] @SetVar[tgr8_Game1_CBT_max]=[#Random(15,20)]
@NullResponse @SetVar[Game1_number_of_edges]=[#Random(#Var[tgr8_Game1_CBT_min],#Var[tgr8_Game1_CBT_max])]
@NullResponse @DeleteVar[tgr8_Game1_CBT_min,tgr8_Game1_CBT_max]
@NullResponse @RapidCodeOff
I chose
@Contact3 Good
@Contact3 Now that we have the number of edges we need another number
The cooldown time...
@Contact3 Exactly
Chose @SetVar[Game1_cooldown_time]=[#Random(20,30)]
@Contact3 Do you want to tell him the numbers you chose? @Chance50(do_not_tell_Game1)
(tell_Game1)
Yes
The number of edges I thought for you #SubName is: @ShowVar[Game1_number_of_edges]
While your cooldown time is: @ShowVar[Game1_cooldown_time] seconds @Goto(Continue_Game1)
(do_not_tell_Game1)
No
I want to keep them for me #Contact3 @Goto(Continue_Game1)
(Continue_Game1)
@Contact3 Now comes the ballbusting part...
@Contact3 In your cooldown time I want you to slap your #Balls <i>HARD<i> @RT(3,6) times @RT(#PetName,#SubName)
It's #Gonna be a lot of #CBT #Contact3...
@Contact3 I know... I know...
@Contact3 That's why I like so much this game #Grin
@Contact3 At the end, all he's #Gonna able to feel will be @RT(ache, pain)...
@Contact3 A lot of @RT(ache, pain) due to all that #CumNoun built up in those aching #Balls from all that #CBT
You're very cruel #Contact3! @RTOn
@Contact3 No
@Contact3 I'm not
@Contact3 That's what he deserves @RTOff
@Contact3 That's what a #PetName deserves
@Contact3 Am I right #PetName?
[yes] @Contact3 #Good
[no] @Contact3 Oh well. You just added 5 more edges to what you owe us #SubName @ChangeVar[Game1_number_of_edges]=[Game1_number_of_edges]+[5]
@DifferentAnswer @Contact3 #YesorNo
#Contact3 I think you should have the honor of edging him
@Contact3 Are you sure #ShortName?
@Contact3 You're his #DomHonorific. I don't want to...
Don't worry #Contact3
My toys are your toys, you know that
However, I like watching my #PetName being dominated by another #DomHonorific, from time to time...
@Contact3 Well #SubName...
@Contact3 It's only #Me and you now... @Goto(Edge_no_hold, Edge_hold) @RTOn
(Edge_no_hold)
@Contact3 #Edge @Edge(NoHold) @MultipleEdges(#Var[Game1_number_of_edges],#Var[Game1_cooldown_time])
@NullResponse @RTOff @Goto(End_Game1)
(Edge_hold)
@NullResponse @RTOff
@Contact3 I almost forgot to tell you
@Contact3 I'm #Gonna make you hold the last edge
@Contact3 What I still don't know is how long @RT(<i>YOU</i> are #Gonna hold it, I'm #Gonna make you hold it)!
@Contact3 Well, I guess we'll find out soon #Grin @Chance05(Long_hold) @Chance05(Extreme_hold) @Goto(Normal_hold) @RTOn
(Normal_hold)
@Contact3 #Edge @Edge(Hold) @MultipleEdges(#Var[Game1_number_of_edges],#Var[Game1_cooldown_time])
@NullResponse @RTOff @TempFlag(tgr8_Game1_normal_hold) @Goto(End_Game1)
(Long_hold)
@Contact3 #Edge @Edge(LongHold) @MultipleEdges(#Var[Game1_number_of_edges],#Var[Game1_cooldown_time])
@NullResponse @RTOff @TempFlag(tgr8_Game1_long_hold) @Goto(End_Game1)
(Extreme_hold)
@Contact3 #Edge @Edge(ExtremeHold) @MultipleEdges(#Var[Game1_number_of_edges],#Var[Game1_cooldown_time])
@NullResponse @RTOff @TempFlag(tgr8_Game1_extreme_hold)
(End_Game1)
@Contact3 You made it @RT(#PetName,#SubName)! @DeleteVar[Game1_number_of_edges,Game1_cooldown_time]
@Contact3 Look how wet your #Pussy is #DomName!
You made me really #DomHorny #Contact3!
It was really #Hot!
And that last edge...
Wow!
I think I came #Random(3,6) times watching you two
@Contact3 You enjoyed the show, huh?!
Yeah, definitely... #EmoteHappy
@Contact3 I can't say the same for #SubName here @CheckFlag(Game1_normal_hold) @CheckFlag(Game1_long_hold) @CheckFlag(Game1_extreme_hold) @Goto(Goodbye_time)
(Game1_normal_hold)
@Contact3 You seem a bit shocked @RT(#PetName,#SubName)
@Contact3 It was only a normal hold
@Contact3 #ShortName you should let me train @SubName to hold edges
@Contact3 You can't afford to have a #PetName that is barely able to hold a normal edge
Yeah, you're right #Contact3
I should really let you train him! @Goto(Goodbye_time)
(Game1_long_hold)
@Contact3 He seems a bit shocked, don't you think #DomName?
@Contact3 That long edge was too much to hold for you?
@RT(It looks like that last edge was too much for him, It seems so #Contact3)
Look #Contact3 all these veins pumping blood to that #Cock head
@Contact3 I love making #Cock throbbing...
@Contact3 I bet that just a little gentle touch to your #Cock sweet spot would make you #Cum straight away #SubName...
@Contact3 But I prefer slaves with a big pair of blue balls!!! #Grin
And this is only the beginning #Contact3
<i>Real</i> #Stroking hasn't started yet!
@Contact3 Well, then #SubName...
@Contact3 Looks like your #Cock is #Gonna #Leak a lot #GeneralTime #Grin @Goto(Goodbye_time)
(Game1_extreme_hold)
@Contact3 He seems a bit shocked
@Contact3 That extreme hold must have consumed you
It looks like that last edge was too much for him
Look #Contact3 all these veins pumping blood to that #Cock head
@Contact3 I love making #Cock throbbing...
@Contact3 I bet that just a little gentle touch to your #Cock sweet spot would make you #Cum straight away #SubName...
@Contact3 But I prefer slaves with a @RT(huge, big) @RT(pair,set) of blue #Balls!!! #Grin
And this is only the beginning #Contact3
<i>Real</i> #Stroking hasn't started yet!
@Contact3 Well, then #SubName...
@Contact3 Looks like your #Cock is #Gonna #Leak a lot #GeneralTime #Grin @Goto(Goodbye_time)
(Contact3_CBT_Game2)
@Contact3 This game is divided in rounds
@Contact3 Each round has the same amount of edges
@Contact3 but different cooldown times
@Contact3 So #ShortName...
Tell me #Contact3. What do I need to do?
@Contact3 I want you to think of two numbers
@Contact3 The first will @RT(determine,decide, give us, indicate, specify, designate) the number of rounds that #SubName @RT(has to face, will have to face)
@Contact3 The second will @RT(determine,decide, give us, indicate, specify, designate) the number of edges per round
I chose the number of rounds #Contact3 @SetVar[Game2_number_of_rounds]=[#Random(4,7)]
@Contact3 Good. Now the number of edges per round #ShortName
@Variable[Game2_number_of_rounds]=[4] Ok, I decided @SetVar[Game2_number_of_edges_per_round]=[#Random(3,5)]
@Variable[Game2_number_of_rounds]=[5] Ok, I decided @SetVar[Game2_number_of_edges_per_round]=[#Random(3,4)]
@Variable[Game2_number_of_rounds]=[6] Ok, I decided @SetVar[Game2_number_of_edges_per_round]=[#Random(2,3)]
@Variable[Game2_number_of_rounds]=[7] Ok, I decided @SetVar[Game2_number_of_edges_per_round]=[#Random(2,3)]
@Contact3 Do you want to tell @SubName the numbers you chose? @Chance50(do_not_tell_Game2)
(tell_Game2)
Yes
The number of rounds I decided is @ShowVar[Game2_number_of_rounds]
While the number of edges per round you owe us is @ShowVar[Game2_number_of_edges_per_round] @Goto(Prepare_for_Game2_start)
(do_not_tell_Game2)
No. I want to keep them for me #Contact3
Do you need my help for this game or can I relax and watch #Contact3?
@Contact3 Well the game is divided in rounds so we can alternate
Fantastic!
@Contact3 While we take care of your #Cock
@Contact3 You are #Gonna take care of your #Balls, understand?
[yes] @Contact3 #Good
[no] @Contact3 #YoureGoingToDoIt
@AcceptAnswer @Contact3 #YoureGoingToDoIt
@Contact3 I want you to @RT(slap, beat, punch) your #Balls <i>HARD<i> @RT(2,4) times during your cooldown time
If it didn't #Hurt, <i>it does NOT count</i>!
@Contact3 @RT(This should help you focus on not #Cumming, This should keep you focused on not #Cumming)
(Prepare_for_Game2_start)
Let's start then! @Goto(Game2_cooldown_time1,Game2_cooldown_time2,Game2_cooldown_time3)
(Game2_cooldown_time1)
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_cooldown_time]=[#Random(20,25)] @TempFlag(tgr8_Game2_cooldown_time1) @Goto(Edged_by_Domme,Edged_by_Contact3)
@NullResponse @RapidCodeOff
(Game2_cooldown_time2)
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_cooldown_time]=[#Random(10,15)] @TempFlag(tgr8_Game2_cooldown_time2) @Goto(Edged_by_Domme,Edged_by_Contact3)
@NullResponse @RapidCodeOff
(Game2_cooldown_time3)
@NullResponse @RapidCodeOn
@NullResponse @SetVar[Game2_cooldown_time]=[#Random(3,5)] @TempFlag(tgr8_Game2_cooldown_time3) @Goto(Edged_by_Domme,Edged_by_Contact3)
@NullResponse @RapidCodeOff
(Edged_by_Domme)
@RT(It's my turn now!,It's my turn to edge #SubName now!,My turn!,Get ready to edge for #Me!,Get ready to edge for #Me,, #SubName!) @RTOn @Goto(Edged_by_Domme_mode1, Edged_by_Domme_mode2)
(Edged_by_Domme_mode1)
#Edge @Edge(NoHold) @MultipleEdges(#Var[Game2_number_of_edges_per_round],#Var[Game2_cooldown_time]) @RTOff @Goto(Game2_command_centre)
(Edged_by_Domme_mode2)
#Edge @Edge(Hold) @MultipleEdges(#Var[Game2_number_of_edges_per_round],#Var[Game2_cooldown_time]) @RTOff @Goto(Game2_command_centre)
(Edged_by_Contact3)
@Contact3 @RT(It's my turn now!,It's my turn to edge #SubName now!,My turn!,Get ready to edge for #Me!,Get ready to edge for #Me,, #SubName!) @RTOn @Goto(Edged_by_Contact3_mode1,Edged_by_Contact3_mode2)
(Edged_by_Contact3_mode1)
@Contact3 #Edge @Edge(NoHold) @MultipleEdges(#Var[Game2_number_of_edges_per_round],#Var[Game2_cooldown_time]) @RTOff @Goto(Game2_command_centre)
(Edged_by_Contact3_mode2)
@Contact3 #Edge @Edge(Hold) @MultipleEdges(#Var[Game2_number_of_edges_per_round],#Var[Game2_cooldown_time]) @RTOff @Goto(Game2_command_centre)
(Game2_command_centre)
@NullResponse @RapidCodeOn
@NullResponse @If[Game2_number_of_rounds]=[0]Then(End_Game2)
@NullResponse @ChangeVar[Game2_number_of_rounds]=[Game2_number_of_rounds]-[1]
@NullResponse @Flag(tgr8_Game2_cooldown_time1) @DeleteFlag(tgr8_Game2_cooldown_time1) @Goto(Game2_cooldown_time2,Game2_cooldown_time3)
@NullResponse @Flag(tgr8_Game2_cooldown_time2) @DeleteFlag(tgr8_Game2_cooldown_time2) @Goto(Game2_cooldown_time1,Game2_cooldown_time3)
@NullResponse @Flag(tgr8_Game2_cooldown_time3) @DeleteFlag(tgr8_Game2_cooldown_time3) @Goto(Game2_cooldown_time1,Game2_cooldown_time2)
@NullResponse @RapidCodeOff
(End_Game2)
@Contact3 That was the last edge you owed us @RT(#PetName,#SubName)!
That was amazing #Contact3!
@Contact3 I bet you want to #Cum <i>soooo</i> desperately now #SubName...
You said it #Contact3!
@Contact3 He must have a massive load built up in those #Balls
Look at his throbbing #Cock!
I believe he's feeling all that #CumNoun trying to find its way out
Still he has to go against his instinct that tells him to #Cum
And keep it stored in those #Balls
@Contact3 I bet I could make you #Cum just with a gentle touch to your #Cock' sweet spot #SubName... @RTOn
But we prefer an obedient #PetName with a @RT(huge, big) @RT(pair,set) of blue #Balls!
@Contact3 Like yours #SubName! @RTOff
@Contact3 Will you let him @RT(rest,#RelaxAndBreathe) now #ShortName?
Just a bit, I have other plans for him #GeneralTime
This is only the beginning #Contact3
Real #Stroking hasn't started yet!
@Contact3 Well then #SubName...
@Contact3 Looks like your #Cock is #Gonna #Leak and suffer a lot today #SubName... #Grin @Goto(Goodbye_time)
(Goodbye_time)
@Group(D2) @Contact2 Well, #DomName, I have to go now
@Group(D2) Already?
@Group(D2) I was hoping you could stay with us a bit more #EmoteSad
@Group(D2) @Contact2 I promise next time I'll spend more time with you #ShortName...
@Group(D2) @Contact2 ...and obviously with you #SubName #Grin
@Group(D2) Ok then... @FollowUp50(@Contact2 Don't be so sad #DomName! Maybe I could even come back later... @FollowUp50(@Contact2 Who knows...))
@Group(D2) @Contact2 #Bye #DomName!
@Group(D2) #Bye #Contact2!
@Group(D2) @Contact2 #Bye #SubName! @Wait(2)
@Group(D2) @NullResponse @RemoveContact2
@Group(D3) @Contact3 Well, #DomName, I have to go now
@Group(D3) Already?
@Group(D3) I was hoping you could stay with us a bit more #EmoteSad
@Group(D3) @Contact3 I promise next time I'll spend more time with you #ShortName...
@Group(D3) @Contact3 ...and obviously with you #SubName #Grin
@Group(D3) @Contact3 You know, I also have some responsibilities...
@Group(D3) Your slaves need you...
@Group(D3) @Contact3 But I had fun playing with you and #SubName #GeneralTime
@Group(D3) @Contact3 So if you want to invite me again we could play other evil games #GrinEvil
@Group(D3) @Contact3 I have many other cruel ideas to #Torture @RT(#SubName,your #PetName)... #Grin
@Group(D3) I can't wait until next time #Contact3!
@Group(D3) @Contact3 Yeah, I know... But I promise it'll be worth #ShortName
@Group(D3) Ok then... @FollowUp50(@Contact3 Don't be so sad #DomName! Maybe I could even come back later... @FollowUp50(@Contact3 Who knows...))
@Group(D3) @Contact3 #Bye #DomName!
@Group(D3) #Bye #Contact3!
@Group(D3) @Contact3 #Bye #SubName! @Wait(2)
@Group(D3) @NullResponse @RemoveContact3
@RT(So far it has been a great day,, but I think it could still improve, So far it has been a great day,, but I think we could still have many surprises) @RT(#SubName,#PetName)
I'll give you a few seconds to recover now
Then you'll go @RT(back, right back, back immediately) to @RT(#Stroking, real #Stroking, <i>real</i> #Stroking) @Wait(#Random(40,60)) @Goto(Start_stroking)
(No)
I appreciate your honesty #SubName #EmoteHappy @CheckFlag(tgr8_Rules_explained) @Goto(Explain_rules)
(tgr8_Rules_explained)
But I already explained you the rules and still you're not ready
What should I do with you?!
Actually I think I know what I'm #Gonna to do you... @Goto(Start_CBT,Warm_up_exercise_1,Warm_up_exercise_2)
(Explain_rules)
My rules are really simple
Actually, I only have one rule
<i>When a session starts @RT(your #Cock, that #Cock of mine, that #Cock, my #Cock) MUST @RT(be hard, be rock hard, be hard as rock, stand at attention, point to the sky, must greet #Me pointing at the sky, must greet #Me being hard, must greet #Me being rock hard, must greet #Me being hard as rock)</i>
Since it's the first time I explain you my rules you won't be punished
But remember...
You will not be given a second chance, understood? @SetFlag(tgr8_Rules_explained)
[yes, understand #DomHonorific, understood #DomHonorific, Ok #DomHonorific, ok #DomHonorific, Yes #DomHonorific, Understand #DomHonorific, Understood #DomHonorific, OK #DomHonorific] #Good!
@DifferentAnswer Do you understand #SubName?
I think you need a bit of warm_up #PetName... @Goto(Warm_up_exercise_1,Warm_up_exercise_2)

@Info Domme greets you and asks if you are ready to be teased. Written by: tigrotto. Special thanks: Daragorn, holaba_be
The reason I think it's there is because everything is working fine for the original Domme but when it switches to contact 3 in (Start_edging) a line from #LetTheEdgeFade is selected and the edge count is decreased in (Command_centre) without being told to edge. So the chat log is:

Christy: 4 edges left
Bobby: Just sit there and suffer while you think about how unbelievable that almost felt
Bobby: 3 edges left to go

See what I mean?
User avatar
markus
Explorer At Heart
Explorer At Heart
Posts: 669
Joined: Tue Nov 18, 2008 11:09 pm

Re: Tease AI: Community-Created Scripts

Post by markus »

Didn't tested, just a quick shot:

Code: Select all

(Start_edging)
@Group(D2) @NullResponse @Chance50(Contact2isDomme)
@Group(D3) @NullResponse @Chance50(Contact3isDomme)
@NullResponse @SetDomme(Domme)
#Edge @RTOff @Edge(NoHold) @Goto(Command_centre)
(Contact2isDomme)
@NullResponse @SetDomme(2) 
#Edge @RTOff @Edge(NoHold) @Goto(Command_centre)
(Contact3isDomme)
@NullResponse @SetDomme(3) 
#Edge @RTOff @Edge(NoHold) @Goto(Command_centre)
Instead of:

Code: Select all

(Start_edging)
@Group(D2) @NullResponse @Chance50(Contact2isDomme)
@Group(D3) @NullResponse @Chance50(Contact3isDomme)
@NullResponse @SetDomme(Domme)
#Edge @RTOff @Edge(NoHold) @Goto(Command_centre)
(Contact2isDomme)
@NullResponse @SetDomme(2) @Goto(Command_centre)
(Contact3isDomme)
@NullResponse @SetDomme(3) @Goto(Command_centre)
roots8834
Explorer
Explorer
Posts: 16
Joined: Tue Oct 28, 2014 7:07 pm

Re: Tease AI: Community-Created Scripts

Post by roots8834 »

markus wrote: Tue Dec 14, 2021 2:34 pm

Code: Select all

(Start_edging)
@Group(D2) @NullResponse @Chance50(Contact2isDomme)
@Group(D3) @NullResponse @Chance50(Contact3isDomme)
@NullResponse @SetDomme(Domme)
#Edge @RTOff @Edge(NoHold) @Goto(Command_centre)
(Contact2isDomme)
@NullResponse @SetDomme(2) 
#Edge @RTOff @Edge(NoHold) @Goto(Command_centre)
(Contact3isDomme)
@NullResponse @SetDomme(3) 
#Edge @RTOff @Edge(NoHold) @Goto(Command_centre)
Thanks I'll give this a try, I was thinking of this but I don't know what @RTOff is. Just a general question what's the difference between @Edge(Hold) and @EdgeHold() ?

Edit: I was looking to try and use @PlayVideo so I don't have to manually look for videos, is there a way to make it so that once a video is picked tease ai continues in the background just like when a video is manually loaded?

Would a file in Responses like this work?:

Code: Select all

[choose a video for me]
[All]
@PlayVideo @JumpVideo(5)
[All End]
User avatar
markus
Explorer At Heart
Explorer At Heart
Posts: 669
Joined: Tue Nov 18, 2008 11:09 pm

Re: Tease AI: Community-Created Scripts

Post by markus »

roots8834 wrote: Tue Dec 14, 2021 3:45 pm Thanks I'll give this a try, I was thinking of this but I don't know what @RTOff is. Just a general question what's the difference between @Edge(Hold) and @EdgeHold() ?
In Tai in the menu-stripe, check out 'Tools' -> 'Command Guide', ... it's not totally up-to-date, but you'll find a lot of info there, also the answers to your questions. ;-)
Edit: I was looking to try and use @PlayVideo so I don't have to manually look for videos, is there a way to make it so that once a video is picked tease ai continues in the background just like when a video is manually loaded?
What you are looking for is the '@PlayVideoNoWait[X]' and the '@PlayVideoNoWait(X)'- Command, check out the release notes of the patch here:

viewtopic.php?f=26&t=23259
Would a file in Responses like this work?:
Just test it! :-P
Maybe you should add some text or a @NullResponse to that line.

Best greetings,
Markus
roots8834
Explorer
Explorer
Posts: 16
Joined: Tue Oct 28, 2014 7:07 pm

Re: Tease AI: Community-Created Scripts

Post by roots8834 »

markus wrote: Tue Dec 14, 2021 7:42 pm In Tai in the menu-stripe, check out 'Tools' -> 'Command Guide', ... it's not totally up-to-date, but you'll find a lot of info there, also the answers to your questions. ;-)
Thanks for that I didn't know it was there and it's helped a lot fixing scripts.
What you are looking for is the '@PlayVideoNoWait[X]' and the '@PlayVideoNoWait(X)'- Command, check out the release notes of the patch here:

viewtopic.php?f=26&t=23259
Perfect this command is amazing for immersion.

I'm now encountering this error:

ERROR: Out of memory. :::: Error loading image: Q:\Tease AI 0.54.9 + Tease AI Fury 3.5.2020\Images\Christy Mack [tagged]\Christy\3\cm42p-8510.jpg

Weirdly, it's not consistent because some pictures from the folders work fine whereas other folders I haven't seen used before. I've gone into the individual folders and found the images that had these errors and they open fine. Oh and I got these pictures from a post on one of the forums here with the pictures pre-tagged.

Any ideas?

Hope you had a great Christmas and New Years :-D
User avatar
markus
Explorer At Heart
Explorer At Heart
Posts: 669
Joined: Tue Nov 18, 2008 11:09 pm

Re: Tease AI: Community-Created Scripts

Post by markus »

roots8834 wrote: Fri Jan 07, 2022 6:48 pm I'm now encountering this error:

ERROR: Out of memory. :::: Error loading image: Q:\Tease AI 0.54.9 + Tease AI Fury 3.5.2020\Images\Christy Mack [tagged]\Christy\3\cm42p-8510.jpg

Weirdly, it's not consistent because some pictures from the folders work fine whereas other folders I haven't seen used before. I've gone into the individual folders and found the images that had these errors and they open fine. Oh and I got these pictures from a post on one of the forums here with the pictures pre-tagged.

Any ideas?
Actually, no idea. :no:
Do you use these pictures as your domme-slideshow pictures or in other commands like @ShowImage[ ... ?
Does it happen when you run Tai for a while longer?
When this happens again, you could go to the folder 'ErrorLogs' and post that error-log file, I could take a look at it, ... but I cannot promise anything.
Hope you had a great Christmas and New Years :-D
Was quite ok under those pandemic-circumstances. :yes:
Hope you had a good time as well!

Best greetings,
Markus
Post Reply

Who is online

Users browsing this forum: Rar1197 and 6 guests