Tease AI General Discussion

Webteases are great, but what if you're in the mood for a slightly more immersive experience? Chat about Tease AI and other offline tease software.

Moderator: 1885

pepez
Explorer At Heart
Explorer At Heart
Posts: 175
Joined: Sat Sep 14, 2013 6:05 pm

Re: Tease AI Open Beta

Post by pepez »

opiate wrote:Someone asked about modules(sorry still using my phone for net cirrently)
I haven't tried Swiss with v48 again yet... I think she should be plug and play now that chastity is fixed though. I'it looks like there will be a 48.4 relatively quickly, so I will release everything as IS (tested ans working with 47)
I do fully plan on updating to v48, which is mostly going to be changing a lot of my interrupts over to @Calls
I guess I should start updating my main post for features. She's a new kind of monster now lol.

I know there's plans on a rewrite going around, and Im kind of with the other guy (sorry, no quotes lol)
But I'll be hard pressed to ever take the time to update my AI to a new format regardless of the features
But who knows, some features might be too good to not have...

I want Monster :jacko: :shutup:
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 561
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI Open Beta

Post by Daragorn »

pepsifreak wrote:
Daragorn wrote:
pepsifreak wrote: So please continue to report any issues you may come across and I will take a look when I can.
Found a new bug.....the @SetDate() and @CheckDate() commands always give errors and crash the program....they were working fine in 48.2 (minor annoyance i know...i'll live them out for now but it would be nice to have back if possible :D)
Ah those commands stripped out their closing bracket which was needed for one of the fixes I added. Seems to be working now :)
I'll post a new link tomorrow at some point so keep trying to break things in the meantime.
Cool! Thanks, you fix bugs so fast :)
I've 2-3 other minor bugs annoyances for you then since you asked ehehe:

1- (present even before patch47, so not a new one) If you are in chastity and tell her something that makes her think you're on edge (for ex...pls free me i am so close to exploding -->"so close" is usually interpreted as edging) she goes to an _EDGING module...which is weird since you can't stroke or edge since you're in chastity....don't know if there is a way to make a check for chastity status and instead of moving to and _EDGING module just have her do nothing or taunt you with a phrase like (wow you can edge even when locked?)

2- (present since patch48) when resizing the chat windows, it works normally if you have the media panel opened....if you have the media panel closed, on ther contrary, and resize the chat window, it leaves a black space between where you type and the chat itself thus covering part of the chat messages (pressing twice the media panel to open/close it again fixes it)

3- (new from patch48.3) if you are in chastity and cause a @CallReturn() during a taunt cycle, the interrupt works correctly but when it ends and returns to the taunt cycle, the metronome stark playing like if it was a normal stroking cycle (infact the domme also says "now back to stroking" when returning). The program still know you are in chastity and uses chastity taunts instead of stroke taunts, but the metronome plays

4- (another old but present even in patch47) when you report a vitalsub assignement to the mistress (either completed or not), you get the right start from the apps\vitalsub\ files....but the assignement itself doesn't get cancelled and you have to manually do it by opening the file and cancelling it....it is quite annoying since everytime you use it you have to do this....it would be nice if the assignement would cancel itself from the list as expected (at least if completed i mean....it may sense to remain there if you didn't do it, but not if you completed it)
pepsifreak
Explorer At Heart
Explorer At Heart
Posts: 132
Joined: Fri May 08, 2009 8:50 pm
Gender: Male
Sexual Orientation: Straight

Re: Tease AI Open Beta

Post by pepsifreak »

Daragorn wrote:4- (another old but present even in patch47) when you report a vitalsub assignement to the mistress (either completed or not), you get the right start from the apps\vitalsub\ files....but the assignement itself doesn't get cancelled and you have to manually do it by opening the file and cancelling it....it is quite annoying since everytime you use it you have to do this....it would be nice if the assignement would cancel itself from the list as expected (at least if completed i mean....it may sense to remain there if you didn't do it, but not if you completed it)
Got all of them but this, care to elaborate more? Do you mean removing completed tasks? I'm not sure if that's the original intention but I tested with checking for a "*" in the name and deleting it if found and it seems to work. How about that?
User avatar
genome231
Explorer At Heart
Explorer At Heart
Posts: 699
Joined: Wed Nov 12, 2014 8:35 am

Re: Tease AI Open Beta

Post by genome231 »

Hey guys!

So currently working on some new scripts, targeting v. 48,3 but I will update them as the program gets updated :)
A few questions regarding script writing.
I've made a document with an overview of the different commands, learning them by reading other peoples scripts :)
So questions:

(1) How does the games work? Basicly when I read the scripts in modules, lets take the module "avoid for the edge" as an example, mid into it this line comes up:
"Let's play #Grin @PlayAvoidTheEdge" and the following line is "You made it!" where does the script goes? I cant seem to find where it goes :P and I kinda need to if I wanna create games :)

(2) The command "GotoDommeAppathy" can there only be one of them in the scripts? I tried having two of them in the same script but ofcourse it went back to the first, when it triggered the second time, basicly starting the module all over :P

(3) Everyone keeps talking about the CallReturn() function, can anyone explain to me what it is and what it does?

Regards
Genome
Tribute to 1885 & those involved with Tease-AI.
Thank you for spending time on this awesome project! :-)
Mat
Explorer At Heart
Explorer At Heart
Posts: 429
Joined: Sun Feb 26, 2012 8:34 pm
Gender: Male
Sexual Orientation: Straight
Location: UK

Re: Tease AI Open Beta

Post by Mat »

genome231 wrote:Hey guys!

So currently working on some new scripts, targeting v. 48,3 but I will update them as the program gets updated :)
A few questions regarding script writing.
I've made a document with an overview of the different commands, learning them by reading other peoples scripts :)
So questions:

(1) How does the games work? Basicly when I read the scripts in modules, lets take the module "avoid for the edge" as an example, mid into it this line comes up:
"Let's play #Grin @PlayAvoidTheEdge" and the following line is "You made it!" where does the script goes? I cant seem to find where it goes :P and I kinda need to if I wanna create games :)

(2) The command "GotoDommeAppathy" can there only be one of them in the scripts? I tried having two of them in the same script but ofcourse it went back to the first, when it triggered the second time, basicly starting the module all over :P

(3) Everyone keeps talking about the CallReturn() function, can anyone explain to me what it is and what it does?

Regards
Genome
The Avoid the Edge files are here:
\Tease AI\Scripts\Wicked Tease\Video\Avoid The Edge\
There's a taunts.txt for the taunts they play during the video and a folder called scripts, which is for when you edge. I think uses a random txt file in the folder.

I'm not sure about "GotoDommeAppathy"

Normally if you are in a script and it finds @Call(testModule) the script ends and jumps to testModule then chooses another script.
@CallReturn(testModule) would pause the current script, run through testModule then resume the original script.

As an example, the domme asks questions in chat, but your answers don't mean anything as they are just taunts. Whereas if you put @CallReturn(askQuestion) in a taunt it would run a module which could have the domme ask you a question and expect a reply, then go back to the original module. So you can add a bit of depth to them.

I was running a tease when the domme asked if I was horny, I answered that I was, not expecting a reply, but the dome then said something like "Good, it's only going to get worse" which makes it feel so much more immersive, it'd be good to change most of the taunts to use CallReturn instead. I think there's also a @Timeout(x, location) which you can put before a question so it skips to a location in a script if the user doesn't answer in x amount of seconds. This makes it so the domme can ask a question and if you don't answer she can respond to it.
User avatar
genome231
Explorer At Heart
Explorer At Heart
Posts: 699
Joined: Wed Nov 12, 2014 8:35 am

Re: Tease AI Open Beta

Post by genome231 »

Hi Mat

Now it suddenly makes sense why everyone is so excited about the call and callreturn functions!
It brings a lot of depth! Very intresting :D ideas are already sparking.
Thank you for the reply :)

