• All submissions to this site are governed by Second Life Project Contribution Agreement. By submitting patches and other information using this site, you acknowledge that you have read, understood, and agreed to those terms.
Issue Details (XML | Word | Printable)

Key: SVC-2336
Type: Bug Bug
Status: Closed Closed
Resolution: Fixed
Priority: Normal Normal
Assignee: Andrew Linden
Reporter: darling brody
Votes: 19
Watchers: 4
Operations

If you were logged in you would be able to see more operations.
2. Second Life Service - SVC

Object goes offworld when avatar sits on it.

Created: 13/May/08 02:10 PM   Updated: 10/May/09 10:22 PM
Return to search
Component/s: Physics
Affects Version/s: 1.21.0 Server
Fix Version/s: None

File Attachments: 1. File offworld demo picture.tga (3.42 MB)

Image Attachments:

1. screenshot-2.jpg
(157 kB)
Environment: n/a
Issue Links:
Relates
 

Linden Lab Issue ID: DEV-15537
Linden Lab Internal Branch: maint-server-6


 Description  « Hide
1) Place a non-physical object at 4095 meters high.
2) Give it a sit target above 4096 meters. eg: llSitTarget(<0,0,10>,ZERO_ROTATION)
3) Sit on it.
BUG) The object is returned to your lost and found, even though the object didnt move or go offworld.

This behavious is different to havok1, and different to havok4 up until a recent rolling restart.

Below is some code to make testing easy.

[code]
// Object goes offworld when avatar sits on it.
//
// if the sit target puts the avatar offworld it will cause the object to incorrectly be considered offworld too.

WarpPos( vector d ) //R&D by Keknehv Psaltery, ~05/25/2006
{
vector lastpos;
if ( d.z > 4095 )
d.z = 4095;
do
{ lastpos = llGetPos(); integer s = (integer)(llVecMag(d-llGetPos())/10)+1; if ( s > 100 ) s = 100; integer e = (integer)( llLog( s ) / llLog( 2 ) ); list rules = [ PRIM_POSITION, d ]; integer i; for ( i = 0 ; i < e ; ++i ) rules += rules; integer r = s - (integer)llPow( 2, e ); if ( r > 0 ) rules += llList2List( rules, 0, r * 2 + 1 ); llSetPrimitiveParams( rules ); } while ((lastpos != llGetPos()) && (llGetPos() != d));
}

default
{
state_entry()

{ // comment out one of the below SitTarget's in each of your tests. llSitTarget(<0,0,10>,ZERO_ROTATION); // this one will cause the object to go offworld when an agent sits on it. //llSitTarget(<0,0,-10>,ZERO_ROTATION); // this one will behave normaly }

touch_start(integer total_number)

{ // Touch Object to position it for testing. (might be a good idea to sit on it first) WarpPos(<128,128,4095>); }

}
[/code]

it.



 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Knife Carver made changes - 13/May/08 02:32 PM
Field Original Value New Value
Resolution Misfiled [ 6 ]
Status Open [ 1 ] Closed [ 6 ]
darling brody made changes - 13/May/08 03:06 PM
Resolution Misfiled [ 6 ]
Status Closed [ 6 ] Reopened [ 4 ]
Knife Carver made changes - 13/May/08 03:11 PM
Status Reopened [ 4 ] Closed [ 6 ]
Resolution Won't Finish [ 2 ]
darling brody made changes - 13/May/08 03:15 PM
Resolution Won't Finish [ 2 ]
Status Closed [ 6 ] Reopened [ 4 ]
Alexa Linden made changes - 19/May/08 02:04 PM
Assignee WorkingOnIt Linden [ WorkingOnIt Linden ]
lindenrobot made changes - 19/May/08 02:05 PM
Linden Lab Issue ID DEV-15537
CrimsonWings Eun made changes - 24/Jun/08 07:47 PM
Resolution Won't Finish [ 2 ]
Status Reopened [ 4 ] Closed [ 6 ]
Harleen Gretzky made changes - 24/Jun/08 08:30 PM
Resolution Won't Finish [ 2 ]
Status Closed [ 6 ] Reopened [ 4 ]
Whispering Hush made changes - 29/Jun/08 06:38 AM
Priority Major [ 3 ] Normal [ 4 ]
darling brody made changes - 29/Jun/08 09:21 PM
Priority Normal [ 4 ] Major [ 3 ]
darling brody made changes - 29/Jun/08 09:31 PM
Comment [ Put back to major because it involves the loss of content such as buildings, just because someone sits on them!
Static objects being returned because someone sits on them is a major loss of fucntion.

---

it should be noted that the following JIRA issues also had their priority altered by Whispering Hush as a form of harassment against the person who listed them.
]
Whispering Hush made changes - 30/Jun/08 01:28 AM
Priority Major [ 3 ] Normal [ 4 ]
darling brody made changes - 01/Jul/08 10:20 PM
Priority Normal [ 4 ] Major [ 3 ]
CrimsonWings Eun made changes - 01/Jul/08 11:00 PM
Priority Major [ 3 ] Low [ 5 ]
Description 1) Place a non-physical object at 4095 meters high.
2) Give it a sit target above 4096 meters. eg: llSitTarget(<0,0,10>,ZERO_ROTATION)
3) Sit on it.
BUG) The object is returned to your lost and found, even though the object didnt move or go offworld.

