Skip to main content
⌖ OF Intel

GUIDES

OpenFront Trade Ship Destinations: Where Your Ships Actually Go

A practical v0.34.22 decision guide for the one thing you cannot do in OpenFront: steer your trade ships. Covers the weighted-random destination pick (level, the 300-tile exclusion, proximity and alliance bonuses), why nearby ports are excluded, the global spawn throttle, and the levers that actually change where your ships land.

Tutorial Difficulty · Intermediate Published Oct 6, 2026 Updated Oct 6, 2026 Reviewed by OpenFront Intel editors #trade#port#destination#warship#economy

Direct answer: you cannot steer a trade ship, so you steer the pool

OpenFront gives you direct, moment-to-moment control over almost every unit on the map. You click a warship and it patrols the tile you choose. You order a transport and it lands where you point. Trade ships are the exception. A trade ship has no input you can give it after it leaves the dock. The moment it spawns, the engine has already decided which port it will sail to, and nothing you do during the voyage changes that. So the question “how do I make my trade ships go where I want?” does not have a button. It has a different shape.

The shape is this: you do not steer the ship, you steer the pool that the engine picks from. Every trade ship is a random draw from a weighted list of eligible destination ports, and that list is built from things you very much do control: which ports exist, at what level, at what distance from you, in which connected body of water, and under which alliances and embargoes. The weighted list is not the same as “all ports on the map.” A port less than 300 tiles from you is not just less likely to be picked — it is not in the list at all. An allied port that clears 300 tiles is picked about twice as often as a neutral one at the same level and distance. A level-3 port is picked about three times as often as a level-1 port. So “where my ships go” is a function of the structure of the port network, and that structure is yours to design. The reframe the whole rest of this guide builds on is: stop asking how to aim a ship you cannot aim, and start asking which ports I am going to make eligible, weighted up, and weighted out.

That also means a lot of the folk wisdom floating around the community is half right and half backwards. “Build ports close so your ships do not have to travel far” is the wrong instinct for trade ships, because the closer a port is to you the more likely it is to be excluded from your own destination pool entirely. “You can click a trade ship and send it somewhere” is simply not in the game — that click-to-steer control exists on warships, not on trade ships. “My ships go random” is true at the level of a single ship and false at the level of a network: one voyage looks like luck, but over hundreds of voyages the weighted pool settles into a very predictable distribution, and two players with the same port count can earn different totals purely because their pools differ. This guide is the map of that pool. The version boundary next pins every number to one specific tag, because if the tag moves, the specific distances and weights move with it even though the rule you cannot-steer-the-ship stays the same.

Version boundary: what v0.34.22 actually documents

Everything in this guide is pinned to the formal v0.34.22 release tag, and the constants below are the ones that tag’s source actually implements. If you are reading this on a different build, the rule is stable but the numbers drift, and the specific recommendations that depend on a number — especially the 300-tile exclusion and the 330-ship saturation knee — should be re-checked against whatever tag your server is running.

The five numbers that the whole guide stands on are these. First, the short-range exclusion distance is exactly 300 tiles: a destination port whose Manhattan distance from your port is strictly less than 300 is removed from your destination pool. This is a hard cut, not a penalty — below the line the port’s weight is zero, so level and alliance cannot rescue it. Second, the proximity bonus covers the first N nearest eligible ports, where N is the port count divided by three, clamped between 4 and the total port count. With 6, 12, 15, 18, or 24 eligible ports that means the first 4, 4, 5, 6, or 8 nearest ones get doubled. Third, each port contributes one copy to the weighted pool per level, so a level-L port has L times the base weight of a level-1 port. Fourth, an allied or same-team receiver adds one extra copy on top (doubled), and that bonus stacks with the proximity bonus. Fifth, the global spawn throttle has a saturation knee near 330 ships in play and a soft floor until roughly 800 ships, which is why per-port trade income declines in the late game even when nobody has changed anything.

