Larian Banner
Previous Thread
Next Thread
Print Thread
Page 1 of 3 1 2 3
Joined: Mar 2003
Posts: 27,974
Raze Offline OP
Larian Studios
OP Offline
Larian Studios
Joined: Mar 2003
Posts: 27,974
If you do not already have a hex editor, check out the freeware program XVI32 or one of those listed here.


<img src="/ubbthreads/images/graemlins/exclamation.gif" alt="" /> Warning <img src="/ubbthreads/images/graemlins/exclamation.gif" alt="" />

[*] This information is the result of playing, not rigorous and thorough testing. It works in various situations that I have tried (exceptions noted below), though may not with different patch combinations or changes made after the (now current) 1.44 patch.

[*] Either make a [color:"yellow"]copy[/color] of the saved game folder you are going to edit or [color:"yellow"]backup[/color] the file first. Doing both would not be overcautious. An out of range value will probably just be ignored, but editing the wrong spot may cause problems. The saved game format includes redundant information to help prevent bug fixes or game changes making saves unusable, so the chance of serious problems is slightly mitigated.

[*] Side effects from using this procedure are similar to placebo, and include boring gameplay, dry mouth, no challenge, headaches, ridicule and exploding computers.



[color:"yellow"]Gold;[/color]

Not that this is required with the latest patches, but you can give yourself gold by hex editing the inv.b0 file. Search for the hex values below; there will be one instance for each pile of gold in that character's inventory, with the 2 byte amount of gold immediately before this.

Hero;
[color:"orange"]04 00 01 00 00 00 00 00 00 00 00 00 00 00[/color]

Death Knight;
[color:"orange"]04 00 01 00 01 00 00 00 00 00 00 00 00 00[/color]

I didn't check the minimum number of zeros you need to make sure you find the right spot, since that might depend on what else you have in your inventory. If you check how much gold you have in the save first and convert it to hex, you can confirm you are at the right spot. Also, if you have one pile of gold (per character) and an abbreviated search term brings up one instance, you have the right spot.

Each pile in Beyond Divinity is limited to 50,000 (or [color:"orange"]C3 50[/color] in hex). However you can edit the amount higher than that ([color:"orange"]FF FF[/color] = 65,535). BD will divide the stack up whenever you update the amount of gold that character has (by adding more, etc).

If you want to do this repeatedly, edit a stack of gold in each character's inventory, load the game, drop 15534 (or so) from both, leaving a pile of 50k and a single gold piece, save the game, repeat.


[Linked Image]




[color:"#23D478"]Unused Stat Points;[/color]

Hex edit the data.000 file and search for the text string [color:"orange"]PartyV[/color] (there should only be one instance). Assuming your hex editor lists 16 bytes a row, then (in act 1) the hero's unused stat points are 8 rows below the 'a' and the Death Knight's are 8 rows below the 'V'.

When you convert the decimal value of the points you want to give yourself into hex, the last byte (pair of numbers) gets listed first in the data file, etc. This doesn't matter if you will be using [color:"orange"]FF[/color] (255), [color:"orange"]FF FF[/color] (65535) or [color:"orange"]FF FF FF[/color] (16777215).

For example, say you wanted 500 stat points, which in hex is [color:"orange"]01 F4[/color]. In the data file, this would be listed in reverse order as [color:"orange"]F4 01 00[/color].

Note: The relative positions for the stats change if you have a summoning doll active. There is likely a more reliable method to determine the proper stat location in this case, but I have not taken the time to figure that out.

Note 2: Each act the positions of the unused stat points are shifted down 3 rows and to the right 4 bytes.
Consider the text string [color:"orange"]PartyV1.0 16-03-[/color] as a reference.

Hero's stats;
Act 1 - 8 rows down from 'a'
Act 2 - 11 rows down from 'V'
Act 3 - 14 rows down from ' ' (space after 1.0)
Act 4 - 17 rows down from '0' in "03"

DK's stats;
Act 1 - 8 rows down from 'V'
Act 2 - 11 rows down from ' ' (space after 1.0)
Act 3 - 14 rows down from '0' in "03"
Act 4 - 18 rows down from 'a'