This behavious is different to havok1, and different to havok4 up until a recent rolling restart.

Below is some code to make testing easy.


[code]
// Object goes offworld when avatar sits on it.
//
// if the sit target puts the avatar offworld it will cause the object to incorrectly be considered offworld too.


WarpPos( vector d ) //R&D by Keknehv Psaltery, ~05/25/2006
{
    vector lastpos;
    if ( d.z > 4095 )
        d.z = 4095;
    do
    {
        lastpos = llGetPos();
        integer s = (integer)(llVecMag(d-llGetPos())/10)+1;
        if ( s > 100 )
            s = 100;
        integer e = (integer)( llLog( s ) / llLog( 2 ) );
        list rules = [ PRIM_POSITION, d ];
        integer i;
        for ( i = 0 ; i < e ; ++i )
            rules += rules;
        integer r = s - (integer)llPow( 2, e );
        if ( r > 0 )
            rules += llList2List( rules, 0, r * 2 + 1 );
        llSetPrimitiveParams( rules );
    } while ((lastpos != llGetPos()) && (llGetPos() != d));
}


default
{
    state_entry()
    {
        // comment out one of the below SitTarget's in each of your tests.
        
        llSitTarget(<0,0,10>,ZERO_ROTATION); // this one will cause the object to go offworld when an agent sits on it.
        //llSitTarget(<0,0,-10>,ZERO_ROTATION); // this one will behave normaly
    }

    touch_start(integer total_number)
    {
        // Touch Object to position it for testing. (might be a good idea to sit on it first)
        
        WarpPos(<128,128,4095>);
    }
}
[/code]
1) Place a non-physical object at 4095 meters high.
2) Give it a sit target above 4096 meters. eg: llSitTarget(<0,0,10>,ZERO_ROTATION)
3) Sit on it.
BUG) The object is returned to your lost and found, even though the object didnt move or go offworld.

This behavious is different to havok1, and different to havok4 up until a recent rolling restart.

Below is some code to make testing easy.


[code]
// Object goes offworld when avatar sits on it.
//
// if the sit target puts the avatar offworld it will cause the object to incorrectly be considered offworld too.


WarpPos( vector d ) //R&D by Keknehv Psaltery, ~05/25/2006
{
    vector lastpos;
    if ( d.z > 4095 )
        d.z = 4095;
    do
    {
        lastpos = llGetPos();
        integer s = (integer)(llVecMag(d-llGetPos())/10)+1;
        if ( s > 100 )
            s = 100;
        integer e = (integer)( llLog( s ) / llLog( 2 ) );
        list rules = [ PRIM_POSITION, d ];
        integer i;
        for ( i = 0 ; i < e ; ++i )
            rules += rules;
        integer r = s - (integer)llPow( 2, e );
        if ( r > 0 )
            rules += llList2List( rules, 0, r * 2 + 1 );
        llSetPrimitiveParams( rules );
    } while ((lastpos != llGetPos()) && (llGetPos() != d));
}