Another question(idea) that just popped into my head:
Is it possible to call "inactive" modules/links/etc, and by inactive i'm referring to modules/links/etc that are in my tease but in settings I havent marked them yet.
What i'm hoping for would be to have certain modules or similar that wouldn't be part of the "random" pool, but only be called when a certain active module/s calls upon it.

Regards
Genome
Tribute to 1885 & those involved with Tease-AI.
Thank you for spending time on this awesome project! :-)
Mat
Explorer At Heart
Explorer At Heart
Posts: 429
Joined: Sun Feb 26, 2012 8:34 pm
Gender: Male
Sexual Orientation: Straight
Location: UK

Re: Tease AI Open Beta

Post by Mat »

genome231 wrote:Now it suddenly makes sense why everyone is so excited about the call and callreturn functions!
It brings a lot of depth! Very intresting :D ideas are already sparking.
Thank you for the reply :)
No problem :) I can't wait for people to bring out more scripts using CallReturn, you could probably nest them inside each other to end up with a quite a long conversation.
genome231 wrote:Another question(idea) that just popped into my head:
Is it possible to call "inactive" modules/links/etc, and by inactive i'm referring to modules/links/etc that are in my tease but in settings I havent marked them yet.
What i'm hoping for would be to have certain modules or similar that wouldn't be part of the "random" pool, but only be called when a certain active module/s calls upon it.
I'm pretty sure you can do that, if you have a lot of added modules that you don't want to be in the scripts tab you could create a new folder for them and specify a file path when calling them, that way people don't need to add scripts and then uncheck them.

I'm not sure where the path starts, probably either the Tease AI folder or the personality one, so rather than a full file path you could just use @Call(/NewScripts/TestModule.txt)
PtheV
Explorer At Heart
Explorer At Heart
Posts: 202
Joined: Sat May 30, 2015 10:18 am
Gender: Male
Sexual Orientation: Straight

Re: Tease AI Open Beta

Post by PtheV »

Mat wrote:
genome231 wrote:Another question(idea) that just popped into my head:
Is it possible to call "inactive" modules/links/etc, and by inactive i'm referring to modules/links/etc that are in my tease but in settings I havent marked them yet.
What i'm hoping for would be to have certain modules or similar that wouldn't be part of the "random" pool, but only be called when a certain active module/s calls upon it.
I'm pretty sure you can do that, if you have a lot of added modules that you don't want to be in the scripts tab you could create a new folder for them and specify a file path when calling them, that way people don't need to add scripts and then uncheck them.

I'm not sure where the path starts, probably either the Tease AI folder or the personality one, so rather than a full file path you could just use @Call(/NewScripts/TestModule.txt)
In the Wicked Tease folder, there's a subfolder called Custom that can be used for this purpose. So the command would look like this: @Call(Custom\script.txt) or @Call(Custom\your folder\scripts.txt). As I understand it, TAI only calls random scripts from Modules, Stroke\Link, Stroke\Start or Stroke\End.
Daragorn wrote:Found a new bug.....the @SetDate() and @CheckDate() commands always give errors and crash the program...
This is the first time I've seen these commands mentioned, what do they do?
pv
User avatar
genome231
Explorer At Heart
Explorer At Heart
Posts: 699
Joined: Wed Nov 12, 2014 8:35 am

Re: Tease AI Open Beta

Post by genome231 »

Ahh cool!

Well a new tool is always awesome to play with :)
I second PtheV, haven't seen those either.

I expect to have a pack of modules, links etc ready by the end of february or the begging of march. Though I might occasinally throw a module at you guys if it needs thorough bugtesting, or something doesn't work and I cant figure it out ;)
Right now the todo list consist of about 15 modules, 10 links and some new interrupts.
It probably wont contain endings or starts. I feel its more important to expand on the core, since its the main part of teaseAI :)

Found a bug!
In settings when you check the sadistic and degrading personalities, then exit TeaseAI, it will not save those settings.

Regards
Genome231
Tribute to 1885 & those involved with Tease-AI.
Thank you for spending time on this awesome project! :-)
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 561
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI Open Beta

