HI everybody
Introduction (not necessary to read it):
I am currently writing on a script that allows using Nezhul's simple but genius "Under my Control" idea in Tease AI. To start it, you will have to ask the domme to be teased all day. She will then ask you if you want there to be a chance of being denied, of being ruined and of having a full orgasm. Each question can be answered with "yes", "no" or "you decide" (i.e. you can answer that you want denial to be included, that you don't want it to be included (i.e. only orgasm and ruins) or that you let the domme decide if there is a chance for denial; the same applies to ruin and allow). Later, the domme will also ask you for the chance of denial and ruined orgasms. However, there are some cases in which the domme would not ask the sub for these chances. For example, if the sub says that he wants denial and full orgasms to be included but doesn't want to be ruined, only the deny chance needs to be set by the user and the ruin chance can be set to 0. When the sub says that he wants to be denied, but let's the domme decide whether there will be a chance of ruined and full orgasms, the domme will set all the values herself. The only restriction is that the deny chance has to be higher than 0 (because there must be a chance of denial). Apart from that, the domme is absolutely free in determining the deny and the ruin chance.
With the choices given to the user, there are 27 possible combinations [(denyyes+denyno+denydomme)*(ruinyes+ruinno+ruindomme)*(allowyes+allowno+allowdomme)]. Depending on the combination, the values for the deny and ruin chance have different restrictions and are set by the user or by the domme. Therefore, the script first needs to check the user's answers. This is done with the following lines:
Code: Select all
@NullResponse @RapidCodeOn
@NullResponse @Flag(allday_denyyes) @Flag(allday_ruinyes) @Flag(allday_allowyes) @Goto(1)
@NullResponse @Flag(allday_denyyes) @Flag(allday_ruinyes) @Flag(allday_allowno) @Goto(2)
@NullResponse @Flag(allday_denyyes) @Flag(allday_ruinyes) @Flag(allday_allowdomme) @Goto(3)
@NullResponse @Flag(allday_denyyes) @Flag(allday_ruinno) @Flag(allday_allowyes) @Goto(4)
@NullResponse @Flag(allday_denyyes) @Flag(allday_ruinno) @Flag(allday_allowno) @Goto(5)
@NullResponse @Flag(allday_denyyes) @Flag(allday_ruinno) @Flag(allday_allowdomme) @Goto(6)
@NullResponse @Flag(allday_denyyes) @Flag(allday_ruindomme) @Flag(allday_allowyes @Goto(7)
@NullResponse @Flag(allday_denyyes) @Flag(allday_ruindomme) @Flag(allday_allowno) @Goto(8)
@NullResponse @Flag(allday_denyyes) @Flag(allday_ruindomme) @Flag(allday_allowdomme) @Goto(9)
@NullResponse @Flag(allday_denyno) @Flag(allday_ruinyes) @Flag(allday_allowyes) @Goto(10)
@NullResponse @Flag(allday_denyno) @Flag(allday_ruinyes) @Flag(allday_allowno) @Goto(11)
@NullResponse @Flag(allday_denyno) @Flag(allday_ruinyes) @Flag(allday_allowdomme) @Goto(12)
@NullResponse @Flag(allday_denyno) @Flag(allday_ruinno) @Flag(allday_allowyes) @Goto(13)
@NullResponse @Flag(allday_denyno) @Flag(allday_ruinno) @Flag(allday_allowno) @Goto(14)
@NullResponse @Flag(allday_denyno) @Flag(allday_ruinno) @Flag(allday_allowdomme) @Goto(15)
@NullResponse @Flag(allday_denyno) @Flag(allday_ruindomme) @Flag(allday_allowyes @Goto(16)
@NullResponse @Flag(allday_denyno) @Flag(allday_ruindomme) @Flag(allday_allowno) @Goto(17)
@NullResponse @Flag(allday_denyno) @Flag(allday_ruindomme) @Flag(allday_allowdomme) @Goto(18)
@NullResponse @Flag(allday_denydomme) @Flag(allday_ruinyes) @Flag(allday_allowyes) @Goto(19)
@NullResponse @Flag(allday_denydomme) @Flag(allday_ruinyes) @Flag(allday_allowno) @Goto(20)
@NullResponse @Flag(allday_denydomme) @Flag(allday_ruinyes) @Flag(allday_allowdomme) @Goto(21)
@NullResponse @Flag(allday_denydomme) @Flag(allday_ruinno) @Flag(allday_allowyes) @Goto(22)
@NullResponse @Flag(allday_denydomme) @Flag(allday_ruinno) @Flag(allday_allowno) @Goto(23)
@NullResponse @Flag(allday_denydomme) @Flag(allday_ruinno) @Flag(allday_allowdomme) @Goto(24)
@NullResponse @Flag(allday_denydomme) @Flag(allday_ruindomme) @Flag(allday_allowyes @Goto(25)
@NullResponse @Flag(allday_denydomme) @Flag(allday_ruindomme) @Flag(allday_allowno) @Goto(26)
@NullResponse @Flag(allday_denydomme) @Flag(allday_ruindomme) @Flag(allday_allowdomme) @Goto(27)
When testing the script I gave the following answers: denyyes, ruinno, allowdomme. This leads to the respective flags being created. I checked them in the "Flags" folder and these flags (and only these flags) exist. However, the program jumps to (1) instead of (6). (I know that because I made the script print "1", "2", etc.) When I tried it with the combination 19, the script jumped to (19). I have no idea why that happens.
So, my
first question is:
In my understanding, the line
@NullResponse @Flag(allday_denyyes) @Flag(allday_ruinyes) @Flag(allday_allowyes) @Goto(1)
means the following:
If the flag "allday_denyyes" AND the flag "allday_ruinyes" AND the flag "allday_allowyes" ALL exist, then go to (1).
Am I wrong?
At a later stage, the user can set the timeframe or let the domme decide on the timeframe. At the end of this, there are two values, a minimum and a maximum value for the waiting period between two sessions. In case the minimum value is higher than the maximum value, the values would be adjusted by the script.
My
second question is: How can I set a random number based on two variables, i.e. that the lower and upper limits (i.e. the range) of the random number is defined by two variables? More specifically, how can I use these two variables to set the waiting period?
I tried it like this:
Code: Select all
(wait)
@NullResponse @ShowImage[ft\allday\rest\*.jpg] @LockImages
No touching, #PetName
@NullResponse @Wait(#Random([allday_min],[allday_max]))
abc
@NullResponse @Wait(#Random(@ShowVar[allday_min],@ShowVar[allday_max]))
abc2
@NullResponse @Goto(gong)
It did not work, so I tried first setting the waiting period and then using the value in this variable:
Code: Select all
(wait)
@NullResponse @ShowImage[ft\allday\rest\*.jpg] @LockImages
No touching, #PetName
wait: @ShowVar[allday_wait]
@SetVar[allday_wait]=[#Random([allday_min],[allday_max])]
test 1 done
wait: @ShowVar[allday_wait]
@SetVar[allday_wait]=[#Random(@ShowVar[allday_min],@ShowVar[allday_max])]
test 2 done
wait: @ShowVar[allday_wait]
The value shown for the waiting period is 0 (the minimum and maximum values are both higher than 0).
My conclusion is, that the problem already occurs when trying to use the #Random function with a variable... I feel like what I'm trying to do is simply not possible...

Hopefully, somebody has a solution or workaround
Anyway, thanks for your help!
