Release Notes

General

As ever, OpenSimulator is a highly complex system. Various usage scenarios (standalone, grid, hypergrid, etc.) in combination with different dependencies (e.g. different versions of mono on Linux/Mac) can sometimes produce unexpected or unstable behaviour.

If you are upgrading from a previous version of OpenSimulator, then we strongly recommend that youstart off with the default configuration files and port over any changes you made to your older version of OpenSimulator.

Pivot Release: 0.8.2.1

Due to database migration renumbering, if you are upgrading from a version of OpenSimulator prior to 0.8.2.1, then you MUST first upgrade to *0.8.2.1* and then proceed to upgrade to 0.9.0.0.

Upgrade from 0.8.2.1

Install this new version on a clean folder.
Copy OpenSim.ini.example to OpenSim.ini and edit it using your old file only as reference.
Do the same to all ini files on config-include and Regions folders.
You can copy folder assetcache from the 0.8.x version.
If you use SQLite, copy the *.db files also.
Note that floatsamCache is required.

Known issues

Mega Regions are no longer supported. Please save your mega regions in OAR files before upgrading. You will be able to load them either on small regions, or on a large region (var region). See help load oar in this new version. Don't hesitate to ask for help on one of our irc channels since it can be a bit confusing process :(

Mesh creators can upload a mesh that will only collide with the default convex hull (physics type PRIM is not available, only NONE or CONVEX). The new physics engine ubODE will honor this option. ODE and Bullet will keep using a visual LOD with this option, so still show the PRIM type, but physics shape type may not work correctly. Please fix the meshes uploaded with this option by mistake, either by uploading again with the correct options or fixing the collisions by adding invisible prims, setting the mesh to type NONE, etc. If that is still impossible, then keep using Bullet. But note then we will also change Bullet in future.

ubODE like the older ODE only does single side mesh collisions while Bullet, like SL, does double sided collisions in some cases. Creators doing specialized colliders for physics should take this in consideration. Since in this respect ubODE is the more restricted engine, a collider working on ubODE should also work on Bullet. This version includes some changes also to the external ode library for avatar/mesh collision, but it still displays some instabilities in same corner cases.

ubODE supports CONVEX on normal prims and sculpts. You may have that set by mistake, and my need to fix it.

Using a viewer's physics upload Step2 and Step3 changes the uploaded mesh format. The mesh is simplified and split into a collection of convex parts. This can deform your shape on the viewer side. Uploading without these steps avoids these problems.

The Physics engine ODE (the original one) is maintained for compatibility purposes only. Please avoid creating new content for it. Use it only if your region has a lot of content you can't upgrade now.

Terrain Editing Undo is currently disabled. It requires a major revision to support large regions.

Adding or removing a large selection of users or groups on Region/Estate lists (allowed residents, banned.., Allowed groups and Estate managers) may display incorrect results. Please reopen Region/Estate, or select one at a time.

For all other outstanding bugs please see the OpenSimulator Mantis bug tracker.

Requirements

OpenSimulator requires:

.NET Framework 4 when running under Windows.

At least Mono 2.8 when running under Mono (Linux or Mac). However, we recommend using at least Mono 2.10 as Mono 2.8.x has been reported as less stable in some situations when running OpenSimulator. Mono 3 has also been reported as working well with OpenSimulator. Mono 4.x series, specially below 4.6 have some issues. Mono 5.x seems to work

Backwards Compatibility Notices

Database

Scripts

If you are not installing on a clean folder, then
Scripts may need to be recompiled when upgrading to 0.9.0.0. If you see script errors on the server console, the best course of action is to delete the script dlls that live under the ScriptEngine folder. Note: do not delete the .state files in those folders; all other file extensions can be deleted.

Alternatively, you can set

DeleteScriptsOnStartup = true

run region once, then switch it back to false.

If after this step you still have problems, you may need to delete all contents of ScriptEngine. But note that doing this as last resort makes scripts loose their current state, this can be a problem on some scripts that depend on that state preservation, in particular some commercial products. We do not expect you will need to this on this update, so if uncertain please ask for advice before doing it.

Changes and Fixes

General Robust Server

General Simulator Server

New experimental InterestManagement features:

SimpleAngularDistance added to UpdatePrioritizationScheme options. WIth this option objects and avatars information is prioritized taking in consideration distance and approximate apparent size.

ObjectsCullingByDistance. Setting this to true objects (not avatars for now) outside view range and not sent and/or are delete to/from viewers.

Current these options only consider the viewer avatar position, not the camera.

Archives

The Load Oar command now fully supports the loading of (selectable parts of) a var region into a normal sized region as well as loading (selectable parts of) standard regions anywhere into another standard or var region.

Parcel data is now dealt with properly and supports rotations just like terrain and objects

Avatars

A few changes in avatar damage. Lost health now depends on relative velocity on collision

Fixed animation sequencing: SitHere, Falling, Stand/Walk etc.

Classifieds

Configuration

New configuration variable under [EntityTransfer]: LandingPointBehavior. Possible values are LandingPointBehavior_OS and LandingPointBehavior_SL. This option exists to control the behavior of teleporting gods into places that have landing points and telehubs. Historically, there has been a difference: OpenSim (OS) has honored landing points and telehubs even for avatars with god permissions; SL lets gods land wherever they want. Default is LandingPointBehavior_OS.

Inventory

Map

Mesh/Sculpt

Monitoring

NPC

Objects

Land Impact is now displayed for relative information purposes only. It is not used to enforce any limits.

Sits on prims without a SitTarget improved if using ubODE

Objects rez location improved if using ubODE

All objects now support CONVEX physics shape type if using ubODE

Permissions

Creation of wearables and animation sets now require creator rights on the referenced items/assets

Physics

BulletSim is the default physics engine with updates to support better vehicle crossings and different default collisions sounds intensity introduced with ubODE.

ODE Now supports variable-sized regions.

New ODE-based physics module: ubODE. This came from the Avination grid and is designed to support more advanced physics features.

Profiles

NPCs can now have a tiny profile

Region/Estates/Parcels

Parcel privacy: viewer option for Avatar on other parcels to see and chat with avatars on this parcel is now supported

Region Cross/Teleport

Objects and avatars region Crossing improved

Scripted vehicle crossings are now supported in both Bullet and ubODE physics engines.

Teleport landing height changes if using ubODE (and with no telehub or landpoint set) so landing is on top of objects on that location, not inside them. (a side effect is that you may land on roof tops not inside some buildigs)

Scripting

llCastRay: with ubODE, this function is performed by it with improved performance and more accurate results. according the to physical representation of the objects.

Services

Sound

Several changes on default collision sounds. Intensity is now related to relative velocity on collision

Stats

Region stats displayed by viewers are by default back to the normalized 55fps on an idle region, independent of region actual configuration. You can see measured times by setting the option Normalized55FPS to false (read OpenSimDefaults.ini). Keep in mind these stats where not designed to profile OpenSim. Do not try to use them for profiling without a much deeper consideration of OpenSim's multitasking nature.