2.1 KiB
2.1 KiB
Delta Green system — module/ layout
Entry point: deltagreen.js (registered in system.json).
Folder responsibilities
| Path | Purpose |
|---|---|
config/ |
System constants (DG, skill list, template paths) |
data/ |
TypeDataModels (actor/, item/, derived/) |
active-effect/ |
Active effect metadata, data model, document class, runtime sync |
profession/ |
Profession item skill catalog, validation, and character-creation math |
roll/ |
Dice roll subclasses, roll pipeline, and roll UX. roll/roll.js is the public API. Internal Roll subclasses live in roll/classes/. |
sheets/ |
ApplicationV2 sheets and mixins |
applications/ |
Standalone dialogs (profession setup, stats, active effect config) |
actor/, item/ |
Document subclasses |
chat/ |
Chat cards and inline actions |
integrations/ |
Optional module hooks (Dice So Nice) |
utils/ |
Generic helpers only (Handlebars, migration, skill layout/tooltips) |
Import conventions
- Roll types and pipeline: import
DGRoll,DGPercentileRoll,createDGRollFromDataset,processDGRoll, etc. fromroll/roll.jsonly — not fromroll/classes/. - Roll modifier dialogs: import from
roll/roll-dialogs.jsonly when calling dialogs directly (today only used from roll classes). - Skill improvement rolls: import from
roll/skill-improvement-roll.js(used by agent sheet). - Profession logic: import from
profession/index.js. - Active effect runtime: import exhaustion/stimulant sync from
active-effect/runtime/. - Derived actor math: import from
data/derived/actor-derived.js. - Agent skill defaults: single source in
data/actor/base/agent-skill-defaults.js(used by human actor schema and profession code).