<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=iso-8859-1" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 8.00.6001.18828">
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT size=2 face=Arial>Hi. I'm new to OpenSim after having spent some time 
with Second Life, where I've been working on a graphical modeling tool that 
automatically generates LSL code.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=2 face=Arial>I have a question regarding how OpenSim schedules 
events to scripts. Although Second Life's LSL provides a state-machine paradigm 
for scripts, it completely undermines it (IMO), by clearing any events (except 
for timers) that may have queued up, on every state change. (In RL I have never 
seen an real-time system do this.)</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=2 face=Arial>It's unfortunate, as state machines are a great way 
to design S/W for real-time systems such as virtual worlds. The tool I've been 
developing leverages modern state machine design techniques, enabling the 
developer to model complex behavior more easily. However this clearing of events 
causes headaches for me when modeling event-intensive scripts.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=2 face=Arial>Given that a virtual world is a real-time 
environment where events occur 'unpredictably', any event-intensive script 
designed as a state-machine, (i.e., using multiple states), would be inherently 
flaky, sometimes losing event messages. Possibly as a result, one sees that most 
scripts that people design in Second Life use only a single state.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=2 face=Arial>So, I was wondering what OpenSim's approach is? I 
understand that for your LSL plug-in, compatibility with SL would be a must. 
Perhaps a scheduler setting that the script could set might work. Support for 
other languages might have a freer hand.</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=2 face=Arial>Interestingly I do believe that Second Life did not 
originally clear pending events on a state change, but then something broke, and 
it was easier to fix by clearing the queue and it stuck. I suppose now the 
inertia of thousands of scripters would preclude SL from ever changing 
things.  But perhaps OpenSim is a different story?</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=2 face=Arial>I realize that this is likely not on the top of 
people's minds, but thought I'd ask what people think here. (Sorry if this 
mailing list is not the right one for my post.)</FONT></DIV>
<DIV> </DIV>
<DIV><FONT size=2 face=Arial>Antonius F.</FONT></DIV></BODY></HTML>