Compare commits

...

6 commits

Author SHA1 Message Date
WBHarry
26ae17c3cf Fixed SRD armor effects 2026-02-11 11:04:40 +01:00
WBHarry
49e834062b Fixed ArmorEffect max being a string 2026-02-11 10:22:24 +01:00
WBHarry
b0f8442aaa . 2026-02-11 09:45:34 +01:00
WBHarry
09ef7fa96f . 2026-02-11 01:43:30 +01:00
WBHarry
c2c2050009 Actions now use createDialog for effects 2026-02-11 00:27:14 +01:00
WBHarry
653492c735 Updated itemconfig 2026-02-10 22:47:55 +01:00
50 changed files with 400 additions and 357 deletions

View file

@ -2980,7 +2980,8 @@
"domainTouchRequirement": "This domain card requires {nr} {domain} cards in the loadout to be used", "domainTouchRequirement": "This domain card requires {nr} {domain} cards in the loadout to be used",
"knowTheTide": "Know The Tide gained a token", "knowTheTide": "Know The Tide gained a token",
"cannotAlterArmorEffectChanges": "You cannot alter the changes length of an armor effect", "cannotAlterArmorEffectChanges": "You cannot alter the changes length of an armor effect",
"cannotAlterArmorEffectType": "You cannot alter the type of armor effect changes" "cannotAlterArmorEffectType": "You cannot alter the type of armor effect changes",
"cannotAlterArmorEffectKey": "You cannot alter they key of armor effect changes"
}, },
"Progress": { "Progress": {
"migrationLabel": "Performing system migration. Please wait and do not close Foundry." "migrationLabel": "Performing system migration. Please wait and do not close Foundry."

View file

@ -173,7 +173,7 @@ export default class DamageReductionDialog extends HandlebarsApplicationMixin(Ap
? Object.values(this.availableStressReductions).filter(red => red.selected) ? Object.values(this.availableStressReductions).filter(red => red.selected)
: []; : [];
const currentMarks = const currentMarks =
this.actor.system.armor.system.marks.value + selectedArmorMarks.length + selectedStressMarks.length; this.actor.system.armorScore.value + selectedArmorMarks.length + selectedStressMarks.length;
const armorMarkReduction = const armorMarkReduction =
selectedArmorMarks.length * this.actor.system.rules.damageReduction.increasePerArmorMark; selectedArmorMarks.length * this.actor.system.rules.damageReduction.increasePerArmorMark;

View file

@ -24,9 +24,12 @@ export default class DHActionConfig extends DHActionBaseConfig {
const effectData = this._addEffectData.bind(this)(); const effectData = this._addEffectData.bind(this)();
const data = this.action.toObject(); const data = this.action.toObject();
const [created] = await this.action.item.createEmbeddedDocuments('ActiveEffect', [effectData], { const created = await game.system.api.documents.DhActiveEffect.createDialog(effectData, {
parent: this.action.item,
render: false render: false
}); });
if (!created) return;
data.effects.push({ _id: created._id }); data.effects.push({ _id: created._id });
this.constructor.updateForm.bind(this)(null, null, { object: foundry.utils.flattenObject(data) }); this.constructor.updateForm.bind(this)(null, null, { object: foundry.utils.flattenObject(data) });
this.action.item.effects.get(created._id).sheet.render(true); this.action.item.effects.get(created._id).sheet.render(true);

View file

@ -511,7 +511,7 @@ export default function DHApplicationMixin(Base) {
icon: 'fa-solid fa-trash', icon: 'fa-solid fa-trash',
condition: target => { condition: target => {
const doc = getDocFromElementSync(target); const doc = getDocFromElementSync(target);
return doc && doc.type !== 'beastform'; return !doc || doc.type !== 'beastform';
}, },
callback: async (target, event) => { callback: async (target, event) => {
const doc = await getDocFromElement(target); const doc = await getDocFromElement(target);

View file

@ -491,17 +491,24 @@ export const weaponFeatures = {
description: 'DAGGERHEART.CONFIG.WeaponFeature.barrier.effects.barrier.description', description: 'DAGGERHEART.CONFIG.WeaponFeature.barrier.effects.barrier.description',
img: 'icons/skills/melee/shield-block-bash-blue.webp', img: 'icons/skills/melee/shield-block-bash-blue.webp',
changes: [ changes: [
{
key: 'system.armorScore',
mode: 2,
value: 'ITEM.@system.tier + 1'
},
{ {
key: 'system.evasion', key: 'system.evasion',
mode: 2, mode: 2,
value: '-1' value: '-1'
} }
] ]
},
{
type: 'armor',
name: 'DAGGERHEART.CONFIG.WeaponFeature.barrier.effects.barrier.name',
description: 'DAGGERHEART.CONFIG.WeaponFeature.barrier.effects.barrier.description',
img: 'icons/skills/melee/shield-block-bash-blue.webp',
changes: [
{
type: 'armor',
max: 'ITEM.@system.tier + 1'
}
]
} }
] ]
}, },
@ -791,11 +798,6 @@ export const weaponFeatures = {
description: 'DAGGERHEART.CONFIG.WeaponFeature.doubleDuty.effects.doubleDuty.description', description: 'DAGGERHEART.CONFIG.WeaponFeature.doubleDuty.effects.doubleDuty.description',
img: 'icons/skills/melee/sword-shield-stylized-white.webp', img: 'icons/skills/melee/sword-shield-stylized-white.webp',
changes: [ changes: [
{
key: 'system.armorScore',
mode: 2,
value: '1'
},
{ {
key: 'system.bonuses.damage.primaryWeapon.bonus', key: 'system.bonuses.damage.primaryWeapon.bonus',
mode: 2, mode: 2,
@ -810,6 +812,26 @@ export const weaponFeatures = {
type: 'withinRange' type: 'withinRange'
} }
} }
},
{
type: 'armor',
name: 'DAGGERHEART.CONFIG.WeaponFeature.doubleDuty.effects.doubleDuty.name',
description: 'DAGGERHEART.CONFIG.WeaponFeature.doubleDuty.effects.doubleDuty.description',
img: 'icons/skills/melee/sword-shield-stylized-white.webp',
changes: [
{
type: 'armor',
max: 1
}
],
system: {
rangeDependence: {
enabled: true,
range: 'melee',
target: 'hostile',
type: 'withinRange'
}
}
} }
] ]
}, },
@ -1188,14 +1210,14 @@ export const weaponFeatures = {
description: 'DAGGERHEART.CONFIG.WeaponFeature.protective.description', description: 'DAGGERHEART.CONFIG.WeaponFeature.protective.description',
effects: [ effects: [
{ {
type: 'armor',
name: 'DAGGERHEART.CONFIG.WeaponFeature.protective.effects.protective.name', name: 'DAGGERHEART.CONFIG.WeaponFeature.protective.effects.protective.name',
description: 'DAGGERHEART.CONFIG.WeaponFeature.protective.effects.protective.description', description: 'DAGGERHEART.CONFIG.WeaponFeature.protective.effects.protective.description',
img: 'icons/skills/melee/shield-block-gray-orange.webp', img: 'icons/skills/melee/shield-block-gray-orange.webp',
changes: [ changes: [
{ {
key: 'system.armorScore', type: 'armor',
mode: 2, max: 'ITEM.@system.tier'
value: 'ITEM.@system.tier'
} }
] ]
} }

View file

@ -1,4 +1,4 @@
import { getScrollTextData } from '../../helpers/utils.mjs'; import { getScrollTextData, itemAbleRollParse } from '../../helpers/utils.mjs';
/** /**
* ArmorEffects are ActiveEffects that have a static changes field of length 1. It includes current and maximum armor. * ArmorEffects are ActiveEffects that have a static changes field of length 1. It includes current and maximum armor.
@ -12,6 +12,11 @@ export default class ArmorEffect extends foundry.data.ActiveEffectTypeDataModel
...super.defineSchema(), ...super.defineSchema(),
changes: new fields.ArrayField( changes: new fields.ArrayField(
new fields.SchemaField({ new fields.SchemaField({
key: new fields.StringField({
required: true,
nullable: false,
initial: 'system.armorScore'
}),
type: new fields.StringField({ type: new fields.StringField({
required: true, required: true,
blank: false, blank: false,
@ -27,22 +32,22 @@ export default class ArmorEffect extends foundry.data.ActiveEffectTypeDataModel
min: 0, min: 0,
label: 'DAGGERHEART.GENERAL.value' label: 'DAGGERHEART.GENERAL.value'
}), }),
max: new fields.NumberField({ max: new fields.StringField({
required: true, required: true,
integer: true, nullable: false,
initial: 1, initial: '1',
min: 1,
label: 'DAGGERHEART.GENERAL.max' label: 'DAGGERHEART.GENERAL.max'
}) })
}), }),
{ {
initial: [ initial: [
{ {
key: 'system.armorScore',
type: CONFIG.DH.GENERAL.activeEffectModes.armor.id, type: CONFIG.DH.GENERAL.activeEffectModes.armor.id,
phase: 'initial', phase: 'initial',
priority: 20, priority: 20,
value: 0, value: 0,
max: 1 max: '1'
} }
] ]
} }
@ -99,7 +104,17 @@ export default class ArmorEffect extends foundry.data.ActiveEffectTypeDataModel
get armorChange() { get armorChange() {
if (this.changes.length !== 1) if (this.changes.length !== 1)
throw new Error('Unexpected error. An armor effect should have a changes field of length 1.'); throw new Error('Unexpected error. An armor effect should have a changes field of length 1.');
return this.changes[0];
const actor = this.parent.actor?.type === 'character' ? this.parent.actor : null;
const changeData = this.changes[0];
const maxParse = actor ? itemAbleRollParse(changeData.max, actor, this.parent.parent) : null;
const maxRoll = maxParse ? new Roll(maxParse).evaluateSync() : null;
const maxEvaluated = maxRoll ? (maxRoll.isDeterministic ? maxRoll.total : null) : null;
return {
...changeData,
max: maxEvaluated ?? changeData.max
};
} }
get armorData() { get armorData() {
@ -121,40 +136,39 @@ export default class ArmorEffect extends foundry.data.ActiveEffectTypeDataModel
static orderEffectsForAutoChange(armorEffects, increasing) { static orderEffectsForAutoChange(armorEffects, increasing) {
const getEffectWeight = effect => { const getEffectWeight = effect => {
switch (effect.parent.type) { switch (effect.parent.type) {
case 'loot':
case 'consumable':
return 2;
case 'class': case 'class':
case 'subclass': case 'subclass':
case 'ancestry': case 'ancestry':
case 'community': case 'community':
case 'feature': case 'feature':
case 'domainCard': case 'domainCard':
return 3; return 2;
case 'weapon':
case 'armor': case 'armor':
return 3;
case 'loot':
case 'consumable':
return 4; return 4;
case 'character': case 'weapon':
return 5; return 5;
case 'character':
return 6;
default: default:
return 1; return 1;
} }
}; };
return armorEffects.sort((a, b) => return armorEffects
.filter(x => !x.disabled && !x.isSuppressed)
.sort((a, b) =>
increasing ? getEffectWeight(b) - getEffectWeight(a) : getEffectWeight(a) - getEffectWeight(b) increasing ? getEffectWeight(b) - getEffectWeight(a) : getEffectWeight(a) - getEffectWeight(b)
); );
} }
/* Overrides */ /* Overrides */
prepareBaseData() {
const armorChange = this.armorChange;
armorChange.key = 'system.armorScore';
}
static getDefaultObject() { static getDefaultObject() {
return { return {
key: 'system.armorScore',
type: 'armor', type: 'armor',
name: game.i18n.localize('DAGGERHEART.EFFECTS.Armor.newArmorEffect'), name: game.i18n.localize('DAGGERHEART.EFFECTS.Armor.newArmorEffect'),
img: 'icons/equipment/chest/breastplate-helmet-metal.webp' img: 'icons/equipment/chest/breastplate-helmet-metal.webp'
@ -174,21 +188,32 @@ export default class ArmorEffect extends foundry.data.ActiveEffectTypeDataModel
return false; return false;
} }
if ( if (changes.system.changes.length === 1) {
changes.system.changes.length === 1 && if (changes.system.changes[0].type !== CONFIG.DH.GENERAL.activeEffectModes.armor.id) {
changes.system.changes[0].type !== CONFIG.DH.GENERAL.activeEffectModes.armor.id ui.notifications.error(
) { game.i18n.localize('DAGGERHEART.UI.Notifications.cannotAlterArmorEffectType')
ui.notifications.error(game.i18n.localize('DAGGERHEART.UI.Notifications.cannotAlterArmorEffectType')); );
return false; return false;
} }
if (changes.system.changes[0].value !== this.armorChange.value && this.parent.actor?.type === 'character') { if (changes.system.changes[0].key !== 'system.armorScore') {
ui.notifications.error(
game.i18n.localize('DAGGERHEART.UI.Notifications.cannotAlterArmorEffectKey')
);
return false;
}
if (
changes.system.changes[0].value !== this.armorChange.value &&
this.parent.actor?.type === 'character'
) {
const increased = changes.system.changes[0].value > this.armorChange.value; const increased = changes.system.changes[0].value > this.armorChange.value;
const value = -1 * (this.armorChange.value - changes.system.changes[0].value); const value = -1 * (this.armorChange.value - changes.system.changes[0].value);
options.scrollingTextData = [getScrollTextData(increased, value, 'armor')]; options.scrollingTextData = [getScrollTextData(increased, value, 'armor')];
} }
} }
} }
}
_onUpdate(changes, options, userId) { _onUpdate(changes, options, userId) {
super._onUpdate(changes, options, userId); super._onUpdate(changes, options, userId);

View file

@ -993,4 +993,8 @@ export default class DhpActor extends Actor {
} }
} }
} }
applyActiveEffects(phase) {
super.applyActiveEffects(phase);
}
} }

View file

@ -233,7 +233,7 @@ export default class DHItem extends foundry.documents.Item {
/** @inheritDoc */ /** @inheritDoc */
static migrateData(source) { static migrateData(source) {
const documentClass = game.system.api.data.items[`DH${source.type.capitalize()}`]; const documentClass = game.system.api.data.items[`DH${source.type?.capitalize()}`];
if (documentClass?.migrateDocumentData) { if (documentClass?.migrateDocumentData) {
documentClass.migrateDocumentData(source); documentClass.migrateDocumentData(source);
} }

View file

@ -313,7 +313,7 @@ export async function runMigrations() {
phase: 'initial', phase: 'initial',
priority: 20, priority: 20,
value: 0, value: 0,
max: migrationArmorScore max: migrationArmorScore.toString()
} }
] ]
} }

View file

@ -90,46 +90,42 @@
"effects": [ "effects": [
{ {
"name": "Armorer", "name": "Armorer",
"type": "base", "type": "armor",
"system": { "system": {
"rangeDependence": {
"enabled": false,
"type": "withinRange",
"target": "hostile",
"range": "melee"
}
},
"_id": "cED730OjuMW5haJR",
"img": "icons/tools/hand/hammer-and-nail.webp",
"changes": [ "changes": [
{ {
"key": "system.armorScore", "key": "system.armorScore",
"mode": 2, "type": "armor",
"value": "1", "phase": "initial",
"priority": null "priority": 20,
"value": 0,
"max": "1"
} }
], ]
"disabled": false,
"duration": {
"startTime": null,
"combat": null,
"seconds": null,
"rounds": null,
"turns": null,
"startRound": null,
"startTurn": null
}, },
"description": "<p><span style=\"color:rgb(239, 230, 216);font-family:Montserrat, sans-serif;font-size:14px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;orphans:2;text-align:start;text-indent:0px;text-transform:none;widows:2;word-spacing:0px;-webkit-text-stroke-width:0px;white-space:normal;background-color:rgba(24, 22, 46, 0.376);text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;display:inline !important;float:none\">While youre wearing armor, gain a +1 bonus to your </span><span class=\"tooltip-convert\" style=\"box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgb(93, 20, 43) rgba(0, 0, 0, 0);color:rgb(239, 230, 216);font-family:Montserrat, sans-serif;font-size:14px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;orphans:2;text-align:start;text-indent:0px;text-transform:none;widows:2;word-spacing:0px;-webkit-text-stroke-width:0px;white-space:normal;background-color:rgba(24, 22, 46, 0.376);text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial\">Armor Score</span><span style=\"color:rgb(239, 230, 216);font-family:Montserrat, sans-serif;font-size:14px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;orphans:2;text-align:start;text-indent:0px;text-transform:none;widows:2;word-spacing:0px;-webkit-text-stroke-width:0px;white-space:normal;background-color:rgba(24, 22, 46, 0.376);text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;display:inline !important;float:none\">.</p>", "_id": "PczrmraHWZ54NJsW",
"img": "icons/tools/hand/hammer-and-nail.webp",
"disabled": false,
"start": null,
"duration": {
"value": null,
"units": "seconds",
"expiry": null,
"expired": false
},
"description": "<p><span style=\"color:rgb(239, 230, 216);font-family:Montserrat, sans-serif;font-size:14px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;orphans:2;text-align:start;text-indent:0px;text-transform:none;widows:2;word-spacing:0px;-webkit-text-stroke-width:0px;white-space:normal;background-color:rgba(24, 22, 46, 0.376);text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline !important\">While youre wearing armor, gain a +1 bonus to your </span><span style=\"box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgb(93, 20, 43) rgba(0, 0, 0, 0);color:rgb(239, 230, 216);font-family:Montserrat, sans-serif;font-size:14px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;orphans:2;text-align:start;text-indent:0px;text-transform:none;widows:2;word-spacing:0px;-webkit-text-stroke-width:0px;white-space:normal;background-color:rgba(24, 22, 46, 0.376);text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial\" class=\"tooltip-convert\">Armor Score</span><span style=\"color:rgb(239, 230, 216);font-family:Montserrat, sans-serif;font-size:14px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;orphans:2;text-align:start;text-indent:0px;text-transform:none;widows:2;word-spacing:0px;-webkit-text-stroke-width:0px;white-space:normal;background-color:rgba(24, 22, 46, 0.376);text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline !important\">.</span></p>",
"origin": null, "origin": null,
"tint": "#ffffff", "tint": "#ffffff",
"transfer": true, "transfer": true,
"statuses": [], "statuses": [],
"showIcon": 1,
"folder": null,
"sort": 0, "sort": 0,
"flags": {}, "flags": {},
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!cy8GjBPGc9w9RaGO.cED730OjuMW5haJR" "_key": "!items.effects!cy8GjBPGc9w9RaGO.PczrmraHWZ54NJsW"
} }
], ],
"ownership": { "ownership": {

View file

@ -4,7 +4,7 @@
"type": "domainCard", "type": "domainCard",
"folder": "QpOL7jPbMBzH96qR", "folder": "QpOL7jPbMBzH96qR",
"system": { "system": {
"description": "<p class=\"Body-Foundation\">When you choose not to equip armor, you have a base Armor Score of 3 + your Strength and use the following as your base damage thresholds:</p><ul><li class=\"vertical-card-list-found\"><em><strong>Tier 1:</strong></em> 9/19</li><li class=\"vertical-card-list-found\"><em><strong>Tier 2:</strong></em> 11/24</li><li class=\"vertical-card-list-found\"><em><strong>Tier 3:</strong></em> 13/31</li><li class=\"vertical-card-list-found\"><em><strong>Tier 4:</strong></em> 15/38</li></ul><p>Equip the below armor to use Bare Bones.</p><p>@UUID[Compendium.daggerheart.armors.Item.ITAjcigTcUw5pMCN]{Bare Bones}</p>", "description": "<p class=\"Body-Foundation\">When you choose not to equip armor, you have a base Armor Score of 3 + your Strength and use the following as your base damage thresholds:</p><ul><li class=\"vertical-card-list-found\"><p><em><strong>Tier 1:</strong></em> 9/19</p></li><li class=\"vertical-card-list-found\"><p><em><strong>Tier 2:</strong></em> 11/24</p></li><li class=\"vertical-card-list-found\"><p><em><strong>Tier 3:</strong></em> 13/31</p></li><li class=\"vertical-card-list-found\"><p><em><strong>Tier 4:</strong></em> 15/38</p></li></ul><p>Equip the below armor to use Bare Bones.</p>",
"domain": "valor", "domain": "valor",
"recallCost": 0, "recallCost": 0,
"level": 1, "level": 1,
@ -19,7 +19,98 @@
} }
}, },
"flags": {}, "flags": {},
"effects": [], "effects": [
{
"name": "Bare Bones Armor",
"type": "armor",
"system": {
"changes": [
{
"value": 0,
"max": "3 + @system.traits.strength.value",
"key": "system.armorScore",
"type": "armor",
"phase": "initial",
"priority": 20
}
]
},
"_id": "Zn1nNUwjlkbRfbMc",
"img": "icons/magic/control/buff-strength-muscle-damage-orange.webp",
"disabled": false,
"start": null,
"duration": {
"value": null,
"units": "seconds",
"expiry": null,
"expired": false
},
"description": "<p><span style=\"color:rgb(239, 230, 216);font-family:Montserrat, sans-serif;font-size:14px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;orphans:2;text-align:start;text-indent:0px;text-transform:none;widows:2;word-spacing:0px;-webkit-text-stroke-width:0px;white-space:normal;background-color:rgba(24, 22, 46, 0.565);text-decoration-thickness:initial;text-decoration-style:initial;text-decoration-color:initial;display:inline !important;float:none\">You have a base Armor Score of 3 + your Strength</span></p>",
"origin": null,
"tint": "#ffffff",
"transfer": true,
"statuses": [],
"showIcon": 1,
"folder": null,
"sort": 0,
"flags": {},
"_stats": {
"compendiumSource": null
},
"_key": "!items.effects!l5D9kq901JDESaXw.Zn1nNUwjlkbRfbMc"
},
{
"name": "Bare Bones",
"type": "base",
"system": {
"changes": [
{
"key": "system.damageThresholds.major",
"type": "add",
"value": "9 + (@tier - 1) * 5 + max(0, (@tier -2) * 2 )",
"priority": null,
"phase": "initial"
},
{
"key": "system.damageThresholds.severe",
"type": "add",
"value": "19 + (@tier - 1) * 5 + max(0, (@tier -2) * 2 )",
"priority": null,
"phase": "initial"
}
],
"rangeDependence": {
"enabled": false,
"type": "withinRange",
"target": "hostile",
"range": "melee"
}
},
"_id": "FazU8RFjMmTpXs7Z",
"img": "icons/magic/control/buff-strength-muscle-damage-orange.webp",
"disabled": false,
"start": null,
"duration": {
"value": null,
"units": "seconds",
"expiry": null,
"expired": false
},
"description": "<p>You use the following as your base damage thresholds:</p><ul><li class=\"vertical-card-list-found\"><p><em><strong>Tier 1:</strong></em> 9/19</p></li><li class=\"vertical-card-list-found\"><p><em><strong>Tier 2:</strong></em> 11/24</p></li><li class=\"vertical-card-list-found\"><p><em><strong>Tier 3:</strong></em> 13/31</p></li><li class=\"vertical-card-list-found\"><p><em><strong>Tier 4:</strong></em> 15/38</p></li></ul>",
"origin": null,
"tint": "#ffffff",
"transfer": true,
"statuses": [],
"showIcon": 1,
"folder": null,
"sort": 0,
"flags": {},
"_stats": {
"compendiumSource": null
},
"_key": "!items.effects!l5D9kq901JDESaXw.FazU8RFjMmTpXs7Z"
}
],
"ownership": { "ownership": {
"default": 0, "default": 0,
"MQSznptE5yLT7kj8": 3 "MQSznptE5yLT7kj8": 3

View file

@ -105,7 +105,7 @@
}, },
"effects": [ "effects": [
{ {
"_id": "LdcT1nrkd5ORCU4n", "_id": "OKf8Kjr6Px8A3ubJ",
"onSave": false "onSave": false
} }
], ],
@ -252,43 +252,39 @@
"img": "icons/magic/defensive/shield-barrier-glowing-triangle-blue.webp", "img": "icons/magic/defensive/shield-barrier-glowing-triangle-blue.webp",
"origin": "Compendium.daggerheart.domains.Item.YtZzYBtR0yLPPA93", "origin": "Compendium.daggerheart.domains.Item.YtZzYBtR0yLPPA93",
"transfer": false, "transfer": false,
"_id": "LdcT1nrkd5ORCU4n", "type": "armor",
"type": "base", "_id": "OKf8Kjr6Px8A3ubJ",
"system": { "system": {
"rangeDependence": {
"enabled": false,
"type": "withinRange",
"target": "hostile",
"range": "melee"
}
},
"changes": [ "changes": [
{ {
"key": "system.armorScore", "key": "system.armorScore",
"mode": 2, "type": "armor",
"value": "1", "phase": "initial",
"priority": null "priority": 20,
"value": 0,
"max": "1"
} }
], ]
"disabled": false,
"duration": {
"startTime": null,
"combat": null,
"seconds": null,
"rounds": null,
"turns": null,
"startRound": null,
"startTurn": null
}, },
"description": "<p>+1 bonus to your Armor Score until your next rest, or the caster cast's Tavas Armor again.</p>", "disabled": false,
"start": null,
"duration": {
"value": null,
"units": "seconds",
"expiry": null,
"expired": false
},
"description": "<p><strong>Spend a Hope</strong> to give a target you can touch a +1 bonus to their Armor Score until their next rest or you cast Tavas Armor again.</p>",
"tint": "#ffffff", "tint": "#ffffff",
"statuses": [], "statuses": [],
"showIcon": 1,
"folder": null,
"sort": 0, "sort": 0,
"flags": {}, "flags": {},
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!YtZzYBtR0yLPPA93.LdcT1nrkd5ORCU4n" "_key": "!items.effects!YtZzYBtR0yLPPA93.OKf8Kjr6Px8A3ubJ"
} }
], ],
"ownership": { "ownership": {

View file

@ -91,46 +91,42 @@
"effects": [ "effects": [
{ {
"name": "Valor-Touched", "name": "Valor-Touched",
"type": "base", "type": "armor",
"system": { "system": {
"rangeDependence": {
"enabled": false,
"type": "withinRange",
"target": "hostile",
"range": "melee"
}
},
"_id": "H9lgIqqp1imSNOv9",
"img": "icons/magic/control/control-influence-rally-purple.webp",
"changes": [ "changes": [
{ {
"key": "system.armorScore", "key": "system.armorScore",
"mode": 2, "type": "armor",
"value": "1", "phase": "initial",
"priority": null "priority": 20,
"value": 0,
"max": "1"
} }
], ]
"disabled": false,
"duration": {
"startTime": null,
"combat": null,
"seconds": null,
"rounds": null,
"turns": null,
"startRound": null,
"startTurn": null
}, },
"description": "<ul><li class=\"vertical-card-list-found\"><p>+1 bonus to your Armor Score</p></li><li class=\"vertical-card-list-found\"><p>When you mark 1 or more Hit Points without marking an Armor Slot, clear an Armor Slot.</p></li></ul>", "_id": "JLw50ONfq1KJh1iM",
"img": "icons/magic/control/control-influence-rally-purple.webp",
"disabled": false,
"start": null,
"duration": {
"value": null,
"units": "seconds",
"expiry": null,
"expired": false
},
"description": "<p>+1 bonus to your Armor Score</p>",
"origin": null, "origin": null,
"tint": "#ffffff", "tint": "#ffffff",
"transfer": true, "transfer": true,
"statuses": [], "statuses": [],
"showIcon": 1,
"folder": null,
"sort": 0, "sort": 0,
"flags": {}, "flags": {},
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!k1AtYd3lSchIymBr.H9lgIqqp1imSNOv9" "_key": "!items.effects!k1AtYd3lSchIymBr.JLw50ONfq1KJh1iM"
} }
], ],
"ownership": { "ownership": {

View file

@ -6,7 +6,7 @@
"sorting": "m", "sorting": "m",
"_id": "TL1TutmbeCVJ06nR", "_id": "TL1TutmbeCVJ06nR",
"description": "", "description": "",
"sort": 900000, "sort": 750000,
"flags": {}, "flags": {},
"_key": "!folders!TL1TutmbeCVJ06nR" "_key": "!folders!TL1TutmbeCVJ06nR"
} }

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 6 "max": "6",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "I0649iXfgoME38fU", "_id": "xU3zAv0sBiOGAE4i",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!LzLOJ9EVaHWAjoq9.I0649iXfgoME38fU" "_key": "!items.effects!LzLOJ9EVaHWAjoq9.xU3zAv0sBiOGAE4i"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -80,11 +80,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 6 "max": "6",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "kRaWET7LV25rD4jy", "_id": "TMxnzDzCmVibJWQ0",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -105,7 +106,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!crIbCb9NZ4K0VpoU.kRaWET7LV25rD4jy" "_key": "!items.effects!crIbCb9NZ4K0VpoU.TMxnzDzCmVibJWQ0"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 5 "max": "5",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "lJBLFQHDjmgLsLL8", "_id": "HxZEKljAth8b5Wcv",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!epkAmlZVk7HOfUUT.lJBLFQHDjmgLsLL8" "_key": "!items.effects!epkAmlZVk7HOfUUT.HxZEKljAth8b5Wcv"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -37,11 +37,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 5 "max": "5",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "1vzHmkVScl1KyHxy", "_id": "jSGmBv0I5FhxmTen",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -62,7 +63,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!itSOp2GCyem0f7oM.1vzHmkVScl1KyHxy" "_key": "!items.effects!itSOp2GCyem0f7oM.jSGmBv0I5FhxmTen"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -1,113 +0,0 @@
{
"folder": "tI3bfr6Sgi16Z7zm",
"name": "Bare Bones",
"type": "armor",
"_id": "ITAjcigTcUw5pMCN",
"img": "icons/magic/control/buff-strength-muscle-damage.webp",
"system": {
"description": "<p></p><p class=\"Body-Foundation\">When you choose not to equip armor, you have a base Armor Score of 3 + your Strength and use the following as your base damage thresholds:</p><ul><li class=\"vertical-card-list-found\"><em><strong>Tier 1:</strong></em> 9/19</li><li class=\"vertical-card-list-found\"><em><strong>Tier 2:</strong></em> 11/24</li><li class=\"vertical-card-list-found\"><em><strong>Tier 3:</strong></em> 13/31</li><li class=\"vertical-card-list-found\"><em><strong>Tier 4:</strong></em> 15/38</li></ul>",
"actions": {},
"attached": [],
"tier": 1,
"equipped": false,
"baseScore": 3,
"armorFeatures": [],
"marks": {
"value": 0
},
"baseThresholds": {
"major": 9,
"severe": 19
}
},
"effects": [
{
"name": "Bare Bones",
"type": "base",
"system": {
"rangeDependence": {
"enabled": false,
"type": "withinRange",
"target": "hostile",
"range": "melee"
}
},
"_id": "8ze88zUwdkQSKKJq",
"img": "icons/magic/control/buff-strength-muscle-damage.webp",
"changes": [
{
"key": "system.armorScore",
"mode": 2,
"value": "@system.traits.strength.value",
"priority": 21
}
],
"disabled": false,
"duration": {
"startTime": null,
"combat": null,
"seconds": null,
"rounds": null,
"turns": null,
"startRound": null,
"startTurn": null
},
"description": "<p></p><p class=\"Body-Foundation\">When you choose not to equip armor, you have a base Armor Score of 3 + your Strength and use the following as your base damage thresholds:</p><ul><li class=\"vertical-card-list-found\"><em><strong>Tier 1:</strong></em> 9/19</li><li class=\"vertical-card-list-found\"><em><strong>Tier 2:</strong></em> 11/24</li><li class=\"vertical-card-list-found\"><em><strong>Tier 3:</strong></em> 13/31</li><li class=\"vertical-card-list-found\"><em><strong>Tier 4:</strong></em> 15/38</li></ul>",
"origin": null,
"tint": "#ffffff",
"transfer": true,
"statuses": [],
"sort": 0,
"flags": {},
"_stats": {
"compendiumSource": null
},
"_key": "!items.effects!ITAjcigTcUw5pMCN.8ze88zUwdkQSKKJq"
},
{
"type": "armor",
"name": "Armor Effect",
"img": "icons/equipment/chest/breastplate-helmet-metal.webp",
"system": {
"changes": [
{
"type": "armor",
"phase": "initial",
"priority": 20,
"value": 0,
"max": 3
}
]
},
"_id": "B5hlwTWBUSJYZurq",
"disabled": false,
"start": null,
"duration": {
"value": null,
"units": "seconds",
"expiry": null,
"expired": false
},
"description": "",
"origin": null,
"tint": "#ffffff",
"transfer": true,
"statuses": [],
"showIcon": 1,
"folder": null,
"sort": 0,
"flags": {},
"_stats": {
"compendiumSource": null
},
"_key": "!items.effects!ITAjcigTcUw5pMCN.B5hlwTWBUSJYZurq"
}
],
"sort": 0,
"ownership": {
"default": 0,
"MQSznptE5yLT7kj8": 3
},
"flags": {},
"_key": "!items!ITAjcigTcUw5pMCN"
}

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 5 "max": "5",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "lDRMjmZXRJDbhK03", "_id": "34OQBJZZV3d5AN7U",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!WuoVwZA53XRAIt6d.lDRMjmZXRJDbhK03" "_key": "!items.effects!WuoVwZA53XRAIt6d.34OQBJZZV3d5AN7U"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 6 "max": "6",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "qYkj3jKDdFzflfh4", "_id": "6AGrG6Y1wUSY3mg5",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!mNN6pvcsS10ChrWF.qYkj3jKDdFzflfh4" "_key": "!items.effects!mNN6pvcsS10ChrWF.6AGrG6Y1wUSY3mg5"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 4 "max": "4",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "d6ICO5qZArh0xF1y", "_id": "RXsc2d47cauTWTf0",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!haULhuEg37zUUvhb.d6ICO5qZArh0xF1y" "_key": "!items.effects!haULhuEg37zUUvhb.RXsc2d47cauTWTf0"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 5 "max": "5",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "2q3uXc7EbTNSIjs8", "_id": "dKK4sbP3DZQYdmTn",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!vMJxEWz1srfwMsoj.2q3uXc7EbTNSIjs8" "_key": "!items.effects!vMJxEWz1srfwMsoj.dKK4sbP3DZQYdmTn"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -74,11 +74,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 5 "max": "5",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "a8frrkkR4i2TBFdF", "_id": "kNq8nLq1ljLZZGDg",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -99,7 +100,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!mdQ69eFHyAQUDmE7.a8frrkkR4i2TBFdF" "_key": "!items.effects!mdQ69eFHyAQUDmE7.kNq8nLq1ljLZZGDg"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -100,11 +100,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 7 "max": "7",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "a1x2R28RtXE2jqu5", "_id": "sBTZAS0aYcE15RwZ",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -125,7 +126,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!hAY6UgdGT7dj22Pr.a1x2R28RtXE2jqu5" "_key": "!items.effects!hAY6UgdGT7dj22Pr.sBTZAS0aYcE15RwZ"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -76,11 +76,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 4 "max": "4",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "4yImObrCOaWLGxgH", "_id": "uFvhPlk3FVGfQST4",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -101,7 +102,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!Q6LxmtFetDDkoZVZ.4yImObrCOaWLGxgH" "_key": "!items.effects!Q6LxmtFetDDkoZVZ.uFvhPlk3FVGfQST4"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -98,11 +98,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 6 "max": "6",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "8VtWedDMEX0tbqTn", "_id": "Dg8Gx6G3nwAH9wt2",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -123,7 +124,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!bcQUh4QG3qFX0Vx6.8VtWedDMEX0tbqTn" "_key": "!items.effects!bcQUh4QG3qFX0Vx6.Dg8Gx6G3nwAH9wt2"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 4 "max": "4",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "TRI0rfHs8RTSCmuY", "_id": "XPbNhspFyOj8RIQJ",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!7emTSt6nhZuTlvt5.TRI0rfHs8RTSCmuY" "_key": "!items.effects!7emTSt6nhZuTlvt5.XPbNhspFyOj8RIQJ"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -76,15 +76,16 @@
"system": { "system": {
"changes": [ "changes": [
{ {
"key": "system.armorScore",
"type": "armor", "type": "armor",
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 4 "max": "4"
} }
] ]
}, },
"_id": "VpaGM3KSKQFG5wC8", "_id": "zji5nzTC1y8BUWHn",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -105,7 +106,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!UdUJNa31WxFW2noa.VpaGM3KSKQFG5wC8" "_key": "!items.effects!UdUJNa31WxFW2noa.zji5nzTC1y8BUWHn"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 3 "max": "3",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "qNXDdLhZkPe6Wnxa", "_id": "72LkcLIihluGgx48",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!yJFp1bfpecDcStVK.qNXDdLhZkPe6Wnxa" "_key": "!items.effects!yJFp1bfpecDcStVK.72LkcLIihluGgx48"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -91,11 +91,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 4 "max": "4",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "E3Zwl9T3EuK7hOOB", "_id": "GYRwYD3CHW9q4N29",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -116,7 +117,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!dvyQeUVRLc9y6rnt.E3Zwl9T3EuK7hOOB" "_key": "!items.effects!dvyQeUVRLc9y6rnt.GYRwYD3CHW9q4N29"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 5 "max": "5",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "QXvJ3gL1kNcOLaqC", "_id": "2KD6EdRL2L2gQkMR",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!K5WkjS0NGqHYmhU3.QXvJ3gL1kNcOLaqC" "_key": "!items.effects!K5WkjS0NGqHYmhU3.2KD6EdRL2L2gQkMR"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -80,11 +80,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 5 "max": "5",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "7ahyQs2byVwsUVAF", "_id": "ehijWY3PGw1OaQr0",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -105,7 +106,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!9f7RozpPTqrzJS1m.7ahyQs2byVwsUVAF" "_key": "!items.effects!9f7RozpPTqrzJS1m.ehijWY3PGw1OaQr0"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 4 "max": "4",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "uF8AksqGBBfKrrVM", "_id": "d6QRNZ1X4wdoy82q",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!jphnMZjnS2FkOH3s.uF8AksqGBBfKrrVM" "_key": "!items.effects!jphnMZjnS2FkOH3s.d6QRNZ1X4wdoy82q"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -37,11 +37,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 4 "max": "4",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "OqL5x4lkQvjbzSGx", "_id": "lQNHCtW6HnIj0b7F",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -62,7 +63,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!t91M61pSCMKStTNt.OqL5x4lkQvjbzSGx" "_key": "!items.effects!t91M61pSCMKStTNt.lQNHCtW6HnIj0b7F"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -87,11 +87,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 4 "max": "4",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "wKp8iBd3KfaMlzJh", "_id": "jnjdtSTQF1zTSkEr",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -112,7 +113,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!tzZntboNtHL5C6VM.wKp8iBd3KfaMlzJh" "_key": "!items.effects!tzZntboNtHL5C6VM.jnjdtSTQF1zTSkEr"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -37,11 +37,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 3 "max": "3",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "TbWKQ0R6AfNNeqNd", "_id": "bkEJ55HhIYFnX1Tz",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -62,7 +63,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!nibfdNtp2PtxvbVz.TbWKQ0R6AfNNeqNd" "_key": "!items.effects!nibfdNtp2PtxvbVz.bkEJ55HhIYFnX1Tz"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 7 "max": "7",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "QAkiVlwfclxQ6JSD", "_id": "PZsaURELHOaRJK28",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!EsIN5OLKe9ZYFNXZ.QAkiVlwfclxQ6JSD" "_key": "!items.effects!EsIN5OLKe9ZYFNXZ.PZsaURELHOaRJK28"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -80,11 +80,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 7 "max": "7",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "mMYVCcmoBJxjU0er", "_id": "IMPH2qFG7zXaxefg",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -105,7 +106,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!SXWjUR2aUR6bYvdl.mMYVCcmoBJxjU0er" "_key": "!items.effects!SXWjUR2aUR6bYvdl.IMPH2qFG7zXaxefg"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 6 "max": "6",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "vgnBNFSXks1BcFQ5", "_id": "TtMaMntKKpcTU054",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!c6tMXz4rPf9ioQrf.vgnBNFSXks1BcFQ5" "_key": "!items.effects!c6tMXz4rPf9ioQrf.TtMaMntKKpcTU054"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -37,11 +37,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 6 "max": "6",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "m6HRZpgaMnuw1dE7", "_id": "UtbfSKO8hmJanog5",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -62,7 +63,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!Tptgl5WOj76TyFn7.m6HRZpgaMnuw1dE7" "_key": "!items.effects!Tptgl5WOj76TyFn7.UtbfSKO8hmJanog5"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -75,11 +75,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 6 "max": "6",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "aRwIF0ss6R7AYNZf", "_id": "kskfQTQTgCgmQR6b",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -100,7 +101,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!AQzU2RsqS5V5bd1v.aRwIF0ss6R7AYNZf" "_key": "!items.effects!AQzU2RsqS5V5bd1v.kskfQTQTgCgmQR6b"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -67,11 +67,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 5 "max": "5",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "YvXWUYVaXDHugsEr", "_id": "eT5j1FNPPQOdLO2Q",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -92,7 +93,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!tN8kAeBvNKM3EBFo.YvXWUYVaXDHugsEr" "_key": "!items.effects!tN8kAeBvNKM3EBFo.eT5j1FNPPQOdLO2Q"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -74,11 +74,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 6 "max": "6",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "vkJeIaXB25W3MAt1", "_id": "UmpUTOMR2UBmrAu6",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -99,7 +100,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!P4qAEDJUoNLgVRsA.vkJeIaXB25W3MAt1" "_key": "!items.effects!P4qAEDJUoNLgVRsA.UmpUTOMR2UBmrAu6"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -74,11 +74,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 4 "max": "4",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "2dj1LoZcV6tCKpKj", "_id": "s39jgXMmi4fDHuaE",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -99,7 +100,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!tHlBUDQC24YMZqd6.2dj1LoZcV6tCKpKj" "_key": "!items.effects!tHlBUDQC24YMZqd6.s39jgXMmi4fDHuaE"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -105,11 +105,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 8 "max": "8",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "3Kn7ZRjhrw1WfALW", "_id": "SWXFcH4qbmPYI7WH",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -130,7 +131,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!8X16lJQ3xltTwynm.3Kn7ZRjhrw1WfALW" "_key": "!items.effects!8X16lJQ3xltTwynm.SWXFcH4qbmPYI7WH"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -80,11 +80,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 5 "max": "5",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "6YpS3uYWIbeSgreg", "_id": "OtOaxh7BCM2OMOmS",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -105,7 +106,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!QjwsIhXKqnlvRBMv.6YpS3uYWIbeSgreg" "_key": "!items.effects!QjwsIhXKqnlvRBMv.OtOaxh7BCM2OMOmS"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -67,11 +67,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 5 "max": "5",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "tiE0sRrTm2Ex9TAO", "_id": "DgAQc09o3x6zn6DQ",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -92,7 +93,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!PSW3BxCGmtLeWOxM.tiE0sRrTm2Ex9TAO" "_key": "!items.effects!PSW3BxCGmtLeWOxM.DgAQc09o3x6zn6DQ"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -67,11 +67,12 @@
"phase": "initial", "phase": "initial",
"priority": 20, "priority": 20,
"value": 0, "value": 0,
"max": 6 "max": "6",
"key": "system.armorScore"
} }
] ]
}, },
"_id": "fpPIhNaFxaz40Iaj", "_id": "2gMOVh1Hty0nVWy4",
"disabled": false, "disabled": false,
"start": null, "start": null,
"duration": { "duration": {
@ -92,7 +93,7 @@
"_stats": { "_stats": {
"compendiumSource": null "compendiumSource": null
}, },
"_key": "!items.effects!OvzgUTYy2RCN85vV.fpPIhNaFxaz40Iaj" "_key": "!items.effects!OvzgUTYy2RCN85vV.2gMOVh1Hty0nVWy4"
} }
], ],
"sort": 0, "sort": 0,

View file

@ -1,12 +0,0 @@
{
"type": "Item",
"folder": null,
"name": "Special",
"color": null,
"sorting": "a",
"_id": "tI3bfr6Sgi16Z7zm",
"description": "",
"sort": 0,
"flags": {},
"_key": "!folders!tI3bfr6Sgi16Z7zm"
}