uberwald
3b0d4e032e
fix: cache results.length before explosion loop to prevent double-count
...
Release Creation / build (release) Successful in 50s
Pushing explosion dice to DieTerm.results made the for loop
condition (j < results.length) grow mid-iteration, re-processing
the explosion result as a normal die. This produced spurious
entries like `1D6 → 4` alongside the correct `1D6-1 → 3`.
Fixes prompt() (for loop) and rollSpellDamageToMessage()
(for...of) by caching result count / snapshotting the array
before iterating.
2026-06-16 19:34:13 +02:00
uberwald
539841c4ff
fix: push explosion dice to DieTerm results so DSN displays them
...
Explosion rolls were evaluated as separate Roll instances but never
added to the original DieTerm's results array. Dice So Nice reads
DieTerm.results to render 3D dice, so explosions were invisible.
Now each explosion result is pushed into the DieTerm's results array
({result, active:true}), letting DSN render explosion dice in the
correct chronological order alongside the main die.
Applies to prompt(), promptRangedDefense(), promptRangedAttack(),
and rollSpellDamageToMessage().
2026-06-16 19:29:07 +02:00
uberwald
ffba37b59e
Fix D30 management, again
2026-06-14 23:00:39 +02:00
uberwald
1a7585e1f6
fix: merge saving_throws D30 table into arcane_spell_defense
...
Release Creation / build (release) Successful in 49s
saving_throws was redundant — all saves in this system are
vs spells. Removed SAVING_THROWS constant; all save rollType
lookups use ARCANE_SPELL_DEFENSE. D30=1 arcane_spell_defense
blank (no special result). Added miracle types to ARCANE_SPELL_ATTACK
mapping so they get D30 results instead of null.
2026-06-14 22:57:41 +02:00
uberwald
b567c8bbea
Fix D30 management, again
Release Creation / build (release) Successful in 48s
2026-06-13 23:15:22 +02:00
uberwald
60b351f50d
Fix spell save/defense again
Release Creation / build (release) Successful in 45s
2026-06-13 21:06:18 +02:00
uberwald
ace726a1fc
fix: use try/finally for spellDefense cleanup instead of delete
...
Release Creation / build (release) Successful in 47s
delete on game.lethalFantasy.spellDefense was breaking roll flow
on Foundry's proxied game object. Use try/finally with
assignment to false instead, which is safe on any object type.
Initialize saveSpell local var from one-shot flag so D30
chart lookup correctly uses arcane_spell_defense for spell saves
without requiring user to click the pre-checked checkbox.
2026-06-13 16:51:52 +02:00
uberwald
67499bc199
fix: add missing arcane_spell_defense entry for D30=1
...
Release Creation / build (release) Successful in 49s
User spec lists D30=1 as 'Possible Spell Calamity or Catastrophe'
for Arcane Spell Defense but it was missing from the table.
2026-06-13 16:29:54 +02:00
uberwald
7eae95cbbd
fix: use arcane spell defense D30 chart for spell saves
...
Release Creation / build (release) Successful in 43s
Bug: saveSpell local var initialized to false (line 142), while
dialog checkbox was pre-checked via dialogContext.saveSpell =
game.lethalFantasy.spellDefense. If user didn't click the checkbox,
D30 call used SAVING_THROWS chart instead of ARCANE_SPELL_DEFENSE.
Also: game.lethalFantasy.spellDefense was set true before spell
defense rolls but never cleared, leaking to subsequent non-spell saves.
Fix: initialize saveSpell from the one-shot flag and delete it
immediately. Dialog context now uses the local saveSpell variable
instead of re-reading the deleted flag.
2026-06-13 15:22:34 +02:00
uberwald
1b53bf9152
fix: resolve hud actor from hud.token not render context param
...
Release Creation / build (release) Successful in 41s
V2 renderTokenHUD passes (hud, html, data) where data is a render
context object — not a TokenDocument. data.actor was undefined,
and data?.token?.actor was also undefined. Use hud.token.actor
(or hud.object.actor) instead, which is the real PlaceableObject
with proper actor resolution.
Also fix html.find() → html.querySelector() for V2 HTMLElement.
2026-06-12 19:01:54 +02:00
uberwald
2570bf707e
fix: prevent duplicate cross-client defense dialog, clear bleed on heal
...
- Only send attackBoosted socket when attackerHandledBonus || attackerHasNonGMOwner
(GM→player: hook handles it, no socket needed; PC→PC: socket needed)
- Clear bleeding wounds when HP restored via token HUD heal buttons
2026-06-12 17:23:39 +02:00
uberwald
cbeaaeec99
Final fixes and code review checks
Release Creation / build (release) Successful in 39s
2026-06-12 08:19:42 +02:00
uberwald
37badf2619
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
2026-06-12 02:51:59 +02:00
uberwald
5839616863
chore: add pushLDBtoYML/pullYMLtoLDB scripts, gitignore packs_src
2026-06-12 01:56:19 +02:00
uberwald
89298490ef
fix: pre-check 'Save against spell' checkbox in template when saveSpell is true
2026-06-12 01:56:03 +02:00
uberwald
bb42de19bd
REmove unused file
2026-06-11 23:05:55 +02:00
uberwald
53f9c33419
chore: gitignore LevelDB internal files, stop tracking auto-generated LDB bookkeeping
Release Creation / build (release) Successful in 46s
2026-06-11 23:00:45 +02:00
uberwald
06eba5f835
fix: show spell tier dialog on character sheet cast; duplicate rollTarget to prevent Item mutation
2026-06-11 22:56:54 +02:00
uberwald
46fa2d15a3
fix: allow defender to react when attacker boosts past defense via cross-client socket
2026-06-11 22:41:54 +02:00
uberwald
8aae7bada0
fix: pre-check 'Save against spell' checkbox when defense originates from spell attack
2026-06-11 22:17:37 +02:00
uberwald
ceb62bca3f
fix: add missing class lethal-luck-grit-hud to template so JS selector matches
2026-06-11 22:03:56 +02:00
uberwald
110ac65ba5
fix: replace hardcoded French bleeding notifications with i18n keys
2026-06-11 21:50:19 +02:00
uberwald
9b75fd4d96
feat: combat-tracker-driven bleeding (HP loss per wound per round)
2026-06-11 21:49:35 +02:00
uberwald
141d6048e0
Fix triple damage issue
2026-06-11 21:32:26 +02:00
uberwald
ea7acf6bf8
Fix hp < 0 and D30 with D20 bonus roll
2026-06-11 20:48:46 +02:00
uberwald
c20750caa7
Minor fixes regarding rolls and chat messages
Release Creation / build (release) Successful in 48s
2026-06-10 20:17:45 +02:00
uberwald
ce630feb51
feat: D30 combat effects, spell tiers, small damage removal, token HUD luck/grit
...
- Replace Knockback with Internal Injury on D30 (5, 10, 15); remove Shield Bash from D30 counter-attacks
- Eliminate small weapon damage: keep only medium damage labelled Damage in sheets, rolls, and chat
- D30 bonus dice (20, 27, 30) auto-resolved before grit/luck/shield decisions; choice dialogs for special strikes
- D30 combat effects: bleeding wounds, damage ×2/×3 before DR, DR ×2/×3 with component picker dialog
- Add hp.wounds to monster schema for bleeding support
- Show Save against spell? checkbox for all save rolls (not just magic users)
- Fix mulligan restart: persistent D30 process flags prevent double-application and allow both sides to react
- For Dice So Nice, show main roll animation before explosion dice for correct ordering
- Spell tier selection: force Standard/Overpowered choice at cast time, tier-specific aether cost, only chosen damage button shown
- Add +1/−1 luck and grit controls to Token HUD
- Fix inconsistent indentation, remove duplicate i18n key, remove unused includesShield return
2026-06-10 07:53:51 +02:00
uberwald
b35b684d50
NEgative values for HP and weapon bonuses
2026-06-06 16:11:36 +02:00
uberwald
f6fb0b68b8
Fix spell rolls again
Release Creation / build (release) Successful in 47s
2026-05-25 20:41:00 +02:00
uberwald
e45edd60c4
FIx spell order and dual rollll for spell damages
Release Creation / build (release) Successful in 1m6s
2026-05-25 12:29:39 +02:00
uberwald
d389a85a9f
Fix ranged attacks again
Release Creation / build (release) Successful in 43s
2026-05-24 09:42:07 +02:00
uberwald
c217490a5b
Fix ranged attacks again
Release Creation / build (release) Has been cancelled
2026-05-24 09:41:06 +02:00
uberwald
38eb1a8d3d
Add ranged actions for monsters
Release Creation / build (release) Successful in 54s
2026-05-23 19:10:10 +02:00
uberwald
4724cdf2bb
VArious fixes for rolls and ranged attacks
Release Creation / build (release) Successful in 44s
2026-05-23 09:08:16 +02:00
uberwald
6d06c8ddad
Various fixes for spell and ranged attacks
2026-05-23 00:21:05 +02:00
uberwald
2770774aa3
Various fixes for spell and ranged attacks
2026-05-23 00:11:58 +02:00
uberwald
e417b61625
Spells fixe
Release Creation / build (release) Successful in 46s
2026-05-20 23:17:07 +02:00
uberwald
9a8d580ef6
Other fixes for damage buttons from chat
Release Creation / build (release) Successful in 53s
2026-05-20 10:53:46 +02:00
uberwald
9ccb0f90f0
Other fixes for damage buttons from chat
2026-05-20 10:53:22 +02:00
uberwald
6cf0880ad3
Enhance spell damage and messages content
Release Creation / build (release) Successful in 44s
2026-05-19 10:52:03 +02:00
uberwald
96306623e5
UPdate and fixes for roll in combats
Release Creation / build (release) Successful in 43s
2026-05-18 20:26:39 +02:00
uberwald
7279cd752d
Fix initiative again
Release Creation / build (release) Successful in 43s
2026-05-18 07:58:28 +02:00
uberwald
db3e8b5d35
Improve init for monsters and some fixwes around shields
Release Creation / build (release) Successful in 48s
2026-05-17 13:22:29 +02:00
uberwald
54421e4a83
MAnage spell/miracle spending points and favor/disfavor for shield rolls
Release Creation / build (release) Successful in 43s
2026-05-10 17:49:53 +02:00
uberwald
ac44419b7a
Corredction sur attack ranged
2026-05-03 15:12:25 +02:00
uberwald
a3fc0a42b9
Corredction sur attack ranged
Release Creation / build (release) Successful in 1m19s
2026-05-03 10:06:44 +02:00
uberwald
c8ce840e98
Fix ranged defense + HTH attacks
Release Creation / build (release) Successful in 1m17s
2026-05-02 08:35:22 +02:00
uberwald
55a040062a
Fix ranged defense + HTH attacks
Release Creation / build (release) Successful in 1m19s
2026-05-01 23:55:29 +02:00
uberwald
1818a76499
Fix ranged defense + HTH attacks
Release Creation / build (release) Successful in 1m19s
2026-05-01 23:34:05 +02:00
uberwald
55d1b41ca4
Fix ranged defense + HTH attacks
2026-05-01 23:32:53 +02:00
uberwald
841ed82277
Fix for ranged monsters attack
Release Creation / build (release) Successful in 1m2s
2026-05-01 01:12:56 +02:00
uberwald
968d156d09
Upgrade to r14
Release Creation / build (release) Successful in 48s
2026-04-30 14:38:56 +02:00
uberwald
59ff098fca
Add ranged attacks for monsters
2026-04-29 20:27:20 +02:00
uberwald
b8174d5e22
Fix E dice in dice Tray
Release Creation / build (release) Successful in 55s
2026-04-17 23:21:49 +02:00
uberwald
7f15450566
Add specific diceTray and enhance message styles
Release Creation / build (release) Successful in 49s
2026-04-17 17:32:46 +02:00
uberwald
28fdaff2ec
Add specific diceTray and enhance message styles
2026-04-17 17:32:32 +02:00
uberwald
81584ed5d6
Update D30 descriptions and add simple shield option for NPCs
2026-04-16 23:42:24 +02:00
uberwald
8c9a13faf1
Fixes around D30 managemen
2026-04-16 21:39:51 +02:00
uberwald
6c6c473147
Fixes regarding shields usage and spells
Release Creation / build (release) Successful in 52s
2026-04-14 21:31:17 +02:00
uberwald
2e2a917a45
Fixes regarding shields usage and spells
2026-04-14 21:31:03 +02:00
uberwald
343abc32e2
FIx init à 1 again
Release Creation / build (release) Successful in 50s
2026-04-12 11:08:19 +02:00
uberwald
c37d92af25
Various initiative fixes + shield management messages
Release Creation / build (release) Successful in 46s
2026-04-12 01:07:58 +02:00
uberwald
42945d33db
ATtempt to fix init rolls
Release Creation / build (release) Successful in 52s
2026-04-07 20:44:13 +02:00
uberwald
1bf88bac06
ATtempt to fix init rolls
2026-04-07 20:43:15 +02:00
uberwald
3ad5681539
Fix inititiative rolls
Release Creation / build (release) Successful in 52s
2026-04-06 00:02:14 +02:00
uberwald
df6f8e5710
Add token HUD +HP
Release Creation / build (release) Successful in 1m37s
2026-02-06 22:20:20 +01:00
uberwald
52877e3a68
New combat management and various improvments
Release Creation / build (release) Successful in 48s
2026-01-19 23:22:32 +01:00
uberwald
a06dfa0ae9
Update skills/shield DR
Release Creation / build (release) Successful in 1m8s
2026-01-12 14:27:29 +01:00
uberwald
0836cada75
Re-org folders and enhance minor CSS stuff
2026-01-04 09:21:21 +01:00
uberwald
61ed1597e7
Add damage management and DR for monsters also
Release Creation / build (release) Successful in 1m48s
2025-12-19 15:41:27 +01:00
uberwald
96062c6fd9
Roll damages and so on
Release Creation / build (release) Successful in 56s
2025-12-14 21:18:00 +01:00
uberwald
f6b35536de
Manage DR and damage roll
2025-12-14 20:48:33 +01:00
uberwald
7d27562bb4
Fix DR and defense values
Release Creation / build (release) Successful in 1m7s
2025-12-08 11:54:36 +01:00
uberwald
64f2efdcb9
Fix last HD Roll
Release Creation / build (release) Successful in 1m35s
2025-11-07 07:58:58 +01:00
uberwald
66f7aade25
Fix jog + update compendiums
Release Creation / build (release) Successful in 52s
2025-10-17 20:06:49 +02:00
uberwald
8f682a1458
Auto-publish package on releas
2025-10-01 17:26:29 +02:00
uberwald
fa3054f24b
Some granted dice/favor fixes
Release Creation / build (release) Successful in 2m48s
2025-10-01 17:17:33 +02:00
uberwald
59a891630e
Fix tooltip
Release Creation / build (release) Successful in 38s
2025-09-20 09:34:13 +02:00
uberwald
35b88b3914
Poison/Contagion fixes again
Release Creation / build (release) Successful in 42s
2025-09-19 23:32:15 +02:00
uberwald
cb8bcfd9ea
Ranged defense fixes again
Release Creation / build (release) Successful in 43s
2025-09-19 22:30:26 +02:00
uberwald
eedce1a498
Latest fixes
Release Creation / build (release) Successful in 46s
2025-09-17 07:47:40 +02:00
uberwald
76a99fe33f
Various fixes
2025-09-16 23:49:02 +02:00
uberwald
59a39850ce
Fix miracle/spell rolls + upadte compendiums
Release Creation / build (release) Successful in 56s
2025-09-09 20:14:25 +02:00
uberwald
6eeb391d1a
Move aiming to attacker
Release Creation / build (release) Successful in 1m9s
2025-09-05 23:26:11 +02:00
uberwald
c7727076bf
Various fixes and renamingé
Release Creation / build (release) Successful in 1m30s
2025-09-02 21:06:33 +02:00
uberwald
d0411f9ec9
Various fixes and renamingé
2025-09-02 18:17:31 +02:00
uberwald
e5653a4edc
Latest modifications & changes
Release Creation / build (release) Successful in 1m47s
2025-08-31 11:28:52 +02:00
uberwald
527e33a805
Roll D12 for monsters, with enabled fields for attacks
Release Creation / build (release) Successful in 1m22s
2025-06-10 20:37:46 +02:00
uberwald
b5857cb3b7
Various fixes for v13
Release Creation / build (release) Successful in 53s
2025-06-05 16:14:25 +02:00
uberwald
7a06e8a5c9
Combat tab for v13
Release Creation / build (release) Successful in 1m20s
2025-05-29 18:48:33 +02:00
uberwald
b4d6616cb4
Foundry v13 migration
Release Creation / build (release) Successful in 58s
2025-05-14 10:02:08 +02:00
uberwald
aaef4dd896
Replace and fix mortal field
2025-05-10 10:02:38 +02:00
uberwald
a3c6509862
Update compendiums
Release Creation / build (release) Successful in 52s
2025-05-06 10:53:25 +02:00
uberwald
c2fe34e7a6
Update README
2025-05-03 16:04:29 +02:00
uberwald
46176b2782
Update README
2025-05-03 09:46:43 +02:00
uberwald
b7f13500a6
Update README.md
2025-05-03 08:26:22 +02:00
uberwald
bd8b098b35
Fix HP loss
Release Creation / build (release) Successful in 1m20s
2025-05-02 18:24:14 +02:00
uberwald
71d3f777bf
Implements HP loss HUD button
Release Creation / build (release) Successful in 41s
2025-04-27 22:32:32 +02:00
uberwald
157163672c
Implements HP loss HUD button
Release Creation / build (release) Successful in 54s
2025-04-27 22:11:10 +02:00
uberwald
a043117ec7
Enhance rolls and fix dialog position
Release Creation / build (release) Successful in 47s
2025-04-25 21:28:17 +02:00