The Captain

General info

Hello, i am happy to introduce my project called "The Captain". It is a battle-nav helper which observes the battle board and suggests you best possible moves. In language of law, this program is somewhat legal (according to terms of use of YPP) because it does not interact with the game by itself, you are doing all the clicking. As proof of this being real, here is a short video i have made: The Captain (alpha preview) - YouTube

Table of contents


Additional info:
  • Beta 1.2 release was focused on performance, the identification process was split up into 4 threads allowing the guessing of tiles being much faster. For more info check figure 5.
  • This program has nothing to do with bot supply, however the code was reviewed and verified by Scarecrow. Even with this verification you are responsible for using it and for any loss (banned pirates or software error, but this should not be detectable at all) that would be caused by this program. As common to all similar programs: Even when it is safe, use it on your own risk.
  • This program is coded in C# which means it is only available to windows users
  • It is currently usable for atlantis and HS, but HS is still feature-in-development
  • It will not work in PvP battles
  • It will not work in Blockades

Strong sides:
  • Computes every possible move
  • Finds best possible solution in terms of chance (Highest chance to hit opponent with lowest chance to get hit)
  • Counts with whirlpools, rocks and winds
  • Self-optimizes at runtime for faster performance, mostly finds solution under 5 seconds!
  • Can also find you grapple moves (if you can reach enemy within 4 moves)
  • Can be set up for different ship sizes, forcing the program to avoid shots much more if the enemy is larger (you could max GF with sloop, the battle would just take very long time)
  • If some tile is not recognized, it tries to guess it with great 96% succession! For 100% reliability you can identify new tiles manually
  • Recognizes end of the board and treats it as large rock
  • Recognizes whatever tile is under the ship
  • Fancy solution display with manual damage counter (no need to type in chat anymore)

Weak sides:
  • Does not work in fullscreen
  • If you let it guess the unknown tiles, there is tiny chance for invalid move
  • Does not count with ship ramming (because it is very rare and the outcome depends on size of ships and enemy moves)

This program is dependent on remembering visual appearence of tiles. It can learn those tiles only by doing pillages and remembering what it have seen (currently it knows thousands of tiles). Also after observing new tiles, the tiles needs to be sorted (which is very easy).

Download/Payment info:

Get your access code now:
Choose duration
Download Link (Full version 1.3):
The Captain pack - recommended for first time use
Executable only - recommended for update
1.4 Prerelease - Cool new features but does not recognize some ship sizes. Will not work correctly when fighting "Cutter, Dhow, Longship, Baghlah, Merchant Galleon, Xebec, War frigate, Grand frigate".

Instructions — how to use

Important notice: Allways have the executable file at same location as "tiles" folder and "usage.dat" file. If you want to run this from your desktop, just make shortcut to the executable.

This is official and complete tutorial on how to use The Captain and it will give you understanding of all the buttons and other controls. Just keep in mind one basic thing, if the program encounters some error, you will get a message popup. Mostly the error is not critical and the application will be able to continue. If you get error messages too often either restart the application or send me a bug report explaining what exactly happened before the error appeared, during what action it happened.

Figure 1: The login screen

First that you see when you run the program is login screen, you just need to put in your username and access code that you received in the email. You may use the "apply for trial code" button to get 1-day access for free, due to security measures it is possible that you will not get trial. Remember checkbox means if you want the Captain to remember your user details. Only check it if you use it on a safe place. Next time you run the app, it will enter the details for you (but only if they are valid).

Figure 2: Successfull login

If you manage to log in, you will also see for how long you can still use The Captain. The given time is not exact (it omits minutes and seconds), it should just keep you enough informed. This feature may be subject of change in future. The login screen will stay up while the app is downloading new tiles (over 10MB if it needs to download all of them). Be patient while it updates as the tiles are essential for the program.

Figure 3: Successful update

When the app updates successfully, you will see a window like this. You just need to click overlay button to start using The Captain,the reason for this window is due to Microsoft measures that does not allow the program to start in overlayed mode. Also this window may be useful in future for some settings.

Figure 4: Minimised overlay in the top left corner