Two more boundary facts matter and are easy to miss. The destination is chosen exactly once, at the instant the ship spawns, and it is not re-rolled if the network changes while the ship is sailing. If the destination port is demolished, or an embargo is declared after departure, the ship simply returns home and the voyage pays nothing; the engine does not reroute it to a new port. And the destination pool only ever contains ports owned by other players who are permitted to trade with you: your own ports never appear as destinations for your own ships, a player under embargo is excluded in both directions, and a port that is not in the same connected water component as the water beside your port is invisible to your ships no matter its level or alliance. Every section after this one is an expansion of these five numbers plus these two boundary facts, and the “version” label in the page metadata is the single place where that pin lives, so if the pin changes the numbers in the scenarios change too.

The destination pick: how the engine builds your pool

The engine does not pick from “all ports.” It builds a fresh weighted list every time one of your ports is about to spawn a ship, and the list is built in three passes that you can actually predict. Understanding the three passes is the entire skill, because once you can compute the pool in your head you can tell before you spend gold whether a new port will help or quietly do nothing.

Pass one is eligibility. The engine looks at every port on the map owned by a player who is not you and who is allowed to trade with you, and keeps only the ones that share a connected water component with the water immediately beside your port. Everything else is gone before weighting even starts. This is why a huge island across a narrow strait can have ten level-5 ports and still receive zero of your ships: if the water beside your port and the water beside their port are not one connected component, they are in different pools and never meet. This is also why a landlocked economy that only trades by rail gets no trade ships at all — trade ships sail on water components, and a landlocked port is not on the component your ships can reach.

Pass two is the base weight. For each eligible port, the engine pushes that port into the list once for each level it has. A level-1 port appears once, a level-2 port appears twice, a level-3 port appears three times. The ship is then a uniformly random element of the whole list, so a port that appears three times is drawn three times as often as one that appears once. This is the only place raw “how strong is that port” enters: level is the multiplier, and it multiplies the other two bonuses that follow.

Pass three is the two bonuses and one exclusion. Going through the eligible ports in order of distance from your port, the engine applies a proximity bonus to the first N nearest that cleared the 300-tile exclusion (doubled, from the previous section’s N), and a friendly bonus to any eligible port owned by an allied or same-team player (doubled). A port that is both close and allied can therefore carry up to four times its level in copies, while a hostile port at the same distance carries only its level. And the exclusion runs across the whole pass: a port under 300 tiles is never put in the list, so it contributes zero copies regardless of the bonuses. The pick is then random element of the list, and that is the ship’s destination for the whole voyage. The next section breaks each of these three weighting sources into its own rule of thumb.

The three weights and one exclusion, each with a number

You can turn the three weighting sources into simple multipliers because they are all just “how many copies of this port are in the list.” Base weight is the level. A level-3 port has 3 copies, so against a level-1 port at the same distance and same relationship it is drawn 3 to 1. This is the quiet lever most players never touch: upgrading a far port that you want your ships to feed does not just make that port spend more, it makes every one of your ships about three times more likely to land there once it is eligible. The catch is that level only multiplies a port that is already in the list. A level-5 port under 300 tiles has zero copies no matter how many upgrades it has, so a big nearby ally is exactly as invisible as a small one until it crosses the line.

The proximity bonus is a ring, not a slope. It applies to the first N nearest eligible ports and to no others, where N scales slowly with how many eligible ports exist (four when there are six or twelve, five at fifteen, six at eighteen, eight at twenty-four). The practical reading is that there is a sweet band: the ports just past 300 tiles are the most-favored eligible ports on the map, because they are the first to clear the exclusion and they sit at the head of the nearest-first ordering that hands out the ring. A port 310 tiles away is weighted more than a port 900 tiles away, all else equal. That inverts the naive “farther is better” heuristic that the payout curve alone would suggest. The distance still matters a lot — a 900-tile voyage pays far more gold than a 310-tile one, as the trade route chokepoint guide lays out — but the selection probability does not grow with distance the way the payout does. You can have the most valuable port in the pool receive the fewest ships of any port in the pool, because it is far and outside the proximity ring.

