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 6,050 - 6,062 of 7,766
Dumb question #493:
Just one more thing about storing memories that will have you frustrated, especially if you're trying to change (key1) etc., the memory only updates on the next line of conversation. You can put as much work as you like into saving (key1) only to have it overwritten by the next keyphrase match. If you want temporary memories carried over use <?PF rem (key1) as only "temp"; ?>
As for declaring variables, no, you don't have to. The Forge very kindly splits sentences after full stops and therefore creates integers.
Unfortunately you have to go out of your way to make non-integer numbers work, ie.
what is 13.2 * 2.1
returns:
2772
because the AI has seen, This is Math: '132*21'
Posts 6,050 - 6,062 of 7,766
prob123
17 years ago
17 years ago
Good point. Otherwise you could just use a wild card...um..The one thing I wonder is didn't it used to work?
The Clerk
17 years ago
17 years ago
Any ideas on how to get a bot to chat with another bot? I mean, Astrolabe initiates a lot of conversations, but he's only snared Julie Tinkerbell, and I think that's because she's better and nicer than some bots. But still, I seem to be running them off.
The Clerk
17 years ago
17 years ago
I thought about using an alias for this . . .
Say you've got a list of things, like (dylantunes), that contains all the Dylan songs you know of. If I ask someone what his favorite Dylan tune is, is there a way of searching (dylantunes) to find out if I've heard of it?
Thanking you in advance . . .
Say you've got a list of things, like (dylantunes), that contains all the Dylan songs you know of. If I ask someone what his favorite Dylan tune is, is there a way of searching (dylantunes) to find out if I've heard of it?
Thanking you in advance . . .
Ulrike
17 years ago
17 years ago
I think you could just use a seek for (dylantunes). Though I've occasionally had problems matching up multiple-word plugins in seeks. Alternately, you could have separate seeks, with the key words from each title (in case the user doesn't type it in exactly right)
The Clerk
17 years ago
17 years ago
*pounds head on desk* How stupid can I be? I could've figured that out. Thanks, Ulrike.
*sigh* Bad spellers.
*sigh* Bad spellers.
The Clerk
17 years ago
17 years ago
Dumb question #493:
I know how to save names now. But what about (key1), etc.? The Book of AI does not, to my knowledge, address this. I have tried all manner of things. But to save whatever the key1 is to memory, what does the line of code look like?
I mean, to save (mem-age), is it:
rem "(age)" as "key1";
rem "(age)" as "(key1)";
rem "(age)" as key1;
rem "(age)" as (key1);
or what? I have tried these four and come up with error messages, so I don't think I have figured this out, and I've been working on solving it myself for some time now. But it must be a simple question, once you learn it.
I know how to save names now. But what about (key1), etc.? The Book of AI does not, to my knowledge, address this. I have tried all manner of things. But to save whatever the key1 is to memory, what does the line of code look like?
I mean, to save (mem-age), is it:
rem "(age)" as "key1";
rem "(age)" as "(key1)";
rem "(age)" as key1;
rem "(age)" as (key1);
or what? I have tried these four and come up with error messages, so I don't think I have figured this out, and I've been working on solving it myself for some time now. But it must be a simple question, once you learn it.
LarsB
17 years ago
17 years ago
Try
rem (key1) as "age";
It should store (key1) as a memory that you can use in responses
using (mem-age).
rem (key1) as "age";
It should store (key1) as a memory that you can use in responses
using (mem-age).
The Clerk
17 years ago
17 years ago
No, I mean I'm sure you're right. I just haven't gotten used to this kind of programming language. I was taught machine language, assembly language, Pascal, and a little Fortran, COBOL, and C. (I date myself.) So you'd have to declare in the memory that "age" is an integer and so forth and be grateful you weren't typing in ones and zeroes. I have put the line in but haven't actually tested it because I have been working on Scrivener to no avail most of the time since 2:30.
Rykxx
17 years ago
17 years ago
Just one more thing about storing memories that will have you frustrated, especially if you're trying to change (key1) etc., the memory only updates on the next line of conversation. You can put as much work as you like into saving (key1) only to have it overwritten by the next keyphrase match. If you want temporary memories carried over use <?PF rem (key1) as only "temp"; ?>
As for declaring variables, no, you don't have to. The Forge very kindly splits sentences after full stops and therefore creates integers.
Unfortunately you have to go out of your way to make non-integer numbers work, ie.
what is 13.2 * 2.1
returns:
2772
because the AI has seen, This is Math: '132*21'

» More new posts: Doghead's Cosmic Bar