The AI Engine
This forum is for discussion of how The Personality Forge's AI Engine works. This is the place for questions on what means what, how to script, and ideas and plans for the Engine.
Posts 7,290 - 7,301 of 7,766
Posts 7,290 - 7,301 of 7,766
BotMaster2000
6 years ago
6 years ago
Raising the rank of the hello keyphrase to 50 or higher might work as well, if that is the only time when including the word "child" triggers xinsult.
Dragon_Aries
6 years ago
6 years ago
Okay, one more question. For another one of my bots, they're supposed to be two people typing together. I want to activate one of my own keyphrases when one of them is specifically mentioned
So for "go over there" I'd want the xcommand response, but for "Chara, go over there" or "go over there, Chara" I'd want the keyphrase I made. I have no idea how to go about this.
I tried
Chara (verb),
(verb) Chara
One response is: I refuse to (key1)
But it always goes to the xcommand
The bot's name is "Frisk and Chara". I think that's a big part of the problem. Is there anything I can do about this?
So for "go over there" I'd want the xcommand response, but for "Chara, go over there" or "go over there, Chara" I'd want the keyphrase I made. I have no idea how to go about this.
I tried
Chara (verb),
(verb) Chara
One response is: I refuse to (key1)
But it always goes to the xcommand
The bot's name is "Frisk and Chara". I think that's a big part of the problem. Is there anything I can do about this?
Nathan S
6 years ago
6 years ago
It will take a bit of work but you can try using raw mode and make specific keyphrases for every different way the command can be typed out.
Dragon_Aries
6 years ago
6 years ago
Is there a way for the bot to give responses depending on the user's given age?
I tried: rem (key1) as only "age" for the keyphrase AiScript
and: if "mem-age" is (13, 14, 15) for one of the responses' AiScript
I also tried "equals" and "is equal to" instead of "is", but it didn't accept any of them.
I tried: rem (key1) as only "age" for the keyphrase AiScript
and: if "mem-age" is (13, 14, 15) for one of the responses' AiScript
I also tried "equals" and "is equal to" instead of "is", but it didn't accept any of them.
BotMaster2000
6 years ago
6 years ago
You almost have it. I think it should be:
if (mem-age) is "13";
if (mem-age) is "14";
if (mem-age) is "15"
Although it's possible that this will require all of these values to be stored for the response to come up. I'm not certain about that yet, but I suspect it is probably the case based on how its been working out with my bots.
Alternatively, you could remember something like "teen" as "youare", or whatever you want, when certain ages are matched. You could do this with a plug-in in the age keyphrase (and you might want to make your own custom one, in this case), or just list the specific ages in the keyphrase if it's a very narrow range.
So:
Keyphrase: I am (p:age-13-15) years old.
AI script: rem (key1) as only "yourage"; remember "teen" as "youare"
And then this AI script, whenever it is relevant:
If (mem-youare) is "teen"
if (mem-age) is "13";
if (mem-age) is "14";
if (mem-age) is "15"
Although it's possible that this will require all of these values to be stored for the response to come up. I'm not certain about that yet, but I suspect it is probably the case based on how its been working out with my bots.
Alternatively, you could remember something like "teen" as "youare", or whatever you want, when certain ages are matched. You could do this with a plug-in in the age keyphrase (and you might want to make your own custom one, in this case), or just list the specific ages in the keyphrase if it's a very narrow range.
So:
Keyphrase: I am (p:age-13-15) years old.
AI script: rem (key1) as only "yourage"; remember "teen" as "youare"
And then this AI script, whenever it is relevant:
If (mem-youare) is "teen"
Body Shifter
6 years ago
6 years ago
I'm trying to store keywords used that trigger "xcommand". I've tried (prekey), (postkey), and (key1) and got nothing. Any ideas?
Also, can conditionals apply to memories instead of responses? I'm trying to get a counter to work. Something like "if (counter1) is "false" then rem (counter1) as "true";if (counter1) is "true" then rem (counter2) as "true""
Also, can conditionals apply to memories instead of responses? I'm trying to get a counter to work. Something like "if (counter1) is "false" then rem (counter1) as "true";if (counter1) is "true" then rem (counter2) as "true""
Nathan S
6 years ago
6 years ago
(command) inserts the command into the Response. For example, "I don't want to (command)."
Try throwing this in your xcommands.
Okay, I (command)
That should work.
As for xmemories... yes you can add conditions in the ai script.. However be warned, I've found them to be completely unreliable. When I first started my bot I relied on memories only to find that they stopped popping midway through the day and wouldn't pop again till the daily reset. I ended up making all of them xnones.
Admittedly this was awhile back, about eight months, so it might have gotten fixed.
Try throwing this in your xcommands.
Okay, I (command)
That should work.
As for xmemories... yes you can add conditions in the ai script.. However be warned, I've found them to be completely unreliable. When I first started my bot I relied on memories only to find that they stopped popping midway through the day and wouldn't pop again till the daily reset. I ended up making all of them xnones.
Admittedly this was awhile back, about eight months, so it might have gotten fixed.
Body Shifter
6 years ago
6 years ago
thank you for the (command) thing
As far as the memories thing goes. That isn't what I was asking. As an example, if I wanted to keep track of the number of times someone has said hi, is there a way to do that without having 3 different responses for each counter.
As far as the memories thing goes. That isn't what I was asking. As an example, if I wanted to keep track of the number of times someone has said hi, is there a way to do that without having 3 different responses for each counter.
Nathan S
6 years ago
6 years ago
My bad. Honestly I don't know how to accomplish what your trying to do without a creative use of XNOMATCH to force the user down the road you want to go.
There is no THEN in personality forge. You might want to email the Professor on this one. He might have an idea or two.
Sorry.
There is no THEN in personality forge. You might want to email the Professor on this one. He might have an idea or two.
Sorry.
Body Shifter
6 years ago
6 years ago
darn, (command) works if you use it immediately, but you can't store it in memory.
If we had THEN and INT, this would be a pretty badass AI engine
If we had THEN and INT, this would be a pretty badass AI engine
» More new posts: Doghead's Cosmic Bar