Page 34 of 59
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Mon Apr 08, 2019 8:07 pm
by tarouza
I must be missing something, downloaded tease ai java and jdk 12, when i try to open tease ai java i get this
Error: Could not find or load main class C:\Users\Chris\Downloads\TeaseAI Java 1.0.17\TeaseAI.jar
Caused by: java.lang.ClassNotFoundException: C:\Users\Chris\Downloads\TeaseAI Java 1.0.17\TeaseAI.jar
Have tried uninstalling tease ai java and JDK a few times with no luck. Running on windows 10
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Tue Apr 09, 2019 9:04 pm
by GodDragon
tarouza wrote: Mon Apr 08, 2019 8:07 pm
I must be missing something, downloaded tease ai java and jdk 12, when i try to open tease ai java i get this
Error: Could not find or load main class C:\Users\Chris\Downloads\TeaseAI Java 1.0.17\TeaseAI.jar
Caused by: java.lang.ClassNotFoundException: C:\Users\Chris\Downloads\TeaseAI Java 1.0.17\TeaseAI.jar
Have tried uninstalling tease ai java and JDK a few times with no luck. Running on windows 10
I guess you are running it using cmd? If you are doing something like "java TeaseAI.jar" you will need to do something like "java -jar TeaseAI.jar" instead. If you are running it using double click (which should be possible) where do you see that output?
Other steps if above doesn't help:
Open cmd (Command Prompt). You can do this by pressing windows key + r and then typing cmd and confirming. After this type java -version and tell me about the output.
Try running it using cmd by navigating to your TeaseAI folder inside cmd (use the cd command for this. In this case: "cd C:\Users\Chris\Downloads\TeaseAI Java 1.0.17") and then type: "java -jar TeaseAI.jar" if you aren't already and tell me what shows up.
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Wed Apr 10, 2019 10:47 pm
by lotar232
has anyone else noticed that with the new 1.1 version (on windows) there seems to be a bunch of wasted space in the chat window (5-6 lines worth below the last mesage) that require you to make the image window smaller than it needs to be???
(losing maybe 10-20% of the image size)
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Wed Apr 17, 2019 1:08 pm
by GodDragon
lotar232 wrote: Wed Apr 10, 2019 10:47 pm
has anyone else noticed that with the new 1.1 version (on windows) there seems to be a bunch of wasted space in the chat window (5-6 lines worth below the last mesage) that require you to make the image window smaller than it needs to be???
(losing maybe 10-20% of the image size)
Dunno what you mean. Can you show me? Btw. you can rescale the chat window at the top.

