• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Not a Bug Player character not getting the usual 10 hp bonus after a level up

I do not know if its a bug or not but in previous releases that I have played the player always got 10 hp after each level up. not having the toughness perk. But now after each level up the player character gets 1 point less, which makes it 9, 8, 7, 6 and so on after each level. I am no modder but I suspect this has to do with player starting with 50 hp at 1st lvl rather than 40 hp as it used to be, but I have no idea.
 
Please post your compile.log file as well as a savegame that is affected by this.
Also, did you change any of the game/mod settings?

As far as I know, that shouldn't be happening. But maybe some "player officer type" code is throwing the normal system off.
 
I did change a few ingame settings which are no auto looting, a brothel access, Pickpocketing set to 15 and chestlocks to 8 and changed a few files particulary InitItems.c Ships_Init.c to add a few ships and weapons to Period 1 of Spanish Main and permanent_crewmember_dialog.c and LAi_init.c to add the ability to manage crew inventories as per my previous request. I am also playing in arcade mode. I hope this helps.
 

Attachments

  • -=Edvinas=- Open Sea July 22nd, 1660 1.rar
    546.2 KB · Views: 119
  • compile.log
    96.4 KB · Views: 119
I just got my new hard drive installed yesterday and just started a new game. This does sound like a bug in his game as when my old hard drive died I was at level 38 or so and had well over 400 HP.
 
This does sound like a bug in his game as when my old hard drive died I was at level 38 or so and had well over 400 HP.
I was indeed also pretty sure this should work quite fine.
That is why I'd like to hear some confirmation that this problem can be replicated by other people as well. :onya
 
This is how it looks for me: seadogs2_0017.jpg
 
This is how it looks for me
A level 20 player character should by default have 230 HP.
You have slightly more. Did you use the Apothecary and/or the Bridgetown Maltese Knight Abbey (specifically that white mist)?

In any case: You don't have decidedly less HP than what you're supposed to have, so no problem there.
So your report suggests this problem cannot be confirmed.
 
I installed the new, official version last night, then played through "Ardent" to confirm that it works properly. When I level up, I get 9 HP added to the maximum.

If a level 1 character starts with 50 and you are supposed to get 10 per level then at level 20 you should presumably have 50 + 10x19 = 240 HP maximum. The apothecary, the abbey mist and the "Toughness" perk will all add to that.
 
I installed the new, official version last night, then played through "Ardent" to confirm that it works properly. When I level up, I get 9 HP added to the maximum.
Do you get 9 HP for each level? Or does it end up reducing further as you gain higher levels?

I wonder if the "player captain type" (normally shown as header in the F2>Character interface if you have no Rank) may affect this in some way.
It potentially could....
 
I haven't reached all that high a level, but the first couple of level-ups both resulted in gains of 9 HP maximum.
 
I haven't reached all that high a level, but the first couple of level-ups both resulted in gains of 9 HP maximum.
You can use the Cheatmode to force some level-ups.

Actually, using that is probably the best way of testing this quickly under different conditions.

This issue should be related to the ResetMaxHP function that I think is in PROGRAM\Characters\Levelling.c
 
@Edvinas681: I found the opportunity to look at the code related to this and found:
Code:
     int PlayerHPperLevel = CHAR_HITPOINTS_PER_LEVEL;
     [...]
     if(CharacterIsFriend(chr))
     {
       //Friendly
       PlayerHPperLevel = (PlayerHPperLevel+1)-GetDifficulty()+GetHPLevelBonusOT(chr);
     }
     else
     {
       //Not Friendly
       PlayerHPperLevel = (PlayerHPperLevel)-(4-GetDifficulty())+GetHPLevelBonusOT(chr);
     }
     HP += (level-1) * PlayerHPperLevel;
This means the "HP per level" changes depending on the difficulty level.

There is also an effect of "officer type". This may affect the player character as well:

OFFIC_TYPE_CAPNAVY
OfficerTypes.(type).hpbasebonus = 40;
OfficerTypes.(type).hplevelbonus = 2;

OFFIC_TYPE_CAPPRIVATEER
OfficerTypes.(type).hpbasebonus = 20;
OfficerTypes.(type).hplevelbonus = 4;

OFFIC_TYPE_CAPPIRATE
OfficerTypes.(type).hpbasebonus = 10;
OfficerTypes.(type).hplevelbonus = 5;

So it looks like this is, quite literally, "Not a Bug", but a Feature.
 
Back
Top