+Inf Health
+Inf Food
+Inf Skill points
+Ins Building
+Ins Research
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
![Very Happy :D](./images/smilies/icon_e_biggrin.gif)
Code: Select all
private void Update()
{
if (!Application.isEditor)
{
return;
}
if (Input.GetButtonDown("debugMenu"))
{
this.debugMenuOpen = !this.debugMenuOpen;
this.debugPopup.SetActive(this.debugMenuOpen);
if (this.debugMenuOpen)
{
this.UpdateMenu();
}
}
if (Input.GetButtonDown("Fire1") && IngameDebugger.roomInfoMode)
{
Room roomOfPoint = GameObject.FindWithTag("WorldScripts").GetComponent<ConstructionManager>().GetRoomOfPoint(BuildRaycaster.GetBuildPosition(false, 2.3f, false, false, default(Vector3)));
if (roomOfPoint != null)
{
this.roomInfoPanel.SetRoom(roomOfPoint);
}
}
}
Code: Select all
private void Update()
{
if (Input.GetKey(KeyCode.KeypadPlus)) //Numeric keypad '+'
{
this.cheatMenu.SetActive(true);
}
else if (Input.GetKey(KeyCode.KeypadMinus)) //Numeric keypad '-'
{
this.cheatMenu.SetActive(false);
}
if (!Application.isEditor)
{
return;
}
if (Input.GetButtonDown("debugMenu"))
{
this.debugMenuOpen = !this.debugMenuOpen;
this.debugPopup.SetActive(this.debugMenuOpen);
if (this.debugMenuOpen)
{
this.UpdateMenu();
}
}
if (Input.GetButtonDown("Fire1") && IngameDebugger.roomInfoMode)
{
Room roomOfPoint = GameObject.FindWithTag("WorldScripts").GetComponent<ConstructionManager>().GetRoomOfPoint(BuildRaycaster.GetBuildPosition(false, 2.3f, false, false, default(Vector3)));
if (roomOfPoint != null)
{
this.roomInfoPanel.SetRoom(roomOfPoint);
}
}
}
Code: Select all
[ENABLE]
//remainingWorkSeconds
ResourceModule:Interact+ae+4:
db 47
//F3 41 0F 11 47 5C
//movss [r15+5C],xmm0
/*********************************************/
//remainingRounds
alloc(newmem,2048,ResourceModule:Interact+757)
label(returnhere)
label(originalcode)
newmem:
originalcode:
mov [r15+50],#1
movsxd rax,dword ptr [r15+50]
dec eax
jmp returnhere
ResourceModule:Interact+757:
jmp newmem
nop
returnhere:
[DISABLE]
//remainingWorkSeconds
ResourceModule:Interact+ae+4:
db 6F
//F3 41 0F 11 6F 5C
//movss [r15+5C],xmm5
/***********************************************/
//remainingRounds
dealloc(newmem)
ResourceModule:Interact+757:
movsxd rax,dword ptr [r15+50]
dec eax
//Alt: db 49 63 47 50 FF C8
Code: Select all
[ENABLE]
alloc(newmem,2048,WishManager:GetRequiredSatisfactionPoints+53)
label(returnhere)
label(originalcode)
label(exit)
newmem:
originalcode:
movsxd rax,dword ptr [rax] //maxSatisfactionProgress { 500 }
mov [rsi+30],rax //satisfaction progress
mov [rsi+38],rax //satisfaction points
mov [rsi+3C],rax //satisfaction level
lea rsp,[rbp+00]
exit:
jmp returnhere
WishManager:GetRequiredSatisfactionPoints+53:
jmp newmem
nop
nop
returnhere:
[DISABLE]
dealloc(newmem)
WishManager:GetRequiredSatisfactionPoints+53:
movsxd rax,dword ptr [rax]
lea rsp,[rbp+00]
//Alt: db 48 63 00 48 8D 65 00
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="28">
<CheatEntries>
<CheatEntry>
<ID>1037</ID>
<Description>"Character Needs"</Description>
<Options moHideChildren="1"/>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
alloc(newmem,2048,FoodExpectation:GetFullfillmentLevel+15e)
label(return)
label(code)
label(health)
label(hunger)
label(stamina)
label(healthC)
label(hungerC)
label(staminaC)
registersymbol(hungerC)
registersymbol(staminaC)
registersymbol(healthC)
newmem:
//health
health:
cmp [healthC],0
je hunger
movss xmm1,[rsi+000001F8]
movss [rsi+000001F4],xmm1
movss xmm0,[rsi+000001F4]
//hunger
hunger:
cmp [hungerC],0
je stamina
mov [rsi+000001FC],(float)1
movss xmm0,[rsi+000001FC]
//stamina
stamina:
cmp [staminaC],0
je code
mov [rsi+00000200],(float)1
movss xmm0,[rsi+00000200]
jmp return
code:
movss xmm0,[rsi+000001FC]
jmp return
healthC:
dq 0
hungerC:
dq 0
staminaC:
dq 0
FoodExpectation:GetFullfillmentLevel+15e:
jmp newmem
nop
nop
nop
return:
[DISABLE]
unregistersymbol(hungerC)
unregistersymbol(staminaC)
unregistersymbol(healthC)
dealloc(newmem)
FoodExpectation:GetFullfillmentLevel+15e:
movss xmm0,[rsi+000001FC]
//Alt: db F3 0F 10 86 FC 01 00 00
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>1038</ID>
<Description>"Health"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
healthC:
dq 1
[DISABLE]
healthC:
dq 0
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>1039</ID>
<Description>"Hunger"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
hungerC:
dq 1
[DISABLE]
hungerC:
dq 0
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>1040</ID>
<Description>"Stamina"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
staminaC:
dq 1
[DISABLE]
staminaC:
dq 0
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
<UserdefinedSymbols/>
</CheatTable>
fantomas wrote: ↑Thu Aug 01, 2019 3:31 pmHere some scripts that you do not find in cheats menu.
Fast WorkMax SatisfactionCode: Select all
[ENABLE] //remainingWorkSeconds ResourceModule:Interact+ae+4: db 47 //F3 41 0F 11 47 5C //movss [r15+5C],xmm0 /*********************************************/ //remainingRounds alloc(newmem,2048,ResourceModule:Interact+757) label(returnhere) label(originalcode) newmem: originalcode: mov [r15+50],#1 movsxd rax,dword ptr [r15+50] dec eax jmp returnhere ResourceModule:Interact+757: jmp newmem nop returnhere: [DISABLE] //remainingWorkSeconds ResourceModule:Interact+ae+4: db 6F //F3 41 0F 11 6F 5C //movss [r15+5C],xmm5 /***********************************************/ //remainingRounds dealloc(newmem) ResourceModule:Interact+757: movsxd rax,dword ptr [r15+50] dec eax //Alt: db 49 63 47 50 FF C8
Character NeedsCode: Select all
[ENABLE] alloc(newmem,2048,WishManager:GetRequiredSatisfactionPoints+53) label(returnhere) label(originalcode) label(exit) newmem: originalcode: movsxd rax,dword ptr [rax] //maxSatisfactionProgress { 500 } mov [rsi+30],rax //satisfaction progress mov [rsi+38],rax //satisfaction points mov [rsi+3C],rax //satisfaction level lea rsp,[rbp+00] exit: jmp returnhere WishManager:GetRequiredSatisfactionPoints+53: jmp newmem nop nop returnhere: [DISABLE] dealloc(newmem) WishManager:GetRequiredSatisfactionPoints+53: movsxd rax,dword ptr [rax] lea rsp,[rbp+00] //Alt: db 48 63 00 48 8D 65 00
Code: Select all
<?xml version="1.0" encoding="utf-8"?> <CheatTable CheatEngineTableVersion="28"> <CheatEntries> <CheatEntry> <ID>1037</ID> <Description>"Character Needs"</Description> <Options moHideChildren="1"/> <LastState/> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>[ENABLE] alloc(newmem,2048,FoodExpectation:GetFullfillmentLevel+15e) label(return) label(code) label(health) label(hunger) label(stamina) label(healthC) label(hungerC) label(staminaC) registersymbol(hungerC) registersymbol(staminaC) registersymbol(healthC) newmem: //health health: cmp [healthC],0 je hunger movss xmm1,[rsi+000001F8] movss [rsi+000001F4],xmm1 movss xmm0,[rsi+000001F4] //hunger hunger: cmp [hungerC],0 je stamina mov [rsi+000001FC],(float)1 movss xmm0,[rsi+000001FC] //stamina stamina: cmp [staminaC],0 je code mov [rsi+00000200],(float)1 movss xmm0,[rsi+00000200] jmp return code: movss xmm0,[rsi+000001FC] jmp return healthC: dq 0 hungerC: dq 0 staminaC: dq 0 FoodExpectation:GetFullfillmentLevel+15e: jmp newmem nop nop nop return: [DISABLE] unregistersymbol(hungerC) unregistersymbol(staminaC) unregistersymbol(healthC) dealloc(newmem) FoodExpectation:GetFullfillmentLevel+15e: movss xmm0,[rsi+000001FC] //Alt: db F3 0F 10 86 FC 01 00 00 </AssemblerScript> <CheatEntries> <CheatEntry> <ID>1038</ID> <Description>"Health"</Description> <LastState/> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>[ENABLE] healthC: dq 1 [DISABLE] healthC: dq 0 </AssemblerScript> </CheatEntry> <CheatEntry> <ID>1039</ID> <Description>"Hunger"</Description> <LastState/> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>[ENABLE] hungerC: dq 1 [DISABLE] hungerC: dq 0 </AssemblerScript> </CheatEntry> <CheatEntry> <ID>1040</ID> <Description>"Stamina"</Description> <LastState/> <VariableType>Auto Assembler Script</VariableType> <AssemblerScript>[ENABLE] staminaC: dq 1 [DISABLE] staminaC: dq 0 </AssemblerScript> </CheatEntry> </CheatEntries> </CheatEntry> </CheatEntries> <UserdefinedSymbols/> </CheatTable>
![]()
Take a look on this one. Be aware that the game is using mono, so the game may generate the code differently, depending on your system configuration.
Code: Select all
[ENABLE]
aobscan(aobUpdate,C7 45 A8 00 00 00 00 33 C0 48 0F B6 C0 85 C0) // should be unique
registersymbol(aobUpdate)
aobUpdate+7:
db 33 C0 48 0F B6 C0 39 D8
[DISABLE]
aobUpdate+7:
db 33 C0 48 0F B6 C0 85 C0
unregistersymbol(aobUpdate)
Code: Select all
aobUpdate+D:
db 39 D8
aobUpdate+D:
db 85 C0
yeah you are right, i started the AOB with 33 C0 48 0F B6 C0 85 C0 but it was not unique, i added some bytes to the AOB and for quick test i used the +7 offset, and it worked ingame, and i forgot to "clean up" the code :/fantomas wrote: ↑Mon Sep 02, 2019 10:50 pmWhy stopped at byte 7 while you can start from the byte you want to change?Code: Select all
[ENABLE] aobscan(aobUpdate,C7 45 A8 00 00 00 00 33 C0 48 0F B6 C0 85 C0) // should be unique registersymbol(aobUpdate) aobUpdate+7: db 33 C0 48 0F B6 C0 39 D8 [DISABLE] aobUpdate+7: db 33 C0 48 0F B6 C0 85 C0 unregistersymbol(aobUpdate)
Code: Select all
aobUpdate+D: db 39 D8 aobUpdate+D: db 85 C0
I would like to get the achievements for this game, so I can't use the dev mode. Is it possible to update this?
Users browsing this forum: angelfrost, MasterPanda, thibault763, wepon1984, YandexBot