[Tutorial] X3FL memory manipulation with cheat engine

General discussion about X³: Farnham's Legacy.

Moderators: Moderators for English X Forum, Moderators for the X3:FL Forums

Post Reply
kazuya112
Posts: 37
Joined: Thu, 25. Nov 04, 11:56
xr

[Tutorial] X3FL memory manipulation with cheat engine

Post by kazuya112 » Wed, 7. Jul 21, 11:16

Cheat Engine 7.20 / ArtMoney SE v8.09

In this tutorial the ***unmodified*** manipulation is done or brought closer.

Why should I do this and not use the very comfortable cheat script etc.?
- The clear advantage is that you can manipulate much more granular and you still get the in-game and Steam Achievements.
- Ship/Station rudder, engine and cargo hold manipulation for individual ships/stations without tships change for all ships.
- Credits
- Change cargo or items values e.g. from 2 PBK put as many as you want in the cargo hold.
- Sinza 1000% put on any value

What is not possible:
- Create ships and stations, clone etc.
That is, things, from the nothing created is, for the time being so easily not possible, or I am also clueless here, who likes can continue here with pleasure

Attention!

Changing values without concretization can destroy game saves. Therefore, be careful and save the game first.

Attention!

You have to fly through a jumpgate after changing spaceship / station properties or save and reload the game. Cargo hold immediately, engine and rudder are updated after flying through a gate.

Important!

Once found, values are refreshed at each end of game and/or reload. Saving lists is useless, because all values are written to a different place in memory each time. If you like you can search the internet for the keyword "Pointer".

Important!

Always change the unit type to 4 bytes, otherwise you can't increase the cargo hold to extreme Levels, for example. No problem with thrusters and rudders, but makes it more uniform.

Preparation:
1. have X3 installed no matter what title and ready to play. In this tutorial X3FL
2. download and install Cheat Engine or ArtMoney SE (My recommendation Cheat Engine).

Attention!!!
"Follow the installation carefully and choose a "customized installation and custom installation" to prevent changes to the homepage and browser search provider and deselect unneeded software. Some security programs sound an alarm after downloading "Cheat Engine". The developers explicitly state that no malware is included, but that it is a false alarm."

Source:
https://chip.de

Links:

Cheat Engine:
https://cheatengine.org/

ArtMoney:
https://www.artmoney.ru/

3. start the cheat engine.

https://abload.de/img/1x0klg.jpg

4. go to Settings in the main window and uncheck Fast scan on by default.

- The Background is, because otherwise many values are not found or missing.

5. start game. In this case X3FL, load savegame or start a new game. Go out of the game with ALT+TAB.

Image

6. click on the top of the screen and select the desired game/program. In this case X3FL

7. now we start to find values. In the example here, I want to find credits and change the value.

https://abload.de/img/3rhkb9.png

Hint!
Be sure to set "Run game in background" to off in the game under Options -> Game the game settings. Why? Because the values you are looking for, e.g. credits, change when the game continues to run and the search can become useless.

8. we note the exact amount of credits we have on our player/ship account. In this example there are 2.
Hint. If there are more than 1000 credits, the display in the game is 1.000, but it is 1000 without the dot.

https://abload.de/img/4waj0j.png

9. switch out of the game with ALT+TAB and enter 2 in the search field at Value, now click on First Scan

10. now Cheat Engine has found many values. Now we only have to limit them by changing the value again in the game. I get more credits from e.g. my station and increase my player/ship account to e.g. 11.

11. switch out of the game with ALT+TAB and enter 11 in the search field at Value, now click on Next Scan

12. change the value as described in the game and press Next Scan again until only a few/one values are left.

https://abload.de/img/5y6j46.png

13. Select the value and click on the red arrow. The value will be copied down to the edit bar. If you now double click Value, you can change your credits as you wish.

14. i set the value to 40000000 and after confirmation i switch back to the game.

https://abload.de/img/6k0kf9.png

15. As you can see in the picture, I now have 40 million credits in my player ship. I can now distribute the money to stations, for example. In Cheat Engine, the value continues to change, so during the so-called game session I can continuously change the amount at will.

I. Now we come to the manipulation of ship values. This requires a lot more thinking and a more concrete approach, because the values of the ship you want to change are of course shared by other ships in the universe. My trick here is to use the currently occupied cargo hold of the ship to find the desired values plus some mathematics.

