Commit Graph

37 Commits

Author SHA1 Message Date
Melanie Thielker
824283ca3c Remove all the subclassing complexity and script server interfaces from
DNE and move all of DNE into the DotNetEngine directory. Remove references
that would cause the script runtime to load the entire engine + scene into
each script appdomain. This might help DNE memory consumption.
2008-09-26 13:16:11 +00:00
Tedd Hansen
bacbade369 Major reorganizing of DotNetEngine. Moved common script engine parts to ScriptEngine.Common, only .Net-specific code in DotNetEngine. AppDomains, event handling, event execution queue and multithreading, script load/unload queue, etc has been moved to ScriptEngine.Common.
Loads of things has been put into interfaces instead of the specific class.
We are now one step closer to ScriptServer, and its very easy to implement new script languages. Just a few lines required to make them a OpenSim script module with all its glory.
2008-01-12 14:30:22 +00:00
Tedd Hansen
a993d0d335 ScriptServer communication is ok. Script is creatd on onrez. But since it can not access Scene it sort of crashes right away ;)
Added some sample placeholders for implementing rest of LSL events.
2008-01-12 10:25:08 +00:00
Tedd Hansen
7ef09a1202 Added comments to ScriptEngine classes that explains what their purpose is 2007-12-30 16:32:29 +00:00
lbsa71
efd90b56b7 * Optimized usings
* shortened references
* Removed redundant 'this'
* Normalized EOF
2007-12-27 21:41:48 +00:00
Jeff Ames
af6eb67999 saved OpenSim source code from the giant rampaging unterminated copyright notice of doom 2007-12-10 05:25:16 +00:00
Jeff Ames
0b4e15bc35 converted hard-coded chat type values to ChatTypeEnum 2007-11-08 03:11:10 +00:00
Tedd Hansen
dcf41cb683 ScriptServer fixes: Added more debug logging, mutex lock (to be extra-super-sure) on script load/unload, removed experimental Grid-scriptengine from compile because of dynamic module loader, and added random string to script filename to bypass module loader file lock.
Please delete your copy of bin/ScriptEngine/OpenSim.Grid.ScriptEngine.DotNetEngine.dll.
2007-11-01 19:27:03 +00:00
lbsa71
67e12b95ea * Optimized usings
* Shortened type references
* Removed redundant 'this' qualifier
2007-10-30 09:05:31 +00:00
lbsa71
f8ddf7429e * Wired up chat so that channel goes into OnChatFromViewer. However:
* There's no libsl reply packet field for it, I guess other channels than 0 makes no sense sending back to clients.
  * We do not currently support objects listening, so there's really no way of actually using this feature.
