I’ve gone down a rabbit hole on Rithmomachia, a cool game I’m learning about. There are a number of different versions but we will introduce just one.
It is played on an 8×16 grid, which can be checkered or plain, between two players, Black and White. Each player starts with twenty-four pieces: eight circles, eight triangles, and eight squares. Each piece has a specific numerical value. The pieces are arranged on the board at the start of the game according to a specific configuration.

Each piece type moves in a specific way, but different movement rules for different versions:
● Circles: Move one space orthogonally (or one space diagonally, depending on the version).
● Triangles: Move two spaces horizontally or vertically.
● Squares: Move three spaces horizontally or vertically.
One square piece from each side is designated as a “pyramid” with special properties. No piece can jump over another, and no move can return the game to a previous state. Unlike chess, pieces capture without moving into the captured piece’s space. There are six different ways to capture:
● 1. Numbering: When a piece can move to a position with an enemy piece of the same value
● 2. Addition: When two pieces can capture an enemy piece whose value equals their sum
● 3. Subtraction: When two pieces can capture an enemy piece whose value equals their difference
● 4. Multiplication: When a piece can capture an enemy piece whose value is a multiple of its own value, with the multiplier being the number of empty spaces between them
● 5. Division: Similar to multiplication, but in reverse
● 6. Siege: When an enemy piece is surrounded with no legal moves
Rithmomachia allows several ways for a player to declare a win: “common” (minor) victories and “proper” (major) victories. A Common Victory is one where the first player to capture a certain number of enemy pieces whose total value exceeds a certain threshold is the winner. Here the number of captures and the threshold are agreed upon by the players before the game. A Proper Victory is where one side arranges a 3 piece fireteam in enemy territory where the values of those friendly pieces form a progression (arithmetical, geometrical, or harmonic).
Here’s an early version of Professor Pyramid, also using matplotlib:
The Professor shows the basic setup and also how some of the pieces move. Future Professor Pyramid videos will be done in Blender.