II. We need a ship to work on. This can be fully upgraded or newly bought/captured etc. It doesn't matter at first. In this example it is a captured Pericles from the pirates, which is in my possession. We can see here that I have completely filled the hold.

Image

III. The easiest way to proceed is to sit in a ship. Search the current cargo hold size or the goods on board with the cheat engine.
Then drop goods, adjust current cargo value and search again.
Collect goods, search value etc., until you have the current occupied hold value.

IV. Now we come to the special challenge of finding the other ship values. We highlight the current hold size value and right click on it and select "Browse this memory region". An additional new window opens the memory view.

https://abload.de/img/8pfk0f.png

V. On the left side of the lower table we now see countless addresses in the total memory. How do we now get the other ship values? Here it helps to know how X3FL stores ship values of the respective ship nearby. That means the values are not far away.
We scroll down our marked value in the memory viewer to about the middle.
There are now two ways. See or calculate. If you have two monitors the game on one and cheat engine on the other you see changing values in the memory viewer light up, especially if you have a ship that is not yet equipped, I see, since I have found the current hold near sure changing values e.g. I buy engine tunings and look almost parallel in the memory viewer immediately. It flashes briefly. This method is for newly bought, built or captured ships the fastest to find the rudder, engine and maximum cargo space because they just light up. Right click on the red address and select "Add this address to the List". For perfectionists then buy all rudder parts and only then change them, because the buyability of the thrusters remains and if you accidentally buy this one, the values are back to origin or as bought. The changes can be viewed directly in the ship information menu. You have to fly through a jumpgate or save and reload the game after changing spaceship / station properties. Cargo hold immediately, engine and rudder are updated after flying through a gate.

https://abload.de/img/9erkqs.jpg

Image

https://abload.de/img/11m8jr3.jpg

VI. now we come to changing ship values, if they are already upgraded to the maximum and the values cannot be changed anymore. We use the value for the current cargo hold again and calculate the value quite simply or know the scheme. In the Memory Viewer we simply move from the position of the current cargo hold 5 positions to the left. Here we mark the hex value that was automatically marked for the current cargo hold and press the arrow key to the left (often it does not jump further, but remains in one line. It is necessary to press the arrow key 9-10 times).
The first value after the current cargo hold is the value for the current cargo hold size, again further according to the above scheme is the rudder, then the thruster. Manipulating the values for shields and hull works, but they are reset to the original value when changed. It would be possible to freeze these values, but the game crashes when doing so.

VII. last point is the calculation who enjoys it. As an example here my Pericles, the values for the current storeroom in Hexadezimal found and the Hex value into the clipboard copy. Then start the Windows 10 integrated calculator and top left at the three dashes switch to programmer. Click here in the hex field and CTRL+V. Then minus 5 hexadecimal and copy this hex code and paste it at Cheat Engine. You simply subtract 5 hexadecimal and scroll through the ship properties and edit them.

https://abload.de/img/12qbk3g.png

I hope this tutorial helps you as much as it helps me, because I like to overtune my player ship to not fall asleep while flying through a sector.
Last edited by kazuya112 on Sun, 12. Sep 21, 00:14, edited 3 times in total.

Novvak
Posts: 86
Joined: Sun, 29. Jan 17, 11:35
x3ap

Re: [Tutorial] X3FL memory manipulation with cheat engine

Post by Novvak » Sun, 11. Jul 21, 23:07

