combat-dice-budget

Computes worst-case dice pools for melee, shooting, and return-fire combat engagements.

Updated Apr 22, 2026
One-click install
npx skills add https://github.com/rpmcdougall/claude-skills --skill combat-dice-budget-rpmcdougall
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: combat-dice-budget
Source: https://github.com/rpmcdougall/claude-skills/tree/main/skills/combat-dice-budget
Command: npx skills add https://github.com/rpmcdougall/claude-skills --skill combat-dice-budget-rpmcdougall

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Server-side combat resolution needs an upper bound on how many dice a single engagement can consume, and hand-computing that bound across bouts, model counts, and rerolls is error-prone. This Skill produces a deterministic worst-case dice pool so pool allocation and tests are sized correctly. ## Core Features & Use Cases - Mode-based formulas: Computes pools for melee (up to 3 bouts with return attacks), shooting (single volley), and shooting with return fire, with each die doubled for its possible reroll. - Structured breakdown output: Returns per-bout and worst-case totals plus a per-side dice layout showing attacker dice, defender dice, reroll multipliers, and bout count. - Stat lookup discipline: Reads unit stats from godot/game/rulesets/v17.json when given a unit id instead of inventing values, and flags implausible model counts. - Use Case: While writing a server-side pool allocation test for a melee engagement between two units, ask for the worst-case pool and receive the exact upper bound (e.g., per-bout pool times 3 bouts) to size the dice buffer. ## Quick Start Ask how many dice are needed worst-case for a melee bout between an attacker with A=2 and 5 models and a defender with A=1 and 3 models.

Frequently Asked Questions about combat-dice-budget

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I calculate the worst-case dice pool for a melee engagement?▼

Add attacker and defender dice (attacks stat times model count for each side), multiply by 2 for rerolls to get the per-bout pool, then multiply by 3 bouts for the worst case. The Skill returns this as a per-bout plus worst-case breakdown.

How is the dice pool different for shooting versus melee?▼

Shooting is a single volley with no return attacks, so the worst case is attacker attacks times models times 2 rerolls. Melee includes defender return attacks and loops up to 3 bouts, making its worst case significantly larger.

Can I look up unit stats instead of providing them manually?▼

Yes. If you provide a unit id, the Skill reads the stat block from godot/game/rulesets/v17.json rather than inventing values. If the unit is not found there, it asks you for the stats directly.

Does the worst-case pool reflect actual dice consumption in combat?▼

No. The worst case assumes every die consumes its reroll, which real combat rarely does. The number is intended for upper-bound server pool sizing, not for estimating expected consumption.

What happens if I enter an unrealistic model count for a unit?▼

The Skill flags model counts that exceed what is reasonable for the unit and suggests double-checking the input. This catches data entry mistakes before they inflate the pool allocation.