After you click the overlay button, this should appear in top left corner of your screen. If you use some programs that are "allways on top" they might interfere with The Captain, if possible switch them off or set them not to be on top. (Example could be Jing or winamp) The X button will exit the application anytime you need to. Button marked as ▶ will show/hide all other controls. It is useful when you get out of battle so the Captain will not obstruct your screen until you get back to battle. The "MAX 6/6" label is used for various information. When you select ship sizes it will show you amount of small cballs needed to max them ( default 6 / 6 because sloop vs sloop is default).

Figure 5: Basic Captain controls

This is the most important part containing all the settings that you may need to set during battle. First button labeled with _ hides unnecessary info whenever you need to. Under that is wide unlabeled button, you can try to click it withou any harm. it will simply make the control area transparent, which may be sometimes useful. Click it again to make the background white again. Next to that is Find button, you only need to use it once. With it you will tell captain where are the borders of battle board. If you need to move game window, you will have to click Find again then. More about Find button will be explained at figure 8. Then you can see two rows of controls, top is for your ship and the second line is for enemy. Number-labeled radio buttons tell, how many maximum moves could the ship use. If you select ships size (more at figure 7) the moves of corresponding ship will be set to either 3 or 4 (depending on its size). If you want to save up moves during battle, you can set your moves to two for example. The Captain will then try to find best solution within 2 moves. If you set enemy ship to some specific amount, The Captain will expect the enemy ship to move X moves at most. That is useful when your opponent is damaged and you know they will do 1 move at most. Last control (the numeric updown) sets the caution-level for the solution. You don't need to set it manually as long as you select size for your and enemy ship. Setting your ship to sloop and enemy to GF will set the caution to 24 because GF is literally 24 times stronger than sloop. If you want to try for better score you can set it to a bit higher value, but it will also make the battle longer.

Update Beta 1.2:

This version added three new controls. First is Anti-grapple which will force your ship to fully avoid being grappled. Such feature has its downsides as with it turned on, the moves will be "more stupid" and the battle can take much longer. I encourage you to not use this option, but if you really need to, it is your choice. Another is "Guess" option, that is mainly for performance. With this option turned on, any new/unknown tile will be guessed. Problem is that guessing can take very large amount of time, if the program takes too long time to give you solution, switch this off. If this option is off, any unknown tile will be treated as empty spot (with exception of whirlpools). Switching this off may result in higher chance of invalid moves, but it is still better than getting moves too late. Last option, which you can't switch manually is HS. It will tell you, if it thinks that the board is Haunted Sea or anything else. If it detects HS this option will automatically be checked and all enemy ships will be allowed to move through rocks during computation phase.

Update Full 1.3:

"Auto" checkbox was added. If checked it will observe the hourglass and wait for the correct time to identify tiles.

Figure 6: Fancy solution window

This window will show you the computed moves for your ship in an easy-to-understand way. The solution is in this separate window so you could move it anywhere you wish. The trackbar sets opacity of window so you can easily see through it. Last thing to notice are two numeric up-downs. They will allow you to easily keep track of score without needing to remember it or type into game chat. Left is for how much damage you did and right is how much damage your ship received. If you click to add score, it will add one turn worth of enemy shots. So you don't need to count cannonballs, just in how many turns did the opponent hit you. For example if your enemy is sloop, one click will add 1 score (eg. one small cannonball). If enemy ship is dhow, once click will add 1.5 to score (eg. one medium cannonball). At last when enemy is War Brig, one click will add 3 (eg. two medium cannonballs). Last thing to note is, that when you hit the max value of any ship, the score won't go any higher.

Figure 7: Ship list

The ship dropdown contains all types of regular ships. Any ship designs do not make difference. Just one thing to note is, that if there are multiple enemies (In atlantis for example), selecting enemy to be longship means that all enemies will be treated as longship. You will have to manage caution level by yourself out in SMH. Simply when you feel that your ship is hit way too much, just add a bit more until you feel that the score is balanced.

Figure 8: Example of region selection
Update Full 1.3:

The find button now detects borders automatically. If you want to use old-school style mentioned below, right-click the find button instead of left click.

