Phantom Maker

From Second Life Wiki
Revision as of 16:36, 27 June 2008 by Xaviar Czervik (talk | contribs) (Page created)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

While I (Xaviar Czervik) was making a vehicle script, I discovered this glitch with llVolumeDetect that allows avatars to become phantom. This means, you can pass through all objects and avatars solid. It is a known bug, and I put it on the JIRA - [[1]] - but Kate Linden has confirmed that people are allowed to use this without violating the CS or ToS.

To make this effect, save this script in an object. Then, just sit on it. It will delete itself, so it may be better to take a copy first. After you stand back up, you will be able to pass through anything. <lsl> default {

   state_entry() {
       llSitTarget(<0,0,.1>, <0,0,0,0>);
   }
   
   changed(integer i) {
       if (llGetOwner() != llAvatarOnSitTarget()) return;
       if (!(i & CHANGED_LINK)) return;
       llVolumeDetect(1);
       llDie();
   }
   
   on_rez(integer i) {
       llResetScript();
   }
       

} </lsl>

To remove the effect, do the same thing for the following script. Note the only difference is that there is a "llVolumeDetect(0);" after the first volume detect. <lsl> default {

   state_entry() {
       llSitTarget(<0,0,.1>, <0,0,0,0>);
   }
   
   changed(integer i) {
       if (llGetOwner() != llAvatarOnSitTarget()) return;
       if (!(i & CHANGED_LINK)) return;
       llVolumeDetect(1);
       llVolumeDetect(0);
       llDie();
   }
   
   on_rez(integer i) {
       llResetScript();
   }
       

} </lsl>