• 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!

Fixed Leveling: Sudden Huge Amounts of XP Gained

Please let me know:
- How is the FPS/Feel after loading
- How are the loadtimes

I've moved some of the "more intensive" characters to the loadtime instead of the runtime. This means the lag at the start of a new location should be reduced to 1 or 2 seconds (which always was there already).
I've also moved the start of the post init 1 second after the loading is done. This is so it won't interfere that much with the other stuff happening then. Hopefully this makes the lag at the start of an area less also.

These changes should cause this:
- First time loading an area there is about an 5 second extra loadtime on area's with many characters, I think this is acceptable. I think I've even scraped off some loading time in the past so if you compare this with earlier versions I think we are talking about 2 to 3 seconds.
- When an location start the fps will slowly climb and after about 3 to 4 seconds the fps should be on the max.
I can remove even more from the runtime, but remember the first second of lag isn't caused by this. It's caused by other stuff (mostly weather stuff I believe). If people want I can see if I can move or optimize some of this stuff too.

I just noticed an issue which was there always already I think.
When exiting an location the post init wont stop so it could cause problems with fantoms not being there anymore.
This will be fixed today.

newer version:
Needs Testing - Leveling: Sudden Huge Amounts of XP Gained | Page 20 | PiratesAhoy!
 
Last edited:
Another Update to keep folks happy,
Fixes the bug with ship data not being avaible for the main character
Makes sure you wont get an opium ambush when vcskip is enabled
Little bit more optimilization for load times
Tweaked some of the values for officer price and level
Officer prices wont increase anymore when they level up (still working on a "I want a raise!" option)
Added apothecary to the fetchquest. So please test this!

newer version:
Needs Testing - Leveling: Sudden Huge Amounts of XP Gained | Page 20 | PiratesAhoy!
 
Last edited:
Officer prices wont increase anymore when they level up (still working on a "I want a raise!" option)
Never? I think their prices should increase or you'd REALLY never want to hire officers later in the game;
they'd be STUPIDLY expensive compared to those sad suckers who agreed to join you for a tiny fee when you just started. :facepalm

Their prices shouldn't go up huge amounts on level-ups.
Or perhaps only when they level up a skill point that is relevant to their job.
But they should increase to some extent to keep them somewhat in line with officers you'd hire later.

still working on a "I want a raise!" option
I do like that idea, but figure it might be fairly tricky to implement.
You'd need to be able to trigger a dialog with ANY officer, regardless of whether they're captain of a companion ship or not.
And then get that to trigger at sensible times too. Sounds like a Beta 5 wish to me....
 
Never? I think their prices should increase or you'd REALLY never want to hire officers later in the game;
they'd be STUPIDLY expensive compared to those sad suckers who agreed to join you for a tiny fee when you just started. :facepalm

Their prices shouldn't go up huge amounts on level-ups.
Or perhaps only when they level up a skill point that is relevant to their job.
But they should increase to some extent to keep them somewhat in line with officers you'd hire later.


I do like that idea, but figure it might be fairly tricky to implement.
You'd need to be able to trigger a dialog with ANY officer, regardless of whether they're captain of a companion ship or not.
And then get that to trigger at sensible times too. Sounds like a Beta 5 wish to me....
actually its not that hard (I think by just assigning an extra dialog file to them when they are assigned as officer).
Looking into it now. If it's to hard I just add a automatic raise. I like the idea to only have a raise when they level a skill point which is relevant to them but I think people could exploid that :p.
I was thinking of triggering it when you enter your deck, that sounds like a sensible time to me.
 
There was a slight mistake in the zipfile. So uploaded a new version
 
actually its not that hard (I think by just assigning an extra dialog file to them when they are assigned as officer).
I hope so! It would be cool to have, that's for sure.
I'm just afraid it'll bring with it a fair bit of complexity that is hard to figure out in advance.... :oops:

I like the idea to only have a raise when they level a skill point which is relevant to them but I think people could exploid that :p.
Possibly, yes....
Maybe ALSO recalculate their salary whenever you change an officer's role?

