Infinite Nesting
|
Darien Caldwell
Registered User
Join date: 12 Oct 2006
Posts: 3,127
|
06-17-2009 18:24
From: Gordon Wendt Reading back after I commented I noticed that and actually came back here to edit my post but you replied before I could. It should be noted that the two are very closely related. The simple steps to infinite nesting.
Create object A Put rezzing script into object A Take a copy of object A to inventory -> that will now be object B Put your new object B inside of object A Take a copy of Object A to inventory -> this will be object C Delete object C from object A and replace with object C
You can place touches and menus into that and code all sorts of tricks into it and to prevent it getting out of control I'd suggest making it only work on trigger but in theory that idea should give you something that can give out a fresh copy of itself when whatever touch or other event you set it up for is activated with no problems. I tried it twice, but it just gave me two levels of nested objects. C rezzed B, B rezzed A, and A gave an error cause it had nothing inside.
|
Gordon Wendt
404 - User not found
Join date: 10 May 2006
Posts: 1,024
|
06-17-2009 20:45
From: Darien Caldwell I tried it twice, but it just gave me two levels of nested objects. C rezzed B, B rezzed A, and A gave an error cause it had nothing inside. I may very well have made a mistake on that. As I said I haven't had to do that in awhile. It's too late to try tonight but tommorow morning I'll give it another try.
_____________________
Twitter: http://www.twitter.com/GWendt Plurk: http://www.plurk.com/GordonWendt GW Designs: XStreetSL
|
Strife Onizuka
Moonchild
Join date: 3 Mar 2004
Posts: 5,887
|
06-20-2009 22:53
You know there is an easier way of doing this.
Have a server, and clients. You click the client, it contacts the server and the server gives you a client. Anyone who clicks your client, it does the same thing. Gives the appearance of self replication. You could even put a client in the client's inventory to confuse people.
_____________________
Truth is a river that is always splitting up into arms that reunite. Islanded between the arms, the inhabitants argue for a lifetime as to which is the main river. - Cyril Connolly
Without the political will to find common ground, the continual friction of tactic and counter tactic, only creates suspicion and hatred and vengeance, and perpetuates the cycle of violence. - James Nachtwey
|
Lear Cale
wordy bugger
Join date: 22 Aug 2007
Posts: 3,569
|
06-21-2009 18:03
From: Gordon Wendt Reading back after I commented I noticed that and actually came back here to edit my post but you replied before I could. It should be noted that the two are very closely related. The simple steps to infinite nesting.
Create object A Put rezzing script into object A Take a copy of object A to inventory -> that will now be object B Put your new object B inside of object A Take a copy of Object A to inventory -> this will be object C Delete object C from object A and replace with object C
Assuming you mean, "... and so on", that's not infinite nesting. It's "arbitrarily high" nesting. There's a very big difference in theory, though not much difference in practice, if you go deep enough. You'd have to make sure all nesting levels of the object stay rezzed or in avatar inventory, though, or they'd eventually be deleted from servers by garbage collection. If you don't mean "and so on", then this only goes 2 levels deep (or 3, depending on how you count). I made a balloon that contained a copy of "itself" 2 levels deep like this: if you click on a balloon, it bursts and releases 5 copies, each of which can also burst and release 5 empty copies, using precisely your method above. Fun way to slow a sim down during a party! but not for long since they're all temp on rez. I've made other objects that contain objects that contain objects (e.g., a tossable wedding garter and bouquet). A friggin nuisance to update, these toys! But it's just bookkeeping. The only way I know of to do replication in SL takes two objects on each replication, as discussed in the wiki page mentioned above. Of course, the object, when rezzed, could rez what's inside (an empty copy of itself), and give that object the same item to take into inventory, and then delete itself. The owner may not even notice, except that "take" wouldn't put it back in the same folder. That gives the effect of self-replication ... almost. You'd lose changes to the object name in inventory, and there may be other oddities.
|
Lear Cale
wordy bugger
Join date: 22 Aug 2007
Posts: 3,569
|
06-21-2009 18:07
From: Strife Onizuka You know there is an easier way of doing this.
Have a server, and clients. You click the client, it contacts the server and the server gives you a client. Anyone who clicks your client, it does the same thing. Gives the appearance of self replication. You could even put a client in the client's inventory to confuse people. How can a server give inventory to an object that's not in the same region? The wiki for llGiveInventory() says "If destination is an object then it must be in the same region."
|
Void Singer
Int vSelf = Sing(void);
Join date: 24 Sep 2005
Posts: 6,973
|
06-21-2009 20:09
slightly simpler version of Gordon's instructions (because I like minimalist instructions) create object A drop in a script that rezzes the copy and gives all inventory to that copy. take a copy to inventory, then drop it in the original done. the relevant script looks something like.... default{ touch_start( integer vInt ){ llRezAtRoot( llGetObjectName(), llGetPos() + < 1.0, 0.0, 0.0 >, ZERO_VECTOR, ZERO_ROTATION, 0 ); }
object_rez( key vKeyTgt ){ llGiveInventory( vKeyTgt, llGetObjectName() ); } }
the server method works for items that are given directly to the av, either the object can request a copy from the server when it rezzes, to give directly to the av, or it can just pass the request to to the server which sends the item directly to the av. (I'm guessing something like the first case occurs with OP's item)
_____________________
| | . "Cat-Like Typing Detected" | . This post may contain errors in logic, spelling, and | . grammar known to the SL populace to cause confusion | | - Please Use PHP tags when posting scripts/code, Thanks. | - Can't See PHP or URL Tags Correctly? Check Out This Link... | - 
|
SuezanneC Baskerville
Forums Rock!
Join date: 22 Dec 2003
Posts: 14,229
|
06-21-2009 20:37
From: someone Create object A Put rezzing script into object A Take a copy of object A to inventory -> that will now be object B Put your new object B inside of object A Take a copy of Object A to inventory -> this will be object C Delete object C from object A and replace with object C Should the last line read "Delete object B"? It does not seem that Object C would be in Object A's contents.
_____________________
-
So long to these forums, the vBulletin forums that used to be at forums.secondlife.com. I will miss them.
I can be found on the web by searching for "SuezanneC Baskerville", or go to
http://www.google.com/profiles/suezanne
-
http://lindenlab.tribe.net/ created on 11/19/03.
Members: Ben, Catherine, Colin, Cory, Dan, Doug, Jim, Philip, Phoenix, Richard, Robin, and Ryan
-
|
SuezanneC Baskerville
Forums Rock!
Join date: 22 Dec 2003
Posts: 14,229
|
06-22-2009 19:52
From: someone Create object A Put rezzing script into object A Take a copy of object A to inventory -> that will now be object B Put your new object B inside of object A Take a copy of Object A to inventory -> this will be object C Delete object C from object A and replace with object C Should the last line read "Delete object B"? It does not seem that Object C would be in Object A's contents.
_____________________
-
So long to these forums, the vBulletin forums that used to be at forums.secondlife.com. I will miss them.
I can be found on the web by searching for "SuezanneC Baskerville", or go to
http://www.google.com/profiles/suezanne
-
http://lindenlab.tribe.net/ created on 11/19/03.
Members: Ben, Catherine, Colin, Cory, Dan, Doug, Jim, Philip, Phoenix, Richard, Robin, and Ryan
-
|
SuezanneC Baskerville
Forums Rock!
Join date: 22 Dec 2003
Posts: 14,229
|
06-23-2009 05:17
From: someone Create object A Put rezzing script into object A Take a copy of object A to inventory -> that will now be object B Put your new object B inside of object A Take a copy of Object A to inventory -> this will be object C Delete object C from object A and replace with object C Should the last line read "Delete object B"? It does not seem that Object C would be in Object A's contents.
_____________________
-
So long to these forums, the vBulletin forums that used to be at forums.secondlife.com. I will miss them.
I can be found on the web by searching for "SuezanneC Baskerville", or go to
http://www.google.com/profiles/suezanne
-
http://lindenlab.tribe.net/ created on 11/19/03.
Members: Ben, Catherine, Colin, Cory, Dan, Doug, Jim, Philip, Phoenix, Richard, Robin, and Ryan
-
|
SuezanneC Baskerville
Forums Rock!
Join date: 22 Dec 2003
Posts: 14,229
|
06-23-2009 15:53
From: someone Create object A Put rezzing script into object A Take a copy of object A to inventory -> that will now be object B Put your new object B inside of object A Take a copy of Object A to inventory -> this will be object C Delete object C from object A and replace with object C Should the last line read "Delete object B"? It does not seem that Object C would be in Object A's contents.
_____________________
-
So long to these forums, the vBulletin forums that used to be at forums.secondlife.com. I will miss them.
I can be found on the web by searching for "SuezanneC Baskerville", or go to
http://www.google.com/profiles/suezanne
-
http://lindenlab.tribe.net/ created on 11/19/03.
Members: Ben, Catherine, Colin, Cory, Dan, Doug, Jim, Philip, Phoenix, Richard, Robin, and Ryan
-
|
Void Singer
Int vSelf = Sing(void);
Join date: 24 Sep 2005
Posts: 6,973
|
06-23-2009 19:10
From: Argent Stonecutter So it started at least 8 deep. If each person gives away an average of 10 copies, I think that's enough that everyone in SL can get one including the bots. it'd be enough at only a 2 deep if the inventories are copiable (in which case only the sub copies lose ability), the originals and first levels will still be giving out fully loaded versions =X Although prloading does give me some ideas for limited use items that I hadn't considered before...instead of doing it by script... the physical nesting may actually be more secure than can be done by script. now to come up with a delivery system....
_____________________
| | . "Cat-Like Typing Detected" | . This post may contain errors in logic, spelling, and | . grammar known to the SL populace to cause confusion | | - Please Use PHP tags when posting scripts/code, Thanks. | - Can't See PHP or URL Tags Correctly? Check Out This Link... | - 
|
SuezanneC Baskerville
Forums Rock!
Join date: 22 Dec 2003
Posts: 14,229
|
06-28-2009 09:33
I have a question about a previoius post in this thread. Gordon says in a post above: From: someone Create object A Put rezzing script into object A Take a copy of object A to inventory -> that will now be object B Put your new object B inside of object A Take a copy of Object A to inventory -> this will be object C Delete object C from object A and replace with object C Should the last line in the above quoted passage read "Delete object B" instead of "Delete object C"? It does not seem to me that Object C would be in Object A's contents after following the first four steps, and hence could not be deleted from Object A.
_____________________
-
So long to these forums, the vBulletin forums that used to be at forums.secondlife.com. I will miss them.
I can be found on the web by searching for "SuezanneC Baskerville", or go to
http://www.google.com/profiles/suezanne
-
http://lindenlab.tribe.net/ created on 11/19/03.
Members: Ben, Catherine, Colin, Cory, Dan, Doug, Jim, Philip, Phoenix, Richard, Robin, and Ryan
-
|
Void Singer
Int vSelf = Sing(void);
Join date: 24 Sep 2005
Posts: 6,973
|
06-28-2009 10:32
minor typographical error, just use my instructions, so much simpler, and you end up at the same place... infinite recursion.
_____________________
| | . "Cat-Like Typing Detected" | . This post may contain errors in logic, spelling, and | . grammar known to the SL populace to cause confusion | | - Please Use PHP tags when posting scripts/code, Thanks. | - Can't See PHP or URL Tags Correctly? Check Out This Link... | - 
|