• 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 Improve Performance in 3D Sailing Mode

Select everything that applies to you

  • -- WHERE DID YOU NOTICE ANY REDUCED PERFORMANCE? --

    Votes: 0 0.0%
  • -- WHAT IS THE MOST RECENT MODPACK VERSION WITH THE BEST PERFORMANCE? --

    Votes: 0 0.0%
  • Build 14 Beta 3.1/3.2

    Votes: 0 0.0%

  • Total voters
    17
That is a video capture tool, no? Don't you have to pay for that?
All I'd need is the FPS.
 
What is the best (free!) way of displaying the PotC frame rate on the screen? It appears that I don't airways have very smooth performance with the latest modpack versions either, so it might be nice if we can quantify that.

Right now I can't really play the game due to the Leveling issues, so cannot proudly properly check the remaining quest issues.
And pretty much everything else is on hold pending player feedback. So perhaps I can give this issue one last shot.
I use MSI afterburner. It's a freeware tool. Search online and you will see how you can have it show FPS. It should be the most reliable option cause it reads directly from your videocard.
 
I use MSI afterburner. It's a freeware tool. Search online and you will see how you can have it show FPS. It should be the most reliable option cause it reads directly from your videocard.
Interesting; I'll check tomorrow. :doff

What I intend to do is to establish some sort of "base case" for testing, probably:
- Start in a certain port (Cartagena?)
- Use the console switch(3) set of ships to ensure there are multiple high-detail ones in the scene
- Get myself in a fight of some kind so there will be plenty going on

Do that on all modpack versions starting with Beta 3.1 as @Hylie Pistof said the problem got introduced somewhere between Beta 3.3 and Beta 3.4 (right?).
And then we'll see what happens....
 
The free version of Fraps shows fps, takes screenies in BMP format, and takes movies in AVI format for 30 seconds with a Fraps overlay on the top of the screen.

The paid version of Fraps shows fps, takes screenies in 4 different formats, and allows movies to be taken of unlimited size.

I play POTC3.3 as it is the last version that works properly. All versions after that are unplayable.
 
I play POTC3.3 as it is the last version that works properly. All versions after that are unplayable.
Unplayable because of the performance issues, right? Or were there any other major concerns?
We need to get everyone on the latest version soon, otherwise we'll never get anywhere.

Still beats me why all efforts to narrow down what happened between 3.3 and 3.4 never led to anything sensible at all.
It truly should have done as there is no other way. Hopefully that still change when I do the needed tests myself.... :facepalm
 
I have always used Fraps.
I tried a console switch(3) at the start of the Standard Storyline and hoisted a PIRATE flag in front of the Speightstown blockading squadron.
Framerate was 20-25 FPS and dropped to 10 while I was firing my cannons.
There seemed to be a stutter of some kind, but unfortunately that did not reflect in the FPS shown on the screen so it is hard to quantify.

It does seem better in that Beta 3.3 version.
 
Last edited:
Doing my tests based on the following:
- Start with the Beta 3.3 install that @Hylie Pistof reported as being the last smooth one
- Build Default Settings on Arcade Game Mode
- Started a new game, Standard Storyline, default settings, used console case(3) to give me a fleet of high detail ships, including the Cursed Black Pearl trailing fog
- Set sail from Speighstown, check average FPS in normal conditions
- Hoist PIRATE flag to check FPS in battle
- Observe "stuttery" behaviour by moving the camera around a lot
- ENB Installed and Error Logging ON to make the game extra heavy
- FPS measured with FRAPS


Free Sailing: 30 FPS
Battle: 25 FPS (drop down to 15 when lots of cannons are firing)
No notable stuttering observed

Framerate does drop notably when the Time Compression is increased:
1x = 30 FPS
3x = 25 FPS
5x = 22 FPS
10x = 13 FPS
20x = 8 FPS


NOTE: This ended up in a battle with 5-6 ships, which is a heavier case than the previous one above

Free Sailing: 30 FPS
Battle: 25-30 FPS (drops down to 20-25 when lots of cannons are firing)
No notable stuttering observed

Framerate does drop notably when the Time Compression is increased:
1x = 25-30 FPS
3x = 23 FPS
5x = 18 FPS
10x = 11 FPS
20x = 7 FPS


Free Sailing: 30 FPS
Battle: 25 FPS (drops down to 15 when lots of cannons are firing)
No notable stuttering observed

Framerate does drop notably when the Time Compression is increased:
1x = 27 FPS
3x = 21 FPS
5x = 17 FPS
10x = 11 FPS
20x = 7 FPS


NOTE: This ended up in a battle with 8 ships, which is a heavier case than the previous one above

Free Sailing: 30 FPS
Battle: 25 FPS (drops down to 15 when lots of cannons are firing)
No notable stuttering observed

Framerate does drop notably when the Time Compression is increased:
1x = 29 FPS
3x = 24 FPS
5x = 18 FPS
10x = 11 FPS
20x = 7 FPS


Build 14 Beta 4 WIP (latest)
http://www.piratesahoy.net/threads/build-14-beta-4-internal-wip-for-testing.25696/

NOTE: Weather was foggy at this time

Free Sailing: 25 FPS
Battle: 23 FPS (drops down to 16 when lots of cannons are firing)
Seems to be some occasional stuttering