The friendly bonus is an alliance toggle with a distance precondition. An allied or same-team receiver that is eligible (at least 300 tiles away) gets its level doubled, so an allied level-2 port behaves like a level-4 port for the purposes of how often your ships pick it. That is why teaming up around a shared trade hub can feel like the ally is siphoning your income: the friendly bonus redirects a large share of your pool toward them. The precondition is the same 300-tile floor, so an ally who parks a port ten tiles from you is not receiving your ships at all — which is the single most common source of the “why is my ally getting so much” complaint, and it is answered by the exclusion, not by the bonus. The exclusion, finally, is not a weight, it is a deletion: under 300 tiles the port has no copies, full stop. The next section is dedicated to why that deletion makes “build near” the worst possible plan for a trade port.

Why “build nearby” is the wrong plan for a trade port

The most common trade instinct in OpenFront is to cluster: build your ports close to your allies and close to your own territory so your ships have short, safe trips and everything feels connected. For factories and for warship coverage that is often the right call. For trade-ship income it is the wrong call, and it is wrong for a reason that is not a penalty but a deletion. Below 300 tiles a port is not in your destination pool at all, so a cluster of ports around your home base produces a local area with very high port density and very low trade-ship destination density. Your ships are, by construction, never allowed to land on the ports nearest to you.

Think about what that does to the shape of your income. A player who clusters ten level-2 ports within 200 tiles of home has built a dense local network that their own trade ships largely ignore, because every one of those ports sits under the exclusion. The ships spawn and then land on the nearest ports that are at least 300 tiles away — which are someone else’s ports, or the few far ones this player also owns. The cluster still does real work: it gives warships places to retreat, it anchors rail lines, it gives a dense territorial core. But if the reason you built it was to feed trade-ship gold, the cluster is quietly failing that job, and the failure is invisible because the ships are visibly sailing and visibly landing somewhere — just not where you think.

The correct placement for a trade port is the opposite of the cluster: it must clear the 300-tile line from the ports whose ships you want it to receive. If you want your base to feed a forward economy, the forward port has to sit at least 300 tiles from the base’s trading ports, and ideally just past that line so it lands in the proximity ring. If you want to feed an ally, the ally’s hub has to be 300 tiles or more from your port and in the same water component, and ideally allied so it also takes the friendly doubling. And if you are trying to understand why your income is thin despite a big local port count, check the distance: count how many of your nearby ports are actually above 300 tiles from the port that spawns the ships. The number is usually much smaller than the port count, and that gap is the entire explanation. The how many ports to build guide covers the count question; this is the distance question, and the two answers are independent.

The global throttle: tickets, the pity timer, and the 330-ship knee

A trade port does not spawn ships on a fixed timer. It rolls for a ship on a repeating cadence, and each roll is a low-probability ticket, so the spacing between ships is random with a long tail. Every ten ticks, each level of your port gets one independent roll. A level-3 port takes three tickets per check, a level-1 port takes one. The per-ticket chance is set by a single number, the spawn rate, and the probability of a ship on a given ticket is one over that rate. At the start of a game, with few ships in play, the rate is around the mid-sixties to low-seventies, so each ticket is roughly a one-in-seventy chance, and a level-3 port therefore has roughly a one-in-twenty chance to spawn a ship on any given ten-tick check. That is why the first ships feel a little slow and then start arriving in bursts: you are drawing from a low-rate, high-variance process.

Two things change that rate, and both of them are in your favor after a while. The first is the per-port pity timer. Every check on which the port fails to spawn leaves a mark, and the marks lower the spawn rate, which raises the per-ticket probability, so a port that has been dry for a while is statistically more likely to ship on the next check than a port that just shipped. This is what makes a lone port eventually produce: it is not a guarantee, but the expected wait shrinks as the dry streak grows, and a higher-level port shrinks it faster because it takes more tickets per check. This is the mechanism behind the “I sat with two ports for five minutes and nothing docked” experience — it is the throttle plus the randomness, and the lever is level, not patience.

