From d5754687077bff1d7a7e9e34e8190b97754bc9c3 Mon Sep 17 00:00:00 2001 From: Jamz Date: Wed, 16 Aug 2023 13:00:31 -0500 Subject: [PATCH] Update images references --- packs/shared-items.db | 14 ++++++------- packs/shared-macros.db | 8 ++++---- scripts/damage-dice.js | 38 ++++++++++++++++++------------------ styles/nerps-for-foundry.css | 22 ++++++++++----------- 4 files changed, 41 insertions(+), 41 deletions(-) diff --git a/packs/shared-items.db b/packs/shared-items.db index c494bba..457c89a 100644 --- a/packs/shared-items.db +++ b/packs/shared-items.db @@ -9,7 +9,7 @@ {"name":"Shield of Reckoning","type":"feat","img":"systems/pf2e/icons/features/feats/feats.webp","effects":[],"flags":{"core":{"sourceId":"Compendium.pf2e.feats-srd.VsTmB32x9673ONJ0"},"cf":{"id":"temp_g3ukhcykuuc"}},"system":{"description":{"value":"

Trigger A foe's attack against an ally matches the trigger for both your Shield Block reaction and your champion's reaction

\n
\n

When you shield your ally against an attack, you call upon your power to protect your ally further. You use the Shield Block reaction to prevent damage to an ally and also use your champion's reaction  against the foe that attacked your ally.

\n
\n

Resist all [[ @actor.level + 2 ]] + Shield [[ @actor.heldShield.hardness]] = [[ @actor.level + 2 + @actor.heldShield.hardness]]

\n

@UUID[Compendium.Nerps-For-Foundry.shared-items.coBwxzhmHsv2VKJJ]{Effect: Shield of Reckoning}

"},"source":{"value":"Pathfinder Core Rulebook"},"traits":{"value":["champion","flourish"],"rarity":"common","custom":""},"rules":[],"slug":"shield-of-reckoning","schema":{"version":0.796,"lastMigration":{"datetime":"2022-11-01T12:46:36.263-05:00","version":{"schema":0.794,"foundry":"10.287","system":"4.3.3"}}},"level":{"value":10},"featType":{"value":"class"},"onlyLevel1":false,"maxTakable":1,"actionType":{"value":"reaction"},"actions":{"value":null},"prerequisites":{"value":[{"value":"champion's reaction"},{"value":"divine ally (shield)"},{"value":"tenets of good"},{"value":"Shield Warden"}]},"location":null,"actionCategory":{"value":""}},"ownership":{"default":0,"JYFx5vv700IZgA8Q":3,"bvlTPmzDPuQBXfIC":3},"_stats":{"systemId":"pf2e","systemVersion":"4.4.2","coreVersion":"10.291","createdTime":1668291082907,"modifiedTime":1670628967994,"lastModifiedBy":"gQRfqfwKmTh3Y6Qh"},"folder":null,"sort":0,"_id":"A9DQgL064W0AfgAX"} {"_id":"AoLWmPYrx2dPKkbh","name":"Timer: Breath Weapon Delay","type":"effect","img":"icons/magic/fire/blast-jet-stream-embers-orange.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"test-world","system":"pf2e","coreVersion":"0.7.8","systemVersion":"1.10.17.2355"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"system":{"description":{"value":"

Breath weapon cool down for 1d4 rounds.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.116-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":1,"unit":"rounds","sustained":false,"expiry":"turn-end"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":false},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690775999,"modifiedTime":1663690775999,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"_id":"BFEQNcrrPBXv1dZ3","name":"Timer: Treat Wounds Immunity","type":"effect","img":"icons/magic/time/clock-stopwatch-white-blue.webp","effects":[],"folder":null,"sort":0,"flags":{"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"0.7.9","systemVersion":"1.10.23.2638"},"pdfoundry-pf2e":{"source":""},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"system":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[{"key":"PF2E.RuleElement.TokenEffectIcon"}],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.117-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":1,"unit":"hours","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":false},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776002,"modifiedTime":1663720329956,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} -{"name":"Afflicted","type":"effect","img":"modules/Nerps-For-Foundry/images/rpg-icons/Spells/Spellbook_01_01.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_zrgv45w3ju","path":"Effects#/CF_SEP/Afflictions","color":"#80b701"}},"_id":"BLmhGiIV3AVNyG2s","system":{"description":{"value":"

A simple afflictions tracker, add one copy per stage...

"},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:39.736-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-end"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":{"type":"counter","value":1},"rarity":{"value":"common"},"unidentified":true},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.3.4","coreVersion":"10.288","createdTime":1663690776003,"modifiedTime":1668286571645,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} +{"name":"Afflicted","type":"effect","img":"modules/nerps-for-foundry/images/rpg-icons/Spells/Spellbook_01_01.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_zrgv45w3ju","path":"Effects#/CF_SEP/Afflictions","color":"#80b701"}},"_id":"BLmhGiIV3AVNyG2s","system":{"description":{"value":"

A simple afflictions tracker, add one copy per stage...

"},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:39.736-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-end"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":{"type":"counter","value":1},"rarity":{"value":"common"},"unidentified":true},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.3.4","coreVersion":"10.288","createdTime":1663690776003,"modifiedTime":1668286571645,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"_id":"Bi7KFkOyP49YSQBg","name":"Glimpse of Redemption","type":"action","img":"systems/pf2e/icons/actions/Reaction.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.pf2e.actionspf2e.tuZnRWHixLArvaIf"},"pdfoundry-pf2e":{"source":""},"cf":{"id":"temp_4v7w108pt6","color":"#000000"}},"system":{"description":{"value":"

Trigger An enemy damages your ally, and both are within 15 feet of you

\n
\n

Your foe hesitates under the weight of sin as visions of redemption play in their mind's eye. The foe must choose one of the following options:

\n"},"source":{"value":"Pathfinder Core Rulebook"},"traits":{"value":["champion"],"rarity":"common","custom":""},"rules":[],"slug":"glimpse-of-redemption","schema":{"version":0.713,"lastMigration":{"datetime":"2022-01-15T10:40:42.726-06:00","version":{"schema":0.709,"foundry":"9.242","system":"3.2.0.9965"}}},"actionType":{"value":"reaction"},"actionCategory":{"value":""},"actions":{"value":null},"requirements":{"value":""},"trigger":{"value":""},"deathNote":false,"weapon":{"value":""}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.6.5","coreVersion":"10.291","createdTime":1663690776004,"modifiedTime":1673648683783,"lastModifiedBy":"HtV4112V3gD3WzYc"}} {"_id":"C4vHcv0hnj4GGmjl","name":"Effect: Avenge in Glory","type":"effect","img":"systems/pf2e/icons/features/classes/fervor.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.pf2e.feat-effects.JQUoBlZKT5N5zO5k"},"cf":{"id":"temp_hyhsj2j3bjf","color":"#003beb","path":"Effects"}},"system":{"description":{"value":"

Frequency once per day

\n

Access mountain dwarf ethnicity

\n

Trigger An ally within 30 feet gains the @Compendium[pf2e.conditionitems.yZRUzMqrMmfLu0V1]{Dying} condition.

\n
\n

You honor your ally's life, gaining temporary Hit Points equal to your level for 1 minute. As long as you have these temporary Hit Points, you gain a +1 circumstance bonus to attack and damage rolls.

\n

Implemented Effects:

\n"},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[{"key":"TempHP","value":"@actor.level"},{"key":"FlatModifier","label":"Avenge in Glory","selector":"attack","type":"circumstance","value":1},{"key":"FlatModifier","label":"Avenge in Glory","selector":"damage","type":"circumstance","value":1}],"slug":"effect-avenge-in-glory","schema":{"version":0.713,"lastMigration":null},"level":{"value":1},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null},"ownership":{"default":1,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776006,"modifiedTime":1663690776006,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"#[CF_tempEntity]","type":"action","img":"systems/pf2e/icons/default-icons/action.svg","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_2ufwg27lptk","path":"Custom NPC Abilities","color":"#000000","name":"Custom NPC Abilities","children":[],"folderPath":[],"fontColor":"#FFFFFF","icon":null,"sorting":"a","contents":["Sn0BSki6sipVB6sb","kQv7B0ChPnvpkQ43","1lucqN0VaHctw6Ao","Re8LyOjVg76D3Ks4","mb647P2KrFV5vRJP","o6xUedpgXvlvzsnv"],"version":"2.5.3"}},"_id":"CkY02nezt9ynWz2o","system":{"description":{"value":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":null},"actionType":{"value":""},"actionCategory":{"value":""},"actions":{"value":null},"requirements":{"value":""},"trigger":{"value":""},"deathNote":false},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776007,"modifiedTime":1663719400533,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} @@ -21,7 +21,7 @@ {"_id":"H0R4i2Xkd5kNVtrA","name":"Spell Timer: Vital Beacon","type":"effect","img":"https://assets.forge-vtt.com/bazaar/systems/pf2e/assets/icons/spells/vital-beacon.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.T9R7gRAUMnkyz214"},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"9.242","systemVersion":"3.1.3.9639"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"system":{"description":{"value":""},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[{"key":"GrantItem","uuid":"Compendium.Nerps-For-Foundry.shared-items.SD7G5vfMuWbwcpvp","replaceSelf":true},{"key":"GrantItem","uuid":"Compendium.Nerps-For-Foundry.shared-items.LVMfVysDTulcqQgx"},{"key":"GrantItem","uuid":"Compendium.Nerps-For-Foundry.shared-items.XdnTcC8fUAEqUMKu"},{"key":"GrantItem","uuid":"Compendium.Nerps-For-Foundry.shared-items.z0bROjis6rlmnFRT"}],"slug":null,"schema":{"version":0.713,"lastMigration":{"datetime":"2022-01-17T18:25:52.895-06:00","version":{"schema":0.709,"foundry":"9.242","system":"3.2.1.10003"}}},"level":{"value":1},"duration":{"value":-1,"unit":"unlimited","sustained":false,"expiry":null},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":false},"badge":null,"context":null,"unidentified":false},"ownership":{"default":2,"1QD4XasIOk92SnSV":3,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.6.8","coreVersion":"10.291","createdTime":1663690776023,"modifiedTime":1674236851994,"lastModifiedBy":"WtoVEYSz3jgVEWxB"}} {"_id":"H6Vau3jwkGIkv22N","name":"Spell Effect: Hymn of Healing","type":"effect","img":"systems/pf2e/icons/spells/hymn-of-healing.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"zfI6QzdW83uHAXey"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"0.7.9","systemVersion":"1.10.23.2638"},"core":{"sourceId":"Item.V3MIMgVXzsVQe4y5"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"system":{"description":{"value":"

Your divine singing mends wounds and provides a temporary respite from harm. The target gains fast healing 2. When you Cast the Spell and each time you Sustain the Spell, the target gains 2 temporary Hit Points, which last for 1 round.

\n
\n

Heightened (+1) The fast healing and temporary Hit Points each increase by 2.

\n
\n

Use the macro Toggle Hymn of Healing to apply this effect for fast healing.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[{"key":"TempHP","value":"@item.data.data.level.value * 2"},{"key":"FastHealing","value":"@item.level * 2"}],"slug":null,"schema":{"version":0.709,"lastMigration":{"datetime":"2021-12-29T18:24:29.362-06:00","version":{"schema":0.708,"foundry":"9.238","system":"3.1.3.9635"}}},"level":{"value":5},"duration":{"value":1,"unit":"rounds","sustained":true,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"}},"ownership":{"default":2,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776024,"modifiedTime":1663690776024,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"#[CF_tempEntity]","type":"action","flags":{"cf":{"id":"temp_g3ukhcykuuc","name":"Feats","color":"#7e191c","fontColor":"#FFFFFF","icon":"","sorting":"m","contents":["A9DQgL064W0AfgAX"],"children":[]}},"img":"systems/pf2e/icons/default-icons/action.svg","system":{"description":{"value":""},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[],"slug":null,"schema":{"version":0.802,"lastMigration":{"datetime":"2022-12-09T17:36:01.955-06:00","version":{"schema":null,"foundry":"10.291","system":"4.4.2"}}},"actionType":{"value":""},"actionCategory":{"value":""},"actions":{"value":null},"requirements":{"value":""},"trigger":{"value":""},"deathNote":false},"effects":[],"folder":null,"sort":0,"ownership":{"default":0,"gQRfqfwKmTh3Y6Qh":3},"_stats":{"systemId":"pf2e","systemVersion":"4.4.2","coreVersion":"10.291","createdTime":1670628961958,"modifiedTime":1670628967994,"lastModifiedBy":"gQRfqfwKmTh3Y6Qh"},"_id":"Hgy387cs51vAwz2z"} -{"_id":"Hx9mxiqblEAM3SjH","name":"Spell Effect: Repulsion (Critical Success)","type":"effect","img":"modules/Nerps-For-Foundry/images/repulsion-save-crit-success.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"test-world","system":"pf2e","coreVersion":"0.7.8","systemVersion":"1.10.17.2355"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"system":{"description":{"value":"

Critical Success The creature's movement is not restricted.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.110-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":5},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776026,"modifiedTime":1663690776026,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} +{"_id":"Hx9mxiqblEAM3SjH","name":"Spell Effect: Repulsion (Critical Success)","type":"effect","img":"modules/nerps-for-foundry/images/repulsion-save-crit-success.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"test-world","system":"pf2e","coreVersion":"0.7.8","systemVersion":"1.10.17.2355"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"system":{"description":{"value":"

Critical Success The creature's movement is not restricted.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.110-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":5},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776026,"modifiedTime":1663690776026,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"_id":"I1aEUuGfRDeEv2Ga","name":"Spell Effect: Illusory Disguise","type":"effect","img":"systems/pf2e/icons/spells/illusory-disguise.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"test-world","system":"pf2e","coreVersion":"0.7.8","systemVersion":"1.10.17.2355"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"system":{"description":{"value":"

You create an illusion that causes you to appear as another creature of the same body shape, and with roughly similar height (within 6 inches) and weight (within 50 pounds), as yourself. The disguise is typically good enough to hide your identity, but not to impersonate a specific individual. The spell doesn't change your voice, scent, or mannerisms. You can change the appearance of your clothing and worn items, such as making your armor look like a dress. Held items are unaffected, and any worn item you remove returns to its true appearance.

\n

Casting illusory disguise counts as setting up a disguise for the Impersonate use of Deception; it ignores any circumstance penalties you might take for disguising yourself as a dissimilar creature, it gives you a +4 status bonus to Deception checks to prevent others from seeing through your disguise, and you add your level even if you're untrained. You can Dismiss this spell.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[{"key":"PF2E.RuleElement.TokenImage","value":"links/RotRL/Tokens/3.%20The%20Hook%20Mountain%20Massacre/Rukus%20Graul%20%5Btoken%5D.webp"}],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.110-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":5},"duration":{"value":1,"unit":"hours","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":false},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776027,"modifiedTime":1663690776027,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"#[CF_tempEntity]","type":"action","img":"systems/pf2e/icons/default-icons/action.svg","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_zrgv45w3ju","path":"Effects#/CF_SEP/Afflictions","color":"#80b701","name":"Afflictions","children":[],"folderPath":["temp_hyhsj2j3bjf"],"fontColor":"#FFFFFF","icon":null,"sorting":"a","contents":["BLmhGiIV3AVNyG2s","PgKEqpJV5azszpoV","PNSXjjT7rBqpvYfw","znxQ17kDYR6miAt6","4K1YR31RHqWwEcci","DnaSVZ0Waxdluhoq","PRSg19nqDkC1CCm4"],"version":"2.5.3"}},"_id":"INfIcl3Z2u9h6PA0","system":{"description":{"value":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":null},"actionType":{"value":""},"actionCategory":{"value":""},"actions":{"value":null},"requirements":{"value":""},"trigger":{"value":""},"deathNote":false},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776029,"modifiedTime":1663719400534,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"_id":"LVMfVysDTulcqQgx","name":"Spell Timer: Vital Beacon - D8","type":"effect","img":"systems/pf2e/icons/spells/vital-beacon.webp","effects":[],"folder":null,"sort":0,"flags":{"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"0.7.9","systemVersion":"1.10.23.2638"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"system":{"description":{"value":"
\n

Vitality radiates outward from you, allowing others to supplicate and receive healing. Once per round, either you or an ally can use an Interact action to supplicate and lay hands upon you to regain Hit Points. Each time the beacon heals someone, it decreases in strength. It restores 4d10 Hit Points to the first creature, 4d8 Hit Points to the second, 4d6 Hit Points to the third, and 4d4 Hit Points to the fourth, after which the spell ends. You can have only one vital beacon active at a time.

\n
\n

@Compendium[pf2e.spells-srd.ikSb3LRGnrwXJBVX]{Vital Beacon}

\n
","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.115-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":-1,"unit":"unlimited","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":false},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"containerId":{"value":""},"identified":{"value":true}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776033,"modifiedTime":1663690776033,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} @@ -30,8 +30,8 @@ {"name":"Timer: Generic","type":"effect","img":"icons/tools/navigation/hourglass-grey.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"_id":"O72nH1FuDpP6j9Zm","system":{"description":{"value":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.117-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":1,"unit":"rounds","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":false},"badge":null},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776039,"modifiedTime":1663690776039,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Timer: Healer's Gloves","type":"effect","img":"systems/pf2e/icons/equipment/worn-items/other-worn-items/healers-gloves.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"_id":"OYU72082S6q05C16","system":{"description":{"value":"

You have used Healer's Gloves today.

"},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.117-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":1,"unit":"days","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":false},"badge":null},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776041,"modifiedTime":1663690776041,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"_id":"PNSXjjT7rBqpvYfw","name":"Blinding Sickness","type":"effect","img":"icons/skills/wounds/injury-eyes-blood-red.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_zrgv45w3ju","path":"Effects#/CF_SEP/Afflictions","color":"#80b701"}},"system":{"description":{"value":"

The conditions don’t improve on their own until the disease is cured. 

\n
\n

@UUID[Compendium.Nerps-For-Foundry.shared-journal-entries.OtMuA6kM7kqS5Cft]{Blinding Sickness}

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:39.738-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":7},"duration":{"value":1,"unit":"days","sustained":false,"expiry":"turn-end"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":{"type":"counter","value":1},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"unidentified":true},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.3.4","coreVersion":"10.288","createdTime":1663690776042,"modifiedTime":1668286561882,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} -{"_id":"PRSg19nqDkC1CCm4","name":"Poisoned","type":"effect","img":"modules/Nerps-For-Foundry/images/rpg-icons/Spells/Spellbook_01_41.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_zrgv45w3ju","path":"Effects#/CF_SEP/Afflictions","color":"#80b701"}},"system":{"description":{"value":"

A simple afflictions tracker, add one copy per stage...

"},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:40.277-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":6,"unit":"rounds","sustained":false,"expiry":"turn-end"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":{"type":"counter","value":1},"rarity":{"value":"common"},"unidentified":true},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.3.4","coreVersion":"10.288","createdTime":1663690776044,"modifiedTime":1668286510230,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} -{"name":"Reaction: Glimpse of Redemption","type":"effect","img":"modules/Nerps-For-Foundry/images/rpg-icons/Skills/b_01.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"_id":"PbWbW9nnKlRPScNr","system":{"description":{"value":"

Trigger An enemy damages your ally, and both are within 15 feet of you

\n
\n

Your foe hesitates under the weight of sin as visions of redemption play in their mind's eye. The foe must choose one of the following options:

\n\n
\n"},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:40.278-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":1,"unit":"rounds","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"context":null,"rarity":{"value":"common"},"unidentified":false},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.4.2","coreVersion":"10.291","createdTime":1663690776045,"modifiedTime":1670628752995,"lastModifiedBy":"gQRfqfwKmTh3Y6Qh"}} +{"_id":"PRSg19nqDkC1CCm4","name":"Poisoned","type":"effect","img":"modules/nerps-for-foundry/images/rpg-icons/Spells/Spellbook_01_41.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_zrgv45w3ju","path":"Effects#/CF_SEP/Afflictions","color":"#80b701"}},"system":{"description":{"value":"

A simple afflictions tracker, add one copy per stage...

"},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:40.277-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":6,"unit":"rounds","sustained":false,"expiry":"turn-end"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":{"type":"counter","value":1},"rarity":{"value":"common"},"unidentified":true},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.3.4","coreVersion":"10.288","createdTime":1663690776044,"modifiedTime":1668286510230,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} +{"name":"Reaction: Glimpse of Redemption","type":"effect","img":"modules/nerps-for-foundry/images/rpg-icons/Skills/b_01.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"_id":"PbWbW9nnKlRPScNr","system":{"description":{"value":"

Trigger An enemy damages your ally, and both are within 15 feet of you

\n
\n

Your foe hesitates under the weight of sin as visions of redemption play in their mind's eye. The foe must choose one of the following options:

\n\n
\n"},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:40.278-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":1,"unit":"rounds","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"context":null,"rarity":{"value":"common"},"unidentified":false},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.4.2","coreVersion":"10.291","createdTime":1663690776045,"modifiedTime":1670628752995,"lastModifiedBy":"gQRfqfwKmTh3Y6Qh"}} {"_id":"PgKEqpJV5azszpoV","name":"Arsenic Poisoning","type":"effect","img":"icons/skills/toxins/poison-bottle-corked-fire-green.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_zrgv45w3ju","path":"Effects#/CF_SEP/Afflictions","color":"#80b701"}},"system":{"description":{"value":"

@Compendium[pf2e.equipment-srd.OIirLySQDLZgT15S]{Arsenic}

"},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":null,"lastMigration":null},"level":{"value":4},"duration":{"value":5,"unit":"minutes","sustained":true,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":{"type":"counter","value":1},"rarity":{"value":"common"},"unidentified":true},"ownership":{"default":0,"mYYT6zPZuhElbkgM":3},"_stats":{"systemId":"pf2e","systemVersion":"4.3.4","coreVersion":"10.288","createdTime":1663690776046,"modifiedTime":1668286564770,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"#[CF_tempEntity]","type":"action","img":"systems/pf2e/icons/default-icons/action.svg","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_4v7w108pt6","folderPath":[],"color":"#000000","fontColor":"#FFFFFF","name":"Actions","children":[],"icon":"","sorting":"a","contents":["Bi7KFkOyP49YSQBg"],"version":"2.5.5"}},"_id":"QHxpIOEd5Mo1rPmy","system":{"description":{"value":""},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[],"slug":null,"schema":{"version":0.713,"lastMigration":null},"actionType":{"value":""},"actionCategory":{"value":""},"actions":{"value":null},"requirements":{"value":""},"trigger":{"value":""},"deathNote":false},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.4.2","coreVersion":"10.291","createdTime":1663690776047,"modifiedTime":1670628967994,"lastModifiedBy":"gQRfqfwKmTh3Y6Qh"}} {"name":"Effect: Dodging Roll (out of area)","type":"effect","system":{"description":{"value":""},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[{"key":"Resistance","type":"all-damage","value":"@actor.level+@actor.abilities.dex.mod"}],"slug":null,"schema":{"version":0.813,"lastMigration":null},"level":{"value":1},"duration":{"value":0,"unit":"rounds","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"context":null},"img":"icons/skills/movement/figure-running-gray.webp","effects":[],"ownership":{"default":0,"HtV4112V3gD3WzYc":3},"flags":{"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"10.291","systemVersion":"4.6.5"},"core":{"sourceId":"Item.EOkWM9aojP0Mu38r"},"cf":{"id":"temp_hyhsj2j3bjf"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.5","coreVersion":"10.291","createdTime":1673208366535,"modifiedTime":1673455398873,"lastModifiedBy":"HtV4112V3gD3WzYc"},"folder":null,"sort":0,"_id":"QmtHOPP5GRNpC0Q6"} @@ -45,15 +45,15 @@ {"name":"Effect: Exalt (Glimpse of Redemption)","type":"effect","system":{"description":{"value":"

Granted by @UUID[Compendium.Nerps-For-Foundry.shared-items.PbWbW9nnKlRPScNr]{Reaction: Glimpse of Redemption}

\n

Trigger An enemy damages your ally, and both are within 15 feet of you

\n
\n

Your foe hesitates under the weight of sin as visions of redemption play in their mind's eye. The foe must choose one of the following options:

\n"},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[{"key":"Resistance","type":"all-damage","value":"@actor.level"}],"slug":null,"schema":{"version":0.813,"lastMigration":{"datetime":"2023-01-08T14:00:51.354-06:00","version":{"schema":0.802,"foundry":"10.291","system":"4.6.4"}}},"level":{"value":1},"duration":{"value":0,"unit":"rounds","sustained":false,"expiry":"turn-end"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"context":null,"unidentified":false},"img":"icons/equipment/shield/heater-wooden-blue.webp","effects":[],"ownership":{"default":0,"HtV4112V3gD3WzYc":3},"flags":{"core":{"sourceId":"Item.D6hPDAuyNZfDrPLo"},"cf":{"id":"temp_hyhsj2j3bjf"},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"10.291","systemVersion":"4.6.5"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.5","coreVersion":"10.291","createdTime":1670611914774,"modifiedTime":1673648667510,"lastModifiedBy":"HtV4112V3gD3WzYc"},"folder":null,"sort":0,"_id":"c84e3dI1Cv78bu5Z"} {"name":"Effect: Shield of Reckoning","type":"effect","system":{"description":{"value":"

Granted by @Compendium[pf2e.feats-srd.VsTmB32x9673ONJ0]{Shield of Reckoning}

\n

Trigger A foe's attack against an ally matches the trigger for both your Shield Block reaction and your champion's reaction

\n
\n

When you shield your ally against an attack, you call upon your power to protect your ally further. You use the Shield Block reaction to prevent damage to an ally and also use your champion's reaction  against the foe that attacked your ally.

"},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[{"key":"GrantItem","uuid":"Compendium.Nerps-For-Foundry.shared-items.wugoTkhhdNl6KcMO","replaceSelf":true,"allowDuplicate":false},{"key":"GrantItem","allowDuplicate":false,"uuid":"Compendium.Nerps-For-Foundry.shared-items.EOARJcJuEVIgVSRl"}],"slug":null,"schema":{"version":0.802,"lastMigration":null},"level":{"value":1},"duration":{"value":0,"unit":"rounds","sustained":false,"expiry":"turn-end"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"context":null,"unidentified":false},"img":"icons/equipment/shield/heater-steel-crystal-red.webp","effects":[],"ownership":{"default":0,"gQRfqfwKmTh3Y6Qh":3},"flags":{"core":{"sourceId":"Item.IDhnq2tE5btK8hTa"},"cf":{"id":"temp_hyhsj2j3bjf"}},"_stats":{"systemId":"pf2e","systemVersion":"4.4.2","coreVersion":"10.291","createdTime":1670612387489,"modifiedTime":1670628621669,"lastModifiedBy":"gQRfqfwKmTh3Y6Qh"},"folder":null,"sort":0,"_id":"coBwxzhmHsv2VKJJ"} {"name":"#[CF_tempEntity]","type":"action","img":"systems/pf2e/icons/default-icons/action.svg","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_dwcrx8lmvgw","folderPath":[],"color":"#165200","fontColor":"#FFFFFF","name":"Companion Armor","children":[],"icon":"","sorting":"a","contents":["lHc025moue32WDWh","1qwEBI9d8c5Grny4","xaiGY6cZDTBUz7bl","F6wsBGrQjiuokZ1Z"],"version":"2.5.3"}},"_id":"duk14OBasFGejq96","system":{"description":{"value":""},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[],"slug":null,"schema":{"version":0.716,"lastMigration":null},"actionType":{"value":""},"actionCategory":{"value":""},"actions":{"value":null},"requirements":{"value":""},"trigger":{"value":""},"deathNote":false},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776075,"modifiedTime":1663719400534,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} -{"name":"Spell Effect: Repulsion (Success)","type":"effect","img":"modules/Nerps-For-Foundry/images/repulsion-save-success.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"test-world","system":"pf2e","coreVersion":"0.7.8","systemVersion":"1.10.17.2355"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"_id":"gDPRpZMgbJclOo1P","system":{"description":{"value":"

Success The creature treats each square in the area as difficult terrain when moving closer to you.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.110-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":5},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776079,"modifiedTime":1663690776079,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} +{"name":"Spell Effect: Repulsion (Success)","type":"effect","img":"modules/nerps-for-foundry/images/repulsion-save-success.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"test-world","system":"pf2e","coreVersion":"0.7.8","systemVersion":"1.10.17.2355"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"_id":"gDPRpZMgbJclOo1P","system":{"description":{"value":"

Success The creature treats each square in the area as difficult terrain when moving closer to you.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.110-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":5},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776079,"modifiedTime":1663690776079,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Effect: Sacred Defense +10","type":"effect","system":{"description":{"value":"

@Compendium[pf2e.feats-srd.gHBdjbEnIK8clK8u]{Sacred Defense}

"},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[{"key":"TempHP","value":10}],"slug":null,"schema":{"version":0.815,"lastMigration":null},"level":{"value":7},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"context":null,"unidentified":false},"img":"icons/magic/life/heart-cross-strong-flame-green.webp","effects":[],"ownership":{"default":0,"WtoVEYSz3jgVEWxB":3},"flags":{"core":{"sourceId":"Item.QHJ3OqcugrnBe6xe"},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"10.291","systemVersion":"4.6.6"},"cf":{"id":"temp_hyhsj2j3bjf"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.8","coreVersion":"10.291","createdTime":1673820791012,"modifiedTime":1674240313739,"lastModifiedBy":"WtoVEYSz3jgVEWxB"},"folder":null,"sort":0,"_id":"gKwCrLOUy0G3QK8L"} {"name":"Effect: Stoneskin","type":"effect","img":"systems/pf2e/icons/spells/stone-skin.webp","effects":[],"folder":null,"sort":0,"flags":{"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"_id":"iSmc5he57FE9Xdgd","system":{"description":{"value":"

The target's skin hardens like stone. It gains resistance 5 to physical damage, except adamantine. Each time the target is hit by a bludgeoning, piercing, or slashing attack, stoneskin's duration decreases by 1 minute.

\n
\n

Heightened (6th) The resistance increases to 10.

\n

Heightened (8th) The resistance increases to 15.

\n

Heightened (10th) The resistance increases to 20.

"},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[{"key":"Resistance","type":"physical ","except":"adamantine","value":"floor(((@item.level)-2)/2)*5"}],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.114-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":4},"duration":{"value":20,"unit":"minutes","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":{"type":"counter","value":20},"context":null,"rarity":{"value":"common"},"unidentified":false},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.6.8","coreVersion":"10.291","createdTime":1663690776082,"modifiedTime":1674243008737,"lastModifiedBy":"WtoVEYSz3jgVEWxB"}} {"_id":"kQv7B0ChPnvpkQ43","name":"Fast Healing","type":"action","img":"systems/pf2e/icons/actions/Passive.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.pf2e.bestiary-ability-glossary-srd.fJSNOw4zHGbIm4bZ"},"cf":{"id":"temp_2ufwg27lptk","path":"Custom NPC Abilities","color":"#000000"}},"system":{"description":{"value":"

A monster with this ability regains the given number of Hit Points each round at the beginning of its turn.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[{"key":"PF2E.RuleElement.Healing","selector":"fast-healing","value":"10"}],"slug":"fast-healing","schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:39.739-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"actionType":{"value":"passive"},"actionCategory":{"value":"defensive"},"actions":{"value":null},"requirements":{"value":""},"trigger":{"value":""},"deathNote":false,"weapon":{"value":""}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776086,"modifiedTime":1663690776086,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"_id":"lHc025moue32WDWh","name":"Heavy Barding","type":"armor","img":"icons/sundries/misc/pet-collar-spiked-yellow.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.EQGh0UOiYqamxszg"},"exportSource":{"world":"nerps-pfs","system":"pf2e","coreVersion":"9.245","systemVersion":"3.3.1.10311"},"cf":{"id":"temp_dwcrx8lmvgw"}},"system":{"description":{"value":""},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[],"slug":null,"schema":{"version":0.716,"lastMigration":null},"quantity":{"value":1},"baseItem":null,"hp":{"brokenThreshold":0,"value":36,"max":0},"hardness":{"value":9},"weight":{"value":"4"},"equippedBulk":{"value":""},"price":{"value":"25 gp"},"equipped":{"carryType":"worn","invested":null,"value":true},"stackGroup":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":null},"preciousMaterial":{"value":null},"preciousMaterialGrade":{"value":null},"size":{"value":"med"},"identification":{"status":"identified","unidentified":{"name":"Unusual Armor","img":"systems/pf2e/icons/unidentified_item_icons/armor.webp","data":{"description":{"value":""}}},"misidentified":{}},"usage":{"value":"wornarmor"},"level":{"value":2},"armor":{"value":3},"category":"heavy","group":null,"strength":{"value":20},"dex":{"value":3},"check":{"value":-3},"speed":{"value":-10},"potencyRune":{"value":0},"resiliencyRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"maxHp":{"value":36},"brokenThreshold":{"value":18},"bulkCapacity":{"value":""},"collapsed":{"value":false},"invested":{"value":null}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776089,"modifiedTime":1663690776089,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} -{"name":"Spell Effect: Repulsion (Failure)","type":"effect","img":"modules/Nerps-For-Foundry/images/repulsion-save-failed.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"test-world","system":"pf2e","coreVersion":"0.7.8","systemVersion":"1.10.17.2355"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"_id":"m7wzzy5q2Z5F747O","system":{"description":{"value":"

Failure The creature can't move closer to you within the area

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.110-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":5},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776090,"modifiedTime":1663690776090,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} +{"name":"Spell Effect: Repulsion (Failure)","type":"effect","img":"modules/nerps-for-foundry/images/repulsion-save-failed.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"test-world","system":"pf2e","coreVersion":"0.7.8","systemVersion":"1.10.17.2355"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"_id":"m7wzzy5q2Z5F747O","system":{"description":{"value":"

Failure The creature can't move closer to you within the area

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.110-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":5},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776090,"modifiedTime":1663690776090,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Swipe","type":"action","img":"systems/pf2e/icons/actions/TwoActions.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"cf":{"id":"temp_2ufwg27lptk","path":"Custom NPC Abilities","color":"#000000"}},"_id":"mb647P2KrFV5vRJP","system":{"description":{"value":"

The creature makes a melee Strike and compares the attack roll result to the AC of up to two foes, each of whom must be within its melee reach and adjacent to each other. Roll damage only once and apply it to each creature hit. A Swipe counts as two attacks for the creature's multiple attack penalty.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":["flourish"],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.115-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"actionType":{"value":"action"},"actionCategory":{"value":"offensive"},"actions":{"value":2},"requirements":{"value":""},"trigger":{"value":""},"deathNote":false,"weapon":{"value":""},"usage":{"value":"held-in-one-hand"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776091,"modifiedTime":1663690776091,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Timer: Sacred Defense Immunity","type":"effect","system":{"description":{"value":"

@Compendium[pf2e.feats-srd.gHBdjbEnIK8clK8u]{Sacred Defense}

"},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[],"slug":null,"schema":{"version":0.815,"lastMigration":null},"level":{"value":1},"duration":{"value":1,"unit":"hours","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":false},"badge":null,"context":null,"unidentified":false},"img":"icons/magic/life/heart-cross-green.webp","effects":[],"ownership":{"default":0,"WtoVEYSz3jgVEWxB":3,"HtV4112V3gD3WzYc":3},"flags":{"core":{"sourceId":"Item.QHJ3OqcugrnBe6xe"},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"10.291","systemVersion":"4.6.6"},"cf":{"id":"temp_hyhsj2j3bjf"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.8","coreVersion":"10.291","createdTime":1673820791012,"modifiedTime":1674237917850,"lastModifiedBy":"WtoVEYSz3jgVEWxB"},"folder":null,"sort":0,"_id":"nKGdSBX3SqV2zmzw"} -{"_id":"ny5lxHgAskBDIHfm","name":"Reaction: Used","type":"effect","img":"modules/Nerps-For-Foundry/images/reaction-button.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"test-world","system":"pf2e","coreVersion":"0.7.8","systemVersion":"1.10.17.2355"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"system":{"description":{"value":"

You have used a Reaction this round.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:40.278-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":1,"unit":"rounds","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"context":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"},"unidentified":false},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.4.2","coreVersion":"10.291","createdTime":1663690776097,"modifiedTime":1670612325624,"lastModifiedBy":"gQRfqfwKmTh3Y6Qh"}} +{"_id":"ny5lxHgAskBDIHfm","name":"Reaction: Used","type":"effect","img":"modules/nerps-for-foundry/images/reaction-button.webp","effects":[],"folder":null,"sort":0,"flags":{"pdfoundry-pf2e":{"source":""},"pick-up-stix":{"pick-up-stix":{"owner":{"actorId":"bz64LGwlU6gv5VWS"},"initialState":{"id":"mMAAjARhBV0hn41K","count":1,"itemData":{"_id":"mMAAjARhBV0hn41K","name":"Treat Wounds Immunity","permission":{"default":1,"kz2MTX0UeHY7DZys":3},"type":"effect","data":{"description":{"value":"

You are immune to Treat Wounds

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[]},"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"rules":[{"key":"PF2E.RuleElement.FlatModifier","label":"Treat Wounds Immunity","selector":"hp","value":0,"predicate":{"all":["treat-wounds"]}}],"level":{"value":1}},"sort":100001,"flags":{},"img":"icons/svg/clockwork.svg","effects":[]}},"itemType":"Item","isLocked":false}},"exportSource":{"world":"test-world","system":"pf2e","coreVersion":"0.7.8","systemVersion":"1.10.17.2355"},"cf":{"id":"temp_hyhsj2j3bjf","path":"Effects","color":"#003beb"}},"system":{"description":{"value":"

You have used a Reaction this round.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:40.278-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"level":{"value":1},"duration":{"value":1,"unit":"rounds","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"context":null,"rarity":{"value":"common"},"usage":{"value":"held-in-one-hand"},"quantity":{"value":"1"},"hp":{"value":0},"maxHp":{"value":0},"hardness":{"value":0},"brokenThreshold":{"value":0},"weight":{"value":"-"},"equippedBulk":{"value":""},"price":{"value":"0"},"invested":{"value":false},"equipped":{"value":false},"identified":{"value":true},"stackGroup":{"value":""},"bulkCapacity":{"value":""},"negateBulk":{"value":"0"},"containerId":{"value":""},"preciousMaterial":{"value":""},"preciousMaterialGrade":{"value":""},"collapsed":{"value":false},"property1":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":"","strikeConditionType":"","strikeConditionValue":null,"criticalConditionType":"","criticalConditionValue":null},"property2":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"property3":{"value":"","dice":0,"die":"","damageType":"","critDice":0,"critDie":"","critDamage":"","critDamageType":""},"weaponType":{"value":""},"group":{"value":""},"hands":{"value":""},"bonus":{"value":0},"damage":{"value":"","dice":1,"die":"d6","damageType":"slashing"},"bonusDamage":{"value":0},"splashDamage":{"value":0},"range":{"value":""},"reload":{"value":""},"ability":{"value":"str"},"MAP":{"value":""},"potencyRune":{"value":""},"strikingRune":{"value":""},"propertyRune1":{"value":""},"propertyRune2":{"value":""},"propertyRune3":{"value":""},"propertyRune4":{"value":""},"size":{"value":"med"},"identification":{"status":"identified"},"unidentified":false},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.4.2","coreVersion":"10.291","createdTime":1663690776097,"modifiedTime":1670612325624,"lastModifiedBy":"gQRfqfwKmTh3Y6Qh"}} {"name":"Wide Swing","type":"action","img":"systems/pf2e/icons/actions/OneAction.webp","effects":[],"folder":null,"sort":0,"flags":{"core":{"sourceId":"Item.xEHY10Oxi5BJJCmQ"},"pdfoundry-pf2e":{"source":""},"cf":{"id":"temp_2ufwg27lptk","path":"Custom NPC Abilities","color":"#000000"}},"_id":"o6xUedpgXvlvzsnv","system":{"description":{"value":"

The creature makes a single Strike and compares the attack roll result to the ACs of up to two foes within its reach.

\n

This counts as two attacks for the creature's multiple attack penalty.

","chat":"","unidentified":""},"source":{"value":""},"traits":{"value":[],"rarity":{"value":"common"},"custom":""},"rules":[],"slug":null,"schema":{"version":0.697,"lastMigration":{"datetime":"2021-12-15T10:23:41.118-06:00","version":{"schema":0.692,"foundry":"0.8.9","system":"2.20.2.9271"}}},"actionType":{"value":"action"},"actionCategory":{"value":"offensive"},"actions":{"value":1},"requirements":{"value":""},"trigger":{"value":""},"deathNote":false,"weapon":{"value":""},"usage":{"value":"held-in-one-hand"}},"ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776100,"modifiedTime":1663690776100,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Effect: Block Damage","type":"effect","system":{"description":{"value":"

Effect: Resistance Block uses the raise shield mechanic so you can easily use the Block button to reduce any incoming damage. It uses the Counter of this effect for the Hardness, just left/right click on the effect after adding it to the creature to adjust the badge counter.

\n
\n

You can leave it on an NPC as it does not raise the AC and use it as needed.

"},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[{"key":"ActiveEffectLike","mode":"override","path":"system.attributes.shield","predicate":[{"or":["self:type:character","self:type:npc"]}],"value":{"ac":0,"broken":false,"brokenThreshold":0,"destroyed":false,"hp":{"max":"@item.system.level.value","value":"@item.system.level.value"},"icon":"icons/equipment/shield/heater-wooden-hourglass-purple.webp","itemId":"{item|_id}","name":"Physical Resistance","raised":true}},{"key":"ActiveEffectLike","mode":"override","path":"system.attributes.shield.hardness","predicate":[{"or":["self:type:character","self:type:npc"]}],"value":"@item.badge.value"},{"domain":"all","key":"RollOption","option":"self:shield:equipped","predicate":[{"or":["self:type:character","self:type:npc"]}]}],"slug":null,"schema":{"version":0.802,"lastMigration":null},"level":{"value":1},"duration":{"value":-1,"unit":"unlimited","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":false},"badge":{"type":"counter","value":10},"context":null,"unidentified":true},"img":"icons/skills/melee/shield-block-fire-orange.webp","effects":[],"ownership":{"default":0,"gQRfqfwKmTh3Y6Qh":3},"flags":{"core":{"sourceId":"Item.vhU0MTwSI9u2AcWG"},"cf":{"id":"temp_hyhsj2j3bjf"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.1","coreVersion":"10.291","createdTime":1670629200476,"modifiedTime":1672779894656,"lastModifiedBy":"WtoVEYSz3jgVEWxB"},"folder":null,"sort":0,"_id":"oJJoMnBJW9vWM65Z"} {"name":"Effect: Sacred Defense +5","type":"effect","system":{"description":{"value":"

@Compendium[pf2e.feats-srd.gHBdjbEnIK8clK8u]{Sacred Defense}

"},"source":{"value":""},"traits":{"value":[],"rarity":"common","custom":""},"rules":[{"key":"TempHP","value":5}],"slug":null,"schema":{"version":0.815,"lastMigration":null},"level":{"value":7},"duration":{"value":1,"unit":"minutes","sustained":false,"expiry":"turn-start"},"start":{"value":0,"initiative":null},"target":null,"tokenIcon":{"show":true},"badge":null,"context":null,"unidentified":false},"img":"icons/magic/life/heart-cross-strong-green.webp","effects":[],"ownership":{"default":0,"WtoVEYSz3jgVEWxB":3,"HtV4112V3gD3WzYc":3},"flags":{"core":{"sourceId":"Item.QHJ3OqcugrnBe6xe"},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"10.291","systemVersion":"4.6.6"},"cf":{"id":"temp_hyhsj2j3bjf"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.8","coreVersion":"10.291","createdTime":1673820791012,"modifiedTime":1674240253165,"lastModifiedBy":"WtoVEYSz3jgVEWxB"},"folder":null,"sort":0,"_id":"otUQ3cGUq1UFtWY1"} diff --git a/packs/shared-macros.db b/packs/shared-macros.db index d08056a..af4abc9 100644 --- a/packs/shared-macros.db +++ b/packs/shared-macros.db @@ -1,4 +1,4 @@ -{"name":"Display DC's","type":"script","img":"modules/Nerps-For-Foundry/images/DCs.webp","command":"Hotbar.toggleDocumentSheet(\"Compendium.pf2e.journals.S55aqwWIzpQRFhcq.JournalEntryPage.dRu66xNqJ9Ihe1or\")","author":"WtoVEYSz3jgVEWxB","scope":"global","ownership":{"default":2,"WtoVEYSz3jgVEWxB":3},"flags":{"combat-utility-belt":{"macroTrigger":""},"furnace":{"runAsGM":false},"cf":{"id":"temp_w4f9l9idxk","path":"GM Macros","color":"#940000"},"core":{"sourceId":"Compendium.Nerps-For-Foundry.shared-macros.wlMkpgkRmL6CVLFK"},"advanced-macros":{"runAsGM":false},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"10.291","systemVersion":"4.6.5"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.5","coreVersion":"10.291","createdTime":1663690776300,"modifiedTime":1673645355131,"lastModifiedBy":"WtoVEYSz3jgVEWxB"},"folder":null,"sort":0,"_id":"3OdLfBbdqeojhfIG"} +{"name":"Display DC's","type":"script","img":"modules/nerps-for-foundry/images/DCs.webp","command":"Hotbar.toggleDocumentSheet(\"Compendium.pf2e.journals.S55aqwWIzpQRFhcq.JournalEntryPage.dRu66xNqJ9Ihe1or\")","author":"WtoVEYSz3jgVEWxB","scope":"global","ownership":{"default":2,"WtoVEYSz3jgVEWxB":3},"flags":{"combat-utility-belt":{"macroTrigger":""},"furnace":{"runAsGM":false},"cf":{"id":"temp_w4f9l9idxk","path":"GM Macros","color":"#940000"},"core":{"sourceId":"Compendium.Nerps-For-Foundry.shared-macros.wlMkpgkRmL6CVLFK"},"advanced-macros":{"runAsGM":false},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"10.291","systemVersion":"4.6.5"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.5","coreVersion":"10.291","createdTime":1663690776300,"modifiedTime":1673645355131,"lastModifiedBy":"WtoVEYSz3jgVEWxB"},"folder":null,"sort":0,"_id":"3OdLfBbdqeojhfIG"} {"name":"Shield Warden","type":"script","author":"HtV4112V3gD3WzYc","img":"icons/equipment/shield/heater-embossed-gold.webp","scope":"global","command":"// Macro to create a Shield Warden effect on the selected token, allowing them to block\n// The stats of the shield are based on the actor who posts this macro to the chat, i.e.\n// with @Macro[UUID_GOES_HERE]{Shield Warden}\n// Written by Trent Piepho\n\n// Effect to use as template, this is the Shield spell effect\nconst EFFECT_UUID = 'Compendium.pf2e.spell-effects.Jemq5UknGdMO7b73';\n\n// Return chat message macro invoked from, if any\nfunction getMessage(event) {\n for (p of event.path) {\n if (p.attributes) {\n id = p.attributes.getNamedItem('data-message-id');\n if (id)\n return game.messages.get(id.value);\n }\n }\n}\n\nasync function addEffect(actor, effect) {\n await actor.itemTypes.effect.find(e => e.flags.core?.sourceId === effect.flags.core.sourceId)?.delete();\n await actor.createEmbeddedDocuments(\"Item\", [effect]);\n}\n\nasync function makeShield(templateUuid, from, shield) {\n const source = (await fromUuid(templateUuid)).toObject();\n source.flags = mergeObject(source.flags ?? {}, { core: {sourceId: templateUuid}});\n\n source.name = `Effect: ${shield.name} from ${from.name}`;\n source.img = shield.icon;\n source.system.duration.value = 0;\n source.system.duration.expiry = 'turn-end';\n source.system.description = `${from.name} uses Shield Warden to Shield Block for you`;\n source.system.level.value = shield.level;\n source.system.slug = 'effect-shield-warden';\n \n let rule = source.system.rules.find(r => r.path == 'system.attributes.shield');\n rule.value.ac = 0;\n rule.value.hp = shield.hp;\n rule.value.itemId = shield.itemId;\n\n rule = source.system.rules.find(r => r.path == 'system.attributes.shield.hardness');\n rule.value = shield.hardness;\n\n return source;\n}\n\nlet speaker = getMessage(event)?.actor;\nif (!speaker) {\n ui.notifications.warn(\"Macro should be called from a chat card link, using your shield to test macro\");\n speaker = actor;\n}\n\nshield = speaker.system.attributes.shield;\n\nif (shield.broken) {\n ui.notifications.warn(`${speaker.name} has a broken shield!`);\n return;\n}\nif (!shield.raised) {\n ui.notifications.warn(`${speaker.name} has not raised their shield!`);\n return;\n}\n\neffect = await makeShield(EFFECT_UUID, speaker, shield);\naddEffect(actor, effect);","ownership":{"default":0,"HtV4112V3gD3WzYc":3},"flags":{"core":{"sourceId":"Macro.UMpYJire4ojPagNt"},"cf":{"id":"temp_qx20rfr41e"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.5","coreVersion":"10.291","createdTime":1673452609746,"modifiedTime":1673453296656,"lastModifiedBy":"HtV4112V3gD3WzYc"},"folder":null,"sort":0,"_id":"3TH4hHUCb9BTRlnY"} {"name":"Roll Secret Religion","type":"script","author":"oiPWLVPNH7xQBULr","img":"systems/pf2e/icons/deity/Desna.webp","scope":"global","command":"game.PF2EToolbox.secretSkillRoll('rel')","folder":null,"sort":0,"flags":{"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"0.7.9","systemVersion":"1.10.25.2784"},"combat-utility-belt":{"macroTrigger":""},"furnace":{"runAsGM":false},"cf":{"id":"temp_qx20rfr41e","path":"PC Macros","color":"#0068b8"}},"_id":"5f4TMts2kOCUYVvc","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776222,"modifiedTime":1663690776222,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Hymn of Healing","type":"script","author":"oiPWLVPNH7xQBULr","img":"systems/pf2e/icons/spells/hymn-of-healing.webp","scope":"global","command":"// Uses Turn Alert module\n\n// There should be combat started and tokens selected/targeted...\nif (game.combat === null) {\n\tui.notifications.error(\"Combat is not started, this macro only works during combat.\");\n\treturn;\n}\n\nif (game.user.targets.size > 1) {\n\tui.notifications.warn(\"You can only target a single token.\");\n\treturn;\n} else if (canvas.tokens.controlled.length > 1) {\n\tui.notifications.warn(\"You can only select a single token.\");\n\treturn;\n} else if (canvas.tokens.controlled.length < 1) {\n\tui.notifications.warn(\"You must select a token that is casting the spell.\");\n\treturn;\n}\n\n// Get source and target tokens\nconst healAmount = 4;\nconst duration = 5;\nconst source = canvas.tokens.controlled[0];\nlet target;\n\nif (game.user.targets.size !== 1) {\n\ttarget = canvas.tokens.controlled[0];\n} else {\n\ttarget = game.user.targets.values().next().value;\n}\n\n// Get the combat tracker id for the targeted token...\nlet combatant_source = game.combat.data.combatants.find(it => it.tokenId == source.id);\nif (combatant_source === undefined) {\n\tui.notifications.warn(`${target.data.name} is not in combat! They must be in combat for this macro to work.`);\n\treturn;\n}\n\n// Get the combat tracker id for the targeted token...\nlet combatant_target = game.combat.data.combatants.find(it => it.tokenId == target.id);\nif (combatant_target === undefined) {\n\tui.notifications.warn(`${target.data.name} is not in combat! They must be in combat for this macro to work.`);\n\treturn;\n}\n\n// Check if actor has acted yet or not this round and set Alert to this round if they haven't\nconst currentTurn = game.combat.turn;\nconst combatantTurn = game.combat.turns.findIndex(it => it.actor.id == target.actor.id);\nlet nextRound = (combatantTurn > currentTurn) ? 0 : 1;\n\nconst fastHealing_Alert = {\n\tname: `Spell Effect: Hymn of Healing - Fast Healing ${healAmount}`,\n\tlabel: `Spell Effect: Hymn of Healing - Fast Healing ${healAmount}`,\n\tturnId: combatant_target._id,\n\tround: nextRound,\n\tmessage: `Fast Healing ${healAmount} applied to ${target.data.name} from Hymn of Healing.`,\n\tmacro: \"Spell Effect: Hymn of Healing\",\n\targs: [target.id, combatant_source._id, healAmount, duration, 'applyFastHealing'],\n}\n\nconst sustainSpell_Alert = {\n\tname: \"Spell Effect: Hymn of Healing - Sustain Spell)\",\n\tlabel: \"Spell Effect: Hymn of Healing - Sustain Spell)\",\n\tturnId: combatant_source._id,\n\tendOfTurn: false,\n\tround: 1,\n\tmessage: `Temporary Hit Points removed from ${target.data.name} from Hymn of Healing. Sustaining the spell will reapply the effect.`,\n\tmacro: \"Spell Effect: Hymn of Healing\",\n\targs: [target.id, combatant_source._id, healAmount, duration, 'sustainSpell'],\n\tuserId: game.userId,\n}\n\nawait TurnAlert.create(fastHealing_Alert);\nawait TurnAlert.create(sustainSpell_Alert);\n\nNerps.addEffect(target.actor.id, \"Spell Effect: Hymn of Healing\");\n\nui.notifications.info(`${source.data.name} cast Hymn of Healing on ${target.data.name}.`);","folder":null,"sort":0,"flags":{"combat-utility-belt":{"macroTrigger":""},"furnace":{"runAsGM":false},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"0.7.9","systemVersion":"1.10.25.2784"},"cf":{"id":"temp_qx20rfr41e","path":"PC Macros","color":"#0068b8"}},"_id":"6AIWFBOQYpdrLqYR","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776225,"modifiedTime":1663690776225,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} @@ -22,7 +22,7 @@ {"name":"Add Timer","type":"script","author":"oiPWLVPNH7xQBULr","img":"icons/tools/navigation/hourglass-grey.webp","scope":"global","command":"const ITEM_UUID = 'Compendium.Nerps-For-Foundry.shared-items.O72nH1FuDpP6j9Zm'; // Timer: Generic\nconst effect = (await fromUuid(ITEM_UUID)).toObject();\n\ncountdownEffect();\n\nfunction countdownEffect() {\n\tlet template = `\n

\n Time: \n\n\t\n

\n

\n Name: \n

\n

\n \n Cooldown (adds 1 to duration)\n

\n `;\n\n\tnew Dialog({\n\t\ttitle: \"Countdown Effect\",\n\t\tcontent: template,\n\t\tbuttons: {\n\t\t\tok: {\n\t\t\t\tlabel: \"Apply\",\n\t\t\t\tcallback: (html) => {\n\t\t\t\t\tmain(html);\n\t\t\t\t},\n\t\t\t},\n\t\t\tcancel: {\n\t\t\t\tlabel: \"Cancel\",\n\t\t\t},\n\t\t},\n\t}).render(true);\n}\n\nasync function main(html) {\n\tlet coolDownText = \"\";\n\tlet countdownNumber = \"\";\n\tlet duration = html.find(\"#countdowninput\")[0].value;\n\tlet durationUnit = html.find(\"#durationUnit\")[0].value;\n\tconst isCooldown = html.find(\"#cooldown\")[0].checked;\n\t\n\teffect.name = \"Timer: \" + html.find(\"#countdownname\")[0].value;\n\t\n\tif (duration.includes(\"d\")) {\n\t\tcountdownNumber = new Roll(duration).roll({ async: false }).total;\n\t} else {\n\t\tcountdownNumber = duration;\n\t}\n\t\n\tif (isCooldown) {\n\t\tcountdownNumber = parseInt(countdownNumber) + 1;\n\t\tcoolDownText = \"a cool down \";\n\t};\n\n\tui.notifications.info(`${actor.name} now has ${coolDownText}${effect.name} for ${countdownNumber} ${durationUnit}.`);\n\n\teffect.data.duration.value = countdownNumber;\n\teffect.data.duration.unit = durationUnit;\n\tawait token.actor.createEmbeddedDocuments(\"Item\", [effect]);\n}","folder":null,"sort":0,"flags":{"advanced-macros":{"runAsGM":false},"cf":{"id":"temp_w4f9l9idxk","path":"GM Macros","color":"#940000"}},"_id":"RZH5ymLyNSyFPQeQ","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776261,"modifiedTime":1663690776261,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"#[CF_tempEntity]","type":"chat","author":"oiPWLVPNH7xQBULr","img":"icons/svg/dice-target.svg","scope":"global","command":"","folder":null,"sort":0,"flags":{"cf":{"id":"temp_9jlc9ozs6qm","path":"Effect Toggles","color":"#9900d1","name":"Effect Toggles","children":[],"folderPath":[],"fontColor":"#FFFFFF","icon":null,"sorting":"a","contents":["LnMuATGBgmHnbbLr","8v5DFZsPmOyIIYZy","Weo89jdN2edPoIyG","H4RaawEHGyAJ4fqM"],"version":"2.5.3"}},"_id":"SmxiZ5uqqTR0XE2R","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776262,"modifiedTime":1663690776262,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Versatility Weapon Toggle","type":"script","scope":"global","author":"HtV4112V3gD3WzYc","img":"icons/weapons/swords/shortsword-guard-brass.webp","command":"const weapon = actor.items.find(i => i.type == 'weapon' && i.isEquipped && i.traits.some(t => t.startsWith('versatile-')));\nif (!weapon) {\n\tui.notifications.warn('You don\\'t appear to have a versatile weapon equipped!');\n\treturn;\n}\n\nconst damage = weapon.system.damage.damageType == 'slashing' ? 'piercing' : 'slashing';\nconsole.log(`Change ${weapon.name} to ${damage}`);\n\nawait actor.updateEmbeddedDocuments(weapon.documentName, [{ _id: weapon.id, 'system.damage.damageType': damage }]);\n\nui.notifications.info(`Changed ${weapon.name} to ${damage}`);","ownership":{"default":2,"HtV4112V3gD3WzYc":3},"flags":{"core":{"sourceId":"Macro.cBOZKhAzzmryrzck"},"cf":{"id":"temp_qx20rfr41e"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.5","coreVersion":"10.291","createdTime":1673646189004,"modifiedTime":1673646538722,"lastModifiedBy":"HtV4112V3gD3WzYc"},"folder":null,"sort":0,"_id":"UE2MmkhB2l2zvpoP"} -{"name":"Exploration Activities","type":"script","author":"oiPWLVPNH7xQBULr","img":"modules/Nerps-For-Foundry/images/Exploration Actions/small/Exploration-Mode.webp","scope":"global","command":"const actors = canvas.tokens.controlled.flatMap((token) => token.actor ?? []);\nif (actors.length === 0 && game.user.character) actors.push(game.user.character);\nif (actors.length === 0) {\n const message = game.i18n.localize(\"PF2E.ErrorMessage.NoTokenSelected\");\n return ui.notifications.error(message);\n}\n\nconst ITEM_UUID = \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.khJJdnGwdSMIbfY0\"; // Exploration Activities\nconst source = (await fromUuid(ITEM_UUID)).toObject();\nsource.flags = mergeObject(source.flags ?? {}, { core: { sourceId: ITEM_UUID } });\n\nconst ACTIVITIES = [\"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.N8vpuGy4TzU10y8E\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.F6vJYLZTWDpnrnCZ\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.GYOyFj4ziZX060rZ\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.OjRHL0B4WAUUQc13\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.V347nnVBGDrVWh7k\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.vNUrKvoOSvEnqzhM\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.tDsgl8YmhZbx2May\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.kh1QdKkvbNZ0qBsQ\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.mGFBHM1lvHNZ9BsH\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.XiVLHjg5lQVMX8Fj\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.OcCXjJab7rSR3mDf\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.CcyA2CzeaTBWHNHP\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.dPN9skoOTV4xPXXw\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.L9pco4KzAgzzsGzJ\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.IHUDmJwpONRhUmSH\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.mlRq2R9uZRwP1Nss\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.5GB5F68cxRPdrF1Q\"];\n\nfor (const actor of actors) {\n await ACTIVITIES.forEach((activity) => {\n const activityFound = actor.itemTypes.effect.find((e) => e.data.flags.core?.sourceId === activity);\n \n if (activityFound) {\n console.log(activityFound);\n activityFound.delete();\n }\n });\n\n const existing = actor.itemTypes.effect.find((e) => e.data.flags.core?.sourceId === ITEM_UUID);\n if (existing) {\n await existing.delete();\n } else {\n await actor.createEmbeddedDocuments(\"Item\", [source]);\n }\n}","folder":null,"sort":0,"flags":{"furnace":{"runAsGM":false},"exportSource":{"world":"aoa1","system":"pf2e","coreVersion":"0.7.1","systemVersion":"1.10.2.1717"},"combat-utility-belt":{"macroTrigger":""},"cf":{"id":"temp_qx20rfr41e","path":"PC Macros","color":"#0068b8"}},"_id":"UpgJAXrxxI0jxmVW","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776265,"modifiedTime":1663690776265,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} +{"name":"Exploration Activities","type":"script","author":"oiPWLVPNH7xQBULr","img":"modules/nerps-for-foundry/images/Exploration Actions/small/Exploration-Mode.webp","scope":"global","command":"const actors = canvas.tokens.controlled.flatMap((token) => token.actor ?? []);\nif (actors.length === 0 && game.user.character) actors.push(game.user.character);\nif (actors.length === 0) {\n const message = game.i18n.localize(\"PF2E.ErrorMessage.NoTokenSelected\");\n return ui.notifications.error(message);\n}\n\nconst ITEM_UUID = \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.khJJdnGwdSMIbfY0\"; // Exploration Activities\nconst source = (await fromUuid(ITEM_UUID)).toObject();\nsource.flags = mergeObject(source.flags ?? {}, { core: { sourceId: ITEM_UUID } });\n\nconst ACTIVITIES = [\"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.N8vpuGy4TzU10y8E\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.F6vJYLZTWDpnrnCZ\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.GYOyFj4ziZX060rZ\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.OjRHL0B4WAUUQc13\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.V347nnVBGDrVWh7k\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.vNUrKvoOSvEnqzhM\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.tDsgl8YmhZbx2May\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.kh1QdKkvbNZ0qBsQ\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.mGFBHM1lvHNZ9BsH\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.XiVLHjg5lQVMX8Fj\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.OcCXjJab7rSR3mDf\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.CcyA2CzeaTBWHNHP\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.dPN9skoOTV4xPXXw\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.L9pco4KzAgzzsGzJ\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.IHUDmJwpONRhUmSH\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.mlRq2R9uZRwP1Nss\", \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.5GB5F68cxRPdrF1Q\"];\n\nfor (const actor of actors) {\n await ACTIVITIES.forEach((activity) => {\n const activityFound = actor.itemTypes.effect.find((e) => e.data.flags.core?.sourceId === activity);\n \n if (activityFound) {\n console.log(activityFound);\n activityFound.delete();\n }\n });\n\n const existing = actor.itemTypes.effect.find((e) => e.data.flags.core?.sourceId === ITEM_UUID);\n if (existing) {\n await existing.delete();\n } else {\n await actor.createEmbeddedDocuments(\"Item\", [source]);\n }\n}","folder":null,"sort":0,"flags":{"furnace":{"runAsGM":false},"exportSource":{"world":"aoa1","system":"pf2e","coreVersion":"0.7.1","systemVersion":"1.10.2.1717"},"combat-utility-belt":{"macroTrigger":""},"cf":{"id":"temp_qx20rfr41e","path":"PC Macros","color":"#0068b8"}},"_id":"UpgJAXrxxI0jxmVW","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776265,"modifiedTime":1663690776265,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Group Saving Throw","type":"script","author":"oiPWLVPNH7xQBULr","img":"icons/sundries/gaming/dice-runed-brown.webp","scope":"global","command":"game.PF2EToolbox.groupSave();","folder":null,"sort":0,"flags":{"core":{"sourceId":"Macro.8Q09qdNv8Ry5v3pF"},"combat-utility-belt":{"macroTrigger":""},"cf":{"id":"temp_w4f9l9idxk","path":"GM Macros","color":"#940000"}},"_id":"VyyAfrDJICoLfhdy","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776268,"modifiedTime":1663690776268,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Spell Effect: Hymn of Healing","type":"script","author":"oiPWLVPNH7xQBULr","img":"icons/svg/heal.svg","scope":"global","command":"async function main() {\n\tconst target = canvas.tokens.placeables.find(target => target.id === args[0]);\n\tconst source = args[1];\n\tconst healAmount = args[2];\n\tconst duration = args[3] - 1;\n\tconst task = args[4];\n\n\tlet combatant_target = game.combat.data.combatants.find(it => it.tokenId == target.id);\n\tif (combatant_target === undefined) {\n\t\tui.notifications.warn(`${target.data.name} is not in combat! They must be in combat for this macro to work.`);\n\t\treturn;\n\t}\n\n\t// Check if actor has acted yet or not this round and set Alert to this round if they haven't\n\tconst currentTurn = game.combat.turn;\n\tconst combatantTurn = game.combat.turns.findIndex(it => it.actor.id == target.actor.id);\n\tlet nextRound = (combatantTurn > currentTurn) ? 0 : 1;\n\n\tconst fastHealing_Alert = {\n\t\tname: `Spell Effect: Hymn of Healing - Fast Healing ${healAmount}`,\n\t\tlabel: `Spell Effect: Hymn of Healing - Fast Healing ${healAmount}`,\n\t\tturnId: combatant_target._id,\n\t\tround: nextRound,\n\t\tmessage: `Fast Healing ${healAmount} applied to ${target.data.name} from Hymn of Healing.`,\n\t\tmacro: \"Spell Effect: Hymn of Healing\",\n\t\targs: [target.id, source, healAmount, duration, 'applyFastHealing']\n\t}\n\n\tconst sustainSpell_Alert = {\n\t\tname: \"Spell Effect: Hymn of Healing - Sustain Spell)\",\n\t\tlabel: \"Spell Effect: Hymn of Healing - Sustain Spell)\",\n\t\tturnId: source,\n\t\tendOfTurn: false,\n\t\tround: 1,\n\t\tmessage: `Temporary Hit Points removed from ${target.data.name} from Hymn of Healing. Sustaining the spell will reapply the effect.`,\n\t\tmacro: \"Spell Effect: Hymn of Healing\",\n\t\targs: [target.id, source, healAmount, duration, 'sustainSpell'],\n\t\tuserId: game.userId,\n\t}\n\n\tswitch (task) {\n\t\tcase 'applyFastHealing':\n\t\t\tlet actorHP = target.actor.data.data.attributes.hp;\n\t\t\tawait target.actor.update({ 'data.attributes.hp.value': actorHP.value + healAmount })\n\t\t\tbreak;\n\t\tcase 'addTempHP':\n\t\t\tlet effectItem = game.items.getName(\"Spell Effect: Hymn of Healing\").data;\n\t\t\t// console.log(\"*********** EFFECT ITEM:\", effectItem);\n\t\t\ttarget.actor.createOwnedItem(effectItem);\n\t\t\tbreak;\n\t\tcase 'sustainSpell':\n\t\t\tNerps.removeEffect(target.actor.id, \"Spell Effect: Hymn of Healing\");\n\n\t\t\tif (duration > 0) {\n\t\t\t\tlet d = Dialog.confirm({\n\t\t\t\t\ttitle: \"Sustain Spell Action Required\",\n\t\t\t\t\tcontent: `

Do you wish to sustain Hymn of Healing?

${duration} rounds of duration left.`,\n\t\t\t\t\tyes: () => {\n\t\t\t\t\t\tui.notifications.info(\"Hymn of Healing sustained.\");\n\n\t\t\t\t\t\tTurnAlert.create(sustainSpell_Alert);\n\t\t\t\t\t\tTurnAlert.create(fastHealing_Alert);\n\t\t\t\t\t\tNerps.addEffect(target.actor.id, \"Spell Effect: Hymn of Healing\");\n\t\t\t\t\t},\n\t\t\t\t\tno: () => {\n\t\t\t\t\t\tui.notifications.warn(\"Hymn of Healing will expire at end of your turn.\");\n\t\t\t\t\t\t// console.log(\"Hymn of Healing will expire at end of your turn.\")\n\t\t\t\t\t},\n\t\t\t\t\tdefaultYes: true\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tui.notifications.error(\"Hymn of Healing duration has ended and can no longer be sustained.\");\n\t\t\t}\n\t\t\tbreak;;\n\t\tdefault:\n\t\t\tconsole.log(`Unknown task sent to Spell Effect: Hymn of Healing macro.`);\n\t}\n}\n\nmain();","folder":null,"sort":0,"flags":{"combat-utility-belt":{"macroTrigger":""},"furnace":{"runAsGM":false},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"0.7.9","systemVersion":"1.10.25.2784"},"cf":{"id":"temp_9jlc9ozs6qm","path":"Effect Toggles","color":"#9900d1"}},"_id":"Weo89jdN2edPoIyG","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776273,"modifiedTime":1663690776273,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Import Compendium Mapping","type":"script","author":"oiPWLVPNH7xQBULr","img":"icons/svg/dice-target.svg","scope":"global","command":"// https://gitlab.com/-/snippets/2138719\n\nconst folderName = encodeURL(`${game.system.id}CompendiumMappingBackup`);\n\nasync function getJSON(path){\n const response = await fetch(path);\n const json = await response.json();\n return json;\n}\n\nui.notifications.info(\"Starting import, this may take a few moments.\")\n\nasync function importMapping(gamePack){\n let filepath = `${folderName}/${gamePack}.json`;\n let actors = await getJSON(filepath);\n const updates = actors.map(a => ({_id: a.id, img: a.img, token: { img: a.data.token.img, randomImg: a.data.token.randomImg, scale: a.data.token.scale }}));\n try {\n const pack = game.packs.get(gamePack);\n pack.configure({locked: false})\n const docs = await pack.getDocuments();\n const updated = await Actor.updateDocuments(updates, {pack: gamePack});\n pack.configure({locked: true});\n ui.notifications.info(`${gamePack} imported`)\n } catch (error) {\n console.error(`Could not load data for ${gamePack}. That pack may not exist in this world or it may be damaged.`)\n }\n}\n\nconst folderList = await FilePicker.browse('data',folderName);\nconst files = folderList.files.filter(f => f.endsWith('.json'));\nfor (let file of files) {\n let gamePack = file.split('/').slice(-1)[0].replace('.json','')\n await importMapping(gamePack);\n}\nui.notifications.info(\"done\")","folder":null,"sort":0,"flags":{"advanced-macros":{"runAsGM":false},"cf":{"id":"temp_jgmri56d4gm","path":"System Macros","color":"#02ac24"}},"_id":"Xx9TKoCq7Xtd6msQ","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776276,"modifiedTime":1663690776276,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} @@ -37,8 +37,8 @@ {"name":"#[CF_tempEntity]","type":"chat","author":"oiPWLVPNH7xQBULr","img":"icons/svg/dice-target.svg","scope":"global","command":"","folder":null,"sort":0,"flags":{"cf":{"id":"temp_jgmri56d4gm","path":"System Macros","color":"#02ac24","name":"System Macros","children":[],"folderPath":[],"fontColor":"#FFFFFF","icon":null,"sorting":"a","contents":["hKLLZFWeOt7kAAWC","xEWrtwcCZEJ5Y3UH","Xx9TKoCq7Xtd6msQ","PLjhtPJATWOM7ccf"],"version":"2.5.3"}},"_id":"k7CQp18S8E1rH9gQ","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776292,"modifiedTime":1663690776292,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Set Token bars and nameplate","type":"script","author":"oiPWLVPNH7xQBULr","img":"modules/game-icons-net/whitetransparent/network-bars.svg","scope":"global","command":"/* This will set every token in scene to always display their\n * token bars and nameplate, and sets the first bar to represent \n * HP and removes the second token bar.\n*/\n\nconst tokens = canvas.tokens.placeables.map(token => {\n return {\n _id: token.id,\n \"bar1.attribute\": \"attributes.hp\",\n \"bar2.attribute\": \"\",\n \"displayName\": CONST.TOKEN_DISPLAY_MODES.OWNER_HOVER,\n \"displayBars\": CONST.TOKEN_DISPLAY_MODES.ALWAYS\n };\n});\n\ncanvas.scene.updateEmbeddedEntity('Token', tokens)","folder":null,"sort":0,"flags":{"combat-utility-belt":{"macroTrigger":""},"cf":{"id":"temp_w4f9l9idxk","path":"GM Macros","color":"#940000"}},"_id":"kmfuSuMjG4kwyGln","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776294,"modifiedTime":1663690776294,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Open Compendium Browser","type":"script","author":"oiPWLVPNH7xQBULr","img":"systems/pf2e/icons/equipment/adventuring-gear/advanced-book-of-translation.webp","scope":"global","command":"game.pf2e.compendiumBrowser.render(true);","folder":null,"sort":0,"flags":{"core":{"sourceId":"Compendium.pf2e.pf2e-macros.s2sa8lo9dcIA6UGe"},"cf":{"id":"temp_qx20rfr41e","path":"PC Macros","color":"#0068b8"}},"_id":"ouoOWgFlfpWmpkOl","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776296,"modifiedTime":1663690776296,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} -{"name":"Display GM Screen","type":"script","scope":"global","author":"WtoVEYSz3jgVEWxB","img":"modules/Nerps-For-Foundry/images/Gm_Screen.webp","command":"Hotbar.toggleDocumentSheet(\"Compendium.pf2e.journals.S55aqwWIzpQRFhcq\")","ownership":{"default":2,"WtoVEYSz3jgVEWxB":3},"flags":{"combat-utility-belt":{"macroTrigger":""},"furnace":{"runAsGM":false},"cf":{"id":"temp_w4f9l9idxk","path":"GM Macros","color":"#940000"},"core":{"sourceId":"Compendium.Nerps-For-Foundry.shared-macros.wlMkpgkRmL6CVLFK"},"advanced-macros":{"runAsGM":false},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"10.291","systemVersion":"4.6.5"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.5","coreVersion":"10.291","createdTime":1663690776300,"modifiedTime":1673645353211,"lastModifiedBy":"WtoVEYSz3jgVEWxB"},"folder":null,"sort":0,"_id":"pxEKkFqTB1q1jJX4"} -{"name":"Repair Targets Shield","type":"script","author":"oiPWLVPNH7xQBULr","img":"modules/Nerps-For-Foundry/images/rpg-icons/ResourcesAndCrafting/Tools/en_craft_31.webp","scope":"global","command":"const targets = game.user.targets;\nlet shieldActor = actor;\n\nif (targets.size > 0) {\n\tshieldActor = targets.first().actor;\n} else {\n\tshieldActor = actor;\n}\n\nif (!shieldActor) {\n\tui.notifications.warn(\"You must have an actor selected.\");\n} else {\n\tconst skillName = \"Craft\";\n\tconst skillKey = \"cra\";\n\tconst actionSlug = \"repair\"\n\tconst actionName = \"Repair\"\n\n\tconst modifiers = []\n\t// list custom modifiers for a single roll here\n\t// const modifiers = [new game.pf2e.Modifier('Repair Kit (Superb)', 1, 'item')];\n\n\tconst dcByLevel = [14, 15, 16, 18, 19, 20, 22, 23, 24, 26, 27, 28, 30, 31, 32, 34, 35, 36, 38, 39, 40, 42, 44, 46, 48, 50];\n\tconst shieldEquipped = shieldActor.items.find(item => item.id == shieldActor.heldShield._id);\n\tconst DC = dcByLevel[shieldEquipped.level];\n\tconst skillRank = token.actor.system.skills[skillKey].rank\n\n const isReforgingShield = shieldEquipped.name == \"Reforging Shield\" ? true : false;\n let repairSuccessTotal = 5 + (CheckForCraftersEyePiece() ? (skillRank * 10) : (skillRank * 5));\n repairSuccessTotal = isReforgingShield ? repairSuccessTotal * 2: repairSuccessTotal;\n \t\n \tconst hasGreaterCraftersEyepiece = CheckForEquipment(\"crafters-eyepiece-greater\") ? ' (Greater)' : \"\";\n \tconst hasCraftersEyepiece = CheckForCraftersEyePiece() ? `

Crafter's Eyepiece${hasGreaterCraftersEyepiece}: +${skillRank * 5} HP included

` : \"\";\n \tconst hasReforgingShield = isReforgingShield ? `

Reforging Shield: double HP included

` : \"\";\n \t\n//\tif(shieldEquipped.name == \"Reforging Shield\") {\n//\t repairSuccessTotal = repairSuccessTotal * 2;\n//\t}\n \t\n \tconst shieldInfo = `${shieldEquipped.name}
Level: ${shieldEquipped.level}`;\n\n\tconst notes = [...token.actor.system.skills[skillKey].notes]; // add more notes if necessary\n\tconst options = token.actor.getRollOptions(['all', 'skill-check', skillName.toLowerCase()]);\n\toptions.push(`action:${actionSlug}`); // add more traits here in new lines\n\tgame.pf2e.Check.roll(\n\t\tnew game.pf2e.CheckModifier(\n\t\t\t`A ${actionName} -

${skillName} Skill Check

${shieldInfo}

Repairs ${repairSuccessTotal} HP on success, ${repairSuccessTotal * 2} HP on Critical Success, and deals 2d6 damage on Critical Fail.

${hasCraftersEyepiece}${hasReforgingShield}`,\n\t\t\ttoken.actor.system.skills[skillKey], modifiers),\n\t\t{ actor: token.actor, type: 'skill-check', options, notes, dc: { value: DC } },\n\t\tevent\n\t\t, (Roll) => { repairShield(Roll, repairSuccessTotal, shieldEquipped); } // for callback\n\t);\n}\n\nfunction CheckForCraftersEyePiece() {\n\treturn CheckForEquipment(\"crafters-eyepiece\") || CheckForEquipment(\"crafters-eyepiece-greater\");\n}\n\nfunction CheckForEquipment(slug) {\n\tif (token.actor.items.find(\n\t\t(i) => i.system.slug === slug && i.type === 'equipment' && i.isInvested === true)) {\n\t\treturn true;\n\t}\n\treturn false;\n}\n\nasync function repairShield(RollResult, repairSuccessTotal, shieldEquipped) {\n\tlet damageDone = 0;\n\n\tif (RollResult.options.degreeOfSuccess == 0) {\n\t\tlet r = new Roll(\"2d6\");\n\t\tdamageDone = r.roll({ async: false }).total * -1;\n\t\tgame.dice3d.showForRoll(r);\n\t}\n\n\tconst hpRestored = RollResult.options.degreeOfSuccess > 0 ? (RollResult.options.degreeOfSuccess - 1) * repairSuccessTotal : damageDone;\n\tconst newShieldHp = Math.max(0, Math.min(shieldEquipped.system.hp.max, shieldEquipped.system.hp.value + hpRestored));\n\tconst shieldUpdate = { \"system.hp.value\": newShieldHp };\n\n\tawait shieldEquipped.update(shieldUpdate);\n}","folder":null,"sort":0,"flags":{"advanced-macros":{"runAsGM":false},"cf":{"id":"temp_qx20rfr41e","path":"PC Macros","color":"#0068b8"}},"_id":"rKUvXQS5vwnu9xmB","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.5.1","coreVersion":"10.291","createdTime":1663690776298,"modifiedTime":1671572023425,"lastModifiedBy":"UuTSTLlcnPmW5OOr"}} +{"name":"Display GM Screen","type":"script","scope":"global","author":"WtoVEYSz3jgVEWxB","img":"modules/nerps-for-foundry/images/Gm_Screen.webp","command":"Hotbar.toggleDocumentSheet(\"Compendium.pf2e.journals.S55aqwWIzpQRFhcq\")","ownership":{"default":2,"WtoVEYSz3jgVEWxB":3},"flags":{"combat-utility-belt":{"macroTrigger":""},"furnace":{"runAsGM":false},"cf":{"id":"temp_w4f9l9idxk","path":"GM Macros","color":"#940000"},"core":{"sourceId":"Compendium.Nerps-For-Foundry.shared-macros.wlMkpgkRmL6CVLFK"},"advanced-macros":{"runAsGM":false},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"10.291","systemVersion":"4.6.5"}},"_stats":{"systemId":"pf2e","systemVersion":"4.6.5","coreVersion":"10.291","createdTime":1663690776300,"modifiedTime":1673645353211,"lastModifiedBy":"WtoVEYSz3jgVEWxB"},"folder":null,"sort":0,"_id":"pxEKkFqTB1q1jJX4"} +{"name":"Repair Targets Shield","type":"script","author":"oiPWLVPNH7xQBULr","img":"modules/nerps-for-foundry/images/rpg-icons/ResourcesAndCrafting/Tools/en_craft_31.webp","scope":"global","command":"const targets = game.user.targets;\nlet shieldActor = actor;\n\nif (targets.size > 0) {\n\tshieldActor = targets.first().actor;\n} else {\n\tshieldActor = actor;\n}\n\nif (!shieldActor) {\n\tui.notifications.warn(\"You must have an actor selected.\");\n} else {\n\tconst skillName = \"Craft\";\n\tconst skillKey = \"cra\";\n\tconst actionSlug = \"repair\"\n\tconst actionName = \"Repair\"\n\n\tconst modifiers = []\n\t// list custom modifiers for a single roll here\n\t// const modifiers = [new game.pf2e.Modifier('Repair Kit (Superb)', 1, 'item')];\n\n\tconst dcByLevel = [14, 15, 16, 18, 19, 20, 22, 23, 24, 26, 27, 28, 30, 31, 32, 34, 35, 36, 38, 39, 40, 42, 44, 46, 48, 50];\n\tconst shieldEquipped = shieldActor.items.find(item => item.id == shieldActor.heldShield._id);\n\tconst DC = dcByLevel[shieldEquipped.level];\n\tconst skillRank = token.actor.system.skills[skillKey].rank\n\n const isReforgingShield = shieldEquipped.name == \"Reforging Shield\" ? true : false;\n let repairSuccessTotal = 5 + (CheckForCraftersEyePiece() ? (skillRank * 10) : (skillRank * 5));\n repairSuccessTotal = isReforgingShield ? repairSuccessTotal * 2: repairSuccessTotal;\n \t\n \tconst hasGreaterCraftersEyepiece = CheckForEquipment(\"crafters-eyepiece-greater\") ? ' (Greater)' : \"\";\n \tconst hasCraftersEyepiece = CheckForCraftersEyePiece() ? `

Crafter's Eyepiece${hasGreaterCraftersEyepiece}: +${skillRank * 5} HP included

` : \"\";\n \tconst hasReforgingShield = isReforgingShield ? `

Reforging Shield: double HP included

` : \"\";\n \t\n//\tif(shieldEquipped.name == \"Reforging Shield\") {\n//\t repairSuccessTotal = repairSuccessTotal * 2;\n//\t}\n \t\n \tconst shieldInfo = `${shieldEquipped.name}
Level: ${shieldEquipped.level}`;\n\n\tconst notes = [...token.actor.system.skills[skillKey].notes]; // add more notes if necessary\n\tconst options = token.actor.getRollOptions(['all', 'skill-check', skillName.toLowerCase()]);\n\toptions.push(`action:${actionSlug}`); // add more traits here in new lines\n\tgame.pf2e.Check.roll(\n\t\tnew game.pf2e.CheckModifier(\n\t\t\t`A ${actionName} -

${skillName} Skill Check

${shieldInfo}

Repairs ${repairSuccessTotal} HP on success, ${repairSuccessTotal * 2} HP on Critical Success, and deals 2d6 damage on Critical Fail.

${hasCraftersEyepiece}${hasReforgingShield}`,\n\t\t\ttoken.actor.system.skills[skillKey], modifiers),\n\t\t{ actor: token.actor, type: 'skill-check', options, notes, dc: { value: DC } },\n\t\tevent\n\t\t, (Roll) => { repairShield(Roll, repairSuccessTotal, shieldEquipped); } // for callback\n\t);\n}\n\nfunction CheckForCraftersEyePiece() {\n\treturn CheckForEquipment(\"crafters-eyepiece\") || CheckForEquipment(\"crafters-eyepiece-greater\");\n}\n\nfunction CheckForEquipment(slug) {\n\tif (token.actor.items.find(\n\t\t(i) => i.system.slug === slug && i.type === 'equipment' && i.isInvested === true)) {\n\t\treturn true;\n\t}\n\treturn false;\n}\n\nasync function repairShield(RollResult, repairSuccessTotal, shieldEquipped) {\n\tlet damageDone = 0;\n\n\tif (RollResult.options.degreeOfSuccess == 0) {\n\t\tlet r = new Roll(\"2d6\");\n\t\tdamageDone = r.roll({ async: false }).total * -1;\n\t\tgame.dice3d.showForRoll(r);\n\t}\n\n\tconst hpRestored = RollResult.options.degreeOfSuccess > 0 ? (RollResult.options.degreeOfSuccess - 1) * repairSuccessTotal : damageDone;\n\tconst newShieldHp = Math.max(0, Math.min(shieldEquipped.system.hp.max, shieldEquipped.system.hp.value + hpRestored));\n\tconst shieldUpdate = { \"system.hp.value\": newShieldHp };\n\n\tawait shieldEquipped.update(shieldUpdate);\n}","folder":null,"sort":0,"flags":{"advanced-macros":{"runAsGM":false},"cf":{"id":"temp_qx20rfr41e","path":"PC Macros","color":"#0068b8"}},"_id":"rKUvXQS5vwnu9xmB","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.5.1","coreVersion":"10.291","createdTime":1663690776298,"modifiedTime":1671572023425,"lastModifiedBy":"UuTSTLlcnPmW5OOr"}} {"name":"Add Treat Wounds Immunity Timer","type":"script","author":"oiPWLVPNH7xQBULr","img":"icons/svg/clockwork.svg","scope":"global","command":"// Apply to selected token\nawait applyTreatWoundsImmunity(actor, false)\n\n// if (game.modules.get(\"combat-utility-belt\")?.active) {}\n\n// Check for an Effect from an actor\nfunction hasTreatWoundsImmunity(treatedActor) {\n\treturn Boolean(treatedActor.items.find(item => item.type === 'effect' && item.name.includes(\"Timer: Treat Wounds Immunity\")));\n}\n\nasync function applyTreatWoundsImmunity(treatedActor, useContinualRecovery = false) {\n\tconst treatedActorName = treatedActor.data.name;\n\t// const continualRecovery = actor.itemTypes.feat.some(i => i.data.name.startsWith('Continual Recovery'));\n\tlet immunityTimer = { seconds: 10 }\n\n\t// console.log(`${treatedActorName} hasTreatWoundsImmunity()? ` + hasTreatWoundsImmunity(treatedActor))\n\n\tif (!hasTreatWoundsImmunity(treatedActor)) {\n\t\timmunityTimer = { hours: 1 }\n\t\tlet timeDescription = \" for 1 hour.\"\n\n\t\tif (useContinualRecovery) {\n\t\t\timmunityTimer = { minutes: 10 }\n\t\t\ttimeDescription = \" for 10 minutes.\"\n\t\t}\n\n\t\tlet reminderID = game.Gametime.reminderIn(immunityTimer, `${treatedActorName} is no longer immune to Treat Wounds.`);\n\t\tconsole.log(`reminderID: ${reminderID}`);\n\n\t\tlet macroTimer = game.Gametime.doIn(immunityTimer, () => removeTreatWoundsImmunity(treatedActor))\n\t\tconsole.log(`macroTimer: ${reminderID}`);\n\n\t\tlet effect = game.items.getName(\"Timer: Treat Wounds Immunity\").data\n\t\tlet originalText = effect.data.description.value\n\t\tlet doc = new DOMParser().parseFromString(originalText, \"text/html\");\n\n\t\teffect.data.description.value = \"

\" + doc.body.innerText + timeDescription + \"

\"\n\n\t\tawait treatedActor.createOwnedItem(effect)\n\t\teffect.data.description.value = originalText\n\n\t\tui.notifications.warn(`Target is now immune to Treat Wounds${timeDescription}`);\n\t} else {\n\t\tui.notifications.warn(\"Target is already immune to Treat Wounds.\");\n\t}\n\n\treturn immunityTimer\n}\n\n// Remove an Effect from an actor\nasync function removeTreatWoundsImmunity(treatedActor) {\n\tlet hasTreatWoundsImmunity = treatedActor.items.find(item => item.type === 'effect' && item.name.includes(\"Timer: Treat Wounds Immunity\"));\n\n\tif (hasTreatWoundsImmunity) {\n\t\tconsole.log(hasTreatWoundsImmunity);\n\t\thasTreatWoundsImmunity.delete();\n\t\treturn true\n\t}\n\n\treturn false\n}","folder":null,"sort":0,"flags":{"combat-utility-belt":{"macroTrigger":""},"furnace":{"runAsGM":true},"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"0.7.9","systemVersion":"1.10.25.2784"},"cf":{"id":"temp_qx20rfr41e","path":"PC Macros","color":"#0068b8"}},"_id":"v5M5v55uHkYOEY1b","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776299,"modifiedTime":1663690776299,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} {"name":"Roll Secret Perception Checks","type":"script","author":"oiPWLVPNH7xQBULr","img":"icons/magic/perception/eye-ringed-green.webp","scope":"global","command":"// TODO: Add option to select DC by level or default to PC APL?\nconst GM_NAME = \"Gamemaster\"\n\nlet DCbyLevel = [14, 15, 16, 18, 19, 20, 22, 23, 24, 26, 27, 28, 30, 31, 32, 34, 35, 36, 38, 39, 40, 42, 44, 46, 48, 50]\nlet pcLevels = 0;\n\nconst ownedTokens = canvas.tokens.ownedTokens\n .filter(t => t.actor.hasPlayerOwner)\n .filter(t => t.actor.type == \"character\")\n\nownedTokens.forEach(token => pcLevels = pcLevels + token.actor.level);\n\nconst apl = Math.round(pcLevels / ownedTokens.length);\nconst partyLvlDC = DCbyLevel[apl]\n\n// TODO: Add PC Stealth DC's if rolling for NPC?\n\nasync function postSave($html) {\n const DC = parseInt($html.find('[name=\"dc\"]')[0].value) || 0;\n // const traits = $html.find('[name=\"traits\"]')[0].value || '';\n // const flavor = $html.find('[name=\"flavor\"]')[0].value || '';\n \n\tconst SEARCH_UUID = \"Compendium.Nerps-For-Foundry.nerps-pf2e-exploration-effects.XiVLHjg5lQVMX8Fj\"; // Search\n\n let dcText = '';\n if(DC > 0) {\n dcText = `DC ${DC} `\n }\n\n\n let tokenList = canvas.tokens.controlled\n .filter(t => t.actor.hasPlayerOwner)\n .filter(t => t.actor.type == \"character\");\n\t\tconsole.log(\"TEST\", canvas.tokens)\n let messageContent = `

Rolling Secret ${dcText}Perception checks for selected PC's.


${tokenList.map(t => \" \" + t.actor.name)}

`;\n \n // OK, you didn't select any PC tokens, lets check for NPC's only?\n if(tokenList.length == 0) {\n tokenList = canvas.tokens.controlled\n .filter(t => t.actor.type == \"npc\");\n messageContent = `

Rolling Secret ${dcText}Perception checks for selected NPC's.


${tokenList.map(t => \" \" + t.actor.name)}

`;\n }\n \n \n // Ok, you didn't select any tokens so I assume you want all PC's that are \"Searching\"\n if(tokenList.length == 0) {\n tokenList = canvas.tokens.ownedTokens\n .filter(t => t.actor.hasPlayerOwner)\n .filter(t => t.actor.type == \"character\")\n .filter(t => t.actor.itemTypes.effect.find((e) => e.flags.core?.sourceId === SEARCH_UUID));\n \n messageContent = `

Rolling Secret ${dcText}Perception checks for PC's using the @Compendium[pf2e.actionspf2e.TiNDYUGlMmxzxBYU]{Search} Exploration Activity.


${tokenList.map(t => \" \" + t.actor.name)}

`;\n }\n \n // OK, so there are NO PC's searching, I assume you aren't doing exploration mode\n // OR your party is really dumb and has NO BODY keeping an eye out? Which in that case, why\n // roll perception? Ok, maybe you have your reasons, here, I'll roll for ALL PC's then...\n if(tokenList.length == 0) {\n tokenList = canvas.tokens.ownedTokens\n .filter(t => t.actor.hasPlayerOwner)\n .filter(t => t.actor.type == \"character\");\n \n messageContent = `

Rolling Secret ${dcText}Perception checks for all PC's.


${tokenList.map(t => \" \" + t.actor.name)}

`;\n }\n \n // create the message and output to chat\n if (messageContent !== '') {\n\t let chatData = {\n\t\t blind: true,\n\t\t user: game.user._id,\n\t\t speaker: ChatMessage.getSpeaker(game.user.name),\n\t\t whisper: ChatMessage.getWhisperRecipients(game.user.name),\n\t\t content: messageContent,\n\t };\n\t ChatMessage.create(chatData, {});\n\t console.log(\"NERPS: ChatData::\");\n\t console.log(chatData);\n }\n \n for (let token of tokenList) {\n const tokenActor = token.actor\n \n if(DC > 0) {\n await tokenActor.perception.roll({ dc: {value: DC}, traits: [\"secret\"] });\n } else {\n await tokenActor.perception.roll({ traits: [\"secret\"] });\n }\n }\n}\n\nconst dialog = new Dialog({\n title: 'Set Perception DC',\n content: `\n
\n
\n \n \n
\n `\n ,\n buttons: {\n yes: {\n label: 'Roll Perception Checks',\n callback: postSave,\n },\n no: {\n label: 'Cancel',\n },\n },\n default: 'yes',\n render: html => html.find('#dc').focus()\n});\n\ndialog.render(true);","folder":null,"sort":0,"flags":{"exportSource":{"world":"age-of-ashes","system":"pf2e","coreVersion":"0.7.9","systemVersion":"1.10.25.2784"},"combat-utility-belt":{"macroTrigger":""},"furnace":{"runAsGM":false},"advanced-macros":{"runAsGM":false},"cf":{"id":"temp_w4f9l9idxk","path":"GM Macros","color":"#940000"}},"_id":"x0W7ScATL0nBK9FW","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.4.2","coreVersion":"10.291","createdTime":1663690776301,"modifiedTime":1670873308505,"lastModifiedBy":"WtoVEYSz3jgVEWxB"}} {"name":"Process Persistent Damage","type":"script","author":"oiPWLVPNH7xQBULr","img":"systems/pf2e/icons/conditions/persistent-damage.webp","scope":"global","command":"PF2EPersistentDamage.processPersistentDamage(canvas.tokens.controlled);","folder":null,"sort":0,"flags":{"cf":{"id":"temp_w4f9l9idxk","path":"GM Macros","color":"#940000"}},"_id":"x84PaWKV26WQZcsz","ownership":{"default":0,"oiPWLVPNH7xQBULr":3},"_stats":{"systemId":"pf2e","systemVersion":"4.0.6","coreVersion":"10.285","createdTime":1663690776302,"modifiedTime":1663690776302,"lastModifiedBy":"bvlTPmzDPuQBXfIC"}} diff --git a/scripts/damage-dice.js b/scripts/damage-dice.js index 8af2114..1586233 100644 --- a/scripts/damage-dice.js +++ b/scripts/damage-dice.js @@ -9,8 +9,8 @@ Hooks.on('diceSoNiceReady', (dice3d) => { dice3d.addTexture("Electricity", { name: "Electricity", composite: "multiply", - source: "modules/Nerps-For-Foundry/images/dice/textures/lightning.jpg", - bump: "modules/Nerps-For-Foundry/images/dice/textures/bump/lightning.jpg" + source: "modules/nerps-for-foundry/images/dice/textures/lightning.jpg", + bump: "modules/nerps-for-foundry/images/dice/textures/bump/lightning.jpg" }).then(() => { dice3d.addColorset({ name: 'electricity', @@ -55,8 +55,8 @@ Hooks.on('diceSoNiceReady', (dice3d) => { dice3d.addTexture("Good", { name: "Good", composite: "multiply", - source: "modules/Nerps-For-Foundry/images/dice/textures/good.jpg", - bump: "modules/Nerps-For-Foundry/images/dice/textures/good.jpg" + source: "modules/nerps-for-foundry/images/dice/textures/good.jpg", + bump: "modules/nerps-for-foundry/images/dice/textures/good.jpg" }).then(() => { dice3d.addColorset({ name: 'good', @@ -77,8 +77,8 @@ Hooks.on('diceSoNiceReady', (dice3d) => { dice3d.addTexture("Poison", { name: "Poison", composite: "multiply", - source: "modules/Nerps-For-Foundry/images/dice/textures/poison2.jpg", - bump: "modules/Nerps-For-Foundry/images/dice/textures/bump/poison2.jpg" + source: "modules/nerps-for-foundry/images/dice/textures/poison2.jpg", + bump: "modules/nerps-for-foundry/images/dice/textures/bump/poison2.jpg" }).then(() => { dice3d.addColorset({ name: "poison", @@ -99,8 +99,8 @@ Hooks.on('diceSoNiceReady', (dice3d) => { // dice3d.addTexture("Poison", { // name: "Poison", // composite: "multiply", - // source: "modules/Nerps-For-Foundry/images/dice/textures/poison.jpg", - // bump: "modules/Nerps-For-Foundry/images/dice/textures/bump/poison.jpg" + // source: "modules/nerps-for-foundry/images/dice/textures/poison.jpg", + // bump: "modules/nerps-for-foundry/images/dice/textures/bump/poison.jpg" // }).then(() => { // dice3d.addColorset({ // name: "poison", @@ -119,8 +119,8 @@ Hooks.on('diceSoNiceReady', (dice3d) => { dice3d.addTexture("Bleed", { name: "Bleed", composite: "multiply", - source: "modules/Nerps-For-Foundry/images/dice/textures/bleed.jpg", - bump: "modules/Nerps-For-Foundry/images/dice/textures/bleed.jpg" + source: "modules/nerps-for-foundry/images/dice/textures/bleed.jpg", + bump: "modules/nerps-for-foundry/images/dice/textures/bleed.jpg" }).then(() => { dice3d.addColorset({ name: 'bleed', @@ -149,8 +149,8 @@ Hooks.on('diceSoNiceReady', (dice3d) => { dice3d.addTexture("Lawful", { name: "Lawful", composite: "multiply", - source: "modules/Nerps-For-Foundry/images/dice/textures/lawful.jpg", - bump: "modules/Nerps-For-Foundry/images/dice/textures/lawful.jpg" + source: "modules/nerps-for-foundry/images/dice/textures/lawful.jpg", + bump: "modules/nerps-for-foundry/images/dice/textures/lawful.jpg" }).then(() => { dice3d.addColorset({ name: 'lawful', @@ -177,7 +177,7 @@ Hooks.on('diceSoNiceReady', (dice3d) => { dice3d.addTexture("Chaotic", { name: "Chaotic", composite: "multiply", - source: "modules/Nerps-For-Foundry/images/dice/textures/chaotic.jpg" + source: "modules/nerps-for-foundry/images/dice/textures/chaotic.jpg" }).then(() => { dice3d.addColorset({ name: 'chaotic', @@ -204,8 +204,8 @@ Hooks.on('diceSoNiceReady', (dice3d) => { dice3d.addTexture("Sonic", { name: "Sonic", composite: "multiply", - source: "modules/Nerps-For-Foundry/images/dice/textures/sonic.jpg", - bump: "modules/Nerps-For-Foundry/images/dice/textures/sonic.jpg" + source: "modules/nerps-for-foundry/images/dice/textures/sonic.jpg", + bump: "modules/nerps-for-foundry/images/dice/textures/sonic.jpg" }).then(() => { dice3d.addColorset({ name: 'sonic', @@ -229,8 +229,8 @@ Hooks.on('diceSoNiceReady', (dice3d) => { dice3d.addTexture("Mental", { name: "Mental", composite: "multiply", - source: "modules/Nerps-For-Foundry/images/dice/textures/mental.jpg", - bump: "modules/Nerps-For-Foundry/images/dice/textures/mental.jpg" + source: "modules/nerps-for-foundry/images/dice/textures/mental.jpg", + bump: "modules/nerps-for-foundry/images/dice/textures/mental.jpg" }).then(() => { dice3d.addColorset({ name: 'mental', @@ -254,8 +254,8 @@ Hooks.on('diceSoNiceReady', (dice3d) => { dice3d.addTexture("Evil", { name: "Evil", composite: "multiply", - source: "modules/Nerps-For-Foundry/images/dice/textures/madness.webp", - bump: "modules/Nerps-For-Foundry/images/dice/textures/madness-bump.webp" + source: "modules/nerps-for-foundry/images/dice/textures/madness.webp", + bump: "modules/nerps-for-foundry/images/dice/textures/madness-bump.webp" }).then(() => { dice3d.addColorset({ name: 'evil', diff --git a/styles/nerps-for-foundry.css b/styles/nerps-for-foundry.css index 1ab7de6..5d29e39 100644 --- a/styles/nerps-for-foundry.css +++ b/styles/nerps-for-foundry.css @@ -1,45 +1,45 @@ /*NEW FONTS*/ @font-face { font-family: Fire; - src: url(/modules/Nerps-For-Foundry/fonts/chp-fire.ttf) format('truetype'); + src: url(/modules/nerps-for-foundry/fonts/chp-fire.ttf) format('truetype'); } @font-face { font-family: Air; - src: url(/modules/Nerps-For-Foundry/fonts/SomethingLight-L3VAD.ttf) format('truetype'); + src: url(/modules/nerps-for-foundry/fonts/SomethingLight-L3VAD.ttf) format('truetype'); } @font-face { font-family: Forest2; - src: url(/modules/Nerps-For-Foundry/fonts/Castal_Street.ttf) format("truetype") ; + src: url(/modules/nerps-for-foundry/fonts/Castal_Street.ttf) format("truetype") ; } @font-face { font-family: Lumber; - src: url(/modules/Nerps-For-Foundry/fonts/Lumberjack_Rough.otf) format("opentype") ; + src: url(/modules/nerps-for-foundry/fonts/Lumberjack_Rough.otf) format("opentype") ; } @font-face { font-family: Jade; - src: url(/modules/Nerps-For-Foundry/fonts/Jade_20Monkey_20BTN.ttf) format("truetype") ; + src: url(/modules/nerps-for-foundry/fonts/Jade_20Monkey_20BTN.ttf) format("truetype") ; } @font-face { font-family: Immortal; - src: url(/modules/Nerps-For-Foundry/fonts/IMMRTLT_.ttf) format("truetype") ; + src: url(/modules/nerps-for-foundry/fonts/IMMRTLT_.ttf) format("truetype") ; } @font-face { font-family: Horror; - src: url(/modules/Nerps-For-Foundry/fonts/wet1_becker.ttf) format("truetype") ; + src: url(/modules/nerps-for-foundry/fonts/wet1_becker.ttf) format("truetype") ; } @font-face { font-family: Pirates; - src: url(/modules/Nerps-For-Foundry/fonts/HelloPirates-PersonalUse.otf) format("opentype") ; + src: url(/modules/nerps-for-foundry/fonts/HelloPirates-PersonalUse.otf) format("opentype") ; } @font-face { font-family: KaushanScript; - src: url(/modules/Nerps-For-Foundry/fonts/KaushanScript-Regular.ttf) format("truetype") ; + src: url(/modules/nerps-for-foundry/fonts/KaushanScript-Regular.ttf) format("truetype") ; } @font-face { font-family: GreatVibes; - src: url(/modules/Nerps-For-Foundry/fonts/GreatVibes-Regular.ttf) format("truetype") ; + src: url(/modules/nerps-for-foundry/fonts/GreatVibes-Regular.ttf) format("truetype") ; } @font-face { font-family: Iceberg; - src: url(/modules/Nerps-For-Foundry/fonts/Iceberg-Regular.ttf) format("truetype") ; + src: url(/modules/nerps-for-foundry/fonts/Iceberg-Regular.ttf) format("truetype") ; } \ No newline at end of file