In the digital world, leaking once is leaking forever. An extra layer of protection doesn't prevent it from leaking quickly; it only delays the initial leak, and after that it leaks as fast as any other plugins.
I know. That's why you need a database to store your activation keys (so you will be able to cancel them) and your own obfusctator.
So what happens after the activation key has been cancelled? A copy is left locally? So people can leak the local copy?
maybe there is an auto checker with the name of "auto update" function which check if the code is not the same?? then that 'might' be possible.. i think.. (of course the "auto update" function is within the code(plugin) that been 'leaked'
Uhh. You make keys by countries and you give the key of the x country to the buyers from there. Checking the location of the player that has OP and one extra permission is not so hard.
Then it's the time that you cancel all the activation keys, make an update and add an HWID system. The HWIDs will get created automatically from the plugin. The buyer will have to message the seller his HWID and he will be added to the whitelist. Something like the Java hacked clients.
Let's be realistic and stop the assumptions that "it is harder to leak". If you have a key feature in the plugin that calls home (you have a server serving the users), you can rate-limit these calls by the keys, then if they leak it, the key won't work.
It can still be broken though. Plus, that's a lot of work to protect a plugin, even more so considering that someone would just make an open source plugin that does the same thing.
Every human is unique. You can clone a human but it will never be the same with its original. The same applies to plug-ins.
That's true. But the majority of users will always go with something free that works, than something that you pay for, and you don't know if it works or not until you buy it.
That's why you are showcasing something before you sell. Promotion and making the others sure your plugin will work. Anyways, time to stop this because it became off-topic