So; somebody please wire chat all the way to the scripts.
2007-09-14 13:46:05 +00:00
Sean Dague
afea5f2205 remove ^M, as native storage should be UNIX format, and ^M in/out mashing
will happen on the windows side now that eol-style is correct
2007-09-13 11:41:42 +00:00
Tedd Hansen
cef8c5e9d7 Hiding evidence that I once was a VB coder (thanks to refactoring). Renamed member names to smallcapsy. 2007-09-13 11:11:08 +00:00
lbsa71
b134617e07 * Took a stab at #388 2007-09-10 13:42:11 +00:00
Sean Dague
ffe9c9374a mass update of urls in source code to new website 2007-09-10 08:14:38 +00:00
MW
5020e4e602 Cut down on the number of compile warnings. Now down to 5: 4 are related to unused events on IClientAPI and 1 is a unused variable in LSL_BuiltIn_Commands (which I'll leave to Tedd, as he will know if it will be used in the future or not). 2007-09-08 08:12:19 +00:00
Tedd Hansen
83d5df3979 in-world run-time error-message no-w con-tains function-name. 2007-08-26 14:04:22 +00:00
Tedd Hansen
ebb0099816 Run-time script errors are now shown in-world. No line number though, might require script to be compiled with (slow) debug information. 2007-08-26 13:31:58 +00:00
Tedd Hansen
fda97aa3c5 Bugfix for last commit, { instead of ( 2007-08-26 08:43:46 +00:00
Tedd Hansen
25e200c46a Fixed bug that occurs sometimes on script unload where queued script event was attempted executed after AppDomain was unloaded. 2007-08-26 08:20:48 +00:00
Tedd Hansen
0cd6d26adb Fixed error on shutdown caused by ThreadAbortException sending message through already disposed logger. Thanks ckrinke 2007-08-25 22:26:27 +00:00
Tedd Hansen
b75c1b2191 Added class for "long commands" (command that returns as event) with dedicated thread for processing. Added support for llSetTimerEvent(). Deleting old compiled scripts before new compile is attempted (avoids loading wrong script on compile error). 2007-08-25 19:08:15 +00:00
Tedd Hansen
53be4774b3 Scripts no longer crash sim after 5 minutes (override InitializeLifetimeService). Loading/Unloading of scripts are now handled in separate thread so server is no delayed because of this. Each script is loaded into a single AppDomain (temporary test for script unload, eats ~15KB more memory for each script). Unload of scripts has been verified to free up memory. 2007-08-25 15:31:47 +00:00
Tedd Hansen
07836b890c Lowered priority of script threads. Executing state_entry() event on script rez. 2007-08-23 18:43:11 +00:00
Tedd Hansen
4beef91d00 GC.GetTotalMemory(true) was blocking.
We now support individual scripts on individual prims. Do the script dance... \o/ \o\ /o/ \o/ .o.
2007-08-22 19:33:10 +00:00
Tedd Hansen
0eadb7591e Added OnRemoveScript event handler to ScriptEngine. Fixed event queuing of empty objects crash. 2007-08-22 18:41:31 +00:00
Tedd Hansen
5a86fd2c31 (Untested) Scripts are individually loaded into objects (on rez), and event fired likewise. Bugfixes coming in next commit. 2007-08-22 18:09:38 +00:00
Tedd Hansen
eeaac68d73 Code comments on recent changes in EventQueueManager 2007-08-19 11:38:58 +00:00
Tedd Hansen
7770c65a7e Sped up EventQueueManager response time (scripts now respond quickly). Added support for multiple threads executing events on objects, but only one thread on one script at the time (to utilize MultiCore/hyperthreading CPU's). 2007-08-19 11:09:54 +00:00
Tedd Hansen
37446b0392 Moved in-AppDomain event execution from Script to OpenSim.Region.ScriptEngine.Executor. Script no longer responsible for handling event calls to itself (and we can create reference cache in Executor). 2007-08-18 23:24:38 +00:00
Tedd Hansen
1284369a32 Started on AppDomains for ScriptEngine. Moved llFunctions in LSL_BaseClass.cs to LSL_BuiltIn_Commands.cs. Changed how scripts are loaded. 2007-08-18 18:18:14 +00:00
Tedd Hansen
fcf7db7272 Pimped up Default.lsl. Now featuring a touch counter.
Changed "ObjectID" in ScriptEngine to IScriptHost reference. Events will now be queued based on IScriptHost reference instead of string ID of object. Removed "root" object reference in script.
2007-08-17 21:24:38 +00:00
lbsa71
e53d680d41 * Now sending manager, host and root host to Script in constructor.
* Changed how Script accesses World
* Implemented llSay, llWhisper and llShout
* Added SetText() to IScriptHost, implemented llText
* Minor renamings to conform with code conventions
2007-08-16 18:40:44 +00:00
Tedd Hansen
16defc30eb krinkec's updates to ll* interface and functions 2007-08-14 19:06:57 +00:00
Tedd Hansen
2a892eb736 Removed some debugging. Removed *.lso from project include in prebuild.xml. 2007-08-14 16:25:22 +00:00
Tedd Hansen
9573aa7582 llSay() works again. Cleanup of debug messages. 2007-08-14 16:14:19 +00:00
Tedd Hansen
afaa12a9e2 ScriptEngine: Some error handling, logs to logger 2007-08-14 15:59:36 +00:00
Tedd Hansen
2a0e157985 Added ScriptEngine.DotNetEngine 2007-08-08 14:05:13 +00:00