fix: attack/defense cross-client reaction flow

- C1: Stop D30 auto-roll on non-primary clients (caused divergence)
- C2: defenderOwner fallback to GM for monster defenders
- C3: Fix tie outcome in handleAttackBoosted (>= not >)
- C5: Convert handleAttackBoosted to while-loop (multi-reaction)
- C4/C6: shouldCreateMessage cross-client guard
- M2: Coordinate main flow defender dialog vs socket handler
- M3: Fresh grit/luck reads each socket handler iteration
- M4: Include defenseD30message in socket payload + re-process
- M5: Communicate attackerHandledBonus in socket payload
- i18n: Add missing COMBAT.* keys, fix weapon.hbs label localize
- d30_results_tables: Fix string typo
This commit is contained in:
2026-06-12 02:51:59 +02:00
parent 5839616863
commit 37badf2619
5 changed files with 206 additions and 132 deletions
+1 -1
View File
@@ -429,7 +429,7 @@
"melee_attack": {
"type": "flurry",
"condition": "hit_or_miss",
"description": "Flurry Attack or Hit to Miss"
"description": "Flurry Attack on Hit or Miss"
},
"ranged_attack": {
"type": "double_damage_dice",