Ask about cheats/tables for single player games here
SlipperyEel
Expert Cheater
Posts: 76 Joined: Wed Aug 30, 2017 3:42 am
Reputation: 42
Post
by SlipperyEel » Wed Mar 27, 2024 3:01 pm
Game Name: Millennia
Game Engine: Unity
Game Version: 1.0.2.F
Options Required: Wealth, Innovation, Research, Culture, Government, Exploration, Warfare, Engineering, Diplomacy, Improvement Points, etc., army/unit inf move and inf health
Steam Website:
Other Info: After playing with searching for values for a bit, it seems like most values are Floats, but the addresses vary on save/load and even in the same session they will all change when you progress to a new Age.
Last edited by
SlipperyEel on Wed Mar 27, 2024 3:52 pm, edited 1 time in total.
SmileyfaceSmile
What is cheating?
Posts: 3 Joined: Wed Mar 27, 2024 3:06 pm
Reputation: 0
Post
by SmileyfaceSmile » Wed Mar 27, 2024 3:07 pm
Have noticed the game handling it poorly if you give units too much movement, 90 has been the sweetspot for me
Edit: City pointers would also be great
Darkedone02
Expert Cheater
Posts: 953 Joined: Thu Mar 02, 2017 11:42 pm
Reputation: 111
Post
by Darkedone02 » Wed Mar 27, 2024 3:33 pm
Some of the points in the game are 4 bytes and "S"'.
SlipperyEel
Expert Cheater
Posts: 76 Joined: Wed Aug 30, 2017 3:42 am
Reputation: 42
Post
by SlipperyEel » Wed Mar 27, 2024 3:35 pm
SmileyfaceSmile wrote: ↑ Wed Mar 27, 2024 3:07 pm
Have noticed the game handling it poorly if you give units too much movement, 90 has been the sweetspot for me
I just added Warfare points and used the Force March ability to reset their movement, and then every so often the Reinforcements ability since the former takes off 10% health. I didn't encounter any issues with that approach. So maybe rather than infinite movement, a reset movement function would be a better idea?
gotexan8
What is cheating?
Posts: 4 Joined: Sat Feb 24, 2018 4:13 pm
Reputation: 1
Post
by gotexan8 » Wed Mar 27, 2024 3:45 pm
Hotfix version 1.0.2.F is now out.
matt1713
Expert Cheater
Posts: 53 Joined: Tue Sep 29, 2020 1:32 pm
Reputation: 8
Post
by matt1713 » Wed Mar 27, 2024 6:14 pm
Anyone figure out how to change the culture/warfare/improvement points? Every time I think I narrow them down, the value changes are ignored. Only the turn count seems to work.
Nevermind, was not using float values.
Last edited by
matt1713 on Wed Mar 27, 2024 11:00 pm, edited 1 time in total.
SmileyfaceSmile
What is cheating?
Posts: 3 Joined: Wed Mar 27, 2024 3:06 pm
Reputation: 0
Post
by SmileyfaceSmile » Wed Mar 27, 2024 7:52 pm
matt1713 wrote: ↑ Wed Mar 27, 2024 6:14 pm
Anyone figure out how to change the culture/warfare/improvement points? Every time I think I narrow them down, the value changes are ignored. Only the turn count seems to work.
They are stored as their value in float values, but often change when you switch government
emdasdas
Cheater
Posts: 45 Joined: Mon Aug 01, 2022 5:50 pm
Reputation: 4
Post
by emdasdas » Thu Mar 28, 2024 1:50 am
thanks for the page, the table is appreciated
eternien
Expert Cheater
Posts: 87 Joined: Sat May 13, 2017 11:27 am
Reputation: 8
Post
by eternien » Thu Mar 28, 2024 8:50 am
+1 for a table for this game
SlipperyEel
Expert Cheater
Posts: 76 Joined: Wed Aug 30, 2017 3:42 am
Reputation: 42
Post
by SlipperyEel » Thu Mar 28, 2024 8:59 am
SlipperyEel wrote: ↑ Wed Mar 27, 2024 3:35 pm
I just added Warfare points and used the Force March ability to reset their movement, and then every so often the Reinforcements ability since the former takes off 10% health.
I just realised that using the Reinforcements ability drains the unit's Combat XP. Which is kinda bad when you use it repeatedly, lol. So I would advise against anyone spamming that, unless you first find their existing XP value so you can keep resetting it back.
Edit: So if you manage to get into the variant Age of Heroes as your third age, you can unlock the Eye of Ra power that replenishes an army with no downsides:
Although it requires first doing the appropriate research and constructing the building to allow heroes access to the additional quest reward. The description says it is replaced in the 5th age, so I assume there will be some generic ability everyone has access to at that point (this just gives it to you early under another name).
Last edited by
SlipperyEel on Thu Mar 28, 2024 10:57 am, edited 1 time in total.
koyterrr
What is cheating?
Posts: 3 Joined: Thu Mar 28, 2024 9:31 am
Reputation: 1
Post
by koyterrr » Thu Mar 28, 2024 9:32 am
guys, so there is no way to hack this game now?
matt1713
Expert Cheater
Posts: 53 Joined: Tue Sep 29, 2020 1:32 pm
Reputation: 8
Post
by matt1713 » Thu Mar 28, 2024 3:29 pm
I'm having difficulty trying to find where on earth your total influence points are. Has anyone figured out where to find/manipulate the influence points?
tsfortna
Noobzor
Posts: 12 Joined: Sat Dec 15, 2018 4:56 pm
Reputation: 3
Post
by tsfortna » Thu Mar 28, 2024 3:39 pm
Devs removed the console commands.
Last edited by
tsfortna on Thu Mar 28, 2024 9:34 pm, edited 1 time in total.
imjustmaxie
Expert Cheater
Posts: 222 Joined: Mon Aug 06, 2018 6:00 pm
Reputation: 187
Post
by imjustmaxie » Thu Mar 28, 2024 4:44 pm
Game looks interesting.
BabyGroot
Table Makers
Posts: 1399 Joined: Sun Mar 29, 2020 1:39 pm
Reputation: 2295
Post
by BabyGroot » Thu Mar 28, 2024 7:11 pm
First -
Open tab research > after that press shift and click research [ farming, scouting or worker (just anything) ].
Second -
Active Script, Waiting For AoB Read.
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>105332</ID>
<Description>"Research Done"</Description>
<LastState/>
<Color>008080</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : Millennia.exe
Version:
Date : 2024-03-29
Author : BabyGroot
This script does blah blah blah
}
[ENABLE]
aobscan(pData_Dev_EnableTech,0F B6 00 85 C0 74 33) // should be unique
alloc(newmem,$1000,pData_Dev_EnableTech)
label(code)
label(return)
newmem:
code:
mov byte ptr [rax],1
db 0F B6 00
test eax,eax
jmp return
pData_Dev_EnableTech:
jmp newmem
return:
registersymbol(pData_Dev_EnableTech)
[DISABLE]
pData_Dev_EnableTech:
db 0F B6 00 85 C0
unregistersymbol(pData_Dev_EnableTech)
dealloc(newmem)
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>105306</ID>
<Description>"Game Data"</Description>
<LastState Activated="1"/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : Millennia.exe
Version:
Date : 2024-03-29
Author : BabyGroot
This script does blah blah blah
}
[ENABLE]
aobscan(pData_Game,48 8B 86 80 02 00 00 48 83) // should be unique
alloc(newmem,$1000,pData_Game)
alloc(pBase_Game,8)
registersymbol(pBase_Game)
label(code)
label(return)
pBase_Game:
dd
newmem:
code:
mov [pBase_Game],rsi
db 48 8B 86 80 02 00 00
jmp return
pData_Game:
jmp newmem
nop 2
return:
registersymbol(pData_Game pBase_Game)
[DISABLE]
pData_Game:
db 48 8B 86 80 02 00 00
unregistersymbol(*)
dealloc(*)
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>105307</ID>
<Description>"Game Data"</Description>
<Options moHideChildren="1" moManualExpandCollapse="1"/>
<LastState Value="" RealAddress="00000000"/>
<Color>FF8000</Color>
<GroupHeader>1</GroupHeader>
<CheatEntries>
<CheatEntry>
<ID>105308</ID>
<Description>"pBase - [ Color Silver Don't Chance ]"</Description>
<LastState Value="6D2E6450" RealAddress="189FB699960"/>
<ShowAsHex>1</ShowAsHex>
<ShowAsSigned>0</ShowAsSigned>
<Color>C0C0C0</Color>
<VariableType>4 Bytes</VariableType>
<Address>[pBase_Game]</Address>
</CheatEntry>
<CheatEntry>
<ID>105339</ID>
<Description>"Player Name"</Description>
<LastState RealAddress="18A9AA6B594"/>
<ShowAsSigned>0</ShowAsSigned>
<Color>4080FF</Color>
<VariableType>String</VariableType>
<Length>128</Length>
<Unicode>1</Unicode>
<CodePage>0</CodePage>
<ZeroTerminate>1</ZeroTerminate>
<Address>[pBase_Game]+58</Address>
<Offsets>
<Offset>14</Offset>
<Offset>18</Offset>
<Offset>40</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>105340</ID>
<Description>"Nation Name"</Description>
<LastState RealAddress="189DA436FD4"/>
<ShowAsSigned>0</ShowAsSigned>
<Color>4080FF</Color>
<VariableType>String</VariableType>
<Length>128</Length>
<Unicode>1</Unicode>
<CodePage>0</CodePage>
<ZeroTerminate>1</ZeroTerminate>
<Address>[pBase_Game]+58</Address>
<Offsets>
<Offset>14</Offset>
<Offset>28</Offset>
<Offset>40</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>105303</ID>
<Description>"Game ID"</Description>
<LastState RealAddress="18A9B9AD284"/>
<ShowAsSigned>0</ShowAsSigned>
<Color>4080FF</Color>
<VariableType>String</VariableType>
<Length>128</Length>
<Unicode>1</Unicode>
<CodePage>0</CodePage>
<ZeroTerminate>1</ZeroTerminate>
<Address>[pBase_Game]+20</Address>
<Offsets>
<Offset>14</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>105309</ID>
<Description>"Turn Count"</Description>
<LastState Value="1" RealAddress="189FB699BAC"/>
<Color>0000FF</Color>
<VariableType>4 Bytes</VariableType>
<Address>[pBase_Game]+24C</Address>
</CheatEntry>
<CheatEntry>
<ID>105310</ID>
<Description>"Turn Count Limit"</Description>
<LastState Value="500" RealAddress="189FB699BB0"/>
<Color>0000FF</Color>
<VariableType>4 Bytes</VariableType>
<Address>[pBase_Game]+250</Address>
</CheatEntry>
<CheatEntry>
<ID>105311</ID>
<Description>"Turn Count Warning"</Description>
<LastState Value="475" RealAddress="189FB699BB4"/>
<Color>0000FF</Color>
<VariableType>4 Bytes</VariableType>
<Address>[pBase_Game]+254</Address>
</CheatEntry>
<CheatEntry>
<ID>105312</ID>
<Description>"Current Phase"</Description>
<LastState Value="1" RealAddress="189FB699BB8"/>
<Color>0000FF</Color>
<VariableType>4 Bytes</VariableType>
<Address>[pBase_Game]+258</Address>
</CheatEntry>
<CheatEntry>
<ID>105313</ID>
<Description>"Current Phase Begin Time"</Description>
<LastState Value="0" RealAddress="189FB699BD0"/>
<Color>0000FF</Color>
<VariableType>Float</VariableType>
<Address>[pBase_Game]+270</Address>
</CheatEntry>
<CheatEntry>
<ID>105325</ID>
<Description>"Base Year"</Description>
<LastState Value="2000" RealAddress="189FB699C20"/>
<Color>0000FF</Color>
<VariableType>4 Bytes</VariableType>
<Address>[pBase_Game]+2C0</Address>
</CheatEntry>
<CheatEntry>
<ID>105326</ID>
<Description>"Years Per Turn"</Description>
<LastState Value="50" RealAddress="189FB699C24"/>
<Color>0000FF</Color>
<VariableType>4 Bytes</VariableType>
<Address>[pBase_Game]+2C4</Address>
</CheatEntry>
<CheatEntry>
<ID>105327</ID>
<Description>"~~ Type Byte = Set Value 1 For ENABLED | Set Value 0 For DISABLED ~~"</Description>
<Options moHideChildren="1" moManualExpandCollapse="1"/>
<LastState Value="" Activated="1" RealAddress="00000000"/>
<Color>008080</Color>
<GroupHeader>1</GroupHeader>
<CheatEntries>
<CheatEntry>
<ID>105315</ID>
<Description>"Online Game?"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0:No
1:Yes
</DropDownList>
<LastState Value="0" RealAddress="189FB699BEB"/>
<Color>C0C0C0</Color>
<VariableType>Byte</VariableType>
<Address>[pBase_Game]+28B</Address>
</CheatEntry>
<CheatEntry>
<ID>105314</ID>
<Description>"Allow Victory?"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0:No/Off/Disabled
1:Yes/On/Enabled
</DropDownList>
<LastState Value="1" RealAddress="189FB699BEA"/>
<Color>808000</Color>
<VariableType>Byte</VariableType>
<Address>[pBase_Game]+28A</Address>
</CheatEntry>
<CheatEntry>
<ID>105318</ID>
<Description>"Auto Skip Human Turns?"</Description>
<DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:No/Off/Disabled
1:Yes/On/Enabled
</DropDownList>
<LastState Value="0" RealAddress="189FB699BEE"/>
<Color>808000</Color>
<VariableType>Byte</VariableType>
<Address>[pBase_Game]+28E</Address>
</CheatEntry>
<CheatEntry>
<ID>105316</ID>
<Description>"Debug Quick Build?"</Description>
<DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:No/Off/Disabled
1:Yes/On/Enabled
</DropDownList>
<LastState Value="0" RealAddress="189FB699BEC"/>
<Color>808000</Color>
<VariableType>Byte</VariableType>
<Address>[pBase_Game]+28C</Address>
</CheatEntry>
<CheatEntry>
<ID>105317</ID>
<Description>"Debug View AI Players?"</Description>
<DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:No/Off/Disabled
1:Yes/On/Enabled
</DropDownList>
<LastState Value="0" RealAddress="189FB699BED"/>
<Color>808000</Color>
<VariableType>Byte</VariableType>
<Address>[pBase_Game]+28D</Address>
</CheatEntry>
<CheatEntry>
<ID>105319</ID>
<Description>"Debug Quick Launch?"</Description>
<DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:No/Off/Disabled
1:Yes/On/Enabled
</DropDownList>
<LastState Value="0" RealAddress="189FB699BEF"/>
<Color>808000</Color>
<VariableType>Byte</VariableType>
<Address>[pBase_Game]+28F</Address>
</CheatEntry>
<CheatEntry>
<ID>105320</ID>
<Description>"Debug Hotseat?"</Description>
<DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:No/Off/Disabled
1:Yes/On/Enabled
</DropDownList>
<LastState Value="0" RealAddress="189FB699BF0"/>
<Color>808000</Color>
<VariableType>Byte</VariableType>
<Address>[pBase_Game]+290</Address>
</CheatEntry>
<CheatEntry>
<ID>105322</ID>
<Description>"Debug Combat Sim Tooltip?"</Description>
<DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:No/Off/Disabled
1:Yes/On/Enabled
</DropDownList>
<LastState Value="0" RealAddress="189FB699BF8"/>
<Color>808000</Color>
<VariableType>Byte</VariableType>
<Address>[pBase_Game]+298</Address>
</CheatEntry>
<CheatEntry>
<ID>105323</ID>
<Description>"Debug Combat Auto Reset Mode?"</Description>
<DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:No/Off/Disabled
1:Yes/On/Enabled
</DropDownList>
<LastState Value="0" RealAddress="189FB699BF9"/>
<Color>808000</Color>
<VariableType>Byte</VariableType>
<Address>[pBase_Game]+299</Address>
</CheatEntry>
<CheatEntry>
<ID>105324</ID>
<Description>"Debug Import All Goods?"</Description>
<DropDownList DescriptionOnly="1" DisplayValueAsItem="1">0:No/Off/Disabled
1:Yes/On/Enabled
</DropDownList>
<LastState Value="0" RealAddress="189FB699BFB"/>
<Color>808000</Color>
<VariableType>Byte</VariableType>
<Address>[pBase_Game]+29B</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatTable>
1. Copy code ( Select All Code And CTRL + C )
2. Open cheat engine
4. Paste Code in Cheat Engine
5. Done
VIDEO
Last edited by
BabyGroot on Sat Mar 30, 2024 10:55 am, edited 5 times in total.