Re: Slime Rancher+11 v1.0.1c [Steam]
Posted: Mon Aug 14, 2017 12:43 am
it keeps crashing for me
Community Cheat Tables of Cheat Engine
https://fearlessrevolution.com/
At first i found the player Currency then I searched for what acceses it and i found something thats constanltly acessing the adress after that i searched for what adresses this instruction acesses in the memory viewer and it is constantly doing something so i right clicked it (with mono on because its an mono/unity game) and i open Dissect data/structers and i saw all then ofcodes with the names like player health/keys/currency and i wrote the script at the point where it constantly accesses the adress and i added all the adresses to the list. ( Also Called Injection Copy/or some call it code injection or code injection with adresses/ if you want to find an Tutorial)
Ok I'm looking into it thanks for letting me nowDarkedone02 wrote: ↑Tue Aug 22, 2017 7:30 amI can't seem to get that market date to work, even as I did the instructions for it.
What didn't work because for me everything works fine?Darkedone02 wrote: ↑Tue Aug 22, 2017 7:30 amI can't seem to get that market date to work, even as I did the instructions for it.
The interesting thinh is that i only have to activate the cheat and after that shoot an plort in and i can edit it...Darkedone02 wrote: ↑Wed Aug 23, 2017 6:45 amThat market data cheat? i'm hoping it manipulates the prices you earn for each plort you insert it to, for it to work, i have to insert a single plort, but when i did that and activate the cheat, it didn't activate.
I maybe found the problem it could be because the aob is so long and its not unique for you. Can you maybe search for the aob like look in the script and copy the aob and scan for it and tell me if nothing comes up or more adresses?Darkedone02 wrote: ↑Wed Aug 23, 2017 1:27 pmI don't know why It didn't work for me, and I own the game via on steam, gifted to me by a friend. So it's odd how I can't activate it when I'm using the same version.
Code: Select all
usemono()
define(EconomyDirectorGetCurrValueAddress,EconomyDirector:GetCurrValue+6d)
define(EconomyDirectorGetCurrValueBytes,F3 0F 5A C0 F2 0F 5A C0)
[ENABLE]
assert(EconomyDirectorGetCurrValueAddress,EconomyDirectorGetCurrValueBytes)
alloc(newmem,$1000,EconomyDirectorGetCurrValueAddress)
label(code)
label(return)
label(economy_base)
registersymbol(economy_base)
newmem:
mov [economy_base],rax
code:
cvtss2sd xmm0,xmm0
cvtsd2ss xmm0,xmm0
jmp return
economy_base:
dq 0
EconomyDirectorGetCurrValueAddress:
jmp newmem
nop
nop
nop
return:
[DISABLE]
EconomyDirectorGetCurrValueAddress:
db EconomyDirectorGetCurrValueBytes
// cvtss2sd xmm0,xmm0
// cvtsd2ss xmm0,xmm0
unregistersymbol(economy_base)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: 07C7232D
07C72300: 0F 84 69 00 00 00 - je EconomyDirector:GetCurrValue+af
07C72306: 49 8B 47 40 - mov rax,[r15+40]
07C7230A: 48 8B C8 - mov rcx,rax
07C7230D: 48 8B D7 - mov rdx,rdi
07C72310: 48 83 EC 20 - sub rsp,20
07C72314: 83 38 00 - cmp dword ptr [rax],00
07C72317: 49 BB 80 25 C7 07 00 00 00 00 - mov r11,System.Collections.Generic:Dictionary`2:get_Item
07C72321: 41 FF D3 - call r11
07C72324: 48 83 C4 20 - add rsp,20
07C72328: F3 0F 10 40 14 - movss xmm0,[rax+14]
// ---------- INJECTING HERE ----------
07C7232D: F3 0F 5A C0 - cvtss2sd xmm0,xmm0
07C72331: F2 0F 5A C0 - cvtsd2ss xmm0,xmm0
// ---------- DONE INJECTING ----------
07C72335: 48 83 EC 20 - sub rsp,20
07C72339: 49 BB E0 54 F0 05 00 00 00 00 - mov r11,UnityEngine:Mathf:RoundToInt
07C72343: 41 FF D3 - call r11
07C72346: 48 83 C4 20 - add rsp,20
07C7234A: 33 C9 - xor ecx,ecx
07C7234C: 48 89 4D C0 - mov [rbp-40],rcx
07C72350: C6 45 C4 01 - mov byte ptr [rbp-3C],01
07C72354: 89 45 C0 - mov [rbp-40],eax
07C72357: 48 8B 45 C0 - mov rax,[rbp-40]
07C7235B: 48 89 45 C8 - mov [rbp-38],rax
}
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>85</ID>
<Description>"Find Market Base (Shoot in the Plort you wan't to edit)"</Description>
<Options moHideChildren="1"/>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>usemono()
define(EconomyDirectorGetCurrValueAddress,EconomyDirector:GetCurrValue+6d)
define(EconomyDirectorGetCurrValueBytes,F3 0F 5A C0 F2 0F 5A C0)
getmonostruct(CurrValueEntry)
[ENABLE]
assert(EconomyDirectorGetCurrValueAddress,EconomyDirectorGetCurrValueBytes)
alloc(newmem,$1000,EconomyDirectorGetCurrValueAddress)
label(code)
label(return)
label(economy_base)
registersymbol(economy_base)
registersymbol(CurrValueEntry.baseValue)
registersymbol(CurrValueEntry.currValue)
registersymbol(CurrValueEntry.prevValue)
registersymbol(CurrValueEntry.fullSaturation)
newmem:
mov [economy_base],rax
code:
cvtss2sd xmm0,xmm0
cvtsd2ss xmm0,xmm0
jmp return
economy_base:
dq 0
EconomyDirectorGetCurrValueAddress:
jmp newmem
nop
nop
nop
return:
[DISABLE]
EconomyDirectorGetCurrValueAddress:
db EconomyDirectorGetCurrValueBytes
// cvtss2sd xmm0,xmm0
// cvtsd2ss xmm0,xmm0
unregistersymbol(economy_base)
unregistersymbol(CurrValueEntry.baseValue)
unregistersymbol(CurrValueEntry.currValue)
unregistersymbol(CurrValueEntry.prevValue)
unregistersymbol(CurrValueEntry.fullSaturation)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: 07C7232D
07C72300: 0F 84 69 00 00 00 - je EconomyDirector:GetCurrValue+af
07C72306: 49 8B 47 40 - mov rax,[r15+40]
07C7230A: 48 8B C8 - mov rcx,rax
07C7230D: 48 8B D7 - mov rdx,rdi
07C72310: 48 83 EC 20 - sub rsp,20
07C72314: 83 38 00 - cmp dword ptr [rax],00
07C72317: 49 BB 80 25 C7 07 00 00 00 00 - mov r11,System.Collections.Generic:Dictionary`2:get_Item
07C72321: 41 FF D3 - call r11
07C72324: 48 83 C4 20 - add rsp,20
07C72328: F3 0F 10 40 14 - movss xmm0,[rax+14]
// ---------- INJECTING HERE ----------
07C7232D: F3 0F 5A C0 - cvtss2sd xmm0,xmm0
07C72331: F2 0F 5A C0 - cvtsd2ss xmm0,xmm0
// ---------- DONE INJECTING ----------
07C72335: 48 83 EC 20 - sub rsp,20
07C72339: 49 BB E0 54 F0 05 00 00 00 00 - mov r11,UnityEngine:Mathf:RoundToInt
07C72343: 41 FF D3 - call r11
07C72346: 48 83 C4 20 - add rsp,20
07C7234A: 33 C9 - xor ecx,ecx
07C7234C: 48 89 4D C0 - mov [rbp-40],rcx
07C72350: C6 45 C4 01 - mov byte ptr [rbp-3C],01
07C72354: 89 45 C0 - mov [rbp-40],eax
07C72357: 48 8B 45 C0 - mov rax,[rbp-40]
07C7235B: 48 89 45 C8 - mov [rbp-38],rax
}
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>86</ID>
<Description>"Current Value"</Description>
<VariableType>Float</VariableType>
<Address>economy_base</Address>
<Offsets>
<Offset>CurrValueEntry.currValue</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>87</ID>
<Description>"Previous Value"</Description>
<VariableType>Float</VariableType>
<Address>economy_base</Address>
<Offsets>
<Offset>CurrValueEntry.prevValue</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>88</ID>
<Description>"Full Saturation"</Description>
<VariableType>Float</VariableType>
<Address>economy_base</Address>
<Offsets>
<Offset>CurrValueEntry.fullSaturation</Offset>
</Offsets>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatTable>