Thanks. I thought I had (& had read) all the LGS documentation, but DarkAI.doc is new to me. I'll have to download and read it.
Edit: Well that answers those questions and others I didn't even think about yet. To close out this topic, I'll post the relevant section from that doc here.
Quote:
AI Pseudoscripts
A pseudoscript is an ordered set of instructions, with optional additional arguments, that appear in various AI link and property dialogs. Typically, pseudoscripts allow the AI to decide when something is relevant or not, and the designer to specify what to do as a result of that decision. The present UI for Pseudoscripts is crude but functional. At some point it will be overhauled.
Currenly implemented pseudoscript instructions are:
• Nothing: The instruction is skipped. For testing purposes, other instructions can be reset to "Nothing" without losing the argument fields.
• Script message: Sends a message to the scripts attached to the AI. If the script message handler replys "FALSE" the pseudoscript will end.
Argument 1: The message to send
Argument 2: Data placed in the first general data field of the generic script message. May be empty.
Argument 3: Data placed in the first general data field of the generic script message. May be empty.
• Play sound/motion: Plays a speech sound, a motion, or both.
Argument 1: The sound concept to play (see Eric's sound docs). May be empty.
Argument 2: Additional sound tags. May be empty.
Argument 3: Motion tags. (see art\src\mschema)
• Alert (unimplemented): Go to the specified alert level.
Argument 1: The alert level desired.
• Become hostile: Changes the "non-hostility" property to "never." There are no arguments.
• Enable investigate: Changes the "investigation style" property to "Normal" There are no arguments.
• Goto object
Argument 1: The object to go to. Can be either an object name or an integer.
Argument 2: The speed. If the argument is left blank, the AI wil default to "Normal"
Stopped
Very slow
Slow
Normal
Fast
Very fast
Argument 3: Optional motion tags. (see art\src\mschema) (unimplemented)
• Frob object
• Wait: Will delay the next instruction for some specifed amount of time.
Argument 1: The time, in milliseconds, to wait.
Argument 2: Optional motion tags. (see art\src\mschema)
• Mprint: Prints text to the monochrome monitor.
Argument 1: The text to print
• Add/Remove Metaproperty
Argument 1: “Add” or “Remove”
Argument 2: The name of the metaproperty. Can be either an object name or an integer.
Argument 3: (optional) The object(s) to which to add the metaproperty. If empty, defaults to the AI. Can be any valid object list.
• Add Link
Argument 1: The link flavor.
Argument 2: The object(s) to link to. Can be any valid object list.
Argument 3: (optional) The object(s) to link from. If empty, defaults to the AI. Can be any valid object list.
• Remove Link
Argument 1: The link flavor.
Argument 2: The object(s) to link to. Can be any valid object list.
Argument 3: (optional) The object(s) to link from. If empty, defaults to the AI. Can be any valid object list.
• Face: Faces the AI in a particular direction. If angle alone is specified, the AI will face an absolute angle in XY. If object alone is specified, the AI will face the object. If both are specified, the AI will face an angle relative to the facing of the object.
Argument 1: Angle
Argument 2: Object
• Dest. Script Message: If the pseudo script is associated with a link, this command sends a script message to the linked-to object. (toml 09-10-98)
Argument 1: ?
Argument 2: ?
Argument 3: ?
Well not close it out quite yet. There is nothing in DarkAI.doc about Abort conditions and Abort steps, Don't Block, or the SaveConversation. Any more definitive (or speculative if properly marked as such) information on those items would still be welcome.