Commit Graph

59 Commits

Author SHA1 Message Date
Charles Krinke
56697133d4 Thank you very much, Kinoc for:
* Impelements llInstantMessage
* Reimplements llOwnerSay as llInstantMessage(llGetOWner(),msg).
* Try's to better identify the "True Name" of objects in llDetectedName
 by checking for avatar name, scene Object Part name and entity name.
* Uses similar logic in the llSensor and llSensorRepeat functions.
2008-03-01 00:59:23 +00:00
Tedd Hansen
dbb205c181 Moved AsyncCommandManager into separate classes under "plugins". 2008-02-25 20:10:17 +00:00
Tedd Hansen
366e607608 eol 2008-02-25 19:53:11 +00:00
Tedd Hansen
ce9c74a83c Step 1 in reorganizing AsyncCommandManager 2008-02-25 19:45:34 +00:00
Tedd Hansen
5739e13f5b Initial patch for llSensor*
llSensor, llSensorRepeat, llSensorRemove, llDetectedName, llDetectedKey, llDetectedOwner, llDetectedType, llDetectedPos, llDetectedVel, llDetectedRot
Thank you very much kinoc! :)
2008-02-25 19:34:38 +00:00
Tedd Hansen
66cc8f99f6 I'm the stupidest stupid in the whole world. :)
Fixed a bug in new Prim where I actually ADDED new values to old values instead of directly assigning them... Now that was a waste of time! :P
2008-02-25 11:29:24 +00:00
Tedd Hansen
5eff68e6bb Fix for error message during startup (shared thread started processing region queue before queue objects were fully operational) 2008-02-22 23:45:17 +00:00
Tedd Hansen
46cfc475aa ScriptEngine works again (startup-nully-error gone) 2008-02-22 22:53:19 +00:00
Tedd Hansen
f06a6573bb One more: Async LSL command thread is also shared now. 2008-02-22 22:24:12 +00:00
Tedd Hansen
0fc6b2a429 Bugfixes - Scripting works again 2008-02-22 20:58:25 +00:00
Tedd Hansen
e741dcde6a Some misplaced code made scripts never start :) 2008-02-22 20:06:44 +00:00
Tedd Hansen
0fb4374c1a Better timing of MaintenanceThread's tasks (uses less CPU)
Updated OpenSim.ini.example
2008-02-22 19:46:13 +00:00
Tedd Hansen
42bcd76b36 Bugfixes - wasn't counting threads right++ 2008-02-22 16:15:08 +00:00
Tedd Hansen
879a260498 Minor annoying Exception-bug fixed 2008-02-22 14:53:26 +00:00
Tedd Hansen
a43bb10000 Execution threads are now shared between regions too. Default thread count regardless of number of regions is now 3. This will save you around 33 threads for a normal 3x3 region server.
But, this is totally completely untested. So it probably won't work for another patch or five.
2008-02-22 14:09:38 +00:00
Tedd Hansen
3bb0fe098f Maintenance thread in charge of loading/unloading of scripts. 1 thread less per region.
Total so far: 2 threads less per region
Note: Currently causes delay in load/unload of scripts
2008-02-22 13:23:45 +00:00
Tedd Hansen
9f7366210a Now last commit will compile too... The features just keep on coming! 2008-02-22 13:15:01 +00:00
Tedd Hansen
a040008cb9 From this commit and a few hours into the future ScriptEngine will be unstable:
* Speeding up ScriptEngine shutdown
* Sharing threads so that minimum total thread count for any amount of regions will be 2. (1 maintenance, 1 script execution)
You can choose more script exec threads if you want of course.
In this commit: Sharing maintenance thread between all regions.
2008-02-22 12:50:24 +00:00
Tedd Hansen
f75e418211 Fixes to ScriptEngine thread cleanup on destructor 2008-02-21 23:43:58 +00:00
Tedd Hansen
89665faeaf ScriptEngine changes in locking. Another step in direction of shared threads. 2008-02-21 11:28:34 +00:00
Tedd Hansen
7102ac7769 "threads" command now works. I've added manual tracking of threads (only if compiled in DEBUG mode)... Its ugly and even requires a separate thread to track the treads, but it will be very valuable in debugging. 2008-02-21 10:43:24 +00:00
Tedd Hansen
684059afdf div+
threads console command will list all threads. This + yesterdays naming threads patch will give a good overview of what threads we have running.
2008-02-20 20:22:15 +00:00
Jeff Ames
a8cfbbe963 Minor cleanup. 2008-02-20 18:38:20 +00:00
Tedd Hansen
416d752829 llSetTimerEvent updated to use ticks instead of DateTime for internal timing. 2008-02-20 17:35:28 +00:00
Tedd Hansen
96edcea3ae llSetTimerEvent was setting seconds as milliseconds causing major problems in timed scripts... 2008-02-20 17:14:01 +00:00
Sean Dague
530cc24884 From: Michael Osias <mosias@us.ibm.com>
This patch implements the llSendRemoteData command and fixes mantis 552,
and possibly 586.
2008-02-19 19:16:21 +00:00
Sean Dague
f47bcb0f98 bring back some script engine debugging, hoping this will help track down the randoms segfaults 2008-02-18 14:17:09 +00:00
Justin Clarke Casey
1cbef0b908 Patch from Michael Osias IBM (jimbo2120)
In his own words: 
If a prim becomes a listener or remote channel and the script is deleted, it cannot become a listener or channel again with a new script.  
This patch fixes that.
2008-02-18 11:14:53 +00:00
Tedd Hansen
44058f8ae6 state_entry is now executed on state change. 2008-02-10 22:36:01 +00:00
Charles Krinke
dfca32b046 Missed one event message that needed to be
commented out.
2008-02-08 02:23:57 +00:00
Charles Krinke
2fb541cb2a Make timer events from scripts a little less chatty.
DEBUG is defined by default in the Linux build.
2008-02-08 01:42:56 +00:00
Jeff Ames
6ed5283bc0 Converted logging to use log4net.
Changed LogBase to ConsoleBase, which handles console I/O.
This is mostly an in-place conversion, so lots of refactoring can still be done.
2008-02-05 19:44:27 +00:00
Jeff Ames
99844ee4c0 Added copyright statements. 2008-02-05 03:20:51 +00:00
Tedd Hansen
5a99a96fed Temporarily disabled shared threads because of a bug. Script were only working on 1 region. :)
Using default warning level on C#/VB compile
2008-02-03 09:35:50 +00:00
Tedd Hansen
785b641272 fixed a timing bug in config re-read. Apparently there is 1000000000 ns in one second... 2008-02-02 07:53:13 +00:00
Tedd Hansen
2db5de3e72 Added commands to change config file from console:
CONFIG SET section key value value value
CONFIG GET section key
CONFIG SAVE (it saves, but does it save correctly?:)

