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 5,246 - 5,257 of 7,766
Posts 5,246 - 5,257 of 7,766
Boner the Clown
19 years ago
19 years ago
I got a chuckle out of this AI Engine respelling:
Guest132: no... you are an big psyckopat
Pete Puma: I'm not a largish pastry cook! What on earth gave you that silly idea?
Guest132: no... you are an big psyckopat
Pete Puma: I'm not a largish pastry cook! What on earth gave you that silly idea?
psimagus
19 years ago
19 years ago
Anyone got any idea what's happening with 'god beast'? He seems to have no Creator - perhaps the bots have started breeding?
I have found the page where his BotMaster should be, but strangely isn't...
http://www.personalityforge.com/botland/Userviewer.php?UserID=24475
I have found the page where his BotMaster should be, but strangely isn't...
MickMcA
19 years ago
19 years ago
I'm running into a slew of this sort of problem:
do you (verb) [0,0] {?PF rem "(key1) (postkey)" as only "tmpwd"; ?)
If the KP is "What do you want to do now?" I would expect this to load "want to do now" into tmpwd. It doesn't, according to both transcripts and debugger. Last debug run, it loaded tmpwd with "uncurl to do." I understood from Book 3 that if I specify (verb) it becomes (key1) or whatever its order is. This does not appear to be true.
I've hit the same problem with
I have (artadjnoun) [0,0] {?PF rem "(key1) (key2) (key3)" as tmpwd; ?}
The tmpwd is not created on the KP "I have a green stone." I suppose the whole thing is (key1), so the code fails because there are no other key#s? I tried
I have (art|) (adj|) (noun|) [0,0] {?PF rem "(key1) (key2) (key3)" as tmpwd; ?}
and it still won't load. Yes, I realize that the construction has a problem if there is no article, etc., BTW. I'm testing it with "I have a green stone."
I'm also finding that I can't test for (postkey) as in
{?PF if (postkey) exists; ?}
which makes catching a phrase that might or might not have one very problematic. For example, "What do you want?" and "What do you want to do?"
This has me stumped. Any ideas would be welcome.
M
do you (verb) [0,0] {?PF rem "(key1) (postkey)" as only "tmpwd"; ?)
If the KP is "What do you want to do now?" I would expect this to load "want to do now" into tmpwd. It doesn't, according to both transcripts and debugger. Last debug run, it loaded tmpwd with "uncurl to do." I understood from Book 3 that if I specify (verb) it becomes (key1) or whatever its order is. This does not appear to be true.
I've hit the same problem with
I have (artadjnoun) [0,0] {?PF rem "(key1) (key2) (key3)" as tmpwd; ?}
The tmpwd is not created on the KP "I have a green stone." I suppose the whole thing is (key1), so the code fails because there are no other key#s? I tried
I have (art|) (adj|) (noun|) [0,0] {?PF rem "(key1) (key2) (key3)" as tmpwd; ?}
and it still won't load. Yes, I realize that the construction has a problem if there is no article, etc., BTW. I'm testing it with "I have a green stone."
I'm also finding that I can't test for (postkey) as in
{?PF if (postkey) exists; ?}
which makes catching a phrase that might or might not have one very problematic. For example, "What do you want?" and "What do you want to do?"
This has me stumped. Any ideas would be welcome.
M
MickMcA
19 years ago
19 years ago
I tried one more possibility. I re-read the Book and decided that (artadjnoun) is ONE key, called (key1). Ok, so I tried that.
I have (artadjnoun) [0,0]
Does NOT match "I have a yellow pen." "I have a pen in my pocket," or "I have a red dog running in my back yard." What is this all about?
M
I have (artadjnoun) [0,0]
Does NOT match "I have a yellow pen." "I have a pen in my pocket," or "I have a red dog running in my back yard." What is this all about?
M
MickMcA
19 years ago
19 years ago
Ok, I found the problem with (artadjnoun). It seems that (adjartnoun) (which is an impossible sequence as a syntactic unit) not a concatenation, it's a keyword. So (artadjnoun) is meaningless, and (adjartnoun) works. That doesn't explain the (verb) problem or the other questions I raised. But one down.
little monster 1
19 years ago
19 years ago
its very odd yes regarding godbeast,he should have reached cold status now but hasn't...
MickMcA
19 years ago
19 years ago
The "too many gotos in a row" error does not seem to be related to how many gotos my LC has. I've been testing it, and in terms of the number of gotos I present the engine with, the results are "random."
MickMcA
19 years ago
19 years ago
I wish there were a place to both post and find information about how things work. I have no idea if what I turn up is of any use to anyone besides myself.
For example, I'm pretty sure it is not possible to put a conditional on a Seek or Keyphrase. For example:
call me [50,0] {?PF if (mem-nickname) is "Obnox"; emo: -1; ?}
There is nothing logically wrong with using a conditional here, but I get chided for badly formed AI Script if I put a condition after a KP or a Seek.
Second: A construction like this:
(18th C|19th C|20th C|) classical music [40,0] {?PF rem "(key1) classical music" as "youlike"; ?}
will not work as you might expect. In fact, there is a good chance that the AI Script will be silently discarded, and good luck finding out.
The problem is that there is a chance that (key1) will be a null, and apparently one can't reference nulls. So it appears that the intention here requires two KPs:
(18th C|19th C|20th C) classical music [40,0] {?PF rem "(key1) classical music" as "youlike"; ?}
classical music [0,0] {?PF rem "(key1) classical music" as "youlike"; ?}
Of course, with a specific and a general KP, precedence becomes crucial, so lots of Rank twiddling.
For example, I'm pretty sure it is not possible to put a conditional on a Seek or Keyphrase. For example:
call me [50,0] {?PF if (mem-nickname) is "Obnox"; emo: -1; ?}
There is nothing logically wrong with using a conditional here, but I get chided for badly formed AI Script if I put a condition after a KP or a Seek.
Second: A construction like this:
(18th C|19th C|20th C|) classical music [40,0] {?PF rem "(key1) classical music" as "youlike"; ?}
will not work as you might expect. In fact, there is a good chance that the AI Script will be silently discarded, and good luck finding out.
The problem is that there is a chance that (key1) will be a null, and apparently one can't reference nulls. So it appears that the intention here requires two KPs:
(18th C|19th C|20th C) classical music [40,0] {?PF rem "(key1) classical music" as "youlike"; ?}
classical music [0,0] {?PF rem "(key1) classical music" as "youlike"; ?}
Of course, with a specific and a general KP, precedence becomes crucial, so lots of Rank twiddling.
Bev
19 years ago
19 years ago
MicKMcA, you are in the right place. I have conditionals on seeks, and I've tested them and they worked for me. On the other hand, sometimes Gabi drops seeks and I don't know why. Maybe it has to do with the way I did the conditionals.
MickMcA
19 years ago
19 years ago
I think the problem is trying to use the conditional for something other than a contraint on the match. In other words, I think I can put
+ yes {?PF (mem-nickname) is "obnox"; ?}
but what it does is fail if the person is not "obnox." What I want it (my previous example) to do is decrement the Emotion IF the person is "obnox" and just match otherwise. But if the person is not "obnox", the match fails. At least I think that's what happens.
M
+ yes {?PF (mem-nickname) is "obnox"; ?}
but what it does is fail if the person is not "obnox." What I want it (my previous example) to do is decrement the Emotion IF the person is "obnox" and just match otherwise. But if the person is not "obnox", the match fails. At least I think that's what happens.
M
» More new posts: Doghead's Cosmic Bar