How to cheat in Realm of the Mad God
I chose both the function and function call shown below to NOP(02) using the free hex editor called HxD. You could use Cheat Engine or Memory Hacking Software but I believe this program makes the process simple and quick. I tried the hex editor tool in MHS but it didn't work for me. You do not have to just rely on hex editing/replacing AoB's you find but can change any values you find using CE or MHS as long as you NOP the handleCheater function first. I found that for Google Chrome browser the first process listed is the one you would need and for FireFox browser you need to locate the plugin-container.exe process when using HxD.
com>company>assembleegameclient>game>GameSprite :
//66 18
_as3_getproperty _-82
//66 42
_as3_getproperty player_
//46 26 00
_as3_callproperty toString(param count:0)
//4f d9 0a 02
_as3_callpropvoid failure(param count:2)
//47
and
com>company>assembleegameclient>object>Player :
//4f d3 18 00
_as3_callpropvoid handleCheater(param count:0)
//26
_as3_pushtrue
//48
I was fooling around with this function I found which obviously involves damage amount and shooting. I replaced the get damage_ property with a different one in the code. I wasn't sure what to expect but I ended up with completely disabling all enemies shooting projectiles.
com>company>assembleegameclient>net>_-Gs :
private function _-GL(param1:Shoot) : void
{
......
//66 94 05
_as3_getproperty damage_
//4f d4 0d 05
_as3_callpropvoid _-q(param count:5)
//d0
_as3_getlocal <0>
//66 1d
and chose the getproperty //66940c from GameObject to replace it.
I was using MHS/CE for searching my STR in game using long/4byte and changing the value for doing absurd damage. You would have to find the correct address every time you entered/exited a dungeon using this method so why not find a way to permanently set your attack with a value already used in the game by replacing some AoB's in memory. I did just that and it didn't take very long to do. I found that the game loads all your char attributes through a function after you selected a server and if you search through the code you'll find "HitPoints", "MaxHitPoints" or through the decrypted SWF you'll find "Attack", etc. You will find that "Attack" is associated with "_-Ka" throughout the whole code. I found a beneficial variable used in the same object that we can use instead of the "_-Ka". You'll notice it is used twice from the object below but we'll just replace both.
com>company>assembleegameclient>object>Player :
override public function toString() : String
{
........
var _loc_1:* = ...+ "
//11 72 00 00
_as3_iftrue offset: 114
//60 99 08
_as3_getlex _-Ka
//a0
_as3_add
//2c ab 05
and we'll replace with :
//60 86 0c
_as3_getlex _-6E (10000)
public static const _-6E:int = 10000;
The AoB's needed for cheating Realm of the Mad God are found below which I'll try and update once the game has been updated or you could find them yourself.
//Disable anti-cheat in game - Must replace at title screen - Need to Update
Search for: 661866424626004fd90a0247
Replace with: 020202020202000202020202
Datatype: hex-values
//Disable anti-cheat in game - Must replace when in game - Need to Update
Search for: 4fd318002648
Replace with: 020218000202
Datatype: hex-values
//Disable enemy shooting/damage - Must replace at title screen - Build #106 NEW - 10/22/10
Search for: 66d2034fcd0b05d06628
Replace with: 66f9014fcd0b05d06628
Datatype: hex-values
//Change Attack Damage - Must replace at title screen - Need to Update
Search for: 123b0000609908244ba3
Replace with: 123b000060860c244ba3
Datatype: hex-values
//Change Attack Damage - Must replace at title screen - Need to Update
Search for: 11720000609908a02cab05
Replace with: 1172000060860ca02cab05
Datatype: hex-values
Labels: cheat, flash, game, hack, multiplayer, realm of the mad god, rotmg