Anti Cheat Engine Solution
#1
Tutorial written by Narzew - Anti Cheat Engine Solution

Welcome. I want to present my solution about preventing cheating games using Cheat Engine.

First (and all) you need is simple Integer packer.
You can use NRGSS encrypt_int method. The encrypt_int method from NRGSS library uses a key to pack values.

The Cheat Engine search region of the memory with specified value. To prevent this, you must pack the value.

For ex.
Code:
$gold = 3000
print "You have #{$gold} gold. "
This method print how much gold you have, defined of a variable.

Code:
$gold = $nrgss.encrypt_int(900, 5)

The $gold variable now has other (packed) value.
To retrieve normal value you can use :

Code:
$original_gold = $nrgss.decrypt_int($gold, 5)

This is for retreating original (non-packed) value.
Sample of usage of system:

Code:
$gold = $nrgss.encrypt_int(3000)
module Gold
def self.add_gold(x)
$gold = $nrgss.encrypt_int($nrgss.decrypt_int($gold,7).to_i + x,7)
end
def self.lose_gold(x)
$gold = $nrgss.encrypt_int($nrgss.decrypt_int($gold,7).to_i - x,7)
end
def self.get_gold
return $nrgss.decrypt_int($gold, 7).to_i
end
end

Look that second argument of $nrgss.encrypt_int and $nrgss.decrypt_int is the key. Other key generates other values ;) Look, that the encryption key must be identical like decryption key. Using different keys for gold, exp etc. is good idea ;)

The presented gold module has 3 functions :

- to adding gold
- to losing gold
- to getting actual gold value

It has installed prevention from cheating by Cheat Engine.
Look, that using different keys will help.

Note : The used Gold module is not Rpg Maker Gold Module!! I created it only for sample. If you want to make protect gold/exp with this (I will make script in some free time) please use algorithm to protect specified values and change adding, removing methods.
Skills: Android, Ruby, PHP, Linux
Reply }


Possibly Related Threads…
Thread Author Replies Views Last Post
   It's Good To Be Evil, Part 2: The Anti-Hero Kaos Tenshi 2 6,329 06-07-2010, 04:37 AM
Last Post: Kristovski



Users browsing this thread: 2 Guest(s)