Updated Module Builder Information (markdown)

CPTN Cosmo 2026-05-30 23:14:16 +02:00
parent c926ec40b0
commit ccf36e92b0

@ -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
};
});
```