Mechanics · the hidden multiplier
SkillMod & op codes
The damage formula has a term called SkillMod. It's the part you can't see in a scout report, and it's where every hero skill, joiner skill and widget effect lives. Understanding it is the difference between bringing four copies of the same joiner and bringing four that actually multiply.
1. The four families
Four orthogonal families. Two push your damage up; two push the enemy's resistance down, and they sit on opposite sides of the fraction:
- DamageUp: effects that make your squads deal more (numerator).
- OppDefenseDown: effects that make the enemy take more (numerator).
- OppDamageDown: effects that make the enemy deal less (denominator).
- DefenseUp: effects that make your squads take less (denominator).
When you attack, it's your DamageUp and OppDefenseDown over their OppDamageDown and DefenseUp. When you defend, you swap "your" and "their." Confirmed across multiple in-game tests; this is the formula the working community simulators match against real battle reports.
2. The stacking rule
Inside a family, every effect carries an op code: a number identifying what kind of bonus it is. One rule governs all stacking, and it's the single most important thing on this page:
Effects with the same op code stack additively: sum the values, then apply once. Effects with different op codes stack multiplicatively: each contributes its own (1 + sum/100) factor.
That one rule is why composition beats duplication. Two effects on the same op add and run into diminishing relevance; two effects on different ops multiply. Confirmed across in-game testing and matched against real battle reports.
3. The op-code taxonomy
Eleven op codes across the four families. This is the taxonomy the simulator uses internally, and it does the job: every skill in the catalog resolves cleanly into one of these buckets. Probable Speculative
| Op | Family | Effect |
|---|---|---|
| 101 | DamageUp | Lethality % (own) |
| 102 | DamageUp | Attack % (own); also generic "Damage Up" and "Damage Dealt Up" |
| 103 | DamageUp | Skill Damage % (own, multiplicative on top; Triton sk2) |
| 111 | DefenseUp | Damage Taken Down (own) |
| 112 | DefenseUp | Defense % (own) |
| 113 | DefenseUp | Health % (own) |
| 201 | OppDamageDown | Damage Dealt Down (enemy, generic) |
| 202 | OppDamageDown | Attack % Down (enemy) |
| 203 | OppDamageDown | Generic enemy damage down (cosmetic "Lethality Down" text) |
| 211 | OppDefenseDown | Damage Taken Up on enemy |
| 212 | OppDefenseDown | Defense % Down on enemy (Ava's Dissolution; added with the Gen 7 heroes) |
Probable A few assignments are reproduced by testing rather than read from the UI: notably the in-game "Damage Up" and "Damage Dealt Up" skills default to op 102 (the additive Attack bucket), though we have doubts they could be op 101 (Lethality) instead of the multiplicative op 103 (Skill Damage); and Vivian's "increase enemy damage taken" landing on 211 by symmetry. The simulator lets you re-route any of these per skill if your own testing disagrees.
Speculative The list itself may be incomplete. It is inferred from the heroes released so far, and it has already grown once: op 212 (enemy Defense down) was added with the Gen 7 heroes. A future kit could introduce an effect that doesn't fit any current bucket, so treat eleven as the count today, not a hard ceiling.
4. Worked stacking examples
This is where the rule earns its keep. Same total percentage, very different results depending on whether the ops match.
Four Chenkos: all op 101
Two Chenkos + two Amanes: op 101 and op 102
Same eight stars of joiners, same "+100% total," but splitting across two ops buys you a +12.5% damage advantage over stacking one. This is the canonical reason to diversify joiner skills instead of bringing four of your best one. Confirmed.
Three Gordons + one Howard: op 113 and op 111
Four Sauls: op 112 and op 113 in one skill
Saul's first skill grants both Defense and Health, so a single hero already spans two ops and multiplies with itself.
That is the whole rule in four lines of arithmetic, and it all feeds one fraction:
You do not have to take it on faith: build the matchup below. Fill your rally and the enemy garrison with joiners, and toggle each side's leader trio (offensive on your side, defensive on theirs). Combat runs both ways, so the calculator shows both SkillMods: your hit on them, and their counterattack on you. Watch a pure-offense rally get out-traded, which is why every army needs offense and defense.
5. Chance skills and expected value
When a chance-based skill rolls successfully at the start of a round, its effect drops into the relevant op bucket for that round only. Next round it's rolled again, independently.
The simulator handles this two ways. In expected mode, a "p% chance of +V%" skill becomes a flat +(p × V / 100)% in its op bucket, the average contribution. In Monte Carlo mode it samples the Bernoulli per round and only adds the full value on a success. Same average, real variance.
Speculative Yang's third skill, Ambush, isn't a flat chance: it's a pity timer. The roll chance accumulates after each failed round and resets on a proc, so a 40% base settles to an effective rate around 58% (average cycle ≈ 1.72 rounds). This mechanic is inferred, not yet experimentally pinned, so the exact effective rate may shift if the counter caps differently.
6. Why four Jabels is still one Jabel
Non-RNG joiner skills stack additively in their op family: four flat +25% Lethality joiners genuinely give +100% on op 101. But chance-based joiner skills do not stack across copies: four Jabels produce a single roll, not four. The first one's roll counts; the rest are wasted skill slots that still bring troops.
Probable Per community testing (Daryl): chance-based skills don't stack for joiners. The Best Counter search uses this directly: it de-duplicates joiners with identical first-skill signatures before it ever simulates, so it never wastes a candidate slot on a redundant copy.
Next: the other channel, the bonuses you can see. Stat bonus aggregation →
Test a joiner combo
Quick Fight shows which skills fired each round, so you can verify the stacking yourself.