This part will explain how to properly select battle board with Find button. For this part it is most important to switch off any allways-on-top applications, otherwise this part will visually glitch. First you will click Find button and then your screen will turn green and you should see thin red cross on your cursor. Then you need to click (do not drag) on top left corner of battle board, after that move your mouse to bottom right corner. During this second stage you should see transparent rectangle from the point you clicked first to your mouse cursor. After you click bottom right corner, the screen will no longer be green and the ! and G buttons will appear.
Important notice: You must allways select region smaller than the actuall battle screen, never larger. Selecting too large region will result in dramatic slowdown in performance!

Figure 9: Controls including ! and G(rapple) buttons

After the board region is identified, the magic ! and G buttons will appear. ! button is the most important and magic one, it will find best possible gain and display it in the fancy window. During the process, you can see how tile identification goes (which is the part that takes most time). If you can not possibly shoot enemy within the selected amount of moves, it will suggest nothing (or waiting). The G button will find best grapple moves if you can reach enemy in given amount of moves. It is useful to only look for grapple after you have maxed enemy. Also before clicking the button, set the enemy moves to 0 as you can expect them to stay at spot if they are maxed.
Important notice: You must allways click the ! or G button after all animations have finished! Which means that there must be no gunshot splashes or grapples and by no means moving ships! Otherwise it will not recognize most of the tiles.
Also allways check if the moves are valid, more info at figure 11.

Update Full 1.3:

The ! and G buttons are now visible from the start as they will automatically find the borders at start.

Figure 10: Example of identification process

This is example of tile identification stage. You will see progress live on your screen. Tiles that were already processed and recognized will be marked by ✔ symbol. tiles that were unknown and guessed will appear with some text in brackets. For example (tson) for "tile->ship->own->north" (for the purpose of program, north is in the top right corner). After all tiles are processed, you will see a solution and validation info over ships, more in figure 11.

Figure 11: Identification is finished

After the indentification is complete, you must validate the moves. There will appear O with arrow on your ship which shows the direction of ship. Also there has to be X on enemy ship with proper direction. If any of the previous is missing, the move is invalid (because the tiles were unrecognized) and you can not trust the solution. You will have to improvise. For more info check the update section.

Figure 12: Working solution

When you know that the solution is valid, you can set up your moves according to the solution window. Important thing to notice are the numbers next to moves with shots/grapples. They tell value of each shot. If you think that the value is too small, you don't have to shoot and simply save up your cannonballs for later. This is particularly useful when you are running out of cannonballs. According to figure 12 if you had only one cannonball, you would shoot at third turn rather than 4th turn. Last thing to notice that this window shows you when and where to shoot. If you have large ship enough to fire 2 cannonballs at once, fire them both if possible.

Figure 13: Grapple solution

This figure shows an example of solution after clicking G button. Note that the grapple solution is only found if you can possibly reach enemy within selected amount of moves. If you can't reach them, you will see solution suggesting you to stay at spot. Because you may expect the enemy to stay at spot, you will have to move closer to the enemy manually. Also there is large score bonus for grapple, otherwise it might not find grapple moves thinking it is too dangerous. Because of this bonus you will mostly be offered some grapple solution, but you may happen to run into enemy shots (it still tries to find the safest path, there is just larger threshold).

Figure 14: Manual tile identification

This window will only appear if you have "Guess" checkbox unchecked and some unknown tiles are encountered. It will allow you to manually identify each tile. The tile you need to identify is large image on the top. To identify it simply click the coresponding image. After all unknown tiles are identified, the analysing process will be rerun automatically.


If captain encounters new tile during recognition, it will be automatically sent to the server. There is no way to switch this feature off, but no worries. Such file is very small in size (less than 2kB) and it will not slow down your internet. Also the tiles are uploaded only after the solution has been found, which means it will not slow down the solution algorithm at all. After the tiles have been uploaded to server, they have to be manually sorted by administrator. That will happen very often in June (on daily basis) and less often later when more tiles are known (on weekly basis). After the tiles have been sorted your client will download them automatically making you allways up to date. When there is update of executable file you need to download it manually from this page. If the update is crucial to proper functionality, you will not be able to log in with your old version. If the update is minor change, the old version will still be allowed.