Framerate does drop notably when the Time Compression is increased:
1x = 20 FPS
3x = 11 FPS
5x = 6 FPS
10x = 3 FPS
20x = 3 FPS
 
I really can make heads nor tails of this.

Made a "benchmarking" save in Beta 3.4 and used that in Beta 3.3 as well for testing.
While the game does sometimes seem stuttery, I have been completely unable to consistently replicate it.
First time I test it in Beta 3.4, it seemed dodgy. Tested Beta 3.3 with various of the ZIPs posted above and it seemed OK.
Back to Beta 3.4 and there is seemed also OK!

I have got no clue left what else might be done on this. Even the Beta 4 WIP seemed reasonable now.

It seems that while there can be performance issues with the most recent modpack versions, it truly is the epitome of inconsistency.
By the looks of it, I fear we can continue chasing our tail here until the ends of time and never figure it out.
I'm marking it as "Engine Limitation" and be done with it. If somebody else can narrow things further down and/or actually solve this, be my guest. :doff
 
Just out of curiosity, when sailing at a good speed in your latest release if you look down at the bow wave does it scroll smoothly or does it stop and start? It is supposed to scroll smoothly but when it stops and starts the whole game stops and starts. I am not saying that is the cause but it is one of the easy to see symptoms.

I do not have a problem with low frame rates except that they make that stop and start larger.
 
Just out of curiosity, when sailing at a good speed in your latest release if you look down at the bow wave does it scroll smoothly or does it stop and start? It is supposed to scroll smoothly but when it stops and starts the whole game stops and starts. I am not saying that is the cause but it is one of the easy to see symptoms.
I didn't pay attention to that, sorry.
 
Today I got into several fights with the Mefisto for testing purposes.
Don't know why, but performance dropped down during the (NOT LARGE!) battle and got to quite disturbing levels.
It does still seem like something is decidedly wrong somewhere.
 
Did it drop down every time? If so that would be a nice testcase.
 
Pretty much. But it seems to always do that.
Except that one time I tried to specifically test this.
 
Holy crap, performance in 3D sailing mode has REALLY gone right down the drain!
Today I started an Assassin storyline and just sailed out of port.
There was a noticeable delay every game second. Nothing smooth about this anymore at all. :shock

To be absolutely sure it isn't something I did, I disabled this section in PROGRAM\BATTLE_INTERFACE\BattleInterface.c:
Code:
  if (CheckRelations)
   {
     CheckAllShips("forts", true); // PB: Set initial relations for ships
     CheckAllShips("ships", true); // PB: Set initial relations for forts

     UpdateRelations();
   }
And got rid of EVERYTHING in procUpdateTime as well.
That disables any and all updated Sea AI and Relations code, so that isn't it.
But then what IS???
 
I just tried the "Sunday 27 September 2015" version and even that one is DECIDEDLY better in performance.
Will have to continue my investigations, because this isn't even funny anymore.
 
@Levis: So far I have been getting the impression that it ARE character skills that are causing the performance to drop down.
Haven't yet been able to trigger truly bad performance using this simplified code:
Code:
int GetEffectiveSkill(ref character, string skillName)
{
//   Trace("GetEffectiveSkill for " + GetMySimpleName(character) + " and skill " + skillName);
//   int skillPoints = GetCharacterSkill(character, skillName);
//   return GetEffectiveSkillByValue(character, skillName, skillPoints);
   int skillPoints = sti(character.Skill.(skillName));
   return skillPoints;
}

int CalcEffectiveSkill(ref Character, string skillName)
{
//   Trace("CalcEffectiveSkill for " + GetMySimpleName(character) + " and skill " + skillName);
//   int skillPoints = CalcCharacterSkill(character, skillName);
//   return GetEffectiveSkillByValue(character, skillName, skillPoints);
   int skillPoints = sti(character.Skill.(skillName));
   return skillPoints;
}
It looks like those functions get called A LOT while in 3D sailing mode, most notably CalcEffectiveSkill by the looks of it.
One solution might be to save the "effective skill after applying main skill, items, officer contributions and officer type" in a separate attribute.
Then we could read from that rather than calculating it again each time we want to know the number.

Just consider that GetEffectiveSkillByValue gets called so often and applies an officer-type based calculation that is the same each time but gets called all the time anyway.
The repeated calling of ApplyFleetMali can't be helping either, can it?

In any case, all these performance issues today are quite disheartening. I really hope you can figure something out to really speed it right back up.
Otherwise I'm beginning to wonder if I should return to the Beta 3.3 base and add all Beta 4 content, excluding everything skill-related.
That won't be a fun project and I'd really rather not do that. :shock
 
Still the same frame rate and still the same stop-start-stop-start.
You're running quite a recent modpack version now, aren't you? Can you upload your PROGRAM\Officer.c file?
I'd like to make some simplifications to that for you to test with to check the game performance at sea.

As for the whole "slow motion ashore", is that also exclusive to Beta 3.4+ or does that affect also Beta 3.3?
 
This is the 22 Sep 2015 version.

The slow motion thing is caused by WinX.
 

Attachments

  • officers.c
    34.6 KB · Views: 209
Back
Top