Функции:
- Minimum Resources - Неограниченные ресурсы
- God Mode - Неуязвимость
- Recover Move Points - Восстановить очки перемещения
- Minimum Settement POP - Изменить уровень популяции в поселении
- Minimum Settement Prod Net - Изменить производственную сеть для поселения
- Minimum Research Net - Изменить исследовательскую сеть
- Some Pointers - Различные указатели
Процесс запуска:
- Запустить Cheat Engine, "Load" и выбрать таблицу
- "Select a process to open", выбрать нужный процесс.
- Выбрать нужную опцию, поставить крест.
Скачать Cheat Engine с нашего сервера Вы сможете здесь.
траблы (
1.0.12 работает
не пашет к сожалению
Вышла новая версия игры, и таблица уже не пашет
Вот такую ошибку выдаёт:
{
===========================================
Game Title : Humankind
Game Version : 1.0.11.2173 (Steam)
Game Sponsor : PF
Process Name : Humankind.exe
Relevant Info : Amplitude_x64/TBS
Script Version: 1.5
CE Version : 7.4
Release date : 22-Apr-2022
Author : Recifense
History:
17-Aug-2021: Preliminary Release (s0.1) v1.0.01.0034
18-Aug-2021: Preliminary Release (s0.2) v1.0.01.0058 (balancing)
19-Aug-2021: Preliminary Release (s0.3) v1.0.01.0058 (Improvement+fix)
23-Aug-2021: Release for version 1.0.01.0059 (s1.0)
17-Sep-2021: Release for version 1.0.03.0253 (s1.1)
06-Nov-2021: Release for version 1.0.05.0517 (s1.2)
15-Dec-2021: Release for version 1.0.06.0672 (s1.3)
28-Mar-2022: Release for version 1.0.10.1877 (s1.4)
22-Apr-2022: Release for version 1.0.11.2173 (s1.5)
Features:
- Minimum Resources:
- Gold
- Influence
- God Mode
- Recover Move Points
- Minimum Settement POP
- Minimum Settement Prod Net
- Minimum Research Net
- User can define the value
- Some Pointers
===========================================
}
//=========================================
// Checking CE version
{$lua}
if(getCEVersion() < 7.0) then
ShowMessage('Sorry. CE version should be 7.0 or above')
end
{$asm}
//=========================================
// Checking Selected Process
{$lua}
if(process == nil) then
ShowMessage('No process was selected')
elseif (string.upper(process) ~= string.upper("Humankind.exe")) then
ShowMessage('Warning. Expected Process = Humankind.exe')
end
{$asm}
//=========================================
{$lua}
monoAA_USEMONO(process,false)
if waitForPDB then --this way older CE versions are unaffected (By Dark Byte)
waitForPDB()
end
{$asm}
//=========================================
// Definitions
define(LUDO,"Humankind.exe")
define(MOHP,Amplitude.Mercury.AI:AIController:IsControlledByHuman+0058) //.
define(MOSA,Amplitude.Mercury.Simulation:Army:HasUnitStatus+0010)
define(MOUI,Amplitude.Mercury.Simulation:DepartmentOfTheTreasury:GetHealCost+0045) //.
define(MOSI,Amplitude.Mercury.Simulation:Settlement:get_TotalPopulation+0018) //.
define(GDMD,Amplitude.Mercury.Simulation:DepartmentOfDefense:ForceHealthRatio+0008) //.
define(MORN,Amplitude.Framework.Simulation:BaseSimulationEntity:Refresh+0377) //.
//=========================================
// Constants used in the script (that can be changed)
define(ctCE70,(float)7.0)
//=========================================
[ENABLE]
//=========================================
//LuaCall(CheckVersion())
//=========================================
// Check if script is compatible to this game version
// If false the script will not be loaded
assert(MOHP,48 8B C8 83 39 00 0F B6 80 18 02 00 00) //.
assert(MOSA,48 8B F1 48 89 55 E8 48 8B 86 C8 00 00 00)
assert(MOUI,48 8B 86 C8 00 00 00 48 05 90 00 00 00)
assert(MOSI,48 8D 8E 1C 03 00 00 48 8D AD 00 00 00 00) //.
assert(GDMD,48 89 75 F8 48 8B F1 48 89 55 D8 48 85 F6) //.
//assert(MORN,48 8B C8 48 8B D6 4C 63 85 70 FF FF FF) //P
//=========================================
alloc(MyCode,8192,$process)
//=========================================
// Declaration section
label(_MonHumanPlayer)
label(_BackMHP)
label(_MonSelArmy)
label(_BackMSA)
label(_MonUnitInfo)
label(_BackMUI)
label(_MonSetInfo)
label(_BackMSI)
label(_GodMode)
label(_BackGMD)
label(_MonRechNet)
label(_BackMRN)
label(iEnableMMR)
label(iEnableGMD)
label(iEnableMMP)
label(iEnableMSP)
label(iEnableSPN)
label(iEnableMRN)
label(iEmpireID)
label(iMinRN)
label(iMinMR)
label(iMinPN)
label(pEmpire)
label(pArmy)
label(pUnit)
label(pSettle)
label(pMOHP)
label(pMOSA)
label(pMOUI)
label(pMOSI)
label(pGDMD)
label(pMORN)
//=========================================
// Registering Symbols
registersymbol(MyCode)
registersymbol(iEnableMMR)
registersymbol(iEnableGMD)
registersymbol(iEnableMMP)
registersymbol(iEnableMSP)
registersymbol(iEnableSPN)
registersymbol(iEnableMRN)
registersymbol(iEmpireID)
registersymbol(iEmpireIX)
registersymbol(iMinRN)
registersymbol(iMinMR)
registersymbol(iMinPN)
registersymbol(pEmpire)
registersymbol(pArmy)
registersymbol(pUnit)
registersymbol(pSettle)
registersymbol(pMOHP)
registersymbol(pMOSA)
registersymbol(pMOUI)
registersymbol(pMOSI)
registersymbol(pGDMD)
registersymbol(pMORN)
//=========================================
MyCode:
//========================================= 1.0.11 *
// This code finds the Human Player Empire
_MonHumanPlayer:
mov rcx,_BackMHP
mov [pRet+00],rcx
test rax,rax
jz _ExitMHP
cmp byte ptr [rax+00000218],1 // Human Player?
jne _ExitMHP
mov [pEmpire],rax
mov ecx,[rax+10]
mov [iEmpireID],ecx
mov [iEmpireIX],esi
cmp dword ptr [iEnableMMR],0
je _MonHP01 // Jump if feature is disabled
cmp dword [rax+000005A0],00 // MS
je _MonHP00
mov ecx,[iMinMR]
cmp [rax+000005A0],ecx
jns _MonHP00
mov [rax+000005A0],ecx
_MonHP00:
cmp dword [rax+00000630],00 // IS
je _MonHP01
mov ecx,[iMinMR]
cmp [rax+00000630],ecx
jns _MonHP01
mov [rax+00000630],ecx
_MonHP01:
cmp dword ptr [iEnableMRN],0
je _ExitMHP // Jump if feature is disabled
cmp dword [rax+00000598],00 // RN
je _ExitMHP
mov ecx,[iMinRN]
cmp [rax+00000598],ecx
jns _ExitMHP
mov [rax+00000598],ecx
_ExitMHP:
mov rcx,rax // Original code (RAX=MajorEmpire)
cmp dword ptr [rcx],00 // Original code
movzx eax,byte ptr [rax+00000218] // Original code
jmp [pRet+00] // Back to main code
//========================================= 1.0.11 ok
// This code finds Selected Army
_MonSelArmy:
mov rsi,_BackMSA
mov [pRet+08],rsi
mov [pArmy],rcx
cmp dword ptr [iEnableMMP],0
je _ExitMSA // Jump if feature is disabled
mov rsi,[rcx+000000D0] // Empire 2
test rsi,rsi
jz _ExitMSA
mov eax,[rsi+48]
cmp eax,[iEmpireID]
jne _ExitMSA
mov eax,#1000
cmp [rcx+00000144],eax // MR
jns _ExitMSA
mov [rcx+00000144],eax
mov [rcx+0000015C],eax
_ExitMSA:
mov rsi,rcx // Original code
mov [rbp-18],rdx // Original code
mov rax,[rsi+000000C8] // Original code
jmp [pRet+08] // Back to main code
//========================================= 1.0.11 ok
// When an army is selected
_MonUnitInfo:
mov rax,_BackMUI
mov [pRet+10],rax
mov [pUnit],rsi
cmp r12,[pEmpire]
je _MonUI00
cmp r13,[pEmpire]
je _MonUI00
cmp r14,[pEmpire]
jne _ExitMUI
_MonUI00:
cmp dword ptr [iEnableMMP],0
je _MonUI01 // Jump if feature is disabled
mov eax,#1000
cmp [rsi+000001EC],eax
jns _MonUI01
mov [rsi+000001EC],eax
_MonUI01:
cmp dword ptr [iEnableGMD],0
je _MonUI02 // Jump if feature is disabled
mov eax,#1000
cmp [rsi+000001E4],eax
jns _MonUI02
mov [rsi+000001E4],eax
_MonUI02:
_ExitMUI:
mov rax,[rsi+000000C8] // Original code (UD)
add rax,00000090 // Original code
jmp [pRet+10] // Back to main code
//========================================= 1.0.11 *
// When a settlement is selected
_MonSetInfo:
mov rax,_BackMSI
mov [pRet+18],rax
mov [pSettle],rsi
cmp r12,[pEmpire]
je _MonSI00
cmp rbx,[pEmpire]
je _MonSI00
cmp r14,[pEmpire]
jne _ExitMSI
_MonSI00:
cmp dword ptr [iEnableMSP],0
je _MonSI01 // Jump if feature is disabled
mov eax,#1000
cmp [rsi+0000031C],eax
jns _MonSI01
mov [rsi+0000031C],eax
_MonSI01:
cmp dword ptr [iEnableSPN],0
je _MonSI02 // Jump if feature is disabled
mov eax,[iMinPN]
cmp [rsi+000002AC],eax
jns _MonSI02
mov [rsi+000002AC],eax
_MonSI02:
_ExitMSI:
lea rcx,[rsi+0000031C] // Original code (Pop)
lea rbp,[rbp+00000000] // Original code
jmp [pRet+18] // Back to main code
//========================================= 1.0.11 *
// During Battle
_GodMode:
mov rax,_BackGMD
mov [pRet+20],rax
mov [rbp-08],rsi // Original code
cmp dword ptr [iEnableGMD],0
je _ExitGMD // Jump if feature is disabled
mov rsi,[pEmpire]
mov rsi,[rsi+00000160] // UList
test rsi,rsi
jz _ExitGMD
mov eax,[rsi+58]
test rax,rax
jz _ExitGMD
mov rsi,[rsi+40]
lea rsi,[rsi+20]
lea r11,[rsi+rax*4]
mov eax,[rcx+10]
_GodMD00:
cmp eax,[rsi]
je _GodMD01
lea rsi,[rsi+04]
cmp rsi,r11
js _GodMD00
jmp _ExitGMD
//--
_GodMD01:
mov edx,#1000
mov [rcx+000001E4],edx
_ExitGMD:
mov rsi,rcx // Original code (Unit)
mov [rbp-28],rdx // Original code (%HP)
test rsi,rsi // Original code
jmp [pRet+20] // Back to main code
//========================================= 1.0.11 (pending)
// When updating Research Net:
// RSI = Empire
_MonRechNet:
mov rcx,_BackMRN
mov [pRet+28],rcx
cmp rsi,[pEmpire]
jne _ExitMRN
lea rsi,[rsi]
cmp dword ptr [iEnableMRN],0
je _ExitMRN // Jump if feature is disabled
cmp edx,[rsi+00000228] // Territory Count ID
jne _ExitMRN
cmp dword [rbp-00000090],00
je _ExitMRN
mov ecx,[iMinRN]
cmp [rbp-00000090],ecx
jns _ExitMRN
mov [rbp-00000090],ecx
_ExitMRN:
mov rcx,rax // Original code
mov rdx,rsi // Original code
movsxd r8,dword ptr [rbp-00000090] // Original code
jmp [pRet+28] // Back to main code
//=========================================
align 10,'='
//=========================================
db '===============================>'
db 'CE7.4 Script by Recifense 220422'
//=========================================
// Variables
iEnableMMR:
dq 0
iEnableGMD:
dq 0
iEnableMMP:
dq 0
iEnableMSP:
dq 0
iEnableSPN:
dq 0
iEnableMRN:
dq 0
iEmpireID:
dq 55555555
iEmpireIX:
dq #999
iMinRN:
dq #50000
iMinMR:
dq #70000000
iMinPN:
dq #700000
pEmpire:
dq MyCode
pArmy:
dq 0
pUnit:
dq 0
pSettle:
dq 0
pRet:
dq 0
//=========================================
// Hacking Points
MOHP:
pMOHP:
mov rcx,_MonHumanPlayer
jmp rcx
nop
_BackMHP:
MOSA:
pMOSA:
mov rsi,_MonSelArmy
jmp rsi
nop
nop
_BackMSA:
MOUI:
pMOUI:
mov rax,_MonUnitInfo
jmp rax
nop
_BackMUI:
MOSI:
pMOSI:
mov rax,_MonSetInfo
jmp rax
nop
nop
_BackMSI:
GDMD:
pGDMD:
mov rax,_GodMode
jmp rax
nop
nop
_BackGMD:
MORN:
pMORN:
// mov rcx,_MonRechNet
// jmp rcx
// nop
_BackMRN:
//=========================================
// Script for Restoring Original Codes
[DISABLE]
pMOHP:
db 48 8B C8 83 39 00 0F B6 80 18 02 00 00
pMOSA:
db 48 8B F1 48 89 55 E8 48 8B 86 C8 00 00 00
pMOUI:
db 48 8B 86 C8 00 00 00 48 05 90 00 00 00
pMOSI:
db 48 8D 8E 1C 03 00 00 48 8D AD 00 00 00 00
pGDMD:
db 48 89 75 F8 48 8B F1 48 89 55 D8 48 85 F6
//pMORN:
// db 48 8B C8 48 8B D6 4C 63 85 70 FF FF FF
//=========================================
// Unregistering Symbols
unregistersymbol(MyCode)
unregistersymbol(iEnableMMR)
unregistersymbol(iEnableGMD)
unregistersymbol(iEnableMMP)
unregistersymbol(iEnableMSP)
unregistersymbol(iEnableSPN)
unregistersymbol(iEnableMRN)
unregistersymbol(iEmpireID)
unregistersymbol(iEmpireIX)
unregistersymbol(iMinRN)
unregistersymbol(iMinMR)
unregistersymbol(iMinPN)
unregistersymbol(pEmpire)
unregistersymbol(pArmy)
unregistersymbol(pUnit)
unregistersymbol(pSettle)
unregistersymbol(pMOHP)
unregistersymbol(pMOSA)
unregistersymbol(pMOUI)
unregistersymbol(pMOSI)
unregistersymbol(pGDMD)
unregistersymbol(pMORN)
//=========================================
// Turning CE mono features OFF
{$lua}
monopipe.destroy()
monopipe=nil
{$asm}
//=========================================
dealloc(MyCode)
//============= Scripts End ===============
// ****************************************
// NOTES
// ****************************************
{
}