Azureballs wrote:What ever happened to the post orgasm torture option? I assume those would have been stroking scripts that run right after a sub's orgasm. That was a feature I was looking forward to when I saw the early screenshots.
I decided it was unnecessary to create a separate interrupt for it, since it's easier for scripters to include them in End scripts as part of the outcome if they wish
kopal37 wrote:So I've been working on a pretty basic entro... I can't seem to get the Bookmark module command to work. Is it a bug or is it me?
This isn't quite how Tease AI scripts work. They aren't meant to be one long script like this, they're meant to be smaller scripts that get called randomly over the course of a session with this progression:
Start -> (Taunts -> Module -> Link) -> End
The program starts with a random Start script, which all end with something like
- Start stroking #PetName @StartStroking
@End
So your entire Start script should look something like this:
- Hello #PetName
Are you nice and horny for me #GeneralTime? #Grin
[yes] Oh well, guess I'll just have to make it worse, #PetName
[no] Well, maybe we can fix that? #Grin
@DifferentAnswer Yes or no, Slave. #Grin
Start stroking @StartStroking
@End
This should be your entire Start script. Once it reaches the end, the program automatically moves into StrokeTaunts that the domme randomly says as the user strokes. When the domme decides the user has stroked enough (or they say they're close), the program moves into a Module. Modules are where you'd want to put the bulk of the script you've written. So you could create a Module that looks like this (and I've added some notes in those cursed squiggly brackets)
- Stop stroking for a second #PetName @StopStroking ###Note 1###
Just relax while I get some pictures together for our next game real quick #Grin
@NullResponse @SetVar[StrokesPerImage_Kop]=[5] ###Note 2###
@NullResponse @SetVar[PreviousEdgeGoal_Kop]=[2]
@NullResponse @SetVar[PrevEdgeCount_Kop]=[0]
So here's the deal, #PetName
I'm going to show you some of my favorite images,
And you're going to show them the proper amount of respect #Grin
You'll be stroking @ShowVar[StrokesPerImage_Kop] times on each
You may, however, double that if you think the current image is worth it. #Lol
I will decide when you've had enough. Understood?
[yes] Good, Let's get this engine purring! #Grin
[no] Should I punish you for not paying attention? I think so. #Grin @Goto(punish)
@DifferentAnswer Don't be cute. Answer the question.
Awesome, let's get started. @SetVar[EdgeGoal_Kop]=[5]
(loop)
@NullResponse @Chance50(ass)
@NullResponse @Goto(boob)
(punish)
So you thought you'd be cute, eh? @CBT
Still think you're cute? @CBT
Tell me, am I the most #Sexy woman you've ever seen, #PetName?
[yes] Good boy. We can begin now. @Goto(loop)
[no] Well, aren't you a glutton for punishment? #Grin
@DifferentAnswer I don't like indecision. Yes or no? ###Note 3###
In that case let's focus specifically on abusing that #Cock @CBTCock
And now we'll spend a little time tormenting those #Balls @CBTBalls
And since you decided to be disrespectful, I've decided not to play this game with you right now
Maybe if I'm in the mood for it, we'll try this again
@End
(boob)
#BBnB_Boobs @ShowBoobsImage @Wait(5)
#BBnB_Boobs @ShowBoobsImage @Wait(5)
#BBnB_Boobs @ShowBoobsImage @Wait(5) @Goto(Enditer)
(ass)
#BBnB_Ass @ShowButtImage @Wait(5)
#BBnB_Ass @ShowButtImage @Wait(5)
#BBnB_Ass @ShowButtImage @Wait(5)
(Enditer)
@NullResponse @ChangeVar[PrevEdgeCount_Kop]=[PrevEdgeCount_Kop]+[1]
That's @ShowVar[PrevEdgeCount_Kop] set of pictures so far
@NullResponse @If[PrevEdgeCount_Kop]>=[PreviousEdgeGoal_Kop]Then(End)
I'll have some more pictures that you can pay your respects to in a moment
But for now you can get back to paying your respects to me #Grin @BookmarkModule ###Notice @BookmarkModule placement###
@End
Actually, you won't be able to stop stroking for <i>too</i> long ###Note 4###
I do have some more pictures for you after all #Grin @Goto(loop)
(End)
@NullResponse @SetVar[EndCountMax]=[PreviousEdgeGoal_Kop]
@NullResponse @ChangeVar[PreviousEdgeGoal_Kop]=[PreviousEdgeGoal_Kop]+[1]
@NullResponse @SetVar[PrevEdgeCount_Kop]=[0]
Okay, that's enough with all the TnA #Grin
Besides, why settle for just boobs and butts
When there's sp many other sexy things I can torment you with? #Grin
@End
Note 1: The user wil always be stroking when a Module begins, so keep that in mind. Every module must include either @StopStroking or one of the @End Commands. A Module can never contain @StartStroking
Note 2: Make sure to include
@NullResponse with lines that are just running Commands, otherwise the domme will spit out a blank line
Note 3: I wouldn't put Commands like
@CBT here because the program will still be expecting an answer when it concludes, and it will affect the programs ability to process Responses while a Multiple Choice Branch is active
Note 4: BookmarkModule sets the domme to pick up here when the next Module starts, and she will automatically say to stop stroking before she does
I've reworked your script a bit to the above example to create something that should work with Tease AI, and point out some things about how the scripting works. This doesn't replicate the function of your script exactly, but this should be a good roadmap to getting it in working order. Let me know if you have any questions about it and I'll help any way I can. It also might not hurt to look over the Script Overview posts again, all of which are still on the first page of Art of Webteasing