how do I set key in RPN reg module 1.8

Non-platform specific questions.

how do I set key in RPN reg module 1.8

Postby Steve13 » Thu Mar 09, 2006 2:38 am

I have installed the RPN module in my game. It inserted pretty easy, and it's all hooked up. It seems terrific. My problem is setting the RPN key.

Mr. Dark says in the Read Me file of RPN reg module 1.8:
"As a side note rpn keys are very tricky. Make sure you don't
just substitue random numbers in the one that is provided here.
Make sure your key is able to create a different reg number for
every key entered in a given name.

"example: if you enter a name like "miller" you'd get something
like 54723 for the number. Make sure if you enter
"millerrr" you don't get the same number as before."

I find that "miller," "millerrrr" and "r" generate the same unlock code in the RPN module example, as it is downloaded and with no modifications by me. The code generated seems to be dependent solely on the last letter entered.

In the registerpanel Create Actor script section, there is this code that must be modified to create individual RPN codes to be supplied to Handango, etc:

// This is your personal algorithm that can be supplied to
Handango, PocketGear, and other sites
strcpy(rpnstring,"i 0 == 123 * key + c 4567 * 890123 +");

I have modified that script, and the unlock codes that are generated do change, but they still follow the same pattern: "Miller", "Millerrr" or any name ending in r will generate the same code. I am not sure of what to change, and obviously. I do not know how to change the code.

So let me present my question.

Using just the RPN module as it is downloaded, unzipped, and opened in Game Editor, can someone supply a sample modification of the rpn key? I would prefer if you would show a modification of the actual strcpy line from the module.

One last point: The sample code, strcpy(rpnstring,"i 0 == 123 * key + c 4567 * 890123 +");, contains 0, 123, 4567, and 890123. Must those numbers always contain the same number of digits? For instance, could 123 be changed to 456789?

BeyondtheTech, Makslane, Mr. Dark, I thank you for your work. I have been able to work out every problem simply by reading the forum, but this time I am stumped.

Steve13
Chief Kook and Boggle watcher
Steve13
 
Posts: 7
Joined: Sat Dec 17, 2005 12:51 am
Score: 0 Give a positive score

Postby BeyondtheTech » Thu Mar 09, 2006 7:46 pm

The algorithm and code is working properly.

To test your code, you can use Handango's Registration Code Tester for free at this link:
http://www.handango.com/RegCode.jsp?siteId=1

Using your RPN string...
  • entering "miller" will produce 34505.
  • entering "millera" will produce 22402.
  • entering "millerar" will produce 34505 again.
  • entering "millerara" will produce 22402 again.
  • entering just "r" will produce 34505 again.
  • entering just "a" will produce 22402 again.
See a pattern? Like it or not, that's the algorithm that is accepted by all.

There are things you can do to make sure your protection isn't being compromised.
  • Don't accept names less than 5 characters. Most full names are never shorter than 5 characters, i.e. "Xi Li" is the shortest name I could think of.
  • Use the owner name function in Game Editor.
  • If you are using eSellerate or another site that ASKS you for an input string instead of assuming your name being the device's Owner's Name, you can use the unique ID function in Game Editor.
  • Blacklist certain words, such as names of cracking groups, or generic names.
    • COREPDA
    • Registered User
    • Registered Version
    • Unknown
    • Everyone
    • etc., you get the idea


Hope that helps.
User avatar
BeyondtheTech
 
Posts: 270
Joined: Wed Mar 30, 2005 6:34 am
Location: Edison, NJ
Score: 4 Give a positive score

Great answer; problem solved; thank you

Postby Steve13 » Thu Mar 09, 2006 8:16 pm

Thank you, BeyondTheTech. I can live with that. On my non-GE products, I purchased a module that produces individual codes, but frankly, it is a bit of overkill. Those who purchase are never interested in searching the web for a way around the code. And those who crack codes still find it too easy to get around the code generation module.

I'm happy with your answer.

And BTW, I was counting on your answer. When I saw you on the forum this afternoon, I knew you would answer soon. You sure did. That kind of technical help is invaluable.

Steve13
Hanging 10 on the surfboard of life
Steve13
 
Posts: 7
Joined: Sat Dec 17, 2005 12:51 am
Score: 0 Give a positive score

Postby mrdark7734 » Thu Mar 09, 2006 9:29 pm

If you play with the algorithm you can get it to give you a unique number for every name or combination of letters no matter what.

i.e.
"miller" will produce 84572
"millera" will produce 96751
"millerar" will produce 34558
"millerara" will produce 16415
"r" will produce 45184
"a" will produce 25311

You don't have to follow the pattern of the algorithm given as an example in the module

"i 0 == 123 * key + c 4567 * 890123 +"

Your key can be whatever you want it to be, like so

"i 0 == 23 + key c 567 + 78890123 *"
"i 0 == key * c 67 + 0123 *"
"i 0 == key / c * 5 + 89123 +*"

