C02, C04 and C05 read 7 different addresses. _ TutNote 04: C01 and C09 read only the player's "Empire Treasure".
_ "Find out what addresses the code reads/writes from/to" _ D) Let's verify what addresses those codes access by right-clicking on each of them on the codelist and choosing the option Let's continue, we will probably find the meaning of some of those remaining offsets. _ Click on the diskette on CE to save the table. _ Just double-click on the description "Dword" and then change it. _ C) We already know what the offset 04f0 is, so let's change its name to "Empire Treasure". _ Now for the size enter the value in hexdecimal 0圆00 since the "Empire Treasure" has offset 0x04f0. Give it a name (for instance, PlayerInfo) and press OK and then YES. _ Select Structures->Define new structure. The "Memory dissect" window will appear with the address field already filled. Now from "Memory Viewer" select Tools->Dissect data/structures _ "Terran Alliance", "Terran", "Alan Bradley", "Earth", "Sol", etc. You can see some strings as for instance: _ B) Go to the "Memory Viewer" window and look at "Copy memory" section. Right-click on the just edited entry and choose _ Now the address is pointing to top of the structure. Add to the current address value the text " -04f0" and click OK. Choose one of the entries and double-click _ A) Make a copy on the entry on the table by copying and pasting it. An important information is that the value is stored C06 and C09 compare the value with FFFFFE0C (-500) which must _ which must be the "superior limit" of the value. _ C07 updates the value by adding the content of the register ECX. _ TutNote 03: Looking at code lines we can see that all of them, except for C07, just read the value. It is important to know that when in an instruction there is something between , _ (just double click on it and write NOP). _ If you find an INT 3 near the code we are about to analyse (inside 5 bytes distance from the code), change it to NOP We have to help CE not to crash the game because of an INT 3 instruction _ we have to be sure that each code line is safe to be used on next step. _ TutNote 02: Now we need to know when each code is used and, if needed, what they do. _ by selecting all and clicking on ADD TO THE CODELIST Add them to the code list on advanced option Note that about 10 code lines are displayed. Then click on TURN, and then, and it again _ D) Back to the game, click on DONE on the "Colony Management Screen". _ C) Now let's find out what code accesses it by right-clicking on this table entry and choosing "Find out what access this address" Double-click on it in order to add it to CE table _ Since you are a lucky guy, only one address had its value changed. _ B) Go back to CE and put the new "Empire Treasure" value on the value to be searched field and click on NEXT SCAN. Note that the "Empire Treasure" has changed. _ and select a project to be built there (it could be "Basic Factory"). The "Colony management screen" is displayed. At the bottom of the screen, the planet information is displayed. _ A) Back to the game, click on planet EARTH. _ Now we need to make the "Treasure value" change and find out what code access it
_ Memory Scan Options = Usermode and Fast scan checked) and click on FIRST SCAN. _ Go to CE, enter 5000 on value to be searched field ( Scan type = Exact Value, Value type = 4 Bytes, _ TutNote 01: Take a look, at the left down corner, at the "Empire Treasure" value (5000). _ 1.5 Click on CE and open GalCiv2.exe process _ 1.3 Creat a new game using default parameters Thanks to Dark Byte for the fantastic tool. If you could first follow the CE tutorial, would be helpful, but not essential. Please look in the internet for IA32_SDM_Vol2A.pdf and IA32_SDM_Vol2B.pdf to use as OPCODE reference. The game is Galactic Civilization 2 (V1.0).
This game can be played in window mode, so it would help us, because we could have CE and the game screen visibleĪt the same time. I chose a turn base strategic game (a good one), because we could explore That it is not so complex to implement a script. I want to share part of my knowledge with you. My first contribution for this year (2011) is a tutorial. Posted: Sun 9:49 pm Post subject: Cheating Galactic Civilization 2 (V1.0) - Part 1