Page 1 of 1

[Fallout 3] Changing Skill Points

Posted: Mon Dec 07, 2020 5:53 pm
by tja42
Hello,

this is my first post.
Need some help with the skill points you can set on your character at the beginning of Fallout 3.
I have the Steam Goty edition (German version):

What I already found out is that each stat is stored as byte.
Fallout3.exe+50CED - 88 44 0A FF - mov [edx+ecx-01],al
This is where the stats are stored.
In memory it looks like this:
0101010A

So I have one stat with value 10 and the others with value 1.
When I change the A to 1 it is correctly shown with value 1 in game and the remaining points I can spend are calculated correctly.

Problem is when I change every 1 to A (so 0A0A0A0A) the game just crashes.
It seems it cannot handle that my stats have more points than they should have.
I already tried to just find the value of the remaining skill points and just freeze them. But it seems to me that the game calculates the remaining points based on the points I already spend.
So I tried to somehow find the total value of points I can spend but do not know how to do that because that value never changes.

I also found the code address Fallout3.exe+6E26CD that is somehow involved when changing the skill points. However I was unable to find the meaning of those values.

Re: [Fallout 3] Changing Skill Points

Posted: Tue Dec 08, 2020 4:01 am
by STN
Look 4 bytes ahead or behind the address you found or 8, C bytes ahead/behind or do a structure dissect. Usually, the points spent and current points are close by in the structure.

I forgot the game name now but in it, you had to modify both current points and points spent because the calculation would mess up and create a negative value or a gigantic value (buffer overflow) which the game wasn't programmed to handle.

Re: [Fallout 3] Changing Skill Points

Posted: Tue Dec 08, 2020 5:45 pm
by tja42
I changed to points to the values 1,2,3,4,5,6,7. When I change those values they are changed ingame correctly.

But as soon as I spend more than 40 points altogether the game just crashes when changing the points the next time (I have to do this to make the game recognize the new values. Also the game only continues when all 40 points are spend).

I do not see the value 40 anywhere in the near.
And the view occurrences of 40 which I see here are not accessed by the game when I change the points.

[Link]

Re: [Fallout 3] Changing Skill Points

Posted: Tue Dec 08, 2020 6:03 pm
by tja42
And then I found this code which seems to change anything when I change the points ingame.

However. Here I do not know what the values mean:
[Link]

The value=88 changes when I change the points in strength ingame.
1=88
2=16
3=200 141 (the next byte gets changed to 141)
4=128 141
5=56 141
6=240 140
7=168 140
8=96 140
9=24 140
10=208 139

Did not figure out what these values mean.

The code is also executed when I change the other stats like perception.
But they are at different memory locations and have different values.
These are the values for perception:
1=200 141
2=16 142
3=88 142
4=168 115
5=24 140
6=96 140
7=168 140
8=240 140
9=56 141
10=128 141

Re: [Fallout 3] Changing Skill Points

Posted: Wed Dec 09, 2020 10:02 pm
by tja42
Ok, I found out that the values of the skills are also at these memory locations after setting the skills at the beginning of the game.
So I just changed the values after that and it seems to work.