It's a shame the weapon loadouts can't be modified this way (at least I assume they can't be). It would be awesome to be able to field a Pteranodon with PBC instead of PALC, and also having few Gauss Cannons for the good measure :D

kazuya112
Posts: 37
Joined: Thu, 25. Nov 04, 11:56
xr

Re: [Tutorial] X3FL memory manipulation with cheat engine

Post by kazuya112 » Sun, 12. Sep 21, 00:14

Novvak wrote:
Sun, 11. Jul 21, 23:07
It's a shame the weapon loadouts can't be modified this way (at least I assume they can't be). It would be awesome to be able to field a Pteranodon with PBC instead of PALC, and also having few Gauss Cannons for the good measure :D
Hi,

yes is problematic. You do not have a fixed value that you can search for. Also remove / add weapon and look at memory changes is as good as impossible.

radgoat
Posts: 13
Joined: Wed, 8. Aug 12, 19:53
x4

Re: [Tutorial] X3FL memory manipulation with cheat engine

Post by radgoat » Sat, 23. Jul 22, 00:52

Oh, I never thought CE will work on this game.
Thank you.
But it is really hard to find a pointer for diplomacy influence.
It keep changes whenever I found it.

DanKara
Posts: 416
Joined: Fri, 21. Dec 18, 13:19
x4

Re: [Tutorial] X3FL memory manipulation with cheat engine

Post by DanKara » Sat, 23. Jul 22, 06:53

radgoat wrote:
Sat, 23. Jul 22, 00:52
But it is really hard to find a pointer for diplomacy influence.
In the german forum the player nuit claims to have found a way to change the faction reputation with the help of CheatEngine. Let your browser handle the translation and maybe you get the gist (which I lack the technical understanding needed for).

v_make
Posts: 59
Joined: Mon, 10. Sep 18, 07:12
xr

Re: [Tutorial] X3FL memory manipulation with cheat engine

Post by v_make » Sun, 24. Jul 22, 02:23

DanKara wrote:
Sat, 23. Jul 22, 06:53
In the german forum the player nuit claims to have found a way to change the faction reputation with the help of CheatEngine. Let your browser handle the translation and maybe you get the gist (which I lack the technical understanding needed for).
I open-sourced the notoriety hack ce scripts a year ago
https://github.com/mkmark/X3-notoriety-hack
Regards.
Mark

radgoat
Posts: 13
Joined: Wed, 8. Aug 12, 19:53
x4

Re: [Tutorial] X3FL memory manipulation with cheat engine

Post by radgoat » Thu, 28. Jul 22, 10:20

v_make wrote:
Sun, 24. Jul 22, 02:23
DanKara wrote:
Sat, 23. Jul 22, 06:53
In the german forum the player nuit claims to have found a way to change the faction reputation with the help of CheatEngine. Let your browser handle the translation and maybe you get the gist (which I lack the technical understanding needed for).
I open-sourced the notoriety hack ce scripts a year ago
https://github.com/mkmark/X3-notoriety-hack
Hi, Thank you for the code! I tried your code and it keeps pop up LUA engine failure mesage.

Argon address aobscan failed
Boron address aobscan failed
Split address aobscan failed
Paranid address aobscan failed
Teladi address aobscan failed
Pirates address aobscan failed
Goner address aobscan failed
Terran address aobscan failed
ATF address aobscan failed
Yaki address aobscan failed
Xenon address aobscan failed
Khaak address aobscan failed
OTAS address aobscan failed
TerraCorp address aobscan failed
Atreus address aobscan failed
NMMC address aobscan failed
StrongArms address aobscan failed
Dukes address aobscan failed
Argon address aobscan failed
Boron address aobscan failed
Split address aobscan failed
Paranid address aobscan failed
Teladi address aobscan failed
Pirates address aobscan failed
Goner address aobscan failed
Terran address aobscan failed
ATF address aobscan failed
Yaki address aobscan failed
Xenon address aobscan failed
Khaak address aobscan failed
OTAS address aobscan failed
TerraCorp address aobscan failed
Atreus address aobscan failed
NMMC address aobscan failed
StrongArms address aobscan failed
Dukes address aobscan failed
Argon address aobscan failed
NMMC address aobscan failed
Dukes address aobscan failed
Image
Seems working on the most races.

v_make
Posts: 59
Joined: Mon, 10. Sep 18, 07:12
xr

Re: [Tutorial] X3FL memory manipulation with cheat engine

Post by v_make » Fri, 29. Jul 22, 16:02

radgoat wrote:
Thu, 28. Jul 22, 10:20
Hi, Thank you for the code! I tried your code and it keeps pop up LUA engine failure mesage.
Well, these messages tell nothing useful.
Try to restart the game process and then try again.
The relationships are stored as arrays of each race. It relies on the constant relationship among NPC races to locate these values. If somehow these values are changed, the script can't find them. Otherwise, I cannot think of why it would fail.
Regards.
Mark

kazuya112
Posts: 37
Joined: Thu, 25. Nov 04, 11:56
xr

Re: [Tutorial] X3FL memory manipulation with cheat engine

Post by kazuya112 » Thu, 3. Nov 22, 14:45

Hello all,

before it continues to raise someone's toenails, here's a good cheat table.
Good luck. I tested it in V1.3 for the unofficial 1.3.2 of FL and it runs as it should.
Too bad that not all factions are editable. A few companies are missing.

https://fearlessrevolution.com/viewtopic.php?t=20439

Post Reply

Return to “X³: Farnham's Legacy”