Jump to content

Photo

BG2: Hitpoints at level up


  • Please log in to reply
21 replies to this topic

#1
Kevin Lynch

Kevin Lynch
  • Members
  • 1,870 posts
Originally posted by Annowan over on the old forums, way back in 2004, it's still useful today. I left it out of being quoted for readability.

When playing Baldur's Gate 2 on Normal or Novice the amount of hitpoints received at level up will always be the maximum allowed for that class. Playing on Core Rules, Hard or Insane will result in a die roll lower than or equal to the maximum of hitpoints you can get in Normal or Novice difficulty.

Warriors, priests, rogues and wizards form the 4 basic groups of occupation. Each of the classes within these groups share the same hitdice with the other classes in the same group, the only exception to this rule being the Barbarian who has a D12 instead of a D10.
The hitdie represents a die with n sides, where n is determined by the character's class (we will use group from now on, because there are only 4 basic groups whereas there are several classes. Do note however that the Barbarian is the only class that has a different hitdie, but the rules for warriors apply to this class as well).

The "independant" levels are the levels where you only get a small amount of hitpoints (1, 2 or 3 which only depends on the group, not on the character's constitution. The independant levels start at a specific level (10 for warriors and priests, 11 for wizards and rogues), however since this creates some confusion we will also be using the term "breakpoint". This is the point (between 2 levels) where a character stops gaining the normal set of hitpoints, but receives the smaller amount of HP (1, 2 or 3).
Example: the breakpoint for a (single classed) ranger character (group of warriors) is the point where he's going to level 10, meaning he was level 9 and has just received enough experience points to go to level 10. He will gain 3 HP at this level up and every level up thereafter.


* Single class characters

  The hitpoints of single class characters are quite easy to calculate, it is in fact the only type of character where nothing abnormal happens.

All groups of characters (warrior, priest, rogue, wizard) will gain hitpoints based on their respective hitdie.
  • Warriors have a D10 and their independant levels start at level 10 (which means the breakpoint occurs when going from L9 to L10). After the breakpoint they will only gain 3HP/level regardless of constitution.
  • Priests have a D8 and their independant levels also start at level 10, they will gain 2HP/level from then on regardless of constitution.
  • Rogues have a D6 and their independant levels start at level 11. After the breakpoint they will also gain 2HP/level regardless of constitution.
  • Wizards have a D4 and -just like rogues- their breakpoint occurs when going to level 11. After the breakpoint they will always gain 1HP/level regardless of constitution.
Now how does constitution fit into this? Well, constitution adds (or substracts) a small amount of HP to the total sum of hitpoints each level up. To make it less confusing (and usable for later), think of the bonus to the hitpoints as a bonus to your hitdie.
Example: a fighter with a constitution of 18 will gain another 4HP each level up to the breakpoint. By leveling up from L8 to L9 this fighter will gain 10 hitpoints (from his D10 (warrior-group)) and another 4HP due to his 18 CON. So he will get a total amount of 14HP.
Note that at the next level up this fighter will only get 3HP, because the independant levels of a fighter start at L10.

A constitution of 15 will result in a +1 modifier for all classes. A constitution of 16 and above will result in a +2 modifier for all classes, except for warrior-classes. Only warriors benefit from a CON above 16. With a constitution of 17 they will gain 3HP each level up plus the hitpoints they receive from their die roll. A constitution of 18 for warriors will result in a +4 modifier. This table can be found in the manual.


* Dual-classed characters

  Dual-classed characters follow the basic rules (written above) for each class. However they will not gain any hitpoints when their new class is not one level higher than their original class regardless of constitution modifiers. Once they regain their inactive class they will follow the basic rules for their new class only.
Example: we will dual a mage (level 8 )  with a constitution of 17 into a fighter. When the mage has finally reached L8 he will have 48 hitpoints (8D4 + 8*2) or less (depending on the game difficulty). At that time we dual him to a fighter. The fighter gains new levels but will not gain any hitpoints until his level is higher than level 8. When the fighter finally receives enough experience points to go to level 9, he will regain the abilities from his inactive class and will also start gaining HP. When he levels from L8 to L9, he will receive a total amount of 13HP (1D10 from his warrior die roll and a bonus of 3HP from his constitution). At the next level up, he will only receive 3HP, because the HP breakpoint for warriors is before L10.


* Multi-classed characters

  They are in fact the most difficult characters to calculate the hitpoints for. With no constitution modifiers the amount of HP is pretty normal (it differs by 1 sometimes), however once constitution modifiers enter the calculation, it gets pretty screwed up. Sometimes one of the classes will gain 6HP at one level up and 7 HP at the next. A certain logic I haven't discovered yet.

 
  • Two classes
       Multi-classed characters with two classes get (at level up) the hitpoints of the class that levels up divided by two and rounded down to the nearest digit (integer) unless the result would be zero (in that case it will be 1).
    Example: we create a cleric-mage with a constitution of 13. Right at the beginning of SoA this character has 36 hitpoints. Why? Well, each time the cleric gains a level, he gains 1D8. This number is then divided by two, because the character has 2 classes. On normal or novice this character would get 4HP every level until the breakpoint (from then on he will gain only 1HP (2HP because of the priest-group which is then divided by two (for the number of classes))). The mage part will get 1D4 each level. This number is also divided by two, so the mage class will get 2HP each level. At the start of SoA this character's levels are 6|6. 6 Levels of cleric result in 24HP (6 * 4). 6 Levels of mage result in another 12HP (6 * 2) for a toal sum of 36HP. The mage part will reach his breakpoint first. He will get 1HP (1HP (from the wizard-group)/2 = 0.5 which we have to round down, but this will result in 0HP, so we give 1HP) when he's leveling up from L10 to L11. The cleric part reaches the breakpoint a bit later (check the experience point progression tables in your manual) and will then get 1HP (2HP (from the priest-group) /2 = 1HP) per level up.
    I didn't take this example (cleric-mage) for no apparent reason. I took it because now you can easily calculate the number of hitpoints Aerie should have. This brings me to another point: these "rules" apply for all characters, but NPC's start out with a set amount of hitpoints.
  • Three classes
       Just like multi-classed characters with two classes, these characters get the hitpoints of the class that levels up, but this amount is divided by three (for the number of classes) first.
    Example: we create a fighter-cleric-mage with a constitution of 16. For each level the fighter gets, he gets 4HP (1D10 + 2(from the constitution) and then we divide it by three). For every level of the cleric, 3HP (1D8 +2 = 10 (max), now we divide by 3 and round down) and for every level of the mage 2HP (1D4 + 2 = 6 (max), divided by 3 and rounded down is 2) up until the breakpoint! Once every class reaches his breakpoint, each class will get 1HP/level (fighters normally get 3HP after the breakpoint, but we divide this by 3 (because of the number of classes). The other classes are analogue).

I hope this clears up most of the questions concerning the amount of hitpoints received each level up.

P.S. I would like to stress one more time that I have seen several "illogical" level up results. Bare this in mind, especially for multi-classed characters.

Edited by Kevin Lynch, 13 July 2010 - 10:43 PM.


#2
ChrisUMD

ChrisUMD
  • Members
  • 2 posts

Kevin Lynch wrote...


* Dual-classed characters

  Dual-classed characters follow the basic rules (written above) for each class. However they will not gain any hitpoints when their new class is not one level higher than their original class regardless of constitution modifiers. Once they regain their inactive class they will follow the basic rules for their new class only.
Example: we will dual a mage (level 8 )  with a constitution of 17 into a fighter. When the mage has finally reached L8 he will have 48 hitpoints (8D4 + 8*2) or less (depending on the game difficulty). At that time we dual him to a fighter. The fighter gains new levels but will not gain any hitpoints until his level is higher than level 8. When the fighter finally receives enough experience points to go to level 9, he will regain the abilities from his inactive class and will also start gaining HP. When he levels from L8 to L9, he will receive a total amount of 13HP (1D10 from his warrior die roll and a bonus of 3HP from his constitution). At the next level up, he will only receive 3HP, because the HP breakpoint for warriors is before L10.


Great post but I came up with a slightly different result:

Currently, my lvl 9/17 kensai theif with 17 constitution has a total of of 137 HP, with max hp per level up. When I calculated how that HP total was reached, this is what I got:

9 kensai lvls x (10 + 3) = 117 HP

Then the  kensai dual-classed and reached 10 thief levels, where he should have gotten 6+2 cons bonus = 8HP
(Thief does not get +3 hp from 17 constitution, only +2,  and thief breakpoint is before level 11)

Then he should have gotten 2x7 =14 HP for the remaining 7 levels of thief.

But 117+8 +14=139 HP, which is 2 HP more than my actual K/T's HP. This meant that when the thief  reached level 10, it got the 6 hitpoints that all rogues get with max hp level up, but not the constituion bonus. This has me concluding that when the second class surpasses the first class by 1 level, it does not get any constituion  bonus that you mentioned in your example.  Of course, my theory only applies when the class hasn't reached breakpoint, because after breakpoint, no one is supposed to get constitution bonuses anyways.

Did I make an error somewhere down the line? I tested with other characters and got the same result. Thanks.

Also, it might be worth nothing that my Kensai Thief is not the protagonist, but actually a member of a custom party. If he were the protagonist, he would have gotten an extra HP roll at level 1, which means his total HP would be 147, not 137.

Edited by ChrisUMD, 28 August 2010 - 11:34 PM.


#3
Chebby

Chebby
  • Members
  • 160 posts
You can download a tweakpack including a mod which increases the base HP of all NPCs to the max possible. This only works as they come into the party and it's best to use the option to increase the HP of all creatures, including enemies. However, if you install such a thing halfway through and want to edit your party's HP manually (I shall use shadowkeeper in this example), leave constitution out of it. Calculate your class's hit die without constitution; your extra health should still be there.

#4
Humanoid_Taifun

Humanoid_Taifun
  • Members
  • 1,444 posts

ChrisUMD wrote...
If he were the protagonist, he would have gotten an extra HP roll at level 1, which means his total HP would be 147, not 137.

That a cheat?

#5
Gecon

Gecon
  • Members
  • 794 posts
No, a bug.

More precisely a bug of the BG2 engine ... the BG1 engine didnt had that bug.

Edited by Gecon, 03 September 2010 - 03:04 PM.


#6
Humanoid_Taifun

Humanoid_Taifun
  • Members
  • 1,444 posts
Hm, I think I remember now. This happens if you start on easy (or normal) difficulty, right?

#7
Bothkill

Bothkill
  • Members
  • 2 posts
There's one thing I cannot understand regarding HP you get upon levelling up, especially what is the max HP a fighter (no dual-class) can gain when levelling up to Level 2.

The manual says:

"As characters go up levels, their number of hit points increase
based on their Hit Dice. ... The number of Hit Dice each class receives is
shown on pg 139.
"

On page 139 there's the Experience table 3a:

3a. Warriors
Level     Fighter     Paladin/Ranger     Hit Dice (d10)
1             0               0                                 1
2             2,000       2,250                         2
3             4,000       4,500                         3


.. and so on.

So, what does "1", "2", "3" under the "Hit Dice(d10)" mean?

Edited by Bothkill, 17 October 2010 - 01:11 PM.


#8
Humanoid_Taifun

Humanoid_Taifun
  • Members
  • 1,444 posts
It means that for every level until 9 you can get 1D10 (+ con bonus) more HP. From level 10 on, you get a fixed amount of 3HP for every ding.

#9
Grond0

Grond0
  • Members
  • 6,484 posts
I've played a multi-class fighter / mage and noticed the hit point calculation is incorrect - the base calculates correctly, but the mage is fully benefiting from 18 constitution as well as the fighter. I've experimented with other races and classes and the same bug applies for any multi-class including a fighter (though not for classes without a fighter component). Is this bug specific to my set-up or has anyone else noticed something similar?

Edit:  I've now tested this against both the vanilla BG1 and BG2 engines and the bug is there in all cases.  This therefore seems to be an unpublished advantage of playing a multi-class character as opposed to dual class.

Edited by Grond0, 13 June 2011 - 10:28 PM.


#10
kenng

kenng
  • Members
  • 73 posts

Grond0 wrote...

I've played a multi-class fighter / mage and noticed the hit point calculation is incorrect - the base calculates correctly, but the mage is fully benefiting from 18 constitution as well as the fighter. I've experimented with other races and classes and the same bug applies for any multi-class including a fighter (though not for classes without a fighter component). Is this bug specific to my set-up or has anyone else noticed something similar?

Edit:  I've now tested this against both the vanilla BG1 and BG2 engines and the bug is there in all cases.  This therefore seems to be an unpublished advantage of playing a multi-class character as opposed to dual class.


I think that is meant to be the case. You use the more beneficial of the 2 for calculating bonus con hp, which is full for fighter in this case. Hence, a fighter/mage multi gets the full +4hp from an 18con, or 2 hp when you lv up in either fighter or mage. 

For any other combination (such as a thief/mage), neither side gets more than +2hp from con, however high, so the better of +2 and +2 would still be...+2. 

#11
goblinsly1

goblinsly1
  • Members
  • 174 posts
Few questions. When you start your game, does it make a difference which difficulty you choose as to how many hp your character has and npcs have ? I know it makes a difference when leveling up but how about at the beginning ?

After level 10 for warrior, you get 3 hp no matter what on level up, even if you are on insane difficulty ?

Soo even if you play on insane, you should have about 115 health with level 20 char if you started when he was level 7 ( minsc has about 70 health when you begin, soo without items, if yuo arent extremely unlucky and get 5 hp per level up and after that steady 3 hp until you are 20.. ).

#12
Grond0

Grond0
  • Members
  • 6,484 posts
Difficulty setting does not affect starting HPs or HPs from the point that die rolls end (level 10 onwards for warriors).

The amount of HPs you have is heavily dependent on constitution. A 20th level fighter with 18 constitution would get on average.
14 HPs at first level (10 + 4 for constitution)
76 HPs at levels 2-9 (5.5 + 4 at each level)
33 HPs at levels 10-20 (3 HPs at each level irrespective of constitution)
123 total.

A constitution of 19 (from racial bonus or due to using the BG1 tome) would increase the average at 20th level to 132.

#13
goblinsly1

goblinsly1
  • Members
  • 174 posts
Thank you for your reply. Since 123 hp doesnt sound half bad i decided not to use any mods that tweak hp gain on level up ( like nwn style or max hp on level up ). Since i play on insane, i will just hope for the best and if i happen to get full 10+4 on level up, i will be sure to jell out a "hellll yeaaa". :)

Btw, how do i calculate the correct hp my character should have when i start bg2 ? Lets say i create a barbarian with 18 constitution, how much hp should he have ? I am asking because if he has less, i know something is wrong and i have to start over.

#14
Dyara

Dyara
  • Members
  • 327 posts

Originally posted by Annowan over on the old forums, way back in 2004, it's still useful today. I left it out of being quoted for readability.
 

[...]

 

* Multi-classed characters

  They are in fact the most difficult characters to calculate the hitpoints for. With no constitution modifiers the amount of HP is pretty normal (it differs by 1 sometimes), however once constitution modifiers enter the calculation, it gets pretty screwed up. Sometimes one of the classes will gain 6HP at one level up and 7 HP at the next. A certain logic I haven't discovered yet.

[...]

P.S. I would like to stress one more time that I have seen several "illogical" level up results. Bare this in mind, especially for multi-classed characters.

 

 

Somewhat funny to see that after 15 years hitpoint calculation for multiclass chars is still a mystery, especially since it's actually quite simple.

First, hitpoints from hit dices and hitpoints from constitution are two different things, only the former is stored on your character (in the save game or character file), the latter is calculated dynamically during game play and only the current CON value is used (and not the ones your character had on a specific levelup).

The hitpoints from hit dices are explained correctly but for the bonus hitpoints from constitution you have add up all your characters levels (of course only all the levels that get the constitution bonus), multiply by the constitution bonus (chars with fighter/ranger get the better fighter bonus), divide by the number of classes and round down the result.

