Commit Graph

19537 Commits (6aa876a83b08390ab057eb012fd2c730010f79d8)

Author SHA1 Message Date
Robert Adams 427ab219b8 Add JSONification of WebStats module. Adds a '?json' query parameter
to the fetch URL to return the data in JSON format. Also adds a simple
'sim.html' that uses JavaScript to display the JSON data. Not pretty
but an example.
2013-01-24 10:44:57 -08:00
Melanie e785242c49 Reintroduce the return value of llGiveMoney. The grid will crash and burn without it. 2013-01-24 18:23:39 +01:00
Melanie 9d2e832b85 Null check the response body to make sure we're not crashing the script engine 2013-01-24 18:23:10 +01:00
teravus d5b950633d * Added in the manifold point dept on collision desc. In BulletSim engine BulletXNA. 2013-01-24 07:36:24 -05:00
teravus ba9d6b7337 * Repairs the Object updates, Collision updates, and Child Prim methods making the bulletXNA engine work again.
* The only thing that had an issue was when creating a new RigidBody, BulletXNA didn't know the type SimMotionState and the upcast type is unknown in the constructor.   Therefore, I had to update the IMotionState with a new method 'SetBody'.    All of the duplicated type information has been removed and BulletXNA is not relying on any non-standard types external to the library.
2013-01-24 07:11:32 -05:00
teravus 878df52515 * This makes the non-physics llCastRay 'better'. It's not 'correctly working', and if you look deep enough, you see that the results are not really stable depending on the direction of the ray. 2013-01-23 21:58:51 -05:00
Justin Clark-Casey (justincc) f7feed4d44 Remove unnecessary System.Linq reference from Compiler.cs
Hopefully will fix windows build via compile.bat
2013-01-24 01:11:04 +00:00
Justin Clark-Casey (justincc) b775761104 Disable the not very useful infinite recursion co-op termination tests for now as they appear to cause failures with testing in jenkins.
These tests are not very useful anyway as they never actually get a chance to try termination before the script runs out of stack
2013-01-24 00:31:42 +00:00
Melanie 2ce4a758e2 Merge branch 'master' into careminster 2013-01-24 00:27:00 +00:00
Melanie be4c8c4931 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2013-01-24 00:25:08 +00:00
Justin Clark-Casey (justincc) 957cea59a0 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-24 00:24:13 +00:00
Justin Clark-Casey (justincc) 1a610f30d8 Fix mono 2.4.3 build break by using CreateInstanceAndUnwrap 9 method call deprecated in later .net versions 2013-01-24 00:23:12 +00:00
Robert Adams 5b334079e0 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-23 16:23:11 -08:00
Robert Adams 1c3d84fe03 BulletSim: pass up and report the real collision penetration. 2013-01-23 16:20:44 -08:00
Justin Clark-Casey (justincc) 55c6753b13 Merge branch 'master' into cooptermination 2013-01-24 00:03:44 +00:00
Justin Clark-Casey (justincc) 8a22ac3f94 Pass narrower WaitHandle rather than EventWaitHandle as co-op termination wait handle to script APIs.
APIs don't need to reference any methods on EventWaitHandle
2013-01-23 23:38:08 +00:00
Justin Clark-Casey (justincc) 72dd3633ee Improve logging by making it clearer which script is failing if an assembly fails to load.
Moves the noise co-op start/stop debug log messages to only display if xengine debug level >= 1
Logs which stop strategy is being used (abort or co-op)
Adjusts some other logging to remove not very useful stuff
2013-01-23 23:34:15 +00:00
Robert Adams a7b810ddee BulletSim: remove setting of vehicle InterpolationRotationalVelocity.
This doesn't seem to help the vehicle stability.
Rename vehicle internal variables adding a "V" or "W" so it is clear
when coordinates are vehicle or world relative.
2013-01-23 14:25:42 -08:00
Robert Adams 13182904da BulletSim: small change to center-of-mass computation left out last commit 2013-01-23 14:25:30 -08:00
Robert Adams a5e9c665f0 BulletSim: center-of-gravity linkset changes. Not working yet.
Conflicts:

	OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