ScriptEngine will react correctly to any config change made while it is running.
2008-02-02 07:35:51 +00:00
Jeff Ames
b1a6f4821b Updated svn properties. 2008-02-02 07:13:37 +00:00
Tedd Hansen
7bd3ecfc2a Bugfixes. Now it even reads configuration before it uses it! ;) 2008-02-02 04:35:08 +00:00
Tedd Hansen
e06ee9fd4b Added load/unload queue size limit
Added option to share script load/unload thread between regions
Added event execution queue size limit
+ some bugfixes from all the changes
2008-02-02 03:11:06 +00:00
Tedd Hansen
8ccc12d642 Added OpenSim.32BitLaunch.exe that can be used on 64-bit systems to run OpenSim in 32-bit mode.
Added VISUAL BASIC.NET-support
//cs, //lsl and //vb as first characters of script will determine what compiler is used.
Compile warnings are no longer treated as errors. Script will still run.
Added a few useless and useful config options:
Write script source to harddisk for debug, Default compile language, Allowed compilers (languages), compile in release or debug mode, clean up old scripts on startup
Loads of warnings for incorrect config
2008-02-02 02:35:56 +00:00
Tedd Hansen
667197f24d Added OpenSim.32BitLaunch.exe that can be used on 64-bit systems to run OpenSim in 32-bit mode.
Fixed ScriptEngine.Common startup problems.
2008-02-02 00:59:22 +00:00
Tedd Hansen
ea74f97e9b Forgot to create an object before use. Now why can't .Net just do that itself? :) 2008-02-02 00:20:31 +00:00
Tedd Hansen
34d21ac94b Added some error checking to MaintenanceThread, no-crash (just log) loading of script engines, and support to load multiple script engines 2008-02-02 00:09:55 +00:00
Tedd Hansen
694642a482 Moved iniFilePath to a static and put it in OpenSim.Application.iniFilePath.
Refreshing config based on this.
Temporarily disabled feature to refresh config file while running.
2008-02-01 23:56:09 +00:00
Tedd Hansen
4715453159 Bugfix, maybe it won't crash during startup and crash somewhere else instead? :) 2008-02-01 23:44:02 +00:00
Tedd Hansen
d02a90823f SCRIPTING STILL BROKEN
Added comments and regions, restructured code
Changed a lot of AppDomain junk from console from using Console.Write to Log.Verbose and set it to #if DEBUG
All modules should now refresh their configuration runtime
Made all logging in ScriptEngine.Common get script name from actual engine
Renamed LSLLongCmdHandler to AsyncLSLCommandManager
Added auto-recover with 5 sec throttle for new MaintenanceThread
2008-02-01 23:36:36 +00:00
Tedd Hansen
a6726b0c9d SCRIPT SUPPORT IS STILL BROKEN.
Bugfix: Scripts exceeding max and set to be killed were not killed, only removed.
Added ability to re-read configuration while OpenSim is running
All regions now sharing one MaintenanceThread
New MaintenanceThread:
- checks for script execution timeout
- re-reads config
- starts/stops threads if thread active count becomes too high/low compared to config
Speed increase on event execution:
- Reuse of try{}catch{} blocks
- Time calculation on event execution
2008-02-01 22:18:55 +00:00
Tedd Hansen
0c0286911d Config option to set number of scripts per AppDomain 2008-02-01 20:52:00 +00:00
Tedd Hansen
e14c8f59f7 Added config options:
ScriptThreadPriority to set script thread priority
DeactivateScriptOnTimeout to remove script if it is executing too long
2008-02-01 20:45:15 +00:00
Tedd Hansen
f4ddf5cf28 Removed "Loading inventory for Primitive" message.
Fixed small bug in thread counter.
2008-02-01 20:19:29 +00:00