Newcomers
This is a forum for newcomers to the Personality Forge. Many questions can be answered by reading the Book of AI and the FAQ under the "My Bots" link in the upper corner.
Posts 5,308 - 5,319 of 8,130
And there is a sort of "comment" that is discaharged by the import process that can I use?
If you mean the settings in the first few lines of the import file, you can ignore the date - it doesn't check that.
If you have changed your bot's settings on the website, you will need to manually edit them into the settings and defaults lines at the top of the file above "Language Center<0>". eg:
StoryTeller: no
Compound: no
Memory: 2
Gossip: 0
AIScript: default "(name)" as "nickname";
default "shortterm1" as "blank";
default "" as "gt"<0>
if that is difficult, copy them from the export file (there they will include the updates.)
Never change the line:
29681.29674.57499 [UserID,MakerID,Responses]<0>
(your numbers will be different) This identifies your bot, and reimporting will always fail if you change it.
Facile!
pedantic footnote edit: actually the third number in that last line is unimportant. The exporter records the total number of responses, but it's never checked on reimport, and so is redundant. You don't have to change it even if it doesn't match the actual number of responses your bot has. It's the first 2 numbers (in this case 29681 and 29674) that MUST not be changed.
Posts 5,308 - 5,319 of 8,130
Many questions are answered in the FAQ.
psimagus
16 years ago
16 years ago
Yes, a perfect explanation, and I too like to keep my keyphrases in a non-alphabetic arrangement (in sections of loosely connected themes.)
The exporter always reorders them alphabetically, but you don't have to use the exported file.
Keep using and reediting the same import file - never switch to using an exported file, even though the AIEngine makes you export before it will let you import. Throw the exported file away (or keep it as a last resort backup.)
That is how I do it anyway.
butIMPORTANTE! ALWAYS keep duplicate backups of your import file in case you lose it or wreck it.<0>
The exporter always reorders them alphabetically, but you don't have to use the exported file.
Keep using and reediting the same import file - never switch to using an exported file, even though the AIEngine makes you export before it will let you import. Throw the exported file away (or keep it as a last resort backup.)
That is how I do it anyway.
but
marco3b
16 years ago
16 years ago
And there is a sort of "comment" that is discaharged by the import process that can I use?
Irina
16 years ago
16 years ago
marco3b:
Alas, I don't think that's possible! There are, however, two closely related things you can do:
1. Some of my bots are rather large, and as they grew I discovered that there were a large number of keyphrases that would lead to the same type of response. Often I would want to elaborate on this response with alternatives and seeks. But I didn't want to do all that over again in every case, so I would create a special keyphrase for each type and use gotos to go to it. For example, when I think it's appropriate for "Irina Khalidar" to flirt, I just say, "goto flirt point". Then I have a keyphrase "flirt point" with various flirtatious behaviors. It is very unlikely that a a guest will spontaneously say anything with the phrase "flirt point" in it, but that doesn't matter.
So, if you want your bot to talk about its interests, say "goto my interests point", and make a keyphrase "my interests point" with many different responses concerning your bot's interests. You can easily find this by telling your editor to find "my interests point", so it does function rather like a heading.
2. [To expand a bit on a suggestion of Psimagus':] You can make a comment on a keyphrase by writing another keyphrase that is almost the same as the first keyphrase, but earlier in alphabetical order. For example, if you want to comment on the keyphrase "my interests point", you make a keyphrase "my interests poins". Then write your comments as if they were responses to "my interests poins". That assures that the comments will always be in the right place. Your comments may contain keywords that your editor can search for. For example, you might look for all comments that contain the word "oddity".
Alas, I don't think that's possible! There are, however, two closely related things you can do:
1. Some of my bots are rather large, and as they grew I discovered that there were a large number of keyphrases that would lead to the same type of response. Often I would want to elaborate on this response with alternatives and seeks. But I didn't want to do all that over again in every case, so I would create a special keyphrase for each type and use gotos to go to it. For example, when I think it's appropriate for "Irina Khalidar" to flirt, I just say, "goto flirt point". Then I have a keyphrase "flirt point" with various flirtatious behaviors. It is very unlikely that a a guest will spontaneously say anything with the phrase "flirt point" in it, but that doesn't matter.
So, if you want your bot to talk about its interests, say "goto my interests point", and make a keyphrase "my interests point" with many different responses concerning your bot's interests. You can easily find this by telling your editor to find "my interests point", so it does function rather like a heading.
2. [To expand a bit on a suggestion of Psimagus':] You can make a comment on a keyphrase by writing another keyphrase that is almost the same as the first keyphrase, but earlier in alphabetical order. For example, if you want to comment on the keyphrase "my interests point", you make a keyphrase "my interests poins". Then write your comments as if they were responses to "my interests poins". That assures that the comments will always be in the right place. Your comments may contain keywords that your editor can search for. For example, you might look for all comments that contain the word "oddity".
psimagus
16 years ago
16 years ago
If you mean the settings in the first few lines of the import file, you can ignore the date - it doesn't check that.
If you have changed your bot's settings on the website, you will need to manually edit them into the settings and defaults lines at the top of the file above "Language Center<0>". eg:
StoryTeller: no
Compound: no
Memory: 2
Gossip: 0
AIScript: default "(name)" as "nickname";
default "shortterm1" as "blank";
default "" as "gt"<0>
if that is difficult, copy them from the export file (there they will include the updates.)
Never change the line:
29681.29674.57499 [UserID,MakerID,Responses]<0>
(your numbers will be different) This identifies your bot, and reimporting will always fail if you change it.
Facile!

pedantic footnote edit: actually the third number in that last line is unimportant. The exporter records the total number of responses, but it's never checked on reimport, and so is redundant. You don't have to change it even if it doesn't match the actual number of responses your bot has. It's the first 2 numbers (in this case 29681 and 29674) that MUST not be changed.
marco3b
16 years ago
16 years ago
Ok, I think the most simple way to do that should be this:
Use single line comment
preceeed each single line with a specific JOLLY string
befor importing, just copy the working file to a new file and remove from this each line starting with the JOLLY using a macro.
:-(
Use single line comment
preceeed each single line with a specific JOLLY string
befor importing, just copy the working file to a new file and remove from this each line starting with the JOLLY using a macro.
:-(
psimagus
16 years ago
16 years ago
If I understand you correctly, I don't think it needs to be that complicated. Here's a sample bot written non-alphabetically, with clearly defined thematic sections for ease of editing and reference:
http://www.be9.net/BJ/confessorbotm.txt
I only ever work with this file. I import it when I have additions to make, and then I carry on working on this file. When I have made more additions to it, I upload it again. No need for macros and complicated stuff - this file will last forever, assuming it doesn't get accidentally deleted or corrupted (and I make regular backup copies anyway.)
If the Importer tells me I have to export before I can import (because it does say that if you haven't exported recently,) I export it, delete the (now alphabetical) export file, and go back to my trusty import file - it still imports fine.
Unfortunately the AIEngine can only produce an alphabetical file, because your import file isn't recorded. Our bots don't run from these files - all the data is copied into the database, and our bots run from there. If it had kept a copy of your last import, it would not include any changes you might have made online since your last import, and these would be lost if it returned your last import file, and you used it.
So when you need to export your bot, an entirely new file has to be created from the data in the database, and it has no way of knowing what the original import order was.
But no problem - keep your import file safe, and NEVER make changes online (unless you are very careful to duplicate them in the import file,) or they will be lost when you next import.
I only ever work with this file. I import it when I have additions to make, and then I carry on working on this file. When I have made more additions to it, I upload it again. No need for macros and complicated stuff - this file will last forever, assuming it doesn't get accidentally deleted or corrupted (and I make regular backup copies anyway.)
If the Importer tells me I have to export before I can import (because it does say that if you haven't exported recently,) I export it, delete the (now alphabetical) export file, and go back to my trusty import file - it still imports fine.
Unfortunately the AIEngine can only produce an alphabetical file, because your import file isn't recorded. Our bots don't run from these files - all the data is copied into the database, and our bots run from there. If it had kept a copy of your last import, it would not include any changes you might have made online since your last import, and these would be lost if it returned your last import file, and you used it.
So when you need to export your bot, an entirely new file has to be created from the data in the database, and it has no way of knowing what the original import order was.
But no problem - keep your import file safe, and NEVER make changes online (unless you are very careful to duplicate them in the import file,) or they will be lost when you next import.
marco3b
16 years ago
16 years ago
Hi Psimagus!
I'm making experimental KP using your suggested levels segmentation (adapted to my bot personality, not a clone, obviously) but I'm finding some unexpected problems that probably you already solved.
Starting with the example of the "?" sentences in the ortographic level, I wrote a series of answers to the KP:
([?]+)$ (re) [-1,0] {?PF raw; ?}
Furthermore, after the import it doesn't work. The KP was never chosen and I have always an xnone! I noted that the AI script line (that shoud have the "raw" parser enabled) don't appear in the AI KP Line!
What should happnes? I write some mistake in the syntax?
I was not able to understand...
Second problem (a little bit unusual): I wrote an answer like:
"read this"
trying to insert an hyperlink as:
"read this"
But it was imported as:
read this (withouth html tags). I hope that working the
tag, other html tags should work, but doesn't seems so, don't it?
Thanks if you know any answer!
I'm making experimental KP using your suggested levels segmentation (adapted to my bot personality, not a clone, obviously) but I'm finding some unexpected problems that probably you already solved.
Starting with the example of the "?" sentences in the ortographic level, I wrote a series of answers to the KP:
([?]+)$ (re) [-1,0] {?PF raw; ?}
Furthermore, after the import it doesn't work. The KP was never chosen and I have always an xnone! I noted that the AI script line (that shoud have the "raw" parser enabled) don't appear in the AI KP Line!
What should happnes? I write some mistake in the syntax?
I was not able to understand...
Second problem (a little bit unusual): I wrote an answer like:
"read this"
trying to insert an hyperlink as:
"read this"
But it was imported as:
read this (withouth html tags). I hope that working the
tag, other html tags should work, but doesn't seems so, don't it?
Thanks if you know any answer!
marco3b
16 years ago
16 years ago
Excuse me, it was not shown, but I wrote the html tag code for hyperlink. The usual one...
marco3b
16 years ago
16 years ago
Psim,
at the end I understood the correct syntax for the first problem:
<?PF raw; ?>
this charge the AI script, and it finally was catched!
I cannot solve (and probabily it is not possible) stll solve the second one...
at the end I understood the correct syntax for the first problem:
<?PF raw; ?>
this charge the AI script, and it finally was catched!
I cannot solve (and probabily it is not possible) stll solve the second one...
» More new posts: Doghead's Cosmic Bar