Antal1987
Warlord
After first publication about my trainer, I decided to share info about very cool game hacks I've implemented in it.
Currently there are:
Part 1. Unhappiness.
There are 2 kind of Wonders in game that increase happiness in all cities: "Hanging Gardens" (Until developing "Invention") and "Cure Of Cancer".
Game developers have implemented some conditional rules (one for each wonder).
Each rule checks actual state for correspond wonder and increases by 1 the count of happy people only if that Wonder belongs to the giving nation and it is not obsolete.
increase command in both cases is the same:
inc es:Current_City_Happy
where es:Current_City_Happy is the internal address of the variable, that contains happy people count for current computing city.
These commands are located in the exe-file at 0x12405 and 0x12427 addresses respectively ("Hanging Gardens" and "Cure Of Cancer")
Each command have length of 5 bytes.
There is the pattern of that command in the exe-file:
26 XX XX DE 00
Bytes 1 and 2 (counting from 0) are irrelevant.
But bytes DE 00 represents 16-bit offset of the es:Current_City_Happy variable, that is 16-bit too.
So, if you midify offset to DF 00, it will point to the highest byte of 16-bit variable.
And if the command is executed it will increase Current_City_Happy not by 1 but by 256!
Therefore, here is the patch:
1. Locate pattern in both addresses: 0x12405 and 0x12427.
2. Modify DE 00 to DF 00
3. Enjoy
Also you can make the "Handing Gardens" become eternal by changing its obsolete advance.
This advance is stored at 0x905404 in exe-file and is equal to 0x14
You have to change it to 0x7F so the Wonder will never be obsoleted.
You can also do it with other wonders (from 0x905402 up to 90542A: 2 bytes for the wonder)
P.S. Applying this patch allow to reduce unhappines at all after building "Hanging Gardens".
To be continued...
Currently there are:
- Zero unhappiness, all content people are happy
- Zerro pollution
- Zero corruption
- Grassland fix. Grassland terrain produce shields even if it has no special mark (green shield on the map square).
Part 1. Unhappiness.
There are 2 kind of Wonders in game that increase happiness in all cities: "Hanging Gardens" (Until developing "Invention") and "Cure Of Cancer".
Game developers have implemented some conditional rules (one for each wonder).
Each rule checks actual state for correspond wonder and increases by 1 the count of happy people only if that Wonder belongs to the giving nation and it is not obsolete.
increase command in both cases is the same:
inc es:Current_City_Happy
These commands are located in the exe-file at 0x12405 and 0x12427 addresses respectively ("Hanging Gardens" and "Cure Of Cancer")
Each command have length of 5 bytes.
There is the pattern of that command in the exe-file:
26 XX XX DE 00
But bytes DE 00 represents 16-bit offset of the es:Current_City_Happy variable, that is 16-bit too.
So, if you midify offset to DF 00, it will point to the highest byte of 16-bit variable.
And if the command is executed it will increase Current_City_Happy not by 1 but by 256!
Therefore, here is the patch:
1. Locate pattern in both addresses: 0x12405 and 0x12427.
2. Modify DE 00 to DF 00
3. Enjoy
Also you can make the "Handing Gardens" become eternal by changing its obsolete advance.
This advance is stored at 0x905404 in exe-file and is equal to 0x14
You have to change it to 0x7F so the Wonder will never be obsoleted.
You can also do it with other wonders (from 0x905402 up to 90542A: 2 bytes for the wonder)
P.S. Applying this patch allow to reduce unhappines at all after building "Hanging Gardens".
To be continued...