The harbor map generator draws a stretch of waterfront on five-foot squares. The town fills the top of the sheet and the harbor fills the bottom. Between them runs a stone quay with bollards along its edge, and behind that a cobbled street lit by lanterns. Two or three timber piers reach out into the water, most with a ship moored alongside, and small boats are tied off the quay between them. On the quay stand a cargo crane and stacks of crates and barrels. Along the street are the harbourmaster's office, the customs house, a bonded warehouse and the stalls of a fish market, with more roofs crowding in behind. About half the harbors have a stone breakwater reaching in from one side with a beacon burning at its end. Every landmark is numbered and keyed.
How the harbor is laid out
A working harbor is a line: water, quay, street, town. The generator builds it in that order. The quay edge is straight, because that's what quays are for. The piers go out at even spacing so there's room for a ship between each pair, and each gap only ever holds one ship. Every ship is drawn with its deck, hatch, masts and furled yards, and mooring lines run to the pier. The crane goes on the quay where no pier is in the way, and cargo is stacked around it.
The buildings along the street are drawn as roofs seen from above, in a mix of tile and slate, with a shadow on the side away from the light. The named ones are the places a party actually goes. The fish market is an open space with its striped stalls, between the buildings. When there's a breakwater, the piers are shorter to leave the harbor mouth open.
What happens on the docks
Harbors are where the adventure arrives and leaves, so they get used a lot. Smuggling is the obvious one: the customs house is where the papers are checked, the bonded warehouse is where the goods wait for duty, and the ship at the end of the pier is where the goods really are. A chase runs along the quay, across the piers and over the decks. A fight on the waterfront has the water as a hazard on one side and narrow piers as chokepoints. The harbourmaster knows every ship that came in this month, and the fish market knows everyone else.
Free SVG and PNG downloads
Both formats are free for your games, streams and published adventures. The PNG is a 1920-pixel render ready for Roll20, Foundry or Owlbear Rodeo, and the Print button gives you a black-and-white sheet for the table. The SVG is the vector original: open it in Inkscape, Affinity or Figma to add ships, rename the buildings or extend the piers. Everything on the map is drawn by our own code, so there's no attribution to carry and no asset licence to read.
What it won't do
It draws one stretch of waterfront at battle-map scale. It doesn't draw the whole port city, the inside of the warehouse, or the ships' lower decks. For the city, roll a city map; for a ship's deck in detail, the ship deck plan generator; for the tavern on the corner, a tavern map.
Name the port, then dock
The port city name generator names the town this harbor belongs to, the ship name generator names the ships along the piers, and the pirate captain name generator names whoever owns the one nobody has unloaded.