Trainer V.2.5 + Farm's
@Update Topic https://www.mpgh.net/forum/showthread.php?t=1506265
Fix Trainer - .EXE / .CT / CODE
Download your choice.
authors and Thanks :
@darkm125
@xppazar
@3JIOU_KOTE
@Trove
https://www.mpgh.net/forum/showthread.php?t=1435642
https://www.mpgh.net/forum/showthread.php?t=1492754
https://www.mpgh.net/forum/showthread.php?t=1429657
https://www.mpgh.net/forum/showthread.php?t=912954
Cheats on this CT
- Anti-Dismount (New)
- Gun No Damage Freezy Air (New)
- No-Clip Cam (New)
- Jump Hack (New)
- Cave Finder (X-Ray)
- Infinity Dogde
- Anti-AFK
- Faster Lasermancy Geode (OmniTool)
- Teleport Hack
- Skip Distance
- Super Jump
- Fly Hack
- Increase Fly Speed
- Speed Hack
- Gravity Hack
- Energy Hack (Good for Infinity Back Ninja Dash)
- Remove Fov
- Zoom Hack
- Map Hack (Map on M) (New)

How to use:
1 - Open Game, login your account.
2 - After character logged open Trainer
Scan .Exe : https://www.virustotal.com/gui/file-...MQ==/detection
Scan .CT : https://www.virustotal.com/gui/file-...MA==/detection
Tutorial Cheats
---------------------------
Anti-Dismount
F4 Enable/Disable
Active use skills, attacks, lasermancy Mounted.
-------------------------------
Gun No damage Freezy Air
Alt Enable/Disable
you stand in the air, being able to hit enemies on the floor
-----------------------
Jump Hack
F1 Enable
Increase Number of Jumps.
---------------------
X-Ray

for Work X-Ray
Video > Open GL
F5 = Enable/Disable script, now u raw invisible blocks
---------------------------
Fly Speed
Hold "Caps Lock" for Get more Speed Gliding
----------------------
Skip Distance (Teleport Hack)
Press Button "3" to teleport 3 blocks direction of your cursor
Good for farm, enter dugeons etc.
--------------------
Super Jump
Mark check the box to active Super Jump
Increase u distance
-----------------------
Fly Hack
Press "Insert" and Glide.
"Delete" stop
-----------------------
Gravity Hack
Page Up = ON
falls and up more slowly
Page Down = Off
---------------------
Energy Hack
for active Num1
(Good for Infinity Back Ninja Dash)
desactive Num2
--------------------------
Speed Hack
get on any mount and press "Home"
now speed mount Freezed. go battle!
End = OFF
--------------------
Speed Hack.dll
Hold "E" to set speed 2.0
More fast World.
----------------------
Speed Hack
Hold "Caps Lock"
for increase u speed moving on your cursor
------------------------
Infinity Dodge
F3 Active/Disable
now "shift" no have cooldown.
----------------------------
Anti-AFK
F8 Enable
no more DC on afk
----------------
Faster Lasermancy Geode (OmniTool)
F2 = Enable/Disable
Now smash fast blocks on Geode, only use OmniTool (Lasermancy)
not work normal World.
----------------
Fov Remover
Button "+" increase distance view 1000
Good for Dragon / Ore's / Grass / Farm
Button " - " return to 200.
Obs : On use Portals, need return 200 or game crash.
----------------
Zoom Hack
F6 Enable/Disable
Increase u distance View.
----------------
Map Hack (On M)
Ctrl + M = ON
Increase distance map view 1000.
-------------------------
No-Clip Cam
F9 Enable/Disable
your camera now goes through objects and walls
Codes for Users
CT Code :
Lua Code
Fix Trainer - .EXE / .CT / CODE
Download your choice.
authors and Thanks :
@darkm125
@xppazar
@3JIOU_KOTE
@Trove
https://www.mpgh.net/forum/showthread.php?t=1435642
https://www.mpgh.net/forum/showthread.php?t=1492754
https://www.mpgh.net/forum/showthread.php?t=1429657
https://www.mpgh.net/forum/showthread.php?t=912954
Cheats on this CT
- Anti-Dismount (New)
- Gun No Damage Freezy Air (New)
- No-Clip Cam (New)
- Jump Hack (New)
- Cave Finder (X-Ray)
- Infinity Dogde
- Anti-AFK
- Faster Lasermancy Geode (OmniTool)
- Teleport Hack
- Skip Distance
- Super Jump
- Fly Hack
- Increase Fly Speed
- Speed Hack
- Gravity Hack
- Energy Hack (Good for Infinity Back Ninja Dash)
- Remove Fov
- Zoom Hack
- Map Hack (Map on M) (New)

How to use:
1 - Open Game, login your account.
2 - After character logged open Trainer
Scan .Exe : https://www.virustotal.com/gui/file-...MQ==/detection
Scan .CT : https://www.virustotal.com/gui/file-...MA==/detection
Tutorial Cheats
Tutorial Hacks
---------------------------
Anti-Dismount
F4 Enable/Disable
Active use skills, attacks, lasermancy Mounted.
-------------------------------
Gun No damage Freezy Air
Alt Enable/Disable
you stand in the air, being able to hit enemies on the floor
-----------------------
Jump Hack
F1 Enable
Increase Number of Jumps.
---------------------
X-Ray