The second thing, and the one that dominates the late game, is the global saturation curve. The spawn rate is divided by a saturation factor that is close to one early on and then climbs steeply around 330 trade ships in play, with a soft floor that keeps spawning possible (at a reduced rate) until roughly 800 ships. The practical meaning is that past about 330 ships, every port on the map spawns more slowly, and the slowdown is a property of the whole fleet, not of you. Building more of your own ports does not carve you an exemption: it adds to the same global count that is throttling everyone. This is the zero-sum behavior the community keeps measuring in their port math, and it is why “build more ports” stops paying in the late game even when the per-ship payout has not changed. The throttle is the reason the destination question and the count question diverge in the endgame: past the knee, the winning move is to raise the level of the receivers you actually want and to control who else is in the pool, not to add tickets to a fleet that is already saturated.

What you can steer: warships, and why trade ships are the odd one out

It is worth stating the asymmetry plainly, because a lot of the confusion about trade ships comes from assuming the ship is like every other unit. Warships can be steered. You can set a warship to patrol a specific tile, and the game tracks that manual change: when the patrol tile you have chosen changes, the warship updates its plan, and for a short window after you move it the automatic retreat-and-repair behavior is suppressed so it follows your order instead of its own survival reflex. Transports, likewise, are pointed and they land where you send them. So for the two combat-and-logistics classes, the control loop is “you choose the tile, the unit goes there.” That loop is real and it is the part of the game you can feel your hands on.

Trade ships do not have that loop. There is no tile you can assign, no patrol command, no “send this ship to that port” action. The ship’s destination is fixed by the weighted pick at the instant it spawns, and the only automatic behavior the engine runs during the voyage is a safety check: if the destination port is no longer active, or an embargo has been declared in the meantime, the ship turns around and returns to its home port and the voyage pays nothing. It does not pick a new destination; it just gives up. So the set of things you can do mid-voyage to a trade ship is effectively empty. You cannot speed it up, you cannot reroute it, you cannot protect it with a specific order (you can only have warships patrolling the waters it is likely to cross, which is the warship loop applied around it).

That asymmetry is the whole point of the guide. The game hands you a real steering wheel for warships and transports and then hands you a locked wheel for the unit that carries your main late-game income. So the skill is not “how do I aim the trade ship” (you cannot) but “how do I design the port network so that the engine’s unsteerable picks land where the gold is.” You steer the warships to protect the routes the ships will take, you steer the transports for landings, and you steer the pool for the trade ships. The next section lists, concretely, the levers that move the pool, in order of how much they matter, so you can rank your decisions against what is actually in the game rather than against the buttons you wish existed.

The levers that actually move where your ships land

Putting the three weights and the exclusion together, here is the ranked list of the things that genuinely change your destination distribution, in roughly descending order of effect, with the honest caveat attached to each. First, water connectivity. This is the gate and the only lever that can reduce a port’s weight from anything to zero on the structural side. A port must share a connected water component with the water beside your spawning port. If it does not, no amount of level or alliance brings it into the pool. The action item: before you plan a far trading port, confirm the water beside it and the water beside your port are one component; on island maps this is the difference between a port that works and a port that is permanently invisible to your ships.

Second, the 300-tile exclusion. Above the exclusion a port can be weighted; below it it cannot, so the single highest-value edit to a bad pool is to move a key receiver from just under 300 to just over. If a hub you want to feed sits at 290 tiles, shifting the concept — building that hub 30 tiles further, or building your feeding port 30 tiles further — moves it from zero copies to full copies plus possibly the proximity ring. This is the only lever that turns a zero into a number, which is why it outranks the pure multipliers.

Third, port level. Level is a clean multiplier on a port that is already eligible. Raising a far, eligible receiver from level 1 to level 3 roughly triples the share of your pool it captures, and it also gives that port more spawn tickets if it is one of yours. The honest caveat: level multiplies the selection share, it does not change the distance-based payout a ship earns when it lands (that is the port versus factory guide territory), so a level-3 nearby-but-under-300 port still captures nothing.

