GURPS combat uses a lot of dice rolls. In addition to attacks and damage rolls, GURPS uses rolls for active defenses, skill checks to handle difficult terrain or maintain concentration, and even morale checks to determine if enemies will flee.

Good GMs know that it is important to keep combat moving in order to maintain player engagement. One way to maintain the focus on the player’s decisions is to streamline NPC time. With all the dice rolls in combat, one easy way to spend less time resolving NPC actions is to pre-roll the dice for NPCs.

## Rolling in Advance

When players roll the dice, it’s exciting! They want to find out the result of their actions. Every roleplayer will have memories of phenomenal rolls that snatched victory from the jaws of defeat—or embarrassing recollections of a truly unlucky roll at the worst possible moment.

Waiting for NPCs to resolve their actions is less interesting. The players want to know what happened, but the suspense of figuring out the dice roll is far less engaging. And, if the players spend too much time waiting for NPCs to finish, they become bored.

While rolling and adding up dice can be time-consuming in game, there’s no reason that the GM has to spend that time during the game. The GM can instead pre-generate a sequence of dice rolls and simply refer to that list during the game.

## How to Pre-Roll

The easiest way to generate a list of dice rolls is to use a digital dice roller and record the results in the order they were rolled. Because all success rolls in GURPS use 3d6, the GM can create a list of 3d6 roll results. Then, whenever the GM needs a success roll for an NPC, he or she can look up the next result on the list, use that number, and cross it off. As long as the dice roller is random, there’s no functional difference between rolling in the moment and using the very next entry in a pre-generated list.

There’s one caveat: the GM can’t look at the number before deciding what the NPC will do! The NPC doesn’t have foreknowledge and so the GM shouldn’t be able to strategically choose the skill or modifiers in order to ensure a success (or failure). The GM needs to choose the action, determine the effective skill level, and *only then* look at the list. The GM also has to take the very next number; it’s no fair skipping around to avoid a critical hit or miss!

This technique can be expanded for other common rolls. For instance, if many NPCs will be making 2d damage rolls, the GM can generate a separate list of 2d results. However, the biggest payoff comes from the 3d6 list because the vast majority of GURPS rolls use 3d6.

## Creating Pre-Rolled Lists in Excel

If you have Microsoft Excel, you can easily create lists of pre-rolled dice results. Other spreadsheet programs will have similar functions, but you may need to adjust the formula to match the program’s function names.

In Excel, create a new spreadsheet and select a blank cell. Then, use Excel’s built-in random number generator to roll three dice by copying and pasting the the following formula:

=RANDBETWEEN(1,6)+RANDBETWEEN(1,6)+RANDBETWEEN(1,6)

The RANDBETWEEN function generates a random number between the two bounding numbers, so RANDBETWEEN(1,6) is equivalent to rolling a single d6. Since we want to roll 3d6, we use that formula three times and add them together.

From there, we can copy and paste that formula into additional cells until we have enough results. Note that each time you change a cell (including pasting this formula into a new cell), Excel will recalculate all the formulas in the spreadsheet. So, you’ll see the numbers change as long as you are building the sheet. That’s fine. Just print out the spreadsheet when you’re done, and use those numbers.

If you want to roll a different set of dice, you can do so by changing the formula. If you decide to roll damage, remember that GURPS does not allow damage to go below 1 (for crushing damage, below 0). You can use the MAX function to impose a lower bound on the result. For example, to calculate 1d-3 piercing damage, you can use the formula below:

=MAX(1,RANDBETWEEN(1,6)-3)

## 1 thought on “Faster Combat by Pre-Rolling Dice”