|
ninjafoo Ng
Just me :)
Join date: 11 Feb 2006
Posts: 713
|
11-21-2006 04:55
Hi all,
I have a couple of scripts that would be very useful to other developers (not neccassarly scripters themselves). Is there a good way of selling them some scripts without taking the risk of the script ending up in a freebie box?
Somehow I need to find a way to distribute a copy+xfer script and tie it to objects created by a single person (it has to be copy+xfer so the other dev can distribute their work easily through vendors / buy boxes etc). What I dont want to do is something that requires me to hard code a name into the scripts if at all possible.
Any ideas?
_____________________
FooRoo : clothes,bdsm,cages,houses & scripts
QAvimator (Linux, MacOS X & Windows) : http://qavimator.org/
|
|
Eloise Pasteur
Curious Individual
Join date: 14 Jul 2004
Posts: 1,952
|
11-21-2006 05:44
llGetInventoryCreator(llGetScriptName()) should return your key, stopping people cutting and pasting your script into something else.
llGetCreator() is probably the best bet, it will get the prim's creator, although it will require a bit of hard coding somewhere. There are other solutions around this... for example you use llGetCreator() and email or http request it to an inworld or outworld server and check it against a list.
I've yet to see one that doesn't require maintaining something like that somewhere.
That said, I sell a full perms script with a commented "do not distribute this script further as copy/mod/transfer" type license. I'm positive that is not honoured by all, but it still does get sales fast enough that it is obviously honoured by many. It's getting close to a year since I released it and it still sells on average around one per day.
|
|
Lex Neva
wears dorky glasses
Join date: 27 Nov 2004
Posts: 1,361
|
11-21-2006 12:17
The llGetCreator() idea is good, although it can be circumvented by a determined enough third party. They just need to find a full-perms freebie (actually, just one prim) made by the person in question, and use it as the root prim of their object. Then its creator will pass your llGetCreator() check, and they can use your script.
It's worse than that. Since it's always possible for someone malicious to pull your script out of the object it's in and put it in another object (thereby resetting it in the process), you can't really add any code to watch for transfers and track how many times the script has been transferred.
You'd be far better off with a non-technological solution as Eloise suggests. Simply tell the person you're selling it to what you intend them to do with it. Tell them to set the script next-owner no-transfer before they distribute it. If you can't trust someone, don't do business with them. If someone betrays you, heap derision on them and tell all of your friends so they ban them and never do business with them.
|