Fourth, the proximity ring. You cannot move the ring itself, but you can put ports at the head of the nearest-first ordering by placing eligible receivers just past 300 rather than far away. A 310-tile port is inside the ring on almost any map; a 900-tile port is not. The action item: when you have a choice of two eligible receiver spots, the nearer one wins more ships even though the farther one pays more per ship, so the right answer depends on whether you want volume or value.

Fifth, alliance and embargo. An allied receiver at 300+ gets its level doubled, and an embargoed player is deleted from the pool in both directions. So allying with a hub you want to feed buys a clean 2x, and embargoing a rival who has been siphoning your pool (because they sit in your ring) deletes their ports from your picks entirely. Embargo is the sharpest pool-edit in the game and the embargo timing guide covers when to pull that trigger. What is missing from this list, on purpose, is “click the ship,” because that lever does not exist, and every other lever on the list is how you compensate for its absence.

Two worked scenarios, with numbers and assumptions

Scenario A is the classic “I built a big local cluster and I am broke” case. Assume a player at v0.34.22 has, around a home base, five level-2 ports all within 200 tiles of one another, plus one level-2 port 500 tiles away in the same water component, and the map has, total, about 14 eligible ports for that base’s ships. Every one of the five clustered ports is under 300 tiles, so all of them contribute zero copies to the base’s destination pool. The only port of the player’s that is eligible is the far one at 500 tiles, which sits outside the proximity ring (the ring is the first four nearest eligible, and it is filled by other players’ ports that happen to sit between 300 and 400 tiles). The player’s ships therefore land on their own port at a rate roughly equal to that one level-2 port’s two copies divided by the whole weighted list, which is a small single-digit percentage. The assumption that matters here is that the clustered ports are doing nothing for trade income: they are warship and rail infrastructure, not trade destinations. The fix is not “upgrade the cluster” (level on an excluded port is worthless for selection) but “add eligible receivers just past 300” — moving the hub concept to 320 tiles and making it level 3 moves it from a small fraction of the pool to a large one, and that is the single change that moves the player from broke to a steady stream.

Scenario B is the “my ally is richer than me with fewer ports” case. Assume two allied players, A and B, each with three level-2 ports, both in the same water component, and A’s ports are 340 tiles from B’s hub while B’s ports are 280 tiles from A’s hub. A’s hub is eligible from B (it is over 300 and allied), so B’s ships weight A’s hub at level 2 times the friendly doubling, roughly four copies, and possibly more if it is in B’s proximity ring. B’s hub is not eligible from A (280 is under 300), so A’s ships put zero copies on B’s hub. The result is one-directional: B’s ships feed A, and A’s ships feed nobody on B’s side. A is richer not because A built more but because the distance between the two hubs is asymmetric across the 300-tile line. The assumption doing the work is that both hubs are the same level and in the same component, so the only thing separating them is distance and the 300-tile cut. The fix is a shared decision: B moves its hub 60 tiles farther so it also clears A’s exclusion, or A accepts the one-way flow as the cost of the current geometry. Either way the lever is distance across the 300 line, not port count, and once the player sees the two numbers (340 versus 280) the “they are just better” explanation collapses.

Failure modes, counterplay, and mode-and-map adjustments

The failure mode most worth naming is the invisible one: your income is thin and you cannot see why, because the ships are visibly sailing and landing. The diagnostic is to compute the eligible set, not to count ports. Open the map, pick the port that spawns your ships, and list every other port that is (a) in the same water component, (b) not under embargo, and (c) at least 300 tiles away. The length of that list, not your total port count, is what your income is actually built on. If the list is short, your network is dense-but-local and your ships are all landing on the few far ports that qualify, so the counterplay is to add receivers just past 300 in the same component rather than to add more of what you already have. The second failure mode is the late-game drop: income falls with no visible cause. That is the 330-ship saturation knee, and the counterplay is to stop adding tickets and instead raise the level of the few eligible receivers you actually want and to use embargo to remove rivals from the pool, because past the knee the count lever has gone negative.

