Features -
Pokemon Hunter Script - Run away from pokemon until it finds the one you want. Never runs away from Shiny Pokemon
Pokemon Avoider - Run away from pokemon that you set
Anti-Cheat Bypass - Bypass detection for Speed Hacks
Fast Battle Animations - Kills animation to make battle animation faster
No Dark In Caves - Allow vision in caves that require flash
Dialogue Speed Hack No Bypass Needed - Dialogue Speed Hack you must go into option then set dialogue to 0 then back to max. Hit apply.
Dialogue Speed Hack (Bypass Needed) - Dialogue Speed Hack. Once enabled you need to go to option then close it.
Movement Speed Hack (Bypass Needed) - Movement speed hack. Once enable and set wait about 30 second it will update.
No NPC LoS - You don't get seen by npc. Trainers or Quest npc.
Walk On Ice Cheat - Walk on ice
Walk On Panel - Walk on panels or anything that push you back.
Pokemon Revolution Online Cheat Table is Available For Download
6/3/2020
Updated the Pokemon Hunter cheat and No Run Delay to current version of the game.
Add the following to address table 4 Bytes -
EscapePoke1
EscapePoke2
EscapePoke3
EscapePoke4
Change any of the top value to the Pokemon ID you want to capture. For example Pidgey ID in the pokedex is 16 and Rattata ID in the pokedex is 19.
Below script will Automatically run away from any pokemon that isn't found in the EscapePoke(ID) until it discovers it. You will have to figure out a way to move the character to trigger random encounter yourself.
Below script is No Run Delay. Basically kills the battle animation to the point where you can run or interact in battles as soon as you find a encounter.
Bypass NEEDS to be activated before you enable Dialogue Hack or Speed Hack
Put ISet_SSpeed in Add Address Manually from cheat table if you want to slow it down or speed it up. It can break the game.
Put ISetMSpeed in Add Address Manually from cheat table. Once below script activate then manipulate ISetMSpeed value
4 = Walking
6 = Surfing
8 = Bike
Never get push back by floor Panels or sand or etc. Anything that force your character to be Pushed into a direction.
Pokemon Hunter Script - Run away from pokemon until it finds the one you want. Never runs away from Shiny Pokemon
Pokemon Avoider - Run away from pokemon that you set
Anti-Cheat Bypass - Bypass detection for Speed Hacks
Fast Battle Animations - Kills animation to make battle animation faster
No Dark In Caves - Allow vision in caves that require flash
Dialogue Speed Hack No Bypass Needed - Dialogue Speed Hack you must go into option then set dialogue to 0 then back to max. Hit apply.
Dialogue Speed Hack (Bypass Needed) - Dialogue Speed Hack. Once enabled you need to go to option then close it.
Movement Speed Hack (Bypass Needed) - Movement speed hack. Once enable and set wait about 30 second it will update.
No NPC LoS - You don't get seen by npc. Trainers or Quest npc.
Walk On Ice Cheat - Walk on ice
Walk On Panel - Walk on panels or anything that push you back.
Pokemon Revolution Online Cheat Table is Available For Download
6/3/2020
Updated the Pokemon Hunter cheat and No Run Delay to current version of the game.
Add the following to address table 4 Bytes -
EscapePoke1
EscapePoke2
EscapePoke3
EscapePoke4
Change any of the top value to the Pokemon ID you want to capture. For example Pidgey ID in the pokedex is 16 and Rattata ID in the pokedex is 19.
Below script will Automatically run away from any pokemon that isn't found in the EscapePoke(ID) until it discovers it. You will have to figure out a way to move the character to trigger random encounter yourself.
Pokemon Hunter Script:
[ENABLE]
aobscanmodule(ID,GameAssembly.dll,33 D2 48 8B CB E8 ?? ?? ?? ?? 89 87 0C 0A 00 00 41 83 7D 18 03) //PokeID
aobscanmodule(RUN,GameAssembly.dll,33 D2 8B C8 E8 ?? ?? ?? ?? 84 C0 0F 84 ?? ?? ?? ?? 33 D2 49 8B CE) //Run
aobscanmodule(CALLRUN,GameAssembly.dll,48 89 5C 24 08 57 48 83 EC 40 48 8B D9 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? 8B 8C 02 48 71 00 00 45 33 C0 4C 89 44 24 20 4C 89 44 24 28 4C 89 44 24 30 4C 8D 44 24 20) // call run back
aobscanmodule(JMPRUN,GameAssembly.dll,33 C9 ?? ?? ?? ?? ?? 0F 28 C8 49 8B CE ?? ?? ?? ?? ?? 44 0F 28 AC 24 60 01 00 00 48 8B B4 24 28 02 00 00 44 0F 28 A4 24 70 01 00 00 44 0F 28 9C 24 80 01 00 00 44 0F 28 94 24 90 01 00 00) //Jmp Return
aobscanmodule(EFJUMP,GameAssembly.dll,44 0F 28 AC 24 60 01 00 00 48 8B B4 24 28 02 00 00 44 0F 28 A4 24 70 01 00 00 44 0F 28 9C 24 80 01 00 00 44 0F 28 94 24 90 01 00 00 44 0F 28 84 24 B0 01 00 00 0F 28 BC 24 C0 01 00 00 0F 28 B4 24 D0 01 00 00 4C 8B A4 24 E0 01 00 00 48 8B BC 24 E8 01 00 00 48 8B 9C 24 18 02 00 00 44 0F 28 8C 24 A0 01 00 00 48 81 C4 F0 01 00 00 41 5F 41 5E 5D C3) //Found
aobscanmodule(IDJBE,GameAssembly.dll,48 8B C8 33 D2 E8 ?? ?? ?? ?? CC E8 ?? ?? ?? ?? 48 8B C8 33 D2 E8 ?? ?? ?? ?? CC E8 ?? ?? ?? ?? CC E8 ?? ?? ?? ?? 48 8B C8 33 D2 E8 ?? ?? ?? ?? CC CC CC CC CC CC CC CC CC CC CC CC CC CC CC CC) // ID JBE Return
aobscanmodule(SHINYPOKE,GameAssembly.dll,88 87 18 0A 00 00 48 8B 8F 98 0A 00 00 48 85 C9) // IsPokeShiny
aobscanmodule(BattleEnded,GameAssembly.dll,33 D2 48 8B CF FF D0 C6 83 B8 09 00 00 00 C6 83 04 0B 00 00 00 33 D2 48 8B CB) // Battle Ended reset shiny counter
registersymbol(SHINYPOKE)
registersymbol(ID)
registersymbol(PokeID)
registersymbol(EscapePoke1)
registersymbol(EscapePoke2)
registersymbol(EscapePoke3)
registersymbol(EscapePoke4)
registersymbol(YesShiny)
registersymbol(RUN)
registersymbol(CALLRUN)
registersymbol(JMPRUN)
registersymbol(EFJUMP)
registersymbol(IDJBE)
registersymbol(BattleEnded)
alloc(FindID,$1000) //ID
alloc(PokeID,$1000) //ID
alloc(IsPokeShiny,$1000) //IsPokeShiny?
alloc(BatEnded,$1000) // Did battle ended?
alloc(Escape,$1000) //RUN
alloc(EscapePoke1,$100) //RUN
alloc(EscapePoke2,$100) //RUN
alloc(EscapePoke3,$100) //RUN
alloc(EscapePoke4,$100) //RUN
alloc(YesShiny,$100) // YesShiny
label(ReturnEscape) //RUN
label(SaveID) //ID
label(ReturnID) //ID
label(ShinyPokeReturn) //ShinyReturnAddress
label(BattleEndedReturn) //Battle Ended Return
label(ThisIsShiny)//ShinyConfirm
EscapePoke1:
dd 1
EscapePoke2:
dd 1
EscapePoke3:
dd 1
EscapePoke4:
dd 1
YesShiny:
dd 0
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Escape:
test al,al
push rax
mov rax,[PokeID]
cmp [EscapePoke1],rax
pop rax
je EscapeFound
push rax
mov rax,[PokeID]
cmp [EscapePoke2],rax
pop rax
je EscapeFound
push rax
mov rax,[PokeID]
cmp [EscapePoke3],rax
pop rax
je EscapeFound
push rax
mov rax,[PokeID]
cmp [EscapePoke4],rax
pop rax
je EscapeFound
cmp [YesShiny],(float)1
je EscapeFound
mov [YesShiny],(float)0
db 33 d2
mov rcx,r14
call CALLRUN
jmp JMPRUN
jmp RUN+20
EscapeFound:
jmp EFJUMP
RUN+9:
jmp Escape
nop
nop
nop
nop
nop
nop
nop
nop
nop
ReturnEscape:
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
FindID:
SaveID:
mov [PokeID],eax
mov [rdi+00000A0C],eax
cmp dword ptr [r13+18],03
jbe SaveIDBE
jmp ID+1B
SaveIDBE:
jmp IDJBE-350
ID+A:
jmp FindID
nop
nop
nop
ReturnID:
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
IsPokeShiny:
db 88 87 18 0A 00 00
cmp [rdi+00000A18],1
je ThisIsShiny
db 48 8B 8F 98 0A 00 00 48 85 C9
jmp ShinyPokeReturn
ThisIsShiny:
mov [YesShiny],(float)1
db 48 8B 8F 98 0A 00 00 48 85 C9
jmp ShinyPokeReturn
SHINYPOKE:
jmp IsPokeShiny
db 90 90
ShinyPokeReturn:
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////
BatEnded:
mov [YesShiny],(float)0
db 33 D2 48 8B CF FF D0 C6 83 B8 09 00 00 00
jmp BattleEndedReturn
BattleEnded:
jmp BatEnded
BattleEndedReturn:
[DISABLE]
ID+A:
mov [rdi+00000A0C],eax
cmp dword ptr [r13+18],03
jbe IDJBE-350
RUN+9:
test al,al
je EFJUMP
db 33 d2
mov rcx,r14
call CALLRUN
jmp JMPRUN
SHINYPOKE:
db 88 87 18 0A 00 00 48 8B 8F 98 0A 00 00 48 85 C9
BattleEnded:
db 33 D2 48 8B CF FF D0 C6 83 B8 09 00 00 00
unregistersymbol(SHINYPOKE)
unregistersymbol(ID)
unregistersymbol(PokeID)
unregistersymbol(EscapePoke1)
unregistersymbol(EscapePoke2)
unregistersymbol(EscapePoke3)
unregistersymbol(EscapePoke4)
unregistersymbol(YesShiny)
unregistersymbol(RUN)
unregistersymbol(CALLRUN)
unregistersymbol(JMPRUN)
unregistersymbol(EFJUMP)
unregistersymbol(IDJBE)
unregistersymbol(BattleEnded)
dealloc(IsPokeShiny)
dealloc(FindID)
dealloc(Escape)
dealloc(PokeID)
dealloc(EscapePoke1)
dealloc(EscapePoke2)
dealloc(EscapePoke3)
dealloc(EscapePoke4)
dealloc(YesShiny)
dealloc(BatEnded)
Below script is No Run Delay. Basically kills the battle animation to the point where you can run or interact in battles as soon as you find a encounter.
No Run Delay:
[ENABLE]
aobscanmodule(FastAnimation,GameAssembly.dll,FF D0 48 85 C0 0F 84 ?? ?? ?? ?? 45 33 C0 B2 01 48 8B C8) // Fast Animation
aobscanmodule(FastAnimationJMP,GameAssembly.dll,48 81 C4 90 00 00 00 41 5F 41 5E 41 5D 41 5C 5F 5E 5D C3 E8 ?? ?? ?? ?? 48 8B C8 33 D2 E8 ?? ?? ?? ?? CC E8 ?? ?? ?? ??) //Fast Animation JMP Return
FastAnimation:
call rax
test rax,rax
jmp FastAnimationJMP
nop
registersymbol(FastAnimation)
registersymbol(FastAnimationJMP)
[DISABLE]
FastAnimation:
call rax
test rax,rax
je FastAnimationJMP
unregistersymbol(FastAnimation)
unregistersymbol(FastAnimationJMP)
No Darkness In Cave:
[ENABLE]
aobscanmodule(NoDark,UnityPlayer.dll,43 8B 04 83 49 FF C0 89 01 48 8D 49 04 4D 3B C2) // No Dark In Cave
alloc(NDCheat,$1000)
label(CheckDarkCode)
label(NDCheatReturn)
label(NDJumpCheat)
NDCheat:
CheckDarkCode:
mov eax,[r11+r8*4]
cmp eax,(float)0.7300000191
je NDJumpCheat
inc r8
mov [rcx],eax
lea rcx,[rcx+04]
db 4D 3B C2
jmp NDCheatReturn
NDJumpCheat:
mov eax,(float)-1.7300000191
inc r8
mov [rcx],eax
lea rcx,[rcx+04]
db 4D 3B C2
jmp NDCheatReturn
NoDark:
jmp NDCheat
nop 2
NDCheatReturn:
registersymbol(NoDark)
[DISABLE]
NoDark:
mov eax,[r11+r8*4]
inc r8
mov [rcx],eax
lea rcx,[rcx+04]
db 4D 3B C2
unregistersymbol(NoDark)
dealloc(NDCheat)
No NPC LoS Including Quest:
[ENABLE]
aobscanmodule(HandleLoS,GameAssembly.dll,48 8B C4 48 89 58 10 55 56 57 48 8D 68 D8 48 81 EC 10 01 00 00 0F 29 70 D8 0F 29 78 C8 44 0F 29 40 B8 44 0F 29 48 A8 44 0F 29 50 98 44 0F 29 58 88) // Main cNPC.HandleLoS
aobscanmodule(NoNPCLoS,GameAssembly.dll,33 D2 E8 ?? ?? ?? ?? 84 C0 ?? ?? 8B C3 89 5D 60 C7 06 5D 00 00 00) // Nopping NPC LoS
aobscanmodule(NoQuestLoS,GameAssembly.dll,41 FF 4E 28 33 D2 48 8B CF E8 7B D7 FF FF ?? ?? ?? ?? ?? 49 8D 46 10 BB FF FF FF FF 89 18 48 85 FF) // Nopping Quest NPC LoS
NoNPCLoS+2:
db 90 90 90 90 90
NoQuestLoS+9:
db 90 90 90 90 90
registersymbol(NoNPCLoS)
registersymbol(HandleLoS)
registersymbol(NoQuestLoS)
[DISABLE]
NoNPCLoS+2:
call HandleLoS
NoQuestLoS+9:
call HandleLoS
unregistersymbol(NoNPCLoS)
unregistersymbol(HandleLoS)
unregistersymbol(NoQuestLoS)
Walk On Ice:
[ENABLE]
aobscanmodule(WalkOnIce,GameAssembly.dll,45 33 C0 49 8B CD 66 48 0F 6E F8 66 48 0F 7E FA ?? ?? ?? ?? ?? 84 C0 ?? ?? 49 8B CD) // Handle if you are on ICE
WalkOnIce+17:
db 90 90
registersymbol(WalkOnIce)
[DISABLE]
WalkOnIce+17:
jne WalkOnIce+56
unregistersymbol(WalkOnIce)
Bypass NEEDS to be activated before you enable Dialogue Hack or Speed Hack
Anti Cheat Bypass:
[ENABLE]
aobscanmodule(AntiCheatBypass,GameAssembly.dll,48 8B 08 48 8B 42 40 48 39 41 40 ?? ?? ?? ?? ?? ?? 41 33 F6 F3 41 0F 2C 40 10 3B C6) // +1C JNE Change to JMP to bypass
aobscanmodule(AntiCheatJmpReturn,GameAssembly.dll,0F 57 C9 0F 10 45 08 0F 11 45 30 0F 11 4D 40 F2 0F 10 45 28 F2 0F 11 45 50 0F 1F 40 00) // Return pattern for jump
registersymbol(AntiCheatBypass)
registersymbol(AntiCheatJmpReturn)
AntiCheatBypass+1C:
jmp AntiCheatJmpReturn+28
nop
[DISABLE]
AntiCheatBypass+1C:
je AntiCheatJmpReturn+28
unregistersymbol(AntiCheatBypass)
unregistersymbol(AntiCheatJmpReturn)
Dialogue Speed Hack:
[ENABLE]
aobscanmodule(GetSaySpeed,GameAssembly.dll,F3 0F 10 81 AC 05 00 00 C3 CC CC CC CC CC CC CC 40 53 48 83 EC 50 0F 29 74 24 40 0F 28 F1 48 8B D9) // Get Say Speed
alloc(Get_SSpeed,$1000)
alloc(ISet_SSpeed,$100)
label(Set_SSpeed)
label(Get_SSpeedReturn)
ISet_SSpeed:
dd (float)840
Get_SSpeed:
Set_SSpeed:
db 40 53 48 83 EC 50 0F 29 74 24 40 0F 28 F1 48 8B D9
movss xmm6,[ISet_SSpeed]
jmp Get_SSpeedReturn
GetSaySpeed+10:
jmp Get_SSpeed
nop 3
Get_SSpeedReturn:
registersymbol(GetSaySpeed)
registersymbol(ISet_SSpeed)
[DISABLE]
GetSaySpeed+10:
db 40 53 48 83 EC 50 0F 29 74 24 40 0F 28 F1 48 8B D9
unregistersymbol(GetSaySpeed)
unregistersymbol(ISet_SSpeed)
dealloc(ISet_SSpeed)
dealloc(Get_SSpeed)
4 = Walking
6 = Surfing
8 = Bike
Speed Hack:
[ENABLE]
aobscanmodule(GetMoveSpeed,GameAssembly.dll,F3 0F 10 81 A8 05 00 00 C3 CC CC CC CC CC CC CC 40 53 48 83 EC 50 0F 29 74 24 40 0F 28 F1 48 8B D9) // Get Move Speed
alloc(ISetMSpeed,$100)
alloc(Get_MSpeed,$1000)
label(SetMoveSpeed)
label(Get_MSpeedReturn)
ISetMSpeed:
dd (float)4
Get_MSpeed:
SetMoveSpeed:
db 40 53 48 83 EC 50 0F 29 74 24 40 0F 28 F1
mov rbx,rcx
movss xmm6,[ISetMSpeed]
jmp Get_MSpeedReturn
GetMoveSpeed+10:
jmp Get_MSpeed
db 90 90 90
Get_MSpeedReturn:
registersymbol(ISetMSpeed)
registersymbol(GetMoveSpeed)
[DISABLE]
GetMoveSpeed+10:
db 40 53 48 83 EC 50 0F 29 74 24 40 0F 28 F1
mov rbx,rcx
unregistersymbol(ISetMSpeed)
unregistersymbol(GetMoveSpeed)
dealloc(ISetMSpeed)
dealloc(Get_MSpeed)
Walk on panels and other:
[ENABLE]
aobscanmodule(Walk_On_Panels,GameAssembly.dll,45 33 C0 66 48 0F 7E FA 49 8B CD ?? ?? ?? ?? ?? 8B D8 41 3B C4) // Walk on Panels
Walk_On_Panels+15:
jmp Walk_On_Panels+40
registersymbol(Walk_On_Panels)
[DISABLE]
Walk_On_Panels+15:
jle Walk_On_Panels+40
unregistersymbol(Walk_On_Panels)