Reading the sim
OPR Sim answers one question exactly: if this unit attacks that unit once, what happens? Everything on the page is either an input to that question or a way of reading the answer. This guide covers both, then the two rules editions you can ask it under, and then the tag system that helps you find the unit you're after.
What it computes
The sim walks the OPR combat sequence for every weapon in the loadout and computes the full probability distribution directly: no dice are rolled, so the numbers are exact and identical every time.
- 01QualityEach attack die hits on the unit's Quality or better. A natural 6 always hits, a natural 1 always misses.
- 02BlastBlast(X) turns each hit into X hits against a unit with at least X models.
- 03DefenseThe target rolls Defense per hit, minus the weapon's AP (summed across rules). Cover adds +1 against shooting.
- 04WardRegeneration and wards ignore a failed save on a roll; Bane, Rending and Poison switch some of that off.
- 05WoundsDeadly(X) multiplies each wound. A model dies after taking its Tough value; leftover damage carries to the next model.
The result panel
- Models killed
- The expected number of models removed, wounds pooled across weapons and floored by Tough the way you'd allocate them on the table.
- Wounds dealt
- Expected damage points into the unit's wound pool, capped at what the unit can absorb.
- P(wipe)
- The probability every model in the target is destroyed. This is the number to look at for "will it die", not the average.
- Distribution
- The bars show how likely each outcome is. A wide spread means a swingy attack; the average alone hides that.
- Per-weapon breakdown
- Each weapon's hits and wounds on its own, so you can see which upgrade is actually earning its points.
- Pin to compare
- Freezes the current matchup in the compare strip. Pin a few loadouts or targets side by side to see what changes.
Setting up a matchup
Each side is a panel: game system, faction, unit. The attacker's loadout and the fight's context live under it.
- Loadout
- Every weapon the unit carries, toggleable. Upgrades opens the unit's ArmyForge options; taking one swaps or adds weapons and rules exactly as the list builder would, priced per unit. The header total shows base + upgrades + attached hero.
- Models firing
- Scales the unit's dice for a depleted squad. Combined unit doubles a multi-model unit (OPR's combined-units rule).
- Attach hero
- Joins a Hero to the unit: its weapons fire alongside, its auras apply, and as a defender its Tough sits at the end of the wound pool.
- Phase & context
- Shooting or melee; charging (enables Impact, Furious, Lance); fatigued (hits only on 6s); range over 9" (Relentless, Stealth); cover (+1 Defense vs shooting).
- Applied effects
- Every army-wide buff or debuff the book defines, as a toggle. Nothing is rolled: switch one on to see what it would be worth if it were active.
- Spells
- Damage spells are added as an attack weighted by the chance to cast at the chosen token count; buff and debuff spells mix the buffed and unbuffed outcome by that same chance.
- One-off abilities
- Breath, Storm, Self-Destruct, Dangerous Terrain and the like: opt-in, since they don't fire every activation.
- Counter & reflected damage
- A defender with Counter strikes first when charged; Retaliate and Deathstrike bounce damage back. Both appear as their own readouts when they apply.
Rules editions
The switch in the header picks which rules you are theorycrafting under: 3.5, the published game, or 3.6 beta, OPR's v3.6 open beta. It changes everything downstream — the army list, the units, the weapon profiles, the points, and how the fight is resolved. Each edition remembers its own matchup and its own pins, so flipping across and back leaves your work where it was.
A BETA marker rides along wherever beta numbers are on screen. Take them as provisional: the beta armies are a snapshot from September 2026, and OPR is still re-pricing and re-wording units while the beta runs.
What 3.6 changes in the math
- AssaultAn Assault weapon counts as both a ranged and a melee weapon, so hybrid guns fire in either phase.
- ImpactImpact hits resolve before either side strikes, instead of alongside the charge. Counter no longer reduces them — Brace(X) does, and only in fantasy.
- OverrunVehicles trade Impact for an Overrun melee weapon with Thrust.
- ParryParry(X) is a ward against melee wounds: each one is ignored on a 6.
- FatigueA fatigued unit hits only on 6s, and its effects that trigger on a natural 6 are switched off.
- IndirectIndirect weapons no longer take a penalty for having moved.
- AircraftShooting at an aircraft is -1 to hit, and aircraft weapons have half the range they used to.
- SergeantIn fantasy, a Sergeant adds AP(+1) instead of an extra hit on natural 6s.
- Over 12"Entrenched and Artillery now ask whether the target is over 12" away instead of over 9". The range switch stands in for that.
- UnchangedThrust, Lance, Surge, Shred, Blast, Rending, Deadly and Regeneration work the same in both editions.
Two more context switches
Several 3.6 army rules used to key off distance and now key off the turn order instead, so the context row gains two switches under the beta:
- Target already activated
- The unit you are shooting or fighting has already gone this round — what the rules that reward hitting a spent unit look for.
- Defender already activated
- The same question asked of the defending side, for rules that only bite while the defender still has its activation in hand.
Skirmish armies are their own armies
In 3.6 the skirmish-scale games do not share unit stats with their parent game: Firefight and Age of Fantasy: Skirmish list tripled Tough, doubled attacks and their own points (600 and 800 pt standard games), and Age of Fantasy: Regiments words Impact, Parry, Brace and its spells its own way. Under the beta switch those are separate armies rather than the same book read three ways, so picking Firefight gives you Firefight's numbers, not Grimdark Future's.
Weapons were re-worked and re-named across the board in the beta, hybrids are handled by Assault, and "all models" upgrades now read "most models". Casters can also buy a Spell Amplifier for +1 to cast.
Finding units
The unit picker is a finder. Type a name or a tag word ("caster", "ambush", "glass cannon") into the search box, or click facet pills. Role and archetype are always shown; defense, mobility and range sit behind more.
- Within a group
- Pills are OR: Anti-tank + Artillery shows units that are either.
- Across groups
- Groups are AND: Anti-tank + Fast shows fast anti-tank units only.
- Dimmed pills
- A pill that would leave nothing given your other filters is dimmed rather than a dead click.
- The count
- "8 / 26" is matches over the book's units. The dropdown lists exactly those, and picking a filter that excludes your current unit jumps to the first match.
Caveats
- The beta is a snapshot
- The 3.6 armies were read from the open beta in September 2026 and do not update themselves. Points and wording will change before v3.6 is published, so use the beta side to see where the edition is heading, and the 3.5 side for a game you are actually playing.
- Tags follow the loadout
- Archetype, defense class and mobility are recomputed on the spot for whatever you've selected, so a tank that buys laser cannons moves to Hammer as you click. Role and range were judged in advance for the base unit and for each single weapon upgrade; with several taken, the priciest one's judgement is shown, and the tooltip says which.
- Relative to the book
- Archetype ranks are within the unit's own army. An Anvil in a fragile army is not as tough as an Anvil in a marine book.
- A reading, not an oracle
- Role and range are an AI's reading of the unit's text. It is good at "what is this for" and is asked nothing numeric; where it was unsure, the pill says so. Trust the sim's numbers over any tag.
- Not win rates
- Nothing here comes from tournament results. It is the math of one attack, and the tags are a way to navigate it.
- Fan tool
- Stats come from ArmyForge; rules and names belong to OnePageRules. If something looks wrong, the per-weapon breakdown usually shows why, and support@juneaulabs.io hears about the rest.