[Linked Image]


Note 3: With games started under version 1.42 (at least, maybe 1.40/1.41 also), there is also a second location where the free stat points have to be changed. In games started in an earlier version and then saved under 1.4x, this may not be necessary.

Search for the hex string [color:"orange"]48 65 72 6F 30 00 05[/color], which looks like 'Hero0' followed by a space and box symbol. There should be a couple instances of this, with one followed by 00 00 00 and another 'Hero' string. Just above the first Hero is the hex constant FF FF FF FF, immediately followed by the hero's unused stat points, which must match what you changed previously.

Next, search for the hex string [color:"orange"]48 65 72 6F 30 00 0D[/color], which as above looks like 'Hero0' followed by a space and box symbol, but the last byte is different. There should only be one instance of this, followed by 00 00 00 and the string 'Death_Knight'. Again, just above 'Hero' is the hex constant FF FF FF FF, immediately followed by the DK's unused stat points.

[Linked Image]




[color:"#23D478"]Skill and Experience Points[/color]

Hex edit the data.000 file, and search for the hex series;
[color:"orange"]44 65 61 74 68 6B 6E 69 67 68 74 00 23[/color]

You can enter most of this in text, then add the [color:"orange"]00 23[/color] in hex; the first part is "Deathknight" and the next two symbols look like (but are not) a space and '#' sign, ie
[color:"#8CADFF"]Deathknight #[/color]

