Rank Guide
指南
/
Rank Guide
更新时间 10 months ago noloyolo

Hi everyone, hope you’re doing well. I’ve been researching how the rank system works in this game, and I thought I would share my findings.

Rank Calculation Process

Here is how the rank calculations work in this game. Whenever you talk to a governor, the following rank calculation is used to determine if you rank up:

nationHappyPoints + cityHappyPoints >= rankThresholdValue

If the combined value of your nationHappyPoints and cityHappyPoints is greater or equal to the threshold value for ranking up for the rank you are trying to get, then you will be promoted.

Now, I’ll explain what nationHappyPoints and cityHappyPoints are.

nationHappyPoints is your current happy point level for the nation that the governor belongs to. Each nation keeps track of how happy they are with you at any given time using happy points. If you help a nation out by fighting their enemies and furthering their political interests, your happy point level for that nation will go up. On the other hand, if you attack a nation, your happy point level with them will go down. You have a separate happy point level for each nation: Spain, France, England, and the Dutch.

cityHappyPoints is your current happy point level for the specific city that the governor belongs to. Each city in the game has a separate happy point level, and you can increase or decrease this level by doing actions that specifically help that city. For example, escorting seedlings or a new governor to a city will increase your cityHappyPoint level, while repeatedly shooting at the city with your cannons will decrease your cityHappyPoint level. So if you want to rank up as fast as possible, it’s a good idea to check in with governors in cities that you’ve helped out a lot.

The rank thresholds for each rank are described in the table below. Surprisingly, it looks like the thresholds are the same on every difficulty level.

Rank Thresholds

One important thing to note is that the rank calculation expression described above only applies for ranks after you reach captain (the first rank). The captain promotion check is very simple, if you have 3 or more nationHappyPoints, you will rank up to captain. If you have less than 3 nationHappyPoints, you won’t get to the captain rank.

Now that we’ve clarified that point, we can look at the thresholds you need to achieve each rank. Here's a table describing it (sorry for the formatting, speedrun.com doesn't seem to support tables :( ).

Rank | happyPoint Threshold (cumulative) | Additional Points Needed Since Last Rankup

Captain | 3* | N/A

Major | 6 | 3

Colonel | 11 | 5

Admiral | 16 | 5

Baron | 23 | 7

Count | 30 | 7

Marquis | 39 | 9

Duke | 48 | 9

*(Must have >= 3 nationHappyPoints)

Happy Point Conversion

We’ve now covered how the game checks to see if you are eligible to rank up, but we still need to talk about what happens after you rank up. Once you are promoted, the game will take the excess amount of points you have and convert them into acres on your estate (50 acres per extra point). 

These excess points will NOT CARRY OVER. So if you want to rank up as fast as possible, you should stick as close to the promotion point threshold values as possible, because going over the thresholds will just lead to wasted points.

This whole process is kind of complicated lol, so let's look at an example of how this works:

You are currently rank 4 (Admiral) and talk to the governor with 22 nationHappyPoints and 3 cityHappyPoints. This gives a combined nationPoints + happyPoints value of 25.

The threshold for rank 5 (Baron) is 23, and since you have 25 total points, you rank up to Baron.

Next, since you have 2 extra points (25 - 23 = 2), those 2 points are converted to acres and you will receive 100 acres.

Since the two extra points don’t carry over, the game subtracts the 2 extra points from your nationHappyPoints score. So after promoting, your new nationHappyPoints value is 20 (22 - 2 = 20).

The game will always subtract the amount of extra points from your nationHappyPoints score, not your cityHappyPoints score.

Gaining and Losing Happy Points

So now that we know how the system works, how do we actually gain happy points? Here is a list of all of the ways I have found to gain (and lose) happy points. 

The 1st column shows the action that will gain/lose points. The 2nd column is how many nationHappyPoints you will gain/lose from the nations affected by the action. The 3rd column is how many cityHappyPoints you will cain/lose from the city affected by the action.

Note that there are a lot of ways to gain and lose happy points in the game, and the conditions surrounding point gains can sometimes be difficult to discern. So while I’ve tried to make this table as accurate as possible, I have almost certainly have missed some things. Please let me know if you found any omissions or inaccuracies and I will update the table.

Action | nationHappyPoints | cityHappyPoints

