From World Map to Battle Map: Planning D&D Campaign Maps at Every Scale
Most campaigns need one map this month, not four. Here is what each scale is for, how to keep a DM version and a player version from the same seed, and a prep routine that takes an evening instead of a weekend.
Somewhere on a hard drive near you is a folder called campaign maps with forty files in it. Three of them have ever been shown to a player.
That folder is the symptom of a common mistake: treating the campaign map as one thing. It isn’t. A campaign uses maps at four different scales, each does a different job, and in any given month your players are only touching one of them. Prep the one they will touch. Leave the rest as a seed number in a text file until you need it.
The four scales a campaign actually uses
Every map answers one question. The question changes with the scale.
| Scale | Covers | Question it answers | Session use |
|---|---|---|---|
| World | Continents, oceans | Where is everything? | Shown once, referenced rarely |
| Region | A kingdom or two | Where can we go next? | On the table most sessions |
| Local | A few days’ travel | What is between here and there? | Travel and exploration sessions |
| Battle | One room or clearing | Where do I stand? | Combat only |
The world map. This is the one on the front page of the campaign binder. It shows continents, the big oceans and the names of empires nobody in the party has visited. Players look at it at session zero, feel the size of the setting, and then mostly forget it. That is fine. Its job is to make the world feel bigger than the adventure, not to be consulted every week.
The region map. This is the workhorse. One kingdom, maybe two rivals, a coastline, a mountain range, the cities the party will actually travel between. If you only ever make one map for a campaign, make this one. Most of what a party does over a year of play happens inside one region, and a region map is the scale where a river, a road and a border all still mean something.
The local map. A few days of travel: the valley between the last town and the dungeon, the stretch of coast with the smugglers’ cove. This is the scale where hexes earn their keep, where a random encounter table attaches to terrain, and where “we go north” becomes a real decision with real costs. You do not need this map until the party is about to walk across it.
The battle map. A single room, a clearing, a bridge. Five-foot squares, cover, difficult terrain. It is a completely different kind of object from the other three, closer to a board game than to a map, and it is the one most DMs already know how to find.
You only need one scale this month
Prep in the order players will encounter things. A new campaign needs a region map by session one, because the party has to be somewhere and be able to see where else they might go. It needs a world map by session zero only if you want the “here is the whole setting” moment, and a rough one is enough. It does not need a local map until the party leaves the starting town, and it does not need a battle map until the first fight.
The forty-file folder comes from prepping every scale at once. The party goes south instead, and two of those files ever get used. The fix is a seed, not a file. With a procedural generator a map is a seed number plus a few settings. Write the seed down and you have the map without having drawn, exported or filed anything. Generate it the week the party actually goes there. The scale guide covers how far one map should stretch before you step down a level, but the short version is: if the party could cross it in one session, it is local; if crossing it is the campaign, it is regional.
The DM map and the player map
Two maps, one seed. The DM map has everything: every city labeled, every kingdom named, the ruined tower in the hills the party is not supposed to know about yet. The player map is the same geography with the knowledge stripped out. It shows coastlines and mountains, because those are visible from anywhere, and hides the names, because names are things you learn by going there.
In the generator, the labels toggle in the Advanced panel hides kingdom, sea and city names in one click while leaving the terrain, the city marks and anything you added yourself. Export once with labels on for your binder, once with labels off for the table. Same seed, so the two files line up pixel for pixel, which matters when you reveal a name later and want it to sit exactly where the blank was.
Reveal by editing, not redrawing. When the party learns the name of the eastern kingdom, add it back. Click the blank spot, type the name, export the player map again. Over a campaign the player map fills in, and by the end it looks like the DM map because the players earned every label on it.
Fog of war is the same idea in a VTT. Roll20 and Foundry both let you cover a map and uncover it as the party moves. Upload the unlabeled export as the base and reveal terrain as they travel. For names, add them as text objects on the VTT layer when learned, or swap in the labeled export at a milestone. The VTT import guide has the pixel sizes and grid settings that make this painless.
Hexes, travel and how the map turns into sessions
A region map becomes playable when you know how far a day is. The 5e rules give you the numbers: at a normal pace a party covers 3 miles per hour and 24 miles in an eight-hour day, a fast pace covers 30 miles at the cost of a -5 penalty to passive Perception, and a slow pace covers 18 miles while allowing the party to move stealthily. Difficult terrain halves all of that, so a 24-mile day through swamp or deep snow becomes 12. Those figures come from the System Reference Document’s movement rules, and they are the only travel maths most campaigns ever need.
Pick a hex size that matches the day. A 24-mile hex means one hex per day on roads and open ground, half a hex in forest or hills. That makes the region map readable at a glance: three hexes to the coast is three days, and everybody at the table can count. A 6-mile hex is the traditional wilderness crawl size, four hexes a day and a lot more decisions per session. Use the big hex for regional travel and the small one for the local map when you get there.
The generator does not draw a hex grid. Export the PNG and add the grid in your VTT (Roll20 and Foundry both overlay hexes on any image) or in an image editor. The scale bar is drawn on the export, so you can size the grid so that one hex equals one day and check it against the bar.
Size the region map so a session’s travel is visible. If a session covers three days of travel and three days is a fingernail on your map, the map is too zoomed out for the table. The Continent preset produces a single landmass with coasts on every side, which at a 24-mile hex comes out at roughly two to four weeks of travel edge to edge. That is a good size for a campaign year. For a single kingdom, zoom the same map, or generate the Island preset and treat it as a peninsula.
Cities anchor the travel. The generator puts settlements on coasts, river mouths and confluences, which gives you travel legs for free: port to river town is a two-day leg with an inn at each end, river town to the mountain pass is four days and no inn. The city placement post explains the logic.
Where battle maps come from
This generator does not make battle maps. It produces world, continent, island and archipelago maps with named kingdoms, rivers, forests and cities. It has no dungeon mode, no five-foot grid, no room drawing. What it is good for is the three larger scales, and producing DM and player versions of them from one seed.
For battle maps, use battle map tools. Dungeon Scrawl and Dungeondraft are the usual choices for drawing your own, both VTTs ship with grid and wall tools, and there are enormous libraries of free encounter maps on Reddit and Patreon. Match the battle map’s terrain to what your region map says is there. If the fight happens on the coast road between the port and the river town, the battle map should have a road, a sea cliff and whatever the map key says grows there. Consistency between scales is what makes players feel the world is one place.
Keep a seed log
One text file, one line per map. The single most useful campaign document after the session notes is a log like this:
Vaelmark (region) seed 48213 continent parchment labels off for players
Vaelmark world seed 48213 world atlas shown at session 0
Greyfen marsh seed 90117 island ink local, sessions 9-11
The seed rebuilds the map exactly, every time, on any device. You never have to find the file, and when a player asks for the map you generated eight months ago, you have it in five seconds.
Use the same style across the campaign. If the world map is Atlas and the region map is Parchment, they look like two different worlds. Pick a style at session zero and keep it for every map the players see. The DM copy can be anything; Ink prints cheaper.
A one-evening prep workflow for a new campaign
- Generate the region. Open the D&D map generator, which loads the Continent preset. Roll a few seeds until a coastline suggests something: a sheltered bay, a river valley, a peninsula with one road in.
- Pick the starting kingdom. The map names two or three realms. Choose the one whose name you can say out loud without wincing, and make it home. The neighbour becomes the rival. You now have the campaign’s first political fact without writing a word of lore.
- Name three places. Click the starting city and rename it to something the players will say every week. Rename the nearest port. Rename one thing in the wilderness (a forest, or a ruin you place with the marks tool). Three names is enough for session one; more than that and nobody remembers them.
- Export both versions. Labels on, PNG at 2x, into the DM binder. Labels off, export again for the players.
- Upload the player version. Put the unlabeled PNG in your VTT as the landing scene, or print it at A3 for the table. The Roll20 and Foundry guide covers sizes and grid alignment.
- Write the seed log. One line. Done.
That is an evening, and most of it is deciding which seed you like. The world map can wait for session zero, the local maps can wait for the party to leave town, and the battle maps come from somewhere else.
What to hand players at session zero
Keep it short. Players who get a twelve-page setting document read two pages of it.
- The unlabeled region map, printed or pinned in the VTT
- The name of the starting kingdom and its capital
- The name of the rival kingdom, and one sentence on why they are rivals
- One rumour about somewhere on the map they cannot yet name
- The scale: “a hex is a day on the road, two in the hills”
Everything else they will learn by going there, which is the whole point of a map with the names taken off.
Dungeons & Dragons and D&D are trademarks of Wizards of the Coast; none of this needs their maps, their setting or their permission, and it works the same in Pathfinder or any other system with a party and a road.
Try it on a real map
Generate a world with working rivers, named kingdoms and a compass rose. Free, instant, no signup.
Generate a MapKeep reading
How to Print a Fantasy Map: Sizes, Resolution and Paper That Actually Work
A map that looks perfect on screen can come out of the printer soft, cropped or grey. Here is the export scale to pick, the paper to buy and the sizes that fit a real frame.
Fantasy Map Symbols and Legends: What Every Icon Means and When to Use It
Every mark on a map is a promise to the reader. Here is what the standard fantasy map symbols mean, where they came from, and the handful of rules that keep a key from turning into clutter.
Fantasy Map Art Styles Explained: Parchment, Atlas, Ink, Watercolor and Verdant
Parchment, atlas, ink, watercolor, verdant. Each look has a real history behind it and a job it does better than the others. Here is where they come from and which to pick.