jump to navigation

This Week in OpenSim Dev – week ending Saturday 6th December 2008 December 7, 2008

Posted by justincc in opensim, opensim-dev, opensim-news, secondlife, twiod.
trackback

osgridHello everybody. This is a short summary of OpenSim development for the past week up until the end of last Saturday, as culled from our source code repository logs.  After any general news there are two sections.  The first section – “Features and bug fixes”, contains prominent new functionality and bug fixes visible to users of OpenSim.   The numbers in brackets in this section are the final svn revision numbers in which the work was completed for this week. This is right at the cutting edge so there is no guarantee that this functionality is stable.

The second section contains information about the infrastructure changes happening within the project.  This is going to be a little more impressionistic than the features/bug fixes list, but hopefully it will give a picture of how OpenSim is evolving from week to week.

This week in OpenSim ( r7547 – r7632 )

General news

  • None this week

Features & bug fixes

  • idb improved the avatar height calculation in the Basic Physics and Physics Of Simplicity physics engines (r7557).
  • MW stopped it being possible to bring down a grid server merely by sending it corrupt XML data (r7562).
  • I resolved problems persisting some prims in the database by stopping storage or retrieval of the parent local ID field, which was unused anyway (r7586).
  • mpallari contributed an update to the make the NHibernate database backend option useable.  This now means that OpenSim requires an extra dependency on Linux systems, otherwise it will complain about a missing System.Data.Oracle namespace on startup.  See this wiki page for more details (r7604).
  • Godfrey contributed a patch to fix llTriggerSound() (r7589).
  • Melanie fixed a bug where no copy objects would be lost if attached (r7608).
  • Melanie fixed a bug where scripts were not stopped if they were removed from a prim’s inventory (r7611).
  • idb implemented the llDetectedTouchBinormal(), llDetectedTouchFace(), llDetectedTouchNormal(), llDetectedTouchPos(), llDetectedTouchST(), llDetectedTouchUV() (r7621).
  • Melanie added code to enable region crossing for scripts such that they will stay active in the new region.  For this to work, both source and destination must be configured to allow script crossing.  See the AllowScriptCrossing and TrustBinaries settings in OpenSim.ini.example (r7624).

Infrastructure

  • Diva contributed patches to improve Hypergrid support.
  • Melanie added extra hooks in the Permissions module.
  • Sean, Melanie and Diva worked on region crossing and teleporting issues (e.g. no texture downloading when a region is re-entered from another region).
Advertisements

Comments»

1. Bob Wellman - January 15, 2009

“Melanie added code to enable region crossing for scripts such that they will stay active in the new region. For this to work, both source and destination must be configured to allow script crossing. See the AllowScriptCrossing and TrustBinaries settings in OpenSim.ini.example (r7624).”

We are running Opensim in grid mode at SVN7875 with one region server running multiple regions. The common opensim.ini contains:
AllowScriptCrossings=true
TrustBinaries=true
(Please note we have added the s to AllowScriptCrossings as we saw that it had been missed off according to a Mantis report).

I have tried to drag a scripted object across a border and also tried it attached to my avatar and crossed the border. In both cases the script stops running. Both regions are running in the same region server instance so using the same opensim.ini file as mentioned above.

Am I missing something?

2. Bob Wellman - January 15, 2009

Oh by the way tried this with both DotNetEngine and with Xengine running the script. Same result both times. Script stops on crossing

3. justincc - January 15, 2009

@Bob – The setting should actually be AllowScriptCrossing – I think this was actually changed from AllowScriptCrossings

4. Bob Wellman - January 17, 2009

Thanks for your help … you are right.

On further investigation I realised I originally saw a post saying that the program and ini were out of sync so we changed our ini to match the program but then someone later changed the program to match the old ini so I needed to change it back again.

We now have AllowScriptCrossing=true and all is well. I can drag a prim across a boudary and the script continues, I can attach a scripted prim and fly/walk across a boundary or even TP and it continues to run. Wonderful. Now all I have to figure out is how to make my scripted train move its self across a sim boundary and I will be a happy man.

5. Bob Wellman - January 17, 2009

Try putting the script below into a prim in the middle of one sim with another sim to the east of it and clicking the prim. According the LSL wiki on llSetPos the prim should slowly cross to the middle of the adjacent sim and then come back again but it doesn’t. It gets to the border and freezes and a subsequent click jumps it to 2 meters from the west of the original sim and the script stops running and wont reset.

//lsl

default
{
state_entry()
{
llSay(0,”ready”);
}
touch_start(integer num_detected)
{
integer a = 0;
integer b = 255;
vector speed1 = ;
vector speed2 = speed1 * -1;
llSay(0,”Forward”);
for(1; a < b; ++a)
{
llSetPos(llGetPos() + speed1);
}

a = 0;
llSay(0,"Reverse");
for(1; a < b; ++a)
{
llSetPos(llGetPos() + speed2);
}
llSay(0,"Stop");
}
}


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: