Script bugging after sale

Creating scripts
User avatar
Mike Lorrey
Posts: 365
Joined: Sun Sep 04, 2016 5:40 pm
Has thanked: 72 times
Been thanked: 275 times

Script bugging after sale

Post by Mike Lorrey »

I have recreated the Multi-chair rezzing system I used to sell in SL and want to sell multichairs on the market. I did a test sale to a friend today, and another to myself, inworld for KC, and the post-sale object, which functioned perfectly before, now only partly functions post-sale. Essentially there is this:

Multi-chair rezzing table: holds main control script and a copy of whatever chair is being rezzed.
Normal Function:
The script rezzes the first chair when the table is either rezzed, or its script is reset. It faces the front of the chair toward the table and rotates it around 180 degrees to the opposite side of the table. If someone sits on the first chair, the table rezzes the second chair in the original spot across the table. When someone sits in that, it moves them 60 degrees to the side, rezzes a new chair, and moves it 60 degrees in the opposite direction. As people sit on the one empty chair, a new one rezzes, and all are evenly redistributed around the table, up to whatever maximum number I set in the script code. When people stand up from their chair, their chair dies and the remaining chairs are redistributed.

Post-sale function of a transferred Table (I have set the table and chair to copy/mod/notrans, the scripts in the table and chair to copy only, the perms are transferring properly):
The first chair is rezzed in the original spot, facing away from the table, but its not moving to the opposite side of the table or rotating to face the table. If you sit on the first chair, a second chair rezzes next to it, but likewise faces in the same wrong direction as the first chair, the chairs to not redistribute, and no further chairs rez. Please help. I am getting no bug warnings popping up.
User avatar
Ilan Tochner
Posts: 6515
Joined: Sun Dec 23, 2012 8:44 am
Has thanked: 4962 times
Been thanked: 4468 times
Contact:

Re: Script bugging after sale

Post by Ilan Tochner »

Hi Mike,

Please first note the permissions listed in this page: https://www.kitely.com/virtual-world-ne ... functions/

My guess is that there is some script permission issue that is preventing some of the functions you are calling from being executed.

Are the chairs being rezzed in your own world (i.e. is the Owner of the chairs also the Owner of the world they are being rezzed in)?

You can use the "Test delivery" option in your product listing's edit page to have the product delivered to you from a different Owner to see which permissions your buyers will get. See: https://kitely.atlassian.net/wiki/displ ... g+Products
User avatar
Mike Lorrey
Posts: 365
Joined: Sun Sep 04, 2016 5:40 pm
Has thanked: 72 times
Been thanked: 275 times

Re: Script bugging after sale

Post by Mike Lorrey »

1) I will examine that permissions page, thanks. I was used to perming things right in SL but its been a few years.
2) The script in the table root talks with the scripts in the chairs, it sounds to me like theres some sort of communications issue that is only evident post-transfer
3) Wherever I rez them myself, they work just fine for me. I rezzed one in Giz's sim and she bought a copy of it from the one I rezzed there. When she rezzed it, it was permed copy/mod/notrans properly, but it was rezzing chairs wrong, and the chairs were also permed properly. Yes, it was now her object in her sim in kitely.
4) they work fine wherever I rez them, both Woodbury and Giz's sim.
5) I then bought one from myself, and rezzed it and got the SAME problem as a notrans object, as Giz did, but my original kept working just fine! This is really odd.
Ilan Tochner wrote:Hi Mike,

Please first note the permissions listed in this page: https://www.kitely.com/virtual-world-ne ... functions/

My guess is that there is some script permission issue that is preventing some of the functions you are calling from being executed.

Are the chairs being rezzed in your own world (i.e. is the Owner of the chairs also the Owner of the world they are being rezzed in)?

You can use the "Test delivery" option in your product listing's edit page to have the product delivered to you from a different Owner to see which permissions your buyers will get. See: https://kitely.atlassian.net/wiki/displ ... g+Products
User avatar
Mike Lorrey
Posts: 365
Joined: Sun Sep 04, 2016 5:40 pm
Has thanked: 72 times
Been thanked: 275 times

Re: Script bugging after sale

Post by Mike Lorrey »

I have reviewed that article and it doesn't pertain to this product at all. Furthermore, when I make the scripts in the object "mod/copy/notrans", they work fine by the next owner, but I am concerned that my script is no longer secure if its set to mod. Is there a reference on properly perming scripted objects for sale?
Ilan Tochner wrote:Hi Mike,

Please first note the permissions listed in this page: https://www.kitely.com/virtual-world-ne ... functions/

My guess is that there is some script permission issue that is preventing some of the functions you are calling from being executed.

Are the chairs being rezzed in your own world (i.e. is the Owner of the chairs also the Owner of the world they are being rezzed in)?

You can use the "Test delivery" option in your product listing's edit page to have the product delivered to you from a different Owner to see which permissions your buyers will get. See: https://kitely.atlassian.net/wiki/displ ... g+Products
User avatar
Ilan Tochner
Posts: 6515
Joined: Sun Dec 23, 2012 8:44 am
Has thanked: 4962 times
Been thanked: 4468 times
Contact:

Re: Script bugging after sale

Post by Ilan Tochner »

I suggest you try the following test:

Place the script outside the item you're selling, add it to the market, buy that product and then insert the script into the item. Did this make any change? If so, please compare the script ownership and permissions (current owner, next owner, etc.) between the script when sold embedded inside another item and when sold when it's not embedded inside an item.

What happens when you give the item to another user (one of your alts for example) instead of sellign it via the marketplace. How do the script owenrship and permissions compare to the previous cases. Does that script work as intended when you transfer items that way?
User avatar
Mike Lorrey
Posts: 365
Joined: Sun Sep 04, 2016 5:40 pm
Has thanked: 72 times
Been thanked: 275 times

Re: Script bugging after sale

Post by Mike Lorrey »

Ilan Tochner wrote:I suggest you try the following test:

Place the script outside the item you're selling, add it to the market, buy that product and then insert the script into the item. Did this make any change? If so, please compare the script ownership and permissions (current owner, next owner, etc.) between the script when sold embedded inside another item and when sold when it's not embedded inside an item.

What happens when you give the item to another user (one of your alts for example) instead of sellign it via the marketplace. How do the script owenrship and permissions compare to the previous cases. Does that script work as intended when you transfer items that way?
The LSL Wiki says making the scripts in a scripted object nomod is the proper setting to protect the script code, but this is making them partially nonfunctional. If I make them mod, and sell it to myself inworld, I can see the script as the next owner, which should NOT be possible if its nomod. This tells me that there's something screwy with the DRM settings in Kitely.
User avatar
Ilan Tochner
Posts: 6515
Joined: Sun Dec 23, 2012 8:44 am
Has thanked: 4962 times
Been thanked: 4468 times
Contact:

Re: Script bugging after sale

Post by Ilan Tochner »

If you sell a script with the Modify permission then people should be able to modify it which means being able to open it and see its contents. If that is not what you want then you shouldn't sell it with the Modify permission. Please note that that's a separate issue from how script permissions may (or may not) be applied differently when transferring a script between people using different means. You want to find out why things don't behave as you expect them to and my guess is that it has to do with your Next Owner permissions (which is what buyers get) being different from the permissions you have as the object creator and original owner.

You're reporting a problem, I want to get to the bottom of it. The way to do that is to run the tests I recommend you run so we can see what changes under various scenarios and in what way.

Did you test the things I asked? If so what were the results?
User avatar
Mike Lorrey
Posts: 365
Joined: Sun Sep 04, 2016 5:40 pm
Has thanked: 72 times
Been thanked: 275 times

Re: Script bugging after sale

Post by Mike Lorrey »

Ilan Tochner wrote:If you sell a script with the Modify permission then people should be able to modify it which means being able to open it and see its contents. If that is not what you want then you shouldn't sell it with the Modify permission. Please note that that's a separate issue from how script permissions may (or may not) be applied differently when transferring a script between people using different means. You want to find out why things don't behave as you expect them to and my guess is that it has to do with your Next Owner permissions (which is what buyers get) being different from the permissions you have as the object creator and original owner.

You're reporting a problem, I want to get to the bottom of it. The way to do that is to run the tests I recommend you run so we can see what changes under various scenarios and in what way.

Did you test the things I asked? If so what were the results?
I am not going to put anything on the market that might leak out fully permed for copying. Thats simply silly. I can't count the number of times that hard working creators lost control of their code because some Linden told them that sort of advice. When I perm something, it should stay permed that way for the next owner as intended, no matter how I'm selling it to them, inworld, on the market. If its not perming right with the next owner, thats a problem with the platform. The permissions button in the content tab of the edit dialog simply isn't working right at all, and if I pull the chair out and rez it to set the perms properly by hand, and put the chair back into it, the script will only function half right for the next owner, while working perfectly for me while its in my possession. This is NOT how things are supposed to work.
User avatar
Ilan Tochner
Posts: 6515
Joined: Sun Dec 23, 2012 8:44 am
Has thanked: 4962 times
Been thanked: 4468 times
Contact:

Re: Script bugging after sale

Post by Ilan Tochner »

Please read about Slam Bits: http://wiki.secondlife.com/wiki/Debug_Permissions

Kitely Market gives the buyer the exact permissions the item has set as its Next owner permissions. As per the link above, to the Second Life wiki, If you change script permissions when they aren't currently rezzed then you're not really changing the permissions as you expect. You should only change item permissions when they are rezzed and not directly inside your inventory. In other words, rezz them, change their permission then retake them into your inventory and add them to your Kitely Market listing. If you do that then the buyer will get whatever permissions you gave the item for Next Owner.

At no point did I tell you to list your scripts with Modify permissions, I only explained why if you did so people should be able to modify them.

If you run the experiments I recommended and report on the permissions following delivery (when checking the rezzed item) then we will gain information that may actually help you get nearer to a solution to the problem you're reporting. If there is a real problem with our system then we'll fix it. My guess, given that there have been many thousands of no-Modify scripted items sold in Kitely without issue, is that the problem you're encountering is not due to Kitely Market itself but rather with how you have the permissions set up in your listed item.
User avatar
Mike Lorrey
Posts: 365
Joined: Sun Sep 04, 2016 5:40 pm
Has thanked: 72 times
Been thanked: 275 times

Re: Script bugging after sale

Post by Mike Lorrey »

Ilan Tochner wrote:Please read about Slam Bits: http://wiki.secondlife.com/wiki/Debug_Permissions

Kitely Market gives the buyer the exact permissions the item has set as its Next owner permissions. As per the link above, to the Second Life wiki, If you change script permissions when they aren't currently rezzed then you're not really changing the permissions as you expect. You should only change item permissions when they are rezzed and not directly inside your inventory. In other words, rezz them, change their permission then retake them into your inventory and add them to your Kitely Market listing. If you do that then the buyer will get whatever permissions you gave the item for Next Owner.

At no point did I tell you to list your scripts with Modify permissions, I only explained why if you did so people should be able to modify them.

If you run the experiments I recommended and report on the permissions following delivery (when checking the rezzed item) then we will gain information that may actually help you get nearer to a solution to the problem you're reporting. If there is a real problem with our system then we'll fix it. My guess, given that there have been many thousands of no-Modify scripted items sold in Kitely without issue, is that the problem you're encountering is not due to Kitely Market itself but rather with how you have the permissions set up in your listed item.
Now I am starting to repeat myself and getting annoyed because I am unable to convey my concerns effectively. When Someone buys a copy of my product inworld, the next owner is able to see the scripts whether or not they have mod permissions. There are two layers of permissions here in each object, the table, and the chair. The chair sits inside the table root prim contents, and is supposed to be rezzed by the script in the table root prim.

If I use the permissions button in the Table object edit dialog content tab to modify the permissions of the contents of the table contents tab, when I set the chair to mod/copy/notrans, but the next owner rezzes the table, the table rezzes the chair, and the chair is now nomod/nocopy/TRANS. This is clearly a broken permissions system. I am able to see the code of the scripts as the next owner despite these perms. THIS IS CLEARLY a broken permissions system.

If I pull the chair out of the table root, perm it properly, pick it up, put it in my inventory, then move it from my inventory back into the table root, replacing the previous original chair there, when I take the table into my inventory, rez it, and set it for sale, the next owner is unable to get the script to function properly, even though the original which I have rezzed that the next owner has bought from, works perfecly fine for me. THIS IS CLEARLY a broken permissions system.
Post Reply