<!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>