Re: [Tease Program] Tease-AI Java (1.1)
Posted: Thu Apr 18, 2019 10:45 pm
by ski23
lotar232 wrote: Wed Apr 10, 2019 10:47 pm
has anyone else noticed that with the new 1.1 version (on windows) there seems to be a bunch of wasted space in the chat window (5-6 lines worth below the last mesage) that require you to make the image window smaller than it needs to be???
(losing maybe 10-20% of the image size)
I believe I found and fixed the error. I sent GodDragon the new release (including text to speech) which should be out very soon hopefully.
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Sat Apr 20, 2019 8:55 pm
by lotar232
ski23 wrote: Thu Apr 18, 2019 10:45 pm
lotar232 wrote: Wed Apr 10, 2019 10:47 pm
has anyone else noticed that with the new 1.1 version (on windows) there seems to be a bunch of wasted space in the chat window (5-6 lines worth below the last mesage) that require you to make the image window smaller than it needs to be???
(losing maybe 10-20% of the image size)
I believe I found and fixed the error. I sent GodDragon the new release (including text to speech) which should be out very soon hopefully.
awesome... thanks for taking a look... sorry I didn't give you a very good bug report... I observed the behavior a few times, but it was hard to reproduce.
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Tue May 28, 2019 11:38 am
by genome231
Hi
I'm back at it a little bit, but I have an issue :)
If you have a look at the log I provided you'll see that the domme told me to "stroke faster".
If I write "yes Mistress" right away, theres no problem and it continues as expected. But if I wait for the timeout it breaks.
This is my function
- Spoiler: show
-
Code: Select all
function increasePace() {
if(getStrokingBPM() < 240) {
addStrokingBPM(randomInteger(30,60));
if (chance() > 75) {
answer = sendInput("%stroke_Faster% %DT%",10);
while(true) {
if (answer.matchesRegexLowerCase("yes([ ]|$)")) {
break;
} else if(answer.isTimeout()) {
reduceMerits();
break;
} else {
reduceMerits();
break;
}
}
} else{}
} else {}
}
What is going wrong?
Cheers
Genome
Log:
- Spoiler: show
-
Code: Select all
01:31:44 PM CHAT: 01:31 PM Charlotte: Game or session?
01:31:46 PM CHAT: 01:31 PM Slave: Session Mistress
Here2!
01:31:48 PM CHAT: 01:31 PM Charlotte: *grins a lot*
01:31:56 PM CHAT: 01:31 PM Charlotte: We're gonna have a lot of fun today emote_Happy
01:32:04 PM CHAT: 01:32 PM Charlotte: Start stroking girl
01:32:06 PM CHAT: 01:32 PM Slave: Yes Mistress
Here2!
01:32:48 PM CHAT: 01:32 PM Charlotte: Stroke faster
Exception in thread "Thread-4" java.lang.NullPointerException
at me.goddragon.teaseai.api.chat.Answer.matchesRegexLowerCase(Answer.java:74)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$227$2125$\^eval\_$cu1$restOf.increasePace(<eval>:98)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$224$1686$\^eval\_.randomPaceChange(<eval>:84)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$220$\^eval\_/414304794.:program(<eval>:7)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunction.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptRuntime.apply(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.eval(Unknown Source)
at java.scripting/javax.script.AbstractScriptEngine.eval(Unknown Source)
at me.goddragon.teaseai.api.scripts.ScriptHandler.runScript(ScriptHandler.java:171)
at me.goddragon.teaseai.api.scripts.ScriptHandler.evalScript(ScriptHandler.java:153)
at me.goddragon.teaseai.api.scripts.nashorn.RunFunction.call(RunFunction.java:28)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.linker.JSObjectLinker.jsObjectScopeCall(Unknown Source)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$218$\^eval\_$cu1$restOf.:program(<eval>:15)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunction.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptRuntime.apply(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.eval(Unknown Source)
at java.scripting/javax.script.AbstractScriptEngine.eval(Unknown Source)
at me.goddragon.teaseai.api.scripts.ScriptHandler.runScript(ScriptHandler.java:171)
at me.goddragon.teaseai.api.scripts.ScriptHandler.evalScript(ScriptHandler.java:153)
at me.goddragon.teaseai.api.scripts.nashorn.RunFunction.call(RunFunction.java:28)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.linker.JSObjectLinker.jsObjectScopeCall(Unknown Source)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$212$\^eval\_$cu1$restOf.:program(<eval>:24)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunction.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptRuntime.apply(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.eval(Unknown Source)
at java.scripting/javax.script.AbstractScriptEngine.eval(Unknown Source)
at me.goddragon.teaseai.api.scripts.ScriptHandler.runScript(ScriptHandler.java:171)
at me.goddragon.teaseai.api.scripts.ScriptHandler.evalScript(ScriptHandler.java:153)
at me.goddragon.teaseai.api.scripts.nashorn.RunFunction.call(RunFunction.java:28)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.linker.JSObjectLinker.jsObjectScopeCall(Unknown Source)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$150$\^eval\_.:scopeCall(<eval>)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$150$\^eval\_.:program(<eval>:25)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunction.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptRuntime.apply(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.eval(Unknown Source)
at java.scripting/javax.script.AbstractScriptEngine.eval(Unknown Source)
at me.goddragon.teaseai.api.scripts.ScriptHandler.runScript(ScriptHandler.java:171)
at me.goddragon.teaseai.api.scripts.ScriptHandler.startPersonality(ScriptHandler.java:127)
at me.goddragon.teaseai.api.scripts.ScriptHandler.startPersonality(ScriptHandler.java:107)
at me.goddragon.teaseai.api.session.Session$1.run(Session.java:33)
01:33:24 PM CHAT: 01:33 PM Slave: Yes Mistress
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Tue May 28, 2019 4:51 pm
by clayk0
thank you for all your dedication on this project. I really love your work.
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Tue May 28, 2019 4:58 pm
by ilikelatex
Hi
You have to check for timeout in first place. If you let the answer timeout, the answerstring will not be set/defined an you get the nullpointer exception.
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Tue May 28, 2019 9:44 pm
by GodDragon
clayk0 wrote: Tue May 28, 2019 4:51 pm
thank you for all your dedication on this project. I really love your work.
Thanks :)
genome231 wrote: Tue May 28, 2019 11:38 am
Hi
I'm back at it a little bit, but I have an issue :)
If you have a look at the log I provided you'll see that the domme told me to "stroke faster".
If I write "yes Mistress" right away, theres no problem and it continues as expected. But if I wait for the timeout it breaks.
This is my function
- Spoiler: show
-
Code: Select all
function increasePace() {
if(getStrokingBPM() < 240) {
addStrokingBPM(randomInteger(30,60));
if (chance() > 75) {
answer = sendInput("%stroke_Faster% %DT%",10);
while(true) {
if (answer.matchesRegexLowerCase("yes([ ]|$)")) {
break;
} else if(answer.isTimeout()) {
reduceMerits();
break;
} else {
reduceMerits();
break;
}
}
} else{}
} else {}
}
What is going wrong?
Cheers
Genome
Log:
- Spoiler: show
-
Code: Select all
01:31:44 PM CHAT: 01:31 PM Charlotte: Game or session?
01:31:46 PM CHAT: 01:31 PM Slave: Session Mistress
Here2!
01:31:48 PM CHAT: 01:31 PM Charlotte: *grins a lot*
01:31:56 PM CHAT: 01:31 PM Charlotte: We're gonna have a lot of fun today emote_Happy
01:32:04 PM CHAT: 01:32 PM Charlotte: Start stroking girl
01:32:06 PM CHAT: 01:32 PM Slave: Yes Mistress
Here2!
01:32:48 PM CHAT: 01:32 PM Charlotte: Stroke faster
Exception in thread "Thread-4" java.lang.NullPointerException
at me.goddragon.teaseai.api.chat.Answer.matchesRegexLowerCase(Answer.java:74)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$227$2125$\^eval\_$cu1$restOf.increasePace(<eval>:98)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$224$1686$\^eval\_.randomPaceChange(<eval>:84)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$220$\^eval\_/414304794.:program(<eval>:7)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunction.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptRuntime.apply(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.eval(Unknown Source)
at java.scripting/javax.script.AbstractScriptEngine.eval(Unknown Source)
at me.goddragon.teaseai.api.scripts.ScriptHandler.runScript(ScriptHandler.java:171)
at me.goddragon.teaseai.api.scripts.ScriptHandler.evalScript(ScriptHandler.java:153)
at me.goddragon.teaseai.api.scripts.nashorn.RunFunction.call(RunFunction.java:28)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.linker.JSObjectLinker.jsObjectScopeCall(Unknown Source)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$218$\^eval\_$cu1$restOf.:program(<eval>:15)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunction.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptRuntime.apply(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.eval(Unknown Source)
at java.scripting/javax.script.AbstractScriptEngine.eval(Unknown Source)
at me.goddragon.teaseai.api.scripts.ScriptHandler.runScript(ScriptHandler.java:171)
at me.goddragon.teaseai.api.scripts.ScriptHandler.evalScript(ScriptHandler.java:153)
at me.goddragon.teaseai.api.scripts.nashorn.RunFunction.call(RunFunction.java:28)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.linker.JSObjectLinker.jsObjectScopeCall(Unknown Source)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$212$\^eval\_$cu1$restOf.:program(<eval>:24)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunction.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptRuntime.apply(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.eval(Unknown Source)
at java.scripting/javax.script.AbstractScriptEngine.eval(Unknown Source)
at me.goddragon.teaseai.api.scripts.ScriptHandler.runScript(ScriptHandler.java:171)
at me.goddragon.teaseai.api.scripts.ScriptHandler.evalScript(ScriptHandler.java:153)
at me.goddragon.teaseai.api.scripts.nashorn.RunFunction.call(RunFunction.java:28)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.linker.JSObjectLinker.jsObjectScopeCall(Unknown Source)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$150$\^eval\_.:scopeCall(<eval>)
at jdk.scripting.nashorn.scripts/jdk.nashorn.internal.scripts.Script$Recompilation$150$\^eval\_.:program(<eval>:25)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunctionData.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptFunction.invoke(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.internal.runtime.ScriptRuntime.apply(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.evalImpl(Unknown Source)
at jdk.scripting.nashorn/jdk.nashorn.api.scripting.NashornScriptEngine.eval(Unknown Source)
at java.scripting/javax.script.AbstractScriptEngine.eval(Unknown Source)
at me.goddragon.teaseai.api.scripts.ScriptHandler.runScript(ScriptHandler.java:171)
at me.goddragon.teaseai.api.scripts.ScriptHandler.startPersonality(ScriptHandler.java:127)
at me.goddragon.teaseai.api.scripts.ScriptHandler.startPersonality(ScriptHandler.java:107)
at me.goddragon.teaseai.api.session.Session$1.run(Session.java:33)
01:33:24 PM CHAT: 01:33 PM Slave: Yes Mistress
Indeed what ilikelatex already said.
You need to check the timeout first before anything else:
Code: Select all
function increasePace() {
if(getStrokingBPM() < 240) {
addStrokingBPM(randomInteger(30,60));
if (chance() > 75) {
answer = sendInput("%stroke_Faster% %DT%",10);
while(true) {
if(answer.isTimeout()) {
reduceMerits();
break;
} else if (answer.matchesRegexLowerCase("yes([ ]|$)")) {
break;
} else {
reduceMerits();
break;
}
}
} else{}
} else {}
}
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Wed May 29, 2019 11:08 pm
by GodDragon
1.2 release
- Text to speech support. You can toggle it in the settings. By default the personality will toggle it on and off
- The TAJ jar is now much smaller and libraries are downloaded whenever there is a new update for them. This means you won't have to download all the libs inside the TAJ jar ever update. The libraries are now handled seperately. At startup it will ask you for permission to download them.
- Bug fixes
- Few new features. Wiki updates will follow
Re: [Tease Program] Tease-AI Java (1.1)
Posted: Sat Jun 01, 2019 1:14 pm
by genome231
Hi guys.
Made the timeout work
Next thing I'm trying to work out is how it handles edging and I'm a bit confused :P
So I'm working from this:
https://github.com/GodDragoner/TeaseAIJ ... ge-Methods
Basically I've made a simple edge function:
- Spoiler: show
-
Code: Select all
function edge() {
startStroking(randomInteger(180,240));
startEdge();
sendMessage("%edge% %DT%");
sleep(randomInteger(10,15));
while (isEdging()) {
sendMessage("Edge already! %DT%");
reduceMerits();
addStrokingBPM(30);
sleep(10);
}
}
Then I've basically paired that with two responses:
#1: OnEdge
- Spoiler: show
-
Code: Select all
addResponseIndicator("on edge","the edge","edging","edged");
function onEdgeResponse(message) {
if (isEdging()) {
endEdge();
stopStroking();
sendMessage("Hands off! %DT%");
relax();
} else if (isEdging() == false) {
reduceMerits();
sendMessage("I never said you could edge! %DT%");
} else if (isStroking() == false) {
reduceMerits();
sendMessage("You're shouldn't even stroking right now.. %DT%");
sendMessage("Hands Off! %DT%");
} else {}
}
#2: MayEdge
- Spoiler: show
-
Code: Select all
addResponseIndicator("may i edge","may i please edge","can i please edge","can i edge");
function mayEdgeResponse(message) {
if (isStroking()) {
sendMessage("Yes you may.. %DT%");
edge();
} else if (isStroking() == false) {
reduceMerits();
sendMessage("You're shouldn't even stroking right now.. %DT%");
sendMessage("Hands Off! %DT%");
}
}
So what I currently experience is that when the system tells me to edge or I call the MayEdge response during stroking it starts the edge as expected, but when I then call the OnEdge Response it ends going with the second option where it reduces merits and tells me "I never said you could edge!".
What am I missing?
Best regards
Genome
Re: [Tease Program] Tease-AI Java (1.2)
Posted: Sat Jun 01, 2019 2:25 pm
by genome231
Hi again.
Updated to ver. 1.2 and my responses stopped working :P
There is nothing in the log so dunno what is wrong.
That being said.
I do get about 4379 lines of:
Code: Select all
04:16:21 PM SEVERE: Invalid file extension . Expected format png jpg or gif!
I have absolutely no idea where this stems from :P as far as I can tell all images are in one of those 3 formats :P
Cheers
Genome
Re: [Tease Program] Tease-AI Java (1.2)
Posted: Mon Jun 03, 2019 3:20 pm
by GodDragon
genome231 wrote: Sat Jun 01, 2019 1:14 pm
Hi guys.
Made the timeout work
Next thing I'm trying to work out is how it handles edging and I'm a bit confused :P
So I'm working from this:
https://github.com/GodDragoner/TeaseAIJ ... ge-Methods
Basically I've made a simple edge function:
- Spoiler: show
-
Code: Select all
function edge() {
startStroking(randomInteger(180,240));
startEdge();
sendMessage("%edge% %DT%");
sleep(randomInteger(10,15));
while (isEdging()) {
sendMessage("Edge already! %DT%");
reduceMerits();
addStrokingBPM(30);
sleep(10);
}
}
Then I've basically paired that with two responses:
#1: OnEdge
- Spoiler: show
-
Code: Select all
addResponseIndicator("on edge","the edge","edging","edged");
function onEdgeResponse(message) {
if (isEdging()) {
endEdge();
stopStroking();
sendMessage("Hands off! %DT%");
relax();
} else if (isEdging() == false) {
reduceMerits();
sendMessage("I never said you could edge! %DT%");
} else if (isStroking() == false) {
reduceMerits();
sendMessage("You're shouldn't even stroking right now.. %DT%");
sendMessage("Hands Off! %DT%");
} else {}
}
#2: MayEdge
- Spoiler: show
-
Code: Select all
addResponseIndicator("may i edge","may i please edge","can i please edge","can i edge");
function mayEdgeResponse(message) {
if (isStroking()) {
sendMessage("Yes you may.. %DT%");
edge();
} else if (isStroking() == false) {
reduceMerits();
sendMessage("You're shouldn't even stroking right now.. %DT%");
sendMessage("Hands Off! %DT%");
}
}
So what I currently experience is that when the system tells me to edge or I call the MayEdge response during stroking it starts the edge as expected, but when I then call the OnEdge Response it ends going with the second option where it reduces merits and tells me "I never said you could edge!".
What am I missing?
Best regards
Genome
Well the thing is it probably sets edging to false before triggering your responses. Keep in mind that edging is a build in mechanic and if you want your own response to trigger you will need to do it a bit differently.
You have a few options: You can either go ahead and overwrite the create your own one startEdging function and use it instead and just make it set an internal boolean like so:
Code: Select all
let edging = false;
function startCustomEdge() {
edging = true;
//Call the internal edge function to handle the rest
startEdge();
}
And then in your response you could do: if(edging)....
You can also go ahead and completely overwrite the startEdge function but that way you'd have to implement your own edging functions and responses etc. all together.
genome231 wrote: Sat Jun 01, 2019 2:25 pm
Hi again.
Updated to ver. 1.2 and my responses stopped working :P
There is nothing in the log so dunno what is wrong.
That being said.
I do get about 4379 lines of:
Code: Select all
04:16:21 PM SEVERE: Invalid file extension . Expected format png jpg or gif!
I have absolutely no idea where this stems from :P as far as I can tell all images are in one of those 3 formats :P
Cheers
Genome
Will look into it. Did all responses stop working? Normal responses work for me. Can you maybe provide me with the exact code and things you are doing so I can figure out what's broken in TAJ?
Re: [Tease Program] Tease-AI Java (1.2)
Posted: Tue Jun 04, 2019 5:51 am
by ski23
Teaser for what I've been working on and nearly finished with:
- Spoiler: show

Should be released soon! If people enjoy games like this, I have many other ideas including monopoly, and card games that may follow...
Very early teaser for what comes after that:
- Spoiler: show
