The vector parameter to llSetPos() specifies an absolute position for
an unlinked prim or the root prim of a linkset; however, when the
function is used by a child prim, the vector specifies a relative
offset from the root prim. The changed introduced in llSetPos() treats
this value as an absolute position in all cases, which has the unintended
effect of mangling the position of child prims.
This add a configuration option to the MRM module called "hidden".
if MRM is marked as enabled, the module will additionally check for
the "Hidden" flag, before registering for client side scriping events.
When MRM is running hidden, it will not respond to client side
scripting events, giving serverside scripting modules, like MRMLoader
and MRMAddin the ability to leverage the MRM engine. This way, even
a possible clientside exploit will not be possible, while still
allowing the MRM engine to run.
The admin_close_region method removes a region from the simulator without deleting it.
The region can then be recreated by calling admin_create_region with the same UUID.
There is also a change to admin_create_region to facilitate this.The reason I want
to have this functionality is to make it possible to detach regions when they are
idle and recreate them on demand through a web interface. It's probably doable
using the existing methods by saving and loading oars, but it also doesn't seem
like that should be necessary.
Set av_capsule_tilted to false in opensim.ini. Default is true, so there is
no change in avatar behavior (and no breaking of existing content which
relies on the tilted capsule).
This commit straightens up the avatar capsule so it behaves consistently
(e.g. same collision behavior against prims regardless of which direction
the avatar is coming from; ability to fit through narrow doorways).
Please note this introduces other side effects which have not been fixed.
In particular:
* The avatar frequently falls through the terrain if it is not flat, though
the avatar behaves pretty well on flat terrain. This requires investigation
of the ode terrain collider.
* The apparent foot position of the avatar with respect to the ground
is changed. This requires investigation of the avatar height/capsule height.
Please consider this as work in progress.
The patch included updates the root and child prims' AttchedAvatar
with the right UUID. It also cleans the AttachedAvatar properties
for the root and child prims on Drop and Detach
balancer plugin work again. Create a new method, GetClientEP, to retrieve
only the EndPoint for script usage. Marked the purpose of the method
in IClientAPI.cs with a warning. Also restored the corresponding SetClientInfo
functionality.
to be constantly pushed and popped uselessly, if you are not debugging packets. This showed some really big difference in a mock test, let's see how it behaves here.
Attached is a patch that changes the oar file saving of creation date/time to an integer
instead of a string. I did this after justincc emailed me saying there is a problem
with internationalisation doing it the old way and I said I'd fix it. Its been
tested with MySQL and I've made the changes for MSSQL but that hasn't been well tested.
The new IRCd module causes an error when multiple instances of OpenSim
are run on the same machine; since the port number (6666) is hardcoded,
the second and subsequent instances crash upon startup because the port
is already in use. Attached is a patch which adds a Port specifier to the
[IRCd] section of the config file, which defaults to 6666 if not present.
By extracting this code, it should make it easier to experiment with different ways of managing the update process. [Next step to make this module based, could be to create a SceneViewerFactoryModule]
I also fixed the issue where the code also loops through the m_forcesList and copies each force to the ScenePresence's movementVector. Which resulted in only the last force in the list actually be acted on. As each copy overrode the last one. So now it only copies the last force in the list.
After noticing on several occasions that the thread counts
we see when running OpenSIm were bordering on the astronomical
I decided to seriously investigate.
After much poking I discovered that the problem is actually very
simple. The XEngine secition of the example ini says that the
timeout for an iden thread is in seconds, and an example value
of 60 is specified. In fact, this is actually resulting in a 60mS
idle timeout, which is not normally enough for a smart thread
to survive. I have added a multiplier to the XEngine constructor
so that the number now matches the published behavior.
bit of GetClientInfo that is actually used seems to be userEP as part of the
OSSL osGetAgentIP() script function. Now commented are the parts where
we serialize and copy out the *entire* packet queue of the client
(locking the packet handler in the process).
- uses Environment.TickCount for all timestamps (instead of more
costly Util.UnixTimeSinceEpoch()
- takes care of Environment.TickCount overflow (which will happens
after 24.8 days of system uptime)
- avoids instantiating List copies for each check
- gets rid of one lock() invocation
- moves calculation of loop invariant variable out of the loop itself