It's not a big difference but it explains the '"illogical" level up results' (why you don't always get the same amount of hitpoints on a levelup of the same class). So at least for multiclass chars you should NOT 'think of constitution bonus as a bonus to yout hit dice' (because that's where all the 'illogical result' come from).

Example:

A half elven F/M/T with CON 18 starts with 10 hitpoints (and not only 9):

10/3 + 4/3 + 6/3 + (1+1+1) * 4 / 3  (its 1 fighter level plus 1 mage level plus 1 thief level: 1+1+1=3, 4 bonus HP from CON 18, 3 classes)

= 3 + 1 + 2 + 3*4/3

= 6 + 4

= 10


At the end of BG+ToSC a F(6)/M(6)/T(7) with CON 19 (+1 from tome) and max HP on every levelup would have

6 * 10/3 + 6 * 4/3 + 7 * 6/3 = 6*3 + 6*1 + 7*2 = 38 HP from hit dices

plus

(6+6+7) * 5 / 3 = 19 * 5 / 3 = 95 / 3 = 31,667 = 31 from constitution (6+6+7=19 levels, 5 bonus HP from CON 19, 3 classes)

=

69 (could be higher if the char had a familiar or wearing items).


  • ussnorway, Grimwald the Wise and Blackraven like this

#15
Grond0

Grond0
  • Members
  • 6,484 posts

Thanks Dyara.  Do you know why a F/ M / C with 18 constitution starts with 11 HPs rather than 10 (as would be expected for rounding down fractions)?  It's only the first level that is affected, i.e. for levels after 1 they will get 10 HPs for each combined F / M / C level.


  • Grimwald the Wise likes this

#16
Dyara

Dyara
  • Members
  • 327 posts

I did not believe it until a made a F/MC myself (never made a F/M/C before :D). The 11 is 7+4 (7 base HP and 4 HP from constitution). At first I thought it could be a bug (perhaps the starting HP are read from a 2da file rather than using the three hit dices to calculate them) but now I think that perhaps the calculation is

 

10/3 + 4/3 + 8/3 = 3.33 + 1.33 + 2.66 = 7.33 = 7

 

instead of

 

10/3 + 4/3 + 8/3 = 3.33 + 1.33 + 2.66 = 3 + 1 + 2 = 6

 

So the rounding down takes place after adding up the gained HPs. Does this happen everytime more than one class gains a new level or (and that's my guess) does it happen only when calculating the starting HP? Unfortunately this situation (more than one class has a levelup at the same time and before it reaches level 10) does not happen again so you can't run a test (unless you edit some 2da files to change the level progression).

 

This 'problem' does not happen for the F/M/T (3.33 + 1.33 + 2 = 6.66 = 6) or any other multiclass.


  • Grimwald the Wise likes this

#17
Grond0

Grond0
  • Members
  • 6,484 posts

You only get 11 for the starting level, i.e. if you manipulate XP to allow all classes to level up at the same time from level 1 to 2 (or any other level combination) you'll only get 10 additional HPs.  It's possible that's because the game applies the level up to each class independently even when they're all levelling at the same time, but I think you could also be right that there's a look up for starting HPs somewhere which is set differently for a F/M/C than the game mechanics.


  • Grimwald the Wise and Dyara like this

#18
Dyara

Dyara
  • Members
  • 327 posts

Made the same test, got the same result :D.

 

... but I think you could also be right that there's a look up for starting HPs somewhere which is set differently for a F/M/C than the game mechanics.

 

Every class, even a multiclass, is linked to a hitpoint 2da file (iirc HP_???.2DA). However for the multiclasses this file seems to be only used for displaying the hp/level on the character screen (in the EE version, don't think the original version had this information?). You can change this file but for multiclasses it only affects the number shown on the char screen but not the starting hitpoints.

 

So I think the calculation of the starting HP really is: add up the HPs, divide by the number of classes and round down.

 

This should be easy to verify by changing the hit dice of fighter, mage or cleric and then looking at the starting HP of the F/M/C (or F/M/T). If you get different starting HPs (and I'm pretty sure you do) then there's really a calculation and not just reading from a file.


  • Grimwald the Wise likes this

#19
wing

wing
  • Members
  • 42 posts

So, I read that and still can't quite process. I imported 3 lvl7 multiplayer characters to Singleplayer BG2, and a dwarf barbarian with 19 con had 480 hp, an elven M/T (6/7) with 17 con had 38, and an elven archer with 17 con had 80. are these (other than the barbarian) correct? 

 

EDIT: assuming max HP on level up, and the archer is the protagonist.

 

Following along, i got:

 

M/T - 17 con

 

6(4/2) + 7(6/2) = 12 + 21 = 33

PLUS

(6+7) * 2/2 = 13 * 1 = 13 

 

46 HP

 

Barb - 19 con

 

7*(12/1) = 84

PLUS

7*(5/1) = 35

 

129 hp

 

Archer - 17 con

 

7*(10/1)  = 70

PLUS

7(3/1) = 21

 

91 HP

 

correct?



#20
corey_russell

corey_russell
  • Members
  • 5,287 posts

Let's see, level 7 barbarian=12 point hit die, + 5 Hp for CON per level up, thus barbarian=17 x 7 levels = 119 HP

 

I'm not certain on the thief/mage.

 

Archer = 10 HP die + 3 HP from CON = 13 x 7 levels = 91 HP max.



#21
wing

wing
  • Members
  • 42 posts

Oops, right you are corey. Thank you. Going to play with those numbers. 



#22
Dyara

Dyara
  • Members
  • 327 posts
M/T - 17 con

 

6(4/2) + 7(6/2) = 12 + 21 = 33

PLUS

(6+7) * 2/2 = 13 * 1 = 13 

 

46 HP

That's correct. However I would calculate (6+7)*2/2 = 13*2/2 = 26/2 = 13 (just to clarify that the fractals - if there are any - aren't lost).