Post by Daragorn »

pepsifreak wrote:Got all of them but this, care to elaborate more? Do you mean removing completed tasks? I'm not sure if that's the original intention but I tested with checking for a "*" in the name and deleting it if found and it seems to work. How about that?
Not sure i understood your answer either actually :D
I'll try to be clearer in the meantime with an example:
In a session i get a @VitalSubAssignement to perform...lets say edge 5 times...now when i open vital sub i see it in the list of assignements.
Next session, i open vitalsub, select the assignement and send a report to the mistress to tell her i have done it. The session starts with the "vitalsub start" where she tells you she is glad you did it and so on.....but in the vitalsub app, the task is still there while i think it should be cancelled after you sent your report....you either failed or completed that task, so i see no reason for it to remain there.
Moreover, next time you get another assignement, you now have 2 asssignement in your list, and have to check both of them to start with a "success" instead of a "failure".....and every time you get an assignement they all sum up....which makes no sense.

For example, if from the vitalsub app you create a calorie goal task, when you submit a report to the domme, it gets cancelled from the list as expected....if you create a motivational goal, on the contrary (which is where things go with @VitalSubAssigmnent), it remains there after you report to the domme....and i definitely think this is a bug, it should get cancelled like the calorie goal

The only way i found to remove an assignement from the app is to manually open the vitalsub file and delete it manually.


P.S: i think i may found the problem....well...at least it doesn't seem to be a problem but may intended (not sure...i am not that good at reading code... :)
Btw, around line 26880 of form1.vb there is:

If VitalList.Count > 0 Then
For i As Integer = 0 To CLBExercise.Items.Count - 1
CLBExercise.SetItemChecked(i, False)

If i understand correctly, this is why the checkbox return to false after you submit the report to the mistres....but there is no command to cancel them infact.
The strange fact is that, at line 26910 there is also this sub:

Private Sub CLBExercise_DragLeave(sender As Object, e As System.EventArgs) Handles CLBExercise.DragLeave
CLBExercise.Items.Remove(CLBExercise.SelectedItem)
End Sub

Which should be the one to remove those tasks from the list.....but i found no call at all for it, so i don't get why he wrote it but never uses it....
Last edited by Daragorn on Thu Feb 11, 2016 8:44 pm, edited 3 times in total.
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 561
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI Open Beta

Post by Daragorn »

genome231 wrote: (2) The command "GotoDommeAppathy" can there only be one of them in the scripts? I tried having two of them in the same script but ofcourse it went back to the first, when it triggered the second time, basicly starting the module all over :P
@GotoDommeApathy (just like @GotoDommeLevel,@GotoDommeRuin and @GotoDommeOrgasm) works differently from a normal @Goto() command. They dont move out of the current script but gives you the opportunity to branch out the script depending on dommelevel,apathy, etc etc.
For each of them you HAVE to write specific part for each needed branch...in particular:

@GotoDommeOrgasm -->(Never Allows), (Rarely Allows), (Sometimes Allows), (Often Allows), and (Rarely Allows)
@GotoDommeRuin --> (Never Ruins), (Rarely Ruins), (Sometimes Ruins), (Often Ruins), and (Rarely Ruins)
@GotoDommeLevel -->(DommeLevel1), (DommeLevel2), (DommeLevel3), (DommeLevel4), and (DommeLevel5)
@GotoDommeApathy -->(ApathyLevel1), (ApathyLevel2), (ApathyLevel3), (ApathyLevel4), and (ApathyLevel5)

When you use @GotoDommeApathy for example, the script will move to either (ApathyLevel1), (ApathyLevel2), (ApathyLevel3), (ApathyLevel4), or (ApathyLevel5) line and go on from there.....that's why ALL of them NEED to be present in the script where you use it.
If you want to use it multiple times in the same script and have different behaviour happening depending on when you called it, you can use a trick since you can only have a single (apathy level1) (apathy level2) (apathy level3)....etc etcc per script.
You can use flags or @ChanceXX(name) to open up different paths.