Deliver Ultimatum | +1 | 0

Deliver Peace Proposal | +1 (both nations) | 0

Defeat Named Pirate | +3 (all) | 0

Defeat Generic Ship** | +1 or +2 (enemies) -1 or -2 (allies)* | 0

Ultimatum Lost at Sea | -1 | 0

Peace Proposal Lost at Sea | -1 | 0

Priest Proposing Amnesty Vanishes | -1 | 0

Governor Fails to Arrive | -3 | -1

Sack City | +2 (enemies) -2 through -6 (sacked nation) | 0

Install New Governor via Sacking | +2 | +2

Promoted at City | 0 | +1

Danced Successfully | 0 | +1

Give Necklace/Ring to Daughter | 0 | +1

Beat Fiance at Sword Fight | 0 | +1

Rescue Daughter from Mendoza | 0 | +1

Bribe Governor | 0 | +1

Pirate Amnesty | 0 | =1 (set to 1)

Install New Governor via Ship Escort | +1 | +2

Defeat Wanted Criminal at Tavern | +2 | +2

Escort Seedlings to City | +1 | +1

Escort Immigrants to City | +1 | +1

Spend Time in Prison | 0 | -1 (per prison cycle spent)

Shoot Cannon at City | 0 | -1***

After Installing New Governor via Sacking City | 0 | =1 if your current cityHappyPoints <= 0

Attack Inbound Traffic to City**** | 0 | -1

Attack Outbound Traffic from City | 0 |-1 (if allied to city)

Sink Ship via Cannons | +1 (all hostile nations) -1 (all allied nations)* | 0

Attack Ship, Then Run Away Without Damaging It | 0 | 0

Attack Ship, Damage It, Then Run Away |+1 (all hostile nations) -1 (all allied nations)* | 0