default
{
    state_entry()
    {
        // comment out one of the below SitTarget's in each of your tests.
        
        llSitTarget(<0,0,10>,ZERO_ROTATION); // this one will cause the object to go offworld when an agent sits on it.
        //llSitTarget(<0,0,-10>,ZERO_ROTATION); // this one will behave normaly
    }

    touch_start(integer total_number)
    {
        // Touch Object to position it for testing. (might be a good idea to sit on it first)
        
        WarpPos(<128,128,4095>);
    }
}
[/code]

CW: upon testing this the reason this happens is because setting the sit distance up above the prim changes the geometric center of the prim as when an avatar sits on an object it "links" to it.
darling brody made changes - 01/Jul/08 11:10 PM
Priority Low [ 5 ] Normal [ 4 ]
Description 1) Place a non-physical object at 4095 meters high.
2) Give it a sit target above 4096 meters. eg: llSitTarget(<0,0,10>,ZERO_ROTATION)
3) Sit on it.
BUG) The object is returned to your lost and found, even though the object didnt move or go offworld.

This behavious is different to havok1, and different to havok4 up until a recent rolling restart.

Below is some code to make testing easy.


[code]
// Object goes offworld when avatar sits on it.
//
// if the sit target puts the avatar offworld it will cause the object to incorrectly be considered offworld too.


WarpPos( vector d ) //R&D by Keknehv Psaltery, ~05/25/2006
{
    vector lastpos;
    if ( d.z > 4095 )
        d.z = 4095;
    do
    {
        lastpos = llGetPos();
        integer s = (integer)(llVecMag(d-llGetPos())/10)+1;
        if ( s > 100 )
            s = 100;
        integer e = (integer)( llLog( s ) / llLog( 2 ) );
        list rules = [ PRIM_POSITION, d ];
        integer i;
        for ( i = 0 ; i < e ; ++i )
            rules += rules;
        integer r = s - (integer)llPow( 2, e );
        if ( r > 0 )
            rules += llList2List( rules, 0, r * 2 + 1 );
        llSetPrimitiveParams( rules );
    } while ((lastpos != llGetPos()) && (llGetPos() != d));
}


default
{
    state_entry()
    {
        // comment out one of the below SitTarget's in each of your tests.
        
        llSitTarget(<0,0,10>,ZERO_ROTATION); // this one will cause the object to go offworld when an agent sits on it.
        //llSitTarget(<0,0,-10>,ZERO_ROTATION); // this one will behave normaly
    }

    touch_start(integer total_number)
    {
        // Touch Object to position it for testing. (might be a good idea to sit on it first)
        
        WarpPos(<128,128,4095>);
    }
}
[/code]

CW: upon testing this the reason this happens is because setting the sit distance up above the prim changes the geometric center of the prim as when an avatar sits on an object it "links" to it.
1) Place a non-physical object at 4095 meters high.
2) Give it a sit target above 4096 meters. eg: llSitTarget(<0,0,10>,ZERO_ROTATION)
3) Sit on it.
BUG) The object is returned to your lost and found, even though the object didnt move or go offworld.

This behavious is different to havok1, and different to havok4 up until a recent rolling restart.

Below is some code to make testing easy.


[code]
// Object goes offworld when avatar sits on it.
//
// if the sit target puts the avatar offworld it will cause the object to incorrectly be considered offworld too.