Example1:
(ApathyLevel1)
@NullResponse @Chance10(chastity) @Chance10(tasks) @Goto(free)
(ApathyLevel2)
@NullResponse @Chance25(chastity) @Chance33(tasks) @Goto(free)
(ApathyLevel3)
@NullResponse @Chance33(chastity) @Chance50(tasks) @Goto(free)
(ApathyLevel4)
@NullResponse @Chance50(chastity) @Chance80(tasks) @Goto(free)
(ApathyLevel5)
@NullResponse @Chance50(chastity) @Goto(tasks)
(chastity)
do something here
(tasks)
do something here
(free)
do something here

Here, every time you call for domme apathy, you have different possibilities coming up for each of her levels

Example2 using flags:
Now you'll do it @TempFlag(already_done) @GotoDommeApathy
(return here)
bla
bla bla
Now try again @GotoDommeApathy

(ApathyLevel1)
@NullResponse @CheckFlag(already_done)
do stuff @Goto(return here)
(ApathyLevel2)
@NullResponse @CheckFlag(already_done)
do stuff @Goto(return here)
(ApathyLevel3)
@NullResponse @CheckFlag(already_done)
do stuff @Goto(return here)
(ApathyLevel4)
@NullResponse @CheckFlag(already_done)
do stuff @Goto(return here)
(ApathyLevel5)
@NullResponse @CheckFlag(already_done)
do stuff @Goto(return here)
(already_done)
you come here the 2nd time you call dommeapathy

In this example, the first time you go to aphaty, you set a tempflag, do her do whatever you want and then move to another part of the script with the @Goto() command and later, when you recall @Dommeapathy, the first thing it will do is check for the flag you set up earlier and, thus, will move to the line corresponding to that tag
Last edited by Daragorn on Thu Feb 11, 2016 9:50 pm, edited 1 time in total.
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 561
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI Open Beta

Post by Daragorn »

genome231 wrote:Another question(idea) that just popped into my head:
Is it possible to call "inactive" modules/links/etc, and by inactive i'm referring to modules/links/etc that are in my tease but in settings I havent marked them yet.
Mat wrote:I'm pretty sure you can do that, if you have a lot of added modules that you don't want to be in the scripts tab you could create a new folder for them and specify a file path when calling them, that way people don't need to add scripts and then uncheck them.
Exactly as he said, put those modules you don't want to "accidentaly" pop up during a session in a subfolder of your personality main directory and then use @Call(path\name.txt) when you want to go to one of them or @CallRandom(path) if you want to randomly pick one of them.
PtheV wrote:This is the first time I've seen these commands mentioned, what do they do?
They work similarly to the orgasm lock date...i used them for example to set up things like, mistress goes on vacation for x days and she cant tease me till the end of that period.
I have a script where she @SetDate(name, #Random(1,5)) (it creates a variable called name which date is 1-5 days from current date).
You can show the date with @ShowVar(name) and you can use it to block stuf untill the date has expired.
For ex i have all my start scripts start with @NullResponse @CheckDate(name,line).
What happens here is that, if the current date is beyond "name" date, then the program moves to (line) and goes on from there, otherwise is moves to the next line after @NullResponse @CheckDate(name,line).

Here is an example:
@NullResponse @CheckDate(nonGioco,partenza)
#SubName, I remember telling you that i wasn't going to talk to you again before @ShowVar[nonGioco]
And that still stands!
I don't care if you are desperate to see me and can't wait any longer
Well....actually i <i>love</i> knowing it #Lol
Because, now that you know how <i>addicted</i> to me you are...
Next time maybe you'll be more willing to go in chastity for me when i ask you to #Smile@EndTease
But, since you refused last time...
You'll have to wait now
And, remember...<b>NO</b> cumming, <b>NO</b> stroking and <b>NOT EVEN</b> touching my #Cock until then
Bye @EndTease
@End
\\fine parte in sospeso\\
(partenza)
#GreetSub
Are you as happy to see me as I am to see you?
[no] No? @Goto(You Must Know What I'm About To Do)
[yes] I'm glad to hear that #SubName
[not happy, not] No? @Goto(You Must Know What I'm About To Do)
...
...

If today is beyond what is set in nonGioco,then it goes to (partenza) and greet me and start a session, otherwise she will tell me it is too early to play again and will end the session.

They were nice to create interesting stuff....but they don't work anymore at least until next fix :D
User avatar
genome231
Explorer At Heart
Explorer At Heart
Posts: 699
Joined: Wed Nov 12, 2014 8:35 am

Re: Tease AI Open Beta

Post by genome231 »

Thank you Daragorn for the really long replies!
They are very helpful in terms of explaining and providing solutions to my problems :D
Always nice learning new things!

A new problem in my scripting just arrived, so i'm turning to the community for help :P
Basicly I have a point where I want the script to pick a random image from a specific set of images from a folder in the script/Images/"folder".
But in other peoples scripts they all seem to call a specific pictures. I have an example from a PNG script:
"@ShowImage[png_images/worship.jpg]" Instead of "worship" which is a specific picture I need it to just choose a random.
Is that possible in any way from the image folder?
Or could I perhaps create a folder among my other pictures and assign them a tag(s)?

Regards
Genome231
Tribute to 1885 & those involved with Tease-AI.
Thank you for spending time on this awesome project! :-)
Daragorn
Explorer At Heart
Explorer At Heart
Posts: 561
Joined: Fri Nov 06, 2015 1:16 pm
Gender: Male
Sexual Orientation: Straight
I am a: Submissive

Re: Tease AI Open Beta

Post by Daragorn »

genome231 wrote:Thank you Daragorn for the really long replies!
They are very helpful in terms of explaining and providing solutions to my problems :D
Always nice learning new things!

A new problem in my scripting just arrived, so i'm turning to the community for help :P
Basicly I have a point where I want the script to pick a random image from a specific set of images from a folder in the script/Images/"folder".
But in other peoples scripts they all seem to call a specific pictures. I have an example from a PNG script:
"@ShowImage[png_images/worship.jpg]" Instead of "worship" which is a specific picture I need it to just choose a random.
Is that possible in any way from the image folder?
Or could I perhaps create a folder among my other pictures and assign them a tag(s)?

Regards
Genome231
Glad to help :)
But i suggest moving all scripting questions and problem to the correct thread here:
viewtopic.php?f=2&t=16051
This one should be kept for bug fixing the current version and for talking about the future development or we'd get lost in here :)
I'll copy your question there and answer you in that thread :D
pepsifreak
Explorer At Heart
Explorer At Heart
Posts: 132
Joined: Fri May 08, 2009 8:50 pm
Gender: Male
Sexual Orientation: Straight

Re: Tease AI Open Beta

Post by pepsifreak »

Daragorn wrote:For example, if from the vitalsub app you create a calorie goal task, when you submit a report to the domme, it gets cancelled from the list as expected....if you create a motivational goal, on the contrary (which is where things go with @VitalSubAssigmnent), it remains there after you report to the domme....and i definitely think this is a bug, it should get cancelled like the calorie goal

The only way i found to remove an assignement from the app is to manually open the vitalsub file and delete it manually
Okay so kinda my answer. There is no way to know where an assignment came from, so you can't really delete specific ones without adding a particular character/word to the end and checking for that. In my post I mentioned I set up just that for having a "*" at the end of the name.

Deleting could become normal behavior but I think the current set up is meant for recurring tasks, with stuff set by scripts not being accounted for. I could be wrong so if anyone else has an opinion let me know.

Using a filter like I mentioned would not require any scripts to be changed because I can add it to the command so it's automatic.

Which should be the one to remove those tasks from the list.....but i found no call at all for it, so i don't get why he wrote it but never uses it....
That code is called by the ui but never happens because you can't drag the box containing the tasks anywhere, was probably meant to apply to items so you could drag away a specific task to delete it.
Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests