BattleTech Movement

This page lays out the process that our gameplay group went through to solve a gameplay problem. Our group was made up of game designers, a UX designer, and a gameplay programmer (myself).

BattleTech presented some interesting interaction problems. The player’s ‘Mechs are moved in turn-based gameplay; facing at the end of the move is important (with limited rotation based on move distance), and each ‘Mech has an array of weapons with varying ranges. During our initial playtests this resulted in a lot of time spent previewing destinations, selecting a destination, rotating and then realizing a target was not within range/rotation limits.

Our first step to address this was to draw lines from the moving ‘Mech to any possible target. Red lines are viable targets from that position; dotted lines are either out of rotation limits, or out of range of all weapons.

Next, we added small chevrons at the sides of all available targets. Each one of these chevrons represents a weapon, and the size of the chevron indicates the potential damage from that weapon at the proposed position. To avoid sprawl, we collapsed these into weapon types.

Weapons in optimal range are drawn in gold, and weapons in other (still valid) ranges are drawn in white.

While in rotation mode, a shader comes up displaying range bands for all active weapons.

At any point in the process, both chevrons and range bands are only displayed for enabled weapons. Players can turn weapons on/off to get more specific information as they preview moves.

The result of this work is that moves can be made much, much faster now than in initial playtests. A process that started out long and frustrating became much smoother without losing any functionality.