WarpPos( vector d ) //R&D by Keknehv Psaltery, ~05/25/2006
{
    vector lastpos;
    if ( d.z > 4095 )
        d.z = 4095;
    do
    {
        lastpos = llGetPos();
        integer s = (integer)(llVecMag(d-llGetPos())/10)+1;
        if ( s > 100 )
            s = 100;
        integer e = (integer)( llLog( s ) / llLog( 2 ) );
        list rules = [ PRIM_POSITION, d ];
        integer i;
        for ( i = 0 ; i < e ; ++i )
            rules += rules;
        integer r = s - (integer)llPow( 2, e );
        if ( r > 0 )
            rules += llList2List( rules, 0, r * 2 + 1 );
        llSetPrimitiveParams( rules );
    } while ((lastpos != llGetPos()) && (llGetPos() != d));
}


default
{
    state_entry()
    {
        // comment out one of the below SitTarget's in each of your tests.
        
        llSitTarget(<0,0,10>,ZERO_ROTATION); // this one will cause the object to go offworld when an agent sits on it.
        //llSitTarget(<0,0,-10>,ZERO_ROTATION); // this one will behave normaly
    }

    touch_start(integer total_number)
    {
        // Touch Object to position it for testing. (might be a good idea to sit on it first)
        
        WarpPos(<128,128,4095>);
    }
}
[/code]

it.
CrimsonWings Eun made changes - 03/Jul/08 10:38 AM
Priority Normal [ 4 ] Low [ 5 ]
CrimsonWings Eun made changes - 03/Jul/08 10:49 AM
Attachment screenshot-1.jpg [ 17474 ]
CrimsonWings Eun made changes - 03/Jul/08 11:01 AM
Attachment screenshot-1.jpg [ 17474 ]
CrimsonWings Eun made changes - 03/Jul/08 11:03 AM
Comment [ is this what your trying to do? its the same principle ]
CrimsonWings Eun made changes - 03/Jul/08 11:05 AM
Attachment screenshot-1.jpg [ 17475 ]
CrimsonWings Eun made changes - 03/Jul/08 11:07 AM
Status Reopened [ 4 ] Resolved [ 5 ]
Resolution Fixed [ 1 ]
darling brody made changes - 03/Jul/08 11:17 AM
Priority Low [ 5 ] Normal [ 4 ]
darling brody made changes - 03/Jul/08 11:19 AM
Status Resolved [ 5 ] Resolved [ 5 ]
Resolution Fixed [ 1 ] Contact Support [ 7 ]
darling brody made changes - 03/Jul/08 11:40 AM
Attachment offworld demo picture.tga [ 17476 ]
darling brody made changes - 03/Jul/08 11:47 AM
Attachment screenshot-2.jpg [ 17477 ]
darling brody made changes - 03/Jul/08 11:47 AM
Resolution Contact Support [ 7 ]
Status Resolved [ 5 ] Reopened [ 4 ]
CrimsonWings Eun made changes - 03/Jul/08 01:15 PM
Attachment screenshot-1.jpg [ 17475 ]
Sue Linden made changes - 13/Nov/08 12:07 PM
Workflow jira-2007-12-22a [ 55844 ] jira-2008-11-14 [ 81684 ]
Sue Linden made changes - 13/Nov/08 04:35 PM
Workflow jira-2008-11-14 [ 81684 ] jira-2008-11-14a [ 88756 ]
Andrew Linden made changes - 20/Jan/09 02:42 PM
Assignee WorkingOnIt Linden [ WorkingOnIt Linden ] Andrew Linden [ Andrew Linden ]
Andrew Linden made changes - 20/Jan/09 02:43 PM
Status Reopened [ 4 ] Fix Pending [ 10001 ]
Linden Lab Internal Branch maint-server-6
Vektor Linden made changes - 23/Feb/09 04:48 PM
Link This issue Relates to SVC-3886 [ SVC-3886 ]
Vektor Linden made changes - 27/Feb/09 04:03 PM
Link This issue is related to by SVC-3886 [ SVC-3886 ]
Vektor Linden made changes - 27/Feb/09 04:08 PM
Link This issue Relates to SVC-3886 [ SVC-3886 ]
darling brody made changes - 10/May/09 10:22 PM
Status Fix Pending [ 10001 ] Closed [ 6 ]
Resolution Fixed [ 1 ]