Commit Graph

353 Commits (3efdccbb12fc2d5339870ade39e1b1d54da4fe9b)

Author SHA1 Message Date
Melanie Thielker 264eeffd02 Fix thingd so that autoreturn also works when the user is not in the sim.
Also add experimental distance ordering for prims
2008-10-18 07:27:39 +00:00
Melanie Thielker efe3f3eb2a Megapatch. :) Fix skull attachment editing. Streamline Object terse updates.
Add rezzing time to objects. Add Object return and traffic fields to land
database. Add plumbing for auto return. Implement auto return.
Contains a migration. May contain nuts.
2008-10-18 05:51:36 +00:00
Justin Clarke Casey 0d6eb37ac5 * minor: Make it clear that non-scheduled updates can happen outside of the per frame update heartbeat 2008-10-14 15:56:14 +00:00
Justin Clarke Casey 3b9400bcea * refactor: rename SendKiPrimitive to SendKillObject since this appears more descriptive of what it actually does 2008-10-14 14:43:46 +00:00
Homer Horwitz 628e3a9553 - Patching a symptom of the failed WP start. We really need to find the reason
for that...
2008-10-11 16:58:05 +00:00
Melanie Thielker b55c9761b4 Fix a nullref 2008-10-06 04:20:27 +00:00
Melanie Thielker 1f7966d6e8 Fix a privilege escalation with linked sets 2008-10-06 02:29:38 +00:00
Jeff Ames aab6cdd8b0 Update svn properties, minor formatting cleanup. 2008-10-05 14:15:39 +00:00
Melanie Thielker ee4c01f5e6 Tiny performance tweak 2008-10-04 06:57:20 +00:00
Melanie Thielker 439589260c Avoid a gratuitious KillObject storm on region crossing 2008-10-04 05:38:16 +00:00
Melanie Thielker 74f89fb22d Add "Drop" functionality to pie menu 2008-10-04 01:09:22 +00:00
Melanie Thielker ab260b5d23 Fix: Mantis#2326: Fix: privilege escalation through attach from ground
Fix: objects being duplicated inventory on detach. Fix: Mad jumping around of
attachments while editing. Fix: Attachments being persisted to database on
login. Fix: Attachments being persisted when changed by a script like
invisprim refresh. Fix: Attachpoint set, but not reset correctly. Fix: prevent
spurious full updates while editing attachments. Several other fixes
2008-10-03 21:44:33 +00:00
Melanie Thielker 1b2380db84 Cause objects to be removed from the database when they go temp or get
attached. Also make sure that parcel prim counts get updated
2008-10-03 16:18:38 +00:00
Melanie Thielker 3902149e1b Implement temp-on-rez objecte really being temporary 2008-10-03 15:32:44 +00:00
Melanie Thielker 36097a8198 Prevent attachments to be persisted in the destination region when the
avatar is not present there.
2008-10-03 13:45:54 +00:00
Melanie Thielker c9fbc03a18 Attempt to prevent attached prims from being persisted. Attachments with
invisiprim refresh scripts get sent to the database and remain there when
the agent logs out. This tries to prevent that.
2008-10-03 05:23:30 +00:00
Teravus Ovares 16b6738cda * Patch from JHurliman
* Updates to libomv r2243, 
* Remove lots of unnecessary typecasts
* Improves SendWindData()
Thanks jhurliman. 
* Will update OpenSim-libs in 10 minutes..
2008-09-26 17:25:22 +00:00
Homer Horwitz 0f020a7cd2 Fix another reason for #2218 2008-09-21 17:01:58 +00:00
Homer Horwitz f6071c030d Don't attach attachements to child agents. This coincidentially fixes a race
condition that was the reason for mantis #2218.
2008-09-21 16:07:41 +00:00
Melanie Thielker 23c217dd7b Kan-Ed fix series.
Correct a condition where a prim is linked before it has been persisted
for the first time and is then persisted through it's former SOG with
a bad offset position.
2008-09-18 15:24:16 +00:00
Melanie Thielker 7e8320bada Kan-Ed fix series. Fix llTakeControls to behave as documented.
XEngine fixes: prevent queue overruns, prevent spamming when no key
is down. Release controls when conflicting permissions are requested
or permissions are refused later. Release when prim or script are deleted.
Fixes Scene script instance deletion semantics.
2008-09-17 22:00:56 +00:00
Justin Clarke Casey f437c4d8c9 * minor: oops, remove a warning I just inserted myself - naughty boy 2008-09-16 17:35:35 +00:00
Justin Clarke Casey ec4189b722 * If an individual scene object throws an exception while storing, deal with this locally rather than letting it propogate up the stack
* This will allow other scene objects to persist and stop the exception taking down the whole region server
2008-09-16 17:30:30 +00:00
Justin Clarke Casey 90ec9c46d5 * Move the ResetChildPrimPhysics() calls to after physics have been applied to the parts rather than after each individual part
* From looking at the code there shouldn't be any difference, and this appears to speed up prim loading and make a certain failure case (where prims seem to be going out of 
bounds on startup) less of a problem.
* However, if I've been bad please revert this patch
2008-09-12 00:45:24 +00:00
Justin Clarke Casey 3f1dbae8e4 * minor: various doc and tidy up, logging increase to make it clearer which prim is failing a border crossing 2008-09-12 00:37:59 +00:00
Melanie Thielker 3ee91cb3c6 Preserve link numbers when items are taken into inventory and re-rezzed. 2008-09-09 03:48:09 +00:00
Jeff Ames fae34bb10c Update svn properties, formatting cleanup. 2008-09-09 01:26:48 +00:00
Melanie Thielker 490ac0be00 Implement proper persistence of the following prim properties:
Floating text, Rotation, Texture animation, Particle System
This will make "Eye Candy" scripts work without modification in
XEngine. The use of the CHANGED_REGION_RESTART hack is no longer
needed. Implemented in MySQL only, hovertext also in SQLite.
2008-09-08 02:40:20 +00:00
Teravus Ovares 3f55b03bbf * Fixes linking using the new types.
quaternions are not communicative!
2008-09-07 13:24:23 +00:00
Teravus Ovares a97155b106 * Addresses the same issue as last commit on SceneObjectGroup border crossings 2008-09-06 19:40:04 +00:00
Teravus Ovares 6fc23adbc2 * Fixes a few type changes that caused the XML Format to break.
* Testers, please try rezzing your inventory on this revision and sending me feedback in mantis.
* Users, it's not time to update yet.  The dust still hasn't settled.
2008-09-06 19:21:41 +00:00
Teravus Ovares 7d89e12293 * This is the fabled LibOMV update with all of the libOMV types from JHurliman
* This is a HUGE OMG update and will definitely have unknown side effects.. so this is really only for the strong hearted at this point.  Regular people should let the dust settle.
* This has been tested to work with most basic functions. However..   make sure you back up 'everything' before using this.  It's that big!  
* Essentially we're back at square 1 in the testing phase..  so lets identify things that broke.
2008-09-06 07:52:41 +00:00
Justin Clarke Casey 03581c17e6 * refactor: Make SOG itself responsible for checking whether it's already been deleted on an update request from the regular sweep 2008-09-06 01:10:47 +00:00
Justin Clarke Casey 4d86a324f8 * minor: change hard tabs back to spaces in previous commit
* my excuse is that I hadn't used this monodevelop exe before...
2008-09-06 00:55:16 +00:00
Justin Clarke Casey 01878b886c * Fix mantis 2130 - nre occuring sometimes when the regular prim update sweep occurs
* Fold m_deleted and m_isDeleted together (ugh!)
2008-09-06 00:44:50 +00:00
Melanie Thielker eee9c114cb Mantis #2111
Eliminate gretuitious KillObject packets. KillObject is sent to the
viewer for the root part only.
Also prevents the full update on deselect that makes a deleted object
reappear and stay visible until the background deleter got around to it.
We still send 2 KillObject packets for the root prim, that could be 
avoided only at a cost in reliability. One packet seems an acceptable
price to pay for consistency.
2008-09-03 19:28:46 +00:00
Jeff Ames 6ef9d4da90 Formatting cleanup. 2008-08-18 00:39:10 +00:00
Melanie Thielker 5469c0d6f8 Fix one more instance of a bad bit value for the collision event 2008-08-04 21:30:12 +00:00
lbsa71 8e869b2fff * Changed a number of field names to ccc (public members shouldn't be called m_) 2008-07-26 21:22:15 +00:00
Dahlia Trimble c12d4d21e3 Modified ResetChildPrimPhysicsPositions() to allow archiving and physics to coexist peacefully (as per justincc's recommendations) 2008-07-26 19:51:17 +00:00
Dahlia Trimble 287674296e reinstated ResetChildPrimPhysicsPositions() as some prims had bad/missing proxies without it 2008-07-26 01:58:13 +00:00
Justin Clarke Casey d954f46a0a * Stop the HasGroupChanged flag being reverted for newly restored prims which need to be persisted to the db
* This should stop the problem where linked prims loaded via an archive did not survive server restart
* It may address mantis 1819 though the symptoms don't look consistent
2008-07-25 17:48:58 +00:00
Justin Clarke Casey fd4e703f25 * Remove dumb bug I put in which meant that an archive save would never complete if there were any missing assets 2008-07-25 15:18:24 +00:00
Dr Scofield 031e140761 From: Christopher Yeoh <yeohc@au1.ibm.com>
The LL Server sets the CreateSelected flag for a prim when sending a
property update when objects are linked. The following patch 
gets OpenSim to do the same.
2008-07-25 10:13:26 +00:00
Jeff Ames 80d8e2889e Update svn properties. Formatting cleanup. Remove a compiler warning. 2008-07-23 13:24:25 +00:00
Melanie Thielker 8ae7dc628b Make the max sizes of physical and nonphysical prims configurable in OpenSim.ini
Defaulted to 65536 and 10, respectively
2008-07-20 15:19:26 +00:00
Melanie Thielker bcf74416a1 Fix prim link numbers (Mantis #1781)
Implements additional unlink modes (unlink root prim from link set, some
multi-set operations). Linking (single and mutiple) fully implemented.
Consistent numbering of links while in world. Link/delink with predictable
link numbering. Correct link numbers in LSL.
Not all multi-set ops implemented. Link numbers still change when taken and
re-rezzed.
2008-07-19 04:05:34 +00:00
Justin Clarke Casey eb63b9bbc1 * Actually persist restored archives to the database - wasn't actually doing this before (doh)
* Not quite perfect yet
2008-07-13 00:18:29 +00:00
Justin Clarke Casey 23c4a409b7 minor: method documentation 2008-07-12 21:43:35 +00:00
Justin Clarke Casey 654b3424c7 * Remove warning and tidy up logic in SceneObjectGroup.UpdatePrimFlags() 2008-07-12 19:05:12 +00:00
Justin Clarke Casey 4e7dd0d919 * Start compressing archives 2008-07-12 18:54:21 +00:00
Charles Krinke 38da8960e9 Mantis#1707. Thank you, Melanie for a patch that:
This patch limits the maximum size of prims that can be created using libsl bots 
or modified clients to 65536mper side. It also limits LSL functions to that size.
If a prim is already physical, the enforced constraint is 10m.
A prim that is larger than 10m cannot be turned physical, either via script or UI.
Linksets are handled correctly, so scaling of physical linksets is constrained by 
the size of it's largest component prim. Also, turning linksets physical is based 
on the size of it's largest ptim.
2008-07-10 03:13:29 +00:00
Charles Krinke 9a0ef22ed9 Mantis#1616. Applied Melanie's patch. This may or may
not break trunk.
2008-06-28 16:08:12 +00:00
Dr Scofield 748f72326d last round of warning squashing. calling it a day now. 2008-06-27 23:03:39 +00:00
Justin Clarke Casey 9bf67201c3 * Remove responsibilty for signalling scene object change from SceneObjectPart.SendFullUpdate()
* This means that we will no longer pointlessly repersist all the prims in the scene when OpenSim first starts up
* This also means that force-update on the console will not trigger repersistence.
* Also, in other places persistence is no longer done where it wasn't actually necessary
* I think I changed the code for all instances correctly, but it's not possible that I missed some and some things which did persist properly have stopped
* Please patch or mantis if this is the case
2008-06-27 16:36:19 +00:00
Justin Clarke Casey 6175021300 * refactor: Remove group changed responsibilty from ScheduleGroupForTerseUpdate 2008-06-27 15:04:35 +00:00
Justin Clarke Casey c299953ce5 * Remove SOG.SendGroupFullUpdate() group changed responsibility 2008-06-27 14:46:44 +00:00
Justin Clarke Casey d34a46eae1 * refactor: Move responsibility for deciding whether a group should be repersisted on to callers of SceneObjectGroup.SendGroupTeruseUpdate() 2008-06-27 14:39:21 +00:00
Justin Clarke Casey 836557a2f7 * refactor: fission InnerScene.AddSceneObject() 2008-06-27 14:25:36 +00:00
Justin Clarke Casey c9b41bdc4e * Add extra backup parameter to InnerScene.AddRestoredSceneObject() 2008-06-27 14:15:14 +00:00
Justin Clarke Casey ca88e3580b * archive each object as a separate xml file rather than put them all in one single large file
* this is being done for reasons of compositionality
2008-06-21 23:45:22 +00:00
Justin Clarke Casey e19a76377c * Refactor: Fold sog.DeleteParts() functionality into existing sog.DeleteGroup() 2008-06-21 20:12:01 +00:00
Justin Clarke Casey b290ce405f * Remove a bug I created in r5171 where taking an object would terminate the client session
* change code to use an explicit state variable instead of using SOG.Name = null to signal deletion
2008-06-21 19:56:19 +00:00
Justin Clarke Casey 3a111650cb * minor: override the name of the sog such that it gets/sets the root part name 2008-06-21 18:11:45 +00:00
Justin Clarke Casey 16d0a895cb * Refactor: Move the responsibility for applying physics and sending the initial client update to Scene.AddSceneObject() from some of the SceneObjectGroup constructors
* I think this has been done cleanly from inspection and testing, but if prim creation or load suddenly starts playing up more than usual, please open a mantis
* This also has the effect of stopping the archiver generating ghost in-world prims
* Some code dupliction also removed
2008-06-17 20:36:21 +00:00
Justin Clarke Casey 33d32355a1 * refactor: Remove largely duplicate code from SceneXmlLoader.CreatePrimFromXml2() 2008-06-17 17:23:00 +00:00
Justin Clarke Casey 1898674254 * minor: Get rid of rogue "Current node RootPart" message in the SceneObjectGroup 2008-06-16 22:03:15 +00:00
Justin Clarke Casey 7cdedcaf0e * minor: Remove and tidy duplicate 'storing object to scene' messages in log 2008-06-12 18:18:59 +00:00
Justin Clarke Casey 8714833986 * refactor: For new objects, move attach to backup to occur when adding to a scene, rather than on creation of the group
* Adding to a scene is now parameterized such that one can choose not to actually persist that group
* This is to support a use case where a module wants a scene which consists of both objects which are persisted, and ones which are just temporary for the lifetime of that server instance
2008-06-12 17:49:08 +00:00
Justin Clarke Casey 74017a4331 * refactor: rename CreatePrimFromXml to CreatePrimFromXml2 2008-06-12 16:54:04 +00:00
mingchen 5ab5991676 *Fixing another object counting bug 2008-06-07 00:24:43 +00:00
Teravus Ovares 8c507b633b * Added Light control from script in LLSetPrimitiveParams. 2008-06-06 22:28:52 +00:00
Teravus Ovares c892ddcd20 * This wraps the autopilot request to the client's sit response. An interesting, but successful way to do it.
* This also takes care of a few error situations that were previously never seen.
2008-06-06 12:51:20 +00:00
Teravus Ovares 83bd85ce7f * Fix string literal with URL + LLcommand();
* Added 'detected around: value' when a x.Y detect occurs to help debug.
* Fixed object text is too long to store to the database (wikilith)
2008-05-29 16:21:41 +00:00
Justin Clarke Casey bf7c557f57 * Minor: method documentation fiddling in SceneObjectGroup 2008-05-26 02:17:03 +00:00
Justin Clarke Casey 5c8a93c426 * Extract and boil down necessary texture UUIDs for an archive of the scene prims
* no user functionality yet
2008-05-26 01:50:40 +00:00
Jeff Ames 5d77625e9a Update svn properties. Formatting cleanup. 2008-05-25 23:27:38 +00:00
Teravus Ovares c20f7d6171 * A hacky Top Scripts display. It isn't accurate as far as ms accounting, however you can use it to help find out what scripts are causing your simulator to cry.
* Access it from the Estate tools/Debug tab.
2008-05-25 20:50:45 +00:00
Charles Krinke 36b8196f7a Thank you kindly, Tiffany for a patch that helps:
Drag copy a prim and the prim that is moved, persists. 
The prim that is created does not survive a restart.
2008-05-25 19:21:21 +00:00
Teravus Ovares 29092d3999 * phantom sculpties don't request the sculpt texture anymore. 2008-05-25 04:15:32 +00:00
Justin Clarke Casey 86c46e92cd * Disabling isSelected check on object persistence backup (at least temporarily), since it appears we sometimes either don't receive or don't register deselect packets when
prims are shift copied.
* A better long term solution may be to address the problem of why we're not always seeing the deselects
2008-05-25 01:09:14 +00:00
Justin Clarke Casey bc92d72828 * Refactor: Collapses parts of different code paths in scene used when deleting and unlinking an object 2008-05-25 00:09:08 +00:00
Justin Clarke Casey f3067ce6f9 * Refactor: Change previous commits Object methods to SceneObject methods instead, on the basis that this is less likely to cause confusion with c#'s base object type 2008-05-24 22:45:13 +00:00
Justin Clarke Casey 79eecd3d25 * Refactor: Renaming various *Entity*() methods to *Object*() methods on the basis that they all take SOG parameters to improve code readability for now 2008-05-24 22:10:14 +00:00
mingchen d04443b4fe *Refactor of the LandManagementModule that allows OpenSim to run without it 2008-05-23 15:12:15 +00:00
Justin Clarke Casey 1f57fd4bec * Minor: Tidy ups and logging tweaks. 2008-05-22 00:41:03 +00:00
Teravus Ovares 5af108a029 * This update causes the backup process to run in a separate thread.
* Concurrency issues are resolved because each object makes a memory-only copy of itself and backs up the copy.
* Because of the way this is done, the latest at the time of the backup gets backed up (no functionality change)
* You can move *thousands of objects at a time* and the sim doesn't freeze and wait for the backup to complete.
* This can be enhanced more by dedicating the thread as opposed to starting it when the backup process starts.
2008-05-21 21:22:56 +00:00
Teravus Ovares 2bd03b7c8c * Group type stuff. Nothing spectacular. two packets, sorta almost semi half tiny amount implemented. 2008-05-18 03:21:22 +00:00
Jeff Ames a5f08b430d Formatting cleanup. 2008-05-17 00:06:35 +00:00
Teravus Ovares aa5197304e * Committing patch from mantis 0001297: [PATCH] Fix behavior of child prim inventories. Also enables 'New Script' button. from Melanie. Thanks Melanie! 2008-05-16 23:11:00 +00:00
Jeff Ames 65c5efe43b Formatting cleanup. 2008-05-16 01:22:11 +00:00
Teravus Ovares d60e457463 Committing patch from Melanie. 0001290: [PATCH] implement permissions propagation and script module hooks. Thanks Melanie!
* Implements quite a few inventory related perms.
* (from Teravus) Fixes Take Copy
2008-05-15 19:28:10 +00:00
Teravus Ovares a4efa93993 * Comitting 0001271: [PATCH] Refactor permissions to fully allow stacking permissions modules. From Melanie. Thanks Melanie! 2008-05-14 23:25:07 +00:00
Justin Clarke Casey 587f6ab645 * Refactor: Remove SceneObjectGroup.GetScenePresences() in favour of a direct call to Scene 2008-05-14 21:09:41 +00:00
Teravus Ovares 39eb39c0d5 Applied Patch mantis 1220. Implements llGetStartParameter. Thanks! 2008-05-14 05:43:21 +00:00
Teravus Ovares 05de723e51 * Refactored two more OutPackets. ObjectPropertiesFamily, and Object Properties. 2008-05-10 20:25:40 +00:00
Teravus Ovares e8478dadc8 * Experiment in Zerocoding. 2008-05-10 10:28:49 +00:00
Teravus Ovares b7baa3cd2a * Valid Sculpted prim now collide properly.
* The first time you set the sculpted texture of a prim you might have to futz with it to get it to generate a sculpted physics proxy
* Note that there are already issues in Trunk, (such as the prim scaling issue and prim jumping issue.  Essentially editing is difficult right now)
* This just adds to the experimental nature of trunk. :D
2008-05-09 07:50:00 +00:00
Jeff Ames 0ea48cf786 De-tabify source. 2008-05-06 22:41:38 +00:00
Teravus Ovares 240e8646da * If you llApplyImpulse on an attachment, it applies impulse on the avatar, not the attachment. 2008-05-06 00:23:19 +00:00