Defeat Enemy Governor in Ship | +3 (hostile nations) -3 (governor's nation)* | -1

Seedling Lost | 0 | 0

Defeat Indians Attacking a City (first ship attacked) |+2 (nation it's attacking) (total) +1 (others) | 0

Defeat Indians Attacking a City (subsequent ships attacked) | +1 (all) | 0

Defeat Pirates Attacking a City |+2 (nation it's attacking) +1 (others) | 0

Refusing to Dance With Daughter | 0 | 0

Military Troops/Payroll Vanishes | 0 | 0

Attacking Traffic Near a City |0 | -1?*****

Troops Arrive at City | 0 | 0

Divide Plunder | positive values: no effect negative values: will fluctuate some it seems |

0 (but will tend to stabilize towards 0 based on monthly reversion to mean logic)

  • You don’t suffer the negative happy point penalty here while playing on Apprentice

** (Whether you gain/lose 1 or 2 points depends on the ship you are attacking. I think whether it's 1 or 2 is reflected in the log via the happy/very happy language, so try using that to check. Also sometimes the nation who you're fighting against just don't get mad at you for some unknown reason that I haven't figured out yet)

*** (Around ~30% chance per shot, occurs when you press button to shoot and not when cannonball lands)

**** (Seems to only subtract if you attack the ship near its destination)

***** (It seems like attacking traffic that's just nearby a city can make them mad at you. I haven't been able to fully analyze how this works though)

One more thing to add is that your nationHappyPoints can never fall below 0, while your cityHappyPoints can drop below 0.

Difficulty Level

Surprisingly, it looks like the rank up process works the same for every difficulty level except for Apprentice. I would’ve thought that it would be harder and more time-consuming to rank up on Swashbuckler than on Journeyman, but I haven’t found any differences at all between these two ranks (excepting for the fact that combat will be more difficult on the higher difficulties of course).

The only differences when playing on Apprentice seem to be that nations don’t get mad at you for certain things that they would normally penalize you for. For example, capturing a Spanish ship would normally cause you to lose 1-2 nationHappyPoints for Spain depending on the ship type. But on Apprentice, you don’t lose any nationHappyPoints for this. However, apart from this minor difference, the Apprentice difficulty seems to work the same as the other ones. I’ve also tried to capture the differences with Apprentice on the chart above.

cityHappyPoints Mean Reversion Mechanic

Another thing to note is that at the end of every month, the game will select 3 cities at random. It will then move your cityHappyPoint value for each selected city 1 point closer to 0. The same city can be selected multiple times. This is a bit confusing, so I’ll explain it with an example.

Example: At the end of January, the game selects Tortuga, Florida Keys, and Tortuga at random. Your current Tortuga cityHappyPoints is 4, and your current Florida Keys cityHappyPoints is -1.

The game will reduce your Tortuga cityHappyPoints from 4 -> 2 and it will increase your Florida Keys cityHappyPoints from -1 -> 0.

It looks like this mechanism is intended to represent that each city’s opinion of you will slowly revert to the mean over time.

Unfriendly Cities

Some cities also just plain don’t like you for some reason. The following cities will reset your cityHappyPoints at the end of every single month to the specified values if you ever go above these thresholds:

Reset to -1 at end of every month if over -1 points: Havana, Panama, San Juan

Reset to 0 at end of every month if over 0 points: Santiago, Nombre De Dios, Puerto Bello, Vera Cruz, Cartagena, Gran Granada

Example: On January 31, you have a cityHappyPoints value of 3 in Santiago and 2 in Havana. Once the calendar reaches February 1, your cityHappyPoints for Santiago will drop to 0, and your cityHappyPoints for Havana will drop to -1.

The real question is: why are these cities so unfriendly :( 

This truly is one of the great mysteries of Sid Meier’s Pirates. Also… there is a bright spot here.

Cumana, the Best City of All Time

Cumana is apparently the most amazing city ever. At the end of every month, if you have a negative (or 0) cityHappyPoints score with Cumana, it will get reset to 1!!! No matter how mad you make Cumana, they will always forgive you. Hooray for Cumana!

Strategic Thoughts

So, how can this information actually be used to help speedrun? Originally, I was looking into this to try to reroute the Marriage% category. I thought if I could find a fast way to rank to Colonel, I could save time at the beginning of the run. 

I tried a couple things, but unfortunately I wasn’t really able to come up with a better route than the current setup. So please take a look at this data and let me know if I missed something :) 

Another way this information could be used is to optimize the 126 fame route. I haven’t run this category yet, but I think this could potentially be helpful there to minimize the amount of time grinding ranks. It’s also just kind of neat to know how this all works in general. The rank mechanics are actually a lot more intricate than I would’ve thought lol.

How I Found This Information

I dug through the x86 assembly code using the free version of IDA, which is a decompiler. You have to decompile the executable to look at the assembly, and since the steam version of the game has a jumbled executable file, it seems that you can’t decompile that. I was able to find a copy of the .exe online, and I used that for the decompilation.

Note that I own the game, and the .exe I found isn’t a complete version of the game, as it doesn’t contain the other game assets. So you need to combine the .exe with the other game files to get it to run. Please don’t be a pirate in the real world and support the devs :)

Also, let me know if you are interested in seeing my version of the .i64 assembly file that I’ve started commenting/naming functions on, and I can see if I can get that to you.

Fun Trivia

I found out some cool things while researching this that I didn’t know before. Some neat bits of trivia that got cut from the final game:

  • Disease was originally going to be a mechanic in the game, and Indian villages could send you healers to help treat the plagues for afflicted cities.
  • There were missions where you escort holy relics to cities.
  • There’s dialogue indicating that cities could be destroyed and turned into settlements. That would’ve been interesting!
  • You could protect Indian villages from attack in order to gain influence with them.
  • There’s a hidden dev menu that lets you try out the different minigames from the main menu. It’s really cool! You can’t access it normally though, you have to modify the game’s code in order to actually use this menu. I’ll try to make a video showcasing it at some point.

Conclusion

Anyways, I hope you find this guide interesting and/or useful. Have a good day :) 

游戏统计
粉丝
56
记录
105
玩家
12
最新新闻
Rule changes are finalized

After getting feedback for the latest news post, I've decided to implement all the changes listed. So, to reiterate:

  1. The "126 Fame" category now requires you to finish the career track
  2. I've added milliseconds to the game. You can now submit your times with milliseconds (use
9 months ago
最新话题
发布于 2 years ago
19 回复
发布于 7 years ago
0 回复
发布于 9 months ago
7 回复
发布于 9 months ago
2 回复
发布于 10 months ago
2 回复
发布于 2 years ago
7 回复