2013-01-23 14:25:18 -08:00
Robert Adams c1371ab786 BulletSim: working on COM 2013-01-23 14:25:06 -08:00
Robert Adams 775fd6f8cc BulletSim: fix build break introduced by previous commit 2013-01-23 14:24:54 -08:00
Robert Adams a0d460e6bf BulletSim: remove the unused RestoreBodyDependencies used by linksets
and vehicles and clean up code by removing their kludgyness.
2013-01-23 14:24:42 -08:00
Melanie 8c6984eac1 Implement get version RemoteAdmin call 2013-01-23 23:12:48 +01:00
Melanie c1795ed399 Add the Avination physics raycast glue so Core Physics can implement raycast 2013-01-23 21:03:24 +00:00
Melanie dd6ddcc7a5 Prevent double ground collisions and prefer the physics result if there is one.
ODE is known to not see the ground sometimes on raycast so the double test is
needed.
2013-01-23 20:58:47 +01:00
Melanie 6a2b673fca Remove the return value from llGiveMoney and add llTransferLindenDollars. Also
make llGiveMoney async so the script thread is not held up waiting for comms
to an external server.
2013-01-23 19:45:36 +00:00
Melanie fc1c77b42d Merge branch 'avination' into careminster 2013-01-23 19:31:27 +00:00
Melanie 87022b1fb4 Merge branch 'master' into careminster 2013-01-23 19:31:22 +00:00
Melanie c75508ec8d Fix a type (Suports => Supports). Also put the normal terrain collision check
into the physics check patch for now since physics doesn't properly return land for some reason (as tested by Nebadon)
2013-01-23 20:29:05 +01:00
Melanie 47f18caa22 Remove the return value from llGiveMoney (it was a LSL extension of OpenSim) and
make the function async so the script thread is not held up waiting for comms
to an external server.
2013-01-23 18:58:29 +01:00
Melanie 997d53e532 EXPERIMENTAL - Comment out the check for the agent already being in transit
to prevent avatars being locked into their sim on a failed teleport.
May have side effects and must be revisited to fix right.
2013-01-23 18:17:49 +01:00
Melanie f667428283 Guard against XMLRPC module ref being null, which will happen if it's disabled 2013-01-23 16:11:37 +01:00
BlueWall 2841ed05cf Merge branch 'master' of /home/opensim/var/repo/opensim 2013-01-23 08:16:18 -05:00
BlueWall 1776986dc3 Add additional return status
Adding additional return status for JsonRpcMethod. Now returns true/false
2013-01-23 08:14:21 -05:00
Melanie 74e04c0f03 Merge branch 'master' of ssh://melanie@3dhosting.de/var/git/careminster into careminster 2013-01-23 02:39:30 +00:00
Melanie cc4cfd9fa8 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
	OpenSim/Region/Physics/BulletSNPlugin/BSShapeCollection.cs
