Docs › Concepts › Pairing

Pairing

How Combat Command orders and matches competitors each round using presets and advanced controls.

Pairing in Combat Command is controlled by two settings: Order By and Policies. These can be configured individually using the Custom preset, or chosen as a named preset.

Presets

PresetPair ByRepeatSame Alignment
AdjacentRankingBlockAllow
Adjacent (Red vs. Blue)RankingBlockBlock
RandomRandomBlockAllow
Random (Red vs. Blue)RandomBlockBlock
Custom———

Order By

Controls the order in which competitors are fed into the pairing algorithm before it begins working through the list.

  • Ranking - Competitors are sorted by current standings. This is the standard Swiss approach: Players are matched against opponents with a similar record.
  • Random - Competitors are shuffled before pairing. Useful for opening rounds before any standings exist, or for casual events where competitive balance is not a priority.

Policies

Policies control how the algorithm handles two potential conflicts. Each policy has three levels:

  • Allow - The conflict is permitted. The algorithm treats this pairing the same as any other.
  • Avoid - The algorithm prefers to avoid the conflict but will accept it if no clean alternative exists. The pairing is flagged with a warning indicator in the UI.
  • Block - The algorithm will never produce a pairing with this conflict. If no valid opponent can be found, the competitor receives a bye instead.

Repeat

Whether two competitors who have already faced each other in a previous round can be paired again.

Same Alignment

Whether two competitors who share the same alignment (e.g. both Axis, or both Allies) can be paired against each other. Only relevant for game systems that define alignments.

Pairing Algorithm

Under the hood, both methods feed an ordered list of competitors into the same algorithm:

  1. The first competitor (A) is taken from the top of the list and placed into an open pairing slot.
  2. The algorithm scans the remaining list for the best available opponent (B):
    • It first tries to find an opponent with no conflicts (no Block or Avoid violations).
    • If none exists, it falls back to an opponent with only Avoid violations (flagged with a warning).
    • If no valid opponent is found at all, A is given a bye.
  3. Once a pairing is confirmed, both competitors are removed from the list and the algorithm moves on.
  4. This continues until all competitors are paired or assigned a bye.

Algorithm limitations

In tournaments with a small competitor pool and a high number of rounds (for example, 10 competitors across 5 rounds) the algorithm may exhaust all valid unique pairings and be unable to produce a result that satisfies all constraints.

When this happens, it may be necessary to manually adjust pairings. See Creating Pairings for details.

Combat Command

Tournament management and match tracking for tabletop wargames.

Product Home App
Resources FAQ Documentation Discord

© 2026 Combat Command. All rights reserved.