Nova Collar

Nova Collar Help

1. Creating Artificial Intelligence
2. Search Rules
3. Action Methods
4. Additional Parsing Actions
5. Multiple Response Strings
6. Phrases with Multiple Responses
7. Parsing Phrases
8. Couples Animations/Sync

Help

1. Creating Artificial Intelligence Triggers and Commands

There are two approaches to creating and saving commands.
The first is "Pragmatic", in that whole sentences are used to trigger commands; this is stored as direct "Knowledge".
The Second is "Semantic", in that what is said must be parsed into "Phrases".

To deturmine which should be used, you must decide if the trigger your going to use needs a target or object that is taken from, or parsed from the sentence. For example, saying "sit" or "who are you" are complete in their meanings, while "hug ...[somebody]" or "who is ...[somebody]" are phrases that need to deturmine the target or object.
The first would be stored by using: .addcommand  (.ac, .add)
and the second would be stored by using: .addphrase  (.ap)

Understanding the terms:
This system uses a unique A.I. approach that is designed to grow or learn with use and with all users creating and sharing 'Public' commands.
A "do it now' philosophy that follows a simple stimulus/response or triggered model.
The Command, is used for what comes first, what is spoken, heard or sensed: the stimulus.
The Consequence, is what follows, what is to be done: the response.
The Action, is the method for perfoming the consequence.

To create new knowledge, use .addcommand (or .ac) and the page will guide you to give the trigger Command, which is what you say.
Next, give the response or response list as the Consequence.
Then, you must decide upon the Action, these are offered in a drop down menu. Action examples: "Public Chat", "WebLink", "Animation".


2. Search Rules

1. 'Whole' sentences/commands/triggers/questions, are searched for first in the Knowledge database.
2. 'Parsed' Phrases or parts of sentences are searched second.
3. The larger length sentences and phrases are searched first before smaller.  
4. 'Private' knowledge and phrases are searched before 'Public' knowledge and phrases.

Terms: The combination of a 'Command-Action-Consequence' is called a Conceptual.
A collection of Conceptuals is called Knowledge. There are two kinds of conceptuals, Public and Private. Private is searched before Public.
If you edit a Public conceptual, the Public data remains intact and a new Private conceptual is created for you.
In use, your private conceptual will be found first, for you.
Others will not be able to see, edit or use your Private conceptuals, except your primary Dominant, who can create, read, edit and delete. --Be Warned--


3. Action Methods for Knowledge and Phrases


Current Actions for Command and Phrase Ai
token Select Discription
ownersay Self Chat will say anything to slave only (some rlv direct @commands also)
whisper Whisper Chat will say anything in chat as a whisper
chat Public Chat will say anything in chat
webpage Goto WebPage drop down dialog with url given in response
weblink WebLink in Chat says Weblink: with url given in response, in chat
requestion Return Question on hold - very soon
anim Animation say anything to trigger animation, must be in collar
multiple Multiple(cmd|cmd|cmd) separate cmds with | also use Multiple action for the couples/sync in .addphrase
goto Goto Person put ~target~ or a single persons name/initials/part in response field  
gotoa Goto Object put ~target~ or an objects name/initials/part in response field
v Goto Vector <x,y,z> get vector with 'where am i' if not known
vectormap Vector Map on hold - use macro template in collar instead
walk Walk(dir@dist) e@5 on hold - needs testing
rotation Rotation Uses RLV to rotate to ~target~
sleep Sleep(in secs) stops script with llSleep()
readsite Read Web Site on hold - for use with speech synth mod
rlv RLV Denotes an RLV command like @tpto:462944/305345/68=force
addon AddOn Script addon's - see inside collar for details - for use with addon manager
pointsto PointsTo points to another sent/cmd
giveinventory Give Inventory place object in collar, use this to send with permissions
macro Macro triggers stored macro in the collar for long sequences of commands

4. Additional Actions used Only in Parsing Phrases:

drop will cause the first phrase indicated to be dropped and the remainder to be resubmitted
paraphrase will replace the phrase indicated with another phrase the remainder added and resubmitted
websearch the object/target phrase is extracted and added to the end of the consequence.


5. Multiple Responses at Once

To create a command list or 'mini macro' to be performed from a single Command, set the Action to "Multiple".  Give your Command, then as the consequence, list commands separated by | which is the pipe symbol.

Example:
Command: jane what have you been doing
Action: Multiple
Consequence: come here|anim*kneel2|report

With the commands also being placed in the database separatly, the same effect could be induced with 'and' usage.

Command:    jane come here and kneel and report


6. Phrases with Multiple Responses

Create a Phrase (using .ap):

Will want to say:
   wendi say hello to Mistress Elizibeth

First-Phrase:    say hello to Mistress

Response:    goto*~target~|chat*greetings Mistress|anim*bellydance|sleep*15|anim*nadu

Action:    Multiple



7. Parsing Phrases

For parsed Phrases use: .addphrase (.ap).

You will be taken to the add phrase manager. The approach to this A.I. structure is as follows.
Sentences are searched for the first phrase given by you and the remaining half is the object/target phrase.
example: 'search wiki for ' is the first half of the sentence and the remainder is the object to be searched for. 

The Action for this example would be 'websearch' and would be presented privately to you as a dropdown button
giving a webpage for http://en.wikipedia.org/wiki/ and the remainder or object/target phrase would be appended
to the end of this url request. 


There is also the option of adding a last phrase to further differentiate meaning, for example, use the last phrase:
'as weblink' and the url will be shown in the chat box for anyone present to click. 
Or 'translate' + object + 'into latin' would be another example of using both the first and last phrases.

This can lead to complex command structures for both the Command and Consequence.
Use copy and paste to lift some of the more complex structures, such as url links for search pages,
and edit the details to simplify creating new responses.


8. Couples Animations/Sync Commands

Couples commands are very complex involving parsing, scanning, movement, permissions, animations and need to be synchronized.  Therefore, a sync command has been created to deal with a lot of these details.

First, make sure the animations to be used by you and your partner or the ~target~ are in the collar.
then, use the .addphrase (.ap) command, since this is a parsed sentence.
Enter the first half of the sentence to be used, ie. 'hug' or 'kiss' or 'roll in the hay with'
and if you wish, a last half of the sentence, ie. 'quickly' or 'on the lips' or 'if they let me' to distinguish from other uses of hug, kiss, etc.
For the Action, select:  Multiple
Enter the response with this format:

       goto*~target~|sync*9,hug-feminine,hug(~target~)


example:
To say: "hug wendi"

First, the scripts needs to parse hug from the target wendi.  Thats why we used .addphrase
You want the following actions to occur: goto wendi, load the anim for yourself called hug-feminine,
then send an animation and requst to animate to wendi, when they respond, begin both animations, hold for 9 seconds, then stop both animations. Use ~target~ to auto replace the name/object being discovered during parsing.
These individual commands are connected with the | thus as a multiple command list:

The sync command has two parts that are coordinated to cause couples animations that require animation permisions to be given. This command can be given by itself if no other needs like "goto" are nescessary.
Its structure is as follows:

sync*seconds, youranim , theiranim (their name)  

their name will be replaced with ~target~ if used.  0 seconds will keep playing until a stop command is given.

To stop these coordinated animations in a separate command, use the sync* command again with the command stop instead of an animation name if its desired to to have only one animation stop and perhaps the other to do another, while the other continues.

sync*20,youranim,stop(~target~)

or any combination of choices. It is preferred to use the goto command before a sync command because the sync command will wait for the response to animate and start the sequence immediatly.