From ccf36e92b0ae28320a70cb602d186890741eaa1e Mon Sep 17 00:00:00 2001 From: CPTN_Cosmo Date: Sat, 30 May 2026 23:14:16 +0200 Subject: [PATCH] Updated Module Builder Information (markdown) --- Module-Builder-Information.md | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/Module-Builder-Information.md b/Module-Builder-Information.md index 79635b4..014d0bb 100644 --- a/Module-Builder-Information.md +++ b/Module-Builder-Information.md @@ -1,4 +1,4 @@ -Various intended ways modules can alter the system. +As with any Foundry system, you make a module and define a few `compendiums` to store your items, journals or other entities in to distribute them to others. There are however some extra considerations if you are adding specific homebrew, and some help on those is found below: ## Attribution Sources You can add attribution information to mark where your adversaries, items etc. are coming from, accessed from the tree-dot context menu on the sheet. @@ -69,4 +69,31 @@ Hooks.once('init', () => { } }; } +``` + +## Custom Domains +If you are adding custom domains for your classes and domain cards, then those domains need to always be present when the module is active. +Simply add your new domains as keys on the config path `CONFIG.DH.DOMAIN.domains` in the Foundry init hook for your module: +```js +Hooks.once('init', () => { + CONFIG.DH.DOMAIN.domains.test = { + id: 'test', + label: 'Test', // Alternatively a translation string if the module uses lang files + description: 'A test domain', // Alternatively a translation string if the module uses lang files + src: 'modules/test-module/assets/test-domain-image.png', + }; +}); +``` + +## Custom Adversary Types +If you are adding additional adversary types to the existing list of `bruiser`, `leader` etc, then you add additional keys to the config path `CONFIG.DH.ACTOR.adversaryTypes` in the Foundry init hook. +```js +Hooks.once('init', () => { + CONFIG.DH.ACTOR.adversaryTypes.superMonster = { + id: 'superMonster', + label: 'Super Monster', // Alternatively a translation string if the module uses lang files + description: 'Thunderbolts and lightning, very very frightening', // Alternatively a translation string if the module uses lang files + bpCost: 4 + }; +}); ``` \ No newline at end of file