Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

How to prevent scripts being reset?

Macie Forzane
Registered User
Join date: 4 Jan 2009
Posts: 3
08-18-2009 03:50
Is there way to prevent an object's scripts being reset so that the script can store persistant data?

I have both the object and its script set to No Modify. However, users can still reset the script in MY object even though they do not own it.
Dekka Raymaker
thinking very hard
Join date: 4 Feb 2007
Posts: 3,898
08-18-2009 04:08
I'm sure there is, I have seen scripts I cannot reset, but I don't know how it is done.
Qie Niangao
Coin-operated
Join date: 24 May 2006
Posts: 7,138
08-18-2009 04:42
From: Macie Forzane
Is there way to prevent an object's scripts being reset so that the script can store persistant data?

I have both the object and its script set to No Modify. However, users can still reset the script in MY object even though they do not own it.
Really? They can select an object owned by you and use Tools/Reset Scripts in Selection? I can't reproduce that.

The standard question and answer about this is for objects you create that are transferred to somebody else; in that case, the new owner will be able to reset scripts iff they have Modify permission on the *object*; permissions on the script don't affect it.

(Whether you can count on data persisting even if a script is not reset is another question, to which the answer is "usually".)
_____________________
Archived for Your Protection
Darien Caldwell
Registered User
Join date: 12 Oct 2006
Posts: 3,127
08-18-2009 08:47
I've never heard of people being able to reset something they don't own. The only way I could see this being possible is if the item was shared or deeded to a group, and all the members were group members.

I would say don't share it. But if you must, then you will need to make the object no modify as well, and pass it to an alt, have that alt rez it, and then pass it back to you. This will then mean the item is no modify to you too. Then nobody, not even you, will be able to reset it.
_____________________
Ceera Murakami
Texture Artist / Builder
Join date: 9 Sep 2005
Posts: 7,750
08-18-2009 09:31
One way to store persistent data that will survive script resets is to store it in the name and description fields of prims other than the root prim. A script can not change those fields for the root prim, but it CAN change them for any other prims in the linkset. Just use a small "recorder" script in each prim that you want to use as a "storage register", and each will give you two fields for data that will survive all resets. Use llMessageLinked to pass data back and forth or to poll the registers for the stored data.

I've got a script now that stores several variables in one description field, seperated by commas, and that uses that data in various functions.
_____________________
Sorry, LL won't let me tell you where I sell my textures and where I offer my services as a sim builder. Ask me in-world.
Lear Cale
wordy bugger
Join date: 22 Aug 2007
Posts: 3,569
08-18-2009 11:16
From: Macie Forzane
Is there way to prevent an object's scripts being reset so that the script can store persistant data?

I have both the object and its script set to No Modify. However, users can still reset the script in MY object even though they do not own it.
I'm confident that you're mistaken, and something else is going on here.

I believe that even if you give someone else permission to edit your objects (in friends list), they can't reset the script. (They could delete it and drag in a new copy, which would have the same effect.)