The third failure mode is the cross-component trap, and it is the one that survives longest because it looks like bad luck. A player on an island map builds an excellent port on a different island and gets almost no ships to it, and the only explanation available from inside the game is “my ships go random.” The real cause is that the two bodies of water are separate components, so the far port is structurally ineligible and no amount of waiting fixes it. The counterplay is a connectivity check before any long investment: confirm the water component, and if it is a separate island, plan the connection (or plan the port on the near island). The fourth is the embargo surprise: an ally you are feeding declares an embargo on you (or you accidentally embargo them) and a large share of your pool silently vanishes, because embargo deletes the other player’s ports in both directions. Check the embargo state whenever a pool suddenly shrinks.

Mode and map change which levers dominate. On small, dense maps most ports are under 300 tiles, so the whole map is near the exclusion and trade is scarce for everyone; there the connectivity and distance levers are the only ones that work, and the count lever is nearly useless because adding a port usually adds another excluded one. On large, spread maps many ports clear 300, the eligible set is big, and level and alliance become the differentiators because distance is less of a binding constraint. On island maps connectivity is the gate that beats everything else, so a single strait can decide whether your whole trade network works. The decision table below compresses each lever into what it does, when it binds, and the action that follows from it, so you can work it top to bottom before you commit gold to the next port.

Decision table: which lever to pull, and when

LeverWhat it changesWhen it binds hardestAction
Water connectivityMoves a port in or out of the pool (0 vs. weighted)Island maps, straits, landlocked rivalsConfirm the same water component before investing; connect or relocate otherwise
300-tile exclusionTurns a zero-weight port into a full-weight portAny receiver sitting just under 300Push a key receiver from ~290 to ~320 tiles; the only zero-to-something move
Port levelMultiplies an eligible port’s share (1x/2x/3x)When a far eligible receiver is already in the poolUpgrade the far eligible receiver, not the near excluded one
Proximity ringDoubles the first ~4-8 nearest eligible portsChoosing between a 310-tile and a 900-tile receiverPut volume receivers just past 300; keep value receivers far
Alliance bonusDoubles an allied eligible receiver’s levelFeeding a chosen ally in the same componentAlly the hub you want to feed and keep it at 300+
EmbargoDeletes a player’s ports from your pool (both directions)A rival in your ring is siphoning your shipsEmbargo the siphoner; re-check whenever your pool suddenly shrinks
Port countAdds spawn tickets (yours) and eligible entries (theirs)Below the ~330-ship kneeAdd ports only while the fleet is below saturation; after, raise level and cut the pool instead
Distance of a single voyageSets the gold that voyage pays (not the selection odds)Deciding volume vs. valueFar = higher payout per ship, lower share of ships; see the chokepoint guide

Work the table top to bottom. Connectivity and the exclusion are the gates, because they decide whether a port is in the game at all; level, ring, alliance, and embargo are the multipliers and deletions that decide how the pool is split once the gates are set; and port count is the throttle-sensitive lever that only pays below the 330-ship knee. The one row that is not in the table, on purpose, is “steer the ship,” because it is not a lever and never will be. Every other row above is real, every number in it is pinned to v0.34.22, and the whole list is the compensation for the locked wheel: you cannot aim the trade ship, so you aim the network it sails through, one port at a time, at the right distance, in the right water, and with the right allies and embargoes.

Read the gates first and only then the multipliers, because a multiplier applied to a port that the gates have already excluded is worth exactly zero. That ordering mistake, upgrading a too-close port before fixing its distance or its water connection, is the most common way players burn their first hundred upgrades on nothing, so the discipline this table asks for is simple: never spend level gold on a port until you have confirmed it survives both the connectivity check and the 300-tile line, and never plan a network that depends on a strait you have not verified.

Related content

Continue reading
Adaptive Build Order: Spend the Next Gold on the Constraint

Use OpenFront v34.3 costs, troop growth, route payback, and stop signals to choose City, Port, Factory, defense, or a liquid reserve without copying a fixed script.