MOO-cows Mailing List Archive


Re: Robots

John Maxwell wrote:
>patrick wrote:
>>This thread started off with the question for MOO-code bots. Well, I think
>>that approach shouldn't be underestimated if the thing does only little 
>>And then goes to sleep for a longer period.
The current Bots we are running at AICore have two modes of operation.  
The first 
is a regular expression pattern matcher triggered by moo events (anything 
invokes the :tell verb).  If the left hand side of a rule set is 
triggered, the 
bot performs a substitute() on a response randomly selected from the 
set.  The
response can also be the result of a verb invoked from the invoked rulle set.

There is also a :lifecycle verb that can be made active for the bot, 
which can
provide some degree of autonomous action on the part of the bot.  Such 
agents should be monitored for '@forked' behaviors.

>A strategy might be: write your bot in MOO-code only if it's
>temporarily active and triggered by MOO events. If the thing is
>intended to run continuously, better to have it exist external
>to the MOO, and to log in as a player.
We are considering moving some of the code found in the markov chainers 
into c,
and providing 'built-in' support for construction of large sets of 
chains.  In
addition, another project at AICore requires an external interface to quintus
prolog, which may provide an interesting new set of built-in calls for 
clause grammers and graph unification.

>Most 'pets' and greeting-objects and whatnot do not need to run
>continuously -- just when somebody actually triggers them... so
>there's no need for endlessly-forking objects.
It is worthwhile to allow moo bots to begin a lifecycle as part of a 
behavior, providing a more 'life-like' interaction.  Yet it is crucial to 
that active agent to shut it self down at the end of the interaction.


Home | Subject Index | Thread Index