Simple copy protection done right :)
-
Yes you need today's HISE version, I changed the behaviour of the
Engine.loadJSON()
method to return undefined instead of throwing an error (which will be the default case if the file wasn't written yet). -
ok
actually compiling the latest hise standalone project.
if i understand well i also could add the SerialGenerator.js script to the interface to generate a brand new serial list instead of the given one ?
all the component are labels (save in preset no, and just the input serial editable) ? except the Submibutton of course ;)
EDIT:
Just added this line:
Description.set("text", "Valid serial number. The number you supplied does match");
in :
if(serials.Data.contains(v))
{
Console.print("Serial number found");
Description.set("text", "Valid serial number. The number you supplied does match");Because without that it always shows that it's invalid in the Description Label. :D
-
This post is deleted! -
You are the BEST @Christoph-Hart , Thanks
-
Just a little funny test :)
simple & basic scripting, just for test.
Sorry no sound in gif but it works !:D :D :D
-
@Christoph-Hart OK quick supplemental question - has "today's HISE" fixed the problem of dialogs not showing fully in interfaces less than 500 px high or do I have to go modify my UI design a bit?
-
@Lindon dont worry - answered it myself - no.
-
will try to find how add user name (with a print as "registered to: "name of user")
it could be good No ?
-
How about a bundle products? For example a bundle that consists of 20 different plugins.
Any suggestions for preventing the user from entering serials of the 20 products one by one?
-
Store the entered serial one parent directory up. In HISE this will be superweird but the compiled version will end up in your Company folder (you might need to add a bundle ID to the JSON you store on disk)
-
Ok I see, I set 2 folders up from the root folder:
"../../RegistrationInfo.js"
-
Yes, but choose a filename that won't conflict with other bundles you might offer :)
-
@Christoph-Hart Good idea ;)
-
@Lindon said in Simple copy protection done right :):
Actually I dont store all the numbers in the interface - I use an formula to calc if the entered numbers are valid or not...Kontakt is so much easier to hack the (KSP) code so including the numbers was never really an option. HISE not so much of a problem. One more win for HISE...
Is there any progress for this serial decoder formula stuff?
-
No and there never will be. As soon as you use a publicly available "formula" to create these serials, your entire copy protection scheme is pointless.
Use the tools and come up with a random processing and combination of the things to create valid serials. Then tell nobody how you did it :)
-
No and there never will be. As soon as you use a publicly available "formula" to create these serials, your entire copy protection scheme is pointless
I came up with such a scheme for Kontakt. The formula can be made public as it relies on each instrument containing a unique number in its script that is used to encode/decode the serials. I'll post the script when I'm at my computer.
-
@Christoph-Hart Yes of course the formula shouldn't be shared. And I think without formula method is useful too.
-
@Christoph-Hart I mean how can we approach this encoding and decoding process..etc. I've found this could it be useful? : https://gist.github.com/ubergesundheit/5626679
-
Yeah, good luck pasting
throw new RuntimeException("VIN number must be 17 characters");
into HISE :) -
@Christoph-Hart ok, we can't use that :)