There will be several instances of this. Keep searching until you find the last one (there will be no 'Red' or 'Black' in front of it, and it should have a block of square and other symbols in the 2 rows above it.

The Death Knight's experience points are listed 6 rows up from the first 'h', and the skill points are 6 rows up from the '#' symbol.


From here search backwards in the data.000 file for the first instance of the hex series;
[color:"orange"]42 61 73 65 00 23[/color]

This looks like [color:"#8CADFF"]Base #[/color] (you can also just do a text search for 'Base'). The appropriate spot should only be a couple 'pages' above the Death Knight's values (though it will be more if there is a summoning doll active).

The hero's experience points are listed 6 rows above the [color:"orange"]00[/color] (between the 'e' and '#' symbol), and the stat points are 5 rows above the 'B' and 4 bytes to the left.


In both cases, there are 4 bytes for experience, then a constant 00 00 00 00 then 3 bytes for skill points. As with stat points, the hex pairs are listed in reverse order.


You can use [color:"orange"]FF FF FF[/color] for skill points, but even though experience has 4 bytes, you can not use [color:"orange"]FF FF FF FF[/color] (the game listed a 0 value when I tried). You can get to at least level 163 (chosen randomly to check), which is 1443528000 experience points, 560A7D40 in hex, or [color:"orange"]40 7D 0A 56[/color] in the data file.

[Linked Image]



Gold, stat points and skill points show up immediately. Edited experience points are displayed, but you must kill something or solve a quest to gain experience before the game will update your level.

Joined: May 2004
Posts: 25
apprentice
Offline
apprentice
Joined: May 2004
Posts: 25
Thank you for clearing this up, the gold was always reverting back to the previous amount when changing just one address.

Ariakas

Joined: May 2004
Posts: 77
journeyman
Offline
journeyman
Joined: May 2004
Posts: 77
Nice one <img src="/ubbthreads/images/graemlins/evilgrin1.gif" alt="" />

Joined: Nov 2003
Posts: 288
L
enthusiast
Offline
enthusiast
L
Joined: Nov 2003
Posts: 288
awesome job raze! that is some serious work.....

Joined: Mar 2003
Posts: 27,974
Raze Offline OP
Larian Studios
OP Offline
Larian Studios
Joined: Mar 2003
Posts: 27,974
I found a working link to the previous version of Hackman (7.02), which I used for the screenshots above. On this web page, click on the 'hack702.zip' link, then the 'basic ftp' link. The freeware version of the Hackman 8.0 release has a low file size restriction (around 200KB) so can not be used to edit the data.000 file.

direct download (3MB)

The web page and direct link may eventually become invalid, as links to previous versions of software have a tendency to do.

Joined: May 2004
Posts: 7
stranger
Offline
stranger
Joined: May 2004
Posts: 7
Nice going! No issues on this :aparty:

I googled for another [url=http://f2.org/download/hackman-702.zip]Hackman v7.02[/url] location.

Joined: Jan 2004
Posts: 63
journeyman
Offline
journeyman
Joined: Jan 2004
Posts: 63
Umm how do you figure out which one of the values is your characters gold?

Joined: May 2003
Posts: 8,265
veteran
Offline
veteran
Joined: May 2003
Posts: 8,265
you guess?



Joined: Jan 2004
Posts: 63
journeyman
Offline
journeyman
Joined: Jan 2004
Posts: 63
Well my char has 25149 gold in 1 stack. This is the one I think it is
[Linked Image]

Joined: Mar 2003
Posts: 27,974
Raze Offline OP
Larian Studios
OP Offline
Larian Studios
Joined: Mar 2003
Posts: 27,974
Search for the hex strings above. 25149 decimal = 62 3D hex
Depending on who has the gold, you will find one of the series below;

Hero;
62 3D [color:"orange"]04 00 01 00 00 00 00 00 00 00 00 00 00 00[/color]

Death Knight;
62 3D [color:"orange"]04 00 01 00 01 00 00 00 00 00 00 00 00 00[/color]

Joined: Jan 2004
Posts: 63
journeyman
Offline
journeyman
Joined: Jan 2004
Posts: 63
And um no matter what i do i can't get any more skill poimts =(

Joined: Mar 2003
Posts: 27,974
Raze Offline OP
Larian Studios
OP Offline
Larian Studios
Joined: Mar 2003
Posts: 27,974
Did you find the last 'Deathknight #' instance? AFAIK there are no differences between the patches for skill points.

Joined: Jan 2004
Posts: 63
journeyman
Offline
journeyman
Joined: Jan 2004
Posts: 63
Umm so which is your player's one? Base thingy?

Joined: Jan 2004
Posts: 63
journeyman
Offline
journeyman
Joined: Jan 2004
Posts: 63
And will the 200 skill points even work??

Joined: Jan 2004
Posts: 63
journeyman
Offline
journeyman
Joined: Jan 2004
Posts: 63
Ok I got 50 points on my guy. Now Deathknight's thing has the the very right thing and goes down to the 2 left boxes undernear is it possible for that even to work?

Joined: Mar 2003
Posts: 27,974
Raze Offline OP
Larian Studios
OP Offline
Larian Studios
Joined: Mar 2003
Posts: 27,974
The hero's skills are by 'base #'. Anything up to FF FF FF = 16,777,215 will work for skill points. I'm not sure which thing you mean.

Joined: Jan 2004
Posts: 63
journeyman
Offline
journeyman
Joined: Jan 2004
Posts: 63
On Deathnight's one the # is on the very right. Does that make a difference because then the number is like
Number
Number Number

Instead of

Number Number Number

Understand now?

Joined: Mar 2003
Posts: 27,974
Raze Offline OP
Larian Studios
OP Offline
Larian Studios
Joined: Mar 2003
Posts: 27,974
Ah, now I know what you mean. No, that doesn't matter, just the relative position. This is similar to word wrap in a text editor or email program; changing the size of the program window can rearrange how the text is displayed, but the message/file itself is unchanged. Hex editors are pretty much standardized to display 16 bytes per line, but the game does not read data that way (whether the next byte is on the same line or one below is irrelevant).

Joined: Jan 2004
Posts: 63
journeyman
Offline
journeyman
Joined: Jan 2004
Posts: 63
Well it still doesn't work =/

Joined: Mar 2003
Posts: 27,974
Raze Offline OP
Larian Studios
OP Offline
Larian Studios
Joined: Mar 2003
Posts: 27,974
After finding the last 'Deathknight #', try just changing a single byte, the one 6 rows up from the '#' symbol (up to FF = 255), leaving the next 2 bytes as '00 00'.

Page 1 of 3 1 2 3

Moderated by  Larian_QA, Lynn, Macbeth 

Link Copied to Clipboard
Powered by UBB.threads™ PHP Forum Software 7.7.5