From Hexcrawl to Pointcrawl
making a more simple crawl
2025-09-24
Previously my players did a hexcrawl from Blue Harbor to Beartown to investigate their own death.
The hexcrawling was fine. What I did enjoy was the random encounter tables I came up. What I did not enjoy was calculating travel speeds and being like, okay you traveled 6 miles out of this hex and 2 miles into this one. That felt like too much finicky bookkeeping.
So on the way back, we abstracted the travel into a pointcrawl. Each region or terrain was a point, and it took x number of turns to make it from one point to another. This ended up being much better suited to our style of play.
graph G {
Mountains -- Hills [label="3"]
Hills -- Forest [label="2"]
Forest -- Plains [label="3"]
Plains -- "Blue Harbor" [label="2"]
}
The “distances” are just kind of estimated based on feeling.
I guess if you wanted to be particular, you could take your Travel Modifier By Terrain Type table, and give each edge a number based on that value.
Terrain | Normal | Trail | Road |
---|---|---|---|
Plains | 3/4 | 1 | 1 |
Forest | 1/2 | 1 | 1 |
Hills | 1/2 | 3/4 | 1 |
Mountains | 1/2 | 3/4 | 3/4 |
You can do something like (1 − x) * 4 + 1 to get the distance.
Terrain | Normal | Trail | Road |
---|---|---|---|
Plains | 2 | 1 | 1 |
Forest | 3 | 1 | 1 |
Hills | 3 | 2 | 1 |
Mountains | 3 | 2 | 2 |
But like I said, I just went based on vibes.
So anyway here’s the new procedure:
The number between each point is how many encounters happen before arriving at the next location. Use the existing random encounter, proximity, mein, and landmark tables per terrain.
Each encounter, roll d6. Something happens 1-2: in the morning, 3-4: in the evening, 5-6: at night
This means that something is always happening. Each terrain still has its unique flavor. And I don’t have to actually track fiddly travel speed, miles traveled, etc.
Point crawl!