Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Transferring ownership of deeply nested scripts which need PERMISSION_CHANGE_LINKS ?

Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
04-28-2006 10:19
Any suggestions welcome ...

I have several objects which are built a bit like russian dolls, object within object within object etc.

3 or 4 layers down there are objects which require PERMISSION_CHANGE_LINKS.

This makes it extremely difficult to transfer ownership without requiring the new owner to assemble a complex structure. Because as far as I'm aware, that new owner would be required to give permission for the scripted linking ?

If you understand what I'm talking about please suggest methods to make it easier to transer these objects ...

Or is there simply no easy way to do this transfer ?
_____________________
Geometry is music frozen...
Aodhan McDunnough
Gearhead
Join date: 29 Mar 2006
Posts: 1,518
04-28-2006 10:39
You can try firing off an llGetOwner in the on_rez or state_entry events in each of the "matrushkas".
Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
04-28-2006 12:34
From: Aodhan McDunnough
You can try firing off an llGetOwner in the on_rez or state_entry events in each of the "matrushkas".


Could you elaborate please ...



... unless you are suggesting perhaps that I, as creator have given permission, therefore somehow it is not required to ask the new owner ? ... there's an idea ! but I'm pretty sure llBreakLink() would silently fail ... mmm
_____________________
Geometry is music frozen...
Ziggy Puff
Registered User
Join date: 15 Jul 2005
Posts: 1,143
04-28-2006 13:13
What prevents the script from asking the new owner for link permissions? I think what Aodhan was suggesting was to check the current owner every time it's rezzed, and if you find that the owner has changed (because you had saved the previous owner's key in a variable, and that doesn't match the current owner any more), ask the new owner for link change permissions.
Argent Stonecutter
Emergency Mustelid
Join date: 20 Sep 2005
Posts: 20,263
04-28-2006 13:34
What is the logic behind PERMISSION_CHANGE_LINKS even existing? Why is it necessary that the owner have to grant permission for linking and unlinking prims?
Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
04-28-2006 14:29
From: Argent Stonecutter
What is the logic behind PERMISSION_CHANGE_LINKS even existing? Why is it necessary that the owner have to grant permission for linking and unlinking prims?


indeed! pita
_____________________
Geometry is music frozen...
Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
04-28-2006 14:30
From: Ziggy Puff
What prevents the script from asking the new owner for link permissions? I think what Aodhan was suggesting was to check the current owner every time it's rezzed, and if you find that the owner has changed (because you had saved the previous owner's key in a variable, and that doesn't match the current owner any more), ask the new owner for link change permissions.


nothing prevents it, and that is the problem ...


please read my original post properly

From: someone
If you understand what I'm talking about please suggest methods to make it easier to transer these objects ...
_____________________
Geometry is music frozen...
Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
04-28-2006 14:43
From: Laukosargas Svarog
... but I'm pretty sure llBreakLink() would silently fail ... mmm


yep ... just tested, llBreakLink() fails. Every new owner must be asked to give permission as I already knew but needed to confirm just to be sure.

As far as I can see the only way to transfer objects as I described is to break them up and have the new owner rebuild them.

For some people this is fine, but in my experience most SL users simply are not capable of doing this correctly and I'd get a real headache with support. :(
_____________________
Geometry is music frozen...
Ziggy Puff
Registered User
Join date: 15 Jul 2005
Posts: 1,143
04-28-2006 15:05
Well, seems to me that asking for permissions and then having the scripts rebuild the object, would be simpler for the user than expecting him to manually rebuild it himself. But I have probably misunderstood the application and how it's used, so maybe you're not talking about a manual rebuild at all.
Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
04-28-2006 15:10
From: Ziggy Puff
Well, seems to me that asking for permissions and then having the scripts rebuild the object, would be simpler for the user than expecting him to manually rebuild it himself. But I have probably misunderstood the application and how it's used, so maybe you're not talking about a manual rebuild at all.


Having scripts rebuild the object is certainly an option that's better than manually rebuilding and is such a simple idea that it went right past me !

I think this can be done but would require some thought to get it all put together correctly. These permissions are still a pita though ! I'll look into this idea in more depth.

