Ability to remotely set/get primitive parameters (securely)
Extrude Ragu
Currently, most mesh attachments in Second Life come with at least one script to receive commands from HUD's and change primitive parameters such as colors and textures.
These scripts all add to region script time, slow down sim crossings and increase operating costs for LL.
I believe that if we could remotely get/set primitive parameters from a HUD, the number of worn scripts on an avatar would decrease considerably over time.
We would need two functions, similar to the existing llSet/GetPrimitiveParams
I Propose
llSetObjectPrimitiveParams(key object, integer link, string password, list parameters);
llGetObjectPrimitiveParams(key object, integer link, string password, list parameters);
The function would only work if both objects have the same owner and the correct password is used.
The build window would allow us to set a password for remote editing on an object, which once set becomes a private internal variable that cannot be retrieved.
Example - Making a remote object the color red
Key myShirt = findAttachmentWithName("Captains Shirt");
llSetObjectPrimitiveParams(myShirt, LINK_SET, "some_password", [PRIM_COLOR, <1,0,0>]);
By being able to edit objects directly from a HUD we vastly reduce the number of active scripts required to be attached to an agent at any given time, which will lead to better lag, faster sim crossings and lower operating costs.
Log In
Talvin Muircastle
I voted for it. Annnnnd, I can see multiple issues with it. I think it needs a little more narrowing down, or perhaps splitting into multiple things.
First, while it says "remotely", the specific use-case you speak of involves
attachments
. I can see uses for it beyond attachments, but I think we are talking about two VERY different situations, here. For items rezzed out: right now, llRezObjectWithParams() will let you de-rez (and even store!) something it has rezzed. Perhaps expand that to include control of other things about what was rezzed (so long as it is set Mod for the owner!)
For attachments, we also need to worry about permission masks.
I'm gonna go out on a limb and suggest llRezAttachmentWithParams, and associated functions that let the original attachment (the HUD?) attach things to the av at specific points, with an option for "add" or "replace", and give it a continuing ability to alter the parameters of that attachment. Again, assuming it can pass the permission mask.
I know I am rambling a bit. I do support the basic concept, I just feel it needs a bit more fleshing out, and maybe branching.
hinaichigo Xaris
Talvin Muircastle I think this comment is quite relevant. I bet many of us wonder the same thing when we read the topic title: what about unattached objects?
Being able to set parameters on objects remotely—without an additional script on the receiving end—sounds problematic, almost magical, but undeniably useful.
Talvin Muircastle
hinaichigo Xaris That's why I am pointing to llRezObjectWithParams. It's already a step in that direction, let's add something else that respects the permissions on the object and, within those limits, can work with what llSetPrimitiveParams, etc. can. Throw in one more to "rez" things attached to you, and use the same logic, and we're getting somewhere.
Extrude Ragu
hinaichigo Xaris With the requirement of a pre-shared password and the owners to match, I wonder how you imagine it could be abused?
hinaichigo Xaris
Extrude Ragu Well... thinking about it more deeply, using a password is a smart way to prevent abuse. It works similarly to how llRemoteLoadScriptPin() and llSetRemoteScriptAccessPin() work—they share a PIN that must match in order to transfer a script between them.
llRemoteLoadScriptPin()
llSetRemoteScriptAccessPin()
SL Feedback
We have identified sensitive Personally Identifiable Information (PII) in your post. To protect your privacy, we have redacted the sensitive information. The original post is still visible to our team for further review.
Extrude Ragu
SL Feedback it was a fake password for demonstration purposes...
Talvin Muircastle
Extrude Ragu Better they be sure than not, and probably automated.