2013-01-23 02:38:59 +00:00
Justin Clark-Casey (justincc) cf168194e5 If ScriptStopStrategy hasn't been set to co-op in [XEngine] config, then continue to generate C# that is functionality identical to historical generation
This is to eliminate disruption until co-op termination has been well-tested.
In non co-op mode, XEngine will continue to load DLLs of the existing Script class and the new XEngineScript class.
Moving to co-op mode still requires existing script DLL deletion to force recompilation, either manually or by setting DeleteScriptsOnStartup = true for one run.
This change also means that scripts which fail to initialize do not still show up as running scripts.
2013-01-23 02:36:43 +00:00
teravus 9d1989e64f * Handle a NRE with Baked Textures that may result in a failed appearance. This may be an issue, or it may be a symptom. 2013-01-22 18:49:50 -05:00
Robert Adams 80b1e32bfa BulletSim: Tweeks to vehicle motion.
Pass through old angular velocity making for smoother transitions.
Remove some old kludges for angular motion (damping and rotvel suppression).
2013-01-21 23:43:24 -08:00
teravus be60c0b010 * A better way to handle the last fix (This is in case the viewer provides a list of preferred formats, though, technically, the sim would pick the first provided format the old way). This just makes it more obvious what's happening. 2013-01-21 22:08:51 -05:00
teravus 6007eae00f Merge remote-tracking branch 'remotes/origin/avination' into teravuswork 2013-01-21 21:34:49 -05:00
teravus 89676b8a48 * The fallthrough of FetchTexture was no longer resulting in a 404 response on missing textures. It was just waiting and no event was being provided. This re-enables the 404 response. 2013-01-21 21:32:48 -05:00
Justin Clark-Casey (justincc) 9a4914e58c Add co-op termination regression test for infinite recursive manual call on event function.
Such code would normally terminate quickly with a stack overflow exception anyway.
2013-01-22 02:32:40 +00:00
Justin Clark-Casey (justincc) 0727784186 Set script delay factor to 0 in co-op termination tests
This is to ensure loops aren't actually terminating from a wait on an LSL function.
This was not the case with any of the existing tests.
2013-01-22 02:26:04 +00:00
Justin Clark-Casey (justincc) 679dc811dd Add regression test for co-op termination on infinite user function call regression.
Such a script would probably run out of stack pretty quickly anyway.
2013-01-22 02:22:58 +00:00
Justin Clark-Casey (justincc) b93e8020e2 Add regression test for co-op stop of an infinite jump loop
Also fixes bug in do-while test
Improves detection of failure due to invalid script in test
Sets up xengine anew for each test rather than once for the while testsuite to improve isolation between tests.
Stop listening for chat after the first 'script is running' chat is received to reduce test run time.
2013-01-22 02:16:10 +00:00
Justin Clark-Casey (justincc) cf0b5e4f27 Add do-while co-op termination test
Minor changes to scripts in other tests.
2013-01-22 01:53:10 +00:00
Justin Clark-Casey (justincc) fbdfe43d75 Add single and comound while loop co-op termination test 2013-01-22 01:40:18 +00:00
Justin Clark-Casey (justincc) c6ba27d096 Fix bug in generating termination checks in compound statement for loop.
Add regression test for this case.
2013-01-22 01:23:10 +00:00
Justin Clark-Casey (justincc) a558f9797d factor out common code in existing co-op termination regression tests 2013-01-22 01:13:45 +00:00
Justin Clark-Casey (justincc) 419f8e0f76 Increase WaitForEventCompletionOnScriptStop to 120 secs to show that the co-op setting is active in its regression tests. 2013-01-22 01:08:24 +00:00
Justin Clark-Casey (justincc) 1730de14a4 minor: comment out Console.WriteLine debugging message in XEngine 2013-01-22 01:00:53 +00:00
Justin Clark-Casey (justincc) cd446c32d6 Add regression test TestStopOnLongForLoop() 2013-01-22 00:59:46 +00:00
Justin Clark-Casey (justincc) 49d674c74d refactor: rename XEngineTest to more descriptive XEngineBasicTests 2013-01-22 00:35:56 +00:00
Robert Adams 471c477863 BulletSim: allow changing position and rotation of a child of a linkset
without rebuilding the whole compound shape. Should make vehicles move
smoother.
2013-01-21 15:58:22 -08:00
Robert Adams 95c53ecae7 Have SOP and LSL_Api call the proper GetCenterOfMass and GetGeometricCenter
routines on the physics engine. Won't make a difference for any
existing scripts since ODE always returned Vector3.Zero.
2013-01-21 15:55:54 -08:00
teravus 09a3e134e4 * Fix notecard loading - If the notecard name is formatted like a UUID but isn't an actual asset UUID, then try to load it like an asset id first, then try to load it as a task inventoryitem name. If the passed UUID is a string, try to load it like a task inventory item name. 2013-01-21 17:30:38 -05:00
Robert Adams 3f6698a595 BulletSim: remove unused MaxTaintsToProcessPerStep parameter 2013-01-21 09:19:09 -08:00
Melanie da6f589885 Add accessors to allow serializing rot and position targets 2013-01-21 08:36:21 +01:00
Robert Adams 52b341e2e2 BulletSim: More aggressive as setting character velocity to zero
when should be standing.
Modify angular force routines to be the same pattern as linear force routines.
BulletSim vehicle turning is scaled like SL and is DIFFERENT THAN ODE!!
Fix some bugs in BSMotor dealing with the motor going to zero.
Add a bunch of parameters:  MaxLinearVelocity, MaxAngularVelocity,
MaxAddForceMagnitude, VehicleMaxLinearVelocity, VehicleMaxAngularVelocity,
and most of the values are defaulted to values that are larger
than in SL.
Use the new parameters in BSPrim, BSCharacter and BSDynamic.
2013-01-20 23:09:54 -08:00
Robert Adams 3c4868f613 BulletSim: fix problem of avatar sliding very slowly occasionally after stopping walking. Consolidate movement tests into the one prestep motion action 2013-01-20 23:09:54 -08:00
Robert Adams 2cb1d5240e BulletSim: small fix making sure terrain height is calculated
properly if the vehicle moves during vehicle actions.
2013-01-20 23:09:54 -08:00
Robert Adams 3b0df52d10 BulletSim: modify motors to return correction rather than current value
to better use them for incremental updates.
Modify prim and character to use the new motors.
Simplify the vehicle linear movement code to just update the velocity
directly or the basic movement.
2013-01-20 23:09:53 -08:00
Melanie a291e6be93 Limit active at targets to 8 2013-01-21 01:47:54 +01:00
Melanie 80529a6bac Prevent scene from holding references to SOGs with attargets beyond SOG deletion 2013-01-21 01:47:09 +01:00
Melanie 0e17887e03 Allow TeleportCancel packets to reset the transfer state machine 2013-01-21 01:46:40 +01:00
Melanie b7b3063849 Implement HTTP Request froma thread pool to avoid packet congestion 2013-01-20 18:38:00 +01:00
Melanie cf4bf7432a Revert "Refactor scripted http request to use async calls rather than hard threads"
This reverts commit 461ecd7cf9.
2013-01-20 15:58:20 +01:00
teravus 2c517d792f This updates prebuild to remove BulletSimN, implements the BulletSim API in BulletSPlugin using the BulletXNA Bullet physics engine. It also updates the BulletXNA library to be compatible with the changes. OpenSimDefaults has been updated to describe how to switch engines and terrain implementations. 2013-01-20 08:18:16 -05:00
teravus 6a75949323 * Dumping BulletSimNPlugin in favor of combining the API 2013-01-20 08:07:49 -05:00
teravus 82b954b212 * Tweak the BulletSimN API a bit. 2013-01-20 08:06:15 -05:00
Melanie 461ecd7cf9 Refactor scripted http request to use async calls rather than hard threads 2013-01-20 02:08:38 +01:00
Melanie 903cc71f0d Remove an extra ScriptSleep (merge artefact) from llSetLinkPrimitiveParamsFast 2013-01-19 22:53:51 +01:00
Melanie 2d3a57a002 Merge branch 'avination'
Conflicts:
	OpenSim/Framework/ThrottleOutPacketType.cs
	OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
	OpenSim/Region/CoreModules/Avatar/Groups/GroupsModule.cs
