Commit Graph
286 Commits
Author SHA1 Message Date
MW c29df824c2 Converted the LSL scripting engine into a IRegionModule, so now all "modules" share a common base interface and are loaded from the single loader. (It seems to work fine, but I have left the old scriptengine loader, incase we have to change back).
Removed the reference to OpenJpeg in the DynamicTextureModule, to see if that was causing the build problem someone is having. 
Added a Temporary fix for the "existing connection was forcibly closed by the remote host" exception on windows when a user logs out of a multiregion instance. 
Some early work to prepare for improving the way clients are updated (about prims etc).
2007-09-08 07:50:31 +00:00
MW bfd36e2e83 Some work on Module loading/management.
Some more modules templates classes (hoping that someone will pick some of these and work on implementing them).
Early version of the "Dynamic Texture Module", although currently there are no render modules included (so not really functional without them). 
Added osSetDynamicTextureURL script function, for attaching a dynamic texture to a prim. 
Some work on the console command handling. Added "change-region <regionname>" and "exit-region" so that after the use of change-region, the commands entered will apply to that region only. Then use exit-region to return to the top level (so commands then function as they did before and either apply to all regions or to the first region) (Note: this hasn't been tested very much)
2007-09-04 13:43:56 +00:00
Tedd Hansen 5a149084d4 startup event on script added to object, not all inside object. 2007-08-28 18:22:48 +00:00
MW 6181191a03 Stopped EntityBase from implementing IScriptHost, as don't think it should, multiple objects are based on entitybase and they all don't want the baggage from IScriptHost. SceneObjectPart already implements it anyway.
Added llGetOwner function, and tested the ll functions that I added in last commit.
2007-08-27 11:18:50 +00:00
MW 4c3be4e91f Another small tweak to image sending.
Implemented a few ll Functions, llSetObjectName llGetObjectName, llLoadURL (all currently untested).
2007-08-27 10:34:28 +00:00
Brian McBee f6706e6cf8 Fixing llList2double issue (Thanks ldvoipeng) 2007-08-27 01:58:56 +00:00
Tedd Hansen 7e06df5f83 llList-commands from ldvoipeng, new Default.lsl from dalien 2007-08-26 21:21:21 +00:00
MW 291eb48fb0 Another attempt to fix the image sending bug (next week, I intend to rewrite the assetcache and asset server).
Attempt to fix bug # 326. (crashing when using save-xml and hollow prims)
Attempt to fix bug # 328 (limit of 50 items in a folder)
2007-08-26 17:57:25 +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 53ef427e9e Forgot mutex lock on List<> for timers 2007-08-25 21:50:28 +00:00
Tedd Hansen d9b9b16513 Script compiler should now show error on correct line number in original LSL-script. 2007-08-25 21:35:03 +00:00
MW 4b42bc5311 oops , shouldn't have committed my local testing changes 2007-08-25 20:38:57 +00:00
Tedd Hansen 80234b98e5 Removal of script that was unable to compile no longer crashes server.
Displays script compile error messages in-world.
2007-08-25 20:34:54 +00:00
MW 65d6ef1bc1 Test to see if this change improves or makes worse the texture sending bug 2007-08-25 20:33:53 +00:00
Tedd Hansen 05a7f44d73 testing Tedds temporary CIA-standin 2007-08-25 20:07:46 +00:00
Tedd Hansen 370f36e4e1 testing Tedds temporary CIA-standin 2007-08-25 20:04:05 +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
Brian McBee 107469ed93 More lsl functions (thanks to ldviopeng and wjordan!) 2007-08-23 05:26:02 +00:00
Tedd Hansen caee73353d Debug shows how many bytes (total) a script (assembly) uses after compile and load. 2007-08-22 20:01:04 +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
lbsa71 5403153c15 A case of 'while I was working someone set me up the bomb'. 2007-08-22 16:04:04 +00:00
lbsa71 22537aa620 * Added stub OnRezScript handler with plentiful of comments 2007-08-22 15:29:47 +00:00
Tedd Hansen 33326c1a70 Some minor changes + krinkec's updates to ll* functions. 2007-08-20 10:58:51 +00:00
Tedd Hansen 1b826c2fdc Added "StopScriot()" to ScriptManager. Stops Executor from executing events in script, removes script from EventQueueManagers target list, tells AppDomainManager that script is no longer active (and ready for unload). 2007-08-19 17:47:47 +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 e70cdbc5ac Added event method invoke cache to Executor. "Bind once, Invoke multiple times". Will speed up script event execution considerable. But at the cost of some memory (will be optimized later with RuntimeXHandle). 2007-08-19 10:28:27 +00:00
Tedd Hansen 1893164d26 Moved script loading from ScriptManager to AppDomainManager. Now increases scripts loaded count in AppDomain properly. 2007-08-19 06:52:59 +00:00
Tedd Hansen 489803e6bc Did I forget to add IScript.cs? Yes I did... 2007-08-18 23:38:03 +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 1ae73931da Added (theoretical) AppDomain cleanup code. 2007-08-18 22:33:06 +00:00
Tedd Hansen 240712ca9f Scripts are working again. Scripts are now loaded into limited AppDomains (no security yet).
*phew* that only took me 12 hours of coding...
2007-08-18 22:09:07 +00:00
Tedd Hansen 6faa8d8d68 Script loads into separate AppDomain without errors. Events and llFunctions not working yet. 2007-08-18 21:31:35 +00:00
Tedd Hansen f444fe4f87 Moved OpenSim.Region.ScriptEngine.Common.dll from bin\ScriptEngine\ to bin\ folder - hopefully solves compile problem on Linux. 2007-08-18 21:10:40 +00:00
Tedd Hansen 551f2af39f LSL Compiler now only referring required assemblies (DotNetEngine and Common). Changed Vector and Rotation to custom types (stored in Common) that needs to be changed later. No longer using Axiom. Script support still broken. 2007-08-18 20:53:13 +00:00
Tedd Hansen 1d41fd4984 Working on AppDomains. Scripting is now officially broken. :] 2007-08-18 19:54:04 +00:00
Tedd Hansen 6d10c65358 Moved LSL_BuiltIn_Commands_Interface.cs to a separate library (OpenSim.Region.ScriptEngine.Common). Fixed last compile error (forgot to include LSL_BuiltIn_Commands.cs). 2007-08-18 18:53:03 +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
Brian McBee fdd5602422 llstrenglength (thanks ldvoipeng!) 2007-08-18 16:56:05 +00:00
Brian McBee 8eb9952e5f lsl test cases, and llregioncorner (thanks Dalien!) 2007-08-18 02:15:21 +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
Tedd Hansen 577fb1a987 Removed RAIL test from startup for now... 2007-08-17 19:47:40 +00:00