• 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-1179
Type: Bug Bug
Status: Reopened Reopened
Priority: Major Major
Assignee: Andrew Linden
Reporter: Seifert Surface
Votes: 159
Watchers: 19
Operations

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

(Havok 4) llPushObject applied to avatars is inconsistent

Created: 12/Jan/08 12:24 AM   Updated: 21/Mar/09 03:29 PM
Return to search
Component/s: Physics
Affects Version/s: Havok4 Beta
Fix Version/s: None

File Attachments: None
Image Attachments:

1. avatar_push_data.png
(7 kB)
Issue Links:
Duplicate
 
Relates
 

Linden Lab Issue ID: DEV-8885
Linden Lab Internal Branch: havok4-8


 Description  « Hide
I've been testing my transport system again, and everything seems to be working fine for dynamic prims (single and linksets).

Avatars are behaving strangely inconsistently though. The setup is as follows:

I have a volumedetecting prim which on collision, gives the object that falls into it a push calculated to give it a horizontal velocity of exactly 10 m/s. I drop my avatar into it, wearing an object that records the first time the horizontal velocity gets above 1m/s, and tells me that horizontal velocity that it gets. This should always return 10.0 when it hits the pusher and, and with dynamic prims it does, out to 5 decimal places. With avatars it is very strangely inconsistent. This is a sample of my data:

[23:57] test pushes: 9.811794
[23:57] test pushes: 10.002684
[23:57] test pushes: 10.003022
[23:57] test pushes: 9.749023
[23:57] test pushes: 9.749105
[23:58] test pushes: 9.625697
[23:58] test pushes: 9.877037
[23:58] test pushes: 9.940375
[23:58] test pushes: 9.939623
[23:58] test pushes: 10.003778
[23:58] test pushes: 10.003645
[23:58] test pushes: 9.749612
[23:58] test pushes: 9.687874
[23:58] test pushes: 10.005015
[23:58] test pushes: 9.812495
[23:58] test pushes: 9.749736
[23:58] test pushes: 9.687205
[23:58] test pushes: 9.940044
[23:58] test pushes: 9.812558
[23:59] test pushes: 10.004038
[23:59] test pushes: 9.625619
[23:59] test pushes: 9.939420
[23:59] test pushes: 9.750255
[23:59] test pushes: 10.004878
[23:59] test pushes: 10.003636
[23:59] test pushes: 9.625620

The attached image plots some of this collected data (about 120 consecutive tests). There doesn't seem to be a local pattern, but there are very clear bands of velocities that we get, rather than random fluctuations. Quantised energy states?! I have no idea what's going on here!

These all have the avatar dropped from the same position (I'm moving there with llMoveToTarget then falling), and I'm also checking that the energy in the pusher prim isn't getting expended (it is always at 1.0 before the push and something bigger than 0.25 after). The same test done with an avatar sized prim looks like this forever:

[0:01] test velocities object: 9.999998
[0:01] test velocities object: 9.999998
[0:02] test velocities object: 9.999998
[0:02] test velocities object: 9.999998
[0:02] test velocities object: 9.999998



 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Seifert Surface made changes - 12/Jan/08 09:07 AM
Field Original Value New Value
Summary llPushObject applied to avatars is inconsistent (Havok 4) llPushObject applied to avatars is inconsistent
Harleen Gretzky made changes - 12/Jan/08 07:15 PM
Affects Version/s Havok4 Beta [ 10171 ]
lindenrobot made changes - 16/Jan/08 09:52 PM
Linden Lab Issue ID DEV-8885
Seifert Surface made changes - 25/Jan/08 01:22 PM
Link This issue is related to by SVC-875 [ SVC-875 ]
McCabe Maxsted made changes - 30/Jan/08 11:13 PM
Link This issue is related to by SVC-754 [ SVC-754 ]
Harleen Gretzky made changes - 02/Feb/08 09:18 PM
Link This issue is duplicated by VWR-4490 [ VWR-4490 ]
Lex Neva made changes - 11/Mar/08 12:36 PM
Link This issue is duplicated by SVC-1818 [ SVC-1818 ]
darling brody made changes - 13/Mar/08 09:11 PM
Comment [ I have found that llPushObject applied to an avatar from an attachment seems to not work when you use a value that is over some new cut off limit. This will break any existing objects that have been scripted within the old lmits.

I posted a script in the duplicated issue VWR-4490 which I will post here too. Under Havok1 you can use llPushObject from an attachment or teleporter prim to move the avatar with resonable accuracy and speed. It now seems that previously working scripts are failing under havok4's new cutoff values.

The following script gives my avatar a good 400m push upwards. Under havok4 nothing happens.


[code]
// this is the snippet of code effected by the havok4 change and not the complete push teleporter script.
// Wear an object (cube 0.5x0.5x0.5) containing this script and then touch the object.

PushToTarget(vector DestPos)
{
    key target_key = llGetOwner();
    vector start_pos = llGetPos();
    vector direction = llVecNorm(DestPos - start_pos);
    vector impulse = direction;
    impulse *= llGetObjectMass(target_key);
    llPushObject(target_key, impulse *= llPow(llVecDist(DestPos, start_pos), 3.0), ZERO_VECTOR, FALSE);
}

default
{
    state_entry()
    {
    }

    touch_start(integer total_number)
    {
        PushToTarget(llGetPos() + <0,0,2000>); // destiantion to be pushed to.
    }
}
[/code]
]
Keiko Rau made changes - 02/Apr/08 06:47 PM
Link This issue is duplicated by SVC-141 [ SVC-141 ]
Keiko Rau made changes - 02/Apr/08 06:48 PM
Link This issue is duplicated by SVC-141 [ SVC-141 ]
Keiko Rau made changes - 02/Apr/08 06:48 PM
Link This issue is related to by SVC-141 [ SVC-141 ]
Harleen Gretzky made changes - 23/Jun/08 12:29 PM
Link This issue is related to by SVC-2513 [ SVC-2513 ]
Andrew Linden made changes - 01/Jul/08 11:18 AM
Assignee Andrew Linden [ Andrew Linden ]
Andrew Linden made changes - 15/Jul/08 10:38 AM
Status Open [ 1 ] In Progress [ 3 ]
Andrew Linden made changes - 15/Jul/08 02:36 PM
Status In Progress [ 3 ] Fix Pending [ 10001 ]
Linden Lab Internal Branch havok4-8
Sue Linden made changes - 13/Nov/08 12:06 PM
Workflow jira-2007-12-22a [ 51124 ] jira-2008-11-14 [ 81516 ]
Sue Linden made changes - 13/Nov/08 04:34 PM
Workflow jira-2008-11-14 [ 81516 ] jira-2008-11-14a [ 88412 ]
Andrew Linden made changes - 19/Feb/09 09:00 PM
Status Fix Pending [ 10001 ] Reopened [ 4 ]