Now I'm not saying these will work, it's more trial and error than anything, but whatever you use the goal of the algorithm is to give you a unique number for any given name no matter if it ends in the same letter as another word or not.

When I use this module in my games I usually end up spending between 2 to 8 hours finding a unique working algorithm. As far as I can tell, when you start getting repeating numbers with words that end in the same letter it means the rpn module is maxing out on it's calculations and you need to decrease the amounts used in the algorithm. If you go too low with your amounts the module will continually cycle numbers in it's keygen box, and never stop.

I don't know why the module does this, but it does. I have experimented with other rpn programs and none of them display this behavior. It's like it will calculate up to a point (or amount) and then it just stops calculating. It has to be something in the code but I'm not sure where.

Any thoughts BeyondtheTech, Makslane, or anyone else.
User avatar
mrdark7734
 
Posts: 21
Joined: Thu Aug 25, 2005 12:49 am
Location: Texas (where we're crazy enough to shoot a president)
Score: 0 Give a positive score

Here is a working RPN code and how to change it

Postby Steve13 » Fri Mar 10, 2006 12:46 am

And a great big howdy from Houston, Mr. Dark. Thanks for the info. I think I have created several good codes based on your teachings.

I have this to offer.

I believe that a good code is based on the relationship of the numbers to each other, and that that relationship is based on the math operators. When I created codes, I first hit on a code that produced cycling. I studied the speed of the numbers as they flew by. With each change I made to the code, I tried to slow them down. You can see visible changes in the speed of the numbers with each new letter you enter.

From preliminary testing, I think that I can produce a good code out of this sample code by following a few rules. Here is the code.

strcpy(rpnstring,"i 0 == 500 * key + c / 46 * 10000 +");

The number 500 can be changed to any number up to 1238.
The number 10,000 can be changed to any number up to 100,000.

I know that the range of numbers must be larger, but I have only tested a small amount of number combinations, and I get a good code each time if I stay within the range I stated.

I have no opinion about the number 46. I didn't change that at all during testing.

When I began testing, the number 10000 in the script was originally 801. That produced a poor code that would not always change. So I tried 8021. That almost always produced a good code. 10000 was the first number that always produced a good code.

When I hit on 10000 as producing a good code, I was using 1238, instead of 500. So I started playing with the 1238 and produced good codes by reducing the size of 1238. The last number I tried was 500.

Each variation has worked for me so far.

Steve13
last chicken in the shop
Steve13
 
Posts: 7
Joined: Sat Dec 17, 2005 12:51 am
Score: 0 Give a positive score

RPN sample code extra info

Postby Steve13 » Fri Mar 10, 2006 1:07 am

I forgot to say that I can get my sample code to fail to produce unique codes.

steve produces a good code.
stevee produces a good code.
The next couple of e's that I add will produce a good code.
But then the code will not change by adding more e's.

You get the same results with other letters. Add about four identical letters and each new one will produce a new code. Subsequent letters do not change the code.

I don't see that as a problem though.

Steve13
I'd rather have this bottle in front of me, than a frontal lobotomy.
Steve13
 
Posts: 7
Joined: Sat Dec 17, 2005 12:51 am
Score: 0 Give a positive score

Postby mrdark7734 » Fri Mar 10, 2006 2:58 pm

And a big howdy to you as well fellow Texan. I'm glad you've got it working better. Quick question, have you tried this algorithm on handango.com to see if it actually produces the same numbers?

It's just quite odd how the module behaves, because like I said this behavior does not occure with the other rpn programs I have been experimenting with.
As soon as I get moved, I plan on attempting to track this problem down.

p.s. I'm a Steve as well.
User avatar
mrdark7734
 
Posts: 21
Joined: Thu Aug 25, 2005 12:49 am
Location: Texas (where we're crazy enough to shoot a president)
Score: 0 Give a positive score

My RPN code has not been tested

Postby Steve13 » Fri Mar 10, 2006 7:43 pm

I haven't tried it with Handango or anywhere else. I'm just getting close to the end of my first project.

I gotta say that I am really impressed with that RPN module of yours and BeyondTheTech. You guys are light years beyond me. My entire programming knowledge consists of the two Visual Basic programs I created and, now, my first GE program. I am struggling with concepts that are taught in C Programming 101.

But I am decent at logic -- depending on how close to happy hour it is. With the manipulation of just those two numbers in the RPN sample code, there are several million possible codes. I am guessing, but I believe that they will all work.

Thanks a lot to all involved with the RPN module. And keep an eye peeled for my next newbie question. It's coming soon.

Steve13
not Mr. Right but often Mr. Right Now
Steve13
 
Posts: 7
Joined: Sat Dec 17, 2005 12:51 am
Score: 0 Give a positive score


Return to General

Who is online

Users browsing this forum: No registered users and 1 guest