Skip to content

v1.16.0

Choose a tag to compare

@Tarislowatsch Tarislowatsch released this 01 Jul 11:54
Immutable release. Only release title and notes can be modified.

Features

  • i18n: add stream, spriteType, fading keys to matrix; add traditions to magic
  • template: rework matrix tab for technomancy stream/fading/sprite config
  • sheet: update matrix context for technomancy — streams, fading pool, sprite bindings
  • actor: add system.technomancy field; migrate technomancer bool and sprite bindings
  • models/magic: expand Traditions to 25; derive DrainAttributes from SecondaryAttributes
  • models/matrix: add technomancy constants — streams, fading attributes, sprite types
  • api: expose ThreadingFlow on globalThis.sr4
  • technomancer: add hits selection dialog after threading roll
  • technomancer: wire threading to character sheet, add threaded badge and roll button
  • technomancer: implement Thread Complex Form flow
  • dialog: auto-roll resist dialogs when flowOpposedRollTimeout elapses
  • flows: use flowOpposedRollTimeout setting with fallback buffer
  • settings: add configurable opposed roll timeout setting

Bug Fixes

  • migration: correct traditionMap keys from lowercase to stored uppercase values
  • tradition: pass TraditionLabels to selectOptions; migrate legacy tradition values
  • docs: remove JSDoc prose from rollComplexFormDialog and offerEdgeRetry
  • threading: use resonance fading pool with stream-specific fading attribute
  • summoning: use resonance fading pool for sprite compiling drain
  • utils: import clamp/resistanceValueFromHits into summoning-helpers local scope
  • dialog: decouple autoRoll timer setup from dice guard

Improvements

  • drain: extract generic calculateDrainPool; add calculateResonanceFadingPool
  • models/shared: extract SecondaryAttributes constant
  • effects: rename sustain template label from 'Sustained Spell' to 'Sustaining'
  • flows: use shared drain pool and edge retry in spellcasting/summoning
  • utils: extract calculateWillpowerResistancePool and offerEdgeRetry
  • utils: extract clamp/resistanceValueFromHits to math.js and mapDocumentsByName to summoning.js
  • flows: finish getGame() consistency pass, export apply-damage-flow
  • flows: dedupe summoning flow socket-wait, edge and drain logic
  • flows: dedupe socket-wait and target-warn logic in spell flows
  • flows: use createDecisionRegistry for damage/effect decisions
  • utils: add shared opposed-socket-wait, decision-registry and target-warn helpers
  • flows: extract opposed roll fallback timeout into testable helper
  • dialog: centralize skill roll title building
  • dialog: extract rollSkillDialog helper to dedupe skill roll setup

Full Changelog: v1.15.1...v1.16.0