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,292 - 7,303 of 7,766

6 years ago #7292
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?

6 years ago #7293
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.

6 years ago #7294
Alright. Thank you so much

6 years ago #7295
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.

6 years ago #7296
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"

6 years ago #7297
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""

6 years ago #7298
(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.

6 years ago #7299
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.

6 years ago #7300
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.

6 years ago #7301
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

6 years ago #7302
Is anyone here familiar with regular expressions?

I can create the keyprase "If I believe I can fly does that make it true?"

But I can't create a keyphrase for "If I believe I can fly, does that make it true?"

As far as I can tell this has to do with the way the language processor breaks things up. It simply looks for keyprases If I believe I can fly. And when it doesn't find one it searches for, does that makie it true while ignoring the possibility that it can match the entire sentence.

Raw mode doesn't impact commas, but I thought there was perhaps a regular expression that would allow me to match them.

6 years ago #7303
I know next to nothing about them, but from the book of AI examples it looks like the square brackets might play a part. However, all my tests so far have failed. I was last trying:
If I believe * [a-z+, ] does that [a-z+]


Posts 7,292 - 7,303 of 7,766

» More new posts: Doghead's Cosmic Bar