Anno 1404 population reader, consumption calculator, production chain viewer and layout viewer built with Tauri + React + MUI
For large worlds it's hard to keep track of consumption. It's especially hard to re-enter the population every time into an online calculator.
The rust backend uses the windows api to ReadProcessMemory from the game to obtain the population data. This data is sent to the react frontend which displays it.
It uses a static pointer and pointer offsets to obtain the address of the population in the game. These pointers can be different in different game versions. Check out the other section on how to find these pointers.
Populations are stored differently in multiplayer. But I found out that it kinda works but only for the first player. Yes, this also means that you can see the population of other players. If you happen to have friends, go ahead and find addresses for multiplayer.
- Cheat Engine
- A savegame including:
- multiple islands (why? Reduces the amount of addresses found)
- beggers (why? beggers seem to be the civilization stage with the lowest index)
- 30 Minutes
- Open the game, load your savegame, open Cheat Engine
- In cheat engine type in the amount of beggers you have
- Press "new scan" -> "first scan"
- Repeat step 2 and press "next scan"
- Repeat step 4 until all addresses point to your amount of beggers
- Copy one of the addresses to the address list
- Right click -> "pointer scan for this address"
- Set "Max level" to 1 and Maximum offset to 10000
- Click "Ok" and save the pointer map
- Restart your game (do not close cheat engine!)
- Find the address of beggers again and add it to the address list
- Goto your pointer map -> "pointer scanner" -> "rescan memory" search for the new pointer
- If everything worked, you should see some pointer paths
- Repeat step 1 and step 6 with all addresses if you do not find any results