mirror of
https://github.com/Foundryborne/daggerheart.git
synced 2026-01-18 16:09:03 +01:00
Merged with main
This commit is contained in:
commit
ee52eb887d
26 changed files with 1059 additions and 204 deletions
|
|
@ -345,4 +345,17 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generates a list of localized tags for this action.
|
||||||
|
* @returns {string[]} An array of localized tag strings.
|
||||||
|
*/
|
||||||
|
_getTags() {
|
||||||
|
const tags = [
|
||||||
|
game.i18n.localize(`DAGGERHEART.ACTIONS.TYPES.${this.type}.name`),
|
||||||
|
game.i18n.localize(`DAGGERHEART.CONFIG.ActionType.${this.actionType}`)
|
||||||
|
];
|
||||||
|
|
||||||
|
return tags;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -117,4 +117,26 @@ export default class DHArmor extends AttachableItem {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generates a list of localized tags based on this item's type-specific properties.
|
||||||
|
* @returns {string[]} An array of localized tag strings.
|
||||||
|
*/
|
||||||
|
_getTags() {
|
||||||
|
const tags = [
|
||||||
|
`${game.i18n.localize('DAGGERHEART.ITEMS.Armor.baseScore')}: ${this.baseScore}`,
|
||||||
|
`${game.i18n.localize('DAGGERHEART.ITEMS.Armor.baseThresholds.base')}: ${this.baseThresholds.major} / ${this.baseThresholds.severe}`
|
||||||
|
];
|
||||||
|
|
||||||
|
return tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generate a localized label array for this item subtype.
|
||||||
|
* @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects.
|
||||||
|
*/
|
||||||
|
_getLabels() {
|
||||||
|
const labels = [`${game.i18n.localize('DAGGERHEART.ITEMS.Armor.baseScore')}: ${this.baseScore}`];
|
||||||
|
return labels;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
import BaseDataItem from './base.mjs';
|
import BaseDataItem from './base.mjs';
|
||||||
import { ActionField } from '../fields/actionField.mjs';
|
|
||||||
|
|
||||||
export default class DHDomainCard extends BaseDataItem {
|
export default class DHDomainCard extends BaseDataItem {
|
||||||
/** @inheritDoc */
|
/** @inheritDoc */
|
||||||
|
|
@ -34,6 +33,7 @@ export default class DHDomainCard extends BaseDataItem {
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**@inheritdoc */
|
||||||
async _preCreate(data, options, user) {
|
async _preCreate(data, options, user) {
|
||||||
const allowed = await super._preCreate(data, options, user);
|
const allowed = await super._preCreate(data, options, user);
|
||||||
if (allowed === false) return;
|
if (allowed === false) return;
|
||||||
|
|
@ -55,4 +55,35 @@ export default class DHDomainCard extends BaseDataItem {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generates a list of localized tags based on this item's type-specific properties.
|
||||||
|
* @returns {string[]} An array of localized tag strings.
|
||||||
|
*/
|
||||||
|
_getTags() {
|
||||||
|
const tags = [
|
||||||
|
game.i18n.localize(`DAGGERHEART.CONFIG.DomainCardTypes.${this.type}`),
|
||||||
|
game.i18n.localize(`DAGGERHEART.GENERAL.Domain.${this.domain}.label`),
|
||||||
|
`${game.i18n.localize('DAGGERHEART.ITEMS.DomainCard.recallCost')}: ${this.recallCost}`
|
||||||
|
];
|
||||||
|
|
||||||
|
return tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generate a localized label array for this item subtype.
|
||||||
|
* @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects.
|
||||||
|
*/
|
||||||
|
_getLabels() {
|
||||||
|
const labels = [
|
||||||
|
game.i18n.localize(`DAGGERHEART.CONFIG.DomainCardTypes.${this.type}`),
|
||||||
|
game.i18n.localize(`DAGGERHEART.GENERAL.Domain.${this.domain}.label`),
|
||||||
|
{
|
||||||
|
value: `${this.recallCost}`, //converts the number to a string
|
||||||
|
icons: ['fa-bolt']
|
||||||
|
}
|
||||||
|
];
|
||||||
|
|
||||||
|
return labels;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -167,4 +167,64 @@ export default class DHWeapon extends AttachableItem {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generates a list of localized tags based on this item's type-specific properties.
|
||||||
|
* @returns {string[]} An array of localized tag strings.
|
||||||
|
*/
|
||||||
|
_getTags() {
|
||||||
|
const { attack, burden } = this;
|
||||||
|
const tags = [
|
||||||
|
game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${attack.roll.trait}.name`),
|
||||||
|
game.i18n.localize(`DAGGERHEART.CONFIG.Range.${attack.range}.name`),
|
||||||
|
game.i18n.localize(`DAGGERHEART.CONFIG.Burden.${burden}`)
|
||||||
|
];
|
||||||
|
|
||||||
|
for (const { value, type } of attack.damage.parts) {
|
||||||
|
const parts = [value.dice];
|
||||||
|
if (value.bonus) parts.push(value.bonus.signedString());
|
||||||
|
|
||||||
|
if (type.size > 0) {
|
||||||
|
const typeTags = Array.from(type)
|
||||||
|
.map(t => game.i18n.localize(`DAGGERHEART.CONFIG.DamageType.${t}.abbreviation`))
|
||||||
|
.join(' | ');
|
||||||
|
parts.push(` (${typeTags})`); // Add a space in front and put it inside a ().
|
||||||
|
}
|
||||||
|
|
||||||
|
tags.push(parts.join(''));
|
||||||
|
}
|
||||||
|
|
||||||
|
return tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generate a localized label array for this item subtype.
|
||||||
|
* @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects.
|
||||||
|
*/
|
||||||
|
_getLabels() {
|
||||||
|
const { roll, range, damage } = this.attack;
|
||||||
|
|
||||||
|
const labels = [
|
||||||
|
game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${roll.trait}.short`),
|
||||||
|
game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.short`)
|
||||||
|
];
|
||||||
|
|
||||||
|
for (const { value, type } of damage.parts) {
|
||||||
|
const str = [value.dice];
|
||||||
|
if (value.bonus) str.push(value.bonus.signedString());
|
||||||
|
|
||||||
|
const icons = Array.from(type)
|
||||||
|
.map(t => CONFIG.DH.GENERAL.damageTypes[t]?.icon)
|
||||||
|
.filter(Boolean);
|
||||||
|
|
||||||
|
const labelValue = str.join('');
|
||||||
|
if (icons.length === 0) {
|
||||||
|
labels.push(labelValue);
|
||||||
|
} else {
|
||||||
|
labels.push({ value: labelValue, icons });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return labels;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,11 @@
|
||||||
import { itemAbleRollParse } from '../helpers/utils.mjs';
|
import { itemAbleRollParse } from '../helpers/utils.mjs';
|
||||||
|
|
||||||
export default class DhActiveEffect extends ActiveEffect {
|
export default class DhActiveEffect extends foundry.documents.ActiveEffect {
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
/* Properties */
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
|
||||||
|
/**@override */
|
||||||
get isSuppressed() {
|
get isSuppressed() {
|
||||||
// If this is a copied effect from an attachment, never suppress it
|
// If this is a copied effect from an attachment, never suppress it
|
||||||
// (These effects have attachmentSource metadata)
|
// (These effects have attachmentSource metadata)
|
||||||
|
|
@ -41,14 +46,11 @@ export default class DhActiveEffect extends ActiveEffect {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
get localizedStatuses() {
|
/* -------------------------------------------- */
|
||||||
const statusMap = new Map(foundry.CONFIG.statusEffects.map(status => [status.id, status.name]));
|
/* Event Handlers */
|
||||||
return this.statuses.map(x => ({
|
/* -------------------------------------------- */
|
||||||
key: x,
|
|
||||||
name: game.i18n.localize(statusMap.get(x))
|
|
||||||
}));
|
|
||||||
}
|
|
||||||
|
|
||||||
|
/**@inheritdoc*/
|
||||||
async _preCreate(data, options, user) {
|
async _preCreate(data, options, user) {
|
||||||
const update = {};
|
const update = {};
|
||||||
if (!data.img) {
|
if (!data.img) {
|
||||||
|
|
@ -62,13 +64,22 @@ export default class DhActiveEffect extends ActiveEffect {
|
||||||
await super._preCreate(data, options, user);
|
await super._preCreate(data, options, user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
/* Methods */
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
|
||||||
|
/**@inheritdoc*/
|
||||||
static applyField(model, change, field) {
|
static applyField(model, change, field) {
|
||||||
const evalValue = this.effectSafeEval(itemAbleRollParse(change.value, model, change.effect.parent));
|
const evalValue = this.effectSafeEval(itemAbleRollParse(change.value, model, change.effect.parent));
|
||||||
change.value = evalValue ?? change.value;
|
change.value = evalValue ?? change.value;
|
||||||
super.applyField(model, change, field);
|
super.applyField(model, change, field);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Altered Foundry safeEval to allow non-numeric returns */
|
/**
|
||||||
|
* Altered Foundry safeEval to allow non-numeric return
|
||||||
|
* @param {string} expression
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
static effectSafeEval(expression) {
|
static effectSafeEval(expression) {
|
||||||
let result;
|
let result;
|
||||||
try {
|
try {
|
||||||
|
|
@ -82,6 +93,26 @@ export default class DhActiveEffect extends ActiveEffect {
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generates a list of localized tags based on this item's type-specific properties.
|
||||||
|
* @returns {string[]} An array of localized tag strings.
|
||||||
|
*/
|
||||||
|
_getTags() {
|
||||||
|
const tags = [
|
||||||
|
`${game.i18n.localize(this.parent.system.metadata.label)}: ${this.parent.name}`,
|
||||||
|
game.i18n.localize(
|
||||||
|
this.isTemporary ? 'DAGGERHEART.EFFECTS.Duration.temporary' : 'DAGGERHEART.EFFECTS.Duration.passive'
|
||||||
|
)
|
||||||
|
];
|
||||||
|
|
||||||
|
for (const statusId of this.statuses) {
|
||||||
|
const status = CONFIG.statusEffects.find(s => s.id === statusId);
|
||||||
|
tags.push(game.i18n.localize(status.name));
|
||||||
|
}
|
||||||
|
|
||||||
|
return tags;
|
||||||
|
}
|
||||||
|
|
||||||
async toChat(origin) {
|
async toChat(origin) {
|
||||||
const cls = getDocumentClass('ChatMessage');
|
const cls = getDocumentClass('ChatMessage');
|
||||||
const systemData = {
|
const systemData = {
|
||||||
|
|
|
||||||
|
|
@ -96,6 +96,28 @@ export default class DHItem extends foundry.documents.Item {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* -------------------------------------------- */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generate an array of localized tag.
|
||||||
|
* @returns {string[]} An array of localized tag strings.
|
||||||
|
*/
|
||||||
|
getTags() {
|
||||||
|
const tags = [];
|
||||||
|
if (this.system.getTags) tags.push(...this.system.getTags());
|
||||||
|
return tags;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Generate a localized label array for this item.
|
||||||
|
* @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects.
|
||||||
|
*/
|
||||||
|
getLabels() {
|
||||||
|
const labels = [];
|
||||||
|
if (this.system.getLabels) labels.push(...this.system.getLabels());
|
||||||
|
return labels;
|
||||||
|
}
|
||||||
|
|
||||||
async use(event) {
|
async use(event) {
|
||||||
const actions = new Set(this.system.actionsList);
|
const actions = new Set(this.system.actionsList);
|
||||||
if (actions?.size) {
|
if (actions?.size) {
|
||||||
|
|
|
||||||
|
|
@ -240,7 +240,7 @@ export const updateActorTokens = async (actor, update) => {
|
||||||
* Retrieves a Foundry document associated with the nearest ancestor element
|
* Retrieves a Foundry document associated with the nearest ancestor element
|
||||||
* that has a `data-item-uuid` attribute.
|
* that has a `data-item-uuid` attribute.
|
||||||
* @param {HTMLElement} element - The DOM element to start the search from.
|
* @param {HTMLElement} element - The DOM element to start the search from.
|
||||||
* @returns {foundry.abstract.Document|null} The resolved document, or null if not found or invalid.
|
* @returns {Promise<foundry.abstract.Document|null>} The resolved document, or null if not found or invalid.
|
||||||
*/
|
*/
|
||||||
export async function getDocFromElement(element) {
|
export async function getDocFromElement(element) {
|
||||||
const target = element.closest('[data-item-uuid]');
|
const target = element.closest('[data-item-uuid]');
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,31 @@
|
||||||
{
|
{
|
||||||
"name": "Highborne",
|
"name": "Highborne",
|
||||||
"img": "icons/svg/item-bag.svg",
|
"img": "icons/environment/settlement/palast.webp",
|
||||||
"type": "community",
|
"type": "community",
|
||||||
"folder": null,
|
"folder": null,
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p>Being part of a highborne community means you’re accustomed to a life of elegance, opulence, and prestige within the upper echelons of society.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"800c54a3-5285-410c-9307-feabfc88540e\">Traditionally, members of a highborne community possess incredible material wealth. While this can take a variety of forms depending on the community—including gold and other minerals, land, or controlling the means of production—this status always comes with power and influence. Highborne place great value on titles and possessions, and there is little social mobility within their ranks. Members of a highborne community often control the political and economic status of the areas in which they live due to their ability to influence people and the economy with their substantial wealth. The health and safety of the less affluent people who live in these locations often hinges on the ability of this highborne ruling class to prioritize the well-being of their subjects over profit.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"02c8011b-a6fa-4300-ace4-9c0640cf0a90\"><em>Highborne are often amiable, candid, conniving, enterprising, ostentatious, and unflappable.</em></p></p>"
|
"description": "<p>Being part of a highborne community means you’re accustomed to a life of elegance, opulence, and prestige within the upper echelons of society.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"800c54a3-5285-410c-9307-feabfc88540e\">Traditionally, members of a highborne community possess incredible material wealth. While this can take a variety of forms depending on the community—including gold and other minerals, land, or controlling the means of production—this status always comes with power and influence. Highborne place great value on titles and possessions, and there is little social mobility within their ranks. Members of a highborne community often control the political and economic status of the areas in which they live due to their ability to influence people and the economy with their substantial wealth. The health and safety of the less affluent people who live in these locations often hinges on the ability of this highborne ruling class to prioritize the well-being of their subjects over profit.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"02c8011b-a6fa-4300-ace4-9c0640cf0a90\"><em>Highborne are often amiable, candid, conniving, enterprising, ostentatious, and unflappable.</em></p></p>",
|
||||||
|
"features": [
|
||||||
|
"Compendium.daggerheart.communities.Item.C7NR6qRatawZusmg"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"flags": {},
|
"flags": {},
|
||||||
"_stats": {
|
"_stats": {
|
||||||
"compendiumSource": null,
|
"compendiumSource": null,
|
||||||
"duplicateSource": null,
|
"duplicateSource": null,
|
||||||
"exportSource": null,
|
"exportSource": null,
|
||||||
"coreVersion": "13.344",
|
"coreVersion": "13.346",
|
||||||
"systemId": "daggerheart",
|
"systemId": "daggerheart",
|
||||||
"systemVersion": "0.0.1",
|
"systemVersion": "0.0.1",
|
||||||
"createdTime": 1753922784392,
|
"createdTime": 1753922784392,
|
||||||
"modifiedTime": 1753922784392,
|
"modifiedTime": 1754010352828,
|
||||||
"lastModifiedBy": "WafZqd6qLGpBRGTt"
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
},
|
},
|
||||||
"_id": "DVw2mOCHB8i0XeBz",
|
"_id": "DVw2mOCHB8i0XeBz",
|
||||||
"sort": 3400000,
|
"sort": 3400000,
|
||||||
"effects": [],
|
"effects": [],
|
||||||
|
"ownership": {
|
||||||
|
"default": 0
|
||||||
|
},
|
||||||
"_key": "!items!DVw2mOCHB8i0XeBz"
|
"_key": "!items!DVw2mOCHB8i0XeBz"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,31 @@
|
||||||
{
|
{
|
||||||
"name": "Loreborne",
|
"name": "Loreborne",
|
||||||
"img": "icons/svg/item-bag.svg",
|
"img": "icons/sundries/scrolls/scroll-writing-brown-gold.webp",
|
||||||
"type": "community",
|
"type": "community",
|
||||||
"folder": null,
|
"folder": null,
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p>Being part of a loreborne community means you’re from a society that favors strong academic or political prowess.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"f75f439e-df5b-4c3a-b8b4-b59c8c05ebb8\">Loreborne communities highly value knowledge, frequently in the form of historical preservation, political advancement, scientific study, skill development, or lore and mythology compilation. Most members of these communities research in institutions built in bastions of civilization, while some eclectic few thrive in gathering information from the natural world. Some may be isolationists, operating in smaller enclaves, schools, or guilds and following their own unique ethos. Others still wield their knowledge on a larger scale, making deft political maneuvers across governmental landscapes.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"b2a2e82d-a5de-43c7-b9b8-16b5bd8e5b8b\"><em>Loreborne are often direct, eloquent, inquisitive, patient, rhapsodic, and witty.</em></p></p>"
|
"description": "<p>Being part of a loreborne community means you’re from a society that favors strong academic or political prowess.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"f75f439e-df5b-4c3a-b8b4-b59c8c05ebb8\">Loreborne communities highly value knowledge, frequently in the form of historical preservation, political advancement, scientific study, skill development, or lore and mythology compilation. Most members of these communities research in institutions built in bastions of civilization, while some eclectic few thrive in gathering information from the natural world. Some may be isolationists, operating in smaller enclaves, schools, or guilds and following their own unique ethos. Others still wield their knowledge on a larger scale, making deft political maneuvers across governmental landscapes.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"b2a2e82d-a5de-43c7-b9b8-16b5bd8e5b8b\"><em>Loreborne are often direct, eloquent, inquisitive, patient, rhapsodic, and witty.</em></p></p>",
|
||||||
|
"features": [
|
||||||
|
"Compendium.daggerheart.communities.Item.JBZJmywisJg5X3tH"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"flags": {},
|
"flags": {},
|
||||||
"_stats": {
|
"_stats": {
|
||||||
"compendiumSource": null,
|
"compendiumSource": null,
|
||||||
"duplicateSource": null,
|
"duplicateSource": null,
|
||||||
"exportSource": null,
|
"exportSource": null,
|
||||||
"coreVersion": "13.344",
|
"coreVersion": "13.346",
|
||||||
"systemId": "daggerheart",
|
"systemId": "daggerheart",
|
||||||
"systemVersion": "0.0.1",
|
"systemVersion": "0.0.1",
|
||||||
"createdTime": 1753922784392,
|
"createdTime": 1753922784392,
|
||||||
"modifiedTime": 1753922784392,
|
"modifiedTime": 1754010491764,
|
||||||
"lastModifiedBy": "WafZqd6qLGpBRGTt"
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
},
|
},
|
||||||
"_id": "YsvlyqYoi8QQ8kwm",
|
"_id": "YsvlyqYoi8QQ8kwm",
|
||||||
"sort": 3400000,
|
"sort": 3400000,
|
||||||
"effects": [],
|
"effects": [],
|
||||||
|
"ownership": {
|
||||||
|
"default": 0
|
||||||
|
},
|
||||||
"_key": "!items!YsvlyqYoi8QQ8kwm"
|
"_key": "!items!YsvlyqYoi8QQ8kwm"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,31 @@
|
||||||
{
|
{
|
||||||
"name": "Orderborne",
|
"name": "Orderborne",
|
||||||
"img": "icons/svg/item-bag.svg",
|
"img": "icons/environment/people/infantry-army.webp",
|
||||||
"type": "community",
|
"type": "community",
|
||||||
"folder": null,
|
"folder": null,
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p>Being part of an orderborne community means you’re from a collective that focuses on discipline or faith, and you uphold a set of principles that reflect your experience there.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"4da738f4-45e3-4bc6-b1f8-aef939b162ca\">Orderborne are frequently some of the most powerful among the surrounding communities. By aligning the members of their society around a common value or goal, such as a god, doctrine, ethos, or even a shared business or trade, the ruling bodies of these enclaves are able to mobilize larger populations with less effort. While orderborne communities take a variety of forms—some even profoundly pacifistic—perhaps the most feared are those that structure themselves around military prowess. In such a case, it’s not uncommon for orderborne to provide soldiers for hire to other cities or countries.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"6b261db5-6250-44a9-aebd-000cc9c9bcc5\"><em>Orderborne are often ambitious, benevolent, pensive, prudent, sardonic, and stoic.</em></p></p>"
|
"description": "<p>Being part of an orderborne community means you’re from a collective that focuses on discipline or faith, and you uphold a set of principles that reflect your experience there.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"4da738f4-45e3-4bc6-b1f8-aef939b162ca\">Orderborne are frequently some of the most powerful among the surrounding communities. By aligning the members of their society around a common value or goal, such as a god, doctrine, ethos, or even a shared business or trade, the ruling bodies of these enclaves are able to mobilize larger populations with less effort. While orderborne communities take a variety of forms—some even profoundly pacifistic—perhaps the most feared are those that structure themselves around military prowess. In such a case, it’s not uncommon for orderborne to provide soldiers for hire to other cities or countries.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"6b261db5-6250-44a9-aebd-000cc9c9bcc5\"><em>Orderborne are often ambitious, benevolent, pensive, prudent, sardonic, and stoic.</em></p></p>",
|
||||||
|
"features": [
|
||||||
|
"Compendium.daggerheart.communities.Item.7aXWdH3gzaYREK0X"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"flags": {},
|
"flags": {},
|
||||||
"_stats": {
|
"_stats": {
|
||||||
"compendiumSource": null,
|
"compendiumSource": null,
|
||||||
"duplicateSource": null,
|
"duplicateSource": null,
|
||||||
"exportSource": null,
|
"exportSource": null,
|
||||||
"coreVersion": "13.344",
|
"coreVersion": "13.346",
|
||||||
"systemId": "daggerheart",
|
"systemId": "daggerheart",
|
||||||
"systemVersion": "0.0.1",
|
"systemVersion": "0.0.1",
|
||||||
"createdTime": 1753922784393,
|
"createdTime": 1753922784393,
|
||||||
"modifiedTime": 1753922784393,
|
"modifiedTime": 1754010626874,
|
||||||
"lastModifiedBy": "WafZqd6qLGpBRGTt"
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
},
|
},
|
||||||
"_id": "TY2TejenASXtS484",
|
"_id": "TY2TejenASXtS484",
|
||||||
"sort": 3400000,
|
"sort": 3400000,
|
||||||
"effects": [],
|
"effects": [],
|
||||||
|
"ownership": {
|
||||||
|
"default": 0
|
||||||
|
},
|
||||||
"_key": "!items!TY2TejenASXtS484"
|
"_key": "!items!TY2TejenASXtS484"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,31 @@
|
||||||
{
|
{
|
||||||
"name": "Ridgeborne",
|
"name": "Ridgeborne",
|
||||||
"img": "icons/svg/item-bag.svg",
|
"img": "icons/environment/wilderness/terrain-rocks-brown.webp",
|
||||||
"type": "community",
|
"type": "community",
|
||||||
"folder": null,
|
"folder": null,
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p>Being part of a ridgeborne community means you’ve called the rocky peaks and sharp cliffs of the mountainside home.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"55b3205f-c5c5-4e9d-a207-d0fbb550cd8f\">Those who’ve lived in the mountains often consider themselves hardier than most because they’ve thrived among the most dangerous terrain many continents have to offer. These groups are adept at adaptation, developing unique technologies and equipment to move both people and products across difficult terrain. As such, ridgeborne grow up scrambling and climbing, making them sturdy and strong-willed. Ridgeborne localities appear in a variety of forms—some cities carve out entire cliff faces, others construct castles of stone, and still more live in small homes on windblown peaks. Outside forces often struggle to attack ridgeborne groups, as the small militias and large military forces of the mountains are adept at utilizing their high-ground advantage.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"4c5ba38a-812d-4231-930c-23c9fc5a24cf\"><em>Ridgeborne are often bold, hardy, indomitable, loyal, reserved, and stubborn.</em></p></p>"
|
"description": "<p>Being part of a ridgeborne community means you’ve called the rocky peaks and sharp cliffs of the mountainside home.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"55b3205f-c5c5-4e9d-a207-d0fbb550cd8f\">Those who’ve lived in the mountains often consider themselves hardier than most because they’ve thrived among the most dangerous terrain many continents have to offer. These groups are adept at adaptation, developing unique technologies and equipment to move both people and products across difficult terrain. As such, ridgeborne grow up scrambling and climbing, making them sturdy and strong-willed. Ridgeborne localities appear in a variety of forms—some cities carve out entire cliff faces, others construct castles of stone, and still more live in small homes on windblown peaks. Outside forces often struggle to attack ridgeborne groups, as the small militias and large military forces of the mountains are adept at utilizing their high-ground advantage.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"4c5ba38a-812d-4231-930c-23c9fc5a24cf\"><em>Ridgeborne are often bold, hardy, indomitable, loyal, reserved, and stubborn.</em></p></p>",
|
||||||
|
"features": [
|
||||||
|
"Compendium.daggerheart.communities.Item.DYmmr5CknLtHnwuj"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"flags": {},
|
"flags": {},
|
||||||
"_stats": {
|
"_stats": {
|
||||||
"compendiumSource": null,
|
"compendiumSource": null,
|
||||||
"duplicateSource": null,
|
"duplicateSource": null,
|
||||||
"exportSource": null,
|
"exportSource": null,
|
||||||
"coreVersion": "13.344",
|
"coreVersion": "13.346",
|
||||||
"systemId": "daggerheart",
|
"systemId": "daggerheart",
|
||||||
"systemVersion": "0.0.1",
|
"systemVersion": "0.0.1",
|
||||||
"createdTime": 1753922784394,
|
"createdTime": 1753922784394,
|
||||||
"modifiedTime": 1753922784394,
|
"modifiedTime": 1754010655426,
|
||||||
"lastModifiedBy": "WafZqd6qLGpBRGTt"
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
},
|
},
|
||||||
"_id": "WHLA4qrdszXQHOuo",
|
"_id": "WHLA4qrdszXQHOuo",
|
||||||
"sort": 3400000,
|
"sort": 3400000,
|
||||||
"effects": [],
|
"effects": [],
|
||||||
|
"ownership": {
|
||||||
|
"default": 0
|
||||||
|
},
|
||||||
"_key": "!items!WHLA4qrdszXQHOuo"
|
"_key": "!items!WHLA4qrdszXQHOuo"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,31 @@
|
||||||
{
|
{
|
||||||
"name": "Seaborne",
|
"name": "Seaborne",
|
||||||
"img": "icons/svg/item-bag.svg",
|
"img": "icons/environment/settlement/ship.webp",
|
||||||
"type": "community",
|
"type": "community",
|
||||||
"folder": null,
|
"folder": null,
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p>Being part of a seaborne community means you lived on or near a large body of water.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"f74526d3-8864-4794-a556-b1922778a20b\">Seaborne communities are built, both physically and culturally, around the specific waters they call home. Some of these groups live along the shore, constructing ports for locals and travelers alike. These harbors function as centers of commerce, tourist attractions, or even just a safe place to lay down one’s head after weeks of travel. Other seaborne live on the water in small boats or large ships, with the idea of “home” comprising a ship and its crew, rather than any one landmass. No matter their exact location, seaborne communities are closely tied to the ocean tides and the creatures who inhabit them. Seaborne learn to fish at a young age, and train from birth to hold their breath and swim in even the most tumultuous waters. Individuals from these groups are highly sought after for their sailing skills, and many become captains of vessels, whether within their own community, working for another, or even at the helm of a powerful naval operation.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"024de014-6fce-43b9-b88b-3489275c5ab3\"><em>Seaborne are often candid, cooperative, exuberant, fierce, resolute, and weathered.</em></p></p>"
|
"description": "<p>Being part of a seaborne community means you lived on or near a large body of water.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"f74526d3-8864-4794-a556-b1922778a20b\">Seaborne communities are built, both physically and culturally, around the specific waters they call home. Some of these groups live along the shore, constructing ports for locals and travelers alike. These harbors function as centers of commerce, tourist attractions, or even just a safe place to lay down one’s head after weeks of travel. Other seaborne live on the water in small boats or large ships, with the idea of “home” comprising a ship and its crew, rather than any one landmass. No matter their exact location, seaborne communities are closely tied to the ocean tides and the creatures who inhabit them. Seaborne learn to fish at a young age, and train from birth to hold their breath and swim in even the most tumultuous waters. Individuals from these groups are highly sought after for their sailing skills, and many become captains of vessels, whether within their own community, working for another, or even at the helm of a powerful naval operation.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"024de014-6fce-43b9-b88b-3489275c5ab3\"><em>Seaborne are often candid, cooperative, exuberant, fierce, resolute, and weathered.</em></p></p>",
|
||||||
|
"features": [
|
||||||
|
"Compendium.daggerheart.communities.Item.07x6Qe6qMzDw2xN4"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"flags": {},
|
"flags": {},
|
||||||
"_stats": {
|
"_stats": {
|
||||||
"compendiumSource": null,
|
"compendiumSource": null,
|
||||||
"duplicateSource": null,
|
"duplicateSource": null,
|
||||||
"exportSource": null,
|
"exportSource": null,
|
||||||
"coreVersion": "13.344",
|
"coreVersion": "13.346",
|
||||||
"systemId": "daggerheart",
|
"systemId": "daggerheart",
|
||||||
"systemVersion": "0.0.1",
|
"systemVersion": "0.0.1",
|
||||||
"createdTime": 1753922784395,
|
"createdTime": 1753922784395,
|
||||||
"modifiedTime": 1753922784395,
|
"modifiedTime": 1754010861330,
|
||||||
"lastModifiedBy": "WafZqd6qLGpBRGTt"
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
},
|
},
|
||||||
"_id": "o5AA5J05N7EvH1rN",
|
"_id": "o5AA5J05N7EvH1rN",
|
||||||
"sort": 3400000,
|
"sort": 3400000,
|
||||||
"effects": [],
|
"effects": [],
|
||||||
|
"ownership": {
|
||||||
|
"default": 0
|
||||||
|
},
|
||||||
"_key": "!items!o5AA5J05N7EvH1rN"
|
"_key": "!items!o5AA5J05N7EvH1rN"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,31 @@
|
||||||
{
|
{
|
||||||
"name": "Slyborne",
|
"name": "Slyborne",
|
||||||
"img": "icons/svg/item-bag.svg",
|
"img": "icons/environment/settlement/city-night-spire.webp",
|
||||||
"type": "community",
|
"type": "community",
|
||||||
"folder": null,
|
"folder": null,
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p>Being part of a slyborne community means you come from a group that operates outside the law, including all manner of criminals, grifters, and con artists.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"f26534eb-503b-43ea-a768-8af00d09824e\">Being part of a slyborne community means you come from a group that operates outside the law, including all manner of criminals, grifters, and con artists. Members of slyborne communities are brought together by their disreputable goals and their clever means of achieving them. Many people in these communities have an array of unscrupulous skills: forging, thievery, smuggling, and violence. People of any social class can be slyborne, from those who have garnered vast wealth and influence to those without a coin to their name. To the outside eye, slyborne might appear to be ruffians with no loyalty, but these communities possess some of the strictest codes of honor which, when broken, can result in a terrifying end for the transgressor.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"9d607cb9-95df-4956-9794-d1e637683705\"><em>Slyborne are often calculating, clever, formidable, perceptive, shrewd, and tenacious.</em></p></p>"
|
"description": "<p>Being part of a slyborne community means you come from a group that operates outside the law, including all manner of criminals, grifters, and con artists.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"f26534eb-503b-43ea-a768-8af00d09824e\">Being part of a slyborne community means you come from a group that operates outside the law, including all manner of criminals, grifters, and con artists. Members of slyborne communities are brought together by their disreputable goals and their clever means of achieving them. Many people in these communities have an array of unscrupulous skills: forging, thievery, smuggling, and violence. People of any social class can be slyborne, from those who have garnered vast wealth and influence to those without a coin to their name. To the outside eye, slyborne might appear to be ruffians with no loyalty, but these communities possess some of the strictest codes of honor which, when broken, can result in a terrifying end for the transgressor.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"9d607cb9-95df-4956-9794-d1e637683705\"><em>Slyborne are often calculating, clever, formidable, perceptive, shrewd, and tenacious.</em></p></p>",
|
||||||
|
"features": [
|
||||||
|
"Compendium.daggerheart.communities.Item.ZmEuBdL0JrvuA8le"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"flags": {},
|
"flags": {},
|
||||||
"_stats": {
|
"_stats": {
|
||||||
"compendiumSource": null,
|
"compendiumSource": null,
|
||||||
"duplicateSource": null,
|
"duplicateSource": null,
|
||||||
"exportSource": null,
|
"exportSource": null,
|
||||||
"coreVersion": "13.344",
|
"coreVersion": "13.346",
|
||||||
"systemId": "daggerheart",
|
"systemId": "daggerheart",
|
||||||
"systemVersion": "0.0.1",
|
"systemVersion": "0.0.1",
|
||||||
"createdTime": 1753922784396,
|
"createdTime": 1753922784396,
|
||||||
"modifiedTime": 1753922784396,
|
"modifiedTime": 1754011031727,
|
||||||
"lastModifiedBy": "WafZqd6qLGpBRGTt"
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
},
|
},
|
||||||
"_id": "rGwCPMqZtky7SE6d",
|
"_id": "rGwCPMqZtky7SE6d",
|
||||||
"sort": 3400000,
|
"sort": 3400000,
|
||||||
"effects": [],
|
"effects": [],
|
||||||
|
"ownership": {
|
||||||
|
"default": 0
|
||||||
|
},
|
||||||
"_key": "!items!rGwCPMqZtky7SE6d"
|
"_key": "!items!rGwCPMqZtky7SE6d"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,31 @@
|
||||||
{
|
{
|
||||||
"name": "Underborne",
|
"name": "Underborne",
|
||||||
"img": "icons/svg/item-bag.svg",
|
"img": "icons/environment/wilderness/cave-entrance-dwarven-hill.webp",
|
||||||
"type": "community",
|
"type": "community",
|
||||||
"folder": null,
|
"folder": null,
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p>Being part of an underborne community means you’re from a subterranean society.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"46564ab7-2a3a-4033-a8a9-086d13dc5daf\">Many underborne live right beneath the cities and villages of other collectives, while some live much deeper. These communities range from small family groups in burrows to massive metropolises in caverns of stone. In many locales, underborne are recognized for their incredible boldness and skill that enable great feats of architecture and engineering. Underborne are regularly hired for their bravery, as even the least daring among them has likely encountered formidable belowground beasts, and learning to dispatch such creatures is common practice amongst these societies. Because of the dangers of their environment, many underborne communities develop unique nonverbal languages that prove equally useful on the surface.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"49451b43-92e9-4a21-af72-316189cce38b\"><em>Underborne are often composed, elusive, indomitable, innovative, resourceful, and unpretentious.</em></p></p>"
|
"description": "<p>Being part of an underborne community means you’re from a subterranean society.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"46564ab7-2a3a-4033-a8a9-086d13dc5daf\">Many underborne live right beneath the cities and villages of other collectives, while some live much deeper. These communities range from small family groups in burrows to massive metropolises in caverns of stone. In many locales, underborne are recognized for their incredible boldness and skill that enable great feats of architecture and engineering. Underborne are regularly hired for their bravery, as even the least daring among them has likely encountered formidable belowground beasts, and learning to dispatch such creatures is common practice amongst these societies. Because of the dangers of their environment, many underborne communities develop unique nonverbal languages that prove equally useful on the surface.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"49451b43-92e9-4a21-af72-316189cce38b\"><em>Underborne are often composed, elusive, indomitable, innovative, resourceful, and unpretentious.</em></p></p>",
|
||||||
|
"features": [
|
||||||
|
"Compendium.daggerheart.communities.Item.aMla3xQuCHEwORGD"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"flags": {},
|
"flags": {},
|
||||||
"_stats": {
|
"_stats": {
|
||||||
"compendiumSource": null,
|
"compendiumSource": null,
|
||||||
"duplicateSource": null,
|
"duplicateSource": null,
|
||||||
"exportSource": null,
|
"exportSource": null,
|
||||||
"coreVersion": "13.344",
|
"coreVersion": "13.346",
|
||||||
"systemId": "daggerheart",
|
"systemId": "daggerheart",
|
||||||
"systemVersion": "0.0.1",
|
"systemVersion": "0.0.1",
|
||||||
"createdTime": 1753922784398,
|
"createdTime": 1753922784398,
|
||||||
"modifiedTime": 1753922784398,
|
"modifiedTime": 1754011085731,
|
||||||
"lastModifiedBy": "WafZqd6qLGpBRGTt"
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
},
|
},
|
||||||
"_id": "eX0I1ZNMyD3nfaL1",
|
"_id": "eX0I1ZNMyD3nfaL1",
|
||||||
"sort": 3400000,
|
"sort": 3400000,
|
||||||
"effects": [],
|
"effects": [],
|
||||||
|
"ownership": {
|
||||||
|
"default": 0
|
||||||
|
},
|
||||||
"_key": "!items!eX0I1ZNMyD3nfaL1"
|
"_key": "!items!eX0I1ZNMyD3nfaL1"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,31 @@
|
||||||
{
|
{
|
||||||
"name": "Wanderborne",
|
"name": "Wanderborne",
|
||||||
"img": "icons/svg/item-bag.svg",
|
"img": "icons/environment/settlement/wagon.webp",
|
||||||
"type": "community",
|
"type": "community",
|
||||||
"folder": null,
|
"folder": null,
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p>Being part of a wanderborne community means you’ve lived as a nomad, forgoing a permanent home and experiencing a wide variety of cultures.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"38ab3560-b379-4862-a54b-f68ee23ed464\">Unlike many communities that are defined by their locale, wanderborne are defined by their traveling lifestyle. Because of their frequent migration, wanderborne put less value on the accumulation of material possessions in favor of acquiring information, skills, and connections. While some wanderborne are allied by a common ethos, such as a religion or a set of political or economic values, others come together after shared tragedy, such as the loss of their home or land. No matter the reason, the dangers posed by life on the road and the choice to continue down that road together mean that wanderborne are known for their unwavering loyalty.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"f8af6c80-2115-4d96-a1fc-3f425abafdd0\"><em>Wanderborne are often inscrutable, magnanimous, mirthful, reliable, savvy, and unorthodox.</em></p></p>"
|
"description": "<p>Being part of a wanderborne community means you’ve lived as a nomad, forgoing a permanent home and experiencing a wide variety of cultures.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"38ab3560-b379-4862-a54b-f68ee23ed464\">Unlike many communities that are defined by their locale, wanderborne are defined by their traveling lifestyle. Because of their frequent migration, wanderborne put less value on the accumulation of material possessions in favor of acquiring information, skills, and connections. While some wanderborne are allied by a common ethos, such as a religion or a set of political or economic values, others come together after shared tragedy, such as the loss of their home or land. No matter the reason, the dangers posed by life on the road and the choice to continue down that road together mean that wanderborne are known for their unwavering loyalty.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"f8af6c80-2115-4d96-a1fc-3f425abafdd0\"><em>Wanderborne are often inscrutable, magnanimous, mirthful, reliable, savvy, and unorthodox.</em></p></p>",
|
||||||
|
"features": [
|
||||||
|
"Compendium.daggerheart.communities.Item.2RSrQouA2zEJ5Xee"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"flags": {},
|
"flags": {},
|
||||||
"_stats": {
|
"_stats": {
|
||||||
"compendiumSource": null,
|
"compendiumSource": null,
|
||||||
"duplicateSource": null,
|
"duplicateSource": null,
|
||||||
"exportSource": null,
|
"exportSource": null,
|
||||||
"coreVersion": "13.344",
|
"coreVersion": "13.346",
|
||||||
"systemId": "daggerheart",
|
"systemId": "daggerheart",
|
||||||
"systemVersion": "0.0.1",
|
"systemVersion": "0.0.1",
|
||||||
"createdTime": 1753922784398,
|
"createdTime": 1753922784398,
|
||||||
"modifiedTime": 1753922784398,
|
"modifiedTime": 1754011123332,
|
||||||
"lastModifiedBy": "WafZqd6qLGpBRGTt"
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
},
|
},
|
||||||
"_id": "82mDY2EIBfLkNwQj",
|
"_id": "82mDY2EIBfLkNwQj",
|
||||||
"sort": 3400000,
|
"sort": 3400000,
|
||||||
"effects": [],
|
"effects": [],
|
||||||
|
"ownership": {
|
||||||
|
"default": 0
|
||||||
|
},
|
||||||
"_key": "!items!82mDY2EIBfLkNwQj"
|
"_key": "!items!82mDY2EIBfLkNwQj"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,25 +1,31 @@
|
||||||
{
|
{
|
||||||
"name": "Wildborne",
|
"name": "Wildborne",
|
||||||
"img": "icons/svg/item-bag.svg",
|
"img": "icons/environment/wilderness/tree-oak.webp",
|
||||||
"type": "community",
|
"type": "community",
|
||||||
"folder": null,
|
"folder": null,
|
||||||
"system": {
|
"system": {
|
||||||
"description": "<p>Being part of a wildborne community means you lived deep within the forest.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"464fc297-99b7-420d-b160-66174eba215d\">Wildborne communities are defined by their dedication to the conservation of their homelands, and many have strong religious or cultural ties to the fauna they live among. This results in unique architectural and technological advancements that favor sustainability over short-term, high-yield results. It is a hallmark of wildborne societies to integrate their villages and cities with the natural environment and avoid disturbing the lives of the plants and animals. While some construct their lodgings high in the branches of trees, others establish their homes on the ground beneath the forest canopy. It’s not uncommon for wildborne to remain reclusive and hidden within their woodland homes.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"f30c9dcd-5b61-4997-b7a8-2b1684fb60b2\"><em>Wildborne are often hardy, loyal, nurturing, reclusive, sagacious, and vibrant.</em></p></p>"
|
"description": "<p>Being part of a wildborne community means you lived deep within the forest.<br><br><p class=\"green Body-Styles_Body\" chunk_id=\"464fc297-99b7-420d-b160-66174eba215d\">Wildborne communities are defined by their dedication to the conservation of their homelands, and many have strong religious or cultural ties to the fauna they live among. This results in unique architectural and technological advancements that favor sustainability over short-term, high-yield results. It is a hallmark of wildborne societies to integrate their villages and cities with the natural environment and avoid disturbing the lives of the plants and animals. While some construct their lodgings high in the branches of trees, others establish their homes on the ground beneath the forest canopy. It’s not uncommon for wildborne to remain reclusive and hidden within their woodland homes.</p>\n<p class=\"green Body-Styles_Body\" chunk_id=\"f30c9dcd-5b61-4997-b7a8-2b1684fb60b2\"><em>Wildborne are often hardy, loyal, nurturing, reclusive, sagacious, and vibrant.</em></p></p>",
|
||||||
|
"features": [
|
||||||
|
"Compendium.daggerheart.communities.Item.TQ1AIQjndC4mYmmU"
|
||||||
|
]
|
||||||
},
|
},
|
||||||
"flags": {},
|
"flags": {},
|
||||||
"_stats": {
|
"_stats": {
|
||||||
"compendiumSource": null,
|
"compendiumSource": null,
|
||||||
"duplicateSource": null,
|
"duplicateSource": null,
|
||||||
"exportSource": null,
|
"exportSource": null,
|
||||||
"coreVersion": "13.344",
|
"coreVersion": "13.346",
|
||||||
"systemId": "daggerheart",
|
"systemId": "daggerheart",
|
||||||
"systemVersion": "0.0.1",
|
"systemVersion": "0.0.1",
|
||||||
"createdTime": 1753922784398,
|
"createdTime": 1753922784398,
|
||||||
"modifiedTime": 1753922784398,
|
"modifiedTime": 1754011159389,
|
||||||
"lastModifiedBy": "WafZqd6qLGpBRGTt"
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
},
|
},
|
||||||
"_id": "CRJ5pzJj4FjCtIlx",
|
"_id": "CRJ5pzJj4FjCtIlx",
|
||||||
"sort": 3400000,
|
"sort": 3400000,
|
||||||
"effects": [],
|
"effects": [],
|
||||||
|
"ownership": {
|
||||||
|
"default": 0
|
||||||
|
},
|
||||||
"_key": "!items!CRJ5pzJj4FjCtIlx"
|
"_key": "!items!CRJ5pzJj4FjCtIlx"
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,57 @@
|
||||||
|
{
|
||||||
|
"folder": "KA1VSGslxkbvVeMp",
|
||||||
|
"name": "Dedicated",
|
||||||
|
"type": "feature",
|
||||||
|
"_id": "7aXWdH3gzaYREK0X",
|
||||||
|
"img": "icons/environment/people/cleric-orange.webp",
|
||||||
|
"system": {
|
||||||
|
"description": "<p>Record three sayings or values your upbringing instilled in you. Once per rest, when you describe how you’re embodying one of these principles through your current action, you can roll a d20 as your Hope Die</p>",
|
||||||
|
"resource": null,
|
||||||
|
"actions": {
|
||||||
|
"ZBVqSlsDUKf8uGrI": {
|
||||||
|
"type": "effect",
|
||||||
|
"_id": "ZBVqSlsDUKf8uGrI",
|
||||||
|
"systemPath": "actions",
|
||||||
|
"description": "",
|
||||||
|
"chatDisplay": true,
|
||||||
|
"actionType": "action",
|
||||||
|
"cost": [],
|
||||||
|
"uses": {
|
||||||
|
"value": null,
|
||||||
|
"max": "1",
|
||||||
|
"recovery": "shortRest"
|
||||||
|
},
|
||||||
|
"effects": [],
|
||||||
|
"target": {
|
||||||
|
"type": "any",
|
||||||
|
"amount": null
|
||||||
|
},
|
||||||
|
"name": "Use",
|
||||||
|
"img": "icons/environment/people/cleric-orange.webp",
|
||||||
|
"range": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"originItemType": null,
|
||||||
|
"subType": null,
|
||||||
|
"originId": null
|
||||||
|
},
|
||||||
|
"effects": [],
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754010247432,
|
||||||
|
"modifiedTime": 1754010247432,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"sort": 0,
|
||||||
|
"ownership": {
|
||||||
|
"default": 0,
|
||||||
|
"Q9NoTaEarn3VMS6Z": 3
|
||||||
|
},
|
||||||
|
"_key": "!items!7aXWdH3gzaYREK0X"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,42 @@
|
||||||
|
{
|
||||||
|
"folder": "KA1VSGslxkbvVeMp",
|
||||||
|
"name": "Know the Tide",
|
||||||
|
"type": "feature",
|
||||||
|
"_id": "07x6Qe6qMzDw2xN4",
|
||||||
|
"img": "icons/environment/wilderness/cave-entrance-island.webp",
|
||||||
|
"system": {
|
||||||
|
"description": "<p>You can sense the ebb and flow of life. When you roll with Fear, place a token on your community card. You can hold a number of tokens equal to your level. Before you make an action roll, you can spend any number of these tokens to gain a +1 bonus to the roll for each token spent. At the end of each session, clear all unspent tokens.</p>",
|
||||||
|
"resource": {
|
||||||
|
"type": "simple",
|
||||||
|
"value": 0,
|
||||||
|
"max": "",
|
||||||
|
"icon": "",
|
||||||
|
"recovery": null,
|
||||||
|
"diceStates": {},
|
||||||
|
"dieFaces": "d4"
|
||||||
|
},
|
||||||
|
"actions": {},
|
||||||
|
"originItemType": null,
|
||||||
|
"subType": null,
|
||||||
|
"originId": null
|
||||||
|
},
|
||||||
|
"effects": [],
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754010247432,
|
||||||
|
"modifiedTime": 1754010247432,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"sort": 0,
|
||||||
|
"ownership": {
|
||||||
|
"default": 0,
|
||||||
|
"Q9NoTaEarn3VMS6Z": 3
|
||||||
|
},
|
||||||
|
"_key": "!items!07x6Qe6qMzDw2xN4"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,86 @@
|
||||||
|
{
|
||||||
|
"folder": "KA1VSGslxkbvVeMp",
|
||||||
|
"name": "Lightfoot",
|
||||||
|
"type": "feature",
|
||||||
|
"_id": "TQ1AIQjndC4mYmmU",
|
||||||
|
"img": "icons/magic/control/debuff-energy-snare-blue.webp",
|
||||||
|
"system": {
|
||||||
|
"description": "<p>Your movement is naturally silent. You have advantage on rolls to move without being heard.</p>",
|
||||||
|
"resource": null,
|
||||||
|
"actions": {},
|
||||||
|
"originItemType": null,
|
||||||
|
"subType": null,
|
||||||
|
"originId": null
|
||||||
|
},
|
||||||
|
"effects": [
|
||||||
|
{
|
||||||
|
"name": "Lightfoot",
|
||||||
|
"type": "base",
|
||||||
|
"_id": "4my9X5XC3uwDSx7B",
|
||||||
|
"img": "icons/magic/control/debuff-energy-snare-blue.webp",
|
||||||
|
"system": {
|
||||||
|
"rangeDependence": {
|
||||||
|
"enabled": false,
|
||||||
|
"type": "withinRange",
|
||||||
|
"target": "hostile",
|
||||||
|
"range": "melee"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"changes": [
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "Move without being heard.",
|
||||||
|
"priority": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"disabled": false,
|
||||||
|
"duration": {
|
||||||
|
"startTime": null,
|
||||||
|
"combat": null,
|
||||||
|
"seconds": null,
|
||||||
|
"rounds": null,
|
||||||
|
"turns": null,
|
||||||
|
"startRound": null,
|
||||||
|
"startTurn": null
|
||||||
|
},
|
||||||
|
"description": "",
|
||||||
|
"origin": null,
|
||||||
|
"tint": "#ffffff",
|
||||||
|
"transfer": true,
|
||||||
|
"statuses": [],
|
||||||
|
"sort": 0,
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754020396302,
|
||||||
|
"modifiedTime": 1754020437585,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"_key": "!items.effects!TQ1AIQjndC4mYmmU.4my9X5XC3uwDSx7B"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754010247432,
|
||||||
|
"modifiedTime": 1754010247432,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"sort": 0,
|
||||||
|
"ownership": {
|
||||||
|
"default": 0,
|
||||||
|
"Q9NoTaEarn3VMS6Z": 3
|
||||||
|
},
|
||||||
|
"_key": "!items!TQ1AIQjndC4mYmmU"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,98 @@
|
||||||
|
{
|
||||||
|
"folder": "KA1VSGslxkbvVeMp",
|
||||||
|
"name": "Low-Light Living",
|
||||||
|
"type": "feature",
|
||||||
|
"_id": "aMla3xQuCHEwORGD",
|
||||||
|
"img": "icons/environment/settlement/temple-night.webp",
|
||||||
|
"system": {
|
||||||
|
"description": "<p>When you’re in an area with low light or heavy shadow, you have advantage on rolls to hide, investigate, or perceive details within that area.</p>",
|
||||||
|
"resource": null,
|
||||||
|
"actions": {},
|
||||||
|
"originItemType": null,
|
||||||
|
"subType": null,
|
||||||
|
"originId": null
|
||||||
|
},
|
||||||
|
"effects": [
|
||||||
|
{
|
||||||
|
"name": "Low-Light Living",
|
||||||
|
"type": "base",
|
||||||
|
"_id": "pCp32u7UwqxCI4WW",
|
||||||
|
"img": "icons/environment/settlement/temple-night.webp",
|
||||||
|
"system": {
|
||||||
|
"rangeDependence": {
|
||||||
|
"enabled": false,
|
||||||
|
"type": "withinRange",
|
||||||
|
"target": "hostile",
|
||||||
|
"range": "melee"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"changes": [
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "In an area with low light or heavy shadow: hide, investigate, or perceive",
|
||||||
|
"priority": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "",
|
||||||
|
"priority": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "",
|
||||||
|
"priority": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"disabled": false,
|
||||||
|
"duration": {
|
||||||
|
"startTime": null,
|
||||||
|
"combat": null,
|
||||||
|
"seconds": null,
|
||||||
|
"rounds": null,
|
||||||
|
"turns": null,
|
||||||
|
"startRound": null,
|
||||||
|
"startTurn": null
|
||||||
|
},
|
||||||
|
"description": "",
|
||||||
|
"origin": null,
|
||||||
|
"tint": "#ffffff",
|
||||||
|
"transfer": true,
|
||||||
|
"statuses": [],
|
||||||
|
"sort": 0,
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754020102118,
|
||||||
|
"modifiedTime": 1754020317730,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"_key": "!items.effects!aMla3xQuCHEwORGD.pCp32u7UwqxCI4WW"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754010247432,
|
||||||
|
"modifiedTime": 1754010247432,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"sort": 0,
|
||||||
|
"ownership": {
|
||||||
|
"default": 0,
|
||||||
|
"Q9NoTaEarn3VMS6Z": 3
|
||||||
|
},
|
||||||
|
"_key": "!items!aMla3xQuCHEwORGD"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,65 @@
|
||||||
|
{
|
||||||
|
"folder": "KA1VSGslxkbvVeMp",
|
||||||
|
"name": "Nomadic Pack",
|
||||||
|
"type": "feature",
|
||||||
|
"_id": "2RSrQouA2zEJ5Xee",
|
||||||
|
"img": "icons/containers/bags/pack-leather-brown.webp",
|
||||||
|
"system": {
|
||||||
|
"description": "<p>Add a Nomadic Pack to your inventory. Once per session, you can spend a Hope to reach into this pack and pull out a mundane item that’s useful to your situation. Work with the GM to figure out what item you take out.</p>",
|
||||||
|
"resource": null,
|
||||||
|
"actions": {
|
||||||
|
"Jd9uVincqkIMAXgU": {
|
||||||
|
"type": "effect",
|
||||||
|
"_id": "Jd9uVincqkIMAXgU",
|
||||||
|
"systemPath": "actions",
|
||||||
|
"description": "",
|
||||||
|
"chatDisplay": true,
|
||||||
|
"actionType": "action",
|
||||||
|
"cost": [
|
||||||
|
{
|
||||||
|
"keyIsID": false,
|
||||||
|
"key": "hope",
|
||||||
|
"value": 1,
|
||||||
|
"scalable": false,
|
||||||
|
"step": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"uses": {
|
||||||
|
"value": null,
|
||||||
|
"max": "1",
|
||||||
|
"recovery": "session"
|
||||||
|
},
|
||||||
|
"effects": [],
|
||||||
|
"target": {
|
||||||
|
"type": "any",
|
||||||
|
"amount": null
|
||||||
|
},
|
||||||
|
"name": "Pull Item",
|
||||||
|
"img": "icons/containers/bags/pack-leather-brown.webp",
|
||||||
|
"range": ""
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"originItemType": null,
|
||||||
|
"subType": null,
|
||||||
|
"originId": null
|
||||||
|
},
|
||||||
|
"effects": [],
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754010247432,
|
||||||
|
"modifiedTime": 1754010247432,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"sort": 0,
|
||||||
|
"ownership": {
|
||||||
|
"default": 0,
|
||||||
|
"Q9NoTaEarn3VMS6Z": 3
|
||||||
|
},
|
||||||
|
"_key": "!items!2RSrQouA2zEJ5Xee"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,98 @@
|
||||||
|
{
|
||||||
|
"folder": "KA1VSGslxkbvVeMp",
|
||||||
|
"name": "Privilege",
|
||||||
|
"type": "feature",
|
||||||
|
"_id": "C7NR6qRatawZusmg",
|
||||||
|
"img": "icons/commodities/currency/coins-plain-stack-gold.webp",
|
||||||
|
"system": {
|
||||||
|
"description": "<p>You have advantage on rolls to consort with nobles, negotiate prices, or leverage your reputation to get what you want.</p>",
|
||||||
|
"resource": null,
|
||||||
|
"actions": {},
|
||||||
|
"originItemType": null,
|
||||||
|
"subType": null,
|
||||||
|
"originId": null
|
||||||
|
},
|
||||||
|
"effects": [
|
||||||
|
{
|
||||||
|
"name": "Privilege",
|
||||||
|
"type": "base",
|
||||||
|
"_id": "xgtjykfgvg142urA",
|
||||||
|
"img": "icons/commodities/currency/coins-plain-stack-gold.webp",
|
||||||
|
"system": {
|
||||||
|
"rangeDependence": {
|
||||||
|
"enabled": false,
|
||||||
|
"type": "withinRange",
|
||||||
|
"target": "hostile",
|
||||||
|
"range": "melee"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"changes": [
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "Consort with nobles",
|
||||||
|
"priority": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "Negotiate prices",
|
||||||
|
"priority": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "Leverage your reputation to get what you want",
|
||||||
|
"priority": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"disabled": false,
|
||||||
|
"duration": {
|
||||||
|
"startTime": null,
|
||||||
|
"combat": null,
|
||||||
|
"seconds": null,
|
||||||
|
"rounds": null,
|
||||||
|
"turns": null,
|
||||||
|
"startRound": null,
|
||||||
|
"startTurn": null
|
||||||
|
},
|
||||||
|
"description": "",
|
||||||
|
"origin": null,
|
||||||
|
"tint": "#ffffff",
|
||||||
|
"transfer": true,
|
||||||
|
"statuses": [],
|
||||||
|
"sort": 0,
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754015237400,
|
||||||
|
"modifiedTime": 1754015289801,
|
||||||
|
"lastModifiedBy": "MQSznptE5yLT7kj8"
|
||||||
|
},
|
||||||
|
"_key": "!items.effects!C7NR6qRatawZusmg.xgtjykfgvg142urA"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754010247432,
|
||||||
|
"modifiedTime": 1754010247432,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"sort": 0,
|
||||||
|
"ownership": {
|
||||||
|
"default": 0,
|
||||||
|
"Q9NoTaEarn3VMS6Z": 3
|
||||||
|
},
|
||||||
|
"_key": "!items!C7NR6qRatawZusmg"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,98 @@
|
||||||
|
{
|
||||||
|
"folder": "KA1VSGslxkbvVeMp",
|
||||||
|
"name": "Scoundrel",
|
||||||
|
"type": "feature",
|
||||||
|
"_id": "ZmEuBdL0JrvuA8le",
|
||||||
|
"img": "icons/equipment/head/hood-cloth-teal-gold.webp",
|
||||||
|
"system": {
|
||||||
|
"description": "<p>You have advantage on rolls to negotiate with criminals, detect lies, or find a safe place to hide.</p>",
|
||||||
|
"resource": null,
|
||||||
|
"actions": {},
|
||||||
|
"originItemType": null,
|
||||||
|
"subType": null,
|
||||||
|
"originId": null
|
||||||
|
},
|
||||||
|
"effects": [
|
||||||
|
{
|
||||||
|
"name": "Scoundrel",
|
||||||
|
"type": "base",
|
||||||
|
"_id": "snkYmZ22Q8HHLY9M",
|
||||||
|
"img": "icons/equipment/head/hood-cloth-teal-gold.webp",
|
||||||
|
"system": {
|
||||||
|
"rangeDependence": {
|
||||||
|
"enabled": false,
|
||||||
|
"type": "withinRange",
|
||||||
|
"target": "hostile",
|
||||||
|
"range": "melee"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"changes": [
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "Negotiate with criminals",
|
||||||
|
"priority": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "Detect lies",
|
||||||
|
"priority": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "Find a safe place to hide",
|
||||||
|
"priority": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"disabled": false,
|
||||||
|
"duration": {
|
||||||
|
"startTime": null,
|
||||||
|
"combat": null,
|
||||||
|
"seconds": null,
|
||||||
|
"rounds": null,
|
||||||
|
"turns": null,
|
||||||
|
"startRound": null,
|
||||||
|
"startTurn": null
|
||||||
|
},
|
||||||
|
"description": "",
|
||||||
|
"origin": null,
|
||||||
|
"tint": "#ffffff",
|
||||||
|
"transfer": true,
|
||||||
|
"statuses": [],
|
||||||
|
"sort": 0,
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754020484740,
|
||||||
|
"modifiedTime": 1754020540768,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"_key": "!items.effects!ZmEuBdL0JrvuA8le.snkYmZ22Q8HHLY9M"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754010247432,
|
||||||
|
"modifiedTime": 1754010247432,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"sort": 0,
|
||||||
|
"ownership": {
|
||||||
|
"default": 0,
|
||||||
|
"Q9NoTaEarn3VMS6Z": 3
|
||||||
|
},
|
||||||
|
"_key": "!items!ZmEuBdL0JrvuA8le"
|
||||||
|
}
|
||||||
98
src/packs/communities/feature_Steady_DYmmr5CknLtHnwuj.json
Normal file
98
src/packs/communities/feature_Steady_DYmmr5CknLtHnwuj.json
Normal file
|
|
@ -0,0 +1,98 @@
|
||||||
|
{
|
||||||
|
"folder": "KA1VSGslxkbvVeMp",
|
||||||
|
"name": "Steady",
|
||||||
|
"type": "feature",
|
||||||
|
"_id": "DYmmr5CknLtHnwuj",
|
||||||
|
"img": "icons/equipment/feet/boots-collared-simple-leather.webp",
|
||||||
|
"system": {
|
||||||
|
"description": "<p>You have advantage on rolls to traverse dangerous cliffs and ledges, navigate harsh environments, and use your survival knowledge.</p>",
|
||||||
|
"resource": null,
|
||||||
|
"actions": {},
|
||||||
|
"originItemType": null,
|
||||||
|
"subType": null,
|
||||||
|
"originId": null
|
||||||
|
},
|
||||||
|
"effects": [
|
||||||
|
{
|
||||||
|
"name": "Steady",
|
||||||
|
"type": "base",
|
||||||
|
"_id": "QDf9LD8Mhd0Cw0CB",
|
||||||
|
"img": "icons/equipment/feet/boots-collared-simple-leather.webp",
|
||||||
|
"system": {
|
||||||
|
"rangeDependence": {
|
||||||
|
"enabled": false,
|
||||||
|
"type": "withinRange",
|
||||||
|
"target": "hostile",
|
||||||
|
"range": "melee"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"changes": [
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "Traverse dangerous cliffs and ledges",
|
||||||
|
"priority": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "Navigate harsh environment",
|
||||||
|
"priority": null
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "Use your survival knowledge",
|
||||||
|
"priority": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"disabled": false,
|
||||||
|
"duration": {
|
||||||
|
"startTime": null,
|
||||||
|
"combat": null,
|
||||||
|
"seconds": null,
|
||||||
|
"rounds": null,
|
||||||
|
"turns": null,
|
||||||
|
"startRound": null,
|
||||||
|
"startTurn": null
|
||||||
|
},
|
||||||
|
"description": "",
|
||||||
|
"origin": null,
|
||||||
|
"tint": "#ffffff",
|
||||||
|
"transfer": true,
|
||||||
|
"statuses": [],
|
||||||
|
"sort": 0,
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754020582449,
|
||||||
|
"modifiedTime": 1754020663104,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"_key": "!items.effects!DYmmr5CknLtHnwuj.QDf9LD8Mhd0Cw0CB"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754010247432,
|
||||||
|
"modifiedTime": 1754010247432,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"sort": 0,
|
||||||
|
"ownership": {
|
||||||
|
"default": 0,
|
||||||
|
"Q9NoTaEarn3VMS6Z": 3
|
||||||
|
},
|
||||||
|
"_key": "!items!DYmmr5CknLtHnwuj"
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,86 @@
|
||||||
|
{
|
||||||
|
"folder": "KA1VSGslxkbvVeMp",
|
||||||
|
"name": "Well-Read",
|
||||||
|
"type": "feature",
|
||||||
|
"_id": "JBZJmywisJg5X3tH",
|
||||||
|
"img": "icons/sundries/books/book-open-brown.webp",
|
||||||
|
"system": {
|
||||||
|
"description": "<p>You have advantage on rolls that involve the history, culture, or politics of a prominent person or place.</p>",
|
||||||
|
"resource": null,
|
||||||
|
"actions": {},
|
||||||
|
"originItemType": null,
|
||||||
|
"subType": null,
|
||||||
|
"originId": null
|
||||||
|
},
|
||||||
|
"effects": [
|
||||||
|
{
|
||||||
|
"name": "Well-Read",
|
||||||
|
"type": "base",
|
||||||
|
"_id": "RwhxYOAAKKlYZiz0",
|
||||||
|
"img": "icons/sundries/books/book-open-brown.webp",
|
||||||
|
"system": {
|
||||||
|
"rangeDependence": {
|
||||||
|
"enabled": false,
|
||||||
|
"type": "withinRange",
|
||||||
|
"target": "hostile",
|
||||||
|
"range": "melee"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"changes": [
|
||||||
|
{
|
||||||
|
"key": "system.advantageSources",
|
||||||
|
"mode": 2,
|
||||||
|
"value": "History, culture, or politics of a prominent person or place",
|
||||||
|
"priority": null
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"disabled": false,
|
||||||
|
"duration": {
|
||||||
|
"startTime": null,
|
||||||
|
"combat": null,
|
||||||
|
"seconds": null,
|
||||||
|
"rounds": null,
|
||||||
|
"turns": null,
|
||||||
|
"startRound": null,
|
||||||
|
"startTurn": null
|
||||||
|
},
|
||||||
|
"description": "",
|
||||||
|
"origin": null,
|
||||||
|
"tint": "#ffffff",
|
||||||
|
"transfer": true,
|
||||||
|
"statuses": [],
|
||||||
|
"sort": 0,
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754020727223,
|
||||||
|
"modifiedTime": 1754020782488,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"_key": "!items.effects!JBZJmywisJg5X3tH.RwhxYOAAKKlYZiz0"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"flags": {},
|
||||||
|
"_stats": {
|
||||||
|
"compendiumSource": null,
|
||||||
|
"duplicateSource": null,
|
||||||
|
"exportSource": null,
|
||||||
|
"coreVersion": "13.346",
|
||||||
|
"systemId": "daggerheart",
|
||||||
|
"systemVersion": "0.0.1",
|
||||||
|
"createdTime": 1754010247432,
|
||||||
|
"modifiedTime": 1754010247432,
|
||||||
|
"lastModifiedBy": "Q9NoTaEarn3VMS6Z"
|
||||||
|
},
|
||||||
|
"sort": 0,
|
||||||
|
"ownership": {
|
||||||
|
"default": 0,
|
||||||
|
"Q9NoTaEarn3VMS6Z": 3
|
||||||
|
},
|
||||||
|
"_key": "!items!JBZJmywisJg5X3tH"
|
||||||
|
}
|
||||||
|
|
@ -15,31 +15,24 @@ Parameters:
|
||||||
- showActions {boolean} : If true show feature's actions.
|
- showActions {boolean} : If true show feature's actions.
|
||||||
--}}
|
--}}
|
||||||
|
|
||||||
<li class="inventory-item" data-item-id="{{item.id}}" {{#if (or (eq type 'action' ) (eq type 'attack'))}} data-action-id="{{item.id}}" {{/if}}
|
<li class="inventory-item" data-item-id="{{item.id}}" {{#if (or (eq type 'action' ) (eq type 'attack' ))}}
|
||||||
data-item-uuid="{{item.uuid}}" data-type="{{type}}" data-no-compendium-edit="{{noCompendiumEdit}}" draggable="true">
|
data-action-id="{{item.id}}" {{/if}} data-item-uuid="{{item.uuid}}" data-type="{{type}}" data-no-compendium-edit="{{noCompendiumEdit}}" draggable="true">
|
||||||
<div class="inventory-item-header" {{#unless noExtensible}}data-action="toggleExtended" {{/unless}}>
|
<div class="inventory-item-header" {{#unless noExtensible}}data-action="toggleExtended" {{/unless}}>
|
||||||
{{!-- Image --}}
|
{{!-- Image --}}
|
||||||
<div class="img-portait"
|
<div class="img-portait" data-action='{{ifThen (or (hasProperty item "use") (eq type ' attack')) "useItem" (ifThen
|
||||||
data-action='{{ifThen (or (hasProperty item "use") (eq type 'attack')) "useItem" (ifThen (hasProperty item "toChat") "toChat" "editDoc") }}'
|
(hasProperty item "toChat" ) "toChat" "editDoc" ) }}' {{#unless hideTooltip}} {{#if (eq type 'attack' )}}
|
||||||
{{#unless hideTooltip}}
|
data-tooltip="#attack#{{item.actor.uuid}}" {{else}} data-tooltip="#item#{{item.uuid}}" {{/if}} {{/unless}}>
|
||||||
{{#if (eq type 'attack')}}
|
|
||||||
data-tooltip="#attack#{{item.actor.uuid}}"
|
|
||||||
{{else}}
|
|
||||||
data-tooltip="#item#{{item.uuid}}"
|
|
||||||
{{/if}}
|
|
||||||
{{/unless}}
|
|
||||||
>
|
|
||||||
<img src="{{item.img}}" class="item-img {{#if isActor}}actor-img{{/if}}" />
|
<img src="{{item.img}}" class="item-img {{#if isActor}}actor-img{{/if}}" />
|
||||||
<img class="roll-img" src="systems/daggerheart/assets/icons/dice/default/d20.svg" alt="d20">
|
<img class="roll-img" src="systems/daggerheart/assets/icons/dice/default/d20.svg" alt="d20">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{!-- Name & Tags --}}
|
{{!-- Name & Tags --}}
|
||||||
<div class="item-label {{#if hideResources}}fullWidth{{/if}}">
|
<div class="item-label">
|
||||||
|
|
||||||
{{!-- Item Name --}}
|
{{!-- Item Name --}}
|
||||||
<div class="item-name">{{localize item.name}}</div>
|
<div class="item-name">{{localize item.name}}</div>
|
||||||
|
|
||||||
{{!-- Attack Block Start --}}
|
{{!-- Attack Tags Start --}}
|
||||||
{{#if (eq type 'attack')}}
|
{{#if (eq type 'attack')}}
|
||||||
<div class="item-tags">
|
<div class="item-tags">
|
||||||
<div class="tag">
|
<div class="tag">
|
||||||
|
|
@ -49,135 +42,36 @@ Parameters:
|
||||||
{{localize 'DAGGERHEART.CONFIG.ActionType.action'}}
|
{{localize 'DAGGERHEART.CONFIG.ActionType.action'}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{{/if}}
|
{{!-- Attack Tags End --}}
|
||||||
{{!-- Attack Block End --}}
|
|
||||||
|
|
||||||
{{!-- Weapon Block Start --}}
|
|
||||||
{{#if (eq type 'weapon')}}
|
|
||||||
{{#if (not hideTags)}}
|
|
||||||
<div class="item-tags">
|
|
||||||
<div class="tag">
|
|
||||||
{{localize (concat 'DAGGERHEART.CONFIG.Traits.' item.system.attack.roll.trait '.name')}}
|
|
||||||
</div>
|
|
||||||
<div class="tag">
|
|
||||||
{{localize (concat 'DAGGERHEART.CONFIG.Range.' item.system.attack.range '.name')}}
|
|
||||||
</div>
|
|
||||||
<div class="tag">
|
|
||||||
{{item.system.attack.damage.parts.0.value.dice}}
|
|
||||||
{{#if item.system.attack.damage.parts.0.value.bonus}} +
|
|
||||||
{{item.system.attack.damage.parts.0.value.bonus}}{{/if}}
|
|
||||||
(
|
|
||||||
{{#each item.system.attack.damage.parts.0.type as |type|}}
|
|
||||||
|
|
||||||
{{localize (concat 'DAGGERHEART.CONFIG.DamageType.' type '.abbreviation')}}
|
|
||||||
{{#unless @last}}|{{/unless}}
|
|
||||||
{{/each}}
|
|
||||||
)
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="tag">
|
|
||||||
{{localize (concat 'DAGGERHEART.CONFIG.Burden.' item.system.burden)}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{{else if (not hideLabels)}}
|
|
||||||
<div class="item-labels">
|
|
||||||
<div class="label">
|
|
||||||
{{localize (concat 'DAGGERHEART.CONFIG.Traits.' item.system.attack.roll.trait '.short')}}
|
|
||||||
{{localize (concat 'DAGGERHEART.CONFIG.Range.' item.system.attack.range '.short')}}
|
|
||||||
<span> - </span>
|
|
||||||
{{item.system.attack.damage.parts.0.value.dice}}
|
|
||||||
{{#if item.system.attack.damage.parts.0.value.bonus}} +
|
|
||||||
{{item.system.attack.damage.parts.0.value.bonus}}
|
|
||||||
{{/if}}
|
|
||||||
{{#with (lookup @root.config.GENERAL.damageTypes item.system.attack.damage.parts.0.type)}}
|
|
||||||
{{#each icon}}<i class="fa-solid {{this}}"></i>{{/each}}
|
|
||||||
{{/with}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{{/if}}
|
|
||||||
{{/if}}
|
|
||||||
{{!-- Weapon Block End --}}
|
|
||||||
|
|
||||||
{{!-- Armor Block Start --}}
|
|
||||||
{{#if (eq type 'armor')}}
|
|
||||||
{{#if (not hideTags)}}
|
|
||||||
<div class="item-tags">
|
|
||||||
<div class="tag">{{localize "DAGGERHEART.ITEMS.Armor.baseScore"}}: {{item.system.baseScore}}</div>
|
|
||||||
<div class="tag">
|
|
||||||
{{localize "DAGGERHEART.ITEMS.Armor.baseThresholds.base"}}:
|
|
||||||
{{item.system.baseThresholds.major}} / {{item.system.baseThresholds.severe}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{{else if (not hideLabels)}}
|
|
||||||
<div class="item-labels">
|
|
||||||
<div class="label">
|
|
||||||
{{localize "DAGGERHEART.ITEMS.Armor.baseScore"}}: {{item.system.baseScore}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{{/if}}
|
|
||||||
{{/if}}
|
|
||||||
{{!-- Armor Block End --}}
|
|
||||||
|
|
||||||
{{!-- Domain Card Block Start --}}
|
|
||||||
{{#if (eq type 'domainCard')}}
|
|
||||||
{{#if (not hideTags)}}
|
|
||||||
<div class="item-tags">
|
|
||||||
<div class="tag">{{localize (concat 'DAGGERHEART.CONFIG.DomainCardTypes.' item.system.type)}}</div>
|
|
||||||
<div class="tag">{{localize (concat 'DAGGERHEART.GENERAL.Domain.' item.system.domain '.label')}}</div>
|
|
||||||
<div class="tag">
|
|
||||||
<span class="recall-label">{{localize "DAGGERHEART.ITEMS.DomainCard.recallCost"}}: </span>
|
|
||||||
<span class="recall-value">{{item.system.recallCost}}</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{{else if (not hideLabels)}}
|
|
||||||
<div class="item-labels">
|
|
||||||
<div class="label">
|
|
||||||
{{localize (concat 'DAGGERHEART.CONFIG.DomainCardTypes.' item.system.type)}} -
|
|
||||||
{{localize (concat 'DAGGERHEART.GENERAL.Domain.' item.system.domain '.label')}} -
|
|
||||||
<span class="recall-value">{{item.system.recallCost}}</span>
|
|
||||||
<i class="fa-solid fa-bolt"></i>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{{/if}}
|
|
||||||
{{/if}}
|
|
||||||
{{!-- Domain Card Block End --}}
|
|
||||||
|
|
||||||
{{!-- Effect Block Start --}}
|
|
||||||
{{#if (eq type 'effect')}}
|
|
||||||
{{#if (not hideTags)}}
|
|
||||||
<div class="item-tags">
|
|
||||||
<div class="tag">
|
|
||||||
{{localize item.parent.system.metadata.label}}: {{item.parent.name}}
|
|
||||||
</div>
|
|
||||||
<div class="tag">
|
|
||||||
{{#if item.duration.duration}}
|
|
||||||
{{localize 'DAGGERHEART.EFFECTS.Duration.temporary'}}
|
|
||||||
{{else}}
|
{{else}}
|
||||||
{{localize 'DAGGERHEART.EFFECTS.Duration.passive'}}
|
{{!-- Other elements Tags Start --}}
|
||||||
{{/if}}
|
{{#with item}}
|
||||||
|
{{#if (not ../hideTags)}}
|
||||||
|
<div class="item-tags">
|
||||||
|
{{#each this._getTags as |tag|}}
|
||||||
|
<div class="tag">
|
||||||
|
{{tag}}
|
||||||
</div>
|
</div>
|
||||||
{{#each item.localizedStatuses as |status|}}
|
|
||||||
<div class="tag">{{status.name}}</div>
|
|
||||||
{{/each}}
|
{{/each}}
|
||||||
</div>
|
</div>
|
||||||
{{else if (not hideLabels)}}
|
{{else if (not ../hideLabels)}}
|
||||||
{{!-- Empty --}}
|
<div class="item-lables">
|
||||||
|
<div class="label">
|
||||||
|
{{#each this._getLabels as |label|}}
|
||||||
|
{{ifThen label.value label.value label}}
|
||||||
|
{{#each label.icons as |icon|}}
|
||||||
|
<i class="fa-solid {{icon}}"></i>
|
||||||
|
{{/each}}
|
||||||
|
{{#if (not @last)}}
|
||||||
|
<span>-</span>
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{/if}}
|
{{/each}}
|
||||||
{{!-- Effect Block End --}}
|
</div>
|
||||||
|
|
||||||
{{!-- Action Block Start --}}
|
|
||||||
{{#if (eq type 'action')}}
|
|
||||||
{{#if (not hideTags)}}
|
|
||||||
<div class="item-tags">
|
|
||||||
<div class="tag">{{localize (concat 'DAGGERHEART.ACTIONS.TYPES.' item.type '.name')}}</div>
|
|
||||||
<div class="tag">{{localize (concat 'DAGGERHEART.CONFIG.ActionType.' item.actionType)}}</div>
|
|
||||||
</div>
|
</div>
|
||||||
{{else if (not hideLabels)}}
|
|
||||||
{{!-- Empty --}}
|
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
{{/with}}
|
||||||
{{/if}}
|
{{/if}}
|
||||||
{{!-- Action Block End --}}
|
{{!-- Other elements Tags End --}}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{!-- Simple Resource --}}
|
{{!-- Simple Resource --}}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue