Hello everybody. This is a summary of the last eight week’s development changes in OpenSimulator. Except where otherwise specified, the changes described here appear only in OpenSimulator’s cutting edge ‘master’ branch in OpenSimulator’s Git source control system. Only changes that I think will be interesting to end users are listed. Please do not attempt to use code taken directly from ‘master’ in any production environment. Sometimes this in-development code may not work or may even cause data corruption. If you are not a developer or tester, please treat this summary instead as a preview of what will be coming up in the next release. The latest official release is OpenSimulator 0.7.6.1 (released on February 1, 2014).
The letters and numbers in brackets after some entries tell you the latest git commit to which they apply.
This post covers git master commits 31de7b8 to 9664273.
General development news
- Nothing notable this time.
Features & bug fixes
- Aleric contributed a patch to fix PRIM_ROTATION with avatars in llSetLinkPrimitiveParams() so that it properly sets the global rotation rather than the local roation (31de7b8).
- I made a change so that if a sitting avatar is moved by less than 0.05m, updates are sent to other viewers rather than filtered out (c9415fd).
- Dev Random contributed a patch to add varregion support to the osGetRegionSize() OSSL function (9de3fe9).
- I did some work on fixing a problem where avatar connections on a region could be timed out if somebody sent an IM to a large group. Needs more work as this may cause an issue with registering offline instant messages. More details in Mantis 7037 (77e7bbc).
- Oren Hurvitz of Kitely fixed an issue where keyframe motion stopped on the original object when it was copied into inventory (120f872).
- Oren fixed an issue with keyframe motion not operating properly in megaregions (0237d91).
- Oren fixed Keyframe motion to work with very slow movement. Previously, this would not work with movement speed below 0.05 m/s (a893fd9).
- Robert Adams increased the maximum physical prim size from 10m to 64m, on Lani Global’s suggestion (71c808c).
- I implement OSSL functions osForceCreateLink(), osForceBreakLink() and osForceBreakAllLinks(). These are identical to llCreateLink() and llBreakLink() except that they don’t require user permissions.
- I fixed llBreakAllLinks() so that it only works if the script has PERMISSION_CHANGE_LINKS (6a279fe).
- I fixed a bug where traffic statistics were not persisted when they were changed by a region module (ae56b946.
- Melanie Theilker of Avination added a facility to delete maptiles (a53272c).
- I added ProcessedFetchInventoryRequests, QueuedFetchInventoryRequests and QueuedPollResponses statistics. These indicate how many viewer inventory requests remain to be processed. For working on the as yet unresolved Mantis 7054 (1497b75).
- Jak Daniels contributed a patch to allow static maptiles to be loaded from a file (b5f94c7).
- Talun contributed a patch to implicitly grant PERMISSION_TRACK_CAMERA permission to scripts in attachments (bd6f734).
- Talun contributed a patch so that maximum size particles are still generated if llParticleSystem() or llLinkParticleSystem() is given a particle size greater than the maximum of 4m (fb31227).
- I fixed a bug so that scene objects which have their temporary flag set then unset are now persisted (a5800f4).
- Robert Adams fixed a BulletSim plugin issue where axis contraints were also constraining linear motion (b0cb0ec).
- Robert made a BulletSim plugin change so that the avatar physics shape is a rectangle rather than a capsule. This with a view to making avatar movement better and allowing avatar height to be computed more accurately (562a3cb).
- Oren fixed an issue where linking two objects after the linkee had already been persisted and then deleting the object would fail to properly delete the linkee (62b3bdf).
- Oren fixed a bug so that force owner, abadon, request and reclaim updates to a parcel are now persisted (bf68dba).
- Oren trimmed search queries for users, groups, etc. to prevent issues where some viewers are adding a space on the end of requests (a2dd8f3).
- Oren fixed an issue where hidden groups were showing in search results (b9e0d0f).
- Dev Random contributed a patch that implements a feature to limit the maximum number of prims that a user can have on each parcel of a region. This is enforced by setting MaxPrimsPerUser in the region config file (e.g. Regions.ini). Default is no limit. See bin/Regions/Regions.ini.example for more details (18b91fd).
- Oren fixed an issue so that the “Allow Scripts from Group” parcel flag no longer requires the parcel to be deeded to a group, only that it has a group set (a780e01).
- Oren fixed an issue where a user that belonged to a parcel’s group could still rez objects in that parcel when the “Create Objects by Group” flag was unset (3185db7).
- Oren fixed an issue where an object rezzed by a user could be duplicated on a parcel when the parcel permissions had since been changed to disallow rezzing (090f9bc).
- Lillith Xue contributed a patch to allow NPCs to move into areas of a varregion other than the first 256 x 256 (b065c02).
- Oren improved error handling when retrieving offline IMs (538ff31b).
- Oren fixed an issue where a user sometimes didn’t get notified of friends online status on login (4cac87d).
- Oren made a change so that UTF8 characters wouldn’t cause issues with OpenSimulator’s builtin offline IM implementation (2c98593).
- Aleric Inglewood contributed a patch to make OpenSimulator positioning on sit targets identical to that of the Linden Lab grid. This supersedes a change in December 2013 which was implemented wrongly. This change is fairly minor, maximum position change is 0.1 meters with a maximum height avatar (7a56992).
- Oren fixed an issue where some userprofile settings were not being persisted (1b30ae8).
- Diva Canto fixed an issue where changing ownership in god mode would change the immediate permissions of an object but not its inventory items (1d9a9e6).
- Oren made a change so that objects in restored OARs that are owned by groups not present on the grid have their group ownership cleared (1a32b35).
- Oren made a change so that is a prim fails to cross a region it is not deleted from its original region (6a477e0).
- Bluewall fixed an issue with creating user picks where a snapshot had not been set in a parcel (14836e6).
- Oren fixed an issue where sculpt/mesh assets in attachments were wrongly being persisted when a user teleported (1fe504f).
- Dev Random contributed simulator estate console commands “estate set owner” and “estate set name” (43eab5e).
- I fixed an issue where prims could not be moved in edit mode from one region to another and back again, where both regions were on the same simulator (7cb1690).
- tglion contributed a patch to fix collision issues after an object’s phantom flag was unset (8b8e1b8).
- Snoopy Pfeffer of Dreamland Metaverse made a change to allow objects on a parcel to be included in the sale of that parcel as long as a) all those objects are owned by the parcel owner b) none of the objects are group owned c) all objects are transferrable (32ad66c).
- Melanie fixed an issue where the “Show in Search” flag on a parcel sometimes reset spontaneously (2572ed9).
- Oren prevented local assets ever being sent to another installation via the Hypergrid (7eb12f9).
- Oren improved error checking when creating Hypergid links to reject invalid strings and use the proper default port of 80 (not 0) (e1dd228).
- Oren improved setting a user’s name correctly in the Hypergrid (dropping the @<url> part) when they moved from a foreign grid back to their home grid (c725ad1).
- Oren improved error messages when a teleport fails, either locally or via the Hypergrid (af40674).
- No significant news this time.