Watchdog
Revision as of 02:40, 17 January 2012 by Tika Oberueng (talk | contribs)
LSL WATCHDOG
These are some simple scripts that watch other scripts in the same prim and restarts them if they crash.
BASIC LSL WATCHDOG FOR A SINGLE PRIMARY SCRIPT <lsl> // Basic LSL Watchdog Script to watch a single script // 2012-01-17 By Tika Oberueng // Released to the public domain. // You break it, you get to keep both pieces. // string watchee = "Test Script"; // Set this to the name of a script in prim inventory to watch
default {
state_entry() { llSetTimerEvent(10); // Set this to desired watchdog interval. Probably best to leave quite high. } timer() { llSetTimerEvent(0); if (!llGetScriptState(watchee)) { llResetOtherScript(watchee); llSetScriptState(watchee, TRUE); llRegionSay(DEBUG_CHANNEL, "Watchdog Trip: The script ["+watchee+"] has crashed and has been restarted."); llSleep(1); llResetScript(); } }
} </lsl>
BASIC LSL WATCHDOG FOR MULTIPLE SCRIPTS <lsl> // Basic LSL Watchdog Script to watch multiple scripts // 2012-01-17 By Tika Oberueng // Released to the public domain. // You break it, you get to keep both pieces. // </lsl>