Thank you :)
_____________________
Geometry is music frozen...
Ziggy Puff
Registered User
Join date: 15 Jul 2005
Posts: 1,143
04-28-2006 15:23
LOL. I was so sure that you were talking about scripted rebuilding, that I figured my post really didn't contribute anything at all, which is why I deleted it :)

I expect that scripted re-building will be pretty complicated to implement, because you'll have to move the prims into the right positions/rotations, etc. etc. I've never tried anything like that. But if you can figure it out, it should be simpler from a "user experience" point of view.
Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
04-28-2006 15:40
From: Ziggy Puff
LOL. I was so sure that you were talking about scripted rebuilding, that I figured my post really didn't contribute anything at all, which is why I deleted it :)


I was wondering where the heck it went ! There I was hitting the refresh button ... I'm working on one of these things atm, so i'm keeping an eye on this thread :p


From: Ziggy Puff

I expect that scripted re-building will be pretty complicated to implement, because you'll have to move the prims into the right positions/rotations, etc. etc. I've never tried anything like that. But if you can figure it out, it should be simpler from a "user experience" point of view.


yep :)
_____________________
Geometry is music frozen...
ed44 Gupte
Explorer (Retired)
Join date: 7 Oct 2005
Posts: 638
04-28-2006 19:42
Sorry, I dont see the problem. My code just checks for the link/delink permissions and if not available, asks for them, then continues with a listener on run_time_permissions(integer perm) which in turn calls x.

If permissions are set, then the code calls x directly.

My landbot just generates a hud dialog box:

CODE

"Landbot65", an object owned by ed44 Gupte, would like to:

Link and delink from other objects

Is this ok?

Yes Button No Button


Hope my customers will be able to click the yes button lol
Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
04-28-2006 20:31
From: ed44 Gupte
Sorry, I dont see the problem.

...



mmm I can see that.

Imagine an object, in the inventory of anothe object which is in the inventory of another object which is in the inventory of another object...

the deepest object needs link permission. So this means the fully built object cannot be transferred as one piece.

The problem is not with the asking of the permission or the presentation of a permissions request. It's with the way in which the permissions system is implemented. I have to break up a complex object because it cannot be transferred to another owner fully built. Get it ?

It looks like the idea of having a script to rebuild the object after being transferred is the only work around.
_____________________
Geometry is music frozen...
ed44 Gupte
Explorer (Retired)
Join date: 7 Oct 2005
Posts: 638
04-28-2006 21:47
Hi Laukosargas

Still not sure what the problem is so I must be a bit dense. I can see that if you transfer the object all linked up the permissions you gave it probably will not work for the new owner, but your object would simply check for permissions everytime. After transfer that would fail and your object would simply ask the new owner. Just another click?

If you give a more concrete example I can check that against my alt and give you a better answer.

Ed
Laukosargas Svarog
Angel ?
Join date: 18 Aug 2004
Posts: 1,304
04-29-2006 05:03
From: ed44 Gupte
Hi Laukosargas

Still not sure what the problem is so I must be a bit dense. I can see that if you transfer the object all linked up the permissions you gave it probably will not work for the new owner, but your object would simply check for permissions everytime. After transfer that would fail and your object would simply ask the new owner. Just another click?

If you give a more concrete example I can check that against my alt and give you a better answer.

Ed


Ummm ... I can't keep repeating the same things over and over again ...

It isn't just another click at all! I repeat .... the objects are DEEPLY nested in each others inventories. The DEEPEST object requires the permission. So this means the new owner has to TAKE THE OBJECT APART in order to give the permission. The problem is NOT with the getting and giving of the permission, that works perfectly I am extremely experienced with LSL the problem is with TRANSFER caused by a noxious unneeded LSL permission requirement.

One thing I didn't mention is an added complication that the object is copied, rezzed and dies 100s of times a day. So asking for permission each time is completely out of the question. It can be and IS only ever asked for once.

I suggest you try to make an object as I described, then give it to someone else and see if they can make it work. Most people, as I've said can't follow instructions and find it difficult to assemble simple structures let alone a russian doll of prims which have to go into each other in the correct order.

Anyway it's old news now as it appears the only solution is to make a script that assembles it for the new owner and gets the permissions just the one time as it should. Such an obvious solution !
_____________________
Geometry is music frozen...