2013-01-19 21:49:33 +01:00
Melanie 7bd9a0edb7 Remove group IM test code also mentioning "OpenSimulator Testing" 2013-01-19 14:30:38 +01:00
Melanie bd77e2b7ba Remove the core groups module 2013-01-19 14:29:09 +01:00
Melanie 1323271826 Kill the dumb Opensimulator Testing group again - for good. 2013-01-19 13:21:43 +01:00
PixelTomsen 9c590e51b6 IRCBridgeModule: optional agent-alertbox for IRC enabled Regions look in OpenSimDefaults.ini / section [IRC]
http://opensimulator.org/mantis/view.php?id=6470

idea: https://github.com/ssm2017/IrcBridgeAlert
2013-01-19 02:40:28 +00:00
Melanie 12efac494a Merge branch 'master' into careminster
Conflicts:
	OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs
	OpenSim/Framework/Servers/HttpServer/PollServiceRequestManager.cs
	OpenSim/Region/Framework/Scenes/Animation/ScenePresenceAnimator.cs
2013-01-19 02:38:04 +00:00
Justin Clark-Casey (justincc) fc6115f777 Check the existing ScenePresence.ParentPart to make sure we're not trying to sit on a prim we're already sat upon, rather than looking up the part from scratch.
An adaptation of commit 055b8a2
Having both ParentID and ParentPart references now is redundant.  ParentID should probably be eliminated.
2013-01-19 02:29:02 +00:00
Oren Hurvitz b77da5039e Assign the SmartThreadPool name in the constructor
This is required because some threads are created in the constructor, so assigning the name afterwards would be too late.
2013-01-19 02:08:58 +00:00
Justin Clark-Casey (justincc) 3eee991935 Explicitly stop PollServiceRequestManager() rather than relying on its destructor.
Hopes to address occasional shutdown failures from http://opensimulator.org/mantis/view.php?id=6503
2013-01-19 02:04:36 +00:00
Talun 27e2ec177a New constants for llGetObjectDetails
New constants for llGetObjectDetails OBJECT_CHARACTER_TIME,
OBJECT_ROOT, OBJECT_ATTACHED_POINT, OBJECT_PATHFINDING_TYPE,
OBJECT_PHYSICS, OBJECT_PHANTOM and OBJECT_TEMP_ON_REZ
also Pathfining constants, 3 of which are used by llGetObjectDetails
2013-01-19 01:50:16 +00:00
Talun 4f70e423df Mantis 6507 keys returned by llGetAgentList incorrect for llList2Key
The type of the keys returned by llGetAgentList corrected to LSL_Key
2013-01-19 01:14:11 +00:00
Justin Clark-Casey (justincc) 652cfa2ee2 Fix use of scene debug commands when region is set to root or a specific region where there is more than one region on the simulator. 2013-01-19 00:27:17 +00:00
Justin Clark-Casey (justincc) 115e1c2abb Add "debug set set animations true|false" region console command.
Setting this logs extra information about animation add/remove, such as uuid and animation name
Unfortunately cannot be done per client yet
2013-01-18 23:22:02 +00:00
Justin Clark-Casey (justincc) 74256c0cc4 Restore previous client AO behaviour by not allowing them to remove the default animation but continue to allow scripts to do so.
This keeps the fix from http://opensimulator.org/mantis/view.php?id=6327
and fixes the behaviour regression in http://opensimulator.org/mantis/view.php?id=6483
Animations may still exhibit different behaviour if both scripts and clients are adjusting animations.
A change in the behaviour of client AO to not remove all animations may be a better long term approach.
2013-01-18 22:57:09 +00:00
Robert Adams c6b6c94ccb BulletSim: reduce jitter in avatar velocity when walking or flying.
OpenSimulator is VERY sensitive to changes in avatar velocity and
will send an avatar update message when velocity changes more than
0.001m/s. This significantly reduces the number of avatar update messages by
smoothing the avatar velocity returned by Bullet.
2013-01-18 11:39:24 -08:00
Robert Adams 482c7b5368 BulletSim: add logic to turn off pre-step actions when object goes
non-active. This turns off 'setForce', 'setTorque' and 'moveToTarget'
when the object is selected or made non-physical.
2013-01-18 11:37:36 -08:00
Melanie 9aad815177 Merge branch 'master' into careminster 2013-01-18 19:35:09 +00:00
Justin Clark-Casey (justincc) c8afc8523b Implement non-wait co-operative termination of scripts for XEngine in addition to termination on wait.
This involves inserting opensim_reserved_CheckForCoopTermination() calls in lsl -> c# translation at any place where the script could be in a loop with no wait calls.
These places are for, while, do-while, label, user function call and manual event function call.
Call goes through to an XEngineScriptBase which extends ScriptBase.
IEngine is extended to supply necessary engine-specific parent class references and constructor parameters to Compiler.
Unfortunately, since XEngineScriptBase has to be passed WaitHandle in its constructor, older compiled scripts will fail to load with an error on the OpenSim console.
Such scripts will need to be recompiled, either by removing all *.dll files from the bin/ScriptEngines/<region-id> or by setting DeleteScriptsOnStartup = true in [XEngine] for one run.
Automatic recompilation may be implemented in a later commit.
This feature should not yet be used, default remains termination with Thread.Abort() which will work as normal once scripts are recompiled.
2013-01-17 23:39:09 +00:00
Robert Adams a6afd2f706 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-17 14:51:52 -08:00
Robert Adams 75f710f1e7 BulletSim: Add one function that all actors who act on the physical
can use to know if the object is currently active.
Code cleaning including use of Util.ClampV function.
2013-01-17 14:47:35 -08:00
Robert Adams caad1edabf Add utility function to clamp a vector to a maximum magnitude. 2013-01-17 14:44:54 -08:00
Melanie 777c80becb Merge branch 'ubitwork' into avination 2013-01-16 23:37:27 +01:00
teravus 3e0e9a0962 * Enables loading cached bakes on teleport by filling in the appropriate avatar fields from the bake data. No more auto rebaking on teleport assuming your wearables, bakes and cache are consistent.
* Speeds up appearance sending..  since there's nothing to wait for.
2013-01-16 17:59:13 -05:00
teravus 670bb9cb8b Merge remote-tracking branch 'remotes/origin/avination' into teravuswork 2013-01-16 17:52:02 -05:00
UbitUmarov de49440839 dont send a full grp update on stopmovetotarget. just a rootpart terse 2013-01-16 22:17:10 +00:00
UbitUmarov 30d5faa7fc same for SetPrimParams 2013-01-16 20:55:16 +00:00
UbitUmarov 2464e65c8a llSetPos on child prim, send only a part terse update and not a group one 2013-01-16 20:27:10 +00:00
Melanie 582cb89beb Add a way to put things at the front of the queue for any throttle group.
Adds a DoubleLocklessQueue and uses it for the outgoing buckets. Added
a flag value to the Throttle Type (again) because although it's hacky, it's
the best of a bad bunch to get the message through the UDP stack to where it's
needed.
2013-01-16 19:29:27 +01:00
Melanie 206bfe0657 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
	OpenSim/Region/ScriptEngine/Shared/Instance/Tests/CoopTerminationTests.cs
2013-01-16 17:05:37 +00:00
Melanie 9c99ed26eb Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2013-01-16 16:52:57 +00:00
Melanie 5563a8916e Complete removal of the now unused state queue 2013-01-16 16:45:18 +00:00
Diva Canto 37fcf87946 Changed a couple of debug messages at the request of osgrid. 2013-01-16 08:20:32 -08:00
Melanie 9910c5f8e1 Merge branch 'avination' into careminster 2013-01-16 15:50:34 +00:00
Melanie 818254916c JustinCC's core re-merge 2013-01-16 15:47:55 +00:00
Melanie 518326b049 Merge branch 'ubitwork' into avination 2013-01-16 16:47:21 +01:00
Melanie 91138014e2 Change all uses of the removed state queue to the task queue for now. 2013-01-16 17:12:56 +00:00
Melanie 85aa1804df Complete removal of the now unused state queue 2013-01-16 17:06:25 +00:00
Melanie 451b6c0e82 Add admin_refresh_search command to RemoteAdmin 2013-01-16 14:52:04 +01:00
UbitUmarov 94710a17a4 Merge branch 'avination' into ubitwork 2013-01-16 13:11:02 +00:00
Robert Adams 8ee9daa121 BulletSim: add the editting children in linkset going phantom bug to TODO list. 2013-01-15 21:08:47 -08:00
Robert Adams 5d098d8f17 BulletSim: don't modify angular parameters when doing LIMIT_MOTOR_UP.
It was a dumb idea to try and do a nose over feature for jumping cars anyway.
Add better logging of native shape creation/reuse so can  tell the difference.
2013-01-15 21:08:46 -08:00
Robert Adams 61ff79587b BulletSim: add debugging messages to know when assets for physical
objects have been fetched.
Update TODO list with more work.
2013-01-15 21:08:46 -08:00
Robert Adams daef2b8d87 BulletSim: reduce maximum force a script can apply (like in llApplyImpulse)
to the documented maximum from the outragious number previously.
2013-01-15 21:08:46 -08:00
Justin Clark-Casey (justincc) 0963ece25b Implement co-operative script termination if termination comes during a script wait event (llSleep(), etc.)
This makes use of EventWaitHandles since various web references indicate that Thread.Interrupt() can also cause runtime instability.
If co-op termination is enabled, then termination sets the wait handle instead of waiting for a timeout before possibly aborting the thread.
This allows the script to cleanly terminate if it's in a llSleep/LL function delay or the next time it enters such a wait without any timeout period.
Co-op termination is not yet testable since checking for termination request within loops that never trigger a wait is not yet implemented.
This commit, unlike 1b5c41c, passes the wait handle as an extra parameter through IScript.Initialize() instead of passing IScriptInstance itself.
2013-01-16 02:07:43 +00:00
Justin Clark-Casey (justincc) b8949024bc Revert "Implement co-operative script termination if termination comes during a script wait event (llSleep(), etc.)"
Doing this as a favour to Melanie.  This will be back with passing the wait handles directly to the api.

This reverts commit 1b5c41c14a.
2013-01-16 01:45:09 +00:00
Melanie 70fa41863d Merge commit 'f54b398540698e6e09022fe77b6405624b532f5c' into careminster 2013-01-16 01:13:14 +00:00
Melanie fc5711fa7a Merge commit '8bf0a9f85dda4b1831630b65620d5c6868196c11' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
2013-01-16 01:11:20 +00:00
Justin Clark-Casey (justincc) 03a8a4426f Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-16 00:20:18 +00:00
Justin Clark-Casey (justincc) 1b5c41c14a Implement co-operative script termination if termination comes during a script wait event (llSleep(), etc.)
This makes use of EventWaitHandles since various web references indicate that Thread.Interrupt() can also cause runtime instability.
If co-op termination is enabled, then termination sets the wait handle instead of waiting for a timeout before possibly aborting the thread.
This allows the script to cleanly terminate if it's in a llSleep/LL function delay or the next time it enters such a wait without any timeout period.
Co-op termination is not yet testable since checking for termination request within loops that never trigger a wait is not yet implemented.
2013-01-16 00:12:40 +00:00
Melanie b5f5400e06 Add Refresh() Method to ISerachModule to allow forcing a sim to resend it's
search data
2013-01-15 22:15:58 +01:00
Melanie b3939a431c Fix llSetRegionPos and detail behaviors of llSet[Link]PrimitiveParams[Fast]()
regarding prim positioning.
2013-01-15 22:15:06 +01:00
Justin Clark-Casey (justincc) fccb03227e Instead of passing separate engine, part and item components to script APIs, pass down IScriptInstance instead.
This is to allow the future co-operative script thread terminate feature to detect and act upon termination requests.
This splits the assembly and state loading out from the ScriptInstance() constructor to a separate Load() method
in order to facilititate continued script logic regression testing.
2013-01-15 21:13:22 +00:00
BlueWall f54b398540 Merge branch 'master' of /home/opensim/var/repo/opensim 2013-01-15 10:08:27 -05:00
BlueWall ca3e0d67d2 Add Json-Rpc 2.0 To Registered Handlers
Added registration json-rpc handlers in the http server. Covers version 2.0
  See: http://www.jsonrpc.org/specification
2013-01-15 10:04:16 -05:00
Robert Adams 021964c6e0 BulletSim: tweeks to improve hover. 2013-01-15 04:24:24 -08:00
Robert Adams 181d4c6fcb BulletSim: temporarily disable banking and direction deflection
because the computations are wrong.
Add VehicleTorqueImpulse routines.
2013-01-15 02:58:14 -08:00
Robert Adams 0374b2a0b4 BulletSim: fix logic for enabling unmanaged code debug messages.
Free pinned memory when physics engine is unloaded.
2013-01-15 02:21:38 -08:00
Robert Adams edf198b766 Merge branch 'master' of git://opensimulator.org/git/opensim 2013-01-15 01:46:30 -08:00
Robert Adams 13778c895a BulletSim: by default, turn on continuious collision detection (CCD)
and enable friction computation caching. Remove dangerous BulletSim
settings from OpenSimDefaults.ini.
2013-01-15 01:44:34 -08:00
dahlia 055b8a2d58 move resit fix to ScenePresence.cs and allow for requesting sit on objects other than the object currently sat on 2013-01-14 22:24:24 -08:00
Justin Clark-Casey (justincc) 1c240cd555 Print full stacktrace from plugin loading failure to help determine what went wrong, rather than a possibly unhelpful simple exception message. 2013-01-15 01:07:20 +00:00
teravus 1c79e8a779 * Document the additional Visual Params of newer browsers in AvatarAppearance.VPElement so it can be easily looked up in code/module 2013-01-14 19:37:44 -05:00
Justin Clark-Casey (justincc) c846cefda9 Merge branch 'master' of ssh://opensimulator.org/var/git/opensim 2013-01-15 00:24:51 +00:00
Robert Adams 4e1ca890c2 BulletSim: fix not moving physical objects below terrain to over terrain.
Add locking on register prestep action list preventing potential race conditions.
Little comment and formatting changes.
2013-01-14 15:46:46 -08:00
Justin Clark-Casey (justincc) 7978b349bd refactor: Simplify ScriptInstance by retaining reference to SceneObjectPart instead of sometimes but not always looking it up. 2013-01-14 23:19:47 +00:00
Robert Adams 8bf0a9f85d BulletSim: disable center-of-mass computation for linksets until debugged. Move physical prim above ground if it is underground. Previously tried to correct by applying and up force but the prim would never go through the ground. 2013-01-14 07:50:58 -08:00
UbitUmarov b263587e21 try to patch getmesh Throttle (test) 2013-01-13 15:25:51 +00:00
Melanie b924e333b7 Merge branch 'avination' into careminster 2013-01-13 13:44:28 +00:00
Melanie 923e5df7ae Merge branch 'master' into careminster 2013-01-13 13:44:24 +00:00
dahlia 2eb0d8b617 add some sanity checking to HandleAgentRequestSit handler 2013-01-13 13:43:59 +00:00
UbitUmarov 2028787c0d prevent potencial invalid refs 2013-01-13 12:25:41 +00:00
Robert Adams 459fcd81c9 BulletSim: move center of gravity of linkset to its geometric center.
Necessitated allowing simulator and physical position of a body to
get out of sync since Bullet assumes that <0,0,0> is the center of mass.
Update DLLs and SOs for the UpdateChildTransform so positions of
  individual prim in a linkset can be implemented.