for Work X-Ray
Video > Open GL
F5 = Enable/Disable script, now u raw invisible blocks
---------------------------
Fly Speed
Hold "Caps Lock" for Get more Speed Gliding
----------------------
Skip Distance (Teleport Hack)
Press Button "3" to teleport 3 blocks direction of your cursor
Good for farm, enter dugeons etc.
--------------------
Super Jump
Mark check the box to active Super Jump
Increase u distance
-----------------------
Fly Hack
Press "Insert" and Glide.
"Delete" stop
-----------------------
Gravity Hack
Page Up = ON
falls and up more slowly
Page Down = Off
---------------------
Energy Hack
for active Num1
(Good for Infinity Back Ninja Dash)
desactive Num2
--------------------------
Speed Hack
get on any mount and press "Home"
now speed mount Freezed. go battle!
End = OFF
--------------------
Speed Hack.dll
Hold "E" to set speed 2.0
More fast World.
----------------------
Speed Hack
Hold "Caps Lock"
for increase u speed moving on your cursor
------------------------
Infinity Dodge
F3 Active/Disable
now "shift" no have cooldown.
----------------------------
Anti-AFK
F8 Enable
no more DC on afk
----------------
Faster Lasermancy Geode (OmniTool)
F2 = Enable/Disable
Now smash fast blocks on Geode, only use OmniTool (Lasermancy)
not work normal World.
----------------
Fov Remover
Button "+" increase distance view 1000
Good for Dragon / Ore's / Grass / Farm
Button " - " return to 200.
Obs : On use Portals, need return 200 or game crash.
----------------
Zoom Hack
F6 Enable/Disable
Increase u distance View.
----------------
Map Hack (On M)
Ctrl + M = ON
Increase distance map view 1000.
-------------------------
No-Clip Cam
F9 Enable/Disable
your camera now goes through objects and walls
Codes for Users
CT Code :
Code CT
Code:
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>328</ID>
<Description>"Jump min "</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(jumper,trove.exe,FF 46 3C 68) // should be unique
alloc(newmem,$1000)
label(code)
newmem:
code:
inc [esi+3C]
push trove.exe+C2080C
jumper:
dec [esi+3C]
[DISABLE]
jumper:
db FF 46 3C 68 38 5D
unregistersymbol(jumper)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "trove.exe"+27F277
"trove.exe"+27F257: E8 D4 E9 44 00 - call trove.exe+6CDC30
"trove.exe"+27F25C: 89 45 EC - mov [ebp-14],eax
"trove.exe"+27F25F: 85 C0 - test eax,eax
"trove.exe"+27F261: 74 74 - je trove.exe+27F2D7
"trove.exe"+27F263: 8B C8 - mov ecx,eax
"trove.exe"+27F265: E8 46 7A 1F 00 - call trove.exe+476CB0
"trove.exe"+27F26A: 84 C0 - test al,al
"trove.exe"+27F26C: 74 09 - je trove.exe+27F277
"trove.exe"+27F26E: C7 46 3C 00 00 00 00 - mov [esi+3C],00000000
"trove.exe"+27F275: EB 58 - jmp trove.exe+27F2CF
// ---------- INJECTING HERE ----------
"trove.exe"+27F277: FF 46 3C - inc [esi+3C]
"trove.exe"+27F27A: 68 38 5D D9 00 - push trove.exe+C35D38
// ---------- DONE INJECTING ----------
"trove.exe"+27F27F: C7 45 F0 00 00 00 00 - mov [ebp-10],00000000
"trove.exe"+27F286: C7 45 F4 00 00 00 00 - mov [ebp-0C],00000000
"trove.exe"+27F28D: C7 45 F8 00 00 00 00 - mov [ebp-08],00000000
"trove.exe"+27F294: E8 B7 E2 2A 00 - call trove.exe+52D550
"trove.exe"+27F299: 83 C4 04 - add esp,04
"trove.exe"+27F29C: 8D 4D F0 - lea ecx,[ebp-10]
"trove.exe"+27F29F: 50 - push eax
"trove.exe"+27F2A0: 68 38 5D D9 00 - push trove.exe+C35D38
"trove.exe"+27F2A5: E8 C6 47 EC FF - call trove.exe+143A70
"trove.exe"+27F2AA: 6A 00 - push 00
}
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Activate</Action>
<Keys>
<Key>112</Key>
</Keys>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>165</ID>
<Description>"Lasermancy Geode (Omni Tool)"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(Beam,trove.exe,DF F1 DD D8 72 35 8D) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
fcomip st(0),st(1)
fstp st(0)
jb trove.exe+9976B1
jmp return
Beam:
fcomip st(0),st(0)
return:
registersymbol(Beam)
[DISABLE]
Beam:
db DF F1 DD D8 72 35
unregistersymbol(Beam)
dealloc(newmem)
{
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Toggle Activation</Action>
<Keys>
<Key>113</Key>
</Keys>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>153</ID>
<Description>"Infinity Dogde (Hotkey)"</Description>
<LastState/>
<Color>8000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(DODGE,trove.exe,DF F1 DD D8 73 12 56) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
fcomip st(0),st(1)
fstp st(0)
jae trove.exe+56E4C9
jmp return
DODGE:
fcomip st(0),st(0)
return:
registersymbol(DODGE)
[DISABLE]
DODGE:
db DF F1 DD D8 73 12
unregistersymbol(DODGE)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "trove.exe"+56E4B1
"trove.exe"+56E494: DD 5A 18 - fstp qword ptr [edx+18]
"trove.exe"+56E497: 52 - push edx
"trove.exe"+56E498: 8B 01 - mov eax,[ecx]
"trove.exe"+56E49A: FF 50 04 - call dword ptr [eax+04]
"trove.exe"+56E49D: D9 EE - fldz
"trove.exe"+56E49F: DD 83 E0 00 00 00 - fld qword ptr [ebx+000000E0]
"trove.exe"+56E4A5: DF F1 - fcomip st(0),st(1)
"trove.exe"+56E4A7: 76 1E - jna trove.exe+56E4C7
"trove.exe"+56E4A9: DD 83 E0 00 00 00 - fld qword ptr [ebx+000000E0]
"trove.exe"+56E4AF: D9 C9 - fxch st(1)
// ---------- INJECTING HERE ----------
"trove.exe"+56E4B1: DF F1 - fcomip st(0),st(1)
"trove.exe"+56E4B3: DD D8 - fstp st(0)
"trove.exe"+56E4B5: 73 12 - jae trove.exe+56E4C9
// ---------- DONE INJECTING ----------
"trove.exe"+56E4B7: 56 - push esi
"trove.exe"+56E4B8: E8 C3 58 F7 FF - call trove.exe+4E3D80
"trove.exe"+56E4BD: 83 C4 04 - add esp,04
"trove.exe"+56E4C0: 8B F0 - mov esi,eax
"trove.exe"+56E4C2: E9 F3 00 00 00 - jmp trove.exe+56E5BA
"trove.exe"+56E4C7: DD D8 - fstp st(0)
"trove.exe"+56E4C9: 8B CF - mov ecx,edi
"trove.exe"+56E4CB: E8 F0 24 0F 00 - call trove.exe+6609C0
"trove.exe"+56E4D0: 84 C0 - test al,al
"trove.exe"+56E4D2: 0F 84 8E 00 00 00 - je trove.exe+56E566
}
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Toggle Activation</Action>
<Keys>
<Key>114</Key>
</Keys>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>338</ID>
<Description>"Anti Dismount"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(nodismount,trove.exe,74 0B 8B 07 8B CF 6A 00 6A) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
je trove.AK::StreamMgr::GetFileLocationResolver+655B
jmp return
nodismount:
jmp trove.AK::StreamMgr::GetFileLocationResolver+655B
return:
registersymbol(nodismount)
[DISABLE]
nodismount:
db 74 0B 8B 07 8B CF
unregistersymbol(nodismount)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "trove.exe"+32362E
"trove.exe"+323613: 8B CF - mov ecx,edi
"trove.exe"+323615: 8B 52 64 - mov edx,[edx+64]
"trove.exe"+323618: FF D2 - call edx
"trove.exe"+32361A: 84 C0 - test al,al
"trove.exe"+32361C: 74 1D - je trove.exe+32363B
"trove.exe"+32361E: 8B 4D FC - mov ecx,[ebp-04]
"trove.exe"+323621: FF 75 0C - push [ebp+0C]
"trove.exe"+323624: 83 C1 C0 - add ecx,-40
"trove.exe"+323627: E8 94 67 D6 FF - call trove.exe+89DC0
"trove.exe"+32362C: 84 C0 - test al,al
// ---------- INJECTING HERE ----------
"trove.exe"+32362E: 74 0B - je trove.exe+32363B
"trove.exe"+323630: 8B 07 - mov eax,[edi]
"trove.exe"+323632: 8B CF - mov ecx,edi
// ---------- DONE INJECTING ----------
"trove.exe"+323634: 6A 00 - push 00
"trove.exe"+323636: 6A 00 - push 00
"trove.exe"+323638: FF 50 60 - call dword ptr [eax+60]
"trove.exe"+32363B: 5F - pop edi
"trove.exe"+32363C: 5E - pop esi
"trove.exe"+32363D: 8B E5 - mov esp,ebp
"trove.exe"+32363F: 5D - pop ebp
"trove.exe"+323640: C2 08 00 - ret 0008
"trove.exe"+323643: CC - int 3
"trove.exe"+323644: CC - int 3
}
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Toggle Activation</Action>
<Keys>
<Key>115</Key>
</Keys>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>7</ID>
<Description>"Cave Finder (HotKey) Open GL"</Description>
<LastState/>
<Color>02234F</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(INJECT,trove.exe, B8 03 02 00 00 c3)
label(return)
INJECT:
db B8 07 02 00 00
return:
registersymbol(INJECT)
[DISABLE]
INJECT:
db B8 03 02 00 00
unregistersymbol(INJECT)
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Toggle Activation</Action>
<Keys>
<Key>116</Key>
</Keys>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>166</ID>
<Description>"Anti-AFK"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(AntiAFK,trove.exe,55 8B EC 83 E4 F8 D9 EE 83 EC 58)
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
ret
push ebp
mov ebp,esp
and esp,-08
jmp return
AntiAFK:
jmp newmem
nop
return:
registersymbol(AntiAFK)
[DISABLE]
AntiAFK:
db 55 8B EC 83 E4 F8
unregistersymbol(AntiAFK)
dealloc(newmem)
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Activate</Action>
<Keys>
<Key>119</Key>
</Keys>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>1</ID>
<Description>"Gun2"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(Gun2,trove.exe,F3 0F 10 81 D8 00 00 00 0F) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
movss xmm0,[ecx+000000D8]
jmp return
Gun2:
movss xmm0,[ecx+000000AC]
return:
registersymbol(Gun2)
[DISABLE]
Gun2:
db F3 0F 10 81 D8 00 00 00
unregistersymbol(Gun2)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "trove.exe"+262DA4
"trove.exe"+262D99: C3 - ret
"trove.exe"+262D9A: CC - int 3
"trove.exe"+262D9B: CC - int 3
"trove.exe"+262D9C: CC - int 3
"trove.exe"+262D9D: CC - int 3
"trove.exe"+262D9E: CC - int 3
"trove.exe"+262D9F: CC - int 3
"trove.exe"+262DA0: 55 - push ebp
"trove.exe"+262DA1: 8B EC - mov ebp,esp
"trove.exe"+262DA3: 51 - push ecx
// ---------- INJECTING HERE ----------
"trove.exe"+262DA4: F3 0F 10 81 D8 00 00 00 - movss xmm0,[ecx+000000D8]
// ---------- DONE INJECTING ----------
"trove.exe"+262DAC: 0F 2F 05 5C 6F F6 01 - comiss xmm0,[trove.exe+BE6F5C]
"trove.exe"+262DB3: 73 08 - jae trove.exe+262DBD
"trove.exe"+262DB5: F3 0F 10 05 AC F5 10 02 - movss xmm0,[trove.exe+D8F5AC]
"trove.exe"+262DBD: F3 0F 11 45 FC - movss [ebp-04],xmm0
"trove.exe"+262DC2: D9 45 FC - fld dword ptr [ebp-04]
"trove.exe"+262DC5: 8B E5 - mov esp,ebp
"trove.exe"+262DC7: 5D - pop ebp
"trove.exe"+262DC8: C3 - ret
"trove.exe"+262DC9: 83 E9 2C - sub ecx,2C
"trove.exe"+262DCC: E9 AF 0C 36 00 - jmp trove.exe+5C3A80
}
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Toggle Activation</Action>
<Keys>
<Key>18</Key>
</Keys>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>57</ID>
<Description>"Gun Hack No damage"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(Gun,trove.exe,F3 0F 10 89 D4 00 00 00 0F 57) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
movss xmm1,[ecx+000000D4]
jmp return
Gun:
movss xmm1,[ecx+000000AC]
return:
registersymbol(Gun)
[DISABLE]
Gun:
db F3 0F 10 89 D4 00 00 00
unregistersymbol(Gun)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "trove.exe"+65921F
"trove.exe"+65920C: CC - int 3
"trove.exe"+65920D: CC - int 3
"trove.exe"+65920E: CC - int 3
"trove.exe"+65920F: CC - int 3
"trove.exe"+659210: 55 - push ebp
"trove.exe"+659211: 8B EC - mov ebp,esp
"trove.exe"+659213: 51 - push ecx
"trove.exe"+659214: 8B 81 68 01 00 00 - mov eax,[ecx+00000168]
"trove.exe"+65921A: 83 E8 02 - sub eax,02
"trove.exe"+65921D: 74 30 - je trove.exe+65924F
// ---------- INJECTING HERE ----------
"trove.exe"+65921F: F3 0F 10 89 D4 00 00 00 - movss xmm1,[ecx+000000D4]
// ---------- DONE INJECTING ----------
"trove.exe"+659227: 0F 57 C0 - xorps xmm0,xmm0
"trove.exe"+65922A: 0F 2F C1 - comiss xmm0,xmm1
"trove.exe"+65922D: 72 0C - jb trove.exe+65923B
"trove.exe"+65922F: F3 0F 11 4D FC - movss [ebp-04],xmm1
"trove.exe"+659234: D9 45 FC - fld dword ptr [ebp-04]
"trove.exe"+659237: 8B E5 - mov esp,ebp
"trove.exe"+659239: 5D - pop ebp
"trove.exe"+65923A: C3 - ret
"trove.exe"+65923B: F3 0F 10 05 A4 F5 E1 00 - movss xmm0,[trove.exe+D8F5A4]
"trove.exe"+659243: F3 0F 11 45 FC - movss [ebp-04],xmm0
}
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Toggle Activation</Action>
<Keys>
<Key>18</Key>
</Keys>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>331</ID>
<Description>"Zoom hack"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : Trove.exe
Version:
Date : 2020-07-08
Author : George
This script does blah blah blah
}
[ENABLE]
aobscanmodule(INJECT,trove.exe,F3 0F 11 5F 2C) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
movss [edi+2C],xmm3
jmp return
INJECT:
movss [edi+2C],xmm2
return:
registersymbol(INJECT)
[DISABLE]
INJECT:
db F3 0F 11 5F 2C
unregistersymbol(INJECT)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "trove.exe"+A11833
"trove.exe"+A1180A: 0F 57 DB - xorps xmm3,xmm3
"trove.exe"+A1180D: F3 0F 59 57 38 - mulss xmm2,[edi+38]
"trove.exe"+A11812: F3 0F 10 C8 - movss xmm1,xmm0
"trove.exe"+A11816: F3 0F 10 47 34 - movss xmm0,[edi+34]
"trove.exe"+A1181B: F3 0F 58 57 2C - addss xmm2,dword ptr [edi+2C]
"trove.exe"+A11820: F3 0F 10 DA - movss xmm3,xmm2
"trove.exe"+A11824: F3 0F 5F D9 - maxss xmm3,xmm1
"trove.exe"+A11828: 0F 57 C9 - xorps xmm1,xmm1
"trove.exe"+A1182B: F3 0F 10 C8 - movss xmm1,xmm0
"trove.exe"+A1182F: F3 0F 5D D9 - minss xmm3,xmm1
// ---------- INJECTING HERE ----------
"trove.exe"+A11833: F3 0F 11 5F 2C - movss [edi+2C],xmm3
// ---------- DONE INJECTING ----------
"trove.exe"+A11838: 75 1D - jne trove.exe+A11857
"trove.exe"+A1183A: 8D 4F E0 - lea ecx,[edi-20]
"trove.exe"+A1183D: E8 BE 19 00 00 - call trove.exe+A13200
"trove.exe"+A11842: D8 05 F8 85 DC 01 - fadd dword ptr [trove.exe+C185F8]
"trove.exe"+A11848: 51 - push ecx
"trove.exe"+A11849: 8B 8F 14 01 00 00 - mov ecx,[edi+00000114]
"trove.exe"+A1184F: D9 1C 24 - fstp dword ptr [esp]
"trove.exe"+A11852: E8 A9 D9 A4 FF - call trove.exe+45F200
"trove.exe"+A11857: 5F - pop edi
"trove.exe"+A11858: 5E - pop esi
}
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Toggle Activation</Action>
<Keys>
<Key>117</Key>
</Keys>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>229</ID>
<Description>"No Clip Cam"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : trove.exe
Version:
Date : 2020-07-13
Author : George
This script does blah blah blah
}
[ENABLE]
aobscanmodule(INJECT,trove.exe,0F 29 01 C7 41 34 00 00 00 00 0F) // should be unique
alloc(newmem,$1000)
label(code)
label(return)
newmem:
code:
movaps [ecx],xmm0
mov [ecx+34],00000000
jmp return
INJECT:
nop
nop
nop
return:
registersymbol(INJECT)
[DISABLE]
INJECT:
db 0F 29 01 C7 41 34 00 00 00 00
unregistersymbol(INJECT)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "trove.exe"+A1388A
"trove.exe"+A13868: 0F 58 CA - addps xmm1,xmm2
"trove.exe"+A1386B: 0F 51 C9 - sqrtps xmm1,xmm1
"trove.exe"+A1386E: F3 0F 5E CB - divss xmm1,xmm3
"trove.exe"+A13872: 0F 2F C1 - comiss xmm0,xmm1
"trove.exe"+A13875: F3 0F 11 4C 24 04 - movss [esp+04],xmm1
"trove.exe"+A1387B: 77 05 - ja trove.exe+A13882
"trove.exe"+A1387D: B8 70 EA AA 01 - mov eax,trove.exe+D0EA70
"trove.exe"+A13882: D9 00 - fld dword ptr [eax]
"trove.exe"+A13884: D9 59 30 - fstp dword ptr [ecx+30]
"trove.exe"+A13887: 0F 28 02 - movaps xmm0,[edx]
// ---------- INJECTING HERE ----------
"trove.exe"+A1388A: 0F 29 01 - movaps [ecx],xmm0
"trove.exe"+A1388D: C7 41 34 00 00 00 00 - mov [ecx+34],00000000
// ---------- DONE INJECTING ----------
"trove.exe"+A13894: 0F 29 69 20 - movaps [ecx+20],xmm5
"trove.exe"+A13898: 0F 28 19 - movaps xmm3,[ecx]
"trove.exe"+A1389B: 0F 28 D3 - movaps xmm2,xmm3
"trove.exe"+A1389E: 0F 5C 51 10 - subps xmm2,[ecx+10]
"trove.exe"+A138A2: 0F 59 D2 - mulps xmm2,xmm2
"trove.exe"+A138A5: 0F 28 CA - movaps xmm1,xmm2
"trove.exe"+A138A8: 0F 28 C2 - movaps xmm0,xmm2
"trove.exe"+A138AB: 0F C6 CA AA - shufps xmm1,xmm2-56
"trove.exe"+A138AF: 0F C6 C2 55 - shufps xmm0,xmm255
"trove.exe"+A138B3: 0F 58 C8 - addps xmm1,xmm0
}
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Toggle Activation</Action>
<Keys>
<Key>120</Key>
</Keys>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>0</ID>
<Description>"Trove Teleport Up/Down (HotKey)"</Description>
<Color>00FF00</Color>
<VariableType>Float</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>64</Offset>
<Offset>4</Offset>
<Offset>C4</Offset>
<Offset>28</Offset>
<Offset>0</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>5</ID>
<Description>"Trove Teleport Z"</Description>
<Color>00FF00</Color>
<VariableType>Float</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>68</Offset>
<Offset>4</Offset>
<Offset>C4</Offset>
<Offset>11C</Offset>
<Offset>4</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>6</ID>
<Description>"Trove Teleport X"</Description>
<Color>00FF00</Color>
<VariableType>Float</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>60</Offset>
<Offset>4</Offset>
<Offset>C4</Offset>
<Offset>11C</Offset>
<Offset>10</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>4</ID>
<Description>"Fly Trove (Hotkeys)"</Description>
<Color>0080FF</Color>
<VariableType>Float</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>94</Offset>
<Offset>4</Offset>
<Offset>C4</Offset>
<Offset>28</Offset>
<Offset>8</Offset>
</Offsets>
<Hotkeys>
<Hotkey>
<Action>Activate</Action>
<Keys>
<Key>45</Key>
</Keys>
<ID>1</ID>
</Hotkey>
<Hotkey>
<Action>Deactivate</Action>
<Keys>
<Key>46</Key>
</Keys>
<ID>2</ID>
</Hotkey>
<Hotkey>
<Action>Set Value</Action>
<Keys>
<Key>45</Key>
</Keys>
<Value>10</Value>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>18</ID>
<Description>"Fly Speed X (Hotkeys)"</Description>
<Color>0080FF</Color>
<VariableType>Float</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>98</Offset>
<Offset>4</Offset>
<Offset>C4</Offset>
<Offset>28</Offset>
<Offset>8</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>206</ID>
<Description>"Fly Speed Z (Hotkeys)"</Description>
<Color>0080FF</Color>
<VariableType>Float</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>90</Offset>
<Offset>4</Offset>
<Offset>C4</Offset>
<Offset>28</Offset>
<Offset>8</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>24</ID>
<Description>"Speed Hack"</Description>
<Color>FF0000</Color>
<VariableType>4 Bytes</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>1BC</Offset>
<Offset>178</Offset>
<Offset>80</Offset>
<Offset>28</Offset>
<Offset>0</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>25</ID>
<Description>"Speed Hack"</Description>
<Color>FF0000</Color>
<VariableType>4 Bytes</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>1BC</Offset>
<Offset>178</Offset>
<Offset>A0</Offset>
<Offset>28</Offset>
<Offset>C</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>59</ID>
<Description>"Full Speed (Hotkeys)"</Description>
<ShowAsHex>1</ShowAsHex>
<Color>FF0000</Color>
<VariableType>Array of byte</VariableType>
<ByteLength>4</ByteLength>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>1BC</Offset>
<Offset>2D4</Offset>
<Offset>C4</Offset>
<Offset>11C</Offset>
<Offset>4</Offset>
</Offsets>
<Hotkeys>
<Hotkey>
<Action>Deactivate</Action>
<Keys>
<Key>35</Key>
</Keys>
<ID>2</ID>
</Hotkey>
<Hotkey>
<Action>Toggle Activation</Action>
<Keys>
<Key>36</Key>
</Keys>
<ID>3</ID>
</Hotkey>
<Hotkey>
<Action>Set Value</Action>
<Keys>
<Key>36</Key>
</Keys>
<Value>11 10 63 84</Value>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>33</ID>
<Description>"Atk speed"</Description>
<Color>FF0000</Color>
<VariableType>4 Bytes</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>1D8</Offset>
<Offset>2D4</Offset>
<Offset>C4</Offset>
<Offset>28</Offset>
<Offset>0</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>35</ID>
<Description>"Atk speed"</Description>
<Color>FF0000</Color>
<VariableType>4 Bytes</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>1D8</Offset>
<Offset>2D4</Offset>
<Offset>C4</Offset>
<Offset>28</Offset>
<Offset>18</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>102</ID>
<Description>"Gravity Hack (Hotkeys)"</Description>
<Color>FFFF00</Color>
<VariableType>4 Bytes</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>B8</Offset>
<Offset>4</Offset>
<Offset>C4</Offset>
<Offset>11C</Offset>
<Offset>10</Offset>
</Offsets>
<Hotkeys>
<Hotkey>
<Action>Set Value</Action>
<Keys>
<Key>33</Key>
</Keys>
<Value>3233207040</Value>
<ID>0</ID>
</Hotkey>
<Hotkey>
<Action>Activate</Action>
<Keys>
<Key>33</Key>
</Keys>
<ID>1</ID>
</Hotkey>
<Hotkey>
<Action>Set Value</Action>
<Keys>
<Key>34</Key>
</Keys>
<Value>3253207040</Value>
<ID>2</ID>
</Hotkey>
<Hotkey>
<Action>Deactivate</Action>
<Keys>
<Key>34</Key>
</Keys>
<ID>3</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>136</ID>
<Description>"Energy (Good for Infinity Back Ninja Dash)"</Description>
<Color>008080</Color>
<VariableType>4 Bytes</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>58</Offset>
<Offset>4C</Offset>
<Offset>2DC</Offset>
<Offset>AC</Offset>
<Offset>80</Offset>
<Offset>28</Offset>
<Offset>C</Offset>
</Offsets>
<Hotkeys>
<Hotkey>
<Action>Activate</Action>
<Keys>
<Key>97</Key>
</Keys>
<ID>0</ID>
</Hotkey>
<Hotkey>
<Action>Deactivate</Action>
<Keys>
<Key>98</Key>
</Keys>
<ID>1</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>135</ID>
<Description>"Energia (Infinity Back Ninja Dash)"</Description>
<Color>008080</Color>
<VariableType>4 Bytes</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>58</Offset>
<Offset>34</Offset>
<Offset>A0</Offset>
<Offset>2DC</Offset>
<Offset>C4</Offset>
<Offset>28</Offset>
<Offset>C</Offset>
</Offsets>
<Hotkeys>
<Hotkey>
<Action>Activate</Action>
<Keys>
<Key>97</Key>
</Keys>
<ID>0</ID>
</Hotkey>
<Hotkey>
<Action>Deactivate</Action>
<Keys>
<Key>98</Key>
</Keys>
<ID>1</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>152</ID>
<Description>"Cooldown Test"</Description>
<VariableType>4 Bytes</VariableType>
<Address>"iggy_w32.dll"+000B586C</Address>
<Offsets>
<Offset>A4</Offset>
<Offset>0</Offset>
<Offset>218</Offset>
<Offset>10</Offset>
<Offset>8</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>173</ID>
<Description>"LaserMancy Omnitool Geode"</Description>
<VariableType>4 Bytes</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>8C</Offset>
<Offset>170</Offset>
<Offset>A0</Offset>
<Offset>28</Offset>
<Offset>8</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>181</ID>
<Description>"LaserMancy Omnitool Geode"</Description>
<ShowAsHex>1</ShowAsHex>
<VariableType>Array of byte</VariableType>
<ByteLength>4</ByteLength>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>8C</Offset>
<Offset>170</Offset>
<Offset>54</Offset>
<Offset>28</Offset>
<Offset>18</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>156</ID>
<Description>"Lasermancy (Normal)"</Description>
<VariableType>4 Bytes</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>1D4</Offset>
<Offset>178</Offset>
<Offset>A0</Offset>
<Offset>28</Offset>
<Offset>18</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>157</ID>
<Description>"laser 7k = 334173192"</Description>
<VariableType>4 Bytes</VariableType>
<Address>"trove.exe"+00F3334C</Address>
<Offsets>
<Offset>1D4</Offset>
<Offset>178</Offset>
<Offset>A0</Offset>
<Offset>28</Offset>
<Offset>0</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>182</ID>
<Description>"Fov"</Description>
<VariableType>Float</VariableType>
<Address>"trove.exe"+00F33310</Address>
<Offsets>
<Offset>28</Offset>
</Offsets>
<Hotkeys>
<Hotkey>
<Action>Increase Value</Action>
<Keys>
<Key>107</Key>
</Keys>
<Value>1000</Value>
<ID>0</ID>
</Hotkey>
<Hotkey>
<Action>Set Value</Action>
<Keys>
<Key>109</Key>
</Keys>
<Value>210</Value>
<ID>1</ID>
</Hotkey>
<Hotkey>
<Action>Set Value</Action>
<Keys>
<Key>194</Key>
</Keys>
<Value>63</Value>
<ID>2</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>82</ID>
<Description>"Distance Grass"</Description>
<VariableType>Float</VariableType>
<Address>"trove.exe"+00F33310</Address>
<Offsets>
<Offset>4</Offset>
</Offsets>
<Hotkeys>
<Hotkey>
<Action>Set Value</Action>
<Keys>
<Key>107</Key>
</Keys>
<Value>10000</Value>
<ID>0</ID>
</Hotkey>
<Hotkey>
<Action>Set Value</Action>
<Keys>
<Key>109</Key>
</Keys>
<Value>5000</Value>
<ID>1</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>3</ID>
<Description>"Map Zoom Hack (Map On M)"</Description>
<VariableType>Float</VariableType>
<Address>"trove.exe"+00F36E84</Address>
<Offsets>
<Offset>BC</Offset>
<Offset>1C</Offset>
<Offset>AC</Offset>
<Offset>30</Offset>
<Offset>70</Offset>
</Offsets>
<Hotkeys>
<Hotkey>
<Action>Set Value</Action>
<Keys>
<Key>17</Key>
<Key>77</Key>
</Keys>
<Value>1975</Value>
<ID>0</ID>
</Hotkey>
</Hotkeys>
</CheatEntry>
<CheatEntry>
<ID>339</ID>
<Description>"No description"</Description>
<ShowAsHex>1</ShowAsHex>
<VariableType>Array of byte</VariableType>
<ByteLength>4</ByteLength>
<Address>trove.exe+2C8867</Address>
</CheatEntry>
</CheatEntries>
</CheatTable>
Lua Code
Lua Code
Code:
getAutoAttachList().add("trove.exe") --attach to trove
function skip() --performs the skip
local xcoord=readFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+60") --Loading in the current xyz coords
local ycoord=readFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+64")
local zcoord=readFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+68")
local xper=readFloat("[[[[[trove.exe+00F3334C]+4]+24]+84]+0]+100")
local yper=readFloat("[[[[[trove.exe+00F3334C]+4]+24]+84]+0]+104")
local zper=readFloat("[[[[[trove.exe+00F3334C]+4]+24]+84]+0]+108")
local xadd=xper*3 --calculating distance to be traveled in each direction/currently this travels 3 blocks whichever direction you point, the 3 could be replaced with a differnt number or a variable
local yadd=yper*3
local zadd=zper*3
local xdest=xcoord+xadd --calculating the new xyz coords
local ydest=ycoord+yadd
local zdest=zcoord+zadd
writeFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+60",xdest) --Writes speed values
writeFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+64",ydest)
writeFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+68",zdest)
end
lastSpeed=1;
function checkKeys(timer)
if (isKeyPressed(VK_E)) then if lastspeed ~= 2 then speedhack_setSpeed(2) lastSpeed=2 end
else if lastspeed ~= 1 then speedhack_setSpeed(1) lastSpeed=1 end
end
end
t=createTimer(nil)
timer_setInterval(t, 100)
timer_onTimer(t, checkKeys)
timer_setEnabled(t, true)
function sprint() --OP speedhack
if main.speedenable.checked == true then
local xper=readFloat("[[[[[trove.exe+00F3334C]+4]+24]+84]+0]+100")
local yper=readFloat("[[[[[trove.exe+00F3334C]+4]+24]+84]+0]+104")
local zper=readFloat("[[[[[trove.exe+00F3334C]+4]+24]+84]+0]+108")
local xaccel=xper * main.speedf.text
local yaccel=yper * main.speedf.text
local zaccel=zper * main.speedf.text
writeFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+90",xaccel)
writeFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+94",yaccel)
writeFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+98",zaccel)
end
end
function togglespeed() --speedhack toggle for hotkey
if main.speedenable.checked==true then
main.speedenable.checked=false
else
main.speedenable.checked=true
end
end
function jump() --boosts jumps for superjump
if main.superjump.checked==true then
writeFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+94",15)
end
end
function float() --superjump without the jump
writeFloat("[[[[[trove.exe+00F3334C]+0]+28]+C4]+4]+94",15)
end
skipkey = createHotkey("skip",VK_3) --skip hotkey
jumpkey = createHotkey("jump",VK_SPACE) --superjump hotkey
speedokey = createHotkey("togglespeed",VK_CAPITAL) --speedhack on/off hotkey
speedkey = createHotkey("sprint",VK_CAPITAL) --sprint hotkey
function close() --on close for form
closeCE()
return caFree
end
main=createForm(true)
main.borderstyle=bsToolWindow
main.height=150
main.width=145
main.left=342
main.top=115
main.caption="Farm's Trainer"
main.OnClose = close
main.speedenable=createLabel(main)
main.speedenable.caption=nil
main.speedenable.checked=false
main.speedenable.left=108
main.speedenable.top=40
main.jumptext=createLabel(main)
main.jumptext.caption="Superjump"
main.jumptext.left=28
main.jumptext.top=5
main.superjump=createCheckBox(main)
main.superjump.caption=nil
main.superjump.checked=false
main.superjump.left=95
main.superjump.top=5
main.speedf=createEdit(main)
main.speedf.text="25"
main.speedf.left=95
main.speedf.top=48
main.speedf.width=28
main.speedtexta=createLabel(main)
main.speedtexta.caption="Speedhack Hold Caps Lock"
main.speedtexta.left=1
main.speedtexta.top=30
main.speedtextb=createLabel(main)
main.speedtextb.caption="Speed Set :"
main.speedtextb.left=34
main.speedtextb.top=50
main.skiptext=createLabel(main)
main.skiptext.caption="Skip Distance"
main.skiptext.left=22
main.skiptext.top=75
main.skipdist=createEdit(main)
main.skipdist.text="3"
main.skipdist.left=100
main.skipdist.top=75
main.skipdist.width=24
main.checkKeystexta=createLabel(main)
main.checkKeystexta.caption="Speedhack.dll"
main.checkKeystexta.left=15
main.checkKeystexta.top=105
main.checkKeys=createEdit(main)
main.checkKeys.text="2.0"
main.checkKeys.left=90
main.checkKeys.top=103
main.checkKeys.width=28
main.capslocktexta=createLabel(main)
main.capslocktexta.caption="Hold E"
main.capslocktexta.left=45
main.capslocktexta.top=122
main.OnClose = close