I was thinking of triggering it when you enter your deck, that sounds like a sensible time to me.
That IS pretty much the reason why I had that whole Visit Deck option added, so I certainly don't mind that actually beginning to see proper use.
But of course it is easy to avoid visiting at all (without even doing that on purposes); I do that ALL the time and I know @Hylie Pistof does too.
So that is another bit of an exploit there....

Possible solution though: Have an attribute that disables the "Straight to Sea" option which can be added to the player.
We can then add that whenever there is anything crew-related that requires the player's attention, who will then be forced to visit the ship deck and talk to the relevant officer.

If you decide to do that, could you set it up in such a way that completely different reasons for such events would be supported too?
For example, your boatswain coming to talk to you about a brawl that occurred or your gunner providing you with ammo?
 
@Levis, what do the 'rankbonus', 'hpbasebonus' and 'hplevelbonus' actually do?
Also when officers are assigned to different roles?
 
@Levis, what do the 'rankbonus', 'hpbasebonus' and 'hplevelbonus' actually do?
Also when officers are assigned to different roles?

there will be some explanation in the comments once I have some time again :).
For now here is the simple rundown:

rankbonus: When a random character is generated with this officertype the rank he gets is increased/decreased with a random number between zero and this
hpbasebonus: a absolute bonus to the HP
hplevelbonus: a relative (to level) bonus to the HP

And yes they are reapplied when changing the officerrole.
 
Possible solution though: Have an attribute that disables the "Straight to Sea" option which can be added to the player.
We can then add that whenever there is anything crew-related that requires the player's attention, who will then be forced to visit the ship deck and talk to the relevant officer.

If you decide to do that, could you set it up in such a way that completely different reasons for such events would be supported too?
For example, your boatswain coming to talk to you about a brawl that occurred or your gunner providing you with ammo?

Was thinking about that too
 
Does that mean an officer can decrease in rank and HP by reassigning his role?
only the HP is changed. the rank is only used on first creation.

And yes it means that.
I think that sounds somewhat logical because you ask him to perform a different kind of task
I tought about adding it to the character when making him or her but tought this would be better. if you dissagree I can change it.
 
Thanks for clarifying, @Levis. I don't have any objections to your idea there at the moment; just wanted to make sure I understand. ;)
 
I hope to finish the office tutorial very soon (hence I asked about those skill things). In there everything will be explained :).
 
This includes the old grass texture and it has the coas one also. For the kralendijk port its set up to use that one (You'll see once you start with assassin).
 

Attachments

  • Levis_Fixes_okt15_3.zip
    666.1 KB · Views: 193
I hired an (any!) officer to take command of a companion ship of mine.
This guy was hired as OFFIC_TYPE_ABORDAGE (I think) and does not have ANY skill bonuses:
upload_2015-10-17_13-43-11.png

Does that seem right to you?

He also seemed to be doing very quick levelling up during a storm and especially AFTER it (probably due to his Repair skill increasing).
For comparison, these were his skills upon hiring:
upload_2015-10-17_13-44-53.png


Not sure if that is right or not....
 
Also error.log entries:
Code:
RUNTIME ERROR - file: Leveling.c; line: 46
function must return value
RUNTIME ERROR - file: Leveling.c; line: 46
function 'AddXP' stack error
RUNTIME ERROR - file: Leveling.c; line: 46
function must return value
RUNTIME ERROR - file: Leveling.c; line: 46
function 'AddXP' stack error
Related to this line:
Code:
bool AddXP(ref chref, string expName, int _exp, string group)
{
   bool LevelUp = false;
   //First catch some weird cases which shouldn't happen in the first place. let log if they do happen.
   if(!CheckAttribute(chref,"index")) { return; if(DEBUG_EXPERIENCE>0) Trace("XP ERROR: Character "+chref.id+" has no index");}
I propose changing that to say 'return false' instead of just 'return'.
 
Oops that was from testing something. Yes it should return false. And the rest seems right to me, he can have no bonusses, try a few more. I advice to search a quartermaster in a Dutch colony ;).
 
Back
Top