2013-01-11 16:47:53 -08:00
Robert Adams eacc2561d1 BulletSim: add osGetPhysicsEngineType() LSL function and update
the physics engines to return the name that is specified in the INI
file ("physics = XXX") as the type of engine.
This os function is a little different than the others in that it
does not throw an exception of one is not privilaged to use it.
It merely returns an empty string.
2013-01-11 16:47:35 -08:00
Robert Adams 93adc4cb66 BulletSim: Add IsSelected attribute to physical objects. Have vehicles check to see if physical before trying to step. Replace vehicle gravity application. Previously relying on Bullet to apply gravity but since vehicles over-ride the velocity calculation, gravity never had a chance to accelerate the body down. Added AddForceImpulse as well as AddForce for those who need to apply immediate velocity updates. Use the impulse to apply the linear motion. 2013-01-11 16:47:20 -08:00
Robert Adams daacd4deed Fix exception reporting in SceneObjectPart so it logs what the exception is rather than just saying it happened. 2013-01-11 16:47:07 -08:00
Robert Adams 7e58bbaac6 BulletSim: Redo linear function coding so they can better interact. New algorithm for limitMotorUp that relies on going up when not colliding rather than distance from ground. Add parameter for turning on and off embedded source vehicle debugging. 2013-01-11 16:46:53 -08:00
Robert Adams 98168edc29 BulletSim: remove double application of buoyancy. Centralize computation of buoyancy. Add motor angular debugging controls. 2013-01-11 16:46:38 -08:00
Robert Adams b592ec265b BulletSim: fix the 'No recognised physics mesh found ...' error spew by remembering that the last asset fetch failed until the simulator resets the shape parameters. 2013-01-11 16:44:34 -08:00
UbitUmarov fcf3960168 make sure keyframe rotations are normalized 2013-01-11 20:25:12 +00:00
UbitUmarov a892dbba63 go back bypassing sog updates control (test) 2013-01-11 18:18:22 +00:00
UbitUmarov d7f0bf04f6 update the last information sent in terse updates where they are sent to all
clients and not only on Scheduled sends
2013-01-11 16:24:48 +00:00
UbitUmarov 819f4b338d remove redundant lastPhysGroupPos and lastPhysGroupRot checks
in SOG Update(). rootpart does more complet checks
2013-01-11 16:02:14 +00:00
UbitUmarov 1f9dbdf8b8 same for AngularVelocity. Use normal terse updates in place of sending
imediatly. If that's good for physics, needs to be good for this
2013-01-11 14:16:45 +00:00
UbitUmarov 756d53db5e keyframe. Don't use group UpdateRotation since this enqueues a terse
update and we are sending them imediatly
2013-01-11 13:39:14 +00:00
dahlia 72cc94cfbc add some sanity checking to HandleAgentRequestSit handler 2013-01-10 20:21:18 -08:00
Justin Clark-Casey (justincc) 660d36a5b0 Implement a workaround solution for saving manual script state changes by the user before logout instead of wrongly removing the script early.
This workaround relies on the fact that a closing client goes inactive before the attachments derez calls happen.
This reverts the change to remove scripts too early instead of stopping them, since the the two step stop then remove is necessary to execute the detach event.
2013-01-11 02:28:43 +00:00
Melanie f74915ed4f Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/Scene.cs
2013-01-11 02:13:10 +00:00
Justin Clark-Casey (justincc) 05ac6d3209 Save attachments on detach/exit if a contained script state has been changed.
This involves making Attachments module listen for start/stop script changes.
It also involves removing the script from the region on detach in the same manner as every other DeleteSceneObject() call rather than simply stopping it
This is necessary tue to the bad assymetry of start and stop script triggers but it appears to be the correct behaviour anyway, as detached objects are completely gone from the sim.
Not just in a state where their scripts have been stopped.
2013-01-11 01:46:36 +00:00
Justin Clark-Casey (justincc) 26347307ec Fix a regression in the last few scene commands changes where setting these via the viewer estate dialog stopped working.
Forgot to register the new interface.
Also removes some code which got included by adpating an existing module.
2013-01-11 00:08:52 +00:00
Justin Clark-Casey (justincc) f3a2bbbd93 Add "debug scene get" console command to list current scene options 2013-01-10 23:56:11 +00:00
Justin Clark-Casey (justincc) a16ae5d7e3 Move scene debug commands into separate module. Command changes from "debug scene <key> <value>" to "debug scene set <key> <value>" to accomodate future settings 2013-01-10 23:49:48 +00:00
Justin Clark-Casey (justincc) 983e458bb6 refactor: route the final scene backup through the same code that handles periodic backup
This is rather than making unnecessary duplicate checks that the SOG later performs again.
2013-01-10 22:59:40 +00:00
Justin Clark-Casey (justincc) 17f21ba9a0 minor: Capitalize GroupsModule command category 2013-01-10 22:46:25 +00:00
Justin Clark-Casey (justincc) e65737be93 minor: add missing newline to "debug scene" console command 2013-01-10 22:42:33 +00:00
Justin Clark-Casey (justincc) f566dc0618 Remove unimplemented "debug teleport" console command 2013-01-10 22:42:12 +00:00
Justin Clark-Casey (justincc) 701ca1e4b8 Add "debug scene pbackup true|false" console command. This enables or disable periodic scene backup. For debug purposes.
If false, scene is still saved on shutdown.
2013-01-10 22:38:48 +00:00
Justin Clark-Casey (justincc) 170d376967 On baked texture save, replace any HG ID with an ordinary asset ID so the HGAssetBroker doesn't try to save back to the avatar's originating region 2013-01-10 01:45:56 +00:00
Melanie 3a495ccd56 Merge branch 'master' into careminster
Conflicts:
	OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs
	OpenSim/Region/ScriptEngine/Shared/Api/Implementation/Plugins/Timer.cs
	OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
