Talk:Phantom Child

From Second Life Wiki
Revision as of 09:39, 18 March 2010 by Michelle Resistance (talk | contribs) (→‎Even better...: new section)
Jump to navigation Jump to search

Awesome script. Still works as of 9/25/2008. And you can even set the object as physical! (Change the 'flexible-set' by a 'physical-set')—The preceding unsigned comment was added on 16:46, 26 September 2008 by Protector Cone


It has to be reseted on reboot. I wish I knew what event a server reboot causes to script, to avoid that it is not phantom for even 1 second after restart.

Bug Fix

Since this is an exploit of a current bug (jiralink?), would it be possible to estimate how the item reacts once the bug is fixed? Which would be the expected behaviour?

  1. Script silently fails, child and object staying solid?
  2. Script shouts an error on debug channel, child and object staying solid?
  3. Script works, child and object turning phantom?

I'm currently thinking about using it for a friends product but am afraid of the consequences... Others might be too. So it would be noteworthy in the article.
Greetz, Zai signature.png Lynch (talk|contribs) 15:26, 28 October 2008 (UTC)

The only bug I can see in this is enabling flexible on shapes that aren't allowed to be flexible. After the second type change it disables it but (I assume) it forgets to tell the physics engine. If this is the case, the fix would result in the objects staying solid. -- Strife (talk|contribs) 01:11, 6 April 2009 (UTC)


llGetTime and llRequestSimulatorData could both work in a loop, but CHANGED_REGION_START is probably the better solution. <lsl> //-- add this

 changed (integer vBitChanges){
   if (CHANGED_REGION_START & vBitChanges){

I'm adding the change to the main page, but posting this here in case anyone objects to the change Void Singer 18:21, 5 April 2009 (UTC)

  • Void, I had to remove your change while testing this script in-world: I got error on CHANGED_REGION_START - that was today on Hippotropolis, running Second Life Server - --oobscure 15:16, 6 April 2009 (UTC)
    • At this point I'm not sure if the CHANGED_REGION_START return value is live on the server. the constant itself obviously (now) isn't live. either someone forgot to update the viewer with the new constant(I think the keyword checking still happens there?), or the wiki page for it got mislabeled/changed(more likely). I changed the code to compile regardless, and if it's live on the server it should work, otherwise it does nothing. unfortunately I can't restart a sim to check. Void Singer 06:33, 8 April 2009 (UTC)

Even better...

A friend of mine recently (3/16/2010) discovered that we can get a much better phantom child effect by calling llVolumeDetect in a prim, linking it to something, and deleting the script:

<lsl> default {

   state_entry() {
   changed(integer change) {
       if (change & CHANGED_LINK) {

} </lsl>

This appears to persist even after re-rezzing, changing owner several times, and survives toggling phantom on the linkset. Apparently there are already products on the market using this trick to great effect, but I can't find any previous mention of this technique. I'm considering posting this to the JIRA as a "please don't fix!" issue.

--Michelle Resistance 16:39, 18 March 2010 (UTC)