1
"Activate First"
Auto Assembler Script
[ENABLE]
{$lua}
if syntaxcheck then return end
if process and readInteger(process) ~= 0 then
mono_initialize()
LaunchMonoDataCollector()
else
local msg = 'No process detected.'
print(msg)
error(msg)
end
if LaunchMonoDataCollector() ~= 0 then
local mId1 = mono_findMethod('Assembly-CSharp', 'TheAwakening.Player', 'GetInstance')
mono_compile_method(mId)
end
{$asm}
//TheAwakening:Player:GetInstance+74 - 48 8B 75 F8 - mov rsi,[rbp-08]
//TheAwakening:Player:GetInstance+78 - C9 - leave
aobscanregion(getplayer,TheAwakening:Player:GetInstance,TheAwakening:Player:GetInstance+FF,48 8B 75 F8 C9)
registersymbol(getplayer)
alloc(code,256)
label(return)
alloc(player_ptr,4)
registersymbol(player_ptr)
code:
mov [player_ptr],eax
db 48 8B 75 F8 C9
jmp return
getplayer:
jmp code
return:
[DISABLE]
getplayer:
db 48 8B 75 F8 C9
unregistersymbol(getplayer)
unregistersymbol(player_ptr)
dealloc(code)
dealloc(player_ptr)
61
"READ TABLE EXTRAS"
0000FF
1
54
"Player stats"
1
60
"To update select expedition/settlement or exit to map screen"
0000FF
1
52
"Player pointer"
1
String
0
0
0
1
player_ptr
0
55
"Advancement points"
4 Bytes
player_ptr
80
56
"Total advancement points"
4 Bytes
player_ptr
84
57
"Research points"
4 Bytes
player_ptr
88
58
"XP"
4 Bytes
player_ptr
8C
59
"Total XP"
4 Bytes
player_ptr
90
0
"Unlimited Carry Weight"
Auto Assembler Script
define(bytes, 55 48 8B EC 56 57)
//TheAwakening:GroupBase:GetWeight - 55
//TheAwakening:GroupBase:GetWeight+1- 48 8B EC
//TheAwakening:GroupBase:GetWeight+4- 56
//TheAwakening:GroupBase:GetWeight+5- 57
define(bytes2, 55 48 8B EC 56 48 83 EC 08)
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.GroupBase', 'GetWeight')
mono_compile_method(mId)
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.Character', 'GetCarryMax')
mono_compile_method(mId)
end
{$asm}
assert(TheAwakening:GroupBase:GetWeight, bytes)
assert(TheAwakening:Character:GetCarryMax, bytes2)
TheAwakening:GroupBase:GetWeight:
db B8 00 00 00 00 C3
//mov eax,(int)0
//ret
// now function just returns 0
TheAwakening:Character:GetCarryMax:
db B8 88 13 00 00 C3 90 90 90
// now function just returns 5000
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:GroupBase:GetWeight:
db bytes
TheAwakening:Character:GetCarryMax:
db bytes2
3
"Production Cost = 10"
Auto Assembler Script
define(bytes, 55 48 8B EC 56 48)
//TheAwakening:TaskInstance:GetPointCost - 55
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.TaskInstance', 'GetPointCost')
mono_compile_method(mId)
end
{$asm}
TheAwakening:TaskInstance:GetPointCost:
mov eax, (int)10
ret
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:TaskInstance:GetPointCost:
db bytes
7
"Production Speed = 100"
Auto Assembler Script
define(bytes, 55 48 8B EC 56 57)
//TheAwakening:Character:GetProductionSpeed - 55
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.Character', 'GetProductionSpeed')
mono_compile_method(mId)
end
{$asm}
assert(TheAwakening:Character:GetProductionSpeed, bytes)
TheAwakening:Character:GetProductionSpeed:
mov eax, (int)100
ret
// now function just returns 1000
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:Character:GetProductionSpeed:
db bytes
6
"Free Crafting"
Auto Assembler Script
define(bytes, 55 48 8B EC 56 57)
//TheAwakening:TaskInstance:PayCosts - 55
//TheAwakening:TaskInstance:PayCosts+1- 48 8B EC
//TheAwakening:TaskInstance:PayCosts+4- 56
//TheAwakening:TaskInstance:PayCosts+5- 57
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.TaskInstance', 'PayCosts')
mono_compile_method(mId)
end
{$asm}
assert(TheAwakening:TaskInstance:PayCosts, bytes)
TheAwakening:TaskInstance:PayCosts:
mov eax, (int)1
ret
// now function just returns
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:TaskInstance:PayCosts:
db bytes
34
"Always Good Quality Items"
Auto Assembler Script
define(bytes, 48 83 EC 08 48 89 0C 24 F3)
define(bytes2, 0F B6 45 D8 85 C0) //movzx eax,byte ptr [rbp-28]; test eax,eax
define(bytes3, 0F B6 45 D0 85 C0) //movzx eax,byte ptr [rbp-30]; test eax,eax
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.Item', 'GetGoodQualityChance')
mono_compile_method(mId)
local mId2 = mono_findMethod('Assembly-CSharp', 'TheAwakening.Item', 'AllowQualityUpgrade')
mono_compile_method(mId2)
end
{$asm}
assert(TheAwakening:Item:GetGoodQualityChance, bytes)
//assert(TheAwakening:Item:AllowQualityUpgrade+229, bytes2)
//assert(TheAwakening:Item:AllowQualityUpgrade+15e, bytes3)
aobscanregion(quality1, TheAwakening:Item:AllowQualityUpgrade, TheAwakening:Item:AllowQualityUpgrade+350, 0F B6 45 D8 85 C0)
aobscanregion(quality2, TheAwakening:Item:AllowQualityUpgrade, TheAwakening:Item:AllowQualityUpgrade+350, 0F B6 45 D0 85 C0)
registersymbol(quality1)
registersymbol(quality2)
TheAwakening:Item:GetGoodQualityChance:
db F3 0F 10 05 48 00 00 00 C3
// now function just returns 100.00% for good quality items
// following code prevents bad quality items
quality1:
db 83 C8 01 90 85 C0 // or eax,01 + nop : good quality even without smithy
quality2:
db 31 C0 90 90 85 C0 // xor eax,eax + nops : ignore bad quality code block
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:Item:GetGoodQualityChance:
db bytes
quality1:
db bytes2
quality2:
db bytes3
unregistersymbol(quality1)
unregistersymbol(quality2)
4
"Unlimited Buildings"
Auto Assembler Script
define(bytes, 55 48 8B EC 56 48)
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.Settlement', 'BuildingCount')
mono_compile_method(mId)
end
{$asm}
assert(TheAwakening:Settlement:BuildingCount, bytes)
TheAwakening:Settlement:BuildingCount:
mov eax, (int)0
ret
// now function just returns 0
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:Settlement:BuildingCount:
db bytes
36
"Reveal Map"
Auto Assembler Script
define(bytes, 55 48 8B EC 56)
//TheAwakening:GroupBase:GetVisibilityRadius
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.GroupBase', 'GetVisibilityRadius')
mono_compile_method(mId)
end
{$asm}
assert(TheAwakening:GroupBase:GetVisibilityRadius, bytes)
alloc(reveal_all, 1024, TheAwakening:GroupBase:GetVisibilityRadius)
registersymbol(reveal_all)
reveal_all:
mov dword ptr[rcx+88],#300
db bytes
jmp return
TheAwakening:GroupBase:GetVisibilityRadius:
jmp reveal_all
return:
// now function just returns 5
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:GroupBase:GetVisibilityRadius:
db bytes
unregistersymbol(reveal_all)
dealloc(reveal_all)
30
"Item Count "
Auto Assembler Script
define(bytes, 49 63 87 9C 00 00 00)
//InfoBox:SetMainInfo+32b - movsxd rax,dword ptr [r15+0000009C]
//InfoBox:SetMainInfo+332 - movsxd rcx,dword ptr [rsi+18]
//InfoBox:SetMainInfo+32b - 49 63 87 9C000000
//InfoBox:SetMainInfo+332 - 48 63 4E 18
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'InfoBox', 'SetMainInfo')
mono_compile_method(mId)
end
{$asm}
//assert(InfoBox:SetMainInfo+32b, bytes)
aobscanregion(itemcount,InfoBox:SetMainInfo,InfoBox:SetMainInfo+500, 49 63 87 9C 00 00 00 48 63 4E 18)
registersymbol(itemcount)
alloc(count_ptr, 4, InfoBox:SetMainInfo)
registersymbol(count_ptr)
alloc(code, 2048, InfoBox:SetMainInfo)
count_ptr:
dd (int)50
//label(return)
code:
//mov [count_ptr], rsi
mov rax, dword ptr[count_ptr]
mov [rsi+18],rax
db bytes
jmp return
itemcount:
jmp code
nop
nop
return:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
itemcount:
db bytes
unregistersymbol(count_ptr)
dealloc(count_ptr)
unregistersymbol(itemcount)
33
"Set to (on mouseover)"
4 Bytes
count_ptr
18
"Unlocking Resource Adds X"
Auto Assembler Script
define(bytes, 41 B8 05 00 00 00)
//Research:UnlockCallback+167 - 41 B8 64000000
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'Research', 'UnlockCallback')
mono_compile_method(mId)
end
{$asm}
//assert(Research:UnlockCallback+167, bytes)
aobscanregion(unlock,Research:UnlockCallback,Research:UnlockCallback+200,41 B8 05 00 00 00 48 83 EC 20)
registersymbol(unlock)
alloc(count, 4)
registersymbol(count)
alloc(newmem, 1024)
label(return)
count:
dd (int)5
newmem:
mov r8d,dword ptr [count]
jmp return
unlock:
jmp newmem
nop
return:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
unlock:
db bytes
unregistersymbol(count)
dealloc(count)
dealloc(newmem)
unregistersymbol(unlock)
19
"Count"
4 Bytes
count
5
"Infinite MP"
Auto Assembler Script
define(bytes, 55 48 8B EC 57)
//TheAwakening:GroupBase:UseMP - 55
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.GroupBase', 'UseMP')
mono_compile_method(mId)
end
{$asm}
assert(TheAwakening:GroupBase:UseMP, bytes)
alloc(code, $1000, TheAwakening:GroupBase:UseMP)
label(ret_)
label(return)
code:
push rax
mov eax,dword ptr[rcx+AC] //all player expeditions have 0 in that pointer... points to "_owner" of a group
test eax,eax
pop rax
je ret_
db bytes
jmp return
ret_:
ret
TheAwakening:GroupBase:UseMP:
jmp code
return:
// now function just returns
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:GroupBase:UseMP:
db bytes
40
"Level Up Boost"
000000
1
62
"Make sure that player pointer is updated, otherwise you'll recieve +0 on level up."
0000FF
1
8
"Level Up Boost"
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.Character', 'AdvanceCharacter')
mono_compile_method(mId)
end
{$asm}
//assert(TheAwakening:Character:AdvanceCharacter+3e8, 41 B8 02 00 00 00)
//assert(TheAwakening:Character:AdvanceCharacter+409, BA 02 00 00 00)
//assert(TheAwakening:Character:AdvanceCharacter+439, 41 B8 01 00 00 00)
//assert(TheAwakening:Character:AdvanceCharacter+45a, BA 01 00 00 00)
aobscanregion(lvlup1, TheAwakening:Character:AdvanceCharacter, TheAwakening:Character:AdvanceCharacter+4ff, 41 B8 02 00 00 00)
registersymbol(lvlup1)
aobscanregion(lvlup2, TheAwakening:Character:AdvanceCharacter, TheAwakening:Character:AdvanceCharacter+4ff, BA 02 00 00 00)
registersymbol(lvlup2)
aobscanregion(lvlup3, TheAwakening:Character:AdvanceCharacter, TheAwakening:Character:AdvanceCharacter+4ff, 41 B8 01 00 00 00)
registersymbol(lvlup3)
aobscanregion(lvlup4, TheAwakening:Character:AdvanceCharacter, TheAwakening:Character:AdvanceCharacter+4ff, BA 01 00 00 00 48 83 EC 20)
registersymbol(lvlup4)
alloc(code,1024,TheAwakening:Character:AdvanceCharacter)
alloc(skillpoints,4,TheAwakening:Character:AdvanceCharacter)
registersymbol(skillpoints)
alloc(owner,4,TheAwakening:Character:AdvanceCharacter)
registersymbol(owner)
skillpoints:
dd (int)3
code:
part0:
mov [owner],esi // pointer to owner of character
db 55 48 8B EC 53
jmp return0
part1:
mov r8d,[player_ptr]
cmp [owner],r8d
xor r8d,r8d
jne return1
mov r8d, dword ptr[skillpoints]
jmp return1
part2:
mov edx,[player_ptr]
cmp [owner],edx
xor edx,edx
jne return2
mov edx, dword ptr[skillpoints]
jmp return2
part3:
mov r8d,[player_ptr]
cmp [owner],r8d
xor r8d,r8d
jne return3
mov r8d,dword ptr[skillpoints]
jmp return3
part4:
mov edx,[player_ptr]
cmp [owner],edx
xor edx,edx
jne return4
mov edx,dword ptr[skillpoints]
jmp return4
TheAwakening:Character:AdvanceCharacter:
jmp part0
return0:
lvlup1:
jmp part1
nop
return1:
lvlup2:
jmp part2
return2:
lvlup3:
jmp part3
nop
return3:
lvlup4:
jmp part4
return4:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:Character:AdvanceCharacter:
db 55 48 8B EC 53
lvlup1:
db 41 B8 02 00 00 00
lvlup2:
db BA 02 00 00 00
lvlup3:
db 41 B8 01 00 00 00
lvlup4:
db BA 01 00 00 00
unregistersymbol(skillpoints)
dealloc(skillpoints)
unregistersymbol(owner)
dealloc(owner)
unregistersymbol(lvlup1)
unregistersymbol(lvlup2)
unregistersymbol(lvlup3)
unregistersymbol(lvlup4)
dealloc(code)
28
"Level up skill points"
4 Bytes
skillpoints
9
"Easy Advancement"
Auto Assembler Script
//TheAwakening:Player:NextResearchCost
define(bytes1, 55 48 8B EC 56 48 83 EC 28)
//TheAwakening:Player:NextXpCost
define(bytes2, 55 48 8B EC 56 48 83 EC 18)
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId1 = mono_findMethod('Assembly-CSharp', 'TheAwakening.Player', 'NextResearchCost')
mono_compile_method(mId)
local mId1 = mono_findMethod('Assembly-CSharp', 'TheAwakening.Player', 'NextResearchCost')
mono_compile_method(mId)
end
{$asm}
assert(TheAwakening:Player:NextResearchCost, bytes1)
assert(TheAwakening:Player:NextXpCost, bytes2)
TheAwakening:Player:NextResearchCost:
mov eax, (int)10
ret
TheAwakening:Player:NextXpCost:
mov eax, (int)10
ret
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:Player:NextResearchCost:
db bytes1
TheAwakening:Player:NextXpCost:
db bytes2
27
"No Heavy Wounds Deaths"
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TheAwakening.GroupBase', 'CheckWhoDied')
mono_compile_method(mId)
end
{$asm}
TheAwakening:GroupBase:CheckWhoDied:
ret
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
TheAwakening:GroupBase:CheckWhoDied:
db 55
42
"Super Heal"
Auto Assembler Script
define(bytes, 41 FF C8 48 8B C8 48 83 EC 20)
//TheAwakening:GroupBase:ConsumeResourcesAndHeal+853 - dec r8d
//TheAwakening:GroupBase:ConsumeResourcesAndHeal+856 - mov rcx,rax
//TheAwakening:GroupBase:ConsumeResourcesAndHeal+859 - sub rsp,20 { 32 }
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'GroupBase', 'ConsumeResourcesAndHeal')
mono_compile_method(mId)
end
{$asm}
aobscanregion(SuperHeal,TheAwakening:GroupBase:ConsumeResourcesAndHeal,TheAwakening:GroupBase:ConsumeResourcesAndHeal+d00,41 FF C8 48 8B C8 48 83 EC 20)
registersymbol(SuperHeal)
SuperHeal:
xor r8d,r8d
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
SuperHeal:
dec r8d
unregistersymbol(SuperHeal)
15
"Unlimited Reshuffles"
Auto Assembler Script
define(bytes, C6 86 08 01 00 00 01)
define(bytes2, 55 48 8B EC 56)
//ReshufflePopup:FreeReshuffle+21 - C6 86 08010000 01
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'ReshufflePopup', 'FreeReshuffle')
mono_compile_method(mId)
local mId = mono_findMethod('Assembly-CSharp', 'ReshufflePopup', 'ReshuffleBoostEnemy')
mono_compile_method(mId)
local mId = mono_findMethod('Assembly-CSharp', 'ReshufflePopup', 'ReshuffleDiscard')
mono_compile_method(mId)
end
{$asm}
//assert(ReshufflePopup:FreeReshuffle+21, bytes)
aobscanregion(FreeReshuffleAddress,ReshufflePopup:FreeReshuffle,ReshufflePopup:FreeReshuffle+50,C6 86 08 01 00 00 01)
registersymbol(FreeReshuffleAddress)
assert(ReshufflePopup:ReshuffleBoostEnemy, bytes2)
assert(ReshufflePopup:ReshuffleDiscard, bytes2)
label(free_reshuffle)
ReshufflePopup:FreeReshuffle:
free_reshuffle:
FreeReshuffleAddress:
db C6 86 08 01 00 00 00
ReshufflePopup:ReshuffleBoostEnemy:
jmp free_reshuffle
ReshufflePopup:ReshuffleDiscard:
jmp free_reshuffle
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
FreeReshuffleAddress:
db bytes
ReshufflePopup:ReshuffleBoostEnemy:
db bytes2
ReshufflePopup:ReshuffleDiscard:
db bytes2
unregistersymbol(FreeReshuffleAdress)
16
"Perfect Dismantling"
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'Inventory', 'DismantleItem')
mono_compile_method(mId)
local mId2 = mono_findMethod('UnityEngine', 'Random', 'Range')
mono_compile_method(mId2)
end
{$asm}
aobscanregion(dismantle,TheAwakening:Inventory:DismantleItem,TheAwakening:Inventory:DismantleItem+500,49 BB ?? ?? ?? ?? ?? ?? ?? ?? 41 FF D3 48 83 C4 20 F3 0F 5A C0 F2 0F 5A E8)
registersymbol(dismantle)
alloc(bytes,13)
registersymbol(bytes)
bytes:
readmem(dismantle,13)
dismantle:
db F3 48 0F 2A C0 90 90 90 90 90 90 90 90
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dismantle:
readmem(bytes,13)
unregistersymbol(bytes)
dealloc(bytes)
unregistersymbol(dismantle)
38
"Well Fed Level"
Auto Assembler Script
define(bytes, 45 89 A7 8C 00 00 00)
//TheAwakening:GroupBase:ConsumeResourcesAndHeal+1f5
//- 45 89 A7 8C000000 - mov [r15+0000008C],r12d
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'GroupBase', 'ConsumeResourcesAndHeal')
mono_compile_method(mId)
end
{$asm}
//assert(TheAwakening:GroupBase:ConsumeResourcesAndHeal+1f5, bytes)
aobscanregion(wellfed,TheAwakening:GroupBase:ConsumeResourcesAndHeal,TheAwakening:GroupBase:ConsumeResourcesAndHeal+500,45 89 A7 8C 00 00 00 49 8B CD 49 8B D7)
registersymbol(wellfed)
alloc(code, 256, TheAwakening:GroupBase:ConsumeResourcesAndHeal)
code:
mov [r15+8C], #10
jmp return
wellfed:
jmp code
nop
nop
return:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
wellfed:
db bytes
unregistersymbol(wellfed)
41
"Gathering Area"
Auto Assembler Script
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'GroupBase', 'GetGatheringArea')
mono_compile_method(mId)
end
{$asm}
aobscanregion(gathering,TheAwakening:GroupBase:GetGatheringArea,TheAwakening:GroupBase:GetGatheringArea+500,48 63 4F 18 48 83 EC 10)
registersymbol(gathering)
alloc(code, 1024, TheAwakening:GroupBase:GetGatheringArea)
label(return)
code:
mov [rdi+18],#10
db 48 63 4F 18 48 83 EC 10
jmp return
gathering:
jmp code
nop
nop
nop
return:
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
gathering:
db 48 63 4F 18 48 83 EC 10
unregistersymbol(gathering)
dealloc(code)
26
"Boosted Cards"
Auto Assembler Script
usemono()
define(bytes1, 48 63 45 E0 41 89 46 20)
//CardSkill:.ctor+3f - 48 63 45 E0
//CardSkill:.ctor+43 - 41 89 46 20
define(bytes2, F3 41 0F 11 6E 40)
//Card:.ctor+6d1 - F3 41 0F11 6E 40
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local cId = mono_findClass('Assembly-CSharp', 'CardSkill')
local methods = mono_class_enumMethods(cId)
mono_compile_method(methods[2].method)
local cId = mono_findClass('Assembly-CSharp', 'Card')
local methods = mono_class_enumMethods(cId)
mono_compile_method(methods[3].method)
end
{$asm}
//aobScanRegion(CardSkills, CardSkill:.ctor, CardSkill:.ctor+FF, 48 63 45 E0 41 89 46 20 48 8D 65 F0 41 5E 5F)
//aobScanRegion(Card, Card:.ctor+600, Card:.ctor+800, F3 41 0F 11 6E 40 48 8D 65 C8)
aobScan(CardSkills, 48 63 45 E0 41 89 46 20 48 8D 65 F0 41 5E 5F)
aobScan(Card, F3 41 0F 11 6E 40 48 8D 65 C8 41 5F)
registersymbol(CardSkills)
registersymbol(Card)
//assert(CardSkills, bytes1)
//assert(Card, bytes2)
alloc(code,$1000)
label(code1)
label(code2)
label(code3)
label(return1)
label(return2)
code:
push eax
mov eax,[r14+10]
mov eax,[eax+49]
test eax,eax
pop eax
je code1
mov [rax+18],(int)500
code1:
//CardSkill:.ctor+3f - movsxd rax,dword ptr [rbp-20]
//CardSkill:.ctor+43 - mov [r14+20],eax
db bytes1
jmp return1
code2:
push eax
mov eax,[r14+49]
test eax,eax
pop eax
je code3
mov [r14+54],(int)250
mov [r14+58],(int)250
mov [r14+44],(int)200
code3:
db bytes2
jmp return2
CardSkills:
jmp code
nop
nop
nop
return1:
Card:
jmp code2
nop
return2:
[DISABLE]
//aobScanRegion(CardSkills, CardSkill:.ctor, CardSkill:.ctor+FF, E9 ?? ?? ?? ?? 90 90 90 48 8D 65 F0)
//aobScanRegion(Card, Card:.ctor+600, Card:.ctor+800, E9 ?? ?? ?? ?? 90 48 8D 65 C8)
//aobScan(CardSkills, E9 ?? ?? ?? ?? 90 90 90 48 8D 65 F0 41 5E 5F)
//aobScan(Card, E9 ?? ?? ?? ?? 90 48 8D 65 C8 41 5F)
CardSkills:
db bytes1
Card:
db bytes2
dealloc(code)
unregistersymbol(CardSkills)
unregistersymbol(Card)
43
"Villager Every Turn"
Auto Assembler Script
[ENABLE]
{$lua}
if syntaxcheck then return end
if LaunchMonoDataCollector() ~= 0 then
local mId = mono_findMethod('Assembly-CSharp', 'TurnManager', 'EndTurnBasicActions')
mono_compile_method(mId)
end
{$asm}
aobscanregion(CanSpawn,TurnManager:EndTurnBasicActions+1800,TurnManager:EndTurnBasicActions+2f00,41 FF D3 48 83 C4 20 40 88 85 ?? ?? ?? ?? 66)
registersymbol(CanSpawn)
aobscanregion(Beast,TurnManager:EndTurnBasicActions+2f00,TurnManager:EndTurnBasicActions+30ff,41 FF D3 48 83 C4 20 85 C0 0F 84 ?? ?? ?? ?? 48 8B 85 ?? ?? ?? ?? 48 8B 40 50)
registersymbol(Beast)
aobscanregion(Demon,TurnManager:EndTurnBasicActions+3100,TurnManager:EndTurnBasicActions+32ff,41 FF D3 48 83 C4 20 85 C0 0F 84 ?? ?? ?? ?? 48 8B 85 ?? ?? ?? ?? 48 8B 40 50)
registersymbol(Demon)
aobscanregion(Dwarf,TurnManager:EndTurnBasicActions+3300,TurnManager:EndTurnBasicActions+34ff,41 FF D3 48 83 C4 20 85 C0 0F 84 ?? ?? ?? ?? 48 8B 85 ?? ?? ?? ?? 48 8B 40 50)
registersymbol(Dwarf)
aobscanregion(Elven,TurnManager:EndTurnBasicActions+3500,TurnManager:EndTurnBasicActions+36ff,41 FF D3 48 83 C4 20 85 C0 0F 84 ?? ?? ?? ?? 48 8B 85 ?? ?? ?? ?? 48 8B 40 50)
registersymbol(Elven)
aobscanregion(Goblin,TurnManager:EndTurnBasicActions+3700,TurnManager:EndTurnBasicActions+38ff,41 FF D3 48 83 C4 20 85 C0 0F 84 ?? ?? ?? ?? 48 8B 85 ?? ?? ?? ?? 48 8B 40 50)
registersymbol(Goblin)
aobscanregion(Human,TurnManager:EndTurnBasicActions+3900,TurnManager:EndTurnBasicActions+3aff,41 FF D3 48 83 C4 20 85 C0 0F 84 ?? ?? ?? ?? 48 8B 85 ?? ?? ?? ?? 48 8B 40 50)
registersymbol(Human)
aobscanregion(Orc,TurnManager:EndTurnBasicActions+3b00,TurnManager:EndTurnBasicActions+3cff,41 FF D3 48 83 C4 20 85 C0 0F 84 ?? ?? ?? ?? 48 8B 85 ?? ?? ?? ?? 48 8B 40 50)
registersymbol(Orc)
alloc(spwnBeast,4,TurnManager:EndTurnBasicActions)
alloc(spwnDemon,4,TurnManager:EndTurnBasicActions)
alloc(spwnDwarf,4,TurnManager:EndTurnBasicActions)
alloc(spwnElven,4,TurnManager:EndTurnBasicActions)
alloc(spwnGoblin,4,TurnManager:EndTurnBasicActions)
alloc(spwnHuman,4,TurnManager:EndTurnBasicActions)
alloc(spwnOrc,4,TurnManager:EndTurnBasicActions)
registersymbol(spwnBeast)
registersymbol(spwnDemon)
registersymbol(spwnDwarf)
registersymbol(spwnElven)
registersymbol(spwnGoblin)
registersymbol(spwnHuman)
registersymbol(spwnOrc)
alloc(code, 2048, TheAwakening:TurnManager:EndTurnBasicActions)
code:
checkBeast:
cmp dword ptr[spwnBeast],#1
je spawnBeast
call r11
add rsp,20
jmp returnBeast
checkDemon:
cmp dword ptr[spwnDemon],#1
je spawnDemon
call r11
add rsp,20
jmp returnDemon
checkDwarf:
cmp dword ptr[spwnDwarf],#1
je spawnDwarf
call r11
add rsp,20
jmp returnDwarf
checkElven:
cmp dword ptr[spwnElven],#1
je spawnElven
call r11
add rsp,20
jmp returnElven
checkGoblin:
cmp dword ptr[spwnGoblin],#1
je spawnGoblin
call r11
add rsp,20
jmp returnGoblin
checkHuman:
cmp dword ptr[spwnHuman],#1
je spawnHuman
call r11
add rsp,20
jmp returnHuman
checkOrc:
cmp dword ptr[spwnOrc],#1
je spawnOrc
call r11
add rsp,20
jmp returnOrc
CanSpawn:
db 0C 01 90
Beast:
jmp checkBeast
nop
nop
returnBeast:
Demon:
jmp checkDemon
nop
nop
returnDemon:
Dwarf:
jmp checkDwarf
nop
nop
returnDwarf:
Elven:
jmp checkElven
nop
nop
returnElven:
Goblin:
jmp checkGoblin
nop
nop
returnGoblin:
Human:
jmp checkHuman
nop
nop
returnHuman:
Orc:
jmp checkOrc
nop
nop
returnOrc:
Beast+bc:
spawnBeast:
Demon+bc:
spawnDemon:
Dwarf+bc:
spawnDwarf:
Elven+bc:
spawnElven:
Goblin+bc:
spawnGoblin:
Human+bc:
spawnHuman:
Orc+bc:
spawnOrc:
[DISABLE]
CanSpawn:
db 41 FF D3
Beast:
call r11
add rsp,20
Demon:
call r11
add rsp,20
Dwarf:
call r11
add rsp,20
Elven:
call r11
add rsp,20
Goblin:
call r11
add rsp,20
Human:
call r11
add rsp,20
Orc:
call r11
add rsp,20
dealloc(spwnBeast)
dealloc(spwnDemon)
dealloc(spwnDwarf)
dealloc(spwnElven)
dealloc(spwnGoblin)
dealloc(spwnHuman)
dealloc(spwnOrc)
dealloc(code)
unregistersymbol(CanSpawn)
unregistersymbol(spwnBeast)
unregistersymbol(spwnDemon)
unregistersymbol(spwnDwarf)
unregistersymbol(spwnElven)
unregistersymbol(spwnGoblin)
unregistersymbol(spwnHuman)
unregistersymbol(spwnOrc)
unregistersymbol(Beast)
unregistersymbol(Demon)
unregistersymbol(Dwarf)
unregistersymbol(Elven)
unregistersymbol(Goblin)
unregistersymbol(Human)
unregistersymbol(Orc)
44
"Spawn Beast"
0:No
1:Yes
4 Bytes
spwnBeast
49
"Spawn Demon"
0:No
1:Yes
4 Bytes
spwnDemon
48
"Spawn Dwarf"
0:No
1:Yes
4 Bytes
spwnDwarf
47
"Spawn Elven"
0:No
1:Yes
4 Bytes
spwnElven
46
"Spawn Goblin"
0:No
1:Yes
4 Bytes
spwnGoblin
45
"Spawn Human"
0:No
1:Yes
4 Bytes
spwnHuman
50
"Spawn Orc"
0:No
1:Yes
4 Bytes
spwnOrc
107154
"Character Base Address Scan Initialization (Activate This First)"
800000
Auto Assembler Script
[ENABLE]
registersymbol(Character_basepointer)
registersymbol(Character_update_enable)
registersymbol(Character_set_enable)
alloc(Character_basepointer, 8)
alloc(Character_update_enable, 4)
alloc(Character_set_enable, 4)
[DISABLE]
unregistersymbol(Character_basepointer)
unregistersymbol(Character_update_enable)
unregistersymbol(Character_set_enable)
dealloc(Character_basepointer)
dealloc(Character_update_enable)
dealloc(Character_set_enable)
107155
"Character Base Address Scan (To Activate: Select Expedition / View Character, To Update: Select Expedition / View Character)"
804000
Auto Assembler Script
[ENABLE]
label(Character_savedAOB)
label(Character_returnhere)
label(Character_originalcode)
label(Character_exit)
label(Character_update_exit)
label(Character_set_exit)
registersymbol(Character_savedAOB)
aobscan(Character_searchedAOB, 48 63 86 84 00 00 00 85 C0 7C ??)
alloc(Character_newmem, 2048, Character_searchedAOB)
alloc(Character_temp1, 4, Character_searchedAOB)
Character_newmem:
mov [Character_temp1], rcx
cmp dword ptr [Character_update_enable], #0
je Character_update_exit
mov [Character_basepointer], rsi
Character_update_exit:
cmp dword ptr [Character_set_enable], #0
je Character_set_exit
mov rcx, [rsi+88]
mov [rsi+84], rcx
Character_set_exit:
mov rcx, [Character_temp1]
Character_originalcode:
db 48 63 86 84 00 00 00
//mov eax,[eax+54]
//test eax,eax
Character_exit:
jmp Character_returnhere
Character_searchedAOB:
Character_savedAOB:
jmp Character_newmem
nop
nop
Character_returnhere:
[DISABLE]
Character_savedAOB:
db 48 63 86 84 00 00 00
//mov eax,[eax+54]
//test eax,eax
unregistersymbol(Character_savedAOB)
dealloc(Character_newmem)
dealloc(Character_temp1)
107156
"Movement Points Set to Max?"
0:No
1:Yes
FF8000
4 Bytes
Character_set_enable
107157
"Character Update Base Address?"
0:No
1:Yes
FF8000
4 Bytes
Character_update_enable
107158
"Character Stats"
1
107170
"Base Address"
4 Bytes
Character_basepointer
0
107177
"uniqueCharacterID"
4 Bytes
Character_basepointer
78
107180
"movementPoints"
4 Bytes
Character_basepointer
84
107181
"maxMovementPoints"
4 Bytes
Character_basepointer
88
107183
"baseAttributesIterationIndex"
4 Bytes
Character_basepointer
90
107178
"level"
4 Bytes
Character_basepointer
7C
107179
"haveEventAction"
0:No
1:Yes
Byte
Character_basepointer
80
107182
"wellFedLevel"
4 Bytes
Character_basepointer
8C
107184
"playerIterationIndex"
4 Bytes
Character_basepointer
94
107419
"attributes"
1
107420
"Base Address"
4 Bytes
Character_basepointer
0
48
107477
"iteration"
4 Bytes
Character_basepointer
24
48
107475
"dirty"
0:No
1:Yes
Byte
Character_basepointer
20
48
107421
"attributes"
1
107422
"Base Address"
4 Bytes
Character_basepointer
0
18
48
107423
"Tags"
1
107424
"Slot 1"
String
32
1
0
1
Character_basepointer
14
10
20
20
10
48
107507
"Slot 1"
4 Bytes
Character_basepointer
20
28
10
48
107498
"Slot 2"
String
32
1
0
1
Character_basepointer
14
10
28
20
10
48
107450
"Slot 2"
4 Bytes
Character_basepointer
24
28
10
48
107497
"Slot 3"
String
32
1
0
1
Character_basepointer
14
10
30
20
10
48
107506
"Slot 3"
4 Bytes
Character_basepointer
28
28
10
48
107496
"Slot 4"
String
32
1
0
1
Character_basepointer
14
10
38
20
10
48
107505
"Slot 4"
4 Bytes
Character_basepointer
2C
28
10
48
107495
"Slot 5"
String
32
1
0
1
Character_basepointer
14
10
40
20
10
48
107512
"Slot 5"
4 Bytes
Character_basepointer
30
28
10
48
107494
"Slot 6"
String
32
1
0
1
Character_basepointer
14
10
48
20
10
48
107511
"Slot 6"
4 Bytes
Character_basepointer
34
28
10
48
107493
"Slot 7"
String
32
1
0
1
Character_basepointer
14
10
50
20
10
48
107510
"Slot 7"
4 Bytes
Character_basepointer
38
28
10
48
107492
"Slot 8"
String
32
1
0
1
Character_basepointer
14
10
58
20
10
48
107509
"Slot 8"
4 Bytes
Character_basepointer
3C
28
10
48
107491
"Slot 9"
String
32
1
0
1
Character_basepointer
14
10
60
20
10
48
107508
"Slot 9"
4 Bytes
Character_basepointer
40
28
10
48
107490
"Slot 10"
String
32
1
0
1
Character_basepointer
14
10
68
20
10
48
107504
"Slot 10"
4 Bytes
Character_basepointer
44
28
10
48
107489
"Slot 11"
String
32
1
0
1
Character_basepointer
14
10
70
20
10
48
107523
"Slot 11"
4 Bytes
Character_basepointer
48
28
10
48
107488
"Slot 12"
String
32
1
0
1
Character_basepointer
14
10
78
20
10
48
107524
"Slot 12"
4 Bytes
Character_basepointer
4C
28
10
48
107487
"Slot 13"
String
32
1
0
1
Character_basepointer
14
10
80
20
10
48
107525
"Slot 13"
4 Bytes
Character_basepointer
50
28
10
48
107486
"Slot 14"
String
32
1
0
1
Character_basepointer
14
10
88
20
10
48
107526
"Slot 14"
4 Bytes
Character_basepointer
54
28
10
48
107485
"Slot 15"
String
32
1
0
1
Character_basepointer
14
10
90
20
10
48
107527
"Slot 15"
4 Bytes
Character_basepointer
58
28
10
48
107484
"Slot 16"
String
32
1
0
1
Character_basepointer
14
10
98
20
10
48
107528
"Slot 16"
4 Bytes
Character_basepointer
5C
28
10
48
107483
"Slot 17"
String
32
1
0
1
Character_basepointer
14
10
A0
20
10
48
107529
"Slot 17"
4 Bytes
Character_basepointer
60
28
10
48
107482
"Slot 18"
String
32
1
0
1
Character_basepointer
14
10
A8
20
10
48
107530
"Slot 18"
4 Bytes
Character_basepointer
64
28
10
48
107481
"Slot 19"
String
32
1
0
1
Character_basepointer
14
10
B0
20
10
48
107531
"Slot 19"
4 Bytes
Character_basepointer
68
28
10
48
107480
"Slot 20"
String
32
1
0
1
Character_basepointer
14
10
B8
20
10
48
107532
"Slot 20"
4 Bytes
Character_basepointer
6C
28
10
48
107503
"Slot 21"
String
32
1
0
1
Character_basepointer
14
10
C0
20
10
48
107513
"Slot 21"
4 Bytes
Character_basepointer
70
28
10
48
107502
"Slot 22"
String
32
1
0
1
Character_basepointer
14
10
C8
20
10
48
107514
"Slot 22"
4 Bytes
Character_basepointer
74
28
10
48
107501
"Slot 23"
String
32
1
0
1
Character_basepointer
14
10
D0
20
10
48
107515
"Slot 23"
4 Bytes
Character_basepointer
78
28
10
48
107500
"Slot 24"
String
32
1
0
1
Character_basepointer
14
10
D8
20
10
48
107516
"Slot 24"
4 Bytes
Character_basepointer
7C
28
10
48
107499
"Slot 25"
String
32
1
0
1
Character_basepointer
14
10
E0
20
10
48
107517
"Slot 25"
4 Bytes
Character_basepointer
80
28
10
48
107476
"useCusomEffects"
0:No
1:Yes
Byte
Character_basepointer
21
48
107185
"equipmentChanged"
0:No
1:Yes
Byte
Character_basepointer
98
106989
"Item Base Address Scan Initialization (Activate This First)"
800000
Auto Assembler Script
[ENABLE]
registersymbol(Item_basepointer)
registersymbol(Item_quantity_basepointer)
registersymbol(Item_update_enable)
registersymbol(Item_set_enable)
registersymbol(Item_weightset_enable)
registersymbol(Item_quantityset_enable)
alloc(Item_basepointer, 8)
alloc(Item_quantity_basepointer, 8)
alloc(Item_update_enable, 4)
alloc(Item_set_enable, 4)
alloc(Item_weightset_enable, 4)
alloc(Item_quantityset_enable, 4)
[DISABLE]
unregistersymbol(Item_basepointer)
unregistersymbol(Item_quantity_basepointer)
unregistersymbol(Item_update_enable)
unregistersymbol(Item_set_enable)
unregistersymbol(Item_weightset_enable)
unregistersymbol(Item_quantityset_enable)
dealloc(Item_basepointer)
dealloc(Item_quantity_basepointer)
dealloc(Item_update_enable)
dealloc(Item_set_enable)
dealloc(Item_weightset_enable)
dealloc(Item_quantityset_enable)
106990
"Item Base Address Scan (To Activate: View Inventory, To Update: View Inventory)"
804000
Auto Assembler Script
[ENABLE]
label(Item_GetWeight_savedAOB)
label(Item_GetWeight_returnhere)
label(Item_GetWeight_originalcode)
label(Item_GetWeight_exit)
label(Item_GetWeight_update_exit)
label(Item_GetWeight_set_exit)
label(Item_GetWeight_weightset_exit)
label(Item_GetWeight_quantityset_exit)
registersymbol(Item_GetWeight_savedAOB)
//0F92D857 - EB 00 - jmp 0F92D859
//0F92D859 - 8B 45 A0 - mov eax,[ebp-60]
// TheAwakening:GroupBase:GetWeight+b4
//0F92D85C - 8B 40 5C - mov eax,[eax+5C]
//0F92D85F - 8B 4E 0C - mov ecx,[esi+0C]
//0F92D862 - 0FAF C1 - imul eax,ecx
//0F92D865 - 50 - push eax
//0F92D866 - DB 04 24 - fild dword ptr [esp]
aobscan(Item_GetWeight_searchedAOB, 49 63 85 9C 00 00 00 48 63 4F 18 0F AF C1)
alloc(Item_GetWeight_newmem, 2048, Item_GetWeight_searchedAOB)
Item_GetWeight_newmem:
cmp dword ptr [Item_update_enable], #0
je Item_GetWeight_update_exit
//mov [Item_basepointer], eax
//mov [Item_quantity_basepointer], esi
Item_GetWeight_update_exit:
cmp dword ptr [Item_set_enable], #0
je Item_GetWeight_set_exit
Item_GetWeight_set_exit:
cmp dword ptr [Item_weightset_enable], #0
je Item_GetWeight_weightset_exit
mov [r13+9c], #0
Item_GetWeight_weightset_exit:
cmp dword ptr [Item_quantityset_enable], #0
je Item_GetWeight_quantityset_exit
mov [rdi+18], #9999
Item_GetWeight_quantityset_exit:
Item_GetWeight_originalcode:
db 49 63 85 9C 00 00 00
//movsxd rax,dword ptr [r13+0000009C]
Item_GetWeight_exit:
jmp Item_GetWeight_returnhere
Item_GetWeight_searchedAOB:
Item_GetWeight_savedAOB:
jmp Item_GetWeight_newmem
nop
nop
Item_GetWeight_returnhere:
[DISABLE]
Item_GetWeight_savedAOB:
db 49 63 85 9C 00 00 00
//movsxd rax,dword ptr [r13+0000009C]
unregistersymbol(Item_GetWeight_savedAOB)
dealloc(Item_GetWeight_newmem)
107000
"Item Base Address Scan (To Activate: Mouseover Inventory Item, To Update: Mouseover Inventory Item)"
804000
Auto Assembler Script
[ENABLE]
label(Item_SetMainInfo_savedAOB)
label(Item_SetMainInfo_returnhere)
label(Item_SetMainInfo_originalcode)
label(Item_SetMainInfo_exit)
label(Item_SetMainInfo_update_exit)
label(Item_SetMainInfo_set_exit)
label(Item_SetMainInfo_weightset_exit)
label(Item_SetMainInfo_quantityset_exit)
registersymbol(Item_SetMainInfo_savedAOB)
//InfoBox:SetMainInfo+32b - 49 63 87 9C000000 - movsxd rax,dword ptr [r15+0000009C]
//InfoBox:SetMainInfo+332 - 48 63 4E 18 - movsxd rcx,dword ptr [rsi+18]
//InfoBox:SetMainInfo+336 - 0FAF C1 - imul eax,ecx
aobscan(Item_SetMainInfo_searchedAOB, 49 63 87 9C 00 00 00 48 63 4E 18 0F AF C1)
alloc(Item_SetMainInfo_newmem, 2048, Item_SetMainInfo_searchedAOB)
Item_SetMainInfo_newmem:
cmp dword ptr [Item_update_enable], #0
je Item_SetMainInfo_update_exit
mov [Item_basepointer], r15
mov [Item_quantity_basepointer], rsi
Item_SetMainInfo_update_exit:
cmp dword ptr [Item_set_enable], #0
je Item_SetMainInfo_set_exit
Item_SetMainInfo_set_exit:
cmp dword ptr [Item_weightset_enable], #0
je Item_SetMainInfo_weightset_exit
mov [r15+9C], #0
Item_SetMainInfo_weightset_exit:
cmp dword ptr [Item_quantityset_enable], #0
je Item_SetMainInfo_quantityset_exit
mov [rsi+18], #9999
Item_SetMainInfo_quantityset_exit:
Item_SetMainInfo_originalcode:
db 49 63 87 9C 00 00 00
//movsxd rax,dword ptr [r15+0000009C]
Item_SetMainInfo_exit:
jmp Item_SetMainInfo_returnhere
Item_SetMainInfo_searchedAOB:
Item_SetMainInfo_savedAOB:
jmp Item_SetMainInfo_newmem
nop
nop
Item_SetMainInfo_returnhere:
[DISABLE]
Item_SetMainInfo_savedAOB:
db 49 63 87 9C 00 00 00
//movsxd rax,dword ptr [r15+0000009C]
unregistersymbol(Item_SetMainInfo_savedAOB)
dealloc(Item_SetMainInfo_newmem)
106991
"Item Weight Set to 0?"
0:No
1:Yes
FF8000
4 Bytes
Item_weightset_enable
106998
"Item Quantity Set to Massive?"
0:No
1:Yes
FF8000
4 Bytes
Item_quantityset_enable
106992
"Item Update Base Address?"
0:No
1:Yes
FF8000
4 Bytes
Item_update_enable
106993
"Item Stats"
1
106994
"Base Address"
4 Bytes
Item_basepointer
0
107595
"attributes"
1
107596
"Base Address"
4 Bytes
Item_basepointer
0
48
107597
"attributes"
1
107598
"Base Address"
4 Bytes
Item_basepointer
0
18
48
107599
"Tags"
1
107600
"Slot 1"
String
32
1
0
1
Item_basepointer
14
10
20
20
18
48
107626
"Slot 1"
4 Bytes
Item_basepointer
20
28
10
48
107601
"Slot 2"
String
32
1
0
1
Item_basepointer
14
10
28
20
18
48
107654
"Slot 2"
4 Bytes
Item_basepointer
24
28
10
48
107602
"Slot 3"
String
32
1
0
1
Item_basepointer
14
10
30
20
18
48
107655
"Slot 3"
4 Bytes
Item_basepointer
28
28
10
48
107603
"Slot 4"
String
32
1
0
1
Item_basepointer
14
10
38
20
18
48
107656
"Slot 4"
4 Bytes
Item_basepointer
2C
28
10
48
107657
"Slot 5"
String
32
1
0
1
Item_basepointer
14
10
40
20
18
48
107658
"Slot 5"
4 Bytes
Item_basepointer
30
28
10
48
107659
"Slot 6"
String
32
1
0
1
Item_basepointer
14
10
48
20
18
48
107660
"Slot 6"
4 Bytes
Item_basepointer
34
28
10
48
107661
"Slot 7"
String
32
1
0
1
Item_basepointer
14
10
50
20
18
48
107662
"Slot 7"
4 Bytes
Item_basepointer
38
28
10
48
107663
"Slot 8"
String
32
1
0
1
Item_basepointer
14
10
58
20
18
48
107664
"Slot 8"
4 Bytes
Item_basepointer
3C
28
10
48
107665
"Slot 9"
String
32
1
0
1
Item_basepointer
14
10
60
20
18
48
107666
"Slot 9"
4 Bytes
Item_basepointer
40
28
10
48
107667
"Slot 10"
String
32
1
0
1
Item_basepointer
14
10
68
20
18
48
107668
"Slot 10"
4 Bytes
Item_basepointer
44
28
10
48
107669
"Slot 11"
String
32
1
0
1
Item_basepointer
14
10
70
20
18
48
107670
"Slot 11"
4 Bytes
Item_basepointer
48
28
10
48
107671
"Slot 12"
String
32
1
0
1
Item_basepointer
14
10
78
20
18
48
107672
"Slot 12"
4 Bytes
Item_basepointer
4C
28
10
48
107651
"dirty"
0:No
1:Yes
Byte
Item_basepointer
20
30
107652
"useCusomEffects"
0:No
1:Yes
Byte
Item_basepointer
21
30
107653
"iteration"
4 Bytes
Item_basepointer
24
30
107002
"rarity"
4 Bytes
Item_basepointer
98
106999
"weight"
4 Bytes
Item_basepointer
9C
107003
"Item Quantity Stats"
1
107004
"Base Address"
4 Bytes
Item_quantity_basepointer
0
107001
"quantity"
4 Bytes
Item_quantity_basepointer
18
==========================
Unlimited Carry Weight:
Sets total weight of expeditions/settlement to 0 and max carry weight of every character to 5000.
==========================
Production Cost = 10:
Sets to 10 production costs of every task in the game, i.e. gathering/crafting/constructing.
==========================
Production Speed = 1000:
Sets to 1000 production speed of every character. Equivalent to 100 gathering/production.
==========================
Free Crafting:
Crafting/constructing is free, but still needs enough resources to build at least one item/building.
==========================
Always Good Quality Items:
Always craft good quality items. Even without smithy (UI still shows that there is no smithy).
==========================
Unlimited Buildings:
Build as many as you want.
==========================
Reveal Map:
Toggle this cheat and move any expedition for at least 1 hex. After that you can turn off cheat, effect seems to be permanent. I recommend to turn off enemy unit animations and enemy movement focus on options.
==========================
Item Count:
Changes item count on mouseover in inventory screen to X. Value can be changed.
==========================
Unlocking Resource Adds X:
Every time you unlock a resource you'll get X amount of that resource. You can change the value. Default is 5.
==========================
Infinite MP:
Infinite movement points of player's expeditions.
==========================
Level Up Boost:
Make sure that player pointer is updated, otherwise you'll recieve +0 on level up.
Pointer can be updated even after activation, but BEFORE actual characters leveling up.
Check 'Player stats' entry of the table. If it works then everything is fine.
To update pointer just go to map view and select expedition or settlement, or you can open some menu, e.g. Research screen, and close it (something will be selected automatically).
Every time when characters level up, they will get +X to random attribute. Value can be changed. In the game by default they randomly get +1 or +2.
Non-player characters will recieve +0 on level up.
==========================
Easy Andvancement:
Characters level up for each 10 points of experience. Same rule for research points.
==========================
No Heavy Wounds Deaths:
Characters will never die.
===========================
Super Heal:
Characters are fully healed every turn.
==========================
Unlimited Reshuffles:
No limit for reshuffles. All types of reshuffles become free.
==========================
Perfect Dismantling:
Dismantling returns 100% of resources. Catalyst wont be returned!
==========================
Well Fed Level:
At the end of each turn characters will get all bonuses like they have 10 food varieties. Current amount of food variety doesn't matter.
==========================
Gathering Area:
Sets gathering area to 10. Value can be changed in script if you want. Overwrites Blessed Paths bonus. So every group will have gathering area equal to 10. Settlement check this value at the beginning of every turn, but expedition only once, when you set encampment. So it should work for expeditions even after cheat turned off and save/load cycles.
==========================
Boosted Cards:
Player's card will have boosted stats in every challenge no matter of attributes and skills. Seems to be work even in Auto Resolve.
==========================
Villager Every Turn:
Spawns selected races in settlement every turn. It contains slow aob searches, so when it's toggled you'll need to wait a bit... or more if your computer is really bad. When it's toggled on but no races are chosen, game checks probabilites normally like there is no cheat.
If it doesn't work, please report about it on forum(link is below). Describe your problem and attach your PC specs. I'll try to fix it.
==========================
Link to the forum thread:
http://fearlessrevolution.com/viewtopic.php?f=4&t=379