Having a Bash at Travel in BIND

They say you have to playtest, but they forget that I’m a lazy man, so when it came to travel rules, I didn’t feel like simulating a bunch of journeys. So it’s time to get the computer to do the work for me.

Setup

An encounter roll occurs every 1D6 intervals in BIND (where an interval = ‘one quarter of the day’ = ‘6 hours’).

Travel rates are around 10 miles per day for a caravan on a road, so to travel 50 miles, the troupe will need 5 days (i.e. 20 intervals). In bash, we can represent these rules as so:

roll_an_encounter(){
    encounters=0
    miles=$1
    intervals_required="$(calc $miles / 2.5 )"
    while [ "$intervals_required" -gt 0 ]
    do
        encounter_time=$(( RANDOM %6 +1))
        encounters=$(( encounters + 1 ))
        intervals_required=$(calc $intervals_required - $encounter_time )
    done
    echo "Encounters: $encounters"
}

Now we can plot a full journey of 30 miles with one command:

roll_an_encounter 30

Some of the first or last encounters are sometimes replaced with traders, but the longer the journey, the less ‘beginning’ and ’end’ there is.

Time remaining: 	8 intervals
Time remaining: 	6 intervals
Time remaining: 	3 intervals
Time remaining: 	2 intervals
Time remaining: 	-2 intervals
Encounters: 5

Currently, a good deal of journeys will be 30 miles, and 5 encounter rolls just seems too much!

The longest of journeys could go up to 80 miles (i.e. 8 days of travel).

roll_an_encounter 80

This looks much worse…

Time remaining: 	26 intervals
Time remaining: 	22 intervals
Time remaining: 	20 intervals
Time remaining: 	19 intervals
Time remaining: 	17 intervals
Time remaining: 	12 intervals
Time remaining: 	9 intervals
Time remaining: 	6 intervals
Time remaining: 	3 intervals
Time remaining: 	0 intervals
Encounters: 10

In fact, it’s unplayable. This entire session would be a series of fights with various beasties - hardly ‘background noise’!

Halving Distance

Repeating that with half the usual distance, we can ask the computer for lots-and-lots of rolls, and get the following:

JourneyMin.MaxAverage
10131.4
40385

That looks rather more workable; perhaps a touch on the high side, but that’s a burden for the rest of the system to bear. The best remedy here is keeping the encounters snappy, and fun.

Tags :

Related Posts

BIND is a grunge-fantasy tabletop RPG designed to solve a number of problems:

Read More

The Joys of Automation

I don’t think any sane individual could write something like BIND without automation tools. Games with a similar scope require a team.

Read More

I Want Realistic Dragons

Weighing into an ancient (or at least senile) fantasy debate, I’d like to go back a step. The debate usually goes like this:

Read More