Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

llVolumeDetect quirks, and phantom bullets

Rotten Thatch
Registered User
Join date: 28 Mar 2005
Posts: 21
05-19-2005 23:03
durring a late night scripting session while trying to make anti-shield bullets, I came across a few annoying inconsistancies in llVolumeDetect and quirks

I have one box with the following script:
default
{
state_entry()
{

llVolumeDetect(TRUE);
llSetDamage(10);
llSetBuoyancy(1);
}

touch_start(integer total_number)
{
llSay(0, "Touched.";);
}
}

it's set to a thin wall, and when I walk through it, it does damage.

I decided to move the script to another object to test it dropped, and it also worked in that situation.

Now comes the conflict... I moved it onto another object later and even tried shift copying the object and it no longer had the damage effect. Even resetting the script and moving it directly onto fresh prims did nothing. It would no longer generate a damage collision.

I know that phantom and llVolumeDetect bullets exist, and I know that a damage causing llVolumeDetect is possible purely because I HAVE SEEN AND DONE it... but it seems dreadfully inconsistant. Any help would be appreciated.

edit: I also noted some huge issues with llCollisionFilter in this reguard, when used in conjuntion with llVolumeDetect, it will NEVER work to detect the avatar to collide with while volumedetect is active, and it will also NOT restrict the damage collision with a when llVolumeDetect is inactive.
Rotten Thatch
Registered User
Join date: 28 Mar 2005
Posts: 21
05-22-2005 13:42
I don't know what to say there. I did some work with it but never got an object using llVolumeDetect to do damage. I had to make it physical and turn off volumedetect and have it use llMoveToTarget just offcenter of the target.

I know that's probably not much help, though, especially if what you are saying is true about the test script objects is true.
Jeffrey Gomez
Cubed™
Join date: 11 Jun 2004
Posts: 3,522
05-22-2005 16:00
From: Rotten Thatch
Now comes the conflict... I moved it onto another object later and even tried shift copying the object and it no longer had the damage effect. Even resetting the script and moving it directly onto fresh prims did nothing. It would no longer generate a damage collision.

Shift-Copy and certain script copies are a mite bit buggy. Try resetting the script itself and make sure you don't have certain parameters like phantom set in the object. Volumedetect does not function if Phantom is toggled - it creates its own independant effect.

From: Rotten Thatch
I know that phantom and llVolumeDetect bullets exist, and I know that a damage causing llVolumeDetect is possible purely because I HAVE SEEN AND DONE it... but it seems dreadfully inconsistant.

In my tests, VolumeDetect is horribly temperamental for certain calls. Your best bet is trial and error, unfortunately.



From: Rotten Thatch
edit: I also noted some huge issues with llCollisionFilter in this reguard, when used in conjuntion with llVolumeDetect, it will NEVER work to detect the avatar to collide with while volumedetect is active, and it will also NOT restrict the damage collision with a when llVolumeDetect is inactive.

Explain. Collision Filters have no problems with how I use them. Make sure you're setting it up properly.

Edit: Aha. I stand corrected.

http://secondlife.com/badgeo/wakka.php?wakka=llCollisionFilter

From: someone
# It appears that if you use this in conjunction with llVolumeDetect, llSetDamage will NOT generate a damage collision. Conversely, it will also not prevent damage when llVolumeDetect is set to FALSE. I think this has something to do with the specific way llCollisionFilter and llSetDamage operate and this is probably a bug. -JarhynWilde


If it were me, I would just do a sensor and phantom the object until it gets nearby. Alternately, you can just toggle damage on once it gets there. ;)
_____________________
---