* Added List<RegionInfo> m_neighbours to Scene
* Hooked up the OnRegionUp event to m_neighbours list
* Modified RegionInfo to have a bool commFailTF value so that we can skip neighbors that fail. (when the region comes up, this gets reset to false and the region will try again.
* Added SetChildAgentThrottle(byte[]) to IClientAPI
* Several other insignificant changes related to passing child pertanant agent data from sim to sim.
Note: this mainly improves Standalone mode, as in grid mode the appearance data isn't passed between region servers. Although people should notice a improvement when moving between regions in the same instance.
* Un-hackerized generating the client_flags
* Now handling the ObjectPermissions Update packet
* Warning: Backup your prim before updating. If you fail to do so and something goes wrong then, All Yr prim are belong to us!
* Added the child_get_tasks OpenSim.ini flag for testing the UDP packet sending code and packet throttler. This flag gets purposely disabled in grid mode. This flag also has the consequence that you can see the prim in neighboring regions without going into them. Be warned, this causes tons of dropped packets.
Moved PermissionManager creation out of the Scene constructor and instead a PermissionManager is passed to the constructor as a param. So that we could create and use custom permissionsManagers.
Added AllowMovement property to ScenePresence which can be used to stop movement of avatars (for example in a custom region that wanted avatars always in one place).
Added PermissionManager call when copying objects, although currently the call will always return true so that it allows copying in places like Wright Plaza.
A few other changes/fixes.
* Added glue to send it to the Physics Engines (in meters)
* ODE Initial implementation of Avatar Height :D Change your height and not get all knee bendy
* ODE - Fixed the iscolliding property to report a static true when colliding.
* Added reporting of collisions to call UpdateMovementAnimations
* Added Jump - air animation (with arms outstretched).
* Added Fall Animations
* ODE - Added a small amount of X, Y motion control while jumping or Falling
* ODE - Avatar movement animations are still a bit odd sometimes, and had to get this up there.
a fixed 30 minute day and the sun going East -> West again. It gets rid of
super noon as well. It's a bit debug heavy right now, which I'll clean up
tomorrow. I also plan to make time progression configurable in OpenSim.ini,
but that will be tomorrow.
* OnRequestWearables does no longer accept 'Client' as param, since it's always on the current client
* Fixed SendOwnWearables to always operate on self, as that's what it does
Note this has lead to a big flat project, but I think a lot of the files we most likely don't even use any longer. And others belong in other projects/namespaces anyway.
* Scene: Changed name from MakeAvatarPhysical to MakeRootAgent and added ForEachClient
* SceneManager: Added ForEachScene
* Worked some on appearances.
Bugs 449, 454, 408, 244, 197
implemented InformClientOfNeighbours as an asynchroneous process, handling timeouts without blocking the main thread.
Improved logging of errors, removed catch all in try catch
* Deleted stub ScenePresence.Body.cs
* Added stub Region classes
The idea is to, at first, have every ScenePresence have one RegionPresence, moving code over to it until we can detach the two classes and not have a ScenePresence for every RegionPresence.
is set correctly, but only with the movement of the avatar.
The in-place rotation updates need a little bit of more thought,
and will be in a separate commit.
Removed the reference to OpenJpeg in the DynamicTextureModule, to see if that was causing the build problem someone is having.
Added a Temporary fix for the "existing connection was forcibly closed by the remote host" exception on windows when a user logs out of a multiregion instance.
Some early work to prepare for improving the way clients are updated (about prims etc).
Now have a rough day/night cycle (the movement of the sun needs to be made smoother but for now it is better than we had I think).
Added dalien's patch (issue 294) for saving and loading prims to a xml file (think he will be modifying these to be import/export functions and maybe writing a xml datastore for backups).
Some preliminary work on task inventory (ie object's/prim's inventory).
Added place holder data for AvatarProperties (ie a avatar's profile). Should we store this sort of data on the user server or have another server for it (a normal webserver should work).
Added a few more method to IClientAPI.
Sure there is something I'm forgeting.
* Changed how Script accesses World
* Implemented llSay, llWhisper and llShout
* Added SetText() to IScriptHost, implemented llText
* Minor renamings to conform with code conventions
Temporary have had to rename the OpenSim.DataStore.MonoSqlite project to OpenSim.DataStore.MonoSqlite1, as I'm not sure what was done to stop the old project name being included in the VS2005 solution.
Also some config changes:
OpenSim now has a INI (OpenSim.ini) file that it will read some config settings from (if the ini file exists).
Added Mono.Data.SqliteClient.dll so that we can use the same code for sqlite on Windows and mono/linux. (from what I can tell Mono class libraries have a MIT license so there should be no problems with us including this dll).
So now to get the basic prim storage working , you need to first create the sqlite database file from the sqlite3-prims.sql in share directory. Then in the OpenSim.ini file, change the storage_plugin so it points to OpenSim.DataStore.MonoSqlite1.dll (storage_plugin = OpenSim.DataStore.MonoSqlite1.dll). Then in your region.xml files change the DataStore value so it is the name of your database file (at the moment you need a different sqlite3 database file for each region).
Like, I removed the Obsolete from the old caps method as at this time not all caps calls can use the new Caps stream method as it doesn't properly deal with LLSD Arrays.
Now down to 3 warnings on the events in IClientAPI and for now I think we have to live with them as I think most of those events will be used.
* Fixed some of the problems with crossing regions when flying: you should no longer sink to ground level when crossing (should keep roughly your right height). Should no longer sometimes get sent back to the centre of the current region when attempting to border cross. But instead sometimes you will find you avatar stop at the edge of region and you will need to start moving again to retry the crossing (which should then work). This code is partly based on Babblefrog's issue #212 patch. [I think I have some ideas of how to solve the stopping at edges problem, just want to get the inventory code done first]
* Capabilities code has now been moved to the OpenSim.Framework.Communications project as some of the caps code will be tightly tied to inventory/asset handling and it was causing a two way reference problem when it was in its own project/dll.
This is a Big commit as I was going to keep my inventory work local until I had it in a working state, in case it brakes anything, but its getting harder to keep in sync with svn.
Done some work on lbsa71's simpleApp(hope he doesn't mind):
now have the avatar showing up and the terrain and his pulsating box (well except its not a box, as there seems to be something wrong with our PrimitiveBaseShape..DefaultBox() settings).
Also noticed a few other problems that I had to work around, so these need looking into.
*ParcelManager's resetSimParcels does not set any default values.
*Updated ParcelData with correct defaults previously set in resetSimParcels
*Region overrides are now sent to viewer instead of dummy'd
**Parcels within selection now join and not the two parcels selected at each corner
*Created OnSignificantClientMovement event that is triggered when an avatar moves more than 2 meters.
*Significant movement (currently set to 2 meters of movement for performance reasons, even though its speedy) and initial login now sends parcel updates
*Reenabled estate manager; remember, the master avatar is the only one that can use this (by default: Test User with password 'test')
*Still working on readding support for updating parcel information when logging in or moving into a new parcel