2013-01-10 01:38:03 +00:00
Justin Clark-Casey (justincc) 84407e322f revert accidental change to MemoryWatchdog stat calculation in previous b1b4687 2013-01-10 01:30:00 +00:00
Melanie aecb32b74e Merge branch 'avination' into careminster
Conflicts:
	OpenSim/Region/Framework/Scenes/ScenePresence.cs
2013-01-10 01:25:07 +00:00
Justin Clark-Casey (justincc) b1b4687250 Add "show script timers" command to show script timers. For debug purposes.
Also, "show sensors" changes to "show script sensors".
2013-01-10 00:57:49 +00:00
Justin Clark-Casey (justincc) a0000a034f Add "show sensors" command to show script sensor information for debug purposes. 2013-01-10 00:32:22 +00:00
Melanie 949da1d4af Change IsRoot to use ReferenceEquals to prevent operator == messiness 2013-01-09 20:07:21 +01:00
UbitUmarov b70d50edf2 fix llGetRot and parameters prim_rotation for attachments. Only on
LSL_api to avoid side effects for now
2013-01-09 17:59:32 +00:00
UbitUmarov b528281018 stop endless loop in lGetLinkPrimitiveParams 2013-01-09 17:01:09 +00:00
Melanie 27b0914681 Prevent a null ref in llGetLinkPrimiteveParams. Still not a fix for the real
issue.
2013-01-09 16:01:00 +01:00
Melanie 7d519fde3b Merge branch 'teravuswork' into avination 2013-01-09 09:19:52 +01:00
Justin Clark-Casey (justincc) 290dc274ec minor: Remove unnecessary commented out code from last commit c28a2f05 and fix up code comment 2013-01-09 01:04:43 +00:00
Justin Clark-Casey (justincc) c28a2f05ca minor: make spacing consistent in console help output 2013-01-09 00:54:28 +00:00
Melanie e4fad4a09d Merge branch 'master' of melanie@opensimulator.org:/var/git/opensim 2013-01-09 00:21:43 +00:00
Robert Adams df1d7414ad BulletSim: Fix hover height (boats float at the correct level).
Fix problem of vehicles going crazy when backing up.
2013-01-08 16:37:49 -08:00
Melanie f16c4a254c Revert "Prevent empty Anim Packs"
This reverts commit 5561333668.
2013-01-09 00:20:24 +00:00
Melanie c1c540f454 Revert "Fix sequence id fr default anim"
This reverts commit a775931a0c.
2013-01-09 00:20:14 +00:00
Justin Clark-Casey (justincc) 3d5e3e35b7 minor: Fix command match of "debug script" command to "debug scripts" to match other scripts commands (and it's own short help text) 2013-01-09 00:08:08 +00:00
Justin Clark-Casey (justincc) 5fa4b8b144 minor: Allow "script *" console commands to take multiple script item ids 2013-01-09 00:01:48 +00:00
Melanie a775931a0c Fix sequence id fr default anim 2013-01-08 23:36:05 +00:00
Melanie 5561333668 Prevent empty Anim Packs 2013-01-08 23:12:32 +00:00
Melanie 92db4ef068 Revert "Prevent empty Anim Packs"
This reverts commit ab053df706.
2013-01-09 00:11:08 +01:00
Melanie be844030ce Revert "Fix sequence id fr default anim"
This reverts commit 8f37f2ca7e.
2013-01-09 00:10:57 +01:00
Melanie 2ac96dd181 Add the new UpdateAgentInformation cap to make maturity on more recent viewers
work.
2013-01-08 22:52:14 +00:00
Melanie 8f37f2ca7e Fix sequence id fr default anim 2013-01-08 23:24:34 +01:00
Melanie ab053df706 Prevent empty Anim Packs 2013-01-08 23:01:09 +01:00
Melanie 0a393b317d Add the new UpdateAgentInformation cap to make maturity on more recent viewers
work.
2013-01-08 22:32:39 +01:00
Melanie 0aabb93ef3 Remove now superfluous update of m_lastSize 2013-01-08 14:00:40 +01:00
Melanie e1cfa846ea Merge branch 'ubitwork' of ssh://3dhosting.de/var/git/careminster into ubitwork 2013-01-08 13:58:42 +01:00
UbitUmarov fb088a48ac also update m_lastSize in SendAvatarDataToAllAgents so more paths update
it
2013-01-08 14:09:01 +00:00