From 4ffa690aec8b0f7707218accf5a2107861c795ef Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Mon, 11 Aug 2025 02:02:06 +0200 Subject: [PATCH 001/260] Hotfix 1.0.1 (#825) * Updated the background image for the system * Fixed so Weapon/Armor features are added again * Fixed so fear is available as a resource to be deducted by actions (#757) * Changed to use the config labels and src * Updated Weapons * Fixed so the decrease button of simple fear tracker is not visible when not hovered * Fixed so armor preUpdate doesn't fail if no system changes are made * Updated .gitignore and author details (#777) * Add author details and name mapping for chrisryan10 (#773) Co-authored-by: Chris Ryan * Add build to ignore for my linux dev (#775) Co-authored-by: Chris Ryan --------- Co-authored-by: Chris Ryan * Corrected sneak attack active effect (#780) * Fixed a spelling error (#779) * Fix bardic rally showing in damage dialog when it should not (#783) * update spelling (#786) * Translating inventory descriptions (#782) * updated credits for 1.0.1 release (#797) * updated credits for 1.0.1 release * further updated artwork credits * Chagned handlebarhelper rollparsed to be more defensive (#794) * Added missing scene refreshType (#790) * Remove ability use buttons for not owned abilities (#795) * [Fix] PrayerDice Fixed (#799) * Fixed prayer dice, and wheelchair images * Fixed -settings data sources * Dragging features from one adversary to another (#788) * [Fix] Levelup Fixes (#787) * Fixed crash on experience selection. Fixed subclass error on multiclassing * Fixed so multiclasses do not gain the hope feature for the class * Fixed so Class/Subclass features are properly deleted on delevel * Removed automatic deletion of features on delevel when not using levelup auto * Fixed so custom domains can be selected in levelup when multiclassing * Changed so encounter countdowns is a button (#804) * Fixed so that dropping on class/subclass...creates the item on the character (#803) * [BUG] - Importing All Adversaries/Environments (#814) Fixes #774 Co-authored-by: Joaquin Pereyra * Bug/671 reaction roll chat title (#809) * Update Reaction Roll Chat Message Title * Removed console log --------- Co-authored-by: WBHarry * Improve Trait tooltip display (#817) Fixes #806 Co-authored-by: Joaquin Pereyra * [BUG] - Combat Tracker d12 logo not found (#812) Fixes #764 Co-authored-by: Joaquin Pereyra * Compendium Browser (#821) * Corrected timbending description localization (#816) * [Fix] Compendium Item (#810) * Corrected Emberwoven Armor * Fixed subclass regression * Fixed so character's with wildcard images don't break beastform (#815) * Fix roll result based duality damage (#822) --------- Co-authored-by: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Co-authored-by: Chris Ryan Co-authored-by: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Co-authored-by: IrkTheImp <41175833+IrkTheImp@users.noreply.github.com> Co-authored-by: CPTN_Cosmo Co-authored-by: Josh Q. Co-authored-by: joaquinpereyra98 <24190917+joaquinpereyra98@users.noreply.github.com> Co-authored-by: Joaquin Pereyra --- .gitignore | 3 +- README.md | 2 +- .../documents/items/ArcaneWheelchair.webp | Bin 0 -> 10784 bytes .../documents/items/HeavyWheelchair.webp | Bin 0 -> 13400 bytes .../documents/items/LightWheelchair.webp | Bin 0 -> 11282 bytes assets/logos/FoundrybornBackgroundLogo.png | Bin 0 -> 55426 bytes lang/en.json | 18 ++- .../characterCreation/characterCreation.mjs | 22 ++- .../applications/levelup/characterLevelup.mjs | 2 +- .../applications/levelup/companionLevelup.mjs | 2 +- .../sheets-configs/adversary-settings.mjs | 14 +- .../sheets/api/application-mixin.mjs | 3 +- module/applications/sheets/api/base-item.mjs | 66 +++++--- module/applications/ui/itemBrowser.mjs | 21 +++ module/config/generalConfig.mjs | 12 +- module/config/itemBrowserConfig.mjs | 2 +- module/config/itemConfig.mjs | 24 ++- module/data/action/baseAction.mjs | 9 +- module/data/action/damageAction.mjs | 5 +- module/data/activeEffect/beastformEffect.mjs | 2 +- module/data/actor/character.mjs | 11 ++ module/data/item/armor.mjs | 2 +- module/data/item/beastform.mjs | 3 +- module/data/item/domainCard.mjs | 9 +- module/data/item/subclass.mjs | 5 +- module/dice/damageRoll.mjs | 35 +++-- module/dice/dhRoll.mjs | 2 +- module/dice/dualityRoll.mjs | 7 +- module/documents/actor.mjs | 144 ++++++++++-------- module/documents/chatMessage.mjs | 5 + module/helpers/handlebarsHelper.mjs | 4 +- module/helpers/utils.mjs | 7 +- .../folders_Tier_1_sxvlEwi25uAoB2C5.json | 7 +- .../folders_Tier_2_OgzrmfH1ZbpljX7k.json | 7 +- .../folders_Tier_3_wTI7nZkPhKxl7Wwq.json | 7 +- .../folders_Tier_4_7XHlANCPz18yvl5L.json | 7 +- .../feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json | 10 +- ...feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json | 4 +- ...mor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json | 14 +- .../weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json | 35 +++-- ...ane_Frame_Wheelchair_la3sAWgnvadc4NvP.json | 35 +++-- ..._Advanced_Broadsword_WtQAGz0TUgz8Xg70.json | 35 +++-- ...avy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json | 8 +- ...ght_Frame_Wheelchair_BuMfupnCzHbziQ8o.json | 8 +- ...dvanced_Small_Dagger_0thN0BpN05KT8Avx.json | 33 ++-- ...ane_Frame_Wheelchair_XRChepscgr75Uug7.json | 37 +++-- .../weapon_Broadsword_1cwWNt4sqlgA8gCT.json | 35 +++-- ...avy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json | 8 +- ...ane_Frame_Wheelchair_N9P695V5KKlJbAY5.json | 35 +++-- ..._Improved_Broadsword_OcKeLJxvmdT81VBc.json | 35 +++-- ...avy_Frame_Wheelchair_L5KeCtrs768PmYWW.json | 8 +- ...ght_Frame_Wheelchair_ZJsetdHKV77ygtCE.json | 8 +- ..._Improved_Shortsword_rSyBNRwemBVuTo3H.json | 33 ++-- ...mproved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json | 33 ++-- ...eapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json | 35 +++-- ...weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json | 59 ++----- ...ane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json | 35 +++-- ...Legendary_Broadsword_y3hfTPfZhMognyaJ.json | 35 +++-- ...avy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json | 8 +- ...ght_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json | 8 +- ...Legendary_Shortsword_dEumq3BIZBk5xYTk.json | 33 ++-- ...gendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json | 33 ++-- ...ght_Frame_Wheelchair_iaGnlUkShBgdeMo0.json | 8 +- .../weapon_Primer_Shard_SxcblanBvqaest3A.json | 19 +-- .../weapon_Shortsword_cjGZpXCoshEqi1FI.json | 33 ++-- .../weapon_Small_Dagger_wKklDxs5nkzILNp4.json | 33 ++-- ...weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json | 33 ++-- .../weapon_Thistlebow_I1nDGpulg29GpWOW.json | 35 +++-- ...weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json | 2 +- .../weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json | 35 +++-- ...pon_Widogast_Pendant_8Z5QrThfwkYPXNco.json | 2 +- ...elcome___Information_g7NhKvwltwafmMyR.json | 6 +- .../adversary-settings/features.less | 19 ++- .../less/sheets/actors/character/header.less | 4 +- .../ui/combat-sidebar/encounter-controls.less | 41 +---- styles/less/ui/item-browser/item-browser.less | 25 ++- styles/less/ui/resources/resources.less | 2 +- system.json | 5 + .../setupTabs/domainCards.hbs | 4 +- .../dialogs/dice-roll/damageSelection.hbs | 4 +- .../adversary-settings/attack.hbs | 16 +- .../adversary-settings/details.hbs | 26 ++-- .../adversary-settings/experiences.hbs | 2 +- .../adversary-settings/features.hbs | 5 +- .../companion-settings/attack.hbs | 12 +- .../companion-settings/details.hbs | 10 +- .../environment-settings/details.hbs | 10 +- templates/sheets/actors/character/header.hbs | 10 +- .../ui/combatTracker/combatTrackerHeader.hbs | 21 +-- templates/ui/itemBrowser/sidebar.hbs | 26 ++-- 90 files changed, 918 insertions(+), 659 deletions(-) create mode 100644 assets/icons/documents/items/ArcaneWheelchair.webp create mode 100644 assets/icons/documents/items/HeavyWheelchair.webp create mode 100644 assets/icons/documents/items/LightWheelchair.webp create mode 100644 assets/logos/FoundrybornBackgroundLogo.png diff --git a/.gitignore b/.gitignore index 61c6b176..264581a4 100644 --- a/.gitignore +++ b/.gitignore @@ -2,5 +2,6 @@ node_modules /packs Build +build foundry -styles/daggerheart.css \ No newline at end of file +styles/daggerheart.css diff --git a/README.md b/README.md index c40a27a3..fda78b4b 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ This is the community repo for the Foundry VTT system _Foundryborne_ Daggerheart ## User Install -1. **recommended** Searching for _Daggerheart_ or _Foundryborne_ in the System Instalaltion dialgoe of the FoundryVTT admin settings. +1. **Recommended** Searching for _Daggerheart_ or _Foundryborne_ in the System Installation dialogue of the FoundryVTT admin settings. 2. Pasting `https://raw.githubusercontent.com/Foundryborne/daggerheart/refs/heads/main/system.json` into the Install System dialog on the Setup menu of the application. 3. Downloading one of the .zip archives from the Releases page and extracting it into your foundry Data folder, under Data/systems/daggerheart. diff --git a/assets/icons/documents/items/ArcaneWheelchair.webp b/assets/icons/documents/items/ArcaneWheelchair.webp new file mode 100644 index 0000000000000000000000000000000000000000..ae8e0e376dbcb95b3dc251b61198678d7c62ceb7 GIT binary patch literal 10784 zcmV+*D&N&oNk&E(DgXdiMM6+kP&il$0000O000300093006|PpNG$*W009@!|A+{v zjwHicnMs1oL_J@)M@0W8AOl{)8_mxjdVa9)zwf{AzYY>U16}}DP&gp2DF6VFrU0D* zDgXfh0X}UmlSZT>p`j|19hiU(iDUrDhHKisrDmUs?|c2X&Zl-!-S5XYfAxK1d5Cln z^H2Mk>go9_@3Z^|s0Z}UseeIEm;Wmq9+tjqfAl=q^LN`$rnb}nBf=g7uitVL?|kd~ zXRh-=zvy4({bB#$^56Rh{C{CinW!GEli~DYWUirNF4ADBFSY^`M5CYcjCiB+LOZO3 z*m3l!*_2MAa^0EOw4XCy7ybZ^cX=X22;tq;2KR59k1p=>Bs8@!Md=E%0bsu%?O{Py z4fg*^Pq6?x6{=Ak1jpUJh10A-E*xi=tFrKzXp(*8Lu=9cspu0+#(D=tGtm8MWup6^ zy+!$M?rQ30H}xuE-~Z@vIe-09h=r9*FsEhKQ6%Qnzq&+}H|M@>L(qC{kwA~ol1qD2 zbiyu;3+(}@oeVTXDtl`Lv!jXRJ3(6d_mWz&4JX6`{r9mt2XckKz%JbzSjgT5G2V_3 zHQN8*-?TMcW@(S(L#~lnMN+ruGM!_0C$&=Dh|#s@1}-E1MR)5gHfr{>?Tz#;{)KXs3sEWH;D_ z%{3A!L5}J5ftJ*RtxN#0&cft&Zf68sdsl1vZuPXc%+BDtd8fw`#_60l#;Rp+pMo7u>9#HVotOw3INRswA1>am zWM9?;k%J44HyG%vRKX)md!%y9H7b{umD2cA%6>=rQy*rh=F?tLqI0H+UXt+eUKE$t zdJ$70xel}Bq7bdBB7Q93j7sk!+ff36TA+pvbO8%({?Ux;@oB5HuPo&us}xVX!(vzr z@0;m)`Jc*E8`=SCZEKi{)+{G+dTyi{%`zy@R4mjIC4vI_%@p@^b+6)IrUSz7*DNH* zD+7EDSdIdBJF=zYZJiJLh;Em zsef8s+vJ`iR$@;f!yEP{UJe?x)djF6)XSVm#xrW4U3VVPwB@6Rm?t56e;=e6 z9@2o#AlP7N8{^5r8vTvOAk5+&p_9wus6f>X1&Cu_G5EiKHATzOJ72O7DmI(gxmR7x zlC(mVn34~oc^MbW8FP)1oF|BtZeE@>m=(fY@~=%y(p&+;&AxppPrs?{1BP}!^^-Cn z9a%XGRml?7U$eFqD4jS(6y73|HIN&W}iR6Z)kQ(mzC@w36PubHnO>?=99 z;qMK6d}{H)Zodgbb7KETqE=s6>_%OEsjq@mootb@4u5S5u4Ac5U)Z0%SFiP0xxa3S zaj3h1+f>%_Wa}rS#&L^rmzb)q5GMg?St5K^U!ObRJVtv8zTG1fXe}@!0fg`wVb4(x zhe6Rf5n0~0JS}1Wu0^iy*B6#UHrB#aVR!;pD1w(DOc5w6K~KP*SN(&pr?qgeCJZXW z{-mRr<9l=A5`9yj3zpB3|AX7EoEOWJ|MNe4U=+0Dgmyu_5peGw*S~9iV0RH`&ERrGBDRAB|FRD8BlpA~8TEk1s2Zlj!4T*3&6LR8WD5~; z-*5`!;Bwl8J|i^HyeZp74Z}$4-+=#Z2H-Iv^NXgDK2!m9$#Mvq;|xiirGxIZs*k)vvlYbPq5trhdZY_TZ|H`qoU!4lP=X>ea2HDqBO}$C)RS8oAiIx&UFs+ z2)qtR{Lh-@(@4fE$xs~B|3m%Ut$RlwdSoQ>2VHJT&IDHEd3~gvX?AGOwoa(FGO5H0 zlQ|3euB#h%5H}1;P%-NIID#1Uw)>2UIE;~Dh1Fp)ekHh6FhaTbAMy3+HfuL8I zow|}u-``?jQ5JG+4q$>t)#cPpY%c}$L z(LicbXb{j$%hzUsubvynpCTDCjtVk#>mLs`b_W$xyA^w9~gfAQZ zvt7*GCX3SS#vNSKTsy)_m99Xf#?sAwvbeDBmJFSEK7*BB@N2ETMz6r9HLSp&}eZ!KA02V0BhM|##e&*CUab2h(5OpT{CT8C5^ zK;5}`gSGYbVNS#M*X3oSJlfpBk<*S1IS&0u&p{ zQNhMq1`AW88N2IPs&&{C)itkR?J*+eE_(x-^yCN)Paf_2(#CR}sLw}@;qLIf{zlJ6 z&-6cTY_tY^{c{*)+-V@qvdj~+X7fXG^Z8#J0xOA;@Z+8`wE9i|I3)ii=tTb}JdC8H z#LbW|4eMg7ZCBi89N@g$vEeG6Vv!$}+GJOSSV=1rB0*6o5OfRfBKv0%e!_h`L$>+VRc4C@-2zhdH!_dGmz8MdC`> z8e3spQ{$S0Z?9(jn?dwLy%rncC%w={i5R6Ay|uY16@oVNj>JXW>FT>kRo>AdCFJ0X&Kmv6w{OvGh3&g_q;(v9(q~Sosh=R+0q^L24-E z?{a_ZQbx=h0@`n7{l4y~@OltYjYI^?Op?o#*9#ffZgNh*e8z1c`5A40J+ksSJw~IS zn=8!PesZmPkVbB=mCIt5ofYA4yHtL{x0(j=>X%>3O&U?g`m>Nbn%|}Rr>;QJ9Fb48 zXFJC>(!4&V&PD1OwFQHQ{jqX6&CB2U0hZ&zes|~K4r~nJ|ECAN7U^ypkC><90Mo}& zHpqb;7QKCA`Jh4Lf`X_QzQ-+ajmWCEjiJgET!}o}lPgKB%_WqkB!DP=uJO_!gSBXk zK_z_Wpvu}$1?R8E?Nk&{pGEK}0A3^B#z-krclCkujn#1`J#P5IxTbo-@ z5w#A#Kli-rAU#>p4l{h(_|c2=V8!IkT|rIVh8WC2^j-0`CtIH9Y0f*D-w+l;yCQ@6 zv-THf=~R*&14xKe#B*gQD6;+9-;JIBv<6P|~a+TK&k^4Nt|AthQ=GeJ3!!v5C%5nLp5)~bSzDpF^s5G9?{4etGj<$5h{(>p6o$tdP za`ECwHBO&?e@#=wtk%Dqk*q@fNv8O?r~w&njbl>fd+&2I8MGs63UZm12i7}`gulUg zRLvO>;oDi!(8=idm#Q#n*I0LXq9tr8Om-U+jt|rR;_>qXG0HWDZAl0NdALVjK!IBk zOk#L6eXWL?If*N zuPS+UIzKH(hk8w|pg&>*!0mUgTR<=-lS)Pr8^;WW#+c@lo!QjqEX&%2QEd2&@gm)2 z1_?~LYi_&r1u$JujAYkBmM4v%c~XC>EfuDeqCWof$OXg%$bRQN$As~iv$>@=|2+(V zBLq$)bG{a1yz#$`GuGg7z0;cmyL<(pWX-asR4ttBwv2i%;!6n&2+Es7Yi9y67vO!f zk|J`pG!nRE1$UGpy+YBkj87(Iab zI^dHy$zhbL_BpC_rTP9}{hgMpWUePH#43)SD1L-jGk8|L?YA9%1mu&amF=NMb(GRk z<0%Z_aJu@md}hz%&s1w@y9_o3l_kco$vwVZN~tc1;Xc3oWDaJm>6IJ#_=W*)5*@gMw-AXqFLIe9bg206`I<&=INDI=7-=G<&i= zRaawn*Jj8Mavc#Q3;;zZ7PW8;f@-9N^YF0Q$9SFw8*vAAr78iaqKxOw$tZVd8&g$! zBpcd=p|TN8bM?2&ms;FJ8Xqq8wrK42*#Z~D!DL4}dgQwVd+026TX5GVF%+ebJzQ zKLYxa?8EcYWqNl`^H1IfAFs{%V{yJN(ghZ-#hN&M0MiW4Xe4S@n8>`l;HgHpdJp(t zBF{T_H>P(zlYUyMP>JN4>1*=4&mH$47Ph?V7vWZ_;1c`iut{qd0Ogx%FB76{_0fOL z!=Dpu3ODdS0bxDR2in;3YZ@@RG>Y71fOHSf2YM89@oqTfqND(Gn9)UoC~-LL@oC_9 zu@DNhcA-~KGhBU5oRuhl;6&`z%3%X zQx|Tkf?o6KALEU(@9P3^a+qVpXLzgT&#v-*3yJ(u!J3Y zE^oJ{>sUZ8Q=eH0vBYvzZ)lrZmP?#xvupERk1epHHVnL9+9o7KFtZzosHK-N;g-T; zY#jtdeGLM-=}Ap@px)ZoqkYw_%A-nczI#l&j@`!t!4`bC1JJh|93w)cX-1LwCPO!MXh z47>E_RP#uOl#To&3R~@D@$EY!cvtxoaRk+eUh>d-i9QJ2HQk^S76h(sEZ<_;vE8t?H3-I4ZkE$K95wa0 zg6fIaq3(1)$1C(UjGy2LJjdh)l#0IIPR));(4yT9S%XlSOFk8P1?~(Q@MZk2ZH)j= zM2{w+4u*Eyb6PzOJ#W`J7Fi)~oxsMBg+wT{_2pxu|2Swr)Or|)A5YTN2Sq-&-ej#7 z#IZp{FOlhgq#9A#*Fr9Nn&W$u5{*{jPT^Z<+I*F|5uNr^^bmBAEU_A44dti^YA84; zDDi-MPd+wDxRJFHDEDS)5cv{R(*-e^50Cy>-1ugr)5l zMwT4coAj_0m%5Y2S~O|x!>`c^Ld7HCsC+(%f)Tr!z*W<>3o!o43o5i~4-L|f$1&NV z*Gz`CWb=TFZbZZUd-l0cM6(0^8vmT76%&O8gPHF0TwSKMgtU6aCdLhRc{4B#>&1+Aw(<2K(Ft&r;Q+mu~)&I@wyf z@HI1fX|`vNE9Ph$3hhNN^Uw_={#r2#>M2wNn)Q2UWqHbwEkAH2W!{>`JehBx=c54v zlq+Jek7@QM!C80T0;hZ+iFbgkg|tBWNqg>_wZZZ601L?@n{{ZMmYpf@sY`3#GRtf9 zhVTUOyJ3|cv?jsBYy&%0dDv;Vd5jC$-jZ&>kjREtV6@5l?8%8S2qPoi04U27+fsz7 zLlnc4IRG|eYx;lc!wFB#O|d4&Jfe{o-FdrwjK^4x!*;ypxG^6(SYIQb#u6x+MOc>QSj%L)U=bMHzdr_WU|dx-{0y>RN=^CQzYV8QEJrIW+xf!m=oEy-Z5r=>EU=L|uc&A)V-)!S-%g$XyN6KbzoJ=tg| zzMG$CRucAg&72fECL$*bbB>t8xHySPWKPe(D?B!e&bY3H-rOX}UdW^{TpSUF*|mbC>uqkUvV8p36t zuR_xuCel#KpLMmX>Eh@gGw}uGHxo?Q){obbe~7xvK1Ql|gLdwYhm3j{)s|>UGi#mh zA+b8EdX-d%Sw^;fgiWNDv>mg-s^`tqlGa%P!-71317ENKVKkH55N`d+KYV`k~448RJ{`sYad*}~n^Q34g z4Iz*Dn=M7j{Swfw&WZ$2bW>JwVQJSUJ-exLgBiO>0KzHoDtl@v?g>MkJ`>OiCwD!t z1cRB9ky%L!6tRHzgF;LgY9!qVMeaBB+;|+5b>28O{=?b{`;Xn$3^dQez40>DSmAGu zw{bp9j8#b$V_2djm2U9ixuMeA1?8OUeAJgk0Iu76WvH z`4dT^x&iwXL84$9Y6cGC(4V69gK8@7i-WM+L|8%pwWE4c@3(mGlo1Vl{?Z>O|8{eG zj&9F*hot4mF*;Lwx37Y>X5q9pZZoz4?)hVxsBG+~@g;%1LFTUwg5c~OYnCNx!;)>$ zc>tx9#2l^wg@Y2E)*xv5-I2?4<4@s3Uv(n?ZD>4OI77a0v6uxhMg%xfg?|v>k|pXA zeL)4_fquQbYC)$(+ts#9msSd?n?Jnrn>Ct~#ymFB;3XIiIP;K7mZMZ$WNKWikh_Nh z(oin}E1daY#)_&5K1ri-#!zPHJ5%<3bHBY%YKT&jK|_yAZey#LdEa3O_y_d4L^EC? z*ZJ;2Kyly>W$&lCy4I+)9V99SuKmzn0LdBYTRCRPrr{WLOZofFq5GD~7deW-xLPQfvoW)G6YA$rBrD(DRBJ0B$%r@J3mce>Lv2$g{0 zS0_=af@Ka}ZGKI*zkfQ<`R`JG)Lrz=p*s4;6p9wej~4I3q9eJ@nG<*f6SI9R2)t`k z4oq^+Q)c<*n#9dEt+uJvvwPBwy^N zU1|)YO1gi+}vc=nibMjDy3oT6LqhQTvW* z71<@=%FiC81k6D)6%Xu_AJSEISqhD`crfE2Y`tnBd-g(nDs1f@K{M$Ka;rmyR<6=P zbL&=}!fj>YrKi$7*9JUH)+nt~t1)RKk;%8CmQ;Kj#$eXFC3fgLUX!T*2&}5cfu-;QEtj2nOu)S-4Wh$>$z8PpHg=y5GyxJM~ z+pk~5TdE1Y*-y=0-XijMK0qtT*c^pFX^@IS3Qd|C6^sVp#@#lCFrp%%?ByH~nXy%q z3_p2l_Tnyz_Nv|9SEMsZxM1k{PMJT9h0c8AFMZv!=~sMw$tlkRTv z`V$Q?xuQYI1O%VHo=u2q=tfzI155WyXu(0bm;v7!l=~?4T}1p^f)kAhSSSID22agL z@k%s%!ocEXp=@i4M!lhy&am^@k>O+=aK&xiaY=Y-cWN7n3+{-_cG5Nmb3uk!I?QQR z{9w-3T0&qynAAYijTlATaETrU{{;y~oG9StJQTUdh&d^emrFDIPj~t`3hrXgF~YUH zl}V^vN8-Ku^KQ2ke#=@eI8!^V;NCF33k3$le}{ytte#ILnfJJZLRD_0sQR%w3ng(O zQANvjCNrM&EQT@yT6zJQU=FDcwu7Y^DTaOW?h`?b#0cXPzH!2Z_|^bDwudOe2vKb4 z8$=keJh0?k;#Oej=Iwn&?ld_Xs--C|z5MjOqXYZvAIf4&Zb{7YK^c*ajIG{&D^@xs zAbF1{z!yW|-u1h+XZS|71|;i^2GFE#>fCuQC0CRW`8dK^LOd?iAn(%_mpCHp>HFsQ z*mu6qyohJ*_x@5$RZt%(N{on(+8|j%#*br$wYyxbZLx{yUx)7u74g6RDf27)%W4oF3d>_ai#GL6XRKY;=&M+b-Y~uZBmZQ zsh60iBxQY|540-#K{H3$+#BA1w0X!~PsYFpcsqNJMB0}rC;UrY8OgoFG?J$ICNSVm z%{Fhd{-QEY+EY)2U^{mXliifLRFh)C z$r-W9A-1`T^_Z@86P9+%(%F8-bj`>&tktATVBm@WkOXW@*3VR8yL zi3Ug-9A4V>;1;}^$mTXJEG#+=Vug`9{_3J0m+2BKXBr4pHZ35!yp`%sCTwATYsyiy zT{K2J`t=d_Su(^$2`NVn^_T?9m9>~tp+S^Po*ex*Yk>UH1;g=Zpjh^PND1JA=pKaV{f>Kdiz}pMS9iQ2S^N&%)GJ>3VaLFZ;Wrgii+C>C0A_U~q}luIJ020a8c2Kb z7!v?29N(J&x5P`Kek#ZQdB@veGA@ZOd+rU47pX8fi>91NsE!Zw`WJljguR_HUE}aR zKl_i+C}3h*K_DD<*%0C(?(4w60D1rG653}{q_vPhlCZ=jIjs%7)66JcKOnu-h{@7SaJ21&$hP&DQiPDMNi!0J}| z1iIJ14>iD{)Y}_+RgK5AYJ_jow3>GEQ__2!yyA{?X9H?d^BG+@Fk?(6ndhD0L1f`Y zK}e2@Lhog_@%|qSF)9#@z>TOZc`(#S6bC1OnnR%^7j?UAoKfMZI{1v_4kLeuC8|)w za{u;ZfCgvz5rE05C0DAFIe|8^*m&TLh_m*e*A>(`wV_xyN@|v4-aB_*ts)$<$KOXl^0tDauGJO2%6V% zTd91GR&TVHOzf>?TiykA)bJ-2P`2pJ_$-2duKmZ*6IEpheAo5eDa+twOd*C_qego) z1waKIgZGAx&PS5(yS6||x=3?`WTpiSjtNY6m9zclBQS3U+2MU_0Jp~DfBx)Ijmd5W zlpgxl0n%GmEIt6S+xFdz?@jyji_R4NUr*2@Fjghk65Kc1Q&t=@K4HqUN3_>OTr*$0)WMS@Bs{(y)UYz*`47ij|X( zHW8?dl7s>4FM#C9W?j`T43C_>eVZtmw;P(IC%9`K<7NL;d{-uj=rMnRJFQTsD4(i# zl!-*|ejD4dj&T6i(P|w>fHycWLe-7t)9azrk1VbSCiCxRY?Nb||F0QM-21hn`xi<_ zO*e-ib45oD`f)KKR~`f?=Y0V`@Qc4@--^qzt?R80)qeN=}hJ8Y|nEUW69Yh0sd*+3!(=obsYgnK$4Q#_qB# z_80Yg-q^VrL!nerTP}shvn3le`-fiDT&(`ac^RWi;12y* zbx7<>+0nRLGO2E6X@(9sh%d*Frp{c3<-L-!ABasRfzLsu ea325w07Y0yMh*Y~08LE*DgXcg2mk;80000UzTmF_ literal 0 HcmV?d00001 diff --git a/assets/icons/documents/items/HeavyWheelchair.webp b/assets/icons/documents/items/HeavyWheelchair.webp new file mode 100644 index 0000000000000000000000000000000000000000..e82071eee3026d29d7898a7d4a72ff3d08db1c55 GIT binary patch literal 13400 zcmeHtbyOVBw(bzz-EA1$o!|r?2oAv|gZmH$cM0xH8{n1QRGpTFO$S|q(W6diKE%H-Nm zU+UHHHN9^*C*1n<9X8TFg?-+xcDUQV>9sC~+ys$uKaMZ(95S?XnLN2Np$MC&IDQCT zkr-{2x;1DI0^Bz~jGsE)K%e@}-@qMxQhR!>n$LJ6u6y5gPIMRc@M-pNyn+ljrrbNc z^SUJn^l*JzXhOs(wWrUZk9~K1Hb=y7WNGWHq8I?1rRQCP8PoZE;X?j736`|WaWwE+ z$$1EnUch;c=~CR0V{D@P{l^wbvzNoEEe%?+QSCdi^j$OkZ+A;@fyO(-YHvOE)04u~ z0hEnqEqz-;ZKXnnO{FQu5%SA7YeJlL+44U0V2o+SdCTW7)cclAc@bC1rl^k=kk;%2al>;K zM}Q)v_+AyaSvUnFh658ELN8nf@{s2m8|0!oN7)FgB5cIXzoeSd)+Ni2f8Wd3F>B8} zvDFA=RG~WQTJ+btK3TV<;qH|#lpn07vK%`X+Gn^M2t-_NR&8$9JZq$T>J?B7eO?$t zTPqb$hGR_+VXgX#*kzd~V&hqkcX!{*XB0Xry_G0h^uF2TD}z7di~A~ut7eLsLCiza z{T&?2xRePTk;zH8m}0iT7^cG1#wAFGh=nA4Nl*@{v5T0)e!jl@ zrOE~%91*U;!CvJk3%y0BsjMcXk=%s0-2d2`O~NB+A>`Hjh*4Emf3)_x;5sv8w4lYNOUMv$b*Pm(j67^ihRLZ z^z3&oV@e8gHriH7Beo^Q)rGp zFxIu*c?^@zAtRW{#OBL%M~I8jNY-6|z;BVVH7>9nGEQeixDBmkI#p=F0%3UgMT+GlE3%YaQ+qy(h+w3F6 z1AajlM!cpRbmRzYkjl=92L7a6?KnU00hX}`P@ZHkRGc(1A%Jgm;By`9k&wNc>(y>i zhQYRNH{~5Y6=!AroZCB*i!eTs@*Z!$Mq8EFUqUm)9v1QXU3j;w0r%H5I|vI6dLww~ z2?0i|T0FgEIZkg^eM8A(v~SP>B2L}p%OviWd}F4F%x`oTeA1uM@2q?OlC;f==gP$;@V_8Rc&?c6?YqW1mJSd!*%FDSEW&e2zx86E zeSCS;xGVWvFYbMf>38M(^XjR*n2~{N%FU#Ur^$ZcBSU#1(Ir3JIrWvHKviDWldP`U zY+n~<*O9Kw%=?56fdvO5I~i+R5#NCeAwbHMSRKbS^6Hc1eUa`f*7*t+g*7&7m08Yg zLq8RE4%0jR=Y!NeU-(YH5SmG%T%NTmTz-97o=KN*Yuc6#V&jW%B#(>N_Uw^+E|8-C zxi5l-(>a(#nl;eXhDURKe#L9Zj<}4i;Y$cy1M|1C6wcao4qrBEIr*n+C~z)iq2cKw~{x`>xCaPae$)> z0DyGG;e^Co@T;z) zDSj7g6{wDd@8&IgKaMV`Y-S-pE+XpI6sV!fPwuj4nJ`IrIH*L1rntRX=^&Hq^jnb! zmy8H-2Th#iRxCTp$vqP?pX9%f4(ShQT2ak|6|Sws4}Le+3Jp1xEkIA8IXOm{ET5R4 zYYw|&N$j|~fkUMO2uHH;9%Y-e2mT~A1ve~eKuzJI748~!TijgXlQhVG3{l2j31)3F zfgg1Ha{<=KG!&j6jOE+&{0<1sw$shM+CiqrIkxozaEkW%jaKnVwFHEf6;e|1tMoB& zsOvdBOFvXXXYoCb_U=oejr9!<_#L+_g9mL6^{4MWzP2>9e$oRucJ4{|D@`Vxzt#l+ z82Sb0+@zCFartZ+L(Fw#Uen8&MaFUctVbz8lrbT1OIZARJEDTwL-olc(J`UxegW3> z{KsKN1b%TvWmm;nyw*|z!HpQEjeSai`s{1Wuwz(4)fN7tnOKN$6Sjs)t|^;SguHtlnTnhx!17Us{5u zN*tN|@6QqFi2yMKk*c4&n?txBO1S;!_^WSlFt7#d-pKL_p(OSAEI?{!*aHcky*n5> zK);Dg(Y9!-wDdVwWvSIoGEf-Q^D}tw+ZT(rSF7MKbfrr$2yEV;#wX&nw6NUlCxEHxy~LL) z&fiyIF)fbipHOi{`=0~zZ4*mz&~A-g8Y0G0N33FDRWlQ%xnKyLwXK~22Q zaFk??<|!zLh--B@`*tB9Kr9l%7P={Y7h?IiL~5dOqiJ!WGJQ4OZCdo7&P}-JC3{w1VVi^5K zB}}(BWA;0tZDUW^-KnPE>6|jS(qQZzQe*jw?cg=7n)H4`iYhFATdrta1jRsTTq+)W(h-YkTIP1e$ za7K^fO=tL)ZKZXY({uLd;m$42w5#}e!a^+&Y41aaf_^ut34KBBK!R`ctFdPwyju~9 zR9@11H-%j$;I~htdcFuf$n`A_FRq3PkyB!!tV2Cr(aOZm;USGT9R6KJMH%mC0Hd)ys|0b9>KcO?ix|AHsZG^to@3Al7hNO8yVmEUM+N>={95X z&NvNAeI{NWG>uq0DjF69v>h;Z3~$?T9)FuBZ+;g4j-1| zER%wqWT^gw;&V^T)VU?Pi#M$)>xp2NpvC@?i8aG*XP1z<6+e3oI?y*kzQf1mfK_Xn zLumBtv=d}s!DS~iBEFn3HDj9fLmIBl$uf6i;%r!-AE;bUo|JiK`EyUF0dLAQCQf^- zeu_>=MfC*wJ+Xtp*STuMP%QQsqb40-z+&S~_tVcziS08BM1ZAUs^ph!?~ciW`L&(S zcc~yped5Sz3ZAnDoi|==A$JhhPWSbDoMDMxOYDhUErAr?{LQNq1ZQlkT`ZZ65m} zNjj=?3#d)sk)AmIlboj+*{@Q-rT3DWC)cUjHpqH(#=&S1H70VSBdk#b&#d39( z>$8j26v-A|uL%Oax~>ZOP0FFwE$(=Oxt=i8gAtw0-MRBaYV8%6}Ri9Dv2zauLwm zr}B`y14itTxkKrpM(kCBSBwo1XZgftOomStW#e?!OVncd1XtGlO_fWxM=ZRN@S)|* znpG)oSyioG-<#BrUr1v`te1&59~=pDfG+-5Khr>Aomgw_#VK^EA;FV=!?@N_Jv^)5 zxu&P*-HJV_Mh^=+k+OCWN@l|Ra}dI~4ZOI>+P$5uQ1GvG>G)Zrq$iW+=1T_GB!<;x zM6*s`=W~~NltoWy-rIcZ3#iYENf`Hc%!v_0A}*bWZgO(zWO>JKX%$k5eCle<027Yv zqSG+!AzNoRB8w3#9umf^p)#(bPKR$>WBFAnn?z2j<0?PnhK5W_DD8#~F%q9H)D2Gq}+@=t-AHB(@X*s$v`JUyoJtvif} zrp!)3Wx6WSi6R-pr=PV=f-1OFS7~3=oMA(Y-0IJitR(c@MjAhQ9L`}DJ(s03MMF$b5(q}`_;K`VVX7uOe!)b(ChNDXLT-_Th{+qrNG;hnUql!b2 zl=WsPlwQtN(!_>)UaP>~w_lmd3@baDl~#rwA!?FM9Tnv~OT}_d1-@(Ak4ivrKfvif z7n=f%zcd`oxWEVaBfMch@f4Ic8cPm)!JgSpys|DviM)@s%KsVj^dSPH+S^V|2Bqu=_6OO=VlM z$v%plfw(?CmTlyGxlz(gU^qxk^cYUWSg0Tk>9rC;x65KlHzc^P$iN*p8LtmD!MrDR zXQM7J`RR#vDi$7=-y!&TqBOVA7j=1pyxZ%ng^ z@nF`NlQ_gcUAyT8W`bI^3OiR#?%_9NOJCs3keXOq4CJrn0Q){R4Z4Huh?~3NXAHf5 zGT1A$%e1v-pO9KNs}`krV-V6RdybIY=y#u>P`gs4UAOOVL!;nFvSW7}BbDUM6C6Lo zXKJr)B>2OC@V;2Y$26nnG1^(&yq)vaWI|IlVeAIiJzZCoo*xGI2`!dir_w&pVa(?? zv&%Gypbf6}})X_gJ7j7kr}m^{=l zfJ~;vAa#9Vud>^%(-Q4F(e7qZx|DRWWQv?;VX4EbvDhOO*XJLF1>-;u8AP?>&t1_s zOCn#Bi{hzpV`(HN6AVaMkky-3Od-#+hHhrfyqSA)5Hw%H0^p#93l)#V6@bkD$TTc* zpt7PmP9FD>l}USgMHgQ0|IuJhA!r-jq z|NYGesvE)-ypkfiYWRj8+E|^@=;j8PzbKoQTYx0#q8two!sj`$;e@BTnU=JGC}V;r z(V%S=si3;Uno9{QUAX-zNg=gnKV>+D{7mF_oe%ImExY*tW!LS8jSy z&>c0haL@V|8bZ;k?kP?qdg#GXuL(9{vx9#y+{_Fm50{>FajMbX?Qpb3J#>&?f^HXH zS8W{!Zcu!ds8mmJ#%~!Wx$(H#7Be4ks9r3wOh9W8Tof^;)y$h} zdJ$cAUjKOz$-BX@_*`M#2aKl9zB_9&7~Dv<8+R%HYO;c}V@pbROxRWE$2}62XUEM= zIs$?2=6HvG1k!=D9<*T2sSq%cRffUKC2X=!;AL(8&BuG!>-DYWqQ|Wz2iMmde~?Pd z?GLk8PwuRoxzVInTFauO-5R2qaxU&69OkbB zq@<{G{+u39H2O#A>FT80))s%L=FGCGh=p1=&-J#ZzufQnnV-*h%9n5?;#sOYoDkIr6=-;B3Dd??CsO~dN>yEAzn~a~b_VanQmVs@O!}^_ye_}eNG7^P3 z?DYP+)rgr*Fq$kA<^8TI3k*Ss*EUMjG|Mr4WZm$DjxE%w$<7^4`7}=Ig)%z)Lep}s zk?`Py%Zqr*AYYvERgxs16r|jZ$|PU$f@dV}Ph`KBnr1FbZD%v;{$yQA<=%N&9ht9b z1@C*1BYlQ(ePtKD+G{3qkRlvDHRN4UiYU62x)oZMGjA*DGgKGHPgxukuAoc-k@Dol z<*O5XIf`2IW6u7p+sCv35xiqM=$9on6A&wa919nqQbKcz-exu#ih=<4QA#JAJy0Jn zx^WrP)K$K$$OyPB79$YvFXaaLFs8|Zw$^Xc`0C*Ly3^d4>Z|g2<@(@<%5~b5`M^vx zYGuvH?*^TwPX)@_$bwZu-X0Y&hl=T*vP4pgrgNq9K-B3PD2qtwkj>15EJmNL7rl56 z{^Vg3_fUn*Nw32rn4w5%1uag#b#fRu_uPUWFIvF*ss**uC!5oXby*#Tny z)EHWX3=us=)@S~Jl8X8lz49fS*4HnBBv0Tg)w5p&AF|>IZO!qNY5(|EV z+R;6jQaw;OP(XjSWP!3zI(gU=cl(sFF^2T>bCN)>X`~z!DQ-;HXJVaNan&L`6E4@- z(eO(U+`{A2l=hfrWa7Gz{l(Mfi^`V{8RTUYgL9LscmDW9cIRp89=tRj-w-w0%_2tm zkTtvGuH!l1wwCRQ9hoeq-bpwtyV(m@~kPH^GWd}~OR8Y48a>iN(YygXJ> z>K}Ne1^e3^FXA0OTvvqHGAB7bdFn4N`Du^wlH=}V%Pc7&_oUWi&4djN)6UNEECGez z$keHo8{Zhx-MXm1k&iMi;`U|3)q|Eg%zs8`TSLhvs(bIu!S0rN&B=5pwaZ6l)d<mBRz^U$KWCCJ<$jXb$f<{W3dtVU?N%3 zn?;w_{W?)G8r9G(6konHPt*PifDKkRv&n$?y`*%5CIu5YU-?{of<*_YY8j4S$-Ti5#y|n~z}%Y&1?7m@f?t z$Z`B!4DzZR9z1~)kswHWK1<7r^m)tAAI~;1x`LC=hWgUYx~jovojoPn z;#a7^dg&~^>xRM3am9x+h@*E~Hu=n$z(`o^&knp z#oOJw1NP!g|EzamK5S@9TbQnaid#zW-!X*gLvP?IO5hL#EChYy{AzU3QQ5 zb|dsa7%^DY%!$z2_|9tXSPln+on%`V{oaxU@?h_9u&WUrzn0Ro-edsqAx;Zb#r?B$yUZE@7+k%9m<&_Dc9U4VlN3 zzrK)Td;b08=#{j|ITI&F89{5^u3I=Gk-gJ`qM;Fw?wk5emmCI$R-eRg<#Dag=8qgJ z>MJi6`{PoOYp>G__3{it$mclTC+v;4>s?ow{rq%jo>Q`zdHLDZZpKsqgM?Qqq+|K! zRr}Ub)Y0?YN;M-L-z>47XbJtIXqaLW-RX78)xIu=rMaCFK;2!IWe&V3!IXAfg7#oyqoyGN74btN%=3A0-?;KGzx41wDA0!Xlsd{S0CU#WNi*S# zc+tLRmpBIui8 z6Km4eOA4jE@_GlkS!MfvnIW)pj#t0)Nm>ZrDBJ&PdvHtQ~o5rK^pE+ISn{m zV#%g4A7RR_J>ofGJ;NNJ}!j zF?8lhuSqRr%Mz;fHcfC39#>uAGKPtnIKOI)2F#p{;Y4Q@L|g>)!9QvgBU*YE(3lRd z&c99-JQI?jvMd0Pv5ADg24V_-h0BsVGJTp&HcYRlLDIG<$PH=B{B%Y(Hl*f6)2p6N znt+U|q=#8;gujHyd@g{`?A!drV`3RwJI`oBtA6mIr z{A--#4jZQO=Rg}03SWn&`|aKG71a(wWAV~Z<>kHWJr(QJK>@Wjzgyt)=B%V?Q)_Ej zi=MM}&TOPttSI*hI5x#E`e)Pq3E8RRd_UmL=Ay~UlO?2yAseZYI?e=s3>?|Vs zLHAXh#;r;a<4DF9YX#@0SypymVAUZ~lCGn%x8y>U(Icaq@*{$__ z*o-(2z6?4e+5XrO$V0$Ty%*B;95&y~-f{9PoT=yJ&Fcz{6*n;MH@$t(tmZdu`}e#VG}3Q50H5AU|tYyGl+&$LM`u#sP%K6k5|&EYKU)xb_{dxpM4Zh^fK0dSKik z!uj6GqyS)$G^RGV072#ti9GcQI@|jKX%-K|-<^GMLgMfJVpWoUbfdV)@}_0SM4)QX zW|Mz@Q}969e_i6zm}j~Oz71)N&A9!-SPKhtr-3Oa-JRlwS}Y0Rl?;{&w&xSa3-dAe zoV<=wy)AiRVgCvZG$farqUx4ct`F z%cNO?D;=%{0Lbbp$dNr}jj}R;`-R)qtG10D!23hZDri z&cX#~`Z(b@ih&NB+d)7Zb1{$(zcQDyleC4k4cN=sLeon{%goEpOvoH0Ar2Jv5cY6z zaLGI z6cFIx=HnL-;AR8zaB=f+ay^~`?A(09`~t!}Pl10Nphs=a=9a=5GID?Ddb|?@S-ZG6 z33GC~ySsC^^Kw9)tvI=bgoJ*{;Nf9^M6km=9bF(E?2a(nKPAXmz|5R&oLp?6j=*0M zA*N7Q7ctPIrN6u2;PjVRM;OO%?r@kv9XLH8PMq8vT)$lU4QOum7tYDm+5R`>=4PB0 z_7)BnjxMlAEcaj7N0yY8|APNRu?`M@pPA>psbe^KEiEbVLoae+E(L8114Mp^Ao zDL`pW0U(o(jiWi#9mf32!awj9G7uLFF%S@$gqtA#L9xx*2%)^H+9O& z!U~Qs7l@;og@TM2=+RaV8yj_CK@ww~XZC|1%^13s(O@rkORw(aPd+>g5Fe*Zq*;`fvI1 zx61mT^}`J6=w{*kcbVh_afUpu92U+nF_5J*)By-_a0ZOMY|q@Ad+Jc0Fz|el`Ev*@*wS p1Nry$-wgblfqygbZwCI&z`q&z|A>LVy&JJ`eB710Kfd_@{4WDQVKM*! literal 0 HcmV?d00001 diff --git a/assets/icons/documents/items/LightWheelchair.webp b/assets/icons/documents/items/LightWheelchair.webp new file mode 100644 index 0000000000000000000000000000000000000000..f7efca162b42f71cafae60587c6eb3510db63a5b GIT binary patch literal 11282 zcmeHsbzD^2`u8A6Bi%I&(lK-lF?2{bNDeU43@~&^gVK$ZfPhE|N{J|?bfbW@G)NfxQ@;tUO8=vh-UwAD8#P~)0*9J*FCvUgcMkgk_zIi21~uD0-G z{^@hm^HrO3d^B%tvFkLt;F-(s#ph7LrXD|lOV|+gL36qA*{o4h`w{uNzX2Io#}wt6 zi$SkD_?wyUvpY_(Be`$D0usQW6%ms!q-0p2~&)Q|b6 zPF!?|+cmm8>v2+KUpG-j`l$?==L(qCC~o0tGZ#VQrA8uCR~brR-lY;}&Q;wBi)yqQ z=bB*oXp_k>78Oe$_2l@>Po!@Oii#9Y&o`kU%>8W4*Az^}#y)}DmYI!ipT4AH+I%mUnTcKDHo?`2)i=p8a$4fu%I*prQ05Z;+fXV za;8(b&jfTmb@Y+_wmp*UA1&)(1Aa{ImEqTigzY(3Y>}5Ps!gTaONBc#5jKH{GC1p zSNrBH3%=*u7rdc%Gxt5Z?_3TfJnowb<%p4L-eEjpGnDXrPIayFQHoL=HfF4rJnW=~ za=PvKCi5VLPjcunnk~_LZ_7xbkciFe9P9`@G7%6#8%NUpOyoqA7zLVvHZy z+D$*KXoW{mVZ7f%A)xD))uZNBAg%bupDi{({4~j`JxDNuBiFIlOs@rSb=nkPjI!;N zYx$-Bsk15&Nys$~=}C=>}m8k<2;yz%RMsEN#M+5!HF@M zK0>~q<4McRhQe7f{}!ufyMu6ga#=@tVpIq6TA_HE@C&uz~b@PuI zzfskkVSS6-aG+osTN(G_I3G3B!+J5SJIVJc4f8SBGt&WTjZ!D{~@CoO;;SHbJTN*-X8Kj68D+Jd_l#03A zk9{qf&MYq0;P@2cseo5FeCLAV?8uh%MVDN|gaYl=N$uFr(B|W#sVfvmWL6ngk53r{!v|k zdcz9DxV@9|gn`hf$lN@4iNC@5qw%muEXJg0l>f4L=|L^**u4qu`muWCDJ=VA$ZjNL zfl>)qwykSs=R|A<5N0gnox(HWf)3)^At&3<48jHJdV>f;*wKnJWuxj4v=frM8!o-& z7bRnw@)*!mIXFj?E^XgeVlH? zl;Vkm_C0pAXea!Mo`5qy<|`{!64u)~O$gINT{A-~D{F0R+T3ehgY~ndCIA4PblAv( z@D41`$eNlVahCZ5U{{tYC~aHzyy5?5?ZIr4KzexF$rYCyeYbd=JTuBxyz{71M4mm zVlfOxPaCDZmH`WFFWji?QUyK4fy>t^#Ez*<=`&|7N(OW(0^`>CPoinF9qsNsNkHy# zLr}hYs`M0}&qVWl42C@qM7>Y;YNOu%UCC5rCW5x>}|a5 z8#jYQNAeOj$~-dd4$>qVFEDEH7$42FDPc{6(;ATtJ`Gs(ZN``m6)Jw0`WbWT8i>+s z&yDZCTVhahS`P$AcsHwQ`ITd@c#OQo@%^rMcQIiP98udX&w{Q<* z@pu60^#!*^Lg|RARPP!`RX(!)-Cf5ngF4i3SDr85s6~ML=2QF01;Sk%a;d&}2NImr zZwGfST!e^=3woUQI6&^xeCKN3>J+N)-&SQ+$4;)SzTb>&*|2rJz^Gtdu2I$TTyNAh zoL(4>y)v}!ZD#BwUTiU%845NdWN#1F8d*MAAk5@1O%AH3%R2Sk5By?uRPsHuwD`jN zMSK?JBc-64D#gRCd%YTqasL}D2_R5JZ z4|R)#H0O8C@i-IF;?{%Te@?s1q@V)f`1&Z(K8Fj1(5ZhyUSj4nyOH!PZ{I?3TmbX@+~FCvRKSb%FisPF+P=_abMD!n#2gjTnW z$EYua+IuWX7tA^Ezzth6()@Eh_z>&}r(vrrMU7_wV&*?~_>KU{XzBDyIr zswzgAayyaCr;F65$)q}NATIq^st;#A$bgg-#D~T85TFCu+q!HlPnBUF_eNenRno^O zaf~FKyvEP6jNXlboNtjm^DtR_D5jOnbu0QQT>CH)EttPDMj?H6k3Tb^aiCOF1K*-4 zUf#?V%?ePPp?RM3JOiEMjA?UNpWZVKtFv4X>=f-GTy4-2HamgQkhKteue>*>r(%u6 z4ZSvGwv5yX)*xYocGz}GR5Aw>B8TNHx{-$MgW36m3mf8Je|E9KZ*exE@?ivD8A&r$ za@$k4vm?XV=s|)qSZuCStaRU%iA1aCs7tvC1jlQ)P3nD|eYC z;T5#Y5q-74>_H+)U?AsR zWlYx|SKA|LrX4q3mV3x*PD0egsqec{6Y7D@^R9$idf#Euh@wV8I-upL*!#scte0l_ z{i!~nD^ADyI$X2?N~QR?g$?`)bP8v!ujq|5pb;XUW|P;9#9~zTtuVDkDZTl5c|Bk} zk9wuTCg-5-bdqR5TW^`1Qe7Q=;F05@cp>HbS{{pBFEh-8v*}Z?HTsjTV}_Lq@inU>^6k3uE@A^Nd`bJWn*o^jP>FVSk0nTslb=W<>BE9oo{%c2|T$>qr_ zTAysQT%GOl1?LUl!8 zVv}jhW~ghaIJ7ee4T*;D1(j5%w9fj4@E2&hyhC+#7glr z{NORNq~o>A&#XG73OW3Kdz}**2FhW*OWP+_UZ!bfiLl3R!Ro7vHFj4a!lWN92CIUQc{Y za<iz!p-ACr$=agvBXMJ>2Fo#2h%@88!M~u4H>i7^ys~R9)bpsrH`zFm=yIC8+sTG`=-2t_1C^O;)!NON+KB-jw!B zJ)F7IH9-{ydRu zlcF)&4H8nhq=OEOj@v~F8k;)E&+&fu25|c02MsCoU(v-7hov$ail9U_vGBK2aj%jS zcZ7HMzWpAg62GIt{2-!2Yqr4LpM&fugvN+xV^t`QqKf1bQ|?OjHxPvT#g262SD%3E zmdA#elJ{BH@?xVhduiX^9=vuF-k+7^Vj+-&6G-{A=;+NdYsN*u`9=+`V-!o-!HtLK z^gK&jg7JHlGz>XB3S*ZIH0J>Jq22@!+p9+#%onD9sJM*e>V57yl_eF^ z9$*21*?>j)&)vHG-$_-_%CQa2eF{;EiiP-D4$SyMEa$eBj-Y8>etL!!c)pY)&AEui z@xjZPQKX3+E?|;=Q%)8uSbca*rC?}kd>zt9(_8DjoWVpTQL=n_c&D+;VBF=Los=#q zMoYq>h&pPFGI7pz%8I2$Is$5LF|ymT)cq>QoAit0mwog%SO)H!;n+P-K9>-F;Oxfr zk$PqO?F_C?o9%m@wVP=F%#(<_zR5__@xd&me;Z7U^j=GM4Ck&*yiY>TMs0*eEiM|F zcBw@-z@+fgE_UZqp|k)5u)<)J+B|iSB0P)qRQ}0IZj=iEFJ9J1Cd92THJvxA!xr&#&fi~;Atrlh_M=- zYdSr{Pt$@)RJMdas_QhAtC9$GS4^;I92XMmc5e+>u#YQ6Y5B(H^t#0Dg2e+Wd9Rg( zHu+n~(G#pJX_Y<&Eq9U#otXsOG#C#y4g##6%C^E>`9U3DUGa|f6@im*#>~nmWdkfC zMc+i7veDVs3I{$-zBdscOk(IN5$`m1?9tc`Pu{ zQSV1ECe3U9Ci;M78W7vL8=lS;;QU@zn9PS2>1|u>AZ;)C%(| z$_Oz64D8F~DOUMBBekP^t{*~IJdSNF!|oK{hq*Z=Uq5y^fJ_pVH4Z;igETehA8jm7 zi5n+0sZ5XfbD3LI_GlwNu+U}Eb_|!axDpmeKTskG%c(tix>xwR^sNJDn5Q&;AR7@dP43V47;H) zWU4e;*(kX5-642>n^*h2ZS7Utl(7}=2bTo?aoI}$az;F@SFVhO7gGLw-eSU*0DBQA zWi~V>?AGw*Jx-N{Ly^|?7A%GQr`?##LS)1z`wk$l*4(Z;yLQ(Tu8|#5Q7sfg5cQS; zd=z7y)A&2FW`Q2nba~@r3)h5GdwTnsgDnz*s@M;{n?^P31ff~=C99r14zTvq~4_O zStFVP@WGvEo{kyL$I;#a8H0WaB4O+#%(=CXT%pn&`H2seeQIbZpTGgu3_H=Ir?X-{l!%DjJp8{W2oS_bOUwsK%JFe-YCtZor*?OW=ZEf6f zxk^8p#dh;2NmUE7|Dn?Zv}?N`!H#~Yqqv9Nc(2c|VHUm4Fk-bZb(MChk*I2Cy;(Vh zk}b!V;_|WFrNPT&&JAarX9U0}g)ff8g!Us{tX|zmwAO<{18UnBn$bsI?4fQ)gTBjC zzl-O@;5nJUG@$Hax29_fnMLHyea@JztQVxE*xt?OrxNd=&}u&yU2CvB@ak{ zh+G%(FtdEWqRUO!;f0kq1svzH>04p>L_?#Z;qIl#tY$lfawM6tH8eE!kZI^p?%SQ%tDrO1O{MO!mXh|^S8&A^iG z{mFgIXlPoNav||c^I(l7TcTU`^&@03k}vvRDELVll2=m{bgBE>$op(M+>fev=kr<1 z?Q8YU@gooM?Pl6(op`ys2WI5@;nuB8`S8b(;R8g#m2TxAK6*t1X zn`)AtM?k-C%{VVgWLP1{72tSkY%DPM289R%a55vb0m1olg z^!pGoAMV+F1%+L~N~6s!oiO#2@0N_Ljte`-y_`p7qpQ%e*x$8f1`wZ+h-GsIs=m;u z5jb(__8x4AEc>?0eUP?xF3iWZC7AnKz(XO_W4W;bvofZS-k~M9`a8#1jdy_n25_vfnoLzLWkJ%8U6(R= zF#(2f%x5AUnskL1Ikzpyo?v9o3NBe3=tmU6WtJByCcx~^dh=*1JDPK~Hh1^c_0Y7= z;+DzVXsYQ?O*rRd=K`NTFLCjv`DPeGr^Yzpq@*gKR&F{^}P)!pECIkS)q24YqD+jnc&=PKA=PUu*X>0}o?W`q027+olYA&*H zTRSCRH@J?kx~`S4gO#W?2r3B__l9^oxj4byVL)#uM`t9&TLJ{LMp(ijH|-zYU=Z*p z#N9yxB>m$C@P|TKgc}?v$j#4X#ly=B6cXa*6%Z5>;^hSL@$mA2d2S9NE?xnMpb&&l z82I}KbfeA9`T;~+PT_Z5H&+rMTX%OC2pH_;<;CsA&y8@i0rQHAivEzn$H#Sp;6nO1 zyTiP>oRN%wNRWdgt=#Nf-0cv~z#kG}mIx1b3DAwDzq#P#@=L5UlKZDS+*SxDus6&F z%*)O5!=;}Z2?@V$ z|DwVLBI^c+xg*?k5eUaWqOAFc6rik*5Rlct&e7${2toMyIC%IVJUqWa)oyag8s-lBU%~tkUOtGx{|rW0+dc64OQ^LKDUX5}+Gfx$W$%A)*RG^3n9jtDn3g!K)z{2<^z`jus6HQf*o>>O`yAhi``fXec+LcF3vLR@^@ygw@A zXNE$Q?2tE+^!dHkbl|SPw;b(&Ka&yyv-(jt5+JJ|F^5}&e($#X7qtDg>%WQgvW4FW z{5Og48w`nf;O+%;gG<}oQ2bYU2L3aG7- z_dl@ucQUPPVa_)2o2eHJ`p^9kmH(@x{WCxQOJ)7v^}`C`>?q>H-q5o$!zia^hpH%pl znfBMy%Kz&KfqyKAzZE_Bzs?80UCaH(qQZ~B{9I-r|Elu;JGpnW=0L3fqY3jjy@>yv z3G+vm{B-u8_5y!&-E1&^G=J@EB>&if{C)nLfxj8}n}NR>_?v;h8TkK*fqy(3fji&q L%Drx$d;tCjYqlc< literal 0 HcmV?d00001 diff --git a/assets/logos/FoundrybornBackgroundLogo.png b/assets/logos/FoundrybornBackgroundLogo.png new file mode 100644 index 0000000000000000000000000000000000000000..9639b92fc563f053210bdca293ac4f1f852d4bda GIT binary patch literal 55426 zcmeEu`8U-68+J*hkfp^kSwhy3WJ@DT_U!vwjWPBmj53zAh!`Ymj3vpErDp6C62=-`XAir+ zp0@d(J^SYO?Ag1@!UX>3ltEG`_-AjRx$fmX6@4cc_UsYfqpz)Hd3!Gf^AL3mu~pL? zS@4mY`%G8E>Al?d)KArU1&mz|U_Eq*MzbeNC0|SJb_gkOHZYVro~MVMTIL&@$SnIn zab6A(LY-M~Qw*fJ(R+8C`**gR?M;F&N9|#``(F=l_PbrhUn^g}YwltG@5d85a%ehX zw{`FT{I8Mbo@w8EJclB0-uth2+}+bAFnxqcc+Yi_eJ3~&$=%<|m7o0$KzLGY>=^)`Y3`NaP{MwkD8jQ{@_{}|Q(duwDf5H8f2 zBbkJ}`f1c3DiscSaYWAql5FQ!SN&U3cheT}O&jsewH97Fer^PYp;bfYz!TW}L(L7Y zhCtxIxq(Lwv6YPr>$6*pT>JDAUv4omT4LOD4Dn4&mvGzb{y^rM&Wka=LE+%*jijAH z&$Y6hpxP9E%*p`E-#r_F%fBCS9rBZUuYhSUXUu^plG5R&i$kv>44PM~TGB#APqGv6 zvKCkh4l59d#ds>Ij7!OMk9m06)ML`A(=t6!lfrMI6vgb(uF=&ue8G>D^dOchg?@{Q z69oaZ+s1$Wm5!7+=`NI3bLW=R=O%5yj z6sL+GKXK%rxQj2|((2{5*zoY1ZaYubh7P>c7!obip?vh%z1}Lyh&sY%hcwA6CHolL zF%vVz>)e>IZ&VzN{wQ=sFgZGH;7+(^Nk z2zltR9##vBmJJNkY5cNgesDOV!RvX1?etqlEPlrV7H+ovPWe4+JPgFl7zM`agT2(0v6kE#zL5~EKpuV-m zhxU)^FQl3m2ot`q%rM?B{06N4Z&c)z1Fyy`jV!`S6nlx+!)n$xPHuTOFgH0<#ECKlNOjF8v{A|aH_ zLE#1Al?$BB0kI_Wg1iU=7l+0tIlU#>C4nJr-OfHy9<(<+8x092n2b zoAX8oR^e1ChBu5Z;zGY!LC#UL?s>2oe4udn zO#DjEW1)kLYkw*FZ?3v~E-Izy!kEdzT=6Aw!@_#GVkDpomPD2}{q9&zPa-&y~6;7wc-djdMvxEPs2n_1PxhP9O?9J)x%_=rYE zTtIn$BUp+;TJ6=R+Erzl zc`3#XastjM2m(LP?7W-8H?vZ~6~U&nNGSStDIxK?vB3?mh?9lgj)&{^NIU zov<&P88Q#es!)mEcL3zSs7~&?brN{2Hht#-V&C4QTzVw~YS7>$b(ndAkM+frM$$gg zQCWznN0njO#8`2sp=U|$fO!$ZI`sY*Dc(c7$2960pHBgnr0;V3DDn7_Y5JR4uS1>@88LX3 z^pv6j?l_;zR769^XVIgVm>4%ZZMbJT=T|rPR0wax1(vpSP0|qb-o zsX4X62dqEI6a=V4Yq$6>XPqr#W1iN{)1v-%?m2&&@yjn*g?n=9uPCRhs-KRFzaX>o zDC-I3Foh>hRf=h(f};=tNAU*^>M=8E6Tdpqf3dmeW>GDr$H)}Uqzij!&|LvX*FZ2E6~cM?vz4z^$S03hm&L`@L* z$$U?bHBeSOs$}-VvQOPt2*f#c68s_3vT$>SdwZ$&C-SA0NE>qMb4wJ=Ig^OYB9BZc z%GlmBmw8LIV*xmw*gk+XH&RaXO{S~ra+-=J+2i6GCnZ}YfteFN5ME=AYsdNE>*r5T z8(Wo(C>9`Py~iJLXn|`~1S`*47%{it3lm^YzOSjJL;CFfg;uocj--@`**%tayxl#a zGLvJ#|BdjVmymQq-RUiMXu63!6jYDz!m^Fmf$;xyMujCegb~v~BvRQijOmAP>K$NO zv)J4?2M-i{Qzpcr zp7_cwX1gG7r9!GpldRG1hD}dXtBr(oal^uvpm0^lA1*!e~*!CF} zbv~Wv3(1iNu9)8l?G$L1H8QhWSDOf7O?A3Xy>pu4j@&%rMSZ?NDGh|(L%<%Ok@?lA zXO-X2yL|Djxj3YxR_J!)mr%v+1ApA;0Ju7>)YJU($~i}wjkJONOm;)0Z}`T4Bppw6 zN<(-3kX_w4v5B3xpY7qcp^FHWv=1I0aObJ|w17kvh{%@|KKDGCTdzPlZ0RdiDhUxa zr@LtrAAaqXEp-UVi;b}JF9tj8y7G_DoISz7N(w6C+Gh!hmkh0lJgz0Q2h#Ll`>9t2 z6hrM6UgRXzOD<=kejxFY|w;oSqlz&m~pl*X)wtK!Z zIIX7jPMdkq;-H%YLfRIebG7*1*P>PP;XD~r0Z$oIU~|_)jkG~reFm|3Pl@9HP_NJe z@>c=4qE}>D{rYFABR#w~p1Vk%lxDfB`5dI2KlR|WzHp%%LU(82hBPX{N%g!NGA3W) zi4DD;SaHYELy%uFkqxciSFccS_6%~=n^chI9q;&erFMFa9Y5`#6bnZGWZLV*aBw!@ z;B9El2}G!r-z&=NsZbyc{uhDn!c+=6V>kj2eW!aMZQHmz*)W`Wfe&4Ti>gjv)$DxHJJ8k1FiL z9abc*xx#K~4-sFLQ=&f*isKW^TpnCN&|-5VfB#&W>Ha2ba3?@zp3Hj%0n=`pyp@U{ z@zg5s_BScFDiA(}*(0%^N%*=y6X&|BWL(SCQPqo_G0IWHMfiF}as3&E1`q~$J->-& z_8GIg`%OhywHxLhEZ%Kg`KA(Iz2sS?E7n(0QgCJ3>A!gh>Q)atO-;U!a$Zl0gJfKzBHd-#(lyCG!vln*sZGp~#yQk`$kyl!bQ z=^dXpU~Gq48ljDP&EKkaw382fF{^ldmyw~PiovCISlT_`w4d(MdiNRNmPPOM$}1xy z?z+l4WcPlLI@kW3F;zGRGn187RKosOg{V9?dHTao2b2z=q%&0@ttuonFNqLRSwO9w zS68S;p<8}S%^_Q6aQNz!iCitFSUEy`=mis_>U{Iw#@)D|ZovT#q8{vGH ze8f^YnyryzPL0wRD>BdCFfAVepN2u z1EK(5bX>NJ-#+s0O_U}Z%W(OKLxYesR^f&#EX*$M$4|q_@O4yd^+Bd6pK+HHv8Wgw z24t!OkSWuC(WlM&+z0fbWVBfo(q_E6qGsu2x%FttCDjAX27i#VzVW}OEf>{WmH&J} zp@E;;Nr=HItdJ6t*CM~3WQSW}m9^?z)$Oky&Y?h3IK*)_q3|^>ez*tKC4YDEI zXY3_je590XV(O)s&53LcfbiM`ctyUf2IA@_=%rv{Q0fh%4*dOwcN$p9e<00s?LE_ivhdhJ*65=BdvTn4s0O@B zVCg3kV(ycY71EWT$`yly+%P%qGI}{e5;gifc&Sp_9wp5A>s!`TN-7i)oA?G9aQ5Ym zCmclHie}>}u3pB8eBq~NWAUVNiIIrL#trPSrP1RygbZ+UOTYvb+#5OL`EZ6gN|LKM zYfz%+!u>b&*ZkB#tbmrx`#94%IR4k;Z4t{#8Z`AmH?7D1ylZDdcek`sz@xsjsCy%Y!gX+5^Fp!8oCVAS4X-C+0}PQe^rR5k$?`)cO^B5TBB?cmjg zbXF5q0F!$EiIY(*NA*kul3=JDTa;~gLcKzq*yyBc?fkf3qz#U)Dg3%_KD(17`kbPV zE8-Si3aW6rs3NYX9PL##)J^kjj5++sgqK^v%*)z~LR-veYKBr3NH{b(jZ>>5zlScrcxfm_LKjdD*69{{- zWO}>|V;3bIkBdvioG0EC(6Yfc9g6!jrqXOKkS{?_>HVX8IYF zI20Y!$LsN>*#0i0wfsQeL0FIs9u;vyWzdXj43K9ZX*|Ss=W|QJ=V|AUZ~?CMnDeBK z>qZJf@m;CRuu^=Hd6O8gh0Z+%w?0B=S$M&#RvjB%^GtTcSm^*UyLsSO7>EvMPlB}i z#hKf2O6y%bv*(y(P?3qIvd)Vill$#{{E+Q@PH6Y9)tI_$K7G76Oivv3Byo89Y0)IR zFEusQiv4FAc2v&!0V&4ef%H5!j-T2-Nw_!YN`3Mecd(lN?Z=s|!zO{40OSrzx_-Q@ z@L<(Jy9d%A2xrkqXOIj+g2}EQT<)1Ey1gy?lA-nP?!UL_f9QqA#D^@khgeVs6)V3b zk1bTjq(bAYkxE{O)QR-Qy4Opa5+>63ZoKB@0>AXlXDHb-mg*ZtCXmQ;hPpG4l#2|iGQVCqmEYaVL{o~^74bg+RO#|&~OgMrly zW&y>!`ZztTx(s0ak3?P_a^Q)rTPK<~NjCOvJ4=2MKc%EW06Uf9G?ZfiqP>5dshwRB zglY~CK~7#yFBpoxz#h%pvd5o|0e(S2Uzvc-puq`y?`ygq8a7QVmPm<)p7U1n`-hjP;0hBBZ$1lqnYXt9kL%f=m$?aj-3Ij%G#VAFjjw^he>sNIfqenJtR9t|`Ml z)6iV@fR^Y&Lz=yK*6UgOZy!%>40vNRRHaKPX{*p2QCSQ)s-hAd9O9uIy@17a(cmiEmFjiQm@|8my*QpF4HSXg^uQeH(wF?L zJk7@1+Jk4k$L12e-N~;2V?}=ppA>&Dy>>odx_MZ%{7-FF@-_|iOm6-B)3L)Qim5)P zB^c8QS!;t=U!`krcIiTE?5QUXz+7YLwteU?TT4M5m>$B%(LQOA{n{q*-X%}f&S0C% zZ!3coseSsNT|W>9_FVZ{(Y0+%^94Qi^0W( zQrXjg@yqe4tmGjXm|~p<^&T$k9nYvnUULFb<7PS|zZu~hmy~tKs0kJ0)Q1j(g9-@o z)rXR1R%~uCEs=pA7VM)mFWV~5567LR1zDJLvcm6i zgj-sSj>XE)1CFakat`P+$kV%V8t)q8fo|vW| ziJoEm86S2B9%Kb?abRXn&emKUng|=6oBc^@?-uO$Hma$R!>6g@?F%L(e5wvEVG*)F z;6sIDq&skMoW=7+xw~c2byL6SA<01;lkOZg#GcN>mep5_^`D@Ly*(FjEUC}>`eO07 zxugpz_q^GTC+0(_+12U|%l<)A9x|Uy@yJTC=3k#z0oEP{Naqhfdl)d3NV=rUY?4yWDfvVHXhQf(}v+7uvq7bKt%c1>RLu_h?XQc`rHa8 z&r-zBAmvbdQM%{yptEG&RPT6OVr=!(#WzEw8`rvroJKTiR)T>AxQg!yurW<@jkxle ztaX>Oc%Um)L7}+1Llq)wP_-0?^YWgaQtfv_8_5cJxljixZG^IPi7LIg z$Q1~yD$|6|Fm8R!9Z?=$TQKK~s&op*z)lN|GZw3P4ipnVyOVpD_W@)#99nA8Xy1sV z;%-rJYf7YoXXpWiyzq!LV0|s$2rM{-w{Z7Idc+>~hWe^U}G#s^0uM%|D&t zYyXrR!pws?3pwzt5)2|BF%R1cjc3-EY?a1N@)g!R2(Z$*G%YD_D+36h2QD3Ld+ng<2p;ouhp zWeYPCNTPVFFQIShmOc>9tP4X5NbZP7gkodFSPq&?3g5Uc*l-3jR&;S_zkn`yDWmO6 z0)BcyZLnkEHMoP)3HPFxI98jyb1S?}1I8(sir-g|S6|E+U+Q`_*1V!zm__sKPVhD= zn8W;*NkQntB>WzGC95>ZcIXX4?<%I7tF1;eu zZYbH&&VLiQ6X&{Xy7KlBF|{br)Wc?s6mwZ25qfYF0yOm(pjLWyCrKMRfStC*tJKy7 zYuN^pzYgvKn0^FW>(1cyYc9;Bqi>KwKc;VD$u?SI<1{NU{D11usM*s=n?WkMJ_km8 zIXpoj+V&?7s0H-<)L)jHx)JepaHPL&x?5HCHjHOJ1kq+Vr^?TClpz+~A zTtmQA;eZ1FxHhW~&v+@fK`$+Rm-ObKWQdIo^6S;&PJ%n%TBqD)w5hUAF$HNrriQQE zU8uZPViyy~3#{+fUuH;H|IjD?_(M0S1KxjP8Q(`5rji@sk|)}iQ{Ab{O^qu|#eLHC zjIH8lu#(y}=FTm8G)sR85a@vEb>4>B9ShFspO1a~P~T3ZJ%;;h7JT;|BH-o2i+{#>3}N;GA! zhgK6;i(gJy=$j}<^Q=c~QBtahYJ;Iilea~phYtQp;y^#4Imq>=g3vIuA_v?3$=}C| z-&i0kt9o+2I=H{9SNP%0HsQYh?FkaEQu$)LP+p8A@FbGJxQWo)Im9Q1az>I_v;*0_ zsDX0NBQe=5k=j-ucy&ndiZV$>owaS`PMn4LY8@}FCeEEy&}5dV&_(cXM0S%nK5ahj zK4WY1N?aU2bLAv+avWGvy|Z7242$g|+VnNuT^dE&FQO*CTW8KbVU{EJicL>MiYE^H5>bDmKeUREY;EKo*lfaP3EyOtF$ zBJxr$GTF|sucr;5IY8gth9k-+lt1T{@3sv0-q453s@iet-2xsgmRutiSvj+6;dv~y zyg!yiZAgJiVHL0g3T8PFQ5HgqKN{(G^d@yuyr*G(N-l&J6ZW;UWF0tOpr(5IBd$p; z<(G)IZv;siS;PhGJa& zI1pwVfWRtbV~0X+J(G`Io!8eka{3`w>9`wxJOslCqK+W*U^!IXA$nu^tI9pe+IIfW z{sx{W%5TS>W^0C$@;vSF0XT(FZmR1A)TaPswKi%Nt8gjkhId$^mm*r9S&$mdRpgXZO`Z%DomM4tZ)-cV}>#b<3o2cYvoh zVrOTn`S-?hE{fyQ*0*)m<1TU&s|FEMPS5$Mg9{Y>6f~DK-sk&`hQ&I9_{P^GAfg{K z`IG9Sw8cRqGrwQMLZ3Y6rk-k$SS<=E7+cG5(Z)R*8ao?Xzd!d+$Lb(0~i6=a7$*m|rr zt)l6hb$kcQ))IN=BN~ZxHyRI?+X;lFl~vyU@xpv;1wiA+D$PBMZ=iSn_+&9sy?|0x z=kVyHG46=Tb+49^D9vO5{Upk&PH(6~igL{haAV3&!Za@TDpAPM`+uUe=_t*^zGm)Y zRw!C|b|&{?i8nDk&XTNljc4*uIc21uPIASTmvJdC+1aL^b0u(LJ#<$6%nF0Ak4~$>sHt@Kd;Tddjnhbq9boii!PW z;!p2Z|JEBNiRMw>_*BXF{#g0?Q&uds`eS;vUOwpJ`B~0-S!Zc0BD>xh66AJn8BX@ll_u z9oiZHoy?K5)mf7FkF^F%a)m5?q-?$chP?SIu;8Pi>k>4(b`tA68u6l0NE1zUft2 zf%Wqb=Cng0)61uR|3YLSEUk|7;(u}1mM7l;p8u95b;?3NQ2AR-Fw4wRS)EWdn_9Ac z4sq)QRts}u%8t~<&p?nzEq9DpIV2vn4vM#9%Gbzk)gW0+it?m#DtV_>bs5I2` zYSI74nDT%zq4QAE_D6sS-nTDSY^O*;zRA412 zWZny>T1yacxK(<@I5VxUAI;?e{36G#XFO;sXtza_#wT)XE>V4*AL&^6(Tiikox{tQ zt?|gn$P-CC?q~^DV4wDE{Jcc{tsMs)@_qTs>?C-)9low-5|vooGby2+4kZwIpHy?G zdkP?XFHmgVrktu@8?2Q)Xm~G?aeq3f6bOnETs#=d$_#$=2nLMl!Bg}X>pb7dmB(a* z#O&MY-0Rng8M{l^z~IgIx<4ci{gm;lX%wlZf9w`~wbTaRq z0_Y3uqt|p6TFDC_S5SboDv>6hig&Cr-U` z;>cXahd6uygn9@Rl4ao$19#e2qSu8kdX9xF>US0c?CT|@{KX#*S9&B?+O^{nd8t$O zQ)e8?8>evDD+Ec}Zb3Ac3Lw^+oX`F)_9npw;V|ZI<1)-}Qma%66c)JCVgkM!1B9#$ zDJu7)yNxZj1QPlcxRD4gOgS1yADvL%L8{-}@S|N< zUT&0oO;^$a{W4GA__H7^XO5f^35ovDtl8!Sc!e&kf@M0W91O^^q6uSu z4&3`P-z73cChTCx(|QixlM272qEDL^Syy`6GFnPq1k+Jx66|wA(hy|KJ0g}^CnL!) zKqOQ-GJIw|rmpO}K5ZiMQ`M522rZzSpsKFWZ5+3?b1?DYBc9(o0fzFpQD?LcYT6Z+ zp|kaUCXK5@R@69&KSD$a_WFjrqv}~uEi$^e4C~`$lIt1vo>3+pRfEj3pAC0Ah*;%%TaWhayFt?cfOr)0)>h2b}s7>lC)&RfYP7cz9;{ z-kJ6vr*A7q*C0)v4hDwms5Jfjo!BZNc*1_`-N3;<$8B4MlR}QR)!SoR9D>#JZ>)yB z68iwh&A@N!>V5&p$y=h7@^mqYNuO?g5x^YlmG8WOiAN6pzTrLFHH{uJmpf32ND%X)L zMxw^8^{d#Wp?Mf~tfHdO9lN4i)IO%?lpv?DjaQzz3EL2m;#Sv)N6Do2eWWXJ*m)%q zQ4ST^&?DzwrRW3{jvDivc=p9p<9V$w4g>~^_0}sKCi1=<=##|5hxL1kpDr}kjxm%@ z8c`BJbigovl!%@K+oa?#E*){xOTl*=s(*IpP@nO%0{cP0Vyfq!E^7F9+}Go9Ovigv zH~*N5OmtWy>9jeOQ9#Z03eRGtMXcXTEyIK2yX~_bu#_{z7iSf4q`6-!W6ikHrk(*< zdO^`^ZcmfbXd-VzkFg9`ij;YQNnt&Kf8#pKhmM+h)OHvWpPq(XalqGl zEbLBh<&y|}_x&ygEr!=u+t?6Q>MrP&VL%cpz^b#>szi$<_dw=KU)VmJIHOF?%cVy6VIAZBp`*XCS z5_F1;oMS=NV{t7lV2HR-ui&U0J-#pa3pVZvw%`3?|5J%n>Oo3StzFOYLP`K=DGRK> zFE_5~v(grq4P0(1*v@}6JDM{~cfo{0P{lO1*s2dYHSt}{x-snc(J}EBTrxy)Vvd{2z6@BO8 zV2afNk~a5BNx6=$D|vf|eCHVD#&LL}tuo=MNeaet2s^|RKk1um7G&m90G%(^Z488I z%OW$e>J7dHo~WPs2dh*YwiP0O?@Zk#&PjT8ka^vF<1a$4G*B!Hpii;%-Zu!v4$QTl zoaBpR`q@$}V!VITM6bcSDy!45PG8J@L$R}Ic#!l8;7s5S6}0pJM*OGwb_P_)^2wU^qnynM{) zB5mGd(L4UO#PAK>R9)ziOTK1A3;lCcv+@BsOL}jBHhJhErNwBS`KemA@ehFhvaCqS zbI`|%R$``=$V+{sH7URi&1XYe88tb+NXnyDNaMG$QjlWW6gG6rE58i-9wps1N9be- zhA=fq-CC+munzop{ks1Q>vHH8Z9o8FQU^`FOdu`*hz&1F#gG#&rK|mRe0CI4GCd^3 zY@`q7UAoh+4a|OTe*1L-rhxoNN>_WF6bW zYG;E9&_MHCoV&Fb0duH?E4m0VFPeVzxrAd%rCG zM_~<1s=!)?L}p)8@AwN#jXa>4wva{kk)YRl#G#RwEA=~mt$eMFJbIZ3*uYcMljsV8 z{_-CIRj{EMC@T@q+{L>p8EIw5a8GDmLKM9ign+VBFQqvpHUe^dKeKA`TIz&ie{ zirv~i;|g2#zTX`}EU5>b>ZhjaR&6AleZ||5T{FiZ#~F^st+9PBMd;oO!wkmNY*cXB z8;JC9Th#j9DHvKJc3ou*tmMFjhNCHAJ z%ZPN$rUG}pZ$P~##-glb0w$3-Wy%j`m{wQiAo$mIHXH;?_ zK~rDmn_#3LUL>w^jbBG(X!-oq_h$ejiVVn}m^3+wST^Y(a%hY6MYLU*-M?fS07VUV zgQg&Z&dES-wf$@(m6VPlJMgDy3<-wT`qBkJ^w z&VRf{y~*FAYwYNsP>lr6;tntJ4RH=zi>BiQYv!+_Dowj9N(TCnM61-DJn#J=r3!b6 z42yn|y$tP>z04js3`?q4c(1CSn*_A=Fr0-jRjv?rXs64GY-M__+ zDAf^e?EA>c5D(J4jihRexFNA$NK`S1Xcf`~_jOJ_veZchw%dtX7y5e4_hs9JKj`k0 zLM}8c_b%e*Tt37Wl$L7FZSlfm0;>?6=T|J7hbl)CS-GEmgq=G;-etG&Ah2>^K%Ao2_} zXtyQM)CHhOW9i1yofp2_VK%PRP#vfzkfA`R$#VFx;erjULS_n9aa3dDCSf*?JzDT= z-m}k)83aa0?t_?*XQfC}ju`Xei&bj|(f2$H%@stpx&5rN?#_}QmB6>9o8}wwFb4JU zYH^=&mbTSvqExADueAY&2paZX)&`EjL<7IO(w`0lXZc^i`|peUAl(ybA|Ouvb)cLf;a|$n$iU^dCajVjG^EFBa#;*gK zP<$57y%|4lZngzhdj_*xh<~R7B>jeAgpaD)zfIiDz3Ixd5FGuQN`KK!IED%&VobZr zcyGK>&sTmzdB7h8v3$6f>KOpoLZGGrTKn@ZPbNaGD8Y_fCS|v090uX(N~EhT8OB*{ zEg3-JqRf5tgEt$3nvjFzRmr52s}$1HOg zHT0cLO8r)UB&jQG`-2aG1QN_U(!r1WNE|vhHSxF4Z++zXH9%R7r{Cx(b7a3nK!;W( zsQU5++$(t^apr|_GXK>vsh(nsv;jv07@{2E`94q=<@@z_fPy)Irr z-A|kxbemo0Opram$P$@fM?bl{Bz?7#b^%f)!!Y(Z?UCZnzjGPI{PJt(z(ho^weOpB z`I?>_8Sgh8?uvmaWleadn!8>_WmCxvtvwa|)1rY_EUnk^Znk|ZO z-n?2dy6v-hw9sB4Y!UwpOpG+&J<|}EnZ1i#-ev)ULNJ}f7|?mx4HV_o+Ll0hk#YD6 zL&rT~OXRgC$6`_TWkI#J8&r+Fgj&pNze9_*)nhHsd!28 zL?g=s=&!#qr2UCczNAiEi$!h7T=+q3U{mTncq!CzVWEmB3^aO-eE_ULMXpW!oSV9E z>m1P6_5>pM0(ewNQXoBkV^aKX24ZEJH`^;pdTh0cM5@LY@A79DbolAEIVI2llZa8D zWEQ?21myf%2XRO%ILA%u6Lb2DP6D7TNhF|+pH{7Wl@?f?vVVz(0GKXhjM$>u9KkHc`SX1p=}Yoh@?;X@yOuK=$7a1C`bEN4UHPN zg>R0KCRhH<-7#ixAWkH<-v{1*X}^0H8u+#pNJ{Y)j1J3my@EI13AB6L!$(#hB7#d0 zN`l*6>9vnl-VS?FZn(7QghGZXeOai)OW2@R!{vx=LwM?s#ZT)Rja_kg_bY{Z{pbPU zKB<@{Xy_WNljh{_Rhw7_hYdG5Eek|aM8%gb*CG=vCw!M~`fIf^=m?fae=|q4IG7i} z^(*OWk&mZB0WW`tUl+B0mn5{kVAIT=i6oCiKph~n<9Wz1 z!5fB=v&Dpr>92$3m`DYa96g~%CcwcvqIC@XwoQg)&rpLY) zqZN!9qX%k>Pck8*T?Ed6q7)21e0L@{m{^o{(8k)zXL9#tQR{&x*xI5H3-eDFB^`C5 z%i*CGzj_b$g-Hs0?E3)f)nnZ_1qabLMdq&=6grC1xX$LV{rvmgYI1H39UfIJ^m+|p zc#azISqozE$a^1XrvwClQl5Y9^ZIpy?IS(u`Kpc^x*KMRhd_ro3{y2;S=cX}x|rp@ z{YoT(^G`pJk&vUsulHvQbBA07t^SuKI&hm$7E-Rt(LaM}eI#n7=M!UU;+-EaZUO!f z-QD*Ay>iT#`1`%O<5KwCn|0=C!2xLM`%c0q6c@Z`sq<@pwPL;y5jm*u3Tp%2@-LwO z=iC}|z{F~-KTY_07$|hF7-p?ZX{x?2<`!1tQ&Bh3F$3a-C(@|Qq7ssEv5e(`s#gS} znngOZ#n8$6$Ym%SGm`^Hb88H~YCy1-feta@ z^xwbd!kwlg=9YK0N97i<9GoFUAj*I{(erh$j!OqXq@T#CUs@c{MoD{g6HJ|e0CNbD z_ViikA&<;r=aH4!{~NyI4f7&MnuESJ3>DOQWztBBlNY0nYyE1%a>HdyC;k3`JKysa zg-l0{+lfG{Tai$jyc!eruND9$y_Ola-QO(e{b@JNqLdQQ$7qG3mZ4X87W%s0u1@xM z5|WUp;C0L7e)JPCBQR=QkMiuBJ=@MS1%~uFq2Qoq3>;RSgD>LjSUxFANIL*G9Mr+v zr$f&Xc@4-6v1RynnT3|4<5uM6!dNqwRb{9E<_P3d+ie-f!@muH&q4`87(79qd;KyL zP4^uac!B(0i1j+@TqefQmt%q#^_cXcx_W9rCF=je9FaA8%Hc@-l(3Bw&whOxI zsfnNTF>U>1(RDiz_UreBTJcmL5Ugmv)ubV}H3=8;px5&s9sOtO&*Va`6n;{{)|R4? z8Uu1ZRZC{{m_9U@8%)wmq8msq#)u(P<(Ft(CYOHM0L6;MXau8B`*PUQ754INhC*sZ zkJx|)TE@-f^h1E1y?fcDL9PT-ii$ZXE{{yHVXbVe9l(<8(mrl?_I*(;(9Lu9j4Y`J z6BssukYQJ{g}#PLbVx`h_GpM-BVi)+!vnRV`zS=`Zs-!dIVSe-3#w>0ro}KC;23kT?1}QRuwR+(!Uc}d z`;qYem33P$8`}r`7a=oe&Q6ngZzu!t?v~tQU)T2P_@(%22ow_7O(AB)&-EzoAN9?2 za<24$Xjk!6)tFOH`LEoIH|1`}#zj%uz3WCN1mZ!zdf}Fd;++!N%Oe25$F+SAu~$Tc zdUV2Plr9umhc&+=H1xUKcz5g&YhV2ZNlCn`Z#>STQwR0hJDwpS9rFPq%8g_((kmgv zRCyZuOL^n6hHi6sGx@g-E9V!OT;mFqYkjtdaCTh!T2qF?2DgQU94M%DPBAEYSzOOT z_sNipL|2wMRwg$Fm@KZ!{L21dCZ0R03ITAy*q><>n*yg{M+t}L=L&%=Npg!nB&#|| z0J@cLsuDc0d~tgZ*LuSH=O=OodrZ1~^x!HC*%WH3kq%1x@b$Ia5Hp?=n=LX&8fCBy z<&@-BoYsM=A`>1kx5fWa&gFptKh;~Aa4yaa*+aRtbke*UvYI&9&dwMi;5_md`o!xA zH%{W-A1|KP!F%rqQzi{5jr*78v&$4iE+b%MpWE<|TDv7rymIqa+IUEiJpRQ*)rUMN zlUKUrmUskJN>P(wMC7$6E{spiX_Q3QamY1D$KfEZzD7yjy?i6}3N!t1W7Yn#HrDML z1BKi_Pz;Tf@uH5ZeOe32Z2}zmutP)H$yW`aTdg4Gzy9-#FDIH4bzAiN}3O(NK52+_N{U9k5#SlYe6k-`S&y#1Q3JL@MrFfE}7h@s$(s48f7R{ zz@3m>5L>kD64vDyp8ReI_^cPB=RzHA^rwk7`tq|di_13UUFs8D@{X_EZL%(KnOB(U z{obCgdrW`PV7H#QS9Hn<#CEPTZm{L+36lb%w3YI5~Xuj&Isa6~{md zE>c$x6RkZiSa9_cZ0Ayjx_z?@+a{Ek+U=ECpXx^YzZAZH0+@HJewN+j1=YTJFq}dX z0;F_LMGcEpI#%~Q80!OthZA*F=?r=M!+PYr(s1&J${3xFn03p?E98uA1P6O|U<8d| zQ`N!I_#`fZRuI~#Q;03)1Jw2gd$T`r*}L5qSSc2!cnPM7&!3Tt}U{6xc%r&riLP zl?3#p)scRnsW)XL2cW6vO}Kj+#zwaknfAR~&mdo4j!h=4GS)pb0&j}~8FF^mq6af% za|vj8W<`cO`_UfCl+SH&o7&u8pQ$Fkzt<|8M8|F+zg%=%$*F~p=LsH}U;wRfO*rMFUaY0a z>@+s=IM%RhoGBK~FNf}>TRsMfnuZ0#I2kVB@r8tZIx}W;QsNKW#ptZXUjxiuclEw`?mw6*%G)S+&R9rww~LBj7j+*|xLwN8 zT>rriAKb~Mbv4kJ&5v5NUp+tPO+1LAwo%x`p?nG}&>tAT7e8c(=!`Ogs8Vl4`@{%F4tN0U}KB9E7M2;^; zTJMel){l^^Z1L8^KMDNlk%D(i4xg_m>zo>>z=APJqRm4f^QSXdZBWuq916Brib6%c z-AF&dS5a2Vue?>JSd8_Wvheuo9DWKVtIONbL2d|)oajpYDS>%&q;PGg*vg$M9e{k5 z#wgOfpJSG=Ln|P0Ot9|Iu11WJd!&@qbyps*AJe!83YJwsbS%w0T;gHTPSwPuOs0VP z3-@01R>*NL6&+iS27cFY}uxf7j~oLf_&;h>H{~`c)E1G_9RNEgp816$xfn0_FY3Y7}mLxmLzGolC zn(W!v83qx;3<)zB%kLgNpU?Mu&hLB9`=94I=Q+>YeZStX<$7J$HCOk3)3Kxy8vfdp z3B!jAfjG^c$L|qDhkW^W!aG!L6oGq~9w<+>v6@mgQ6;LR{;!7peY{=LCBF|E|%TuzuAVA0a zPsGZ77x!i7{%prX)kf#UYp2Pqp}G<>wlNlC9xfH;=Odog;qX4F99+S0ef9^?Gy%?Z zK0p6*0Y(xD;RsiH2^u@|0&;L@>T@W9h~=7D{#YvS!|KLY^81dca#w8xfTw49IF)

FxUNVIlbKxn+p5fHFaOLC``hR@`qk1DTxhn*D z(#C4WA!ihaWs3R6vx)xkz$Ir$y%eZ)H5Jd>=?JtOM)A8+cUl~S2H(C>BBpqfl4WZ% zbx9BG^u0FYUyRi17wxql?2?~!{A2+O?Tg&7H0j$FJ;K>ttq_bWF1^Sx3@-7k9Jy#d zcXFw;VPP7`AbY&`1#nscH6E-fU|HF7f#rkZ& zH%zY^0!oPW^iew#5T`?jCuoe7S-;JjD?ub`UZ74;73jZjZm+U>#cCnX6sU060xq-H z#+8|r1HvUy<;zca4M1W4HOGA`x)Jw%*WR7j$JNq^D5;fnCvH;P2 z2rt;H=w*od6icLFuN@oUW+cyDi!xR}PpodStiNAd?Kns8r3RhvhULF&P1fbFV9N86 z*67B~xgqLMh&eHN3{#%BjzArj>s@KIKY+c)ndSfNiF;MtT~A|3Mc1rapD35?EJ~u{ zk>wTgJ}U?^)*$92Y@$MChHsr>#iCK%;C#;WL!QA|8yo5>QI6V)0}{9w_L)sDC}a?fJXeFkYH`&ku*%R{M7VXO1;Az^->GJQS#y82p%L+od@0 zLCgEsK5&3>1~SIgl^GhM=o`YpZmW~!t>M*V|7{1IUg$Ty2vsojp@C@OvL|SWHsMBF z;#DgX$h~GOQqqA3cCrfY?Coj2R>9U{qIt%Or<#B(=q@h4^>@Ezd1`MLleJlKs+Tuk z+{oxSDb{~B-gV^0&KZkrQ5aedcJ2Wry2$NyvTj?d!4&=GYipsQuzQ^M9@jO;*`7#6_i5d1Kh8=CSgD6b65guO|M?Nz*krpdEnWPS@{_clA*_csPENdk5m>jIlNU3IB{j^yz4uwFUW(5=0PMBi=XqDf2t!JgdKQlQ8`r9>3h#MC-^G> zCwdz&?$ZPCXp_2+%1b$5pg}hHlKd#urJGYa!!#EDl_xG-O?u(Ho*S{hwH)w?KVlSC zzqgq>*=1Q8c9z*r`8ErXA^H}mVA~dTNk4uIQy7C~k#F>qlCR)wLUpTUF}{}7c5F+p zpZf_J+H)JeNP?nI8co{unlJTcbt*1Kij_15QsF2~aFJ)8g-$wz!KIH=J*XxLcho2N z2kaICC0bry7c}7tWAnhSUulX%_n__-P%p5cVvv@vj6(3)_E)wm87C`YVr0CPF-JYK zuYeD>+TtmZWQnZb{TV(Zsr*8JvsF_j)T;sOv+H(w+2dUd*n+8IooJcIPF%?7k|DG& zaZVnr_OrL}JqZ$5$}NB>?n{h2a7qIQBR}K1EGAQUFbA;t--!Ql$`CLdAPZnj_^7B4Y(1{Zvyq?rlV(JOr5Lo_F13IH z{|$hZ)Io#w7%+_r3j-^dLEFN7QRvY3xR74d;&(1<3iSk`2K~h;rWOOx8^8|GKq5+%-xi(rH*akWB40|n_^)4M z1^pWN)M39i%A@rT`P>#}{GOyYqp4W*!8u1AF!{0-TYYo{jIo(iq@zZbyV)uK*Ke?L zs#r$A$wZ8fe@=^y%dSTiSm=Vz1#+p`6v%8+-h26Fq^|G#N3dA!*DkCt5PV7Yx}?3A z*Ru|2?qjz#bY}`}r8L?kZai(d@rgjXgTf=|=FRM$NI+P-BcjCA|Z52X4*_WSEU+e z5t>$eDT=Pjbw`bW!&gCFuO%|Ijz=ifV{=OLBh(;08S0mZ1J+;3_J>qwk1^@3KkaiI zmssTMS-kblq!t?Kmfj(Lpx8|1V^P9_P(;?JZEn$Z%o``Emf$mV^#8-qrn$}P`odOn zCgltgBJfOFW6VxS5(gG`*@ajAbDp%oTMqnOH}UM>ap$Z?GYCK!dD^CmNpJ>`tH%yj zde@BBBbDp&AYcFffPcpWJG*15vA$rLeUI~o5cJG7wYrZI@sOXF4eQc*AEux#jc5xa z`Ikmyh?T|6dp2p@@lM{te?2H(dMm`~PZZ6A;$Q_^euc*o2XAaH$3&_E zmyJGNKt`d+Rf}%Qh;7Q4?>;pYe|6|hh5EPH4p9yOt~Hy%R4#N`EB=jDkUc1ofZ}FY z?3?{k1(_NTUky6{(b9+`4qf}m3@astYwm3QI->m%FBg={=P$WK(%P_MhEMHdmFB)! z<6zHMa<3$F^8>-}%w$|C;9b2eR4ilK zg4={(9$RDzesGEzDp1t#tp7Ins2kUUNqs)ZYf)&NKti|T&2^n#OXI*@KdCaBDNH`U zg~oKprB6*UN(k%?ll|vg>WXE#ZzI&^s#KY(v-QF1AI$$n{o42!O>!H-Gl8qmqHF^d z=7%hl&4jEjqevYd9W#V`hkJU)RJ(;5Lgx3;c=Pagk!uGTcORc?$$dukwJW}S@_VX^ z&(2+q2@Wt*f~F3kHk?WD;U;!dg&+0WHZJEXORJy@`jsSLa$)E>HvQB-{lSpU)Yauu zm**OQSZpr+#xZ}$z!bBXCef|QyZskA$E15}FZpY25*pYd*n5NBK(^xhLg+^z#>C5g z4555P6}xM4M9HV_d3#xH%ea&4WSj>R)1@EzJCDle>-hU@V9*RNmh_5VG*Dw+Lt z{IhobN4B2JL+3yv0EaNz^}eiEa6fCXE1gr;RXCxYZoJ`dsaT6=}C=N_^H^bM;8 z=eEKZQtfW`2Rgv!BD?57_v`Njn+@Tv--8*gePH&V53?bh8{aAm9If?RLh5v<9X(N#V4vIN5ttN&5NsCxl=nYx}B!QhJF zH3TBa8z%;ASo-aNoO<;dpnMn9)wq$8GrGj=%U2N_A5G=UnCw@|-YV@v;xNTZ8)Ez` zCEZ|{*IrRTdf?_|UR#uYI@lo=A8bH!BZVo?%(0@dUh5BX4_32=JV-H$b5lXNtNA_t z@e*@)vd&~FT6V-C1YmLoi-W~k%55>9yOd_lYo4ZqDU=R>VpzKB(WD(1)q%O)GFYu* zIHUej=dtL&0~Oy_)AQR`MgGG3IqY>Z!Dy+CO)U5$WA>Ab!bar?1_4ticF>=-S>d!c z5KU|ScTUiNP`-p{lcpnX*I{|YfKWeMn z96~A6EHo@s*h#~&+3)UHSnZ}r&MCl%TCqU%0FPtRU3Ag~egYT#i}s!#JV>1w*y8`i z!oU6k(U6+=l)rc{8r5N;{W3ZKOJcqUKpWRQu7W3LGJQ~3iRsnfu)9jed>br~bt;>z9UU;ZKL_{AWF_F}3nEVEk_KVi9+ zbv1y0Ny7#y!v1ac+%lgpIooT-ti_RW*k*y7_z}Zyv*7S;dx2bcu<9RCv3qeF#;cG= zDA_>)j(}vATZ-gX!0IO#8()HW z*qJhcjYD``e`7=n>Y~!Y{GKvOEtUN2yUpkCZn2Uapfa7$ci^!xRa^{MyOB8QoQ;(G zAT@q)WF#(c6vDo*$@?EJw6Cn3+>UHkLkeNcNaTf)8ifQ|GYfNxs}=Y5Kr|!P$d&5&3yw*!S(^;RuIZtvl_I zZ9qW1<=NhqpSvaLJ8xCG37?e!UFlsOYx`+c1a3CX^$?#4L$k=+@*o^{Yes)b7wm~h zdNni`sl;5xs8Or+LP7GRZU z*c{>er<<>-Lblz1Zzj9J5!S0a)AIw>{{a~8Xh7 zZ@u#Ou+4_r=wwQ>Ywtg&SiL*t@4xPn*98Q|5n#JghFJazV<6S@-{OKEBw-E|TXAh4 zo<)2+G>MC6@0F}qT6=BHJygNjFyzS?pz?UFqZiNtB(^5v(AF?J2Nw-9WZCfkiCeIT zZhF+_|LDKw|6%_8vg?ksIp80`3w1`erebn_q%W5WdvXnR09KGWJ9amOjQYu!bLVxhZu z)%veHZ!Xos)bRS764G$S=%iys!?t}xCbs+-=~B}9!%knZ2Xy*g^wduOd`86MLwkoB za5f>vp9M{%TZ>Aw2l~F`N3_VZiYjl3v3Uvh^MVh(g!HqmpgBSZ=dow$39s(EvDZ}P zH714(p~iL`X#UPQq+Y|H@Z1b8R)YY&I{M(xz5EZOU_%Z(W<`+eQv34`yOqrDUwkCK zM+2^15a4)G`-~)dYwK_}YwY49WX5@7mm*aH-Qf_d`GR}s9}nnmb!J5;UO(5o5Yd$n z41>Pn+Ghz4Mw*I(%hbDMlu3u)kg;8$q+~ROKxI$6=bdL+hdNo-op#}s0%w}!yAAdcoRVD zF7>TbPf=4?*t5I&jkNzM8+hT*LYMMG0dPzc>hwirfX;!YhqdNAR?FxbzYMeI2p_Kcdo|*L2a}!v?s_LtwZ_S>k5)=&q zmRnI=XjfACP0}?}SS(NW?mvn?*tvXE(HI_+f)f(@)gr~E{LE7b|U{XY)2Xrzsi zQBO!Z!2?lU+IIci{QqzPOh8-YIacyB-*V*lObu@(@rKaKYo?gi)Y(7@_G2QtV9I}2 zFeqSvC`~(Ek^KQSKTK}GN208~$tdwFlaB5wH*o|0AYbHA&{``u+QyC3V*Ynk#M56xQEw`fQB zTKfV&M}h}wf5QXN2IEMBJ-hA)Y@%7Tv5(TeLkDbxIxXuoT5#__E#H+&DwogWysdBxP^744jQ=j8Stc$QBuAd#?d?HsfQ{}(i zHMKP2rwUl@z$HY2%KhmAtg${o;xMJm2WrNAgLzY0Q{yGO&bg)LemyB=Ap6-DQ5_6f zrfz_<9NoJXPZbgvI-w9+T(ubHX_BHtu5zN7YI<^fj~H*?BzmaVFkU&fuy)R`2E9ml zXuJhJikxKKIWY8V$Pa^q>oG^>dvc(%S6QBMc!OV5P%#98iP>vTdcK}(zp^e)|LJD4 zK<2)kq?fX?5gN*};eEE~R1UP6(A?Ui6?2eGj-32EBDxmEZX(yzT2k&K!8F5X|G;o9 zt=)GOx+rX7b<*Um0bW;#ioN;1rC%R>2-58?~Rus z=7q)Wi7(pEa2in|?d$(j*Bj#{buO;hk66xkWJ4YSG&0T!;1ob+AX5Vdbv>IcM@A{R zH>HTCi8yJ4o=M8;T2sDN=?t&4^cy{pAAv;8LL+JG7e@KkGK!Gwen2t%On9wM$zYh# zivU#wU_2m`j@rc%ay>|OR*Qk+a<_x6fkXr}`X~ehu*8u0n;eCsCO6~VuLSs>%sz26 z3s3+f%F5$spsxeNAT%aDFYixmQa3~vNy#mDvd5~&#VnGcm2PvtYfupBelb0gv;2jy z3IjKU-WTX;xX?Qis~c(3&^_6?#KEcjZAjUAXVFa=Tl^Y}c>T7bz=~$U?I5FMM@BZU z`&giJGX<}|%*&o0Q9u=P0z-@q#Z@*hz+Y_!_6R_TJj5T*J)2^&MqDLN?yWe_ukU+| z;3QMTvqjd*ByfkVOW{Z~byHs`WB5y4mUlSx5*4Dk_@DT9MyoNV>?D@UdyYDahuJ&kr>_-Mg z`TOKze>db1Sd@l5R#*5amJ2BSSdkDL&@SprXKn7hAK|`Rfz|D|h206Ak<3Ep z%v@Bx81PSq#0o#UGI6=2BA@!=GmparZ8)#sm|{_EHvxxtke3D0gStc{eIC)K)Hq#D zjs%vQAjbPey8TO%|E46Z=bJV8O@80NT!}|UdEhJ>F@Q-^s>>JpT zf~)PEwB=_b8)tH!9((I*fAR4ts@v;>MBzyR+4h{%t_x=wzC+!P+w0nx@b&>OgQGS& zAd%@OQR!XU*mvj%x$51mw&%^^ttLu)i{hZp=nY~4tM8N>LRDJO_r!ebR^V#x8Gy>j z;Km&b>@X!?h*|HA^TqCLJ`JI2=}rP!46uL=kY#t35e5kw*bf5ZK;YA&gZ28r6vGI> z0FqP`Z0x8(Ul#5A((id zxnI~{f8R!hVxLJvbWjI;_CYLg53ZA`6R?+>Z&e2X=zENq4NEc=9JsOc(PkspM7dfZ zmJs4Uw@QhCN)}mbRjbE@(-8G~TYrdn{Scz=$seh7-Z6OuxEW^Dzo80m*dLx($-Vdg zyL9!5Olp%DC8{QRMqKS-eYJ!{S1YSkw!=*}@~ZP5x7)*5<)20GUGj@Ti9E?o%;%2> z?@@=JKc&w~&YszQ5!I;l-eB-9RgkR48X`&KwSS`o&ChLs0?mg9g2xTa;#(X!9!beP zRK6}l32CrW0?w;c^bv`$ZqNtLfF`@|cP;wkZyM7Bjw^#wCclb4ky$_)<-d?8RUZCcuze13m6 z?QGG@*-i0->E(Q7%Z25hWh>#~Q7=o*(aqx3tD`brMgHy!OroB%J=`)YwZb_LseAL# z8M4?KNHw|E1J#6%W>vz zYE@XRKD7@7{;no;Pn@)-6=M>@UaIP;bZ@q#7r*QR27FkqFTjci2ncy=mnyiDhS1Pe zJt}ke9Dp%&8hi+asW8{;!&_|rlgRJF7@fz&^D%X7*@Vpdo%N5N45iz#+1~^L$WpH{ z{r)Ep?j*)=(Vbi9Wk5N+C}cid?F< z7igC~sMtOjS6gKoX7-zfYEo|5veR6<1XRRv98@;=okIy%g4jWelWM+9#5){Y}coYF+o<5YJ zw9L!SV8PkU2L9dG@Ups%Pi(Dvp-Scq!BP4Rl{F9#kf?A)cT!<$USXMe{n}b|-tHao zl6NGLA?N!Wq9EUnq)5!-P*W?Q@uH*;-Gi(1zIYq!fAKayDE2i<^IvMT!+=MJB{x{ z#zd}O%(+OKl>egdc=h7z&#zxa3age7%}0ib&V$6FA`IdWr6(yqI=bV^vAf^2yeF6I zyFiM_SeZ1EOZOq&hNHO<#lj{DkGJEIiM53IFU zT~%%~A3@7VmOuM#9$?@ZMO&X7OFvyCtDF0?y@*sVF~Wpn*?OyA>e#m;a~Y~z7fia= zp!b?^7AKldAnmlagT+KC-zHBgahYv;e`?*NR8~HikiFR-g4>jU?|bjos-7J0qth8f z#yD@@g~M3U;%Y-H6*)`0#3}BYQh7e{*YfYmis5n&l`f3JMT_XmTf@%l+f{`U9{yU%d^WoqiR1;fSk?t(|*6tfJ@TweUv;s-NjtD1fl{OTR-T^f-pg#&R=sh}gk!QL4I$T~%`XqB5;{jV#=9>*yXou3 zHgPWo+T{zon+8=Ud3@5P{L!k^8MwscTmCKgH7)PrkyrAs!QUK8H5JKp{!!E%J$Y%~S2g&lKM&QA@!2|q9zt#df2^TxXg z!$i0PqwpdfzoWnH&d;E=2d(&zdZ`gJhG#XNeI5|ZO1!E2&UrKEL;QUb_0*IUqM6u+ zV9p8u?>O3dwS5|$f0J8MP_AmxH9d`k6>S0jx0agi;d3<8^()`uXcxw0RDWAYdw7$t zZ_`2%ax~m(w*!%e{~dG1-mk}LG&!)$c%QQPK!H9cOx3B?@y9De#AArOtN6g@I>P6h z8BL}XQ=iiiRYZ+T*fs9JM(7t(awoAJt{|Hx8rMcux+4=b6HNiOh{i6jq9ZFz z*UB+&Sp$tZ%{^)t9u~O&oTmjnz(x5QiJztsw-O>ce`sSI-x02I!$xXP@6~?bFJO>_ zG*>~tP+B8>bB^7J^-wq$43ma?jP{#8t8XH;?)qAd!4gFBFccq!h|?(9Gtn*)zEgEyD# z5oUBd%@MNg8)?qE;;#j7F4$$K4u6$J_K{Q^?D@V*MvgQl2he);pW;$)!O{_#BOj{q zycSB!I>E?x^QM%_ne&0?xoXMVp(aZULh$5EG+t(D`0F%!m?z)Xc-?QN@|?2lPM9Tp z3P#ka5O-b({D3#y>e9!`nKV!=G7z~gj2*3yT}K7@?fGi+H$v_kX#uAy8D| z#XqznjO9AEacUr}ew(k*HE;Tr=KuLL`6?36j=3a0QtiP9)yO}NykcWL1q&wR z(%fdNpkutfvqNb(kCIA2&IBj2{Aw3FgOjL09zl-|*U=|gL0)5w(xAu4V*|y!yR%=& z&if_3*JRQX$|Sh3YrV5lMLY+;3QXQMCSRloW?|HcsJPrA_*+w(RZR4yVA5wO08i~? z9Q5os^9X;{Fa~83aijgcfsSLUBQB4>{J(>f?KGP85ZD>h_jO$K z@3msrN%EeJ@VDeTD_L0z-g+|>#bfNMlj1Pju&&^AuAorU4b#>y5%XwoBWiCvMbzy&L`W8B1DNL8J+u=QTyX{Mr3vSSj6WU zSxg9_Lu2o0hEa=^^bV`D-{qrTxt-elm@Z1|*kq8LHD72s-#bS&fkNKJ`1_^QzYXN7 zjdfP}8P;*J$L|9jX;^6K8fiFh9hsi|(Kr8v%<*YBlD2S)8`TH}nI!->c=XLBdoqhQ zH%Ih>Eth?3^SkLHE#j>=IZ3?zxD(_-6Th=f(D!A7?crmJMK_;nqC_TNk5+j4$~^jG zo{@xVYA>>K+^}@q{TnM(Buisbu>E`S!6OH9ts|on9lL_)R%T%oA-9cX=l(uL_t3zKvw<;lj)uo zqt<6ApO?0f9X$5|LQ1QcyocC%hZaXiDw&2Iy z4o2iY3+pzH7-@H|qaRK}MK$tVk{|i~VjD5m61{)_nAfEqvD=8|?-!cCPw+})-`w*N zTFGN8l{giQP$#Y}c&ynRk4>8DpL?sEx)gmbx$iU7*p8f)Q`hD*7-~{+{yA5myl^=g z*UB2tUH$-%HJX$Gw&G3g;r`5cj{()M|0?b>^$h*&-0>I&5r-C<+Y16GC%E4cim3IR z(5&HW93jVZ?%0s@b+-;Z<@kBKBI2AS`V@aN;r@88r~8 z0vb~`KlU1uU)n9yvn~%`MpSKxXxof$xD?slZHZaeLv$mpr0 z?Bxq~@Q|oL3|<`xn*BMGit_;}0gm<`6U! zp$TNh#OE8U{s*z&u`TMDNR(==*hP%9U;Go*mStQ`)`gax>fPz35*vWT zs+wA#UQ$9_U+EFMX(xoozU6&1XZO*Xm;!3U(KH>N>${=X zQ+)7}uIVW63D9B|xgQ>Ix96%@K>-Kdq`$wyQ7_>C@?)CUr_pL4le=fC^0&t)`_9*= z(V_1U^jHvie_smnKRZ9+F1~9=i|x8zv3$BSn-4v5hPE&jx!%_H-VIUG2hR9OuG<(X z0VgM9vQwzjT20!fT~rCrM+zFkni!;{Gc;g5`$_AMoeXbuxoAR^z&G8gVx~Ev&C6PCb%m{ zgL3ifpm`i( zI4|;dO$g!X7aki}P9dk$ z85~>b^699~WVwT@p$AR!Eq5b%1aP8Jc&~GiDsg#FlfBr!;sb^8?w5+LoTI0yN7lwW z+sZrp#;J4kJDqUS71`;v|LS_4Yh!lThsFR*NJ72~Fwr~FEVsQVa~bcVuF;#5PWDHB z@f)!Je(uyX=t2}yJ5ExsP(IUeaXxXDFt3JrML3F1J=k6FKmRjv#$ah_k`Zfsn~X}! zCvai+KAqe9#O-phYwC79W@5Vw7DU*KiGA` z3dh7*FZ2b03(b2a{qT{9>jyDUl?A@Hx%fhC+|L|&OfVSiBuXi$_C~Pe`@Ohs0{ICM zN@)%5^^4M%;F{`g7kiB)JQL#WNq(@mPKeQy6%?9+4_1TKaV7ug<_y ze@$O_6y60uv{Oc2JAI#F_yfw~r*$h5z9}J}APV^9S)|!VTW&?;8Jl8zM}k`Zui`{w zB>N}LIRUhPM@!SyFlPLcyBfCY#iIUu<_`uJc`jAjOQO4?@NoP3-l1LIgyZC1f1hii zWe?gd1EQc+)4Oe5T$+!b|B;ZuRyl$cR6!A!Ics&$(sUfZ{dIMJ%L|IdD~)3(dF7}l z^ri>AKN77%oDFy1r~S;C0jU?hU@h+*clZf5yq|srxnMUar|>w^e5W zxf#W7q^nH&6DTd>R#3Plv;;Jat}VB$6BaKpWsJsxj8>#)|YQS#v*vh z``N$#!sIv@(BB^p=!KK#SCk(MJta4pB9ESUaK2RNh_KO6-_Q{~B<-6OCN2$;ZsoWU zr596iSvD|h@Tw4Yhn7kE?ux0(+x{mfGG#H|x784A6SF;IFKQAFAko!tDXn*d5fa?# z7Ozg$#e2#aBOyOlB*3?1v3l&DV zD>9Jh;2j%#4qExl_Bb>^Ydd<}`2d@O#R}hR!ipldI(qrY&RK zJ8nh0^-k_`tk#qyyKc``5EfUSG#tU2i`^n5CEW5d)COv ze>2uVE4*_nNCRP(rubNZ{p$z%M;%|Sc7J|smU+C9gw4_MaMos zy6};NYf6#(XX4xFplk9mc2$X}XWnUhuUf7ccE#VX+-V)_q&7fPc0mL`nEGaXiu+vU zdHEn&X2funzf>UTbfO~nGI}?T@^!yPIzf}Io^ynkEeFYBfD!{zFM>o?`P`rS?X zhs2D&@H~PVXyGW4$x_{=@?R>8R=!pFYxmaMY9KsqVK*`$@+gAYJOnv*Dfk32L!Oeu zUl8aEYZo-E=~GgQ` zHadQUnrQ!Ct=`$-^y}(36$m1zErVI5sht-ME}_Lbq26nk&rth?wG)(QeQq_1PMqEP zts^53Je%4a^RJ^T`NEu8O&bHL>DCi`sQJfnkI1~uo#&r779SW7$+c<`OJymOJNbm7 zMQ(rx-982WJKr|m%L&z4Gvv2Lc_3Si_5Z6}E9iNmuh3Qou?~@w-vz0%k zWcZ^sWGKaYgduMfh6guj5I26;GNF#pFO~u*=y96A}vaG9?;_ z?<+sw`ZlwW6QWEk-FsDw^n06sOlx!Ej$4yc^gscYQyHmQys62S~yK5iO2CwiLu} zM1(2?+`Rs*p)H!VR^=aNntu{^(*xg_Thks8vHSFxYpfmy)Cg)o0?8EZCHcbN4~bzInR#PkI`P- zx zz@ES%u196TSsj@$+OS239DicQbnB1b_}wn!2r=Ma!GsfS``l@vXugRmiAJsQI5aJX z;M;hbmTugF`~NJ2i(B4`>UdQ3@yNK8vLsq>;&Ayd!QDvoliqja!+Mc^Vv>|6jc zp(OVp_*ZA$ThQj}+qpC(EPhQmSGM|od9q2yWm177Qqf~7IK|>zs2T-vq7Ak)=CqkJ zCi7;6^!o{D#jsqtec?HZeD|iFq8o6aQJ?iR=}Qx zl!vx!kKtuz>~uX;{f14JQU|ZRmXATLrI=kksfQsK7~t8Z%-kZzkf`voS#x=Sv>G&w zd6Qa;AO2bl7IGf+h5dHaLZ(e;`-L=uB!@^naih;o@?Z!wO5B$W-AyFzJ`me zuxa`V2aCx<{TAsghBDt!@?8!fU7)Lw&jO>@gJIVcCdIcY4*82}@;zX78Wopb;^cPO z?aSEe}ho|B%@EIbQge^`Ol5COP!?dOWw1qKTXSCTkn`<{Zsq;sXC8=6xYM;KgnjlD#v z7raCXVN|xU?>&uC3>S>n6}5#($#KI}iKhYHD5Gx6eYs3iR7?@NhhHA`B$fQ=_780Y z5bEtnJQ5K_c6|7nBGa%ZbQ=M^0V!d(CTmMnS~W>!Que`U+cYi?&iAqPD*DYL`qTEj zSGJS!{^nX)a%*uQ!u3@9iYhiPO4Ia)afh&E%=D2P8&c^?DH~?#s02!?L~minp+C9Ci6r@;#psW**$)#Hy_`dx=SAD ze&xLEI-L5yv9OA5!E+{+Z9W>F?DbvCek$FHEa{iOWB7Ze>*1|~PWgt!+~n`rU`NIo zPa3Rzk&Ug5l}o2yyE~tPTKl9I<|y@SAKCQ&JOhXH9|rWt#^n$k13Kqr<-^3NmEDa% z7+77X)cw!o;og{iVB6&#hA5Sob+m=$sA0}wnb^bW<(%VOYsU+s9U>mp?cuG0ek3ew zY%VlJ$pWmR4$g_}6<(>=MNX&qt_hhXL3J)+bl&&F-?=%H3bVYGmVYx%eC7cY2mo1e z%9dR(Yd_ucU#QBuFxQBq1I8)G+#$)8B*L;xDD)jsm`@&K@L~`s)gY$);~w6 z_(B9L8Y(H^hcF@Dw)g4H*@6__h%6 zw$FVR9QA&-@h6>@?fdp$j2kYfSQHDNqz;(3uw1t)9<)1$bgCwVoVhOGvchbDo#RVY z@bn7OIO0`KZ}f%qGyzw)khD^N7dfpYPLY)8p%yYrvf0y{*Cft=I$!4CXMYpzB7Be_ z2KHpDR}Haj=wg^$A&mJCiokv_?4t82xgPJ%kRC#aM4c0IQbXARrg8>JO`RCcaI0am zUo80-01S6Z6WbUC4B%Z z)=O-H;DJ!w&I44HTX6pJ!_Ljr51bX1H!w5#Q@lz}H;tu#zdJb*{4ghE6hyCBIkNW_ zkq0&OFmRf;lJedYd{CGt!biPGp~~m2&%F3k7F$elmc|}_l;z=zH356X)P-MW%#-NN z_4EvbDj(C!V8{0;3P2U4j-wTtbHbzOJ$$5OPNU>#9)9-ehyp*T}#~Xd)m# z+jB;!Pbxd2QCyOM#nM-o)li6Pd^hdc=IsO`K;Raw*3z~in$?Uq{n7^R&srFpHY zE2scU^MU32!>s_oZ)`$vVDe9`dkHPR^`0dz@!$yibpiic7lWoZ3Mu2K z7QQkSVmiqx&&$9bpD4pwzwN%$?=V8G$R=QonW`3y&>|YVMdwr-VV?79Fv*QpACY&Br)!|Negsa??()6U0$IGWp{KfJ{H3;uH#mSuNmeC zpJy^kb=va#Lyj{yUGn*l&_sY(q9Fs+vPj>~{UGy*rePwj)8^nwG%&9?=5-#Mt>3Qn z@Ekb7-fQKOC!`*)#MgIl(8eaSK%2uR8&OmGicTioIh#qM)|^d>+b{XKs?MdBmToaf z^oZ$UQgs1`b*153oc(SQ8{GT%3=4XgzmA>*4wG|vTyxjlYlXogR7c*YkYYRZOYaTH zer{ku=cf!kb+(t_>~kr?DY5)~*+}DhLrOF>D;oElQv%cwk$d|#dRfQ;D=WM-xV;CuN0T*_!brIKWt zOW3WRl`zM!!b6rp+-OT`i2(kr3GS&G$E1~o1t#%aj|G1km}@N5 zNhRQ)dq%j16vX}>8wg^b2zr@uwIKS@&^_mwd(Ka3PM^;)ycn)p5lApNZmBusmyqa} zuzdaMq}!WUn$(qVB4`dw#LKI<^mgCa?wF}Jw+&*I2s@7tAr{8U47rGdy*`Z5`RU$X^5;X03fX5ahMb(u@w&g;$; z*NZf$3TZLBy5j{$WVGI_SJS~Oqehy3P-@X<8flE=Uk%*gmju3!8|(tQnDb>4ZQQ)@ z;^Oi2Q>79oCtwdY07&Pm)34vM_t%SsgSxh-HMtRxANO^r>#X5QBOmGdl(~yqOKrHH z^V1r7T$itde@Xu$XZPU}#1Z_8tS=(Oh*U3sPTx+*2vO6god>EdC|Z%~mJZ|XaVq5VFBH^1IV)tn$n z%;bm{u4($V!P(6SDkufp^x<@=(giNTPQkSKTe1cn7b2o+%F_g;=hgBC5qeGe|}uxbfnrPs8z!eYYB3Lgl>| zj@KM+mZ&!{=qtHCIHf}@4r@w22J;!eL-NCzsu97;Z7oj28ungyit7RuPYWVsSD%AN z;#k5wdxf|!90yh6{K9`&hcn&esWm3N_$$x|B>*wYC1kGBN|M;hBa?>#l$1P|7FjU; z(tnJs+k<57+1vUq#*)^|NmZGtdrz|vkRI*Gx^Y`|BEu=?jugASHi<<}`U7^(YR8zf?OM9?*T0&?Dr~sr_egwp|n04OUPn1TV)nUw%ir>q7^r zqmMDff{k|Yri&U!J^_dy!wA0@%>3-0=ONo^!;gZrfkOOOQZcknb=mx`Zym#~pQtbc zLvLwY@?cBqU`wng^l3q?=J5KfoF6(rhMdjpRxj!z-%4o>+=_U&g(gcQ_MVb zKlio0ulM`9{n12ws7HDfI^d#uH!OI9C5W;BzzShWwgpwG_%)NM#{+uZ zeqU%rmD5|a;;-j2jbzp@`lCT_nHEBPV?AIj&qccbO4qrN5c= zzyTdKgb$jLAH7ZIL@AvmC&f8AppzHXV;r}FR5Q@RHrVt#ekf?OKe6O1?d}IKc4mvI zpXA7$w4BOtDB%hsA{dYFcEP;#C?uYntOty+W29loP-SsbL!IG}41J(CX86hZd?+)m z{BA`1k5^@=r32tv#ibp6U~p6pnJK`O`uv#y?Btof>HFbf&LJfUW$#os?cS&tx>SVn z$Z{*khYhIrqn?j+u^IwW*K(O=$S0&C!+_uk45lDLhxc-a)V{f~Kje}}0NSR3?$3#V zU`jf8eX{NQ)vf$l_0mBB(JERCNaw&aqG|g*PnJy$b5nicN(pU(+cI_=V=uTMfAoIA zr(`X92ef^<8W7V)uH)p+Z;ii#WFheH2J3x5IeNc}mPn6J;-9xr8!ZbPMrsqxh@UE{ zHe{)|Ly|e+Tf-m9-D1!^YiqKiv&}g4EU9WL4$6ub2yE88e$ zL7^mI=dh8ycRO1{-Z9^ zl2{piR`xIgWxxMhba6tpDBS5|{GgnL1&2D$F2G-R8KDA->tjR3v$AJzcLi=f#g%v< zg!XZj&9>RY6+V`2MAT=A;V1fQ6WLz@2v)4h4$Ud~Ii@OU_tNLsQ@y!cbhyb{ouu(SUjNt8 zJOJQWS~CG9iVk}gD4fM3qaAa^dpPikfYXhr3&!;+`g&{Hr2_+g%X9y8^DeO^vX zGZA|SzB4-8XUTjL$+0l^N~mwgN?SYnn2fO_gupuSQk6vW>*ihoAGh^#xsGjk-Ignw zjqewr~Dq{d*)XXI7&L$gunU}x)-|XW!E2~V`p^4F_AImz7(A?zMA0E}$+LU$BHNtd@-$B> zC#-t!UnJ+5$M_b8*}qvV-#=BbLPL3so$t8B>Z^3etJE{>_XmeuBE%_J09T%6>Jbn- z{G%fClQW+|!WVumP4&~7wYCCJ14v|qAbGm zR3^hscXK9X@F)qg- z<$wCqu~(89eGYlqNbWZbHxGUez_bToPJE`ou$#(pYCm~P-}ce=;v?LU{;T^gNjZ!U z&9h@4TAYd|BKdK3Z&beG+2>8Scx~K|0T|&}3q}5(x$(fKTx*&BsczMF2_t;AK4#MP zj~x((t&AC7EVdpuDq7b~gReJ=P!eh7nZ07=u`@fyb|V!bf!^VErtH5Zu({-2#BbQ| z!_m0b^^5>WaV~jX*sZtc_IFH676&baqO@Z`dyt<+Jc0>@bLn69#@Nyoo zS?HZR4P3P=^Ge%fUoD`av2HMVTlUna%rq|tx7K8>zbgaBh$z)Y%%2Oe=-1q9x(7&ha{%ngle?{V00>all2s!7{>%F*WQx%NaN~Fm6 zPt)jPsFQ4?#V5hUn<|Z00tn3uX70)#{(2ZRefjKD{$T7@ivD0sB+5-?7g9nRtqr3U zEUUP$jlf+#gL|IAnVgh5E2(~RbbGsG=dPv>+I@`uC{Dm>>}`ZrBS3b#9{c5eqRwBT z#IwJl9=w`5(yIO9mqYbYa|d4l*1C)hJ6k(Nfcy3;$Ww;05=qP}AzXf8FTXjv6kO&V zN?BwD4HBQB#9XpHk&_aiq(&pJe`}Wwig2T>>E|p4$E*ObRjs>3;!G|M{+zb?j^1Rl zkzlaGa&zU<1PXR)Y<&;?zPX2|M+$vJW~o$pic!J@K2FcaDZwT!IwBL_!8LjIhaJRa zd^?Df-|gcWb!#NPCjDkCUW*8p`nOAmFhmKSO@;FujKc^I#jlbt?s1vSHRb{rDyQN> z`T+pFFfv)X@!l|&L&(_w_st8%Y5Cu?cX_HkOakhdX2X4RiZa!e6Ae>DHYmgl9oyQG zY@B}3&+SnEZ$&+u2A(%(vg9)R@3kxG=? zVa%bF(mQWO$QVaCsGh25ObFt@^uD325Oe^xMcb3*=EU6ED6wn1ys%iX5W;#On>^Lg(0n(wVt_g;k#Obq%VgqM>fFKafN=)Gs^nqBpCd~ zJnkOlqUz;B|99fGz8U)RK=|$*^`Ywb5iY|G^eq$Aji2W{F86 z`>=Dip(7#yxgzVOYtM)-7gQF1RcCEOUrMN-6#_e~yLDrMZs6fg{p*WERRICEz-scX zpV!SD)3v`%PB`GEl@P_@U9SEaF?fL9_r>3#ySb7i;_c9L1AKSY-Qy|xH*GVl-u4uY ze_ajtm=k7tg%IE7{^C--1(c&%Si0CqWz5SSV_d(?0UYW?2f)w31rpO3AN`szzTMya z5`%Pu?_(CoLD-cV`Qtoju>7j{Usd6xs&GZ`Nr$jz&ObW_c&Rf+AF_1vB4;?!>g3xk zv*yfYG^1GOYV5IpQul5oxhd?O8lK%_+Mi9yTb>~t43*AA_pizBU+~|Fo?jCks$Hl1 z`4R*Kul1RbX{@u+5(%krWEH?b!#^9}4PoPHPtGOID;^KU7~0KOTAV8P8SDH#^iEsB z>pi{W&em_c9qUx@RPHbE30A+pKkzbn+kf$6w;XxL=?13jaFGLA*PVGOHhZZiFa8p9 zDUIyFw877AT^UCot1)&70P2-Wf-`*5=jCq4vYuZYPX$XHuix2Exl7iz^v)c#YF-ie zM0eIHTF&)w0{YQMl=gAM_Ez(XsKu5B)W?B<^ju8I{)DTvVFfd3Aq6%rElXEjT=b<| z-D(*5>VU3!GQ$4~_1w$iu{M7&nn_W4AYd9`qs6pu_c>tlt1XxAv%E{+sZ^ECN4zPV=eVNE_$Zb7%f3 z3SsB;xR50qLC=E*t)Dg|GnML_8&~rYCc;gnX@rt}r`Ly;{l2{3-@SDtcn}i$rnJ8< zfCGa(zj}i{fcy}k&*3(YV4-N8`bMiGigU8@-J=-mOmbj?wvAcv=BJ4sMnt!A2Ddu& zZahd!`25xfRx6t|abjYENdf4G*EO2)?eQ?`v3oGe^<}>cRvS-gFdtpFl6`_X7 zBsli+sON3P)Lf9iK#qOf9$>6WMoHp$nPU}G)yZ7vaNz^GF(3;OvxRqQGhK>jV5toD zs{6$5>l4hzMa$)gaA7zeROY@}T(}bLF;2PT2x?Ocj7ayKa#no}(zQn5mXpa+4k<^@ zmNK;TM_nmHFfw==zbYbY)<_wZtQL1>a*JHFdtINz{Ax@gH9jobfMG2sW$)~mPFnAq zJAymOO1MY@BtUety_v>@+y}YEQ*}%jLEyM;bo&p0KK3Gs+S7J$3c_r+F9AODX{IzO zMZH$B7V?<9dPC#s@pYc%KC09ExEz!JU1^{3qHFVvSg}c>Wp`_*Vqu2aji(@FHGYM2 zhN$0%n~wbW+)`5luh-?yK?+`?qd5n*6i z1QGJM=Vwp9xno^e9X#pt`Sai{)F}AheADQdNWL%(lS4*7FkiFCn#t?E+PQYwJa3%z zZiBm->^-pafq`qyW??hHljx@MA{gbX6mOjznGDTu&cY$AwA2A_`lI*nTJrkCsdO2G zJuht8@QTMc@6(V9lVTJT8~#*i)-2pDT^nO7fm8$7dM-BJurZ9COIb3kUSFnuCVMZ#+d89 zW4j|ZuH5lg+pw^Q>cQ;ARd%6*Dz^xq-!~PRB8d(z0`e8qQuHQx5nDj1J{9p)#76?* zr)4^T+*8&nqvsV9*0@0m+l!-JWIubr`+E@W<3h!ICY+Ux&j8tVKyS=nhnu6y!BMW_ z8n>6VJwnxoMQ{*Elk$x}TCssVMI&)>N+<7W5f4kOV)5gQq=3C2Nn-KK<0jZ7*nT{F zZY?l11&y!zJMg<_s6P4f+BDi|**`Z;(z&+ZK@>m7*?$&?0?04QdFUcr!0Yo1d5rCa zYe(h^$9~Dm>q5V>O(NmOl9GwvT#bBVdmhA5>I#NSc8Q5Y&Vu>XxGj0-*_le5kIGpK z@S*}(z}h`b@_Kp9-nW@8a&I>08L#E;p;CAYS)$$@HbtUM{K9RH=|FMY#C>yK{p{b! zM=TVC#vDWiIib1sya}tGm6sekdg*11{dE@K9;SVG_Um+_H&;$nMp=B=cTirR(k$yv z=QxSY?ax}fQjOfAn`g=PqcUhDgHE9rt^Xxq#6V#p^^M-8LJb^sf;u@UpV(wfo?*Br zqEs)kyY0~PD0o zJFrdeORc_2+}c&FO|fU!J$Yqf_XxBLg1xXI4X7VC6zq%9Nbl0a zB-Q52FQ@wqvb;#Gl8QXWy|*H-A96V~IjY&q zwfj|V4>-N}qC(Z0Dd&;PG$;d~@u5j)@kcjj>wPt!hs8$9G8b}vnP)KJD)Pzs#+Yfg zU*D#7#;&aIj|2_Y=G7y&c*_$NeYZ50JyZQ@%Yb@dea=X8G*dAnC8kI1daP@7K}Npn z2GE<5?g;R@eV^uB?-i_5B;KdLN-x_R_qTtp&=zD`q_L^pu8yEDp$S*R9i3$E3Wj|W zg-qLMbh-hJuriI;u%ftlX=sUQJW z(l3$Vy8WlhC11G5=8(>$W;XXOzKD?iunQF1ef^2JX}Q(t3UBYP>+%98Y**KkwaR)H zbvs)RJ7t*N-4?LEb2*pm4hbGD6i##JdZ(@@3cX2fJ-2YZ%Jy7EzX!$_X$Pv$zvstc zPx1l#KUTkP5>BWsOrk#eWp0O5o_q4py9wY(Zp=?~dXPyG$poM5Ib!vN&3V1_j;CEa zzh7=+d(8!di6Cf+_3yn3rE1;aS|~BBcny8adW3$Pp67v_*0T_~jT0J@LRP6Ea%6Um zBLP?7o8tGK#_x)FJ_s2H6PJ$$C^b{*SPxd~G3{cxdHw$sSWRVIcTTGErt{(I6m8A! zjj`+4qX{K9;QIX3Zyom`K8!=B`JRHWYc83azhZUdx;o(3Ll^SjoN6>$o$C5d?2xRO zlm#9n(iyr*WNX~&|LN)6%gk7pGG}fC&$*1mw^_{FsrVic+p%MeZvx$;>fd+3k`q-(D z1hOcQES1}IMGRxtzmDyAi?qw(?yRTTz;UkC^4LaemtI%tnzg4c`9EG%QRUFYC*;Wj zE$q=iLp1lBXtBn^*Dp*epLp(=TbWh$d-;?z;i6x}g0{oZ4ubHdEJcKe$mbM%YZnpN zw0%tY(SEg4$4G^IbRWJ4bP@R~sr8H!375u@qBnxLw?gldBBA;&j{+_97Y2xX0_&($ zQl6cbm6chQ?cI1DHX6U&NtuwF_PeiXm(T{XOD%c*`nWvqyka8f{W25~4=;z$Dfq7w zYB~wkgY?$58g442s(9#pE0ZqN;jM{gzb6{c`zkq}b~wo?VXjQ(+Z^h%80@hb{G{jA zLxM!mdeFy1rByd|BufRT`)cxb@t^NJA>Q9laDJSh;Lh`sR+l#V)$)>c zi;KZ}qdS<8k0b$noA}?)+_=tBm?<16-3+ZuA~XXMM=zs$Sfo5&v`(ShwXSy#h4f-h zWwb9{oRF@KKR#}buT>s;Czq%d4M!HwteCAJrgUofQ4+RlqGQU=!Zmyha`u4 z0l%LpbZp6-sVl5^(_TjKHsRZUI)}5R=R@~myM)RM z9hC^x%q!FN6=2~DL+gjXLAY9cazM4oX?uL`x$rZrsh;!Iu=Ep^#(GE03Zms-Ha|Z9 zGW;~NRHODoTBb+u{vjr8GJf7>Y_q>ADNy$$l5Yg>F_u)ab4P{s zdc(#cJA9~Vv@P?@xIgjmt1SR7=NuBB3?J9KS1{gwwb)FOx3xCzVSoA5?1Rv^;;dMf|00TGa3jWVCh4NeMfL@l6#=L z;lqlv(pD(~(*DQ+Qsf*WdV+pK28Ljh+?0bEJi4q@n3lBI2ge7HVh&A_5T|vhl46f)5-Y|dl2j- zrk&mRU$Mz03iFf6P|S>L3AwW{{o?FLIIvO@lkF?#)89B=y5y4}BO&~P0@OsC_oS6=3J91$AEI;Ddy7)}Vu=VpN{w?7o} zZ)i-ej=J1v&{u1>iv98-jjEs#3ZfTXy=0d5IT#>I7i6v~yB>g!Af7K(45Lh4 zD{LNhH|yE?d*j1M#cT1m4ikGH6dhcZm5Z8kjqa5JLbX*Z-a{Hl=U>juYBl&R)*fvQ zm5vH?n7+yx^YO6>*%&i^^|(c0o8CPYd1p7pHS8lh#DbvfrAj*L^83R{C;Stq=2&p< zo>$r3 znpCGq;}5fK)jgj`8wa=|Ln{$3@>uCq&n)MGY2B{N6C$Y>3V1IR+&s z-LoJkVI&cY4T~0$?XM)Aknsy_;)A7CKJ@R>wg*Wo^{z)oWD#Y4k?rq@pb7iUDqekfqhn|QjoK~}q zt_UScRxsN-82DgHzdncOYl~)0UQ-ha;Op`JDWh@d48`=GzhGbe{tGEsaS_?aAGz0# zIVQ*+V6hi90G6kVcAHe^r)>G1`rZStKN)ZRaNB`n$$<|YA8m7Yc}k~Scr3*yQwu>6 zHOA9F%+;;2)Hi%|`vPWAcehFqkc*1b1yc{ZtxA>{xMUR}$#XCMrwCH+xScupm5fp=2PbLCXE}@^z%|>|Wfa42pxR+PDGo=qn($37t2f!j=bVJ{aL20jUFskhG`)hR8 zcG2R@_faUXgf#JTc{sIo5|x9{N>mCphDmS$!{G`u0iE++*@Ja_-FAD;4}s$_p4$_M z?Fg1mu!(ZNJLi$P@^ErRf_6XVWsLuvg#@nWd5mJEF|V0u)P+d-m*I)6nUCAA=BC(0 zJqa|)x}4W5$dufcIdiHt)AX)bwosPP(GSOst#OQ(Gh7DZHSwBE&Pi!=y;SU!>CTq0(pFyt@#d+Knb_Zv_z(Ubi=(`|L^qQMM80I= z#HZPrdmlbKJi>F6E(*%)E1p0$e*QDPyjM%~5x0AU5A2di1}6WGgJI&n(|9?1)IO`; znD?ZnGA5Rg7D}WQv9-wwB+7B%*}~iBbObh;&f)sw^*JSts3EOGIPwp|I_g%|Kpua1 zpjWZ3`m|=Mbq=Pm0p**q{W|A+E+7m@kC@@Zjf-XG(6IWNba_;yW$w$ITs1O!AWej% zoMv)kG)T^h0E74tB0w80$(E|XkGTK_*A0hgO%Q2AW#z@og-w<(v1!-8iyyeifS8*rG``fRo6%em# z-bfhnumuJ$K!J?7(=r<+%C~KEnMBHcEIW9{=LbLMzajB`Gfa^&>>ibD!@qEeaLG07 zemTa_ql``nPQan~k`Ll9mJMm1W3w4_8j1m@Mwu~OF*al1iB!?gpUxXDJJ9ZSWOv1b z$Vh+}atj#qy7v3_?ttz*eG&=FcJy`q#*$B7Ne$H>H>Ykp82boJE+OMAx6a@RJu#rC zd0-G81+)|{kk?+Wmb+fMWo^A7?DH~qj!5|1T}=0TE4kGh_Idt6Ej{gS|3n|*y^FCB zwy92YaUFCW!KAuQX?mVfS0S^;!Mi?%E9_Duhv%OM7UyK9n0|~V35!UtKFE8+SsFK? zJKXfRr}26bv=R>s9vN=ZI`!sy(f*gNH^daYJ+H^+sj11Zu~?nRUlaOtGv|B1OnlEV zvD_nmfrUP~hL?ndTk%EE^8Cz$i8&$~2?5@%{UeB9D|J2&s6RpGv(;x}sL zxihSv2?bWpk++K^MlIWp6*;&TIf!^vefF%9)+e-&5ZVQ9y*oQX2r=<@Hd-m_imNmp zQ>hIsXPKQSDvFb~sXlixWw&H8w9~7-rqyumnT_S#59TcUfWxw9=VnhjWf!iey4Kdyh^YLiY2Wdfw8p*%{vsY>1!|EJ94!r|rQ zJsLQlZm$m{>b~Z$a8}1Q4N5<{1`*p@ zM6uOi-m!`*0N%vbkE#G2$0>{mNy>_p;}^#|R$EL~R)pscE~edX_q2 z`aLR7LC?p*CZw*6_7K4%mD>S=rLeK_TGJ~*$2=r32mkv9$K-ljeR9Q%%TZ|kl#`rg zh^Di=&9V#dgv=nV!esh)%7PI@niPbOK|=!4k~+|<^N^mwZgA^Vp6{?g)_C~7EqLtL1hNYmc5k3jVPDLckLb}w$$(bnb^f1OMu@$&cfxw_7uRd8{A zxL4D6FEnq@S45ZqB$zshgiN>2RL=>rQSC<_Bk?(9HH5l43J38<5JjYNOPviY*R)*@P+@sP5e}DBT|V9ZA;A8|ldI1wI!`J`O7gMg(KQUJsbx%K~g1N&~x8 z>(X9$tM=ATR;IHYASkrl6zuJW^?J-uO;IfHWLL_1dFdQ$CQj7kL3~uB%S9|NY zX5JJkZ$%nel{3_k;EA~a9t8F85Ax;QB<7cdfHO>a+>r4!Q8>emCB&!+?9AW-+;X>I=bm>V0WM5`zj(2PprP@6yd6kmjdxNz8&$&VQV8 zt#)JtA24sgSdw3{M|`+p0vX9htMT$MhtJxAx(Cmucz zgjKZ3)1$66f)Ed z#&DDGjvGThe>mc8d&75}NU{uu?is1Y#@w6+o}I$rKV>c?+E9Ryo_mLP%iPY5Gr5l$ zNE^Z2$E)V$gDA%T zmz~ka{goZB&Gka*?pPyBaRruwTZMJ{8U60sg6CMQ&C%Mr@w{q81-kWsvV&}(p4$7o zddTs6=7wkNTaR{6mZ2`6PI-D&S}gw? zHcD&YC)M6mX{4qe`}gBJ22$Rt6P$@ZS#Q*P#u!PkKd~GC1TVv*&p%Hq?XJ3H$v-vS9@*YYR0Q_i zqpS&!O^{)ehz{r4E!$eHnaVK6isWD7VaMcuBkV1f1EM#dyJ=JFag_HMxb$A_ZaetQ zs=KG?u++RlGz&I8y66at*?aVRv&BXA;{%epa13k5J}12!-Bt64wg{Z-$^CDd_Gy4x zcpPGwpC1^L@+7z8^9;vJ3IgF}Fpw%i8v?~)XO?~*XQ}=GDWEB0t~4JjQrlp6=I*C< zR_sr{M2)XwvK`9_AzB@2%_I|qO!3%$6EgRW1R&5nI0Af@uo3(ZXlJJ>A~KKa*#>-UALO7OSXFjhDX$@;2)zgk}l(T+lCm6Ff_7Js1zP73)&;1#VYAx?(WtS+nSS z37GZYsa^L%?Kek0h)<%;wLSGIZG@~X2$)j7VrhAc@R^S_jsCAWVDpzt{^zCg>C3mz zygM@=(!bfNENve$AZP#mI%|i-X6qfeVS`PR{^36=X?m)c1?cY7BUbGNznb#+lyb;!5@hYVf{w)|x?+oeiRuXqmA;hXj@%oynKx@wP%Vp|0Ex8!}x?o*x(2vQq zA0BK8zf-h%V-?iggsu7q5>)U?CjZ5YZm-OdCOeW@Hh12H(129LjnpmlLzyg|5JTbqDThUCTzCN}HtXOW=n4J(lrcFMAmWBkusikGqr*P}zo zC%d12Mh(y#YizceLaC>$(8j0IJv1_3dPOo9|C-PMGi8 zjii48`#tosV?mV^5|l<-0FwUXWR3#~5iZLjjvjYCuAP2>@e}<3@JVMyH-A1KW{1Im z5zZhWMU)`NE5=_M-VGIDxfsgI4b-;o?_~HP`*{LWz(l%rRL>by>MD zjR%%-Ic|*}9Q&|2djaEZi#`CnfZ4Qs=#n!rA%l@HwQ zL*iJ+f0>h++`?z~kxaWZQ?s|)f`&+{;mhQ7j#t3Zb-!LnA#u5TxfJ*}S~=BPO2t~n zek{Chs?Xe1zv`8OQY(%-&oo8f8lvg_P29;pual&Zkw&lXt-h0k2eXIX90BIFY(4Oe zRjq?W${y7_v}%rZeyIaBQGvmjSvlC69f^>m#W(6FtSe%+XD7>n8~5% zY#W4CbR-e=gB-(cP{#t*50o3HoH!;wH=tCc?cYlo#g%3+XR=G}(7)TwS{?q&qvqT* zyB;!<(9u5lCNB>-vZaSUcV5@vAMqII$9Cmo*?%XxBJwd&5JAP$)M$nd+rBayKJtp+ zRf|!EFJS(w-O00cRHo| zA3NtJ4g1yGZQK;03G@joqp;?PZZ4*5I00Ej@#>mB=mJv?ZC zBzyyx2l#F`rR_tNNwF!b^<$!)ij5a`Yo0y-I+&&+`k%pZwXcc}=YyUQdxC#cni1S5 z!U76K7+AYeZH$DNb>ddGB{K28gL_cT}s zfn83R`TpUSy{?87G>ErDr9|0h5hzsO$+!1A>ptN!l6&qWPzQCEDB+LmEVZgWh=r0wx60k%s|0h_5_Ufmyss8+`J{FR76*P$zjfzb04mvaz@vbQ~-8$$ea z9NO?Oj+U~$*c{BGlj#iuq`~zrmg>@3G~7@EqHS$Fx}KQdB~NCa+jDq#<4Y#OL+^TU zs%zzGv&UO-j=cpd?M?alidB!l>itO3e}TxgfCC91I-ivwV~+}JlYH$)cVJahUP9@Q zdwD^C|F|tUjm#JSxz(=uz~ZrYJhL6xK6!mmRG9*G2H*NAYqWBw0byydgfR6*ffj2^d!hz8D6qmciuDLxkB`PKmOR48fZi zk!Y!DF1>-IWUWu;f@cqygi0hFtkAnGpCh4Ky(6L9XGfffH|4lta?Yh?27E2T(m zxs{CL!(^>IZ#vC#`BCJiB0shsH+j0kk>R& z+GWbhspS=Os9CNhDn@eY%w@@$gW*!Uw2qW!oa+j^u8%{ar6M!{L6HVM)^homQsi)_@B))v%A%Nd%BAZfH^*81c!!F2c7$mDxdk}fJH zUrQ8H8Q@c#_z#%k@EA`!+!*s?tIBjp1)~AY;E(BV>4gUX*|%^x@u5{e6vGs8)YqI2 z35Oeb>=6dY?1N63rRAeJ`%XR8ySA>%x*vuCb?&WlKtDC+yvQtF?t9vJk(Ox=$!pw| zZ^34B-e<8*HBAi<8Y-*#=CfpoTv!fS4t8{db{lB|KldUD() zAF_p^4;lZ0W(5DdV=d{nf#=CP{J=6cy`tuiCj5FgNG_tArrfmzZp61fK;8^X?|0-( zg@d8AZaLOa+FnJ;p-*P&xJ+qaN{C7Og|VdfIMZmU+#{bzvE_GjCWsxy&*~Jl{CNzT z+bpP}*L_m#rwbXkkzx=sGFYNwMO%aEgnbVCk?P30>gVWX&%@PlT#wL7WRQ#Y(P-hU zRI8=S7Yw1+7!C0?)vD|{}LLXdop$_O9w7OuaLooYKcYQ8I4L%XD%vj;mRYacZy4}}w;Vs4BIY<*S zMm;VR>e5|yVA*K3y)=R!{DPQz-i5jecH@o%BoQeggF`*7Ei9}QxWYLfR%utHGJ5`B zs=?rauyy@6h3SU$9p}2i+O;}E$#`HVoP(JoJjs!oC(g-VTZ;Sab}?b(VnExs3|_>U zj??oxz}InuUH9*{kiG4^+y$L3l{&*hjih|rIZmTFK7aJoj|`%OICTv72`X4fg-$3d zqg7ZL>g2xt2&B~UP#*I&o!@W4m#m#P@LVxMzYYeYh)6r~A_0n-CAm#4UHO@Na7xT+ znvK?Kn03GD=nBi&j+6P}L$#}1Lxgxg@cjW& z*O<&y_RUi7)UCLiBEQIY-j{2Cy8Vf?`0OTLQ2O?=(vEn%$)-20FoJjf)AC=nwY|Bq zLUA&XGW}cACT|pptH$*X;an_%p)7=;!EKNfBDYHo`~Sqb@ZEVF(AO5lDzSMp-OTPy zOLOg2s)@NM7y5lJSqtX-<}4(jpU(HLtKMm?pefnAyT9bYE)W$8l&l`R4p`$9CytNT zsLtP(_oBciiV;b;`ZCjgFqZbH5b=hHMQhz|xkXDV=!CLt>z3eyz{hj@~bLX5lA5q#( z$<_f-l8=k-nY@JPMxZ~eW9vrLexYW<^8BgmDrq05-Zxr=mt~2_$i%j27WT{pCqf1B z9;Q<;tj@_5ej$5@@%P`qN*t&+MVdrogjK;BZHze^E3w)KJ7Px>nv+NPJUQM zC@eo>xV+@+!Wv{LazDf#{9}{7e^qL`skLnH%!vL@fX4;un`nB|h_XG0)g8QhLPhxs3*tgr)jeQuTxc+HC&UIZ?*SRJpC%(EW%EYWY8Z;GRiA z@AsVI0POmN{{r&3vJtmqzf*|Ys)b^K&?T`f9JDI7F@f@l7 z<&RL^vQIc`9WQ?wUt>^WFN!Nsls&Y&q~)`)`HUK0S8R?p1Fkq8coNDw-AAi!{k4%+ z(q6x|7aw+KYv#SbG;!RxpjWpw^I7cHsq^9bSdsHqkm&&9TNQ>`)|lI6Sn-+Sr_-i2 z|G}PN)Al&5?R%hiE!L&-?ss392Sq~odd%2duRl}2DU1>~ebNXsq;JLU?4NhzX6F0< zLiBhbE%%+BErS3>dvEUev&URFf0Ei>emB#F(ccc$$ski>vd!=WS_7KMk985$%NtPx zZ5@}qaEasahW~wsl3yHLW4gSfHyU-mh3?pFV)~i9kL-6}!HWyR_hk0* zl&c{}61Z+YPCn>op?d5@tT>G~Bemsyc0;W=X0?b;A7{ppaK}D1(v@@u_qLjzqe)}y z5=_UGukr2++2jehKHvQ35B1)CH>f4KYklAN=ao5R*GYbnum7}zDXXqoZp$d!dDs|v zv~d23k{{2Vt>Wol!|U(v%;xj;450o0ys_H5FPrwD&o|w`JwcSLjyG$*U~-50BrrGc zOl`DGq~T}AKbqdGE8P^quD2EMC~wW)Cy(jjch;*=X!*!b8=uEjDi-{{%`_($k1mpn zCt{!0^))WMxwm)UK~=WHb5wsqxwk04Z!sTx?X$P*A+3hq?<#LrJs-2~k!NpYWxdz? zh>;)G-~BcmD;(SmcfQ!c2^T|w)$`ekz7@jc>6Il+{Zi55NqmN%+mpu69Tj(fp^JX! zOV?IPEd`)+YEf(Ux2}0q%)d9BFI#s`NE~T4Vsq8QT**&Wuu}L;7#lVos^j#vgS$C= ziSh8*(weh3^l-zsNtIjN*|m NnrgbL#VXf={~v>26P*A6 literal 0 HcmV?d00001 diff --git a/lang/en.json b/lang/en.json index 867558d7..e5f09217 100755 --- a/lang/en.json +++ b/lang/en.json @@ -272,7 +272,8 @@ "combatStarted": "Active", "giveSpotlight": "Give The Spotlight", "requestingSpotlight": "Requesting The Spotlight", - "requestSpotlight": "Request The Spotlight" + "requestSpotlight": "Request The Spotlight", + "openCountdowns": "Countdowns" }, "ContextMenu": { "disableEffect": "Disable Effect", @@ -823,8 +824,8 @@ "name": "Restrained", "description": "When an effect makes a creature Restrained, it means they cannot move until this condition is cleared.\nThey can still take actions from their current position." }, - "unconcious": { - "name": "Unconcious", + "unconscious": { + "name": "Unconscious", "description": "Your character can’t move or act while unconscious, they can’t be targeted by an attack." }, "vulnerable": { @@ -1362,17 +1363,17 @@ }, "paired": { "name": "Paired", - "description": "Add your character's Tier + 1 to primary weapon damage against targets within Melee range", + "description": "Add this Secondary Weapon's tier + 1 to your primary weapon damage against targets within Melee range", "actions": { "paired": { "name": "Paired", - "description": "Add your character's Tier + 1 to primary weapon damage against targets within Melee range" + "description": "Add this Secondary Weapon's tier + 1 to your primary weapon against targets within Melee range" } }, "effects": { "paired": { "name": "Paired", - "description": "Add your character's Tier + 1 to primary weapon damage against targets within Melee range" + "description": "Add this Secondary Weapon's tier + 1 to your primary weapon against targets within Melee range" } } }, @@ -1763,6 +1764,7 @@ "weapon": "Range Increase: Weapon" }, "RefreshType": { + "scene": "Scene", "session": "Session", "shortrest": "Short Rest", "longrest": "Long Rest" @@ -1898,6 +1900,7 @@ "difficulty": "Difficulty", "downtime": "Downtime", "dropActorsHere": "Drop Actors here", + "dropFeaturesHere": "Drop Features here", "duality": "Duality", "dualityRoll": "Duality Roll", "enabled": "Enabled", @@ -2365,7 +2368,8 @@ "compendiumBrowser": "Compendium Browser", "rulesOn": "Rules On", "rulesOff": "Rules Off", - "remainingUses": "Uses refresh on {type}" + "remainingUses": "Uses refresh on {type}", + "rightClickExtand": "Right-Click to extand" } } } diff --git a/module/applications/characterCreation/characterCreation.mjs b/module/applications/characterCreation/characterCreation.mjs index d45fe54e..1cadd6d4 100644 --- a/module/applications/characterCreation/characterCreation.mjs +++ b/module/applications/characterCreation/characterCreation.mjs @@ -359,6 +359,11 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl context.community = { ...this.setup.community, compendium: 'communities' }; context.class = { ...this.setup.class, compendium: 'classes' }; context.subclass = { ...this.setup.subclass, compendium: 'subclasses' }; + + const allDomainData = CONFIG.DH.DOMAIN.allDomains(); + context.classDomains = context.class.uuid + ? context.class.system.domains.map(key => game.i18n.localize(allDomainData[key].label)) + : []; context.domainCards = Object.keys(this.setup.domainCards).reduce((acc, x) => { acc[x] = { ...this.setup.domainCards[x], compendium: 'domains' }; return acc; @@ -378,7 +383,7 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl uuid: suggestions.armor?.uuid, taken: suggestions.armor?.uuid === this.equipment.armor?.uuid }, - compendium: 'armors' + compendium: 'armor' }; context.primaryWeapon = { ...this.equipment.primaryWeapon, @@ -387,7 +392,7 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl uuid: suggestions.primaryWeapon?.uuid, taken: suggestions.primaryWeapon?.uuid === this.equipment.primaryWeapon?.uuid }, - compendium: 'weapons' + compendium: 'weapon' }; context.secondaryWeapon = { ...this.equipment.secondaryWeapon, @@ -397,7 +402,7 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl taken: suggestions.secondaryWeapon?.uuid === this.equipment.secondaryWeapon?.uuid }, disabled: this.equipment.primaryWeapon?.system?.burden === burden.twoHanded.value, - compendium: 'weapons' + compendium: 'weapon' }; context.inventory = { take: suggestions.inventory.take, @@ -495,11 +500,12 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl } static async viewCompendium(event, target) { - const type = target.dataset.compendium ?? target.dataset.type; + const type = target.dataset.compendium ?? target.dataset.type, + equipment = ['armor', 'weapon']; const presets = { compendium: 'daggerheart', - folder: type, + folder: equipment.includes(type) ? "equipments" : type, render: { noFolder: true } @@ -511,6 +517,12 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl 'system.domain': { key: 'system.domain', value: this.setup.class?.system.domains ?? null } }; + if (equipment.includes(type)) + presets.filter = { + 'system.tier': { key: 'system.tier', value: 1 }, + 'type': { key: 'type', value: type } + }; + return (this.itemBrowser = await new ItemBrowser({ presets }).render({ force: true })); } diff --git a/module/applications/levelup/characterLevelup.mjs b/module/applications/levelup/characterLevelup.mjs index de28f241..0ae136c4 100644 --- a/module/applications/levelup/characterLevelup.mjs +++ b/module/applications/levelup/characterLevelup.mjs @@ -51,7 +51,7 @@ export default class DhCharacterLevelUp extends LevelUpBase { .filter(exp => exp.data.length > 0) .flatMap(exp => exp.data.map(data => { - const experience = Object.keys(this.actor.system.experiences).find(x => x === data); + const experience = Object.keys(this.actor.system.experiences)[data]; return this.actor.system.experiences[experience].name; }) ); diff --git a/module/applications/levelup/companionLevelup.mjs b/module/applications/levelup/companionLevelup.mjs index 2fcc42a0..c94d7d2b 100644 --- a/module/applications/levelup/companionLevelup.mjs +++ b/module/applications/levelup/companionLevelup.mjs @@ -39,7 +39,7 @@ export default class DhCompanionLevelUp extends BaseLevelUp { .filter(exp => exp.data.length > 0) .flatMap(exp => exp.data.map(data => { - const experience = Object.keys(this.actor.system.experiences).find(x => x === data); + const experience = Object.keys(this.actor.system.experiences)[data]; return this.actor.system.experiences[experience].name; }) ); diff --git a/module/applications/sheets-configs/adversary-settings.mjs b/module/applications/sheets-configs/adversary-settings.mjs index 57deea25..bcc8b1c9 100644 --- a/module/applications/sheets-configs/adversary-settings.mjs +++ b/module/applications/sheets-configs/adversary-settings.mjs @@ -98,11 +98,17 @@ export default class DHAdversarySettings extends DHBaseActorSettings { async _onDrop(event) { const data = foundry.applications.ux.TextEditor.implementation.getDragEventData(event); - if (data.fromInternal) return; - + const item = await fromUuid(data.uuid); - if (item.type === 'feature') { - await this.actor.createEmbeddedDocuments('Item', [item]); + if (item?.type === 'feature') { + if (data.fromInternal && item.parent?.uuid === this.actor.uuid) { + return; + } + + const itemData = item.toObject(); + delete itemData._id; + + await this.actor.createEmbeddedDocuments('Item', [itemData]); } } } diff --git a/module/applications/sheets/api/application-mixin.mjs b/module/applications/sheets/api/application-mixin.mjs index 1a7e19c1..18a5ac91 100644 --- a/module/applications/sheets/api/application-mixin.mjs +++ b/module/applications/sheets/api/application-mixin.mjs @@ -129,6 +129,7 @@ export default function DHApplicationMixin(Base) { const docs = []; for (const docData of this.relatedDocs) { + if (!docData) continue; const doc = await foundry.utils.fromUuid(docData.uuid); docs.push(doc); } @@ -419,7 +420,7 @@ export default function DHApplicationMixin(Base) { : this.document.system.actions?.get(actionId); if (!doc) return; - const description = doc.system?.description ?? doc.description; + const description = game.i18n.localize(doc.system?.description ?? doc.description); const isAction = !!actionId; descriptionElement.innerHTML = await foundry.applications.ux.TextEditor.implementation.enrichHTML( description, diff --git a/module/applications/sheets/api/base-item.mjs b/module/applications/sheets/api/base-item.mjs index 6bd91ae8..a9d3237d 100644 --- a/module/applications/sheets/api/base-item.mjs +++ b/module/applications/sheets/api/base-item.mjs @@ -181,12 +181,18 @@ export default class DHBaseItemSheet extends DHApplicationMixin(ItemSheetV2) { static async #deleteFeature(_, element) { const target = element.closest('[data-item-uuid]'); const feature = await getDocFromElement(target); - if (!feature) return ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.featureIsMissing')); - await this.document.update({ - 'system.features': this.document.system.features - .filter(x => target.dataset.type !== x.type || x.item.uuid !== feature.uuid) - .map(x => ({ ...x, item: x.item.uuid })) - }); + if (!feature) { + await this.document.update({ + 'system.features': this.document.system.features + .filter(x => x.item) + .map(x => ({ ...x, item: x.item.uuid })) + }); + } else + await this.document.update({ + 'system.features': this.document.system.features + .filter(x => target.dataset.type !== x.type || x.item.uuid !== feature.uuid) + .map(x => ({ ...x, item: x.item.uuid })) + }); } /** @@ -259,21 +265,45 @@ export default class DHBaseItemSheet extends DHApplicationMixin(ItemSheetV2) { if (data.fromInternal) return; const target = event.target.closest('fieldset.drop-section'); - const item = await fromUuid(data.uuid); + let item = await fromUuid(data.uuid); if (item?.type === 'feature') { + const cls = foundry.documents.Item.implementation; + + if (this.document.parent?.type === 'character') { + const itemData = item.toObject(); + item = await cls.create( + { + ...itemData, + system: { + ...itemData.system, + originItemType: this.document.type, + originId: this.document.id, + identifier: this.document.system.isMulticlass ? 'multiclass' : null + } + }, + { parent: this.document.parent } + ); + } + if (target.dataset.type) { - await this.document.update({ - 'system.features': [...this.document.system.features, { type: target.dataset.type, item }].map( - x => ({ - ...x, - item: x.item?.uuid - }) - ) - }); + await this.document.update( + { + 'system.features': [...this.document.system.features, { type: target.dataset.type, item }].map( + x => ({ + ...x, + item: x.item?.uuid + }) + ) + }, + { parent: this.document.parent?.type === 'character' ? this.document.parent : undefined } + ); } else { - await this.document.update({ - 'system.features': [...this.document.system.features, item].map(x => x.uuid) - }); + await this.document.update( + { + 'system.features': [...this.document.system.features, item].map(x => x.uuid) + }, + { parent: this.document.parent?.type === 'character' ? this.document.parent : undefined } + ); } } } diff --git a/module/applications/ui/itemBrowser.mjs b/module/applications/ui/itemBrowser.mjs index 3763bd36..f0ad98db 100644 --- a/module/applications/ui/itemBrowser.mjs +++ b/module/applications/ui/itemBrowser.mjs @@ -121,6 +121,16 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { } } + _attachPartListeners(partId, htmlElement, options) { + super._attachPartListeners(partId, htmlElement, options); + + htmlElement + .querySelectorAll('[data-action="selectFolder"]') + .forEach(element => element.addEventListener("contextmenu", (event) => { + event.target.classList.toggle('expanded'); + })) + } + /* -------------------------------------------- */ /* Rendering */ /* -------------------------------------------- */ @@ -179,9 +189,20 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { } this.items = ItemBrowser.sortBy(items, 'name'); + + if(target) { + target.closest('.compendium-sidebar').querySelectorAll('[data-action="selectFolder"]').forEach(element => element.classList.remove("is-selected")) + target.classList.add('is-selected'); + } + this.render({ force: true }); } + _replaceHTML(result, content, options) { + if(!options.isFirstRender) delete result.sidebar; + super._replaceHTML(result, content, options); + } + static expandContent(_, target) { const parent = target.parentElement; parent.classList.toggle('expanded'); diff --git a/module/config/generalConfig.mjs b/module/config/generalConfig.mjs index 133dd09e..ee0b6671 100644 --- a/module/config/generalConfig.mjs +++ b/module/config/generalConfig.mjs @@ -183,11 +183,11 @@ export const conditions = { icon: 'icons/magic/control/debuff-chains-shackle-movement-red.webp', description: 'DAGGERHEART.CONFIG.Condition.restrained.description' }, - unconcious: { - id: 'unconcious', - name: 'DAGGERHEART.CONFIG.Condition.unconcious.name', + unconscious: { + id: 'unconscious', + name: 'DAGGERHEART.CONFIG.Condition.unconscious.name', icon: 'icons/magic/control/sleep-bubble-purple.webp', - description: 'DAGGERHEART.CONFIG.Condition.unconcious.description' + description: 'DAGGERHEART.CONFIG.Condition.unconscious.description' }, dead: { id: 'dead', @@ -533,6 +533,10 @@ export const getDiceSoNicePresets = async (hopeFaces, fearFaces, advantageFaces }; export const refreshTypes = { + scene: { + id: 'session', + label: 'DAGGERHEART.GENERAL.RefreshType.scene' + }, session: { id: 'session', label: 'DAGGERHEART.GENERAL.RefreshType.session' diff --git a/module/config/itemBrowserConfig.mjs b/module/config/itemBrowserConfig.mjs index 5d20ae7d..6e3c0dea 100644 --- a/module/config/itemBrowserConfig.mjs +++ b/module/config/itemBrowserConfig.mjs @@ -325,7 +325,7 @@ export const compendiumConfig = { "equipments": { id: "equipments", keys: ["armors", "weapons", "consumables", "loot"], - label: "Equipments", + label: "Equipment", type: ["armor", "weapon", "consumable", "loot"], listType: "items" }, diff --git a/module/config/itemConfig.mjs b/module/config/itemConfig.mjs index 296dc927..cee4bc52 100644 --- a/module/config/itemConfig.mjs +++ b/module/config/itemConfig.mjs @@ -780,7 +780,15 @@ export const weaponFeatures = { mode: 2, value: '1' } - ] + ], + system: { + rangeDependence: { + enabled: true, + range: 'melee', + target: 'hostile', + type: 'withinRange' + } + } } ] }, @@ -1079,7 +1087,15 @@ export const weaponFeatures = { mode: 2, value: 'ITEM.@system.tier + 1' } - ] + ], + system: { + rangeDependence: { + enabled: true, + range: 'melee', + target: 'hostile', + type: 'withinRange' + } + } } ] }, @@ -1208,7 +1224,7 @@ export const weaponFeatures = { img: 'icons/skills/melee/strike-sword-slashing-red.webp', changes: [ { - key: 'system.bonuses.roll.primaryWeapon.attack', + key: 'system.bonuses.roll.primaryWeapon.bonus', mode: 2, value: 1 } @@ -1357,7 +1373,7 @@ export const weaponFeatures = { actionType: 'action', chatDisplay: true, name: 'DAGGERHEART.CONFIG.WeaponFeature.timebending.actions.bendTime.name', - description: 'DAGGERHEART.CONFIG.WeaponFeature.actions.bendTime.description', + description: 'DAGGERHEART.CONFIG.WeaponFeature.timebending.actions.bendTime.description', img: 'icons/magic/time/clock-spinning-gold-pink.webp' } ] diff --git a/module/data/action/baseAction.mjs b/module/data/action/baseAction.mjs index ab515e88..a886bf49 100644 --- a/module/data/action/baseAction.mjs +++ b/module/data/action/baseAction.mjs @@ -208,7 +208,14 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel } async consume(config, successCost = false) { - const usefulResources = foundry.utils.deepClone(this.actor.system.resources); + const usefulResources = { + ...foundry.utils.deepClone(this.actor.system.resources), + fear: { + value: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), + max: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxFear, + reversed: false + } + }; for (var cost of config.costs) { if (cost.keyIsID) { diff --git a/module/data/action/damageAction.mjs b/module/data/action/damageAction.mjs index 1627f8e8..7deeb006 100644 --- a/module/data/action/damageAction.mjs +++ b/module/data/action/damageAction.mjs @@ -6,7 +6,8 @@ export default class DHDamageAction extends DHBaseAction { getFormulaValue(part, data) { let formulaValue = part.value; - if (data.hasRoll && part.resultBased && data.system.roll.result.duality === -1) return part.valueAlt; + + if (data.hasRoll && part.resultBased && data.roll.result.duality === -1) return part.valueAlt; const isAdversary = this.actor.type === 'adversary'; if (isAdversary && this.actor.system.type === CONFIG.DH.ACTOR.adversaryTypes.horde.id) { @@ -35,7 +36,7 @@ export default class DHDamageAction extends DHBaseAction { const systemData = data.system ?? data; let formulas = this.damage.parts.map(p => ({ - formula: this.getFormulaValue(p, data).getFormula(this.actor), + formula: this.getFormulaValue(p, systemData).getFormula(this.actor), damageTypes: p.applyTo === 'hitPoints' && !p.type.size ? new Set(['physical']) : p.type, applyTo: p.applyTo })); diff --git a/module/data/activeEffect/beastformEffect.mjs b/module/data/activeEffect/beastformEffect.mjs index e040d8d8..b5cbdb28 100644 --- a/module/data/activeEffect/beastformEffect.mjs +++ b/module/data/activeEffect/beastformEffect.mjs @@ -32,7 +32,7 @@ export default class BeastformEffect extends BaseEffect { if (this.parent.parent?.type === 'character') { this.parent.parent.system.primaryWeapon?.update?.({ 'system.equipped': false }); - this.parent.parent.system.secondayWeapon?.update?.({ 'system.equipped': false }); + this.parent.parent.system.secondaryWeapon?.update?.({ 'system.equipped': false }); } } diff --git a/module/data/actor/character.mjs b/module/data/actor/character.mjs index c40e7e5d..c5e250a4 100644 --- a/module/data/actor/character.mjs +++ b/module/data/actor/character.mjs @@ -351,6 +351,17 @@ export default class DhCharacter extends BaseDataActor { return [...classDomains, ...multiclassDomains]; } + get domainData() { + const allDomainData = CONFIG.DH.DOMAIN.allDomains(); + return this.domains.map(key => { + const domain = allDomainData[key]; + return { + ...domain, + label: game.i18n.localize(domain.label) + }; + }); + } + get domainCards() { const domainCards = this.parent.items.filter(x => x.type === 'domainCard'); const loadout = domainCards.filter(x => !x.system.inVault); diff --git a/module/data/item/armor.mjs b/module/data/item/armor.mjs index 01e1d186..a8c3dcec 100644 --- a/module/data/item/armor.mjs +++ b/module/data/item/armor.mjs @@ -60,7 +60,7 @@ export default class DHArmor extends AttachableItem { const allowed = await super._preUpdate(changes, options, user); if (allowed === false) return false; - if (changes.system.armorFeatures) { + if (changes.system?.armorFeatures) { const removed = this.armorFeatures.filter(x => !changes.system.armorFeatures.includes(x)); const added = changes.system.armorFeatures.filter(x => !this.armorFeatures.includes(x)); diff --git a/module/data/item/beastform.mjs b/module/data/item/beastform.mjs index 68c934ed..3c9bef5c 100644 --- a/module/data/item/beastform.mjs +++ b/module/data/item/beastform.mjs @@ -134,6 +134,7 @@ export default class DHBeastform extends BaseDataItem { this.parent.effects.filter(x => x.type !== 'beastform').map(x => x.toObject()) ); + const tokenImages = await this.parent.parent.getTokenImages(); const beastformEffect = this.parent.effects.find(x => x.type === 'beastform'); await beastformEffect.updateSource({ changes: [ @@ -148,7 +149,7 @@ export default class DHBeastform extends BaseDataItem { ], system: { characterTokenData: { - tokenImg: this.parent.parent.prototypeToken.texture.src, + tokenImg: tokenImages[0], tokenRingImg: this.parent.parent.prototypeToken.ring.subject.texture, tokenSize: { height: this.parent.parent.prototypeToken.height, diff --git a/module/data/item/domainCard.mjs b/module/data/item/domainCard.mjs index 34754a41..7705adb1 100644 --- a/module/data/item/domainCard.mjs +++ b/module/data/item/domainCard.mjs @@ -33,6 +33,11 @@ export default class DHDomainCard extends BaseDataItem { }; } + get domainLabel() { + const allDomainData = CONFIG.DH.DOMAIN.allDomains(); + return game.i18n.localize(allDomainData[this.domain].label); + } + /* -------------------------------------------- */ /**@override */ @@ -71,7 +76,7 @@ export default class DHDomainCard extends BaseDataItem { _getTags() { const tags = [ game.i18n.localize(`DAGGERHEART.CONFIG.DomainCardTypes.${this.type}`), - game.i18n.localize(`DAGGERHEART.GENERAL.Domain.${this.domain}.label`), + this.domainLabel, `${game.i18n.localize('DAGGERHEART.ITEMS.DomainCard.recallCost')}: ${this.recallCost}` ]; @@ -85,7 +90,7 @@ export default class DHDomainCard extends BaseDataItem { _getLabels() { const labels = [ game.i18n.localize(`DAGGERHEART.CONFIG.DomainCardTypes.${this.type}`), - game.i18n.localize(`DAGGERHEART.GENERAL.Domain.${this.domain}.label`), + this.domainLabel, { value: `${this.recallCost}`, //converts the number to a string icons: ['fa-bolt'] diff --git a/module/data/item/subclass.mjs b/module/data/item/subclass.mjs index ce52fdc6..7ace8109 100644 --- a/module/data/item/subclass.mjs +++ b/module/data/item/subclass.mjs @@ -21,7 +21,7 @@ export default class DHSubclass extends BaseDataItem { integer: false, nullable: true, initial: null, - label: "DAGGERHEART.ITEMS.Subclass.spellcastingTrait" + label: 'DAGGERHEART.ITEMS.Subclass.spellcastingTrait' }), features: new ItemLinkFields(), featureState: new fields.NumberField({ required: true, initial: 1, min: 1 }), @@ -50,7 +50,8 @@ export default class DHSubclass extends BaseDataItem { async _preCreate(data, options, user) { if (this.actor?.type === 'character') { - const dataUuid = data.uuid ?? data._stats?.compendiumSource ?? `Item.${data._id}`; + const dataUuid = + data.uuid ?? (data.folder ? `Compendium.daggerheart.subclasses.Item.${data._id}` : `Item.${data._id}`); if (this.actor.system.class.subclass) { if (this.actor.system.multiclass.subclass) { ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.subclassesAlreadyPresent')); diff --git a/module/dice/damageRoll.mjs b/module/dice/damageRoll.mjs index 44794faa..8a72d86e 100644 --- a/module/dice/damageRoll.mjs +++ b/module/dice/damageRoll.mjs @@ -159,25 +159,28 @@ export default class DamageRoll extends DHRoll { if (config.data?.parent) { if (config.data.parent.appliedEffects) { // Bardic Rally - mods.rally = { - label: 'DAGGERHEART.CLASS.Feature.rallyDice', - values: config.data?.parent?.appliedEffects.reduce((a, c) => { + const rallyChoices = config.data?.parent?.appliedEffects.reduce((a, c) => { const change = c.changes.find(ch => ch.key === 'system.bonuses.rally'); if (change) a.push({ value: c.id, label: change.value }); return a; - }, []), - value: null, - beforeCrit: true, - callback: part => { - const rallyFaces = config.modifiers.rally.values.find( - r => r.value === config.modifiers.rally.value - )?.label; - part.roll.terms.push( - new foundry.dice.terms.OperatorTerm({ operator: '+' }), - ...this.parse(`1${rallyFaces}`) - ); - } - }; + }, []) + if(rallyChoices.length) { + mods.rally = { + label: 'DAGGERHEART.CLASS.Feature.rallyDice', + values: rallyChoices, + value: null, + beforeCrit: true, + callback: part => { + const rallyFaces = config.modifiers.rally.values.find( + r => r.value === config.modifiers.rally.value + )?.label; + part.roll.terms.push( + new foundry.dice.terms.OperatorTerm({ operator: '+' }), + ...this.parse(`1${rallyFaces}`) + ); + } + }; + } } const item = config.data.parent.items?.get(config.source.item); diff --git a/module/dice/dhRoll.mjs b/module/dice/dhRoll.mjs index 504a9c02..126a7944 100644 --- a/module/dice/dhRoll.mjs +++ b/module/dice/dhRoll.mjs @@ -238,7 +238,7 @@ export const registerRollDiceHooks = () => { if (updates.length) { const target = actor.system.partner ?? actor; - if (!['dead', 'unconcious'].some(x => actor.statuses.has(x))) { + if (!['dead', 'unconscious'].some(x => actor.statuses.has(x))) { setTimeout(() => { target.modifyResource(updates); }, 50); diff --git a/module/dice/dualityRoll.mjs b/module/dice/dualityRoll.mjs index 35bae725..ac1047ab 100644 --- a/module/dice/dualityRoll.mjs +++ b/module/dice/dualityRoll.mjs @@ -19,7 +19,7 @@ export default class DualityRoll extends D20Roll { get title() { return game.i18n.localize( - "DAGGERHEART.GENERAL.dualityRoll" + `DAGGERHEART.GENERAL.${this.options?.roll?.type === CONFIG.DH.ITEM.actionTypes.reaction.id ? 'reactionRoll' : 'dualityRoll'}` ); } @@ -125,10 +125,7 @@ export default class DualityRoll extends D20Roll { } createBaseDice() { - if ( - this.dice[0] instanceof foundry.dice.terms.Die && - this.dice[1] instanceof foundry.dice.terms.Die - ) { + if (this.dice[0] instanceof foundry.dice.terms.Die && this.dice[1] instanceof foundry.dice.terms.Die) { this.terms = [this.terms[0], this.terms[1], this.terms[2]]; return; } diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index 8fc9b74a..c75db559 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -84,6 +84,8 @@ export default class DhpActor extends Actor { await this.update({ 'system.levelData.level.changed': Math.min(newLevel, maxLevel) }); } else { + const levelupAuto = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).levelupAuto; + const usedLevel = Math.max(newLevel, 1); if (newLevel < 1) { ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.tooLowLevel')); @@ -95,79 +97,90 @@ export default class DhpActor extends Actor { return acc; }, {}); - const features = []; - const domainCards = []; - const experiences = []; - const subclassFeatureState = { class: null, multiclass: null }; - let multiclass = null; - Object.keys(this.system.levelData.levelups) - .filter(x => x > usedLevel) - .forEach(levelKey => { - const level = this.system.levelData.levelups[levelKey]; - const achievementCards = level.achievements.domainCards.map(x => x.itemUuid); - const advancementCards = level.selections.filter(x => x.type === 'domainCard').map(x => x.itemUuid); - domainCards.push(...achievementCards, ...advancementCards); - experiences.push(...Object.keys(level.achievements.experiences)); - features.push(...level.selections.flatMap(x => x.features)); + if (levelupAuto) { + const features = []; + const domainCards = []; + const experiences = []; + const subclassFeatureState = { class: null, multiclass: null }; + let multiclass = null; + Object.keys(this.system.levelData.levelups) + .filter(x => x > usedLevel) + .forEach(levelKey => { + const level = this.system.levelData.levelups[levelKey]; + const achievementCards = level.achievements.domainCards.map(x => x.itemUuid); + const advancementCards = level.selections + .filter(x => x.type === 'domainCard') + .map(x => x.itemUuid); + domainCards.push(...achievementCards, ...advancementCards); + experiences.push(...Object.keys(level.achievements.experiences)); + features.push(...level.selections.flatMap(x => x.features)); - const subclass = level.selections.find(x => x.type === 'subclass'); - if (subclass) { - const path = subclass.secondaryData.isMulticlass === 'true' ? 'multiclass' : 'class'; - const subclassState = Number(subclass.secondaryData.featureState) - 1; - subclassFeatureState[path] = subclassFeatureState[path] - ? Math.min(subclassState, subclassFeatureState[path]) - : subclassState; - } + const subclass = level.selections.find(x => x.type === 'subclass'); + if (subclass) { + const path = subclass.secondaryData.isMulticlass === 'true' ? 'multiclass' : 'class'; + const subclassState = Number(subclass.secondaryData.featureState) - 1; + subclassFeatureState[path] = subclassFeatureState[path] + ? Math.min(subclassState, subclassFeatureState[path]) + : subclassState; + } - multiclass = level.selections.find(x => x.type === 'multiclass'); - }); + multiclass = level.selections.find(x => x.type === 'multiclass'); + }); - for (let feature of features) { - if (feature.onPartner && !this.system.partner) continue; + for (let feature of features) { + if (feature.onPartner && !this.system.partner) continue; - const document = feature.onPartner ? this.system.partner : this; - document.items.get(feature.id)?.delete(); - } - - if (experiences.length > 0) { - const getUpdate = () => ({ - 'system.experiences': experiences.reduce((acc, key) => { - acc[`-=${key}`] = null; - return acc; - }, {}) - }); - this.update(getUpdate()); - if (this.system.companion) { - this.system.companion.update(getUpdate()); + const document = feature.onPartner ? this.system.partner : this; + document.items.get(feature.id)?.delete(); } - } - if (subclassFeatureState.class) { - this.system.class.subclass.update({ 'system.featureState': subclassFeatureState.class }); - } - - if (subclassFeatureState.multiclass) { - this.system.multiclass.subclass.update({ 'system.featureState': subclassFeatureState.multiclass }); - } - - if (multiclass) { - const multiclassSubclass = this.items.find(x => x.type === 'subclass' && x.system.isMulticlass); - const multiclassItem = this.items.find(x => x.uuid === multiclass.itemUuid); - - multiclassSubclass.delete(); - multiclassItem.delete(); - - this.update({ - 'system.multiclass': { - value: null, - subclass: null + if (experiences.length > 0) { + const getUpdate = () => ({ + 'system.experiences': experiences.reduce((acc, key) => { + acc[`-=${key}`] = null; + return acc; + }, {}) + }); + this.update(getUpdate()); + if (this.system.companion) { + this.system.companion.update(getUpdate()); } - }); - } + } - for (let domainCard of domainCards) { - const itemCard = this.items.find(x => x.uuid === domainCard); - itemCard.delete(); + if (subclassFeatureState.class) { + this.system.class.subclass.update({ 'system.featureState': subclassFeatureState.class }); + } + + if (subclassFeatureState.multiclass) { + this.system.multiclass.subclass.update({ 'system.featureState': subclassFeatureState.multiclass }); + } + + if (multiclass) { + const multiclassItem = this.items.find(x => x.uuid === multiclass.itemUuid); + const multiclassFeatures = this.items.filter( + x => x.system.originItemType === 'class' && x.system.identifier === 'multiclass' + ); + const subclassFeatures = this.items.filter( + x => x.system.originItemType === 'subclass' && x.system.identifier === 'multiclass' + ); + + this.deleteEmbeddedDocuments( + 'Item', + [multiclassItem, ...multiclassFeatures, ...subclassFeatures].map(x => x.id) + ); + + this.update({ + 'system.multiclass': { + value: null, + subclass: null + } + }); + } + + for (let domainCard of domainCards) { + const itemCard = this.items.find(x => x.uuid === domainCard); + itemCard.delete(); + } } await this.update({ @@ -315,6 +328,7 @@ export default class DhpActor extends Actor { ...multiclassData, system: { ...multiclassData.system, + features: multiclassData.system.features.filter(x => x.type !== 'hope'), domains: [multiclass.secondaryData.domain], isMulticlass: true } diff --git a/module/documents/chatMessage.mjs b/module/documents/chatMessage.mjs index 3ade8c4a..2b10e251 100644 --- a/module/documents/chatMessage.mjs +++ b/module/documents/chatMessage.mjs @@ -69,6 +69,11 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { break; } } + + if(!game.user.isGM && !this.isAuthor && !this.speakerActor?.isOwner) { + const buttons = html.querySelectorAll(".ability-card-footer > .ability-use-button"); + buttons.forEach(b => b.remove()); + } } addChatListeners(html) { diff --git a/module/helpers/handlebarsHelper.mjs b/module/helpers/handlebarsHelper.mjs index deb62659..171255e2 100644 --- a/module/helpers/handlebarsHelper.mjs +++ b/module/helpers/handlebarsHelper.mjs @@ -60,7 +60,7 @@ export default class RegisterHandlebarsHelpers { static rollParsed(value, actor, item, numerical) { const isNumerical = typeof numerical === 'boolean' ? numerical : false; - const result = itemAbleRollParse(value, actor.getRollData(), item); + const result = itemAbleRollParse(value, actor?.getRollData() ?? {}, item); return isNumerical ? (!result ? 0 : Number(result)) : result; } @@ -69,7 +69,7 @@ export default class RegisterHandlebarsHelpers { } static empty(object) { - if(!(typeof object === 'object')) return true; + if (!(typeof object === 'object')) return true; return Object.keys(object).length === 0; } } diff --git a/module/helpers/utils.mjs b/module/helpers/utils.mjs index 6124cfbe..63507782 100644 --- a/module/helpers/utils.mjs +++ b/module/helpers/utils.mjs @@ -85,7 +85,12 @@ export const chunkify = (array, chunkSize, mappingFunc) => { export const tagifyElement = (element, baseOptions, onChange, tagifyOptions = {}) => { const { maxTags } = tagifyOptions; - const options = typeof baseOptions === 'object' ? Object.values(baseOptions) : baseOptions; + const options = Array.isArray(baseOptions) + ? baseOptions + : Object.keys(baseOptions).map(optionKey => ({ + ...baseOptions[optionKey], + id: optionKey + })); const tagifyElement = new Tagify(element, { tagTextProp: 'name', diff --git a/src/packs/adversaries/folders_Tier_1_sxvlEwi25uAoB2C5.json b/src/packs/adversaries/folders_Tier_1_sxvlEwi25uAoB2C5.json index 1fe3770c..8988fbbd 100644 --- a/src/packs/adversaries/folders_Tier_1_sxvlEwi25uAoB2C5.json +++ b/src/packs/adversaries/folders_Tier_1_sxvlEwi25uAoB2C5.json @@ -1,5 +1,5 @@ { - "type": "Item", + "type": "Actor", "folder": null, "name": "Tier 1", "color": null, @@ -14,10 +14,7 @@ "exportSource": null, "coreVersion": "13.346", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1752684226915, - "modifiedTime": 1752684226915, - "lastModifiedBy": "k0gmQFlvrPvlTtbh" + "systemVersion": "0.0.1" }, "_key": "!folders!sxvlEwi25uAoB2C5" } diff --git a/src/packs/adversaries/folders_Tier_2_OgzrmfH1ZbpljX7k.json b/src/packs/adversaries/folders_Tier_2_OgzrmfH1ZbpljX7k.json index add2018d..caa42284 100644 --- a/src/packs/adversaries/folders_Tier_2_OgzrmfH1ZbpljX7k.json +++ b/src/packs/adversaries/folders_Tier_2_OgzrmfH1ZbpljX7k.json @@ -1,5 +1,5 @@ { - "type": "Item", + "type": "Actor", "folder": null, "name": "Tier 2", "color": null, @@ -14,10 +14,7 @@ "exportSource": null, "coreVersion": "13.346", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1752684230275, - "modifiedTime": 1752684230275, - "lastModifiedBy": "k0gmQFlvrPvlTtbh" + "systemVersion": "0.0.1" }, "_key": "!folders!OgzrmfH1ZbpljX7k" } diff --git a/src/packs/adversaries/folders_Tier_3_wTI7nZkPhKxl7Wwq.json b/src/packs/adversaries/folders_Tier_3_wTI7nZkPhKxl7Wwq.json index 4a22ae4c..78e05903 100644 --- a/src/packs/adversaries/folders_Tier_3_wTI7nZkPhKxl7Wwq.json +++ b/src/packs/adversaries/folders_Tier_3_wTI7nZkPhKxl7Wwq.json @@ -1,5 +1,5 @@ { - "type": "Item", + "type": "Actor", "folder": null, "name": "Tier 3", "color": null, @@ -14,10 +14,7 @@ "exportSource": null, "coreVersion": "13.346", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1752684233122, - "modifiedTime": 1752684233122, - "lastModifiedBy": "k0gmQFlvrPvlTtbh" + "systemVersion": "0.0.1" }, "_key": "!folders!wTI7nZkPhKxl7Wwq" } diff --git a/src/packs/adversaries/folders_Tier_4_7XHlANCPz18yvl5L.json b/src/packs/adversaries/folders_Tier_4_7XHlANCPz18yvl5L.json index cf068e44..8baefd2a 100644 --- a/src/packs/adversaries/folders_Tier_4_7XHlANCPz18yvl5L.json +++ b/src/packs/adversaries/folders_Tier_4_7XHlANCPz18yvl5L.json @@ -1,5 +1,5 @@ { - "type": "Item", + "type": "Actor", "folder": null, "name": "Tier 4", "color": null, @@ -14,10 +14,7 @@ "exportSource": null, "coreVersion": "13.346", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1752684235596, - "modifiedTime": 1752684235596, - "lastModifiedBy": "k0gmQFlvrPvlTtbh" + "systemVersion": "0.0.1" }, "_key": "!folders!7XHlANCPz18yvl5L" } diff --git a/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json b/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json index 7705d9d6..8203a246 100644 --- a/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json +++ b/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json @@ -9,7 +9,7 @@ "resource": { "type": "diceValue", "value": 0, - "max": "2", + "max": "@system.traits.strength.value", "icon": "", "recovery": "session" }, @@ -28,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1754352649696, - "modifiedTime": 1754352712334, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1754845640002, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_key": "!items!Xd7RYhfTxIj9aWI2" } diff --git a/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json b/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json index a0e98763..ec203e9a 100644 --- a/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json +++ b/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json @@ -59,13 +59,13 @@ { "key": "system.bonuses.damage.physical.dice", "mode": 2, - "value": "@system.tierd6", + "value": "@tierd6", "priority": null }, { "key": "system.bonuses.damage.magical.dice", "mode": 2, - "value": "@system.tierd6", + "value": "@tierd6", "priority": null } ], diff --git a/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json b/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json index 7e274a0b..3c471a93 100644 --- a/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json +++ b/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json @@ -63,7 +63,7 @@ "attached": [], "tier": 4, "equipped": false, - "baseScore": 0, + "baseScore": 6, "armorFeatures": [ { "value": "burning", @@ -77,8 +77,8 @@ "value": 0 }, "baseThresholds": { - "major": 0, - "severe": 0 + "major": 13, + "severe": 36 } }, "effects": [], @@ -92,12 +92,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753809470138, - "modifiedTime": 1753809633344, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754853048367, + "lastModifiedBy": "7zAk0CoP90J7ebn0" }, "_key": "!items!bcQUh4QG3qFX0Vx6" } diff --git a/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json b/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json index 16c4b359..0dc1f068 100644 --- a/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json +++ b/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json @@ -16,7 +16,7 @@ { "value": "reliable", "effectIds": [ - "HrbJ0bI7lMAYUCux" + "nRNnU57i7RMJoklC" ], "actionIds": [] } @@ -109,14 +109,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "HrbJ0bI7lMAYUCux", + "_id": "nRNnU57i7RMJoklC", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753835307838, - "modifiedTime": 1753835307838, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754815224718, + "modifiedTime": 1754815224718, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!ijodu5yNBoMxpkHV.HrbJ0bI7lMAYUCux" + "_key": "!items.effects!ijodu5yNBoMxpkHV.nRNnU57i7RMJoklC" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753835285790, - "modifiedTime": 1753835317605, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754815224721, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!ijodu5yNBoMxpkHV" } diff --git a/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json b/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json index f0796325..0abfe057 100644 --- a/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json +++ b/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json @@ -2,7 +2,7 @@ "folder": "TyqMEXhSkjOUq5SA", "name": "Advanced Arcane-Frame Wheelchair", "type": "weapon", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/ArcaneWheelchair.webp", "system": { "description": "", "actions": {}, @@ -15,7 +15,7 @@ { "value": "reliable", "effectIds": [ - "G561ymlNGmaFAYFB" + "VnV5X9MBMabhz47b" ], "actionIds": [] } @@ -108,14 +108,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "G561ymlNGmaFAYFB", + "_id": "VnV5X9MBMabhz47b", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -131,12 +138,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "lastModifiedBy": null + "systemVersion": "1.0.0", + "createdTime": 1754815300372, + "modifiedTime": 1754815300372, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!la3sAWgnvadc4NvP.G561ymlNGmaFAYFB" + "_key": "!items.effects!la3sAWgnvadc4NvP.VnV5X9MBMabhz47b" } ], "ownership": { @@ -148,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753836715885, - "modifiedTime": 1753836789197, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754845968271, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_id": "la3sAWgnvadc4NvP", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json b/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json index ad5ad7ae..19a6d9bf 100644 --- a/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json +++ b/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json @@ -16,7 +16,7 @@ { "value": "reliable", "effectIds": [ - "fRPKHzbKRz4yTHAF" + "wu2AmDvgeWI3hmRQ" ], "actionIds": [] } @@ -109,14 +109,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "fRPKHzbKRz4yTHAF", + "_id": "wu2AmDvgeWI3hmRQ", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753831629563, - "modifiedTime": 1753831629563, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814950116, + "modifiedTime": 1754814950116, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!WtQAGz0TUgz8Xg70.fRPKHzbKRz4yTHAF" + "_key": "!items.effects!WtQAGz0TUgz8Xg70.wu2AmDvgeWI3hmRQ" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753831599435, - "modifiedTime": 1753831629573, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814950120, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!WtQAGz0TUgz8Xg70" } diff --git a/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json b/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json index 34383448..f8257028 100644 --- a/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json +++ b/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json @@ -2,7 +2,7 @@ "folder": "TyqMEXhSkjOUq5SA", "name": "Advanced Heavy-Frame Wheelchair", "type": "weapon", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/HeavyWheelchair.webp", "system": { "description": "", "actions": {}, @@ -148,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753836675558, - "modifiedTime": 1753836795905, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754845996869, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_id": "eT2Qwb0RdrLX2hH1", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json b/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json index add61418..324af2b1 100644 --- a/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json +++ b/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json @@ -2,7 +2,7 @@ "folder": "TyqMEXhSkjOUq5SA", "name": "Advanced Light-Frame Wheelchair", "type": "weapon", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/LightWheelchair.webp", "system": { "description": "", "actions": { @@ -141,12 +141,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753836614032, - "modifiedTime": 1753836802197, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754846020904, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_id": "BuMfupnCzHbziQ8o", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json b/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json index cf3ae063..bfcef598 100644 --- a/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json +++ b/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json @@ -16,7 +16,7 @@ { "value": "paired", "effectIds": [ - "gJ7Ey9CfPZqYgxEO" + "MYgB3v3oQ5lIr3VE" ], "actionIds": [] } @@ -114,9 +114,16 @@ "value": "ITEM.@system.tier + 1" } ], - "_id": "gJ7Ey9CfPZqYgxEO", + "system": { + "rangeDependence": { + "enabled": true, + "range": "melee", + "target": "hostile", + "type": "withinRange" + } + }, + "_id": "MYgB3v3oQ5lIr3VE", "type": "base", - "system": {}, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753794991410, - "modifiedTime": 1753794991410, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814673988, + "modifiedTime": 1754814673988, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!0thN0BpN05KT8Avx.gJ7Ey9CfPZqYgxEO" + "_key": "!items.effects!0thN0BpN05KT8Avx.MYgB3v3oQ5lIr3VE" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753794938643, - "modifiedTime": 1753794991413, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814673991, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!0thN0BpN05KT8Avx" } diff --git a/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json b/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json index 6d18e14c..3dd7d463 100644 --- a/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json +++ b/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json @@ -3,7 +3,7 @@ "name": "Arcane-Frame Wheelchair", "type": "weapon", "_id": "XRChepscgr75Uug7", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/ArcaneWheelchair.webp", "system": { "description": "", "actions": {}, @@ -16,7 +16,7 @@ { "value": "reliable", "effectIds": [ - "G561ymlNGmaFAYFB" + "dXHsy9qr5FWZqsVq" ], "actionIds": [] } @@ -109,14 +109,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "G561ymlNGmaFAYFB", + "_id": "dXHsy9qr5FWZqsVq", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753836707582, - "modifiedTime": 1753836707582, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754815278217, + "modifiedTime": 1754815278217, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!XRChepscgr75Uug7.G561ymlNGmaFAYFB" + "_key": "!items.effects!XRChepscgr75Uug7.dXHsy9qr5FWZqsVq" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753836689082, - "modifiedTime": 1753836707594, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754845945327, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_key": "!items!XRChepscgr75Uug7" } diff --git a/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json b/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json index 1934036f..959a8547 100644 --- a/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json +++ b/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json @@ -16,7 +16,7 @@ { "value": "reliable", "effectIds": [ - "GNwIa1EAaa0T0RZi" + "mqcpj2cFAprf2AmY" ], "actionIds": [] } @@ -109,14 +109,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "GNwIa1EAaa0T0RZi", + "_id": "mqcpj2cFAprf2AmY", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753827762112, - "modifiedTime": 1753827762112, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814769818, + "modifiedTime": 1754814769818, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!1cwWNt4sqlgA8gCT.GNwIa1EAaa0T0RZi" + "_key": "!items.effects!1cwWNt4sqlgA8gCT.mqcpj2cFAprf2AmY" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753827734892, - "modifiedTime": 1753827762118, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814769821, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!1cwWNt4sqlgA8gCT" } diff --git a/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json b/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json index 92131406..b4c48925 100644 --- a/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json +++ b/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json @@ -3,7 +3,7 @@ "name": "Heavy-Frame Wheelchair", "type": "weapon", "_id": "XjPQjhRCH08VUIbr", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/HeavyWheelchair.webp", "system": { "description": "", "actions": {}, @@ -152,12 +152,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753836652314, - "modifiedTime": 1753836667128, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754845988869, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_key": "!items!XjPQjhRCH08VUIbr" } diff --git a/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json b/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json index 36070ae1..69744aab 100644 --- a/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json +++ b/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json @@ -2,7 +2,7 @@ "folder": "fFuMdvpD1F3UshmM", "name": "Improved Arcane-Frame Wheelchair", "type": "weapon", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/ArcaneWheelchair.webp", "system": { "description": "", "actions": {}, @@ -15,7 +15,7 @@ { "value": "reliable", "effectIds": [ - "G561ymlNGmaFAYFB" + "1f6fFhOLwZrmA6e5" ], "actionIds": [] } @@ -108,14 +108,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "G561ymlNGmaFAYFB", + "_id": "1f6fFhOLwZrmA6e5", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -131,12 +138,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "lastModifiedBy": null + "systemVersion": "1.0.0", + "createdTime": 1754815290648, + "modifiedTime": 1754815290648, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!N9P695V5KKlJbAY5.G561ymlNGmaFAYFB" + "_key": "!items.effects!N9P695V5KKlJbAY5.1f6fFhOLwZrmA6e5" } ], "ownership": { @@ -148,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753836714712, - "modifiedTime": 1753836748404, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754845960700, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_id": "N9P695V5KKlJbAY5", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json b/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json index dad2f4db..69e46858 100644 --- a/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json +++ b/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json @@ -16,7 +16,7 @@ { "value": "reliable", "effectIds": [ - "xU0DD5ydbwmXMKtF" + "228lcQpohdJ3Bbga" ], "actionIds": [] } @@ -109,14 +109,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "xU0DD5ydbwmXMKtF", + "_id": "228lcQpohdJ3Bbga", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753829126416, - "modifiedTime": 1753829126416, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814935810, + "modifiedTime": 1754814935810, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!OcKeLJxvmdT81VBc.xU0DD5ydbwmXMKtF" + "_key": "!items.effects!OcKeLJxvmdT81VBc.228lcQpohdJ3Bbga" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753829098118, - "modifiedTime": 1753829367508, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814935815, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!OcKeLJxvmdT81VBc" } diff --git a/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json b/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json index 41abaff0..70531b7c 100644 --- a/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json +++ b/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json @@ -2,7 +2,7 @@ "folder": "fFuMdvpD1F3UshmM", "name": "Improved Heavy-Frame Wheelchair", "type": "weapon", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/HeavyWheelchair.webp", "system": { "description": "", "actions": {}, @@ -148,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753836674233, - "modifiedTime": 1753836769685, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754845992757, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_id": "L5KeCtrs768PmYWW", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json b/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json index c750bac9..737e2c55 100644 --- a/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json +++ b/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json @@ -2,7 +2,7 @@ "folder": "fFuMdvpD1F3UshmM", "name": "Improved Light-Frame Wheelchair", "type": "weapon", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/LightWheelchair.webp", "system": { "description": "", "actions": { @@ -141,12 +141,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753836612291, - "modifiedTime": 1753836778961, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754846018260, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_id": "ZJsetdHKV77ygtCE", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json b/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json index 65f03b0b..fb585281 100644 --- a/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json +++ b/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json @@ -16,7 +16,7 @@ { "value": "paired", "effectIds": [ - "cSmiIOXeuw0xpjel" + "9iHHwd9BxkBsV9lY" ], "actionIds": [] } @@ -114,9 +114,16 @@ "value": "ITEM.@system.tier + 1" } ], - "_id": "cSmiIOXeuw0xpjel", + "system": { + "rangeDependence": { + "enabled": true, + "range": "melee", + "target": "hostile", + "type": "withinRange" + } + }, + "_id": "9iHHwd9BxkBsV9lY", "type": "base", - "system": {}, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753794021004, - "modifiedTime": 1753794021004, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814695260, + "modifiedTime": 1754814695260, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!rSyBNRwemBVuTo3H.cSmiIOXeuw0xpjel" + "_key": "!items.effects!rSyBNRwemBVuTo3H.9iHHwd9BxkBsV9lY" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753744566951, - "modifiedTime": 1753794021010, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814695265, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!rSyBNRwemBVuTo3H" } diff --git a/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json b/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json index 04379b71..e141fbc2 100644 --- a/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json +++ b/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json @@ -16,7 +16,7 @@ { "value": "paired", "effectIds": [ - "rOjtLkrnI9EZHJm8" + "JHIUGyZH5q83ODvd" ], "actionIds": [] } @@ -114,9 +114,16 @@ "value": "ITEM.@system.tier + 1" } ], - "_id": "rOjtLkrnI9EZHJm8", + "system": { + "rangeDependence": { + "enabled": true, + "range": "melee", + "target": "hostile", + "type": "withinRange" + } + }, + "_id": "JHIUGyZH5q83ODvd", "type": "base", - "system": {}, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753794340876, - "modifiedTime": 1753794340876, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814703717, + "modifiedTime": 1754814703717, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!nMuF8ZDZ2aXZVTg6.rOjtLkrnI9EZHJm8" + "_key": "!items.effects!nMuF8ZDZ2aXZVTg6.JHIUGyZH5q83ODvd" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753794291887, - "modifiedTime": 1753794340879, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814703719, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!nMuF8ZDZ2aXZVTg6" } diff --git a/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json b/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json index c7b5c32f..d934731d 100644 --- a/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json +++ b/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json @@ -16,7 +16,7 @@ { "value": "reliable", "effectIds": [ - "FlmOrbhYbieIAVJL" + "LvxPAfrKuRfgubGV" ], "actionIds": [] } @@ -109,14 +109,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "FlmOrbhYbieIAVJL", + "_id": "LvxPAfrKuRfgubGV", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753831441325, - "modifiedTime": 1753831441325, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754815023490, + "modifiedTime": 1754815023490, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!q382JqMkqLaaFLIr.FlmOrbhYbieIAVJL" + "_key": "!items.effects!q382JqMkqLaaFLIr.LvxPAfrKuRfgubGV" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753831418620, - "modifiedTime": 1753831441332, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754815023493, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!q382JqMkqLaaFLIr" } diff --git a/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json b/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json index c65353db..f2f53dc7 100644 --- a/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json +++ b/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json @@ -7,63 +7,22 @@ "system": { "description": "", "actions": { - "fRKcEeShWSLkoExh": { + "B0uT1D1WRidiHxyh": { "type": "effect", "actionType": "action", "chatDisplay": true, "name": "Double Up", "description": "When you make an attack with your primary weapon, you can deal damage to another target within Melee range.", "img": "icons/skills/melee/strike-slashes-orange.webp", - "_id": "fRKcEeShWSLkoExh", + "_id": "B0uT1D1WRidiHxyh", "effects": [], "systemPath": "actions", "cost": [], "uses": { "value": null, "max": null, - "recovery": null - }, - "target": { - "type": "any", - "amount": null - } - }, - "lVsEmJwjYgpYL9l4": { - "type": "effect", - "actionType": "action", - "chatDisplay": true, - "name": "Double Up", - "description": "When you make an attack with your primary weapon, you can deal damage to another target within Melee range.", - "img": "icons/skills/melee/strike-slashes-orange.webp", - "_id": "lVsEmJwjYgpYL9l4", - "effects": [], - "systemPath": "actions", - "cost": [], - "uses": { - "value": null, - "max": null, - "recovery": null - }, - "target": { - "type": "any", - "amount": null - } - }, - "2ndqofzTHsEUMxsm": { - "type": "effect", - "actionType": "action", - "chatDisplay": true, - "name": "Double Up", - "description": "When you make an attack with your primary weapon, you can deal damage to another target within Melee range.", - "img": "icons/skills/melee/strike-slashes-orange.webp", - "_id": "2ndqofzTHsEUMxsm", - "effects": [], - "systemPath": "actions", - "cost": [], - "uses": { - "value": null, - "max": null, - "recovery": null + "recovery": null, + "consumeOnSuccess": false }, "target": { "type": "any", @@ -81,7 +40,7 @@ "value": "doubledUp", "effectIds": [], "actionIds": [ - "2ndqofzTHsEUMxsm" + "B0uT1D1WRidiHxyh" ] } ], @@ -177,12 +136,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753797258168, - "modifiedTime": 1753798882899, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814600761, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!SFqganS8Du4aEKjQ" } diff --git a/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json b/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json index 16211d24..b402692f 100644 --- a/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json +++ b/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json @@ -2,7 +2,7 @@ "folder": "beilKE5ZPAihKg3O", "name": "Legendary Arcane-Frame Wheelchair", "type": "weapon", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/ArcaneWheelchair.webp", "system": { "description": "", "actions": {}, @@ -15,7 +15,7 @@ { "value": "reliable", "effectIds": [ - "G561ymlNGmaFAYFB" + "TvsoAiqHCwgtYat1" ], "actionIds": [] } @@ -108,14 +108,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "G561ymlNGmaFAYFB", + "_id": "TvsoAiqHCwgtYat1", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -131,12 +138,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "lastModifiedBy": null + "systemVersion": "1.0.0", + "createdTime": 1754815308723, + "modifiedTime": 1754815308723, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!gA2tiET9VHGhwMoO.G561ymlNGmaFAYFB" + "_key": "!items.effects!gA2tiET9VHGhwMoO.TvsoAiqHCwgtYat1" } ], "ownership": { @@ -148,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753836717240, - "modifiedTime": 1753836812453, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754845972571, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_id": "gA2tiET9VHGhwMoO", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json b/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json index ca0622de..32d19734 100644 --- a/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json +++ b/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json @@ -16,7 +16,7 @@ { "value": "reliable", "effectIds": [ - "lmUzKw6J6RW3krRT" + "ujb6VAqjyXmfnnjy" ], "actionIds": [] } @@ -109,14 +109,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "lmUzKw6J6RW3krRT", + "_id": "ujb6VAqjyXmfnnjy", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753834461846, - "modifiedTime": 1753834461846, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814961439, + "modifiedTime": 1754814961439, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!y3hfTPfZhMognyaJ.lmUzKw6J6RW3krRT" + "_key": "!items.effects!y3hfTPfZhMognyaJ.ujb6VAqjyXmfnnjy" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753834430378, - "modifiedTime": 1753834465538, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814961454, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!y3hfTPfZhMognyaJ" } diff --git a/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json b/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json index ade62012..d337d32f 100644 --- a/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json +++ b/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json @@ -2,7 +2,7 @@ "folder": "beilKE5ZPAihKg3O", "name": "Legendary Heavy-Frame Wheelchair", "type": "weapon", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/HeavyWheelchair.webp", "system": { "description": "", "actions": {}, @@ -148,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753836676831, - "modifiedTime": 1753836820180, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754846000470, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_id": "S6nB0CNlzdU05o5U", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json b/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json index 5b704d6c..622fcf12 100644 --- a/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json +++ b/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json @@ -2,7 +2,7 @@ "folder": "beilKE5ZPAihKg3O", "name": "Legendary Light-Frame Wheelchair", "type": "weapon", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/LightWheelchair.webp", "system": { "description": "", "actions": { @@ -141,12 +141,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753836615437, - "modifiedTime": 1753836826572, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754846023338, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_id": "Xt8tVSn5Fu6ly6LF", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json b/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json index 2f832ee7..5f6f6cb2 100644 --- a/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json +++ b/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json @@ -16,7 +16,7 @@ { "value": "paired", "effectIds": [ - "DgZQSBJx9JmoOngB" + "VFt61c2Apfbli2dG" ], "actionIds": [] } @@ -114,9 +114,16 @@ "value": "ITEM.@system.tier + 1" } ], - "_id": "DgZQSBJx9JmoOngB", + "system": { + "rangeDependence": { + "enabled": true, + "range": "melee", + "target": "hostile", + "type": "withinRange" + } + }, + "_id": "VFt61c2Apfbli2dG", "type": "base", - "system": {}, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753796957432, - "modifiedTime": 1753796957432, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814544486, + "modifiedTime": 1754814544486, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!dEumq3BIZBk5xYTk.DgZQSBJx9JmoOngB" + "_key": "!items.effects!dEumq3BIZBk5xYTk.VFt61c2Apfbli2dG" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753796913551, - "modifiedTime": 1753796957439, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814544510, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!dEumq3BIZBk5xYTk" } diff --git a/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json b/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json index be3a5886..855ddd80 100644 --- a/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json +++ b/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json @@ -16,7 +16,7 @@ { "value": "paired", "effectIds": [ - "Wjl3MEwNdQPeY63u" + "rnVm0jSEtdWhKGCh" ], "actionIds": [] } @@ -114,9 +114,16 @@ "value": "ITEM.@system.tier + 1" } ], - "_id": "Wjl3MEwNdQPeY63u", + "system": { + "rangeDependence": { + "enabled": true, + "range": "melee", + "target": "hostile", + "type": "withinRange" + } + }, + "_id": "rnVm0jSEtdWhKGCh", "type": "base", - "system": {}, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753797088930, - "modifiedTime": 1753797088930, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814562988, + "modifiedTime": 1754814562988, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!Px3Rh3kIvAqyISxJ.Wjl3MEwNdQPeY63u" + "_key": "!items.effects!Px3Rh3kIvAqyISxJ.rnVm0jSEtdWhKGCh" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753797057472, - "modifiedTime": 1753797088933, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814562995, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!Px3Rh3kIvAqyISxJ" } diff --git a/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json b/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json index 543a0f23..9bb97d2b 100644 --- a/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json +++ b/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json @@ -3,7 +3,7 @@ "name": "Light-Frame Wheelchair", "type": "weapon", "_id": "iaGnlUkShBgdeMo0", - "img": "icons/svg/item-bag.svg", + "img": "systems/daggerheart/assets/icons/documents/items/LightWheelchair.webp", "system": { "description": "", "actions": { @@ -143,12 +143,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753836579296, - "modifiedTime": 1753836587147, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754846015528, + "lastModifiedBy": "H02dtt2xvVJvYESk" }, "_key": "!items!iaGnlUkShBgdeMo0" } diff --git a/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json b/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json index 2b39a221..e3dd3035 100644 --- a/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json +++ b/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json @@ -7,21 +7,22 @@ "system": { "description": "", "actions": { - "KGJJgz0SMdY0f0em": { + "dNN2KOfUxGzQ2yjY": { "type": "effect", "actionType": "action", "chatDisplay": true, "name": "Lock On", "description": "On a successful attack, your next attack against the same target with your primary weapon automatically succeeds.", "img": "icons/skills/targeting/crosshair-arrowhead-blue.webp", - "_id": "KGJJgz0SMdY0f0em", + "_id": "dNN2KOfUxGzQ2yjY", "effects": [], "systemPath": "actions", "cost": [], "uses": { "value": null, "max": null, - "recovery": null + "recovery": null, + "consumeOnSuccess": false }, "target": { "type": "any", @@ -36,10 +37,10 @@ "burden": "oneHanded", "weaponFeatures": [ { - "value": "lockedon", + "value": "lockedOn", "effectIds": [], "actionIds": [ - "KGJJgz0SMdY0f0em" + "dNN2KOfUxGzQ2yjY" ] } ], @@ -135,12 +136,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753797317938, - "modifiedTime": 1753797376548, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814518028, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!SxcblanBvqaest3A" } diff --git a/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json b/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json index 92cb44b7..31cb74cd 100644 --- a/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json +++ b/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json @@ -16,7 +16,7 @@ { "value": "paired", "effectIds": [ - "VII5oRJrQTsSir0E" + "5RpOUFs0kDhzwltM" ], "actionIds": [] } @@ -114,9 +114,16 @@ "value": "ITEM.@system.tier + 1" } ], - "_id": "VII5oRJrQTsSir0E", + "system": { + "rangeDependence": { + "enabled": true, + "range": "melee", + "target": "hostile", + "type": "withinRange" + } + }, + "_id": "5RpOUFs0kDhzwltM", "type": "base", - "system": {}, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753793980974, - "modifiedTime": 1753793980974, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814729443, + "modifiedTime": 1754814729443, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!cjGZpXCoshEqi1FI.VII5oRJrQTsSir0E" + "_key": "!items.effects!cjGZpXCoshEqi1FI.5RpOUFs0kDhzwltM" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753741549716, - "modifiedTime": 1753793980983, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814729447, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!cjGZpXCoshEqi1FI" } diff --git a/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json b/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json index 4e9613f6..229162f8 100644 --- a/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json +++ b/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json @@ -16,7 +16,7 @@ { "value": "paired", "effectIds": [ - "2OLsxbZJqMgk680J" + "wK6ccFAirp9HYK5Q" ], "actionIds": [] } @@ -114,9 +114,16 @@ "value": "ITEM.@system.tier + 1" } ], - "_id": "2OLsxbZJqMgk680J", + "system": { + "rangeDependence": { + "enabled": true, + "range": "melee", + "target": "hostile", + "type": "withinRange" + } + }, + "_id": "wK6ccFAirp9HYK5Q", "type": "base", - "system": {}, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753794165509, - "modifiedTime": 1753794165509, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814738851, + "modifiedTime": 1754814738851, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!wKklDxs5nkzILNp4.2OLsxbZJqMgk680J" + "_key": "!items.effects!wKklDxs5nkzILNp4.wK6ccFAirp9HYK5Q" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753744141625, - "modifiedTime": 1753794165511, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814738854, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!wKklDxs5nkzILNp4" } diff --git a/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json b/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json index 8a40a800..9b9d691a 100644 --- a/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json +++ b/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json @@ -16,7 +16,7 @@ { "value": "doubleDuty", "effectIds": [ - "qo4VPSV0VZha1ya2" + "d3TJtlpoHBCztbom" ], "actionIds": [] } @@ -119,9 +119,16 @@ "value": "1" } ], - "_id": "qo4VPSV0VZha1ya2", + "system": { + "rangeDependence": { + "enabled": true, + "range": "melee", + "target": "hostile", + "type": "withinRange" + } + }, + "_id": "d3TJtlpoHBCztbom", "type": "base", - "system": {}, "disabled": false, "duration": { "startTime": null, @@ -137,14 +144,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753794551639, - "modifiedTime": 1753794551639, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814481208, + "modifiedTime": 1754814481208, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!vzyzFwLUniWZV1rt.qo4VPSV0VZha1ya2" + "_key": "!items.effects!vzyzFwLUniWZV1rt.d3TJtlpoHBCztbom" } ], "sort": 0, @@ -157,12 +164,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753794535926, - "modifiedTime": 1753794665373, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814481212, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!vzyzFwLUniWZV1rt" } diff --git a/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json b/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json index ca641ad2..cec5b0d1 100644 --- a/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json +++ b/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json @@ -16,7 +16,7 @@ { "value": "reliable", "effectIds": [ - "YA5tbB6XBISWsf0p" + "G9mMGxBSexwjWTYV" ], "actionIds": [] } @@ -109,14 +109,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "YA5tbB6XBISWsf0p", + "_id": "G9mMGxBSexwjWTYV", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753836322206, - "modifiedTime": 1753836322206, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754815251133, + "modifiedTime": 1754815251133, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!I1nDGpulg29GpWOW.YA5tbB6XBISWsf0p" + "_key": "!items.effects!I1nDGpulg29GpWOW.G9mMGxBSexwjWTYV" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753836302436, - "modifiedTime": 1753836334493, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754815251135, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!I1nDGpulg29GpWOW" } diff --git a/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json b/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json index 96f3e22e..76b82f6a 100644 --- a/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json +++ b/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json @@ -12,7 +12,7 @@ "actionType": "action", "chatDisplay": true, "name": "Bend Time", - "description": "DAGGERHEART.CONFIG.WeaponFeature.actions.bendTime.description", + "description": "DAGGERHEART.CONFIG.WeaponFeature.timebending.actions.bendTime.description", "img": "icons/magic/time/clock-spinning-gold-pink.webp", "_id": "TzNsQcYm4OVNFQyD", "effects": [], diff --git a/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json b/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json index 458d8136..5d65a310 100644 --- a/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json +++ b/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json @@ -16,7 +16,7 @@ { "value": "reliable", "effectIds": [ - "Gt0tHtJDQwdSActw" + "cOYeI9TxHXpDwszu" ], "actionIds": [] } @@ -109,14 +109,21 @@ "img": "icons/skills/melee/strike-sword-slashing-red.webp", "changes": [ { - "key": "system.bonuses.roll.primaryWeapon.attack", + "key": "system.bonuses.roll.primaryWeapon.bonus", "mode": 2, "value": "1" } ], - "_id": "Gt0tHtJDQwdSActw", + "_id": "cOYeI9TxHXpDwszu", "type": "base", - "system": {}, + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, "disabled": false, "duration": { "startTime": null, @@ -132,14 +139,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753829771677, - "modifiedTime": 1753829771677, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "systemVersion": "1.0.0", + "createdTime": 1754814992368, + "modifiedTime": 1754814992368, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, - "_key": "!items.effects!z6yEdFYQJ5IzgTX3.Gt0tHtJDQwdSActw" + "_key": "!items.effects!z6yEdFYQJ5IzgTX3.cOYeI9TxHXpDwszu" } ], "sort": 0, @@ -152,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.0", "createdTime": 1753829740082, - "modifiedTime": 1753829771680, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1754814992370, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!items!z6yEdFYQJ5IzgTX3" } diff --git a/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json b/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json index 6b10b403..743aef06 100644 --- a/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json +++ b/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json @@ -12,7 +12,7 @@ "actionType": "action", "chatDisplay": true, "name": "Bend Time", - "description": "DAGGERHEART.CONFIG.WeaponFeature.actions.bendTime.description", + "description": "DAGGERHEART.CONFIG.WeaponFeature.timebending.actions.bendTime.description", "img": "icons/magic/time/clock-spinning-gold-pink.webp", "_id": "gQFuVhPeKzNj93p6", "effects": [], diff --git a/src/packs/journals/journal_Welcome___Information_g7NhKvwltwafmMyR.json b/src/packs/journals/journal_Welcome___Information_g7NhKvwltwafmMyR.json index 6620d62c..af31907f 100644 --- a/src/packs/journals/journal_Welcome___Information_g7NhKvwltwafmMyR.json +++ b/src/packs/journals/journal_Welcome___Information_g7NhKvwltwafmMyR.json @@ -132,7 +132,7 @@ "image": {}, "text": { "format": 1, - "content": "

This product includes materials from the Daggerheart System Reference Document 1.0, © Critical Role, LLC. under the terms of the Darrington Press Community Gaming (DPCGL) License. More information can be found at https://www.daggerheart.com. There are no previous modifications by others.

The Foundryborne Team

The Foundryborne Team consists of:

  • @harryfuralle

  • @cptn_cosmo

  • @molilo

  • @joaquinp98

  • @dapoulp

  • @ikraik

  • @irktheimp

  • @jacobwojo

  • @vyrth

  • @.ontaro

  • @saatsin

  • @david.xyz

  • @lazjen

With Art from:

  • UsernameIsInUse

And special thanks to our hard working community testers:

  • @lazjen

We would also like to thank the FoundryVTT team for their support in publishing this system.

And, of course, special thanks to the teams at Critical Role and Darrington Press for making such a wonderful game and updating the license to allow a FoundryVTT version of the system.

The Foundryborne Community

Without our amazing community this project would not have been possible.

You kept us going with both direct contributions and just endless support!

We thank you with all our hearts.

Come join us!

" + "content": "

This product includes materials from the Daggerheart System Reference Document 1.0, © Critical Role, LLC. under the terms of the Darrington Press Community Gaming (DPCGL) License. More information can be found at https://www.daggerheart.com. There are no previous modifications by others.

The Foundryborne Team

The Foundryborne Team consists of:

  • @harryfuralle

  • @cptn_cosmo

  • @molilo

  • @joaquinp98

  • @dapoulp

  • @ikraik

  • @irktheimp

  • @jacobwojo

  • @vyrth

  • @.ontaro

  • @saatsin

  • @david.xyz

  • @lazjen

With Art from:

  • @molilo (Foundryborne User Interface & Domain Card Placeholder Artwork)

  • @UsernameIsInUse (Foundryborne Logo, Website Design, Duality Roll Icon

  • @CyrensMaps (Combat Wheelchair Icons)

And special thanks to our hard working community testers:

  • @lazjen

We would also like to thank the FoundryVTT team for their support in publishing this system, as well as providing countless Icons to be used in many places.

And, of course, special thanks to the teams at Critical Role and Darrington Press for making such a wonderful game and updating the license to allow a FoundryVTT version of the system.

The Foundryborne Community

Without our amazing community this project would not have been possible.

You kept us going with both direct contributions and just endless support!

We thank you with all our hearts.

Come join us!

" }, "video": { "controls": true, @@ -153,8 +153,8 @@ "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754225939902, - "modifiedTime": 1754668980876, - "lastModifiedBy": "Cf0YKwnZ1OHBZWl8" + "modifiedTime": 1754847043391, + "lastModifiedBy": "9GFCfEY8m5Co2mHo" }, "_key": "!journal.pages!g7NhKvwltwafmMyR.dP6xSKEld4TSqHhK" } diff --git a/styles/less/sheets-settings/adversary-settings/features.less b/styles/less/sheets-settings/adversary-settings/features.less index 037a08ea..29c9874e 100644 --- a/styles/less/sheets-settings/adversary-settings/features.less +++ b/styles/less/sheets-settings/adversary-settings/features.less @@ -14,8 +14,14 @@ margin-bottom: 12px; } - .feature-list { + .feature-list, + .features-dragger { display: flex; + width: 100%; + font-family: @font-body; + } + + .feature-list { flex-direction: column; gap: 10px; @@ -45,5 +51,16 @@ } } } + + .features-dragger { + align-items: center; + justify-content: center; + box-sizing: border-box; + height: 40px; + margin-top: 10px; + border: 1px dashed light-dark(@dark-blue-50, @beige-50); + border-radius: 3px; + color: light-dark(@dark-blue-50, @beige-50); + } } } diff --git a/styles/less/sheets/actors/character/header.less b/styles/less/sheets/actors/character/header.less index 5de7a827..7bfcc7c9 100644 --- a/styles/less/sheets/actors/character/header.less +++ b/styles/less/sheets/actors/character/header.less @@ -10,7 +10,7 @@ } .character-row .domains-section img { - filter: invert(88%) sepia(98%) saturate(1784%) hue-rotate(311deg) brightness(104%) contrast(91%); + filter: @golden-filter; } } }, { @@ -20,7 +20,7 @@ } .character-row .domains-section img { - filter: invert(87%) sepia(15%) saturate(343%) hue-rotate(333deg) brightness(110%) contrast(87%); + filter: brightness(0) saturate(100%); } } }); diff --git a/styles/less/ui/combat-sidebar/encounter-controls.less b/styles/less/ui/combat-sidebar/encounter-controls.less index 58deaae8..fd0c1aee 100644 --- a/styles/less/ui/combat-sidebar/encounter-controls.less +++ b/styles/less/ui/combat-sidebar/encounter-controls.less @@ -2,43 +2,14 @@ .encounter-controls.combat { justify-content: space-between; - .encounter-fear-controls { + .encounter-title { + text-align: left; + } + + .inner-controls { display: flex; align-items: center; - gap: 8px; - - .encounter-fear-dice-container { - display: flex; - gap: 2px; - - .encounter-control-fear-container { - display: flex; - position: relative; - align-items: center; - justify-content: center; - color: black; - - .dice { - height: 22px; - width: 22px; - } - - .encounter-control-fear { - position: absolute; - font-size: 16px; - } - - .encounter-control-counter { - position: absolute; - right: -10px; - color: var(--color-text-secondary); - } - } - } - - .encounter-countdowns { - color: var(--content-link-icon-color); - } + gap: 4px; } .control-buttons { diff --git a/styles/less/ui/item-browser/item-browser.less b/styles/less/ui/item-browser/item-browser.less index e7ff3b12..df35d60b 100644 --- a/styles/less/ui/item-browser/item-browser.less +++ b/styles/less/ui/item-browser/item-browser.less @@ -175,12 +175,23 @@ display: flex; flex-direction: column; [data-folder-id] { - padding: 5px 10px; + display: flex; + justify-content: space-between; + padding: 10px; border: 1px solid transparent; font-family: @font-body; transition: all 0.1s ease; + + &.expanded + .subfolder-list { + grid-template-rows: 1fr; + } + + &:has(+ .subfolder-list):after { + content: "+"; + } } + [data-folder-id]:has(+ .subfolder-list .is-selected), .is-selected, [data-folder-id]:hover { font-weight: bold; @@ -190,9 +201,15 @@ } .subfolder-list { - margin: 5px 0; + display: grid; + grid-template-rows: 0fr; + transition: grid-template-rows 0.3s ease-in-out; gap: 0; + [data-folder-id] { + padding: 5px 10px; + } + .is-selected, [data-folder-id]:hover { font-weight: bold; @@ -200,6 +217,10 @@ background-color: light-dark(@dark-blue-10, @golden-10); color: light-dark(@dark-blue, @golden); } + + .wrapper { + overflow: hidden; + } } } diff --git a/styles/less/ui/resources/resources.less b/styles/less/ui/resources/resources.less index 1f609c5e..3982d990 100644 --- a/styles/less/ui/resources/resources.less +++ b/styles/less/ui/resources/resources.less @@ -108,7 +108,7 @@ box-shadow: unset; border-color: transparent; header, - .controls, + #resource-fear .controls, .window-resize-handle { opacity: 0; } diff --git a/system.json b/system.json index 7501cfa7..a0c91923 100644 --- a/system.json +++ b/system.json @@ -44,6 +44,10 @@ "url": "https://github.com/joaquinpereyra98", "email": "joaquinpereyra98@gmail.com", "discord": "joaquinp98" + }, + { + "name": "chrisryan10", + "discord": "lazjen" } ], "esmodules": ["build/daggerheart.js"], @@ -262,6 +266,7 @@ "abilityUse": {} } }, + "background": "systems/daggerheart/assets/logos/FoundrybornBackgroundLogo.png", "primaryTokenAttribute": "resources.hitPoints", "secondaryTokenAttribute": "resources.stress", "url": "https://your/hosted/system/repo/", diff --git a/templates/characterCreation/setupTabs/domainCards.hbs b/templates/characterCreation/setupTabs/domainCards.hbs index 298d8859..66526689 100644 --- a/templates/characterCreation/setupTabs/domainCards.hbs +++ b/templates/characterCreation/setupTabs/domainCards.hbs @@ -10,9 +10,7 @@ {{#each domainCards as |domainCard id|}}
{{#> "systems/daggerheart/templates/components/card-preview.hbs" domainCard }} - {{#each @root.class.system.domains }} -
{{localize (concat "DAGGERHEART.GENERAL.Domain." this ".label")}}
- {{/each}} + {{#each @root.classDomains }}
{{this}}
{{/each}} {{/"systems/daggerheart/templates/components/card-preview.hbs"}}
{{/each}} diff --git a/templates/dialogs/dice-roll/damageSelection.hbs b/templates/dialogs/dice-roll/damageSelection.hbs index be49906b..ba542666 100644 --- a/templates/dialogs/dice-roll/damageSelection.hbs +++ b/templates/dialogs/dice-roll/damageSelection.hbs @@ -24,7 +24,7 @@ {{/each}} - {{#if @root.modifiers}} + {{#unless (empty @root.modifiers)}}
{{localize "DAGGERHEART.GENERAL.Modifier.plural"}} {{#each @root.modifiers}} @@ -39,7 +39,7 @@ {{/if}} {{/each}}
- {{/if}} + {{/unless}}
{{#if directDamage}} diff --git a/templates/sheets-settings/adversary-settings/features.hbs b/templates/sheets-settings/adversary-settings/features.hbs index a287c2a8..b26fa10c 100644 --- a/templates/sheets-settings/adversary-settings/features.hbs +++ b/templates/sheets-settings/adversary-settings/features.hbs @@ -10,7 +10,7 @@ {{localize tabs.features.label}}
    {{#each document.system.features as |feature|}} -
  • +
  • {{feature.name}} @@ -22,5 +22,8 @@
  • {{/each}}
+
+ {{localize "DAGGERHEART.GENERAL.dropFeaturesHere"}} +
\ No newline at end of file diff --git a/templates/sheets-settings/companion-settings/attack.hbs b/templates/sheets-settings/companion-settings/attack.hbs index bebe40b3..0ec43d35 100644 --- a/templates/sheets-settings/companion-settings/attack.hbs +++ b/templates/sheets-settings/companion-settings/attack.hbs @@ -5,16 +5,16 @@ >
{{localize "DAGGERHEART.GENERAL.basics"}} - {{formGroup systemFields.attack.fields.img value=document.system.attack.img label="DAGGERHEART.GENERAL.imagePath" name="system.attack.img" localize=true}} - {{formGroup systemFields.attack.fields.name value=document.system.attack.name label="DAGGERHEART.ACTIONS.Settings.attackName" name="system.attack.name" localize=true}} + {{formGroup systemFields.attack.fields.img value=document._source.system.attack.img label="DAGGERHEART.GENERAL.imagePath" name="system.attack.img" localize=true}} + {{formGroup systemFields.attack.fields.name value=document._source.system.attack.name label="DAGGERHEART.ACTIONS.Settings.attackName" name="system.attack.name" localize=true}}
{{localize "DAGGERHEART.GENERAL.attack"}} - {{formField systemFields.attack.fields.range value=document.system.attack.range label="DAGGERHEART.GENERAL.range" name="system.attack.range" localize=true}} + {{formField systemFields.attack.fields.range value=document._source.system.attack.range label="DAGGERHEART.GENERAL.range" name="system.attack.range" localize=true}} {{#if systemFields.attack.fields.target.fields}} - {{ formField systemFields.attack.fields.target.fields.type value=document.system.attack.target.type label="DAGGERHEART.GENERAL.Target.single" name="system.attack.target.type" localize=true}} - {{#if (and document.system.attack.target.type (not (eq document.system.attack.target.type 'self')))}} - {{ formField systemFields.attack.fields.target.fields.amount value=document.system.attack.target.amount label="DAGGERHEART.GENERAL.amount" name="system.attack.target.amount" localize=true}} + {{ formField systemFields.attack.fields.target.fields.type value=document._source.system.attack.target.type label="DAGGERHEART.GENERAL.Target.single" name="system.attack.target.type" localize=true}} + {{#if (and document._source.system.attack.target.type (not (eq document._source.system.attack.target.type 'self')))}} + {{ formField systemFields.attack.fields.target.fields.amount value=document._source.system.attack.target.amount label="DAGGERHEART.GENERAL.amount" name="system.attack.target.amount" localize=true}} {{/if}} {{/if}}
diff --git a/templates/sheets-settings/companion-settings/details.hbs b/templates/sheets-settings/companion-settings/details.hbs index 4f1825d8..e4293443 100644 --- a/templates/sheets-settings/companion-settings/details.hbs +++ b/templates/sheets-settings/companion-settings/details.hbs @@ -6,18 +6,18 @@
{{localize 'DAGGERHEART.GENERAL.basics'}}
- {{formGroup systemFields.evasion value=document.system.evasion localize=true}} - {{formGroup systemFields.resources.fields.stress.fields.value value=document.system.resources.stress.value label='DAGGERHEART.ACTORS.Companion.FIELDS.resources.stress.currentStress.label' localize=true}} - {{formGroup systemFields.resources.fields.stress.fields.max value=document.system.resources.stress.max label='DAGGERHEART.ACTORS.Companion.FIELDS.resources.stress.maxStress.label' localize=true}} + {{formGroup systemFields.evasion value=document._source.system.evasion localize=true}} + {{formGroup systemFields.resources.fields.stress.fields.value value=document._source.system.resources.stress.value label='DAGGERHEART.ACTORS.Companion.FIELDS.resources.stress.currentStress.label' localize=true}} + {{formGroup systemFields.resources.fields.stress.fields.max value=document._source.system.resources.stress.max label='DAGGERHEART.ACTORS.Companion.FIELDS.resources.stress.maxStress.label' localize=true}}
- + \ No newline at end of file diff --git a/templates/sheets-settings/environment-settings/details.hbs b/templates/sheets-settings/environment-settings/details.hbs index 1f8c45f2..ecb47ca8 100644 --- a/templates/sheets-settings/environment-settings/details.hbs +++ b/templates/sheets-settings/environment-settings/details.hbs @@ -6,11 +6,11 @@
{{localize 'DAGGERHEART.GENERAL.basics'}}
- {{formGroup systemFields.tier value=document.system.tier localize=true}} - {{formGroup systemFields.type value=document.system.type localize=true}} - {{formGroup systemFields.difficulty value=document.system.difficulty localize=true}} + {{formGroup systemFields.tier value=document._source.system.tier localize=true}} + {{formGroup systemFields.type value=document._source.system.type localize=true}} + {{formGroup systemFields.difficulty value=document._source.system.difficulty localize=true}}
- {{formField systemFields.description value=document.system.description label=(localize "DAGGERHEART.ACTORS.Environment.FIELDS.description.label")}} - {{formField systemFields.impulses value=document.system.impulses label=(localize "DAGGERHEART.ACTORS.Environment.FIELDS.impulses.label")}} + {{formField systemFields.description value=document._source.system.description label=(localize "DAGGERHEART.ACTORS.Environment.FIELDS.description.label")}} + {{formField systemFields.impulses value=document._source.system.impulses label=(localize "DAGGERHEART.ACTORS.Environment.FIELDS.impulses.label")}}
\ No newline at end of file diff --git a/templates/sheets/actors/character/header.hbs b/templates/sheets/actors/character/header.hbs index b6f51bcf..88a72fb8 100644 --- a/templates/sheets/actors/character/header.hbs +++ b/templates/sheets/actors/character/header.hbs @@ -87,9 +87,9 @@
{{#if document.system.class.value}}
- {{#each document.system.class.value.system.domains as |domain|}} + {{#each document.system.domainData as |data|}}
- +
{{/each}}
@@ -105,9 +105,9 @@
- {{#each this.attributes as |attribute key|}} -
-
+ {{#each this.attributes as |attribute key|}} +
+
{{localize (concat 'DAGGERHEART.CONFIG.Traits.' key '.short')}} {{#if attribute.tierMarked}} diff --git a/templates/ui/combatTracker/combatTrackerHeader.hbs b/templates/ui/combatTracker/combatTrackerHeader.hbs index de666168..a34e4743 100644 --- a/templates/ui/combatTracker/combatTrackerHeader.hbs +++ b/templates/ui/combatTracker/combatTrackerHeader.hbs @@ -55,7 +55,7 @@
- +
{{fear}}
@@ -63,7 +63,6 @@
{{/if}} - {{!-- Combat Status --}} {{#if combats.length}} @@ -78,14 +77,16 @@ {{!-- Combat Controls --}} - {{#if hasCombat}} -
-
- -
- {{/if}} - +
+ {{#if hasCombat}} + +
+
+ +
+ {{/if}} +
diff --git a/templates/ui/itemBrowser/sidebar.hbs b/templates/ui/itemBrowser/sidebar.hbs index 6c395a4b..56d9db6d 100644 --- a/templates/ui/itemBrowser/sidebar.hbs +++ b/templates/ui/itemBrowser/sidebar.hbs @@ -7,19 +7,23 @@
{{#each folders}} -
{{label}}
+
{{label}}
{{!--
{{label}}
--}} -
- {{#each folders}} -
- • {{label}} + {{#if folders.length}} +
+
+ {{#each folders}} +
+ • {{label}} +
+ {{/each}}
- {{/each}} -
+
+ {{/if}} {{/each}}
From 06184773b9cc936a0959be388f03549abe38c6a8 Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Tue, 12 Aug 2025 18:37:16 +0200 Subject: [PATCH 002/260] direct damage (#873) --- lang/en.json | 20 +++++++++++++++----- module/data/action/baseAction.mjs | 1 + module/data/chat-message/adversaryRoll.mjs | 1 + module/data/fields/action/damageField.mjs | 3 ++- module/documents/actor.mjs | 3 ++- module/documents/chatMessage.mjs | 2 +- styles/less/global/elements.less | 4 ++++ templates/actionTypes/damage.hbs | 11 ++++++++--- templates/ui/chat/parts/damage-part.hbs | 6 +++--- 9 files changed, 37 insertions(+), 14 deletions(-) diff --git a/lang/en.json b/lang/en.json index e5f09217..a66cbbc3 100755 --- a/lang/en.json +++ b/lang/en.json @@ -846,6 +846,11 @@ "magical": { "name": "Magical", "abbreviation": "Mag" + }, + "direct": { + "name": "Direct Damage", + "short": "Direct", + "abbreviation": "Dir" } }, "DeathMoves": { @@ -895,23 +900,28 @@ "HealingType": { "hitPoints": { "name": "Hit Points", - "abbreviation": "HP" + "abbreviation": "HP", + "inChatRoll": "Damage" }, "stress": { "name": "Stress", - "abbreviation": "STR" + "abbreviation": "STR", + "inChatRoll": "Stress" }, "hope": { "name": "Hope", - "abbreviation": "HO" + "abbreviation": "HO", + "inChatRoll": "Hope" }, "armor": { "name": "Armor Slot", - "abbreviation": "AS" + "abbreviation": "AS", + "inChatRoll": "Armor Slot" }, "fear": { "name": "Fear", - "abbreviation": "FR" + "abbreviation": "FR", + "inChatRoll": "Fear" } }, "ItemResourceProgression": { diff --git a/module/data/action/baseAction.mjs b/module/data/action/baseAction.mjs index a886bf49..43850196 100644 --- a/module/data/action/baseAction.mjs +++ b/module/data/action/baseAction.mjs @@ -177,6 +177,7 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel hasDamage: this.damage?.parts?.length && this.type !== 'healing', hasHealing: this.damage?.parts?.length && this.type === 'healing', hasEffect: !!this.effects?.length, + isDirect: !!this.damage?.direct, hasSave: this.hasSave, selectedRollMode: game.settings.get('core', 'rollMode'), isFastForward: event.shiftKey, diff --git a/module/data/chat-message/adversaryRoll.mjs b/module/data/chat-message/adversaryRoll.mjs index 337acf5b..8e4b7414 100644 --- a/module/data/chat-message/adversaryRoll.mjs +++ b/module/data/chat-message/adversaryRoll.mjs @@ -29,6 +29,7 @@ export default class DHActorRoll extends foundry.abstract.TypeDataModel { hasEffect: new fields.BooleanField({ initial: false }), hasSave: new fields.BooleanField({ initial: false }), hasTarget: new fields.BooleanField({ initial: false }), + isDirect: new fields.BooleanField({ initial: false }), isCritical: new fields.BooleanField({ initial: false }), onSave: new fields.StringField(), source: new fields.SchemaField({ diff --git a/module/data/fields/action/damageField.mjs b/module/data/fields/action/damageField.mjs index 9e9e4b16..44ac70f1 100644 --- a/module/data/fields/action/damageField.mjs +++ b/module/data/fields/action/damageField.mjs @@ -9,7 +9,8 @@ export default class DamageField extends fields.SchemaField { includeBase: new fields.BooleanField({ initial: false, label: 'DAGGERHEART.ACTIONS.Settings.includeBase.label' - }) + }), + direct: new fields.BooleanField({ initial: false, label: "DAGGERHEART.CONFIG.DamageType.direct.name" }) }; super(damageFields, options, context); } diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index c75db559..6421d6bd 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -517,7 +517,7 @@ export default class DhpActor extends Actor { return canUseArmor || canUseStress; } - async takeDamage(damages) { + async takeDamage(damages, isDirect = false) { if (Hooks.call(`${CONFIG.DH.id}.preTakeDamage`, this, damages) === false) return null; if (this.type === 'companion') { @@ -548,6 +548,7 @@ export default class DhpActor extends Actor { hpDamage.value = this.convertDamageToThreshold(hpDamage.value); if ( this.type === 'character' && + !isDirect && this.system.armor && this.#canReduceDamage(hpDamage.value, hpDamage.damageTypes) ) { diff --git a/module/documents/chatMessage.mjs b/module/documents/chatMessage.mjs index 2b10e251..80bafc98 100644 --- a/module/documents/chatMessage.mjs +++ b/module/documents/chatMessage.mjs @@ -138,7 +138,7 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { this.consumeOnSuccess(); if (this.system.hasHealing) target.actor.takeHealing(damages); - else target.actor.takeDamage(damages); + else target.actor.takeDamage(damages, this.system.isDirect); } } diff --git a/styles/less/global/elements.less b/styles/less/global/elements.less index 4c0243f6..b583d470 100755 --- a/styles/less/global/elements.less +++ b/styles/less/global/elements.less @@ -344,6 +344,10 @@ width: 100%; gap: 5px; + &.space-between { + justify-content: space-between; + } + .btn { padding-top: 15px; } diff --git a/templates/actionTypes/damage.hbs b/templates/actionTypes/damage.hbs index a3abdf19..3ff4c142 100644 --- a/templates/actionTypes/damage.hbs +++ b/templates/actionTypes/damage.hbs @@ -8,9 +8,14 @@ {{/if}} {{#unless (eq path 'system.attack.')}}{{/unless}} - {{#if @root.hasBaseDamage}} - {{formField @root.fields.damage.fields.includeBase value=@root.source.damage.includeBase name="damage.includeBase" classes="checkbox" localize=true }} - {{/if}} +
+ {{#if @root.hasBaseDamage}} + {{formField @root.fields.damage.fields.includeBase value=@root.source.damage.includeBase name="damage.includeBase" classes="checkbox" localize=true }} + {{/if}} + {{#unless (eq @root.source.type 'healing')}} + {{formField @root.fields.damage.fields.direct value=@root.source.damage.direct name="damage.direct" localize=true classes="checkbox"}} + {{/unless}} +
{{#each source.parts as |dmg index|}} {{#if (and @root.hasBaseDamage @root.source.damage.includeBase)}} {{setVar 'realIndex' (add index -1)}} diff --git a/templates/ui/chat/parts/damage-part.hbs b/templates/ui/chat/parts/damage-part.hbs index 232b1303..346e9621 100644 --- a/templates/ui/chat/parts/damage-part.hbs +++ b/templates/ui/chat/parts/damage-part.hbs @@ -3,7 +3,7 @@
{{#each damage as | roll index | }} -
{{localize (concat 'DAGGERHEART.CONFIG.HealingType.' index '.name')}}: {{total}}
+
{{localize (concat 'DAGGERHEART.CONFIG.HealingType.' index '.inChatRoll')}}: {{total}}
{{/each}}
@@ -12,8 +12,8 @@
{{#each damage as | roll index | }}
- - {{localize (concat 'DAGGERHEART.CONFIG.HealingType.' index '.name')}}
{{localize "DAGGERHEART.GENERAL.total"}}: {{roll.total}}
+ {{log @root}} + {{localize (concat 'DAGGERHEART.CONFIG.HealingType.' index '.inChatRoll')}}
{{localize "DAGGERHEART.GENERAL.total"}}: {{roll.total}}
{{#if (and (eq index "hitPoints")../isDirect)}}
{{localize "DAGGERHEART.CONFIG.DamageType.direct.short"}}
{{/if}}
{{#each roll.parts}} {{#if damageTypes.length}} From 24f5cb5a5c777c570f0f11a2931648c22870dac1 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Wed, 13 Aug 2025 22:14:09 +0200 Subject: [PATCH 003/260] Hotfix 1.0.2 (#916) (#919) * Updated the background image for the system * Fixed so Weapon/Armor features are added again * Fixed so fear is available as a resource to be deducted by actions (#757) * Changed to use the config labels and src * Updated Weapons * Fixed so the decrease button of simple fear tracker is not visible when not hovered * Fixed so armor preUpdate doesn't fail if no system changes are made * Updated .gitignore and author details (#777) * Add author details and name mapping for chrisryan10 (#773) * Add build to ignore for my linux dev (#775) --------- * Corrected sneak attack active effect (#780) * Fixed a spelling error (#779) * Fix bardic rally showing in damage dialog when it should not (#783) * update spelling (#786) * Translating inventory descriptions (#782) * updated credits for 1.0.1 release (#797) * updated credits for 1.0.1 release * further updated artwork credits * Chagned handlebarhelper rollparsed to be more defensive (#794) * Added missing scene refreshType (#790) * Remove ability use buttons for not owned abilities (#795) * [Fix] PrayerDice Fixed (#799) * Fixed prayer dice, and wheelchair images * Fixed -settings data sources * Dragging features from one adversary to another (#788) * [Fix] Levelup Fixes (#787) * Fixed crash on experience selection. Fixed subclass error on multiclassing * Fixed so multiclasses do not gain the hope feature for the class * Fixed so Class/Subclass features are properly deleted on delevel * Removed automatic deletion of features on delevel when not using levelup auto * Fixed so custom domains can be selected in levelup when multiclassing * Changed so encounter countdowns is a button (#804) * Fixed so that dropping on class/subclass...creates the item on the character (#803) * [BUG] - Importing All Adversaries/Environments (#814) Fixes #774 * Bug/671 reaction roll chat title (#809) * Update Reaction Roll Chat Message Title * Removed console log --------- * Improve Trait tooltip display (#817) Fixes #806 * [BUG] - Combat Tracker d12 logo not found (#812) Fixes #764 * Compendium Browser (#821) * Corrected timbending description localization (#816) * [Fix] Compendium Item (#810) * Corrected Emberwoven Armor * Fixed subclass regression * Fixed so character's with wildcard images don't break beastform (#815) * Fix roll result based duality damage (#822) * Impproved Adversary Sheet Data Display (#751) * Impproved Adversary Sheet Data Display Fixes #604 * FIX: formula lables for attacks and weapons --------- * Fixed so exp increases can be selected normally (#835) * Update localization of rollSelection.hbs (#841) The Fear label lacked a localization path * renamed .md files (#834) * Removed the unintended icons that came from merge conflicts (#838) * Sheet image position (#861) * Remove extra result text from reaction chat message (#860) * Remove extra result text from reaction chat message * Remove log * [Fix] 850 - Downtime Refreshes (#859) * Fixed the filtering of refreshable features * Raised version * [Fix] 691 - CharacterCreation Improvement (#863) * Removed main creation tab. Added equipment to remaining tab * Fixed MixedAncestry name setting * Fixed tab after first creation * Fix/857 generic roll buttons (#866) * Action Macro working again * Remove buttons from generic roll for non-gm * Update sidebar.less Armor Slots label padding, for translations (#872) Equalizes the vertical and horizontal padding on the Armor Slots status label, to allow for more (much needed) room for the upcoming French translation (and others in the future). Doesn't change anything for the display in English. * Hid item attachments for now (#876) * Fixed so effects supposed to use item data use the model directly, since items have no rolldata (#883) * Made sure the beastform user isn't moved onto other duplicate actors. Fixed scrolling text duplication (#882) * Change the critical damage max calculation (#890) * Change the critical damage max calculation to avoid setting the rolled portion to maximum all the time. * Change to the more neater code * Restored package.json --------- * Fix movement (#885) * Changed so companion can level up on its own (#879) * Fix the missing ancestries in the SRD (#888) * Removed the old, now unused companion levelup button (#893) * Fixed so custom downtime moves will display their descriptions in the tooltip (#894) * Made coinflip icons in chat round (#895) * Fixed undefined case (#898) * Fix/877 hope update order (#896) * Action Macro working again * k * Fix Hope gain on Duality Roll * [Feature] Descriptions enhancements (#887) * add style to hover items and add start setting to features be expanded by default * REFACTOR: now prepare description onRender and simply the other methods * add setting to extend description from items and add molilo contacts in system.json --------- * Fixed traits container styling in light-mode (#899) * [BUG] - Movement Button selector not showing current mode (#912) Fixes #910 * Fix/864 chat targeting (#911) * Fix targeting * Fix chat target selection * Uncomment chatDisplay * Removed unessecary arg * [Feature] 648 - Mark Defeated Actors (#914) * Improved death marking styling * Added automation for defeated status * Fixed so the tracker recognises and sets the correct defeated statuses depending on type * Fixed so missing statuses doesn't cause crashes * Increased companion sheet width by 40 pixels * Added missing inheritDoc * Removed fas * FIX: use img instead of icons con statusEffectConfigns (#917) Authored-by: Joaquin Pereyra --------- Co-authored-by: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Co-authored-by: Chris Ryan Co-authored-by: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Co-authored-by: IrkTheImp <41175833+IrkTheImp@users.noreply.github.com> Co-authored-by: CPTN_Cosmo Co-authored-by: Josh Q. Co-authored-by: joaquinpereyra98 <24190917+joaquinpereyra98@users.noreply.github.com> Co-authored-by: Joaquin Pereyra Co-authored-by: SunnySunSun Co-authored-by: Murilo Brito <91566541+moliloo@users.noreply.github.com> --- coc.md => COC.md | 0 contributing.md => CONTRIBUTING.md | 0 lang/en.json | 39 ++- .../characterCreation/characterCreation.mjs | 284 +++++++----------- module/applications/dialogs/downtime.mjs | 5 +- .../applications/levelup/characterLevelup.mjs | 7 +- .../applications/levelup/companionLevelup.mjs | 29 +- .../settings/automationSettings.mjs | 13 +- .../sheets-configs/companion-settings.mjs | 12 +- .../applications/sheets/actors/character.mjs | 16 +- .../applications/sheets/actors/companion.mjs | 28 +- .../sheets/api/application-mixin.mjs | 118 ++++++-- .../sheets/api/item-attachment-sheet.mjs | 2 +- module/applications/ui/combatTracker.mjs | 51 ++++ module/canvas/placeables/token.mjs | 16 +- module/config/generalConfig.mjs | 50 +-- module/data/action/attackAction.mjs | 28 ++ module/data/action/macroAction.mjs | 12 +- module/data/actor/base.mjs | 22 ++ module/data/actor/character.mjs | 44 ++- module/data/actor/companion.mjs | 25 +- module/data/chat-message/adversaryRoll.mjs | 1 + module/data/combatant.mjs | 6 + module/data/fields/action/_module.mjs | 1 + module/data/fields/action/macroField.mjs | 7 + module/data/fields/actionField.mjs | 3 +- module/data/item/armor.mjs | 3 +- module/data/item/domainCard.mjs | 16 +- module/data/item/weapon.mjs | 34 ++- module/data/levelTier.mjs | 22 +- module/data/levelup.mjs | 15 + module/data/settings/Appearance.mjs | 16 + module/data/settings/Automation.mjs | 30 ++ module/dice/damageRoll.mjs | 7 +- module/dice/dhRoll.mjs | 27 +- module/documents/activeEffect.mjs | 2 +- module/documents/actor.mjs | 53 ++-- module/documents/chatMessage.mjs | 13 +- module/documents/token.mjs | 4 + module/documents/tooltipManager.mjs | 8 +- module/helpers/utils.mjs | 10 +- module/systemRegistration/handlebars.mjs | 3 +- ...ersary_Acid_Burrower_89yAh30vaNQOALlz.json | 4 +- ...ary_Adult_Flickerfly_G7jiltRjgvVhZewm.json | 5 +- ..._Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json | 5 +- ...ary_Arch_Necromancer_WPEOIGfclNJxWb87.json | 5 +- ...versary_Archer_Guard_JRhrrEg5UroURiAD.json | 5 +- ...sary_Archer_Squadron_0ts6CGd93lLqGZI5.json | 5 +- ...ry_Assassin_Poisoner_h5RuhzGL17dW5FBT.json | 5 +- ...adversary_Battle_Box_dgH3fW9FTYLaIDvS.json | 5 +- .../adversary_Bear_71qKDLKO3CsrNkdy.json | 5 +- ...versary_Bladed_Guard_B4LZcGuBAHzyVdzy.json | 5 +- ...ersary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json | 5 +- .../adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json | 5 +- ...dversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json | 5 +- .../adversary_Conscript_99TqczuQipBmaB8i.json | 5 +- .../adversary_Construct_uOP5oT9QzXPlnf3p.json | 5 +- .../adversary_Courtesan_ZxWaWPdzFIUPNC62.json | 5 +- .../adversary_Courtier_CBBuEXAlLKFMJdjg.json | 5 +- ...adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json | 5 +- .../adversary_Cult_Fang_tyBOpLfigAhI9bU3.json | 5 +- ...ersary_Cult_Initiate_zx99sOGTXicP4SSD.json | 5 +- ...ry_Deeproot_Defender_9x2xY9zwc3xzbXo5.json | 5 +- ...ary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json | 5 +- ...ary_Demon_of_Despair_kE4dfhqmIQpNd44e.json | 5 +- ...sary_Demon_of_Hubris_2VN3BftageoTTIzu.json | 5 +- ...ry_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json | 5 +- ...rsary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json | 5 +- ...y_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json | 5 +- .../adversary_Dire_Bat_tBWHW00epmMnkawe.json | 5 +- .../adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json | 5 +- .../adversary_Dryad_wR7cFKrHvRzbzhBT.json | 5 +- ...ersary_Electric_Eels_TLzY1nDw0Bu9Ud40.json | 5 +- ...sary_Elemental_Spark_P7h54ZePFPHpYwvB.json | 5 +- ...ersary_Elite_Soldier_bfhVWMBUh61b9J6n.json | 4 +- ...ry_Failed_Experiment_ChwwVqowFw8hJQwT.json | 5 +- ...y_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json | 5 +- ...sary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json | 5 +- ...ry_Giant_Beastmaster_8VZIgU12cB3cvlyH.json | 5 +- ...ersary_Giant_Brawler_YnObCleGjPT7yqEc.json | 5 +- ...dversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json | 4 +- ...ary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json | 5 +- .../adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json | 5 +- ...ersary_Giant_Recruit_5s8wSvpyC5rxY5aD.json | 5 +- ...rsary_Giant_Scorpion_fmfntuJ8mHRCAktP.json | 5 +- ...dversary_Glass_Snake_8KWVLWXFhlY2kYx0.json | 5 +- .../adversary_Gorgon_8mJYMpbLTb8qIOrr.json | 5 +- ...ater_Earth_Elemental_dsfB3YhoL5SudvS2.json | 5 +- ...ater_Water_Elemental_xIICT6tEdnA7dKDV.json | 5 +- ...adversary_Green_Ooze_SHXedd9zZPVfUgUa.json | 5 +- ...sary_Hallowed_Archer_kabueAo6BALApWqp.json | 5 +- ...ary_Hallowed_Soldier_VENwg7xEFcYObjmT.json | 5 +- .../adversary_Harrier_uRtghKE9mHlII4rs.json | 5 +- ...adversary_Head_Guard_mK3A5FTx6k8iPU3F.json | 5 +- ...versary_Head_Vampire_i2UNbRvgyoSs07M6.json | 5 +- ...dversary_High_Seraph_r1mbfSSwKWdcFdAU.json | 5 +- ...sary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json | 5 +- .../adversary_Hydra_MI126iMOOobQ1Obn.json | 5 +- ..._Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json | 5 +- ...y_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json | 5 +- ...ed_Knife_Kneebreaker_CBKixLH3yhivZZuL.json | 5 +- ..._Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json | 5 +- ...ged_Knife_Lieutenant_aTljstqteGoLpCBq.json | 5 +- ..._Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json | 5 +- ..._Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json | 5 +- ..._Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json | 5 +- ..._Knight_of_the_Realm_7ai2opemrclQe3VF.json | 5 +- .../adversary_Kraken_4nqv3ZwJGjnmic8j.json | 5 +- ...versary_Masked_Thief_niBpVU7yeo5ccskE.json | 5 +- ...sary_Master_Assassin_dNta0cUzr96xcFhf.json | 5 +- .../adversary_Merchant_Al3w2CgjfdT3p9ma.json | 5 +- ...rsary_Merchant_Baron_Vy02IhGhkJLuezu4.json | 5 +- ...inor_Chaos_Elemental_sRn4bqerfARvhgSV.json | 5 +- ...dversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json | 5 +- ...Minor_Fire_Elemental_DscWkNVoHak6P4hh.json | 5 +- ...versary_Minor_Treant_G62k4oSkhkoXEs2D.json | 5 +- ...ary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json | 5 +- .../adversary_Monarch_yx0vK2yfNVZKWUUi.json | 5 +- ...ersary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json | 5 +- ...adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json | 40 ++- ...rsary_Oracle_of_Doom_befIqd5IYKg6eUz2.json | 5 +- ...r_Realms_Abomination_A0SeeDzwjvqOsyof.json | 5 +- ...ter_Realms_Corrupter_ms6nuOl3NFkhPj1k.json | 5 +- ..._Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json | 5 +- ...atchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json | 5 +- ...ary_Perfected_Zombie_CP6iRfHdyFWniTHY.json | 5 +- ...dversary_Petty_Noble_wycLpvebWdUqRhpP.json | 5 +- ...rsary_Pirate_Captain_OROJbjsqagVh7ECV.json | 5 +- ...rsary_Pirate_Raiders_5YgEajn0wa4i85kC.json | 5 +- .../adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json | 5 +- ...ersary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json | 5 +- ...ersary_Royal_Advisor_EtLJiTsilPPZvLUX.json | 5 +- ...ersary_Secret_Keeper_sLAccjvCWfeedbpI.json | 5 +- .../adversary_Sellsword_bgreCaQ6ap2DVpCr.json | 5 +- ...ary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json | 5 +- .../adversary_Shark_YmVAkdNsyuXWTtYp.json | 5 +- .../adversary_Siren_BK4jwyXSRx7IOQiO.json | 5 +- ...sary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json | 5 +- ...sary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json | 5 +- ...sary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json | 5 +- ...ary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json | 5 +- ...sary_Spectral_Archer_5tCkhnBByUIN5UdG.json | 5 +- ...ary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json | 5 +- ...ry_Spectral_Guardian_UFVGl1osOsJTneLf.json | 5 +- ...adversary_Spellblade_ldbWEL7uZs84vyrR.json | 5 +- .../adversary_Spy_8zlynOhnVA59KpKT.json | 5 +- ...dversary_Stag_Knight_KGVwnLq85ywP9xvB.json | 5 +- ...dversary_Stonewraith_3aAS2Qm3R6cgaYfE.json | 5 +- ...ersary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json | 5 +- ...rsary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json | 5 +- ...sary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json | 5 +- ...ersary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json | 5 +- ...rsary_Treant_Sapling_o63nS0k3wHu6EgKP.json | 5 +- .../adversary_Vampire_WWyUp6Mxl1S3KYUG.json | 5 +- ...ault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json | 5 +- ...lt_Guardian_Sentinel_FVgYb28fhxlVcGwA.json | 5 +- ...ault_Guardian_Turret_c5hGdvY5UnSjlHws.json | 5 +- ...adversary_War_Wizard_noDdT0tsN6FXSmC8.json | 5 +- ...versary_Weaponmaster_ZNbQ2jg35LG4t9eH.json | 5 +- ...dversary_Young_Dryad_8yUj2Mzvnifhxegm.json | 5 +- ...ary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json | 5 +- ...ersary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json | 5 +- ...dversary_Zombie_Pack_Nf0v43rtflV56V2T.json | 5 +- ...rnal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json | 2 +- .../character-creation/tab-navigation.less | 53 +--- .../dialog/downtime/downtime-container.less | 6 + styles/less/global/dice.less | 22 +- styles/less/global/inventory-item.less | 41 +++ .../character-settings/sheet.less | 13 + .../less/sheets/actors/adversary/sidebar.less | 34 ++- .../less/sheets/actors/character/sidebar.less | 35 ++- .../less/sheets/actors/companion/header.less | 50 ++- .../sheets/actors/environment/header.less | 3 +- system.json | 7 +- templates/actionTypes/healing.hbs | 41 --- templates/actionTypes/macro.hbs | 5 + templates/actionTypes/uuid.hbs | 9 - .../{tabs => }/equipment.hbs | 0 templates/characterCreation/footer.hbs | 2 +- templates/characterCreation/setup.hbs | 7 + .../characterCreation/{tabs => }/story.hbs | 0 templates/characterCreation/tabs.hbs | 2 +- .../{setupTabs => tabs}/ancestry.hbs | 8 +- .../{setupTabs => tabs}/class.hbs | 6 +- .../{setupTabs => tabs}/community.hbs | 6 +- .../{setupTabs => tabs}/domainCards.hbs | 6 +- .../{setupTabs => tabs}/experience.hbs | 6 +- templates/characterCreation/tabs/setup.hbs | 13 - .../{setupTabs => tabs}/traits.hbs | 6 +- templates/dialogs/dice-roll/rollSelection.hbs | 4 +- templates/dialogs/downtime/activities.hbs | 2 +- templates/hud/tokenHUD.hbs | 20 +- templates/settings/appearance-settings.hbs | 16 +- .../settings/automation-settings/footer.hbs | 10 + .../general.hbs} | 22 +- .../settings/automation-settings/header.hbs | 3 + .../settings/automation-settings/rules.hbs | 17 ++ .../action-settings/effect.hbs | 3 +- .../companion-settings/details.hbs | 5 +- .../companion-settings/experiences.hbs | 10 +- templates/sheets/actors/adversary/sidebar.hbs | 22 +- templates/sheets/actors/character/sidebar.hbs | 11 +- templates/sheets/actors/companion/details.hbs | 2 +- templates/sheets/actors/companion/header.hbs | 23 +- .../global/partials/inventory-item-V2.hbs | 57 ++-- templates/ui/chat/foundryRoll.hbs | 2 +- templates/ui/chat/parts/roll-part.hbs | 2 +- .../ui/combatTracker/combatTrackerHeader.hbs | 12 - 208 files changed, 1450 insertions(+), 895 deletions(-) rename coc.md => COC.md (100%) rename contributing.md => CONTRIBUTING.md (100%) create mode 100644 module/data/fields/action/macroField.mjs delete mode 100644 templates/actionTypes/healing.hbs create mode 100644 templates/actionTypes/macro.hbs delete mode 100644 templates/actionTypes/uuid.hbs rename templates/characterCreation/{tabs => }/equipment.hbs (100%) create mode 100644 templates/characterCreation/setup.hbs rename templates/characterCreation/{tabs => }/story.hbs (100%) rename templates/characterCreation/{setupTabs => tabs}/ancestry.hbs (90%) rename templates/characterCreation/{setupTabs => tabs}/class.hbs (87%) rename templates/characterCreation/{setupTabs => tabs}/community.hbs (79%) rename templates/characterCreation/{setupTabs => tabs}/domainCards.hbs (81%) rename templates/characterCreation/{setupTabs => tabs}/experience.hbs (86%) delete mode 100644 templates/characterCreation/tabs/setup.hbs rename templates/characterCreation/{setupTabs => tabs}/traits.hbs (90%) create mode 100644 templates/settings/automation-settings/footer.hbs rename templates/settings/{automation-settings.hbs => automation-settings/general.hbs} (71%) create mode 100644 templates/settings/automation-settings/header.hbs create mode 100644 templates/settings/automation-settings/rules.hbs diff --git a/coc.md b/COC.md similarity index 100% rename from coc.md rename to COC.md diff --git a/contributing.md b/CONTRIBUTING.md similarity index 100% rename from contributing.md rename to CONTRIBUTING.md diff --git a/lang/en.json b/lang/en.json index a66cbbc3..b1be93cd 100755 --- a/lang/en.json +++ b/lang/en.json @@ -189,7 +189,11 @@ "title": "Multiclass Subclass", "text": "Do you want to add this subclass as your multiclass subclass?" }, - "cannotRemoveCoreExperience": "You are using Levelup Auto. You cannot remove an experience given to you by the rule progression." + "cannotRemoveCoreExperience": "You are using Levelup Auto. You cannot remove an experience given to you by the rule progression.", + "companionLevelup": { + "confirmTitle": "Companion Levelup", + "confirmText": "Would you like to level up your companion {name} by {levelChange} levels at this time? (You can do it manually later)" + } }, "Companion": { "FIELDS": { @@ -233,13 +237,14 @@ }, "APPLICATIONS": { "CharacterCreation": { - "setupTabs": { + "tabs": { "ancestry": "Ancestry", "community": "Community", "class": "Class", "experience": "Experience", "traits": "Traits", - "domainCards": "Domain Cards" + "domainCards": "Domain Cards", + "equipment": "Equipment" }, "ancestryNamePlaceholder": "Your ancestry's name", "buttonTitle": "Character Setup", @@ -816,6 +821,10 @@ "name": "Dead", "description": "The character is dead" }, + "defeated": { + "name": "Defeated", + "description": "This adversary is defeated." + }, "hidden": { "name": "Hidden", "description": "While Hidden, attacks cannot be made directly targeting them nd any rolls against them are at disadvantage.\nWhen a Hidden creature moves or attacks, they are no longer Hidden. However, if a creature is Hidden when they begin making an attack, the roll has advantage; the Hidden condition isn’t cleared until after the attack is resolved." @@ -1875,7 +1884,8 @@ "tier3": "Tier 3", "tier4": "tier 4", "domains": "Domains", - "downtime": "Downtime" + "downtime": "Downtime", + "rules": "Rules" }, "Tiers": { "singular": "Tier", @@ -1944,6 +1954,7 @@ "itemResource": "Item Resource", "label": "Label", "level": "Level", + "levelShort": "Lv", "levelUp": "Level Up", "loadout": "Loadout", "max": "Max", @@ -2091,7 +2102,12 @@ "FIELDS": { "displayFear": { "label": "Fear Display" }, "dualityColorScheme": { "label": "Chat Style" }, - "showGenericStatusEffects": { "label": "Show Foundry Status Effects" } + "showGenericStatusEffects": { "label": "Show Foundry Status Effects" }, + "expandedTitle": "Auto-expand Descriptions", + "extendCharacterDescriptions": { "label": "Characters" }, + "extendAdversaryDescriptions": { "label": "Adversaries" }, + "extendEnvironmentDescriptions": { "label": "Environments" }, + "extendItemDescriptions": { "label": "Items" } }, "fearDisplay": { "token": "Tokens", @@ -2109,6 +2125,13 @@ "label": "Damage Reduction Rules Default", "hint": "Wether using armor and reductions has rules on by default" }, + "defeated": { + "enabled": { "label": "Enabled" }, + "overlay": { "label": "Overlay Effect" }, + "characterDefault": { "label": "Character Default Defeated Status" }, + "adversaryDefault": { "label": "Adversary Default Defeated Status" }, + "companionDefault": { "label": "Companion Default Defeated Status" } + }, "hopeFear": { "label": "Hope & Fear", "gm": { "label": "GM" }, @@ -2140,6 +2163,9 @@ "label": "Players Can Manually Edit Character Settings", "hint": "Players are allowed to access the manual Character Settings and change their statistics beyond the rules." } + }, + "defeated": { + "title": "Defeated Handling" } }, "Homebrew": { @@ -2379,7 +2405,8 @@ "rulesOn": "Rules On", "rulesOff": "Rules Off", "remainingUses": "Uses refresh on {type}", - "rightClickExtand": "Right-Click to extand" + "rightClickExtand": "Right-Click to extand", + "companionPartnerLevelBlock": "The companion needs an assigned partner to level up." } } } diff --git a/module/applications/characterCreation/characterCreation.mjs b/module/applications/characterCreation/characterCreation.mjs index 1cadd6d4..693f6c5a 100644 --- a/module/applications/characterCreation/characterCreation.mjs +++ b/module/applications/characterCreation/characterCreation.mjs @@ -13,7 +13,10 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl this.setup = { traits: this.character.system.traits, - ancestryName: '', + ancestryName: { + primary: '', + secondary: '' + }, mixedAncestry: false, primaryAncestry: this.character.system.ancestry ?? {}, secondaryAncestry: {}, @@ -83,131 +86,70 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl static PARTS = { tabs: { template: 'systems/daggerheart/templates/characterCreation/tabs.hbs' }, - setup: { template: 'systems/daggerheart/templates/characterCreation/tabs/setup.hbs' }, - ancestry: { template: 'systems/daggerheart/templates/characterCreation/setupTabs/ancestry.hbs' }, - community: { template: 'systems/daggerheart/templates/characterCreation/setupTabs/community.hbs' }, - class: { template: 'systems/daggerheart/templates/characterCreation/setupTabs/class.hbs' }, - traits: { template: 'systems/daggerheart/templates/characterCreation/setupTabs/traits.hbs' }, - experience: { template: 'systems/daggerheart/templates/characterCreation/setupTabs/experience.hbs' }, - domainCards: { template: 'systems/daggerheart/templates/characterCreation/setupTabs/domainCards.hbs' }, - equipment: { template: 'systems/daggerheart/templates/characterCreation/tabs/equipment.hbs' }, - // story: { template: 'systems/daggerheart/templates/characterCreation/tabs/story.hbs' }, + ancestry: { template: 'systems/daggerheart/templates/characterCreation/tabs/ancestry.hbs' }, + community: { template: 'systems/daggerheart/templates/characterCreation/tabs/community.hbs' }, + class: { template: 'systems/daggerheart/templates/characterCreation/tabs/class.hbs' }, + traits: { template: 'systems/daggerheart/templates/characterCreation/tabs/traits.hbs' }, + experience: { template: 'systems/daggerheart/templates/characterCreation/tabs/experience.hbs' }, + domainCards: { template: 'systems/daggerheart/templates/characterCreation/tabs/domainCards.hbs' }, + equipment: { template: 'systems/daggerheart/templates/characterCreation/equipment.hbs' }, + // story: { template: 'systems/daggerheart/templates/characterCreation/story.hbs' }, footer: { template: 'systems/daggerheart/templates/characterCreation/footer.hbs' } }; static TABS = { - setup: { - active: true, - cssClass: '', - group: 'primary', - id: 'setup', - label: 'DAGGERHEART.GENERAL.Tabs.setup' - }, - equipment: { - active: false, - cssClass: '', - group: 'primary', - id: 'equipment', - label: 'DAGGERHEART.GENERAL.Tabs.equipment', - optional: true - } - // story: { - // active: false, - // cssClass: '', - // group: 'primary', - // id: 'story', - // label: 'DAGGERHEART.GENERAL.Tabs.story', - // optional: true - // } - }; - - static SETUPTABS = { ancestry: { active: true, cssClass: '', group: 'setup', id: 'ancestry', - label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.setupTabs.ancestry' + label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.tabs.ancestry' }, community: { active: false, cssClass: '', group: 'setup', id: 'community', - label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.setupTabs.community' + label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.tabs.community' }, class: { active: false, cssClass: '', group: 'setup', id: 'class', - label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.setupTabs.class' + label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.tabs.class' }, traits: { active: false, cssClass: '', group: 'setup', id: 'traits', - label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.setupTabs.traits' + label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.tabs.traits' }, experience: { active: false, cssClass: '', group: 'setup', id: 'experience', - label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.setupTabs.experience' + label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.tabs.experience' }, domainCards: { active: false, cssClass: '', group: 'setup', id: 'domainCards', - label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.setupTabs.domainCards' + label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.tabs.domainCards' + }, + equipment: { + active: false, + cssClass: '', + group: 'setup', + id: 'equipment', + label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.tabs.equipment' } }; _getTabs(tabs) { - for (const v of Object.values(tabs)) { - v.active = this.tabGroups[v.group] ? this.tabGroups[v.group] === v.id : v.active; - v.cssClass = v.active ? 'active' : ''; - - switch (v.id) { - case 'setup': - const ancestryFinished = this.setup.primaryAncestry.uuid; - const communityFinished = this.setup.community.uuid; - const classFinished = this.setup.class.uuid && this.setup.subclass.uuid; - const traitsFinished = Object.values(this.setup.traits).every(x => x.value !== null); - const experiencesFinished = Object.values(this.setup.experiences).every(x => x.name); - const domainCardsFinished = Object.values(this.setup.domainCards).every(x => x.uuid); - v.finished = - ancestryFinished && - communityFinished && - classFinished && - traitsFinished && - experiencesFinished && - domainCardsFinished; - break; - case 'equipment': - const armorFinished = this.equipment.armor?.uuid; - const primaryFinished = this.equipment.primaryWeapon?.uuid; - const secondaryFinished = - this.equipment.secondaryWeapon?.uuid || - (primaryFinished && this.equipment.primaryWeapon.system.burden == burden.twoHanded.value); - const choiceAFinished = this.equipment.inventory.choiceA?.uuid; - const choiceBFinished = this.equipment.inventory.choiceB?.uuid; - - v.finished = - armorFinished && primaryFinished && secondaryFinished && choiceAFinished && choiceBFinished; - } - } - - tabs.equipment.cssClass = tabs.setup.finished ? tabs.equipment.cssClass : 'disabled'; - // tabs.story.cssClass = tabs.setup.finished ? tabs.story.cssClass : 'disabled'; - - return tabs; - } - - _getSetupTabs(tabs) { for (const v of Object.values(tabs)) { v.active = this.tabGroups[v.group] ? this.tabGroups[v.group] === v.id @@ -232,37 +174,15 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl case 'domainCards': v.disabled = this.setup.visibility < 6; break; + case 'equipment': + v.disabled = this.setup.visibility < 7; + break; } } return tabs; } - changeTab(tab, group, options) { - super.changeTab(tab, group, options); - - if (group === 'primary') { - for (var listTab of Object.keys(this.constructor.TABS)) { - const marker = options.navElement.querySelector(`a[data-action="tab"].${listTab} .finish-marker`); - if (listTab === tab) { - marker.classList.add('active'); - } else { - marker.classList.remove('active'); - } - } - - if (tab === 'equipment') { - this.tabGroups.setup = null; - this.element.querySelector('section[data-group="setup"].active')?.classList?.remove?.('active'); - } else { - this.tabGroups.setup = 'domainCards'; - this.element - .querySelector('section[data-group="setup"][data-tab="domainCards"]') - ?.classList?.add?.('active'); - } - } - } - _attachPartListeners(partId, htmlElement, options) { super._attachPartListeners(partId, htmlElement, options); @@ -274,14 +194,71 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl }); } - async _preFirstRender(_context, _options) { - this.tabGroups.primary = 'setup'; - this.tabGroups.setup = 'ancestry'; - } - async _prepareContext(_options) { + this.tabGroups.setup = this.tabGroups.setup ?? 'ancestry'; const context = await super._prepareContext(_options); + context.tabs = this._getTabs(this.constructor.TABS); + const availableTraitModifiers = game.settings + .get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew) + .traitArray.map(trait => ({ key: trait, name: trait })); + for (let trait of Object.values(this.setup.traits).filter(x => x.value !== null)) { + const index = availableTraitModifiers.findIndex(x => x.key === trait.value); + if (index !== -1) { + availableTraitModifiers.splice(index, 1); + } + } + + context.suggestedTraits = this.setup.class.system + ? Object.keys(this.setup.class.system.characterGuide.suggestedTraits).map(traitKey => { + const trait = this.setup.class.system.characterGuide.suggestedTraits[traitKey]; + return `${game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${traitKey}.short`)} ${trait > 0 ? `+${trait}` : trait}`; + }) + : []; + context.traits = { + values: Object.keys(this.setup.traits).map(traitKey => { + const trait = this.setup.traits[traitKey]; + const options = [...availableTraitModifiers]; + if (trait.value !== null && !options.some(x => x.key === trait.value)) + options.push({ key: trait.value, name: trait.value }); + + return { + ...trait, + key: traitKey, + name: game.i18n.localize(abilities[traitKey].label), + options: options + }; + }) + }; + context.traits.nrTotal = Object.keys(context.traits.values).length; + context.traits.nrSelected = this.getNrSelectedTrait(); + + context.experience = { + values: this.setup.experiences, + nrTotal: Object.keys(this.setup.experiences).length, + nrSelected: Object.values(this.setup.experiences).reduce((acc, exp) => acc + (exp.name ? 1 : 0), 0) + }; + + context.mixedAncestry = Number(this.setup.mixedAncestry); + + const { primary, secondary, overwrite } = this.setup.ancestryName; + context.ancestryName = overwrite ?? (primary && secondary ? `${primary}/${secondary}` : primary); + context.primaryAncestry = { ...this.setup.primaryAncestry, compendium: 'ancestries' }; + context.secondaryAncestry = { ...this.setup.secondaryAncestry, compendium: 'ancestries' }; + context.community = { ...this.setup.community, compendium: 'communities' }; + context.class = { ...this.setup.class, compendium: 'classes' }; + context.subclass = { ...this.setup.subclass, compendium: 'subclasses' }; + + const allDomainData = CONFIG.DH.DOMAIN.allDomains(); + context.classDomains = context.class.uuid + ? context.class.system.domains.map(key => game.i18n.localize(allDomainData[key].label)) + : []; + context.domainCards = Object.keys(this.setup.domainCards).reduce((acc, x) => { + acc[x] = { ...this.setup.domainCards[x], compendium: 'domains' }; + return acc; + }, {}); + + context.visibility = this.setup.visibility; return context; } @@ -289,7 +266,7 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl async _preparePartContext(partId, context) { switch (partId) { case 'footer': - context.isLastTab = this.tabGroups.setup === 'domainCards' || this.tabGroups.primary !== 'setup'; + context.isLastTab = this.tabGroups.setup === 'equipment'; switch (this.tabGroups.setup) { case null: case 'ancestry': @@ -307,69 +284,11 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl case 'experience': context.nextDisabled = this.setup.visibility === 5; break; + case 'domainCards': + context.nextDisabled = this.setup.visibility === 6; + break; } - break; - case 'setup': - context.setupTabs = this._getSetupTabs(this.constructor.SETUPTABS); - const availableTraitModifiers = game.settings - .get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew) - .traitArray.map(trait => ({ key: trait, name: trait })); - for (let trait of Object.values(this.setup.traits).filter(x => x.value !== null)) { - const index = availableTraitModifiers.findIndex(x => x.key === trait.value); - if (index !== -1) { - availableTraitModifiers.splice(index, 1); - } - } - - context.suggestedTraits = this.setup.class.system - ? Object.keys(this.setup.class.system.characterGuide.suggestedTraits).map(traitKey => { - const trait = this.setup.class.system.characterGuide.suggestedTraits[traitKey]; - return `${game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${traitKey}.short`)} ${trait > 0 ? `+${trait}` : trait}`; - }) - : []; - context.traits = { - values: Object.keys(this.setup.traits).map(traitKey => { - const trait = this.setup.traits[traitKey]; - const options = [...availableTraitModifiers]; - if (trait.value !== null && !options.some(x => x.key === trait.value)) - options.push({ key: trait.value, name: trait.value }); - - return { - ...trait, - key: traitKey, - name: game.i18n.localize(abilities[traitKey].label), - options: options - }; - }) - }; - context.traits.nrTotal = Object.keys(context.traits.values).length; - context.traits.nrSelected = this.getNrSelectedTrait(); - - context.experience = { - values: this.setup.experiences, - nrTotal: Object.keys(this.setup.experiences).length, - nrSelected: Object.values(this.setup.experiences).reduce((acc, exp) => acc + (exp.name ? 1 : 0), 0) - }; - - context.mixedAncestry = Number(this.setup.mixedAncestry); - context.ancestryName = this.setup.ancestryName; - context.primaryAncestry = { ...this.setup.primaryAncestry, compendium: 'ancestries' }; - context.secondaryAncestry = { ...this.setup.secondaryAncestry, compendium: 'ancestries' }; - context.community = { ...this.setup.community, compendium: 'communities' }; - context.class = { ...this.setup.class, compendium: 'classes' }; - context.subclass = { ...this.setup.subclass, compendium: 'subclasses' }; - - const allDomainData = CONFIG.DH.DOMAIN.allDomains(); - context.classDomains = context.class.uuid - ? context.class.system.domains.map(key => game.i18n.localize(allDomainData[key].label)) - : []; - context.domainCards = Object.keys(this.setup.domainCards).reduce((acc, x) => { - acc[x] = { ...this.setup.domainCards[x], compendium: 'domains' }; - return acc; - }, {}); - - context.visibility = this.setup.visibility; break; case 'equipment': const suggestions = await this.getEquipmentSuggestions( @@ -438,8 +357,10 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl getUpdateVisibility() { switch (this.setup.visibility) { + case 7: + return 7; case 6: - return 6; + return Object.values(this.setup.domainCards).every(x => x.uuid) ? 7 : 6; case 5: return Object.values(this.setup.experiences).every(x => x.name) ? 6 : 5; case 4: @@ -505,7 +426,7 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl const presets = { compendium: 'daggerheart', - folder: equipment.includes(type) ? "equipments" : type, + folder: equipment.includes(type) ? 'equipments' : type, render: { noFolder: true } @@ -565,6 +486,9 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl case 6: this.tabGroups.setup = 'domainCards'; break; + case 7: + this.tabGroups.setup = 'equipment'; + break; } this.render(); @@ -576,9 +500,10 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl ? this.setup.secondaryAncestry.system.secondaryFeature : this.setup.primaryAncestry.system.secondaryFeature; + const { primary, secondary, overwrite } = this.setup.ancestryName; const ancestry = { ...this.setup.primaryAncestry, - name: this.setup.ancestryName ?? this.setup.primaryAncestry.name, + name: overwrite ?? (primary && secondary ? `${primary}/${secondary}` : primary), system: { ...this.setup.primaryAncestry.system, features: [ @@ -650,13 +575,14 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl const data = foundry.applications.ux.TextEditor.implementation.getDragEventData(event); const item = await foundry.utils.fromUuid(data.uuid); if (item.type === 'ancestry' && event.target.closest('.primary-ancestry-card')) { - this.setup.ancestryName = item.name; + this.setup.ancestryName.primary = item.name; this.setup.primaryAncestry = { ...item, effects: Array.from(item.effects).map(x => x.toObject()), uuid: item.uuid }; } else if (item.type === 'ancestry' && event.target.closest('.secondary-ancestry-card')) { + this.setup.ancestryName.secondary = item.name; this.setup.secondaryAncestry = { ...item, effects: Array.from(item.effects).map(x => x.toObject()), diff --git a/module/applications/dialogs/downtime.mjs b/module/applications/dialogs/downtime.mjs index 10708d02..b0f51c4e 100644 --- a/module/applications/dialogs/downtime.mjs +++ b/module/applications/dialogs/downtime.mjs @@ -95,8 +95,9 @@ export default class DhpDowntime extends HandlebarsApplicationMixin(ApplicationV if (x.system.actions) { const recoverable = x.system.actions.reduce((acc, action) => { if ( - (action.uses.recovery && (action.uses.recovery === 'longRest') === !this.shortrest) || - action.uses.recovery === 'shortRest' + action.uses.recovery && + ((action.uses.recovery === 'longRest' && !this.shortrest) || + action.uses.recovery === 'shortRest') ) { acc.push({ title: x.name, diff --git a/module/applications/levelup/characterLevelup.mjs b/module/applications/levelup/characterLevelup.mjs index 0ae136c4..623f0308 100644 --- a/module/applications/levelup/characterLevelup.mjs +++ b/module/applications/levelup/characterLevelup.mjs @@ -49,12 +49,7 @@ export default class DhCharacterLevelUp extends LevelUpBase { const experienceIncreases = Object.values(advancementChoices.experience ?? {}); const experienceIncreaseValues = experienceIncreases .filter(exp => exp.data.length > 0) - .flatMap(exp => - exp.data.map(data => { - const experience = Object.keys(this.actor.system.experiences)[data]; - return this.actor.system.experiences[experience].name; - }) - ); + .flatMap(exp => exp.data); context.experienceIncreases = { values: experienceIncreaseValues, active: experienceIncreases.length > 0, diff --git a/module/applications/levelup/companionLevelup.mjs b/module/applications/levelup/companionLevelup.mjs index c94d7d2b..4b8f9b47 100644 --- a/module/applications/levelup/companionLevelup.mjs +++ b/module/applications/levelup/companionLevelup.mjs @@ -37,12 +37,7 @@ export default class DhCompanionLevelUp extends BaseLevelUp { const experienceIncreases = Object.values(advancementChoices.experience ?? {}); const experienceIncreaseValues = experienceIncreases .filter(exp => exp.data.length > 0) - .flatMap(exp => - exp.data.map(data => { - const experience = Object.keys(this.actor.system.experiences)[data]; - return this.actor.system.experiences[experience].name; - }) - ); + .flatMap(exp => exp.data); context.experienceIncreases = { values: experienceIncreaseValues, active: experienceIncreases.length > 0, @@ -72,6 +67,28 @@ export default class DhCompanionLevelUp extends BaseLevelUp { const levelKeys = Object.keys(this.levelup.levels); const actorDamageDice = this.actor.system.attack.damage.parts[0].value.dice; const actorRange = this.actor.system.attack.range; + + let achievementExperiences = []; + for (var levelKey of levelKeys) { + const level = this.levelup.levels[levelKey]; + if (Number(levelKey) < this.levelup.startLevel) continue; + + achievementExperiences = level.achievements.experiences + ? Object.values(level.achievements.experiences).reduce((acc, experience) => { + if (experience.name) acc.push(experience); + return acc; + }, []) + : []; + } + context.achievements = { + experiences: { + values: achievementExperiences, + shown: achievementExperiences.length > 0 + } + }; + + context.achievements = context.achievements.experiences.shown ? context.achievements : undefined; + const advancement = {}; for (var levelKey of levelKeys) { const level = this.levelup.levels[levelKey]; diff --git a/module/applications/settings/automationSettings.mjs b/module/applications/settings/automationSettings.mjs index 489bae02..0157e016 100644 --- a/module/applications/settings/automationSettings.mjs +++ b/module/applications/settings/automationSettings.mjs @@ -31,8 +31,19 @@ export default class DhAutomationSettings extends HandlebarsApplicationMixin(App }; static PARTS = { + tabs: { template: 'systems/daggerheart/templates/sheets/global/tabs/tab-navigation.hbs' }, + header: { template: 'systems/daggerheart/templates/settings/automation-settings/header.hbs' }, + general: { template: 'systems/daggerheart/templates/settings/automation-settings/general.hbs' }, + rules: { template: 'systems/daggerheart/templates/settings/automation-settings/rules.hbs' }, + footer: { template: 'systems/daggerheart/templates/settings/automation-settings/footer.hbs' } + }; + + /** @inheritdoc */ + static TABS = { main: { - template: 'systems/daggerheart/templates/settings/automation-settings.hbs' + tabs: [{ id: 'general' }, { id: 'rules' }], + initial: 'general', + labelPrefix: 'DAGGERHEART.GENERAL.Tabs' } }; diff --git a/module/applications/sheets-configs/companion-settings.mjs b/module/applications/sheets-configs/companion-settings.mjs index 6791c4c7..8aa21479 100644 --- a/module/applications/sheets-configs/companion-settings.mjs +++ b/module/applications/sheets-configs/companion-settings.mjs @@ -1,5 +1,4 @@ import { GMUpdateEvent, socketEvent } from '../../systemRegistration/socket.mjs'; -import DhCompanionlevelUp from '../levelup/companionLevelup.mjs'; import DHBaseActorSettings from '../sheets/api/actor-setting.mjs'; /**@typedef {import('@client/applications/_types.mjs').ApplicationClickAction} ApplicationClickAction */ @@ -11,8 +10,7 @@ export default class DHCompanionSettings extends DHBaseActorSettings { position: { width: 455, height: 'auto' }, actions: { addExperience: DHCompanionSettings.#addExperience, - removeExperience: DHCompanionSettings.#removeExperience, - levelUp: DHCompanionSettings.#levelUp + removeExperience: DHCompanionSettings.#removeExperience } }; @@ -121,12 +119,4 @@ export default class DHCompanionSettings extends DHBaseActorSettings { await this.actor.update({ [`system.experiences.-=${target.dataset.experience}`]: null }); } - - /** - * Opens the companion level-up dialog for the associated actor. - * @type {ApplicationClickAction} - */ - static async #levelUp() { - new DhCompanionlevelUp(this.actor).render({ force: true }); - } } diff --git a/module/applications/sheets/actors/character.mjs b/module/applications/sheets/actors/character.mjs index ae597270..481c745e 100644 --- a/module/applications/sheets/actors/character.mjs +++ b/module/applications/sheets/actors/character.mjs @@ -638,15 +638,21 @@ export default class CharacterSheet extends DHBaseActorSheet { ability: abilityLabel }) }); - - setTimeout(() => { - this.consumeResource(result?.costs); - }, 50); + + this.consumeResource(result?.costs); } + // Remove when Action Refactor part #2 done async consumeResource(costs) { if (!costs?.length) return; - const usefulResources = foundry.utils.deepClone(this.actor.system.resources); + const usefulResources = { + ...foundry.utils.deepClone(this.actor.system.resources), + fear: { + value: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), + max: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxFear, + reversed: false + } + }; const resources = game.system.api.fields.ActionFields.CostField.getRealCosts(costs).map(c => { const resource = usefulResources[c.key]; return { diff --git a/module/applications/sheets/actors/companion.mjs b/module/applications/sheets/actors/companion.mjs index 87cfda27..1105131d 100644 --- a/module/applications/sheets/actors/companion.mjs +++ b/module/applications/sheets/actors/companion.mjs @@ -1,3 +1,4 @@ +import DhCompanionLevelUp from '../../levelup/companionLevelup.mjs'; import DHBaseActorSheet from '../api/base-actor.mjs'; /**@typedef {import('@client/applications/_types.mjs').ApplicationClickAction} ApplicationClickAction */ @@ -5,8 +6,10 @@ import DHBaseActorSheet from '../api/base-actor.mjs'; export default class DhCompanionSheet extends DHBaseActorSheet { static DEFAULT_OPTIONS = { classes: ['actor', 'companion'], - position: { width: 300 }, - actions: {} + position: { width: 340 }, + actions: { + levelManagement: DhCompanionSheet.#levelManagement + } }; static PARTS = { @@ -25,4 +28,25 @@ export default class DhCompanionSheet extends DHBaseActorSheet { labelPrefix: 'DAGGERHEART.GENERAL.Tabs' } }; + + /** @inheritDoc */ + async _onRender(context, options) { + await super._onRender(context, options); + + this.element + .querySelector('.level-value') + ?.addEventListener('change', event => this.document.updateLevel(Number(event.currentTarget.value))); + } + + /* -------------------------------------------- */ + /* Application Clicks Actions */ + /* -------------------------------------------- */ + + /** + * Opens the companions level management window. + * @type {ApplicationClickAction} + */ + static #levelManagement() { + new DhCompanionLevelUp(this.document).render({ force: true }); + } } diff --git a/module/applications/sheets/api/application-mixin.mjs b/module/applications/sheets/api/application-mixin.mjs index 18a5ac91..83dc1581 100644 --- a/module/applications/sheets/api/application-mixin.mjs +++ b/module/applications/sheets/api/application-mixin.mjs @@ -2,6 +2,23 @@ const { HandlebarsApplicationMixin } = foundry.applications.api; import { getDocFromElement, getDocFromElementSync, tagifyElement } from '../../../helpers/utils.mjs'; import { ItemBrowser } from '../../ui/itemBrowser.mjs'; +const typeSettingsMap = { + character: 'extendCharacterDescriptions', + adversary: 'extendAdversaryDescriptions', + environment: 'extendEnvironmentDescriptions', + ancestry: 'extendItemDescriptions', + community: 'extendItemDescriptions', + class: 'extendItemDescriptions', + subclass: 'extendItemDescriptions', + feature: 'extendItemDescriptions', + domainCard: 'extendItemDescriptions', + loot: 'extendItemDescriptions', + consumable: 'extendItemDescriptions', + weapon: 'extendItemDescriptions', + armor: 'extendItemDescriptions', + beastform: 'extendItemDescriptions' +}; + /** * @typedef {import('@client/applications/_types.mjs').ApplicationClickAction} ApplicationClickAction */ @@ -137,6 +154,8 @@ export default function DHApplicationMixin(Base) { docs.filter(doc => doc).forEach(doc => (doc.apps[this.id] = this)); if (!!this.options.contextMenus.length) this._createContextMenus(); + + this.#autoExtendDescriptions(context); } /** @inheritDoc */ @@ -149,6 +168,7 @@ export default function DHApplicationMixin(Base) { async _onRender(context, options) { await super._onRender(context, options); this._createTagifyElements(this.options.tagifyConfigs); + await this.#prepareInventoryDescription(context); } /* -------------------------------------------- */ @@ -162,13 +182,7 @@ export default function DHApplicationMixin(Base) { const { actionId, itemUuid } = el.parentElement.dataset; const selector = `${actionId ? `[data-action-id="${actionId}"]` : `[data-item-uuid="${itemUuid}"]`} .extensible`; const newExtensible = newElement.querySelector(selector); - - if (!newExtensible) continue; - newExtensible.classList.add('extended'); - const descriptionElement = newExtensible.querySelector('.invetory-description'); - if (descriptionElement) { - this.#prepareInventoryDescription(newExtensible, descriptionElement); - } + newExtensible?.classList.add('extended'); } } @@ -395,6 +409,7 @@ export default function DHApplicationMixin(Base) { context.source = this.document; context.fields = this.document.schema.fields; context.systemFields = this.document.system.schema.fields; + context.settings = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance); return context; } @@ -404,32 +419,69 @@ export default function DHApplicationMixin(Base) { /** * Prepares and enriches an inventory item or action description for display. - * @param {HTMLElement} extensibleElement - The parent element containing the description. - * @param {HTMLElement} descriptionElement - The element where the enriched description will be rendered. * @returns {Promise} */ - async #prepareInventoryDescription(extensibleElement, descriptionElement) { - const parent = extensibleElement.closest('[data-item-uuid], [data-action-id]'); - const { actionId, itemUuid } = parent?.dataset || {}; - if (!actionId && !itemUuid) return; + async #prepareInventoryDescription(context) { + // Get all inventory item elements with a data-item-uuid attribute + const inventoryItems = this.element.querySelectorAll('.inventory-item[data-item-uuid]'); + for (const el of inventoryItems) { + // Get the doc uuid from the element + const { itemUuid } = el?.dataset || {}; + if (!itemUuid) continue; - const doc = itemUuid - ? await getDocFromElement(extensibleElement) - : this.document.system.attack?.id === actionId - ? this.document.system.attack - : this.document.system.actions?.get(actionId); - if (!doc) return; + //get doc by uuid + const doc = await fromUuid(itemUuid); - const description = game.i18n.localize(doc.system?.description ?? doc.description); - const isAction = !!actionId; - descriptionElement.innerHTML = await foundry.applications.ux.TextEditor.implementation.enrichHTML( - description, - { - relativeTo: isAction ? doc.parent : doc, - rollData: doc.getRollData?.(), - secrets: isAction ? doc.parent.isOwner : doc.isOwner + //get inventory-item description element + const descriptionElement = el.querySelector('.invetory-description'); + if (!doc || !descriptionElement) continue; + + // localize the description (idk if it's still necessary) + const description = game.i18n.localize(doc.system?.description ?? doc.description); + + // Enrich the description and attach it; + const isAction = doc.documentName === 'Action'; + descriptionElement.innerHTML = await foundry.applications.ux.TextEditor.implementation.enrichHTML( + description, + { + relativeTo: isAction ? doc.parent : doc, + rollData: doc.getRollData?.(), + secrets: isAction ? doc.parent.isOwner : doc.isOwner + } + ); + } + } + + /* -------------------------------------------- */ + /* Extend Descriptions by Settings */ + /* -------------------------------------------- */ + + /** + * Extend inventory description when enabled in settings. + * @returns {Promise} + */ + async #autoExtendDescriptions(context) { + const inventoryItems = this.element.querySelectorAll('.inventory-item[data-item-uuid]'); + for (const el of inventoryItems) { + // Get the doc uuid from the element + const { itemUuid } = el?.dataset || {}; + if (!itemUuid) continue; + + //get doc by uuid + const doc = await fromUuid(itemUuid); + + //check the type of the document + const actorType = + doc?.type === 'adversary' && context.document?.type === 'environment' + ? typeSettingsMap[doc?.type] + : doc.actor?.type; + + // If the actor type is defined and the setting is enabled, extend the description + if (typeSettingsMap[actorType]) { + const settingKey = typeSettingsMap[actorType]; + if (context.settings[settingKey]) this.#activeExtended(el); } - ); + } } /* -------------------------------------------- */ @@ -437,8 +489,6 @@ export default function DHApplicationMixin(Base) { /* -------------------------------------------- */ static async #addNewItem(event, target) { - const { type } = target.dataset; - const createChoice = await foundry.applications.api.DialogV2.wait({ classes: ['dh-style', 'two-big-buttons'], buttons: [ @@ -606,10 +656,12 @@ export default function DHApplicationMixin(Base) { static async #toggleExtended(_, target) { const container = target.closest('.inventory-item'); const extensible = container?.querySelector('.extensible'); - const t = extensible?.classList.toggle('extended'); + extensible?.classList.toggle('extended'); + } - const descriptionElement = extensible?.querySelector('.invetory-description'); - if (t && !!descriptionElement) await this.#prepareInventoryDescription(extensible, descriptionElement); + async #activeExtended(element) { + const extensible = element?.querySelector('.extensible'); + extensible?.classList.add('extended'); } } diff --git a/module/applications/sheets/api/item-attachment-sheet.mjs b/module/applications/sheets/api/item-attachment-sheet.mjs index e9c3994c..73c39923 100644 --- a/module/applications/sheets/api/item-attachment-sheet.mjs +++ b/module/applications/sheets/api/item-attachment-sheet.mjs @@ -24,7 +24,7 @@ export default function ItemAttachmentSheet(Base) { ...super.TABS, primary: { ...super.TABS?.primary, - tabs: [...(super.TABS?.primary?.tabs || []), { id: 'attachments' }], + tabs: [...(super.TABS?.primary?.tabs || []) /*{ id: 'attachments' }*/], // Disabled until fixed initial: super.TABS?.primary?.initial || 'description', labelPrefix: super.TABS?.primary?.labelPrefix || 'DAGGERHEART.GENERAL.Tabs' } diff --git a/module/applications/ui/combatTracker.mjs b/module/applications/ui/combatTracker.mjs index d3d8eb66..69c43b61 100644 --- a/module/applications/ui/combatTracker.mjs +++ b/module/applications/ui/combatTracker.mjs @@ -65,6 +65,57 @@ export default class DhCombatTracker extends foundry.applications.sidebar.tabs.C ]; } + getDefeatedId(combatant) { + if (!combatant.actor) return CONFIG.specialStatusEffects.DEFEATED; + + const settings = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).defeated; + return settings[`${combatant.actor.type}Default`]; + } + + /** @inheritdoc */ + async _onToggleDefeatedStatus(combatant) { + const isDefeated = !combatant.isDefeated; + await combatant.update({ defeated: isDefeated }); + await combatant.actor?.toggleStatusEffect(this.getDefeatedId(combatant), { overlay: true, active: isDefeated }); + } + + /** @inheritdoc */ + async _prepareTurnContext(combat, combatant, index) { + const { id, name, isOwner, isDefeated, hidden, initiative, permission } = combatant; + const resource = permission >= CONST.DOCUMENT_OWNERSHIP_LEVELS.OBSERVER ? combatant.resource : null; + const hasDecimals = Number.isFinite(initiative) && !Number.isInteger(initiative); + const turn = { + hasDecimals, + hidden, + id, + isDefeated, + initiative, + isOwner, + name, + resource, + active: index === combat.turn, + canPing: combatant.sceneId === canvas.scene?.id && game.user.hasPermission('PING_CANVAS'), + img: await this._getCombatantThumbnail(combatant) + }; + + turn.css = [turn.active ? 'active' : null, hidden ? 'hide' : null, isDefeated ? 'defeated' : null].filterJoin( + ' ' + ); + + const defeatedId = this.getDefeatedId(combatant); + const effects = []; + for (const effect of combatant.actor?.temporaryEffects ?? []) { + if (effect.statuses.has(defeatedId)) turn.isDefeated = true; + else if (effect.img) effects.push({ img: effect.img, name: effect.name }); + } + turn.effects = { + icons: effects, + tooltip: this._formatEffectsTooltip(effects) + }; + + return turn; + } + async setCombatantSpotlight(combatantId) { const update = { system: { diff --git a/module/canvas/placeables/token.mjs b/module/canvas/placeables/token.mjs index e6179b10..09b3b192 100644 --- a/module/canvas/placeables/token.mjs +++ b/module/canvas/placeables/token.mjs @@ -15,17 +15,19 @@ export default class DhTokenPlaceable extends foundry.canvas.placeables.Token { acc.push(effect); const currentStatusActiveEffects = acc.filter( - x => x.statuses.size === 1 && x.name === game.i18n.localize(statusMap.get(x.statuses.first()).name) + x => x.statuses.size === 1 && x.name === game.i18n.localize(statusMap.get(x.statuses.first())?.name) ); for (var status of effect.statuses) { if (!currentStatusActiveEffects.find(x => x.statuses.has(status))) { const statusData = statusMap.get(status); - acc.push({ - name: game.i18n.localize(statusData.name), - statuses: [status], - img: statusData.icon, - tint: effect.tint - }); + if (statusData) { + acc.push({ + name: game.i18n.localize(statusData.name), + statuses: [status], + img: statusData.icon, + tint: effect.tint + }); + } } } diff --git a/module/config/generalConfig.mjs b/module/config/generalConfig.mjs index ee0b6671..34ca6009 100644 --- a/module/config/generalConfig.mjs +++ b/module/config/generalConfig.mjs @@ -164,39 +164,49 @@ export const healingTypes = { } }; -export const conditions = { - vulnerable: { - id: 'vulnerable', - name: 'DAGGERHEART.CONFIG.Condition.vulnerable.name', - icon: 'icons/magic/control/silhouette-fall-slip-prone.webp', - description: 'DAGGERHEART.CONFIG.Condition.vulnerable.description' - }, - hidden: { - id: 'hidden', - name: 'DAGGERHEART.CONFIG.Condition.hidden.name', - icon: 'icons/magic/perception/silhouette-stealth-shadow.webp', - description: 'DAGGERHEART.CONFIG.Condition.hidden.description' - }, - restrained: { - id: 'restrained', - name: 'DAGGERHEART.CONFIG.Condition.restrained.name', - icon: 'icons/magic/control/debuff-chains-shackle-movement-red.webp', - description: 'DAGGERHEART.CONFIG.Condition.restrained.description' +export const defeatedConditions = { + defeated: { + id: 'defeated', + name: 'DAGGERHEART.CONFIG.Condition.defeated.name', + img: 'icons/magic/control/fear-fright-mask-orange.webp', + description: 'DAGGERHEART.CONFIG.Condition.defeated.description' }, unconscious: { id: 'unconscious', name: 'DAGGERHEART.CONFIG.Condition.unconscious.name', - icon: 'icons/magic/control/sleep-bubble-purple.webp', + img: 'icons/magic/control/sleep-bubble-purple.webp', description: 'DAGGERHEART.CONFIG.Condition.unconscious.description' }, dead: { id: 'dead', name: 'DAGGERHEART.CONFIG.Condition.dead.name', - icon: 'icons/magic/death/grave-tombstone-glow-teal.webp', + img: 'icons/magic/death/grave-tombstone-glow-teal.webp', description: 'DAGGERHEART.CONFIG.Condition.dead.description' } }; +export const conditions = { + vulnerable: { + id: 'vulnerable', + name: 'DAGGERHEART.CONFIG.Condition.vulnerable.name', + img: 'icons/magic/control/silhouette-fall-slip-prone.webp', + description: 'DAGGERHEART.CONFIG.Condition.vulnerable.description' + }, + hidden: { + id: 'hidden', + name: 'DAGGERHEART.CONFIG.Condition.hidden.name', + img: 'icons/magic/perception/silhouette-stealth-shadow.webp', + description: 'DAGGERHEART.CONFIG.Condition.hidden.description' + }, + restrained: { + id: 'restrained', + name: 'DAGGERHEART.CONFIG.Condition.restrained.name', + img: 'icons/magic/control/debuff-chains-shackle-movement-red.webp', + description: 'DAGGERHEART.CONFIG.Condition.restrained.description' + }, + ...defeatedConditions +}; + export const defaultRestOptions = { shortRest: () => ({ tendToWounds: { diff --git a/module/data/action/attackAction.mjs b/module/data/action/attackAction.mjs index 1ba5f91e..62463d15 100644 --- a/module/data/action/attackAction.mjs +++ b/module/data/action/attackAction.mjs @@ -42,4 +42,32 @@ export default class DHAttackAction extends DHDamageAction { return result; } + + /** + * Generate a localized label array for this item subtype. + * @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects. + */ + _getLabels() { + const labels = []; + const { roll, range, damage } = this; + + if (roll.trait) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${roll.trait}.short`)) + if (range) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.short`)); + + for (const { value, type } of damage.parts) { + const str = Roll.replaceFormulaData(value.getFormula(), this.actor?.getRollData() ?? {}); + + const icons = Array.from(type) + .map(t => CONFIG.DH.GENERAL.damageTypes[t]?.icon) + .filter(Boolean); + + if (icons.length === 0) { + labels.push(str); + } else { + labels.push({ value: str, icons }); + } + } + + return labels; + } } diff --git a/module/data/action/macroAction.mjs b/module/data/action/macroAction.mjs index c4a08df7..58b8eba5 100644 --- a/module/data/action/macroAction.mjs +++ b/module/data/action/macroAction.mjs @@ -1,19 +1,13 @@ import DHBaseAction from './baseAction.mjs'; export default class DHMacroAction extends DHBaseAction { - static defineSchema() { - const fields = foundry.data.fields; - return { - ...super.defineSchema(), - documentUUID: new fields.DocumentUUIDField({ type: 'Macro' }) - }; - } + static extraSchemas = [...super.extraSchemas, 'macro']; async trigger(event, ...args) { - const fixUUID = !this.documentUUID.includes('Macro.') ? `Macro.${this.documentUUID}` : this.documentUUID, + const fixUUID = !this.macro.includes('Macro.') ? `Macro.${this.macro}` : this.macro, macro = await fromUuid(fixUUID); try { - if (!macro) throw new Error(`No macro found for the UUID: ${this.documentUUID}.`); + if (!macro) throw new Error(`No macro found for the UUID: ${this.macro}.`); macro.execute(); } catch (error) { ui.notifications.error(error); diff --git a/module/data/actor/base.mjs b/module/data/actor/base.mjs index a32ac9dd..5b225228 100644 --- a/module/data/actor/base.mjs +++ b/module/data/actor/base.mjs @@ -106,6 +106,28 @@ export default class BaseDataActor extends foundry.abstract.TypeDataModel { }, []); options.scrollingTextData = textData; } + + if (changes.system?.resources) { + const defeatedSettings = game.settings.get( + CONFIG.DH.id, + CONFIG.DH.SETTINGS.gameSettings.Automation + ).defeated; + const typeForDefeated = ['character', 'adversary', 'companion'].find(x => x === this.parent.type); + if (defeatedSettings.enabled && typeForDefeated) { + const resource = typeForDefeated === 'companion' ? 'stress' : 'hitPoints'; + if (changes.system.resources[resource]) { + const becameMax = changes.system.resources[resource].value === this.resources[resource].max; + const wasMax = + this.resources[resource].value === this.resources[resource].max && + this.resources[resource].value !== changes.system.resources[resource].value; + if (becameMax) { + this.parent.toggleDefeated(true); + } else if (wasMax) { + this.parent.toggleDefeated(false); + } + } + } + } } _onUpdate(changes, options, userId) { diff --git a/module/data/actor/character.mjs b/module/data/actor/character.mjs index c5e250a4..71b734cd 100644 --- a/module/data/actor/character.mjs +++ b/module/data/actor/character.mjs @@ -103,7 +103,7 @@ export default class DhCharacter extends BaseDataActor { }), attack: new ActionField({ initial: { - name: 'Attack', + name: 'Unarmed Attack', img: 'icons/skills/melee/unarmed-punch-fist-yellow-red.webp', _id: foundry.utils.randomID(), systemPath: 'attack', @@ -394,19 +394,22 @@ export default class DhCharacter extends BaseDataActor { return this.parent.effects.find(x => x.type === 'beastform'); } + /** + * Gets the unarmed attackwhen no primary or secondary weapon is equipped. + * Returns `null` if either weapon is equipped. + * If the actor is in beastform, overrides the attack's name and image. + * + * @returns {DHAttackAction|null} + */ get usedUnarmed() { - const primaryWeaponEquipped = this.primaryWeapon?.system?.equipped; - const secondaryWeaponEquipped = this.secondaryWeapon?.system?.equipped; - return !primaryWeaponEquipped && !secondaryWeaponEquipped - ? { - ...this.attack, - uuid: this.attack.uuid, - id: this.attack.id, - name: this.activeBeastform ? 'DAGGERHEART.ITEMS.Beastform.attackName' : this.attack.name, - img: this.activeBeastform ? 'icons/creatures/claws/claw-straight-brown.webp' : this.attack.img, - actor: this.parent - } - : null; + if (this.primaryWeapon?.system?.equipped || this.secondaryWeapon?.system?.equipped) return null; + + const attack = foundry.utils.deepClone(this.attack); + if (this.activeBeastform) { + attack.name = 'DAGGERHEART.ITEMS.Beastform.attackName'; + attack.img = 'icons/creatures/claws/claw-straight-brown.webp'; + } + return attack; } get sheetLists() { @@ -599,7 +602,20 @@ export default class DhCharacter extends BaseDataActor { } prepareDerivedData() { - const baseHope = this.resources.hope.value + (this.companion?.system?.resources?.hope ?? 0); + let baseHope = this.resources.hope.value; + if (this.companion) { + for (let levelKey in this.companion.system.levelData.levelups) { + const level = this.companion.system.levelData.levelups[levelKey]; + for (let selection of level.selections) { + switch (selection.type) { + case 'hope': + this.resources.hope.max += selection.value; + break; + } + } + } + } + this.resources.hope.value = Math.min(baseHope, this.resources.hope.max); this.attack.roll.trait = this.rules.attack.roll.trait ?? this.attack.roll.trait; diff --git a/module/data/actor/companion.mjs b/module/data/actor/companion.mjs index 7a11f1d1..48572460 100644 --- a/module/data/actor/companion.mjs +++ b/module/data/actor/companion.mjs @@ -40,12 +40,14 @@ export default class DhCompanion extends BaseDataActor { experiences: new fields.TypedObjectField( new fields.SchemaField({ name: new fields.StringField({}), - value: new fields.NumberField({ integer: true, initial: 0 }) + value: new fields.NumberField({ integer: true, initial: 0 }), + description: new fields.StringField(), + core: new fields.BooleanField({ initial: false }) }), { initial: { - experience1: { value: 2 }, - experience2: { value: 2 } + experience1: { value: 2, core: true }, + experience2: { value: 2, core: true } } } ), @@ -134,6 +136,23 @@ export default class DhCompanion extends BaseDataActor { } } + async _preUpdate(changes, options, userId) { + const allowed = await super._preUpdate(changes, options, userId); + if (allowed === false) return; + + /* The first two experiences are always marked as core */ + if (changes.system?.experiences && Object.keys(this.experiences).length < 2) { + const experiences = new Set(Object.keys(this.experiences)); + const changeExperiences = new Set(Object.keys(changes.system.experiences)); + const newExperiences = Array.from(changeExperiences.difference(experiences)); + + for (var i = 0; i < Math.min(newExperiences.length, 2 - experiences.size); i++) { + const experience = newExperiences[i]; + changes.system.experiences[experience].core = true; + } + } + } + async _preDelete() { if (this.partner) { await this.partner.update({ 'system.companion': null }); diff --git a/module/data/chat-message/adversaryRoll.mjs b/module/data/chat-message/adversaryRoll.mjs index 8e4b7414..4431f87d 100644 --- a/module/data/chat-message/adversaryRoll.mjs +++ b/module/data/chat-message/adversaryRoll.mjs @@ -111,6 +111,7 @@ export default class DHActorRoll extends foundry.abstract.TypeDataModel { if (this.hasTarget) { this.hasHitTarget = this.targets.filter(t => t.hit === true).length > 0; this.currentTargets = this.getTargetList(); + // this.registerTargetHook(); if (this.targetMode === true && this.hasRoll) { this.targetShort = this.targets.reduce( diff --git a/module/data/combatant.mjs b/module/data/combatant.mjs index cae5d08f..bb54c798 100644 --- a/module/data/combatant.mjs +++ b/module/data/combatant.mjs @@ -8,4 +8,10 @@ export default class DhCombatant extends foundry.abstract.TypeDataModel { actionTokens: new fields.NumberField({ required: true, integer: true, initial: 3 }) }; } + + get isDefeated() { + const { unconscious, defeated, dead } = CONFIG.DH.GENERAL.conditions; + const defeatedConditions = new Set([unconscious.id, defeated.id, dead.id]); + return this.defeated || this.actor?.statuses.intersection(defeatedConditions)?.size; + } } diff --git a/module/data/fields/action/_module.mjs b/module/data/fields/action/_module.mjs index 192341e7..e6caa963 100644 --- a/module/data/fields/action/_module.mjs +++ b/module/data/fields/action/_module.mjs @@ -8,3 +8,4 @@ export { default as BeastformField } from './beastformField.mjs'; export { default as DamageField } from './damageField.mjs'; export { default as HealingField } from './healingField.mjs'; export { default as RollField } from './rollField.mjs'; +export { default as MacroField } from './macroField.mjs'; diff --git a/module/data/fields/action/macroField.mjs b/module/data/fields/action/macroField.mjs new file mode 100644 index 00000000..62da0da0 --- /dev/null +++ b/module/data/fields/action/macroField.mjs @@ -0,0 +1,7 @@ +const fields = foundry.data.fields; + +export default class MacroField extends fields.DocumentUUIDField { + constructor(context = {}) { + super({ type: "Macro" }, context); + } +} diff --git a/module/data/fields/actionField.mjs b/module/data/fields/actionField.mjs index 8d865562..dc567da9 100644 --- a/module/data/fields/actionField.mjs +++ b/module/data/fields/actionField.mjs @@ -84,7 +84,7 @@ export class ActionField extends foundry.data.fields.ObjectField { getModel(value) { return ( game.system.api.models.actions.actionsTypes[value.type] ?? - game.system.api.models.actions.actionsTypes.attack + null ); } @@ -93,7 +93,6 @@ export class ActionField extends foundry.data.fields.ObjectField { /** @override */ _cleanType(value, options) { if (!(typeof value === 'object')) value = {}; - const cls = this.getModel(value); if (cls) return cls.cleanData(value, options); return value; diff --git a/module/data/item/armor.mjs b/module/data/item/armor.mjs index a8c3dcec..7f70d3f7 100644 --- a/module/data/item/armor.mjs +++ b/module/data/item/armor.mjs @@ -144,7 +144,8 @@ export default class DHArmor extends AttachableItem { * @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects. */ _getLabels() { - const labels = [`${game.i18n.localize('DAGGERHEART.ITEMS.Armor.baseScore')}: ${this.baseScore}`]; + const labels = []; + if(this.baseScore) labels.push(`${game.i18n.localize('DAGGERHEART.ITEMS.Armor.baseScore')}: ${this.baseScore}`) return labels; } diff --git a/module/data/item/domainCard.mjs b/module/data/item/domainCard.mjs index 7705adb1..5c471ca1 100644 --- a/module/data/item/domainCard.mjs +++ b/module/data/item/domainCard.mjs @@ -77,6 +77,7 @@ export default class DHDomainCard extends BaseDataItem { const tags = [ game.i18n.localize(`DAGGERHEART.CONFIG.DomainCardTypes.${this.type}`), this.domainLabel, + `${game.i18n.localize('DAGGERHEART.GENERAL.levelShort')}: ${this.level}`, `${game.i18n.localize('DAGGERHEART.ITEMS.DomainCard.recallCost')}: ${this.recallCost}` ]; @@ -88,15 +89,16 @@ export default class DHDomainCard extends BaseDataItem { * @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects. */ _getLabels() { - const labels = [ - game.i18n.localize(`DAGGERHEART.CONFIG.DomainCardTypes.${this.type}`), - this.domainLabel, - { + const labels = []; + + if (this.type) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.DomainCardTypes.${this.type}`)); + if (this.domainLabel) labels.push(this.domainLabel); + if (this.recallCost) { + labels.push({ value: `${this.recallCost}`, //converts the number to a string icons: ['fa-bolt'] - } - ]; - + }); + } return labels; } } diff --git a/module/data/item/weapon.mjs b/module/data/item/weapon.mjs index 60a17e3d..66025cc5 100644 --- a/module/data/item/weapon.mjs +++ b/module/data/item/weapon.mjs @@ -1,5 +1,5 @@ import AttachableItem from './attachableItem.mjs'; -import { ActionsField, ActionField } from '../fields/actionField.mjs'; +import { ActionField } from '../fields/actionField.mjs'; export default class DHWeapon extends AttachableItem { /** @inheritDoc */ @@ -18,12 +18,23 @@ export default class DHWeapon extends AttachableItem { const fields = foundry.data.fields; return { ...super.defineSchema(), - tier: new fields.NumberField({ required: true, integer: true, initial: 1, min: 1, label: "DAGGERHEART.GENERAL.Tiers.singular" }), + tier: new fields.NumberField({ + required: true, + integer: true, + initial: 1, + min: 1, + label: 'DAGGERHEART.GENERAL.Tiers.singular' + }), equipped: new fields.BooleanField({ initial: false }), //SETTINGS - secondary: new fields.BooleanField({ initial: false, label: "DAGGERHEART.ITEMS.Weapon.secondaryWeapon" }), - burden: new fields.StringField({ required: true, choices: CONFIG.DH.GENERAL.burden, initial: 'oneHanded', label: "DAGGERHEART.GENERAL.burden" }), + secondary: new fields.BooleanField({ initial: false, label: 'DAGGERHEART.ITEMS.Weapon.secondaryWeapon' }), + burden: new fields.StringField({ + required: true, + choices: CONFIG.DH.GENERAL.burden, + initial: 'oneHanded', + label: 'DAGGERHEART.GENERAL.burden' + }), weaponFeatures: new fields.ArrayField( new fields.SchemaField({ value: new fields.StringField({ @@ -209,26 +220,23 @@ export default class DHWeapon extends AttachableItem { * @returns {(string | { value: string, icons: string[] })[]} An array of localized strings and damage label objects. */ _getLabels() { + const labels = []; const { roll, range, damage } = this.attack; - const labels = [ - game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${roll.trait}.short`), - game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.short`) - ]; + if (roll.trait) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.Traits.${roll.trait}.short`)); + if (range) labels.push(game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.short`)); for (const { value, type } of damage.parts) { - const str = [value.dice]; - if (value.bonus) str.push(value.bonus.signedString()); + const str = Roll.replaceFormulaData(value.getFormula(), this.actor?.getRollData() ?? {}); const icons = Array.from(type) .map(t => CONFIG.DH.GENERAL.damageTypes[t]?.icon) .filter(Boolean); - const labelValue = str.join(''); if (icons.length === 0) { - labels.push(labelValue); + labels.push(str); } else { - labels.push({ value: labelValue, icons }); + labels.push({ value: str, icons }); } } diff --git a/module/data/levelTier.mjs b/module/data/levelTier.mjs index e9e8d47b..e42cfc54 100644 --- a/module/data/levelTier.mjs +++ b/module/data/levelTier.mjs @@ -404,7 +404,27 @@ export const defaultCompanionTier = { start: 2, end: 10 }, - initialAchievements: {}, + initialAchievements: { + experience: { + nr: 1, + modifier: 2 + } + }, + /* Improved this. Quick solution for companions */ + extraAchievements: { + 5: { + experience: { + nr: 1, + modifier: 2 + } + }, + 8: { + experience: { + nr: 1, + modifier: 2 + } + } + }, availableOptions: 1, domainCardByLevel: 0, options: { diff --git a/module/data/levelup.mjs b/module/data/levelup.mjs index 0f248f45..665b3264 100644 --- a/module/data/levelup.mjs +++ b/module/data/levelup.mjs @@ -26,6 +26,7 @@ export class DhLevelup extends foundry.abstract.DataModel { return acc; }, {}) : {}; + const domainCards = [...Array(tier.domainCardByLevel).keys()].reduce((acc, _) => { const id = foundry.utils.randomID(); acc[id] = { uuid: null, itemUuid: null, level: i }; @@ -42,6 +43,20 @@ export class DhLevelup extends foundry.abstract.DataModel { belongingLevels.push(i); } + /* Improve. Temporary handling for Companion new experiences */ + Object.keys(tier.extraAchievements ?? {}).forEach(key => { + const level = Number(key); + if (level >= startLevel && level <= endLevel) { + const levelExtras = tier.extraAchievements[level]; + if (levelExtras.experience) { + levels[level].achievements.experiences[foundry.utils.randomID()] = { + name: '', + modifier: levelExtras.experience.modifier + }; + } + } + }); + tiers[key] = { name: tier.name, belongingLevels: belongingLevels, diff --git a/module/data/settings/Appearance.mjs b/module/data/settings/Appearance.mjs index e215f956..ac980346 100644 --- a/module/data/settings/Appearance.mjs +++ b/module/data/settings/Appearance.mjs @@ -55,6 +55,22 @@ export default class DhAppearance extends foundry.abstract.DataModel { showGenericStatusEffects: new fields.BooleanField({ initial: true, label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.showGenericStatusEffects.label' + }), + extendCharacterDescriptions: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.extendCharacterDescriptions.label' + }), + extendAdversaryDescriptions: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.extendAdversaryDescriptions.label' + }), + extendEnvironmentDescriptions: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.extendEnvironmentDescriptions.label' + }), + extendItemDescriptions: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.extendItemDescriptions.label' }) }; } diff --git a/module/data/settings/Automation.mjs b/module/data/settings/Automation.mjs index facaec17..e1d63669 100644 --- a/module/data/settings/Automation.mjs +++ b/module/data/settings/Automation.mjs @@ -50,6 +50,36 @@ export default class DhAutomation extends foundry.abstract.DataModel { required: true, initial: false, label: 'DAGGERHEART.SETTINGS.Automation.FIELDS.playerCanEditSheet.label' + }), + defeated: new fields.SchemaField({ + enabled: new fields.BooleanField({ + required: true, + initial: false, + label: 'DAGGERHEART.SETTINGS.Automation.FIELDS.defeated.enabled.label' + }), + overlay: new fields.BooleanField({ + required: true, + initial: true, + label: 'DAGGERHEART.SETTINGS.Automation.FIELDS.defeated.overlay.label' + }), + characterDefault: new fields.StringField({ + required: true, + choices: CONFIG.DH.GENERAL.defeatedConditions, + initial: CONFIG.DH.GENERAL.defeatedConditions.unconscious.id, + label: 'DAGGERHEART.SETTINGS.Automation.FIELDS.defeated.characterDefault.label' + }), + adversaryDefault: new fields.StringField({ + required: true, + choices: CONFIG.DH.GENERAL.defeatedConditions, + initial: CONFIG.DH.GENERAL.defeatedConditions.defeated.id, + label: 'DAGGERHEART.SETTINGS.Automation.FIELDS.defeated.adversaryDefault.label' + }), + companionDefault: new fields.StringField({ + required: true, + choices: CONFIG.DH.GENERAL.defeatedConditions, + initial: CONFIG.DH.GENERAL.defeatedConditions.defeated.id, + label: 'DAGGERHEART.SETTINGS.Automation.FIELDS.defeated.companionDefault.label' + }) }) }; } diff --git a/module/dice/damageRoll.mjs b/module/dice/damageRoll.mjs index 8a72d86e..0d64329e 100644 --- a/module/dice/damageRoll.mjs +++ b/module/dice/damageRoll.mjs @@ -137,9 +137,10 @@ export default class DamageRoll extends DHRoll { } if (config.isCritical && part.applyTo === CONFIG.DH.GENERAL.healingTypes.hitPoints.id) { - const tmpRoll = Roll.fromTerms(part.roll.terms)._evaluateSync({ maximize: true }), - criticalBonus = tmpRoll.total - this.constructor.calculateTotalModifiers(tmpRoll); - part.roll.terms.push(...this.formatModifier(criticalBonus)); + const total = part.roll.dice.reduce((acc, term) => acc + term._faces*term._number, 0); + if (total > 0) { + part.roll.terms.push(...this.formatModifier(total)); + } } /* To Remove When Reaction System */ diff --git a/module/dice/dhRoll.mjs b/module/dice/dhRoll.mjs index 126a7944..88d40c32 100644 --- a/module/dice/dhRoll.mjs +++ b/module/dice/dhRoll.mjs @@ -222,26 +222,27 @@ export const registerRollDiceHooks = () => { ) return; - const actor = await fromUuid(config.source.actor), - updates = []; + const actor = await fromUuid(config.source.actor); + let updates = []; if (!actor) return; - if (config.roll.isCritical || config.roll.result.duality === 1) updates.push({ key: 'hope', value: 1 }); - if (config.roll.isCritical) updates.push({ key: 'stress', value: -1 }); - if (config.roll.result.duality === -1) updates.push({ key: 'fear', value: 1 }); + if (config.roll.isCritical || config.roll.result.duality === 1) + updates.push({ key: 'hope', value: 1, total: -1, enabled: true }); + if (config.roll.isCritical) updates.push({ key: 'stress', value: -1, total: 1, enabled: true }); + if (config.roll.result.duality === -1) updates.push({ key: 'fear', value: 1, total: -1, enabled: true }); if (config.rerolledRoll) { if (config.rerolledRoll.isCritical || config.rerolledRoll.result.duality === 1) - updates.push({ key: 'hope', value: -1 }); - if (config.rerolledRoll.isCritical) updates.push({ key: 'stress', value: 1 }); - if (config.rerolledRoll.result.duality === -1) updates.push({ key: 'fear', value: -1 }); + updates.push({ key: 'hope', value: -1, total: 1, enabled: true }); + if (config.rerolledRoll.isCritical) updates.push({ key: 'stress', value: 1, total: -1, enabled: true }); + if (config.rerolledRoll.result.duality === -1) + updates.push({ key: 'fear', value: -1, total: 1, enabled: true }); } if (updates.length) { const target = actor.system.partner ?? actor; - if (!['dead', 'unconscious'].some(x => actor.statuses.has(x))) { - setTimeout(() => { - target.modifyResource(updates); - }, 50); + if (!['dead', 'defeated', 'unconscious'].some(x => actor.statuses.has(x))) { + if (config.rerolledRoll) target.modifyResource(updates); + else config.costs = [...(config.costs ?? []), ...updates]; } } @@ -254,5 +255,7 @@ export const registerRollDiceHooks = () => { const currentCombatant = game.combat.combatants.get(game.combat.current?.combatantId); if (currentCombatant?.actorId == actor.id) ui.combat.setCombatantSpotlight(currentCombatant.id); } + + return; }); }; diff --git a/module/documents/activeEffect.mjs b/module/documents/activeEffect.mjs index bf535b78..f46cc9db 100644 --- a/module/documents/activeEffect.mjs +++ b/module/documents/activeEffect.mjs @@ -118,7 +118,7 @@ export default class DhActiveEffect extends foundry.documents.ActiveEffect { for (const statusId of this.statuses) { const status = CONFIG.statusEffects.find(s => s.id === statusId); - tags.push(game.i18n.localize(status.name)); + if (status) tags.push(game.i18n.localize(status.name)); } return tags; diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index 6421d6bd..649cc81d 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -2,6 +2,7 @@ import { emitAsGM, GMUpdateEvent } from '../systemRegistration/socket.mjs'; import { LevelOptionType } from '../data/levelTier.mjs'; import DHFeature from '../data/item/feature.mjs'; import { damageKeyToNumber } from '../helpers/utils.mjs'; +import DhCompanionLevelUp from '../applications/levelup/companionLevelup.mjs'; export default class DhpActor extends Actor { /** @@ -142,9 +143,6 @@ export default class DhpActor extends Actor { }, {}) }); this.update(getUpdate()); - if (this.system.companion) { - this.system.companion.update(getUpdate()); - } } if (subclassFeatureState.class) { @@ -195,10 +193,6 @@ export default class DhpActor extends Actor { } }); this.sheet.render(); - - if (this.system.companion) { - this.system.companion.updateLevel(newLevel); - } } } @@ -219,16 +213,6 @@ export default class DhpActor extends Actor { core: true } }); - - if (this.system.companion) { - await this.system.companion.update({ - [`system.experiences.${experienceKey}`]: { - name: '', - value: experience.modifier, - core: true - } - }); - } } } @@ -405,6 +389,7 @@ export default class DhpActor extends Actor { }; } + const levelChange = this.system.levelData.level.changed - this.system.levelData.level.current; await this.update({ system: { levelData: { @@ -417,8 +402,21 @@ export default class DhpActor extends Actor { }); this.sheet.render(); - if (this.system.companion) { - this.system.companion.updateLevel(this.system.levelData.level.changed); + if (this.system.companion && !this.system.companion.system.levelData.canLevelUp) { + const confirmed = await foundry.applications.api.DialogV2.confirm({ + window: { + title: game.i18n.localize('DAGGERHEART.ACTORS.Character.companionLevelup.confirmTitle') + }, + content: game.i18n.format('DAGGERHEART.ACTORS.Character.companionLevelup.confirmText', { + name: this.system.companion.name, + levelChange: levelChange + }) + }); + + if (!confirmed) return; + + await this.system.companion.updateLevel(this.system.companion.system.levelData.level.current + levelChange); + new DhCompanionLevelUp(this.system.companion).render({ force: true }); } } @@ -721,4 +719,21 @@ export default class DhpActor extends Actor { value: 1 }); } + + async toggleDefeated(defeatedState) { + const settings = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).defeated; + const { unconscious, defeated, dead } = CONFIG.DH.GENERAL.conditions; + const defeatedConditions = new Set([unconscious.id, defeated.id, dead.id]); + if (!defeatedState) { + for (let defeatedId of defeatedConditions) { + await this.toggleStatusEffect(defeatedId, { overlay: settings.overlay, active: defeatedState }); + } + } else { + const noDefeatedConditions = this.statuses.intersection(defeatedConditions).size === 0; + if (noDefeatedConditions) { + const condition = settings[`${this.type}Default`]; + await this.toggleStatusEffect(condition, { overlay: settings.overlay, active: defeatedState }); + } + } + } } diff --git a/module/documents/chatMessage.mjs b/module/documents/chatMessage.mjs index 80bafc98..43743ef1 100644 --- a/module/documents/chatMessage.mjs +++ b/module/documents/chatMessage.mjs @@ -1,6 +1,5 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { targetHook = null; - targetSelection = null; async renderHTML() { const actor = game.actors.get(this.speaker.actor); @@ -24,7 +23,7 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { /** @inheritDoc */ prepareData() { - if (this.isAuthor && this.targetSelection === null) this.targetSelection = this.system.targets?.length > 0; + if (this.isAuthor && this.targetSelection === undefined) this.targetSelection = this.system.targets?.length > 0; super.prepareData(); } @@ -70,9 +69,13 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { } } - if(!game.user.isGM && !this.isAuthor && !this.speakerActor?.isOwner) { - const buttons = html.querySelectorAll(".ability-card-footer > .ability-use-button"); - buttons.forEach(b => b.remove()); + if(!game.user.isGM) { + const applyButtons = html.querySelector(".apply-buttons"); + applyButtons?.remove(); + if(!this.isAuthor && !this.speakerActor?.isOwner) { + const buttons = html.querySelectorAll(".ability-card-footer > .ability-use-button"); + buttons.forEach(b => b.remove()); + } } } diff --git a/module/documents/token.mjs b/module/documents/token.mjs index becf80b8..6d080f31 100644 --- a/module/documents/token.mjs +++ b/module/documents/token.mjs @@ -72,4 +72,8 @@ export default class DHToken extends TokenDocument { } return attributes; } + + _shouldRecordMovementHistory() { + return false; + } } diff --git a/module/documents/tooltipManager.mjs b/module/documents/tooltipManager.mjs index ec6c8d9e..95621441 100644 --- a/module/documents/tooltipManager.mjs +++ b/module/documents/tooltipManager.mjs @@ -49,11 +49,11 @@ export default class DhTooltipManager extends foundry.helpers.interaction.Toolti const longRest = element.dataset.tooltip?.startsWith('#longRest#'); if (shortRest || longRest) { const key = element.dataset.tooltip.slice(shortRest ? 11 : 10); - const downtimeOptions = shortRest - ? CONFIG.DH.GENERAL.defaultRestOptions.shortRest() - : CONFIG.DH.GENERAL.defaultRestOptions.longRest(); - const move = downtimeOptions[key]; + const moves = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).restMoves[ + element.dataset.restType + ].moves; + const move = moves[key]; const description = await TextEditor.enrichHTML(move.description); html = await foundry.applications.handlebars.renderTemplate( `systems/daggerheart/templates/ui/tooltip/downtime.hbs`, diff --git a/module/helpers/utils.mjs b/module/helpers/utils.mjs index 63507782..439f1780 100644 --- a/module/helpers/utils.mjs +++ b/module/helpers/utils.mjs @@ -251,13 +251,15 @@ export const adjustRange = (rangeVal, decrease) => { }; export const updateActorTokens = async (actor, update) => { - await actor.prototypeToken.update(update); + await actor.prototypeToken.update({ ...update }); /* Update the tokens in all scenes belonging to Actor */ for (let token of actor.getDependentTokens()) { const tokenActor = token.baseActor ?? token.actor; if (tokenActor?.id === actor.id) { - await token.update(update); + await token.update({ + ...update + }); } } }; @@ -341,7 +343,7 @@ export const itemAbleRollParse = (value, actor, item) => { const model = isItemTarget ? item : actor; try { - return Roll.replaceFormulaData(slicedValue, model?.getRollData?.() ?? model); + return Roll.replaceFormulaData(slicedValue, isItemTarget || !model?.getRollData ? model : model.getRollData()); } catch (_) { return ''; } @@ -370,7 +372,7 @@ export function getScrollTextData(resources, resource, key) { export function createScrollText(actor, optionsData) { if (actor && optionsData?.length) { - actor.getDependentTokens().forEach(token => { + actor.getActiveTokens().forEach(token => { optionsData.forEach(data => { const { text, ...options } = data; canvas.interface.createScrollingText(token.getCenterPoint(), data.text, { diff --git a/module/systemRegistration/handlebars.mjs b/module/systemRegistration/handlebars.mjs index 48a99735..ff741b91 100644 --- a/module/systemRegistration/handlebars.mjs +++ b/module/systemRegistration/handlebars.mjs @@ -15,9 +15,8 @@ export const preloadHandlebarsTemplates = async function () { 'systems/daggerheart/templates/sheets/global/partials/feature-section-item.hbs', 'systems/daggerheart/templates/ui/combatTracker/combatTrackerSection.hbs', 'systems/daggerheart/templates/actionTypes/damage.hbs', - 'systems/daggerheart/templates/actionTypes/healing.hbs', 'systems/daggerheart/templates/actionTypes/resource.hbs', - 'systems/daggerheart/templates/actionTypes/uuid.hbs', + 'systems/daggerheart/templates/actionTypes/macro.hbs', 'systems/daggerheart/templates/actionTypes/uses.hbs', 'systems/daggerheart/templates/actionTypes/roll.hbs', 'systems/daggerheart/templates/actionTypes/save.hbs', diff --git a/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json b/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json index fe6001f2..fa7d4807 100644 --- a/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json +++ b/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json @@ -122,7 +122,7 @@ }, "_id": "TCKVaVweyJzhEArX", "systemPath": "actions", - "type": "", + "type": "attack", "description": "", "img": "icons/creatures/claws/claw-curved-jagged-yellow.webp", "chatDisplay": true, @@ -708,4 +708,4 @@ "_id": "89yAh30vaNQOALlz", "sort": 500000, "_key": "!actors!89yAh30vaNQOALlz" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json b/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json index 3f6b218d..5053b21b 100644 --- a/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json +++ b/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -768,4 +769,4 @@ ], "effects": [], "_key": "!actors!G7jiltRjgvVhZewm" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json b/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json index 75504f87..8901186e 100644 --- a/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json +++ b/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json @@ -102,7 +102,8 @@ } ] }, - "img": "icons/weapons/daggers/dagger-bone-black.webp" + "img": "icons/weapons/daggers/dagger-bone-black.webp", + "type": "attack" } }, "flags": {}, @@ -319,4 +320,4 @@ ], "effects": [], "_key": "!actors!vNIbYQ4YSzNf0WPE" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json b/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json index 431735e1..8ca8dbb2 100644 --- a/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json +++ b/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json @@ -114,7 +114,8 @@ } ] }, - "img": "icons/magic/unholy/beam-ringed-impact-purple.webp" + "img": "icons/magic/unholy/beam-ringed-impact-purple.webp", + "type": "attack" } }, "flags": {}, @@ -817,4 +818,4 @@ ], "effects": [], "_key": "!actors!WPEOIGfclNJxWb87" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json b/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json index 48d5e1b7..ecc969ad 100644 --- a/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json +++ b/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json @@ -108,7 +108,8 @@ } ] }, - "img": "icons/weapons/bows/longbow-recurve-leather-brown.webp" + "img": "icons/weapons/bows/longbow-recurve-leather-brown.webp", + "type": "attack" } }, "flags": {}, @@ -393,4 +394,4 @@ ], "effects": [], "_key": "!actors!JRhrrEg5UroURiAD" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json b/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json index 6d96be34..19385537 100644 --- a/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json +++ b/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json @@ -103,7 +103,8 @@ "roll": { "bonus": 0, "type": "attack" - } + }, + "type": "attack" } }, "flags": {}, @@ -514,4 +515,4 @@ } ], "_key": "!actors!0ts6CGd93lLqGZI5" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json b/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json index d0796f0a..f0e15718 100644 --- a/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json +++ b/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json @@ -109,7 +109,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -528,4 +529,4 @@ ], "effects": [], "_key": "!actors!h5RuhzGL17dW5FBT" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json b/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json index 11dd2789..df793a9d 100644 --- a/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json +++ b/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json @@ -109,7 +109,8 @@ } ] }, - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -1284,4 +1285,4 @@ ], "effects": [], "_key": "!actors!dgH3fW9FTYLaIDvS" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json b/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json index a8e610a3..ede81984 100644 --- a/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json +++ b/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json @@ -111,7 +111,8 @@ } ] }, - "img": "icons/creatures/claws/claw-straight-brown.webp" + "img": "icons/creatures/claws/claw-straight-brown.webp", + "type": "attack" } }, "flags": {}, @@ -467,4 +468,4 @@ ], "effects": [], "_key": "!actors!71qKDLKO3CsrNkdy" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json b/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json index 0be3490d..640cd10e 100644 --- a/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json +++ b/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json @@ -107,7 +107,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -441,4 +442,4 @@ ], "effects": [], "_key": "!actors!B4LZcGuBAHzyVdzy" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json b/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json index fe7e037e..d76c1b93 100644 --- a/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json +++ b/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json @@ -112,7 +112,8 @@ } ] }, - "img": "icons/skills/melee/unarmed-punch-fist-yellow-red.webp" + "img": "icons/skills/melee/unarmed-punch-fist-yellow-red.webp", + "type": "attack" } }, "flags": {}, @@ -526,4 +527,4 @@ ], "effects": [], "_key": "!actors!2UeZ0tEe7AzgSJNd" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json b/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json index 18f1b756..fefc7847 100644 --- a/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json +++ b/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json @@ -108,7 +108,8 @@ ] }, "name": "Club", - "img": "icons/weapons/clubs/club-banded-barbed-black.webp" + "img": "icons/weapons/clubs/club-banded-barbed-black.webp", + "type": "attack" } }, "flags": {}, @@ -598,4 +599,4 @@ ], "effects": [], "_key": "!actors!8Zkqk1jU09nKL2fy" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json b/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json index 0e8a87be..e43a2164 100644 --- a/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json +++ b/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json @@ -103,7 +103,8 @@ } ] }, - "img": "icons/magic/light/beam-rays-magenta.webp" + "img": "icons/magic/light/beam-rays-magenta.webp", + "type": "attack" } }, "flags": {}, @@ -561,4 +562,4 @@ ], "effects": [], "_key": "!actors!jDmHqGvzg5wjgmxE" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json b/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json index 88ca68b5..5f3dcf2b 100644 --- a/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json +++ b/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json @@ -96,7 +96,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -313,4 +314,4 @@ ], "effects": [], "_key": "!actors!99TqczuQipBmaB8i" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json b/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json index a1440de4..39cd2ea8 100644 --- a/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json +++ b/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json @@ -102,7 +102,8 @@ ] }, "name": "Fist Slam", - "img": "icons/skills/melee/unarmed-punch-fist-yellow-red.webp" + "img": "icons/skills/melee/unarmed-punch-fist-yellow-red.webp", + "type": "attack" } }, "flags": {}, @@ -631,4 +632,4 @@ ], "effects": [], "_key": "!actors!uOP5oT9QzXPlnf3p" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json b/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json index a0d5bb64..e10ad1a4 100644 --- a/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json +++ b/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json @@ -113,7 +113,8 @@ } ] }, - "img": "icons/weapons/daggers/dagger-straight-cracked.webp" + "img": "icons/weapons/daggers/dagger-straight-cracked.webp", + "type": "attack" } }, "flags": {}, @@ -379,4 +380,4 @@ ], "effects": [], "_key": "!actors!ZxWaWPdzFIUPNC62" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json b/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json index df0103bf..e2c80bec 100644 --- a/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json +++ b/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json @@ -107,7 +107,8 @@ } ] }, - "img": "icons/weapons/daggers/dagger-twin-green.webp" + "img": "icons/weapons/daggers/dagger-twin-green.webp", + "type": "attack" } }, "flags": {}, @@ -459,4 +460,4 @@ ], "effects": [], "_key": "!actors!CBBuEXAlLKFMJdjg" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json b/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json index ed58519c..7ad6e172 100644 --- a/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json +++ b/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json @@ -114,7 +114,8 @@ ] }, "range": "far", - "img": "icons/weapons/staves/staff-ornate-purple.webp" + "img": "icons/weapons/staves/staff-ornate-purple.webp", + "type": "attack" } }, "flags": {}, @@ -723,4 +724,4 @@ ], "effects": [], "_key": "!actors!0NxCSugvKQ4W8OYZ" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json b/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json index 8632f74f..c012548c 100644 --- a/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json +++ b/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json @@ -103,7 +103,8 @@ } ] }, - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -453,4 +454,4 @@ ], "effects": [], "_key": "!actors!tyBOpLfigAhI9bU3" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json b/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json index 26c9f4bf..438c51e2 100644 --- a/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json +++ b/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json @@ -95,7 +95,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -312,4 +313,4 @@ ], "effects": [], "_key": "!actors!zx99sOGTXicP4SSD" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json b/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json index 292f5161..3b409300 100644 --- a/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json +++ b/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json @@ -108,7 +108,8 @@ } ] }, - "img": "icons/magic/nature/root-vines-grow-brown.webp" + "img": "icons/magic/nature/root-vines-grow-brown.webp", + "type": "attack" } }, "flags": {}, @@ -473,4 +474,4 @@ ], "effects": [], "_key": "!actors!9x2xY9zwc3xzbXo5" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json b/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json index f4f74da4..ff35a02d 100644 --- a/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json +++ b/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json @@ -108,7 +108,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -384,4 +385,4 @@ ], "effects": [], "_key": "!actors!pnyjIGxxvurcWmTv" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json b/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json index 970e598b..ee46d67f 100644 --- a/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json +++ b/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json @@ -108,7 +108,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -502,4 +503,4 @@ ], "effects": [], "_key": "!actors!kE4dfhqmIQpNd44e" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json b/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json index cd34ae80..6ed4f966 100644 --- a/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json +++ b/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json @@ -109,7 +109,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -654,4 +655,4 @@ ], "effects": [], "_key": "!actors!2VN3BftageoTTIzu" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json b/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json index 0808e36d..12613133 100644 --- a/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json +++ b/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json @@ -109,7 +109,8 @@ } ] }, - "img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp" + "img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp", + "type": "attack" } }, "flags": {}, @@ -439,4 +440,4 @@ ], "effects": [], "_key": "!actors!SxSOkM4bcVOFyjbo" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json b/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json index 1ce98d4f..36ebdd09 100644 --- a/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json +++ b/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json @@ -109,7 +109,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -474,4 +475,4 @@ ], "effects": [], "_key": "!actors!5lphJAgzoqZI3VoG" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json b/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json index 77d624ab..9c57035f 100644 --- a/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json +++ b/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json @@ -109,7 +109,8 @@ "bonus": 0, "type": "attack" }, - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -421,4 +422,4 @@ } ], "_key": "!actors!NoRZ1PqB8N5wcIw0" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json b/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json index 4140d3c1..864e068a 100644 --- a/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json +++ b/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json @@ -107,7 +107,8 @@ } ] }, - "img": "icons/creatures/claws/claw-hooked-curved.webp" + "img": "icons/creatures/claws/claw-hooked-curved.webp", + "type": "attack" } }, "flags": {}, @@ -512,4 +513,4 @@ ], "effects": [], "_key": "!actors!tBWHW00epmMnkawe" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json b/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json index 03aa65be..f08e6c7a 100644 --- a/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json +++ b/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json @@ -107,7 +107,8 @@ } ] }, - "img": "icons/creatures/claws/claw-straight-brown.webp" + "img": "icons/creatures/claws/claw-straight-brown.webp", + "type": "attack" } }, "flags": {}, @@ -499,4 +500,4 @@ ], "effects": [], "_key": "!actors!wNzeuQLfLUMvgHlQ" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json b/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json index b3443c13..5b06992f 100644 --- a/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json +++ b/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json @@ -109,7 +109,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -568,4 +569,4 @@ ], "effects": [], "_key": "!actors!wR7cFKrHvRzbzhBT" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json b/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json index 7563ea50..97f52a19 100644 --- a/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json +++ b/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json @@ -103,7 +103,8 @@ "bonus": 0, "type": "attack" }, - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -411,4 +412,4 @@ } ], "_key": "!actors!TLzY1nDw0Bu9Ud40" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json b/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json index 72fc9f3e..fe819d62 100644 --- a/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json +++ b/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json @@ -96,7 +96,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -313,4 +314,4 @@ ], "effects": [], "_key": "!actors!P7h54ZePFPHpYwvB" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json b/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json index 3159db6f..12f85b54 100644 --- a/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json +++ b/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json @@ -87,7 +87,7 @@ "img": "icons/weapons/polearms/spear-flared-steel.webp", "_id": "jmrgFi8AUL6LTbtU", "systemPath": "actions", - "type": "", + "type": "attack", "description": "", "chatDisplay": true, "actionType": "action", @@ -435,4 +435,4 @@ "_id": "bfhVWMBUh61b9J6n", "sort": 0, "_key": "!actors!bfhVWMBUh61b9J6n" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json b/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json index 1fefc985..ab005879 100644 --- a/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json +++ b/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json @@ -109,7 +109,8 @@ ] }, "img": "icons/creatures/claws/claw-hooked-barbed.webp", - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -411,4 +412,4 @@ ], "effects": [], "_key": "!actors!ChwwVqowFw8hJQwT" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json b/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json index 1f7e282f..f5c0c384 100644 --- a/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json +++ b/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json @@ -96,7 +96,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -399,4 +400,4 @@ ], "effects": [], "_key": "!actors!OsLG2BjaEdTZUJU9" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json b/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json index e3b3eee5..4aa8dcbc 100644 --- a/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json +++ b/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json @@ -109,7 +109,8 @@ } ] }, - "img": "icons/weapons/staves/staff-animal-skull-bull.webp" + "img": "icons/weapons/staves/staff-animal-skull-bull.webp", + "type": "attack" } }, "flags": {}, @@ -646,4 +647,4 @@ ], "effects": [], "_key": "!actors!PELRry1vqjBzSAlr" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json b/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json index ba9c998b..f5aabf99 100644 --- a/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json +++ b/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json @@ -109,7 +109,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -452,4 +453,4 @@ ], "effects": [], "_key": "!actors!8VZIgU12cB3cvlyH" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json b/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json index 39903650..9aa10ebf 100644 --- a/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json +++ b/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json @@ -109,7 +109,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -484,4 +485,4 @@ ], "effects": [], "_key": "!actors!YnObCleGjPT7yqEc" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json b/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json index e1f3b968..fe48629f 100644 --- a/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json +++ b/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json @@ -87,7 +87,7 @@ "img": "icons/creatures/claws/claw-talons-glowing-orange.webp", "_id": "W2KpXQNCg6Nnorbz", "systemPath": "actions", - "type": "", + "type": "attack", "description": "", "chatDisplay": true, "actionType": "action", @@ -745,4 +745,4 @@ "_id": "OMQ0v6PE8s1mSU0K", "sort": 900000, "_key": "!actors!OMQ0v6PE8s1mSU0K" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json b/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json index 374aedf9..c48b1b70 100644 --- a/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json +++ b/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json @@ -108,7 +108,8 @@ "bonus": -2, "type": "attack" }, - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -453,4 +454,4 @@ } ], "_key": "!actors!IIWV4ysJPFPnTP7W" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json b/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json index 10242ab6..a8a31ec7 100644 --- a/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json +++ b/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json @@ -100,7 +100,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -343,4 +344,4 @@ ], "effects": [], "_key": "!actors!4PfLnaCrOcMdb4dK" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json b/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json index d57f9742..e20a3ec2 100644 --- a/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json +++ b/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json @@ -96,7 +96,8 @@ "roll": { "bonus": 1, "type": "attack" - } + }, + "type": "attack" } }, "flags": {}, @@ -313,4 +314,4 @@ ], "effects": [], "_key": "!actors!5s8wSvpyC5rxY5aD" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json b/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json index 9cf88069..3a0501e0 100644 --- a/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json +++ b/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json @@ -107,7 +107,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -535,4 +536,4 @@ ], "effects": [], "_key": "!actors!fmfntuJ8mHRCAktP" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json b/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json index e7b03a0f..acd44c34 100644 --- a/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json +++ b/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -658,4 +659,4 @@ ], "effects": [], "_key": "!actors!8KWVLWXFhlY2kYx0" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json b/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json index 22e68ade..eb169bc2 100644 --- a/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json +++ b/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json @@ -109,7 +109,8 @@ } ] }, - "img": "icons/weapons/bows/shortbow-recurve-yellow.webp" + "img": "icons/weapons/bows/shortbow-recurve-yellow.webp", + "type": "attack" } }, "flags": {}, @@ -621,4 +622,4 @@ ], "effects": [], "_key": "!actors!8mJYMpbLTb8qIOrr" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json b/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json index d270ccf8..445264af 100644 --- a/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json +++ b/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -632,4 +633,4 @@ ], "effects": [], "_key": "!actors!dsfB3YhoL5SudvS2" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json b/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json index 00139c3b..15e0a61d 100644 --- a/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json +++ b/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -600,4 +601,4 @@ ], "effects": [], "_key": "!actors!xIICT6tEdnA7dKDV" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json b/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json index 90fd4089..f41153ee 100644 --- a/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json +++ b/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json @@ -107,7 +107,8 @@ } ] }, - "img": "icons/creatures/slimes/slime-movement-dripping-pseudopods-green.webp" + "img": "icons/creatures/slimes/slime-movement-dripping-pseudopods-green.webp", + "type": "attack" } }, "flags": {}, @@ -601,4 +602,4 @@ ], "effects": [], "_key": "!actors!SHXedd9zZPVfUgUa" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json b/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json index b28228b1..e1e0fbbd 100644 --- a/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json +++ b/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -371,4 +372,4 @@ ], "effects": [], "_key": "!actors!kabueAo6BALApWqp" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json b/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json index b2afbb74..6b8e339e 100644 --- a/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json +++ b/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json @@ -95,7 +95,8 @@ } ] }, - "img": "icons/skills/melee/sword-shield-stylized-white.webp" + "img": "icons/skills/melee/sword-shield-stylized-white.webp", + "type": "attack" } }, "flags": {}, @@ -376,4 +377,4 @@ ], "effects": [], "_key": "!actors!VENwg7xEFcYObjmT" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json b/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json index 5885267b..d7579b0f 100644 --- a/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json +++ b/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json @@ -108,7 +108,8 @@ } ] }, - "img": "icons/weapons/polearms/spear-hooked-rounded.webp" + "img": "icons/weapons/polearms/spear-hooked-rounded.webp", + "type": "attack" } }, "flags": {}, @@ -378,4 +379,4 @@ ], "effects": [], "_key": "!actors!uRtghKE9mHlII4rs" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json b/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json index 994c66bc..c3ac6946 100644 --- a/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json +++ b/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json @@ -111,7 +111,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -388,4 +389,4 @@ ], "effects": [], "_key": "!actors!mK3A5FTx6k8iPU3F" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json b/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json index a84941f0..7a5e7ce4 100644 --- a/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json +++ b/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json @@ -108,7 +108,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -665,4 +666,4 @@ ], "effects": [], "_key": "!actors!i2UNbRvgyoSs07M6" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json b/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json index 03c047ba..9130b331 100644 --- a/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json +++ b/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json @@ -109,7 +109,8 @@ } ] }, - "img": "icons/skills/melee/strike-blade-hooked-orange-blue.webp" + "img": "icons/skills/melee/strike-blade-hooked-orange-blue.webp", + "type": "attack" } }, "flags": {}, @@ -611,4 +612,4 @@ ], "effects": [], "_key": "!actors!r1mbfSSwKWdcFdAU" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json b/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json index 3e0ca4ba..65dd49c1 100644 --- a/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json +++ b/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json @@ -108,7 +108,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -572,4 +573,4 @@ ], "effects": [], "_key": "!actors!6hbqmxDXFOzZJDk4" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json b/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json index d5828a9b..40eccf51 100644 --- a/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json +++ b/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -602,4 +603,4 @@ ], "effects": [], "_key": "!actors!MI126iMOOobQ1Obn" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json b/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json index e4a2fd1f..5c54c939 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json @@ -107,7 +107,8 @@ } ] }, - "img": "icons/weapons/daggers/dagger-twin-green.webp" + "img": "icons/weapons/daggers/dagger-twin-green.webp", + "type": "attack" } }, "flags": {}, @@ -349,4 +350,4 @@ ], "effects": [], "_key": "!actors!5Lh1T0zaT8Pkr2U2" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json b/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json index 909d6c4e..fdfe873d 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json @@ -108,7 +108,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -443,4 +444,4 @@ ], "effects": [], "_key": "!actors!MbBPIOxaxXYNApXz" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json b/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json index aef9e1be..53b5bf30 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json @@ -111,7 +111,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -399,4 +400,4 @@ ], "effects": [], "_key": "!actors!CBKixLH3yhivZZuL" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json b/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json index 5b25f674..a1a7b6df 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json @@ -92,7 +92,8 @@ "base": false } ] - } + }, + "type": "attack" }, "resources": { "hitPoints": { @@ -319,4 +320,4 @@ ], "effects": [], "_key": "!actors!C0OMQqV7pN6t7ouR" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json b/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json index 52c0417c..27ca677f 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json @@ -108,7 +108,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -502,4 +503,4 @@ ], "effects": [], "_key": "!actors!aTljstqteGoLpCBq" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json b/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json index 4fb8d790..e930fe15 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json @@ -107,7 +107,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -416,4 +417,4 @@ ], "effects": [], "_key": "!actors!XF4tYTq9nPJAy2ox" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json b/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json index f44feb6c..2fc0e526 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json @@ -108,7 +108,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -336,4 +337,4 @@ ], "effects": [], "_key": "!actors!1zuyof1XuIfi3aMG" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json b/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json index 06e829cc..163a9dd5 100644 --- a/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json +++ b/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -604,4 +605,4 @@ ], "effects": [], "_key": "!actors!MYXmTx2FHcIjdfYZ" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json b/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json index cd1d75a1..86dc57ff 100644 --- a/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json +++ b/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json @@ -119,7 +119,8 @@ } ] }, - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -603,4 +604,4 @@ ], "effects": [], "_key": "!actors!7ai2opemrclQe3VF" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json b/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json index 1300e54a..abb19062 100644 --- a/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json +++ b/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json @@ -109,7 +109,8 @@ } ] }, - "img": "icons/creatures/tentacles/tentacles-octopus-black-pink.webp" + "img": "icons/creatures/tentacles/tentacles-octopus-black-pink.webp", + "type": "attack" } }, "flags": {}, @@ -568,4 +569,4 @@ ], "effects": [], "_key": "!actors!4nqv3ZwJGjnmic8j" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json b/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json index c0a25712..15a3dddd 100644 --- a/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json +++ b/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json @@ -109,7 +109,8 @@ } ] }, - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -467,4 +468,4 @@ ], "effects": [], "_key": "!actors!niBpVU7yeo5ccskE" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json b/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json index c8143250..4d10ed98 100644 --- a/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json +++ b/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json @@ -114,7 +114,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -428,4 +429,4 @@ ], "effects": [], "_key": "!actors!dNta0cUzr96xcFhf" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json b/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json index fb0a7970..dd31d320 100644 --- a/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json +++ b/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json @@ -107,7 +107,8 @@ } ] }, - "img": "icons/weapons/clubs/club-baton-blue.webp" + "img": "icons/weapons/clubs/club-baton-blue.webp", + "type": "attack" } }, "flags": {}, @@ -348,4 +349,4 @@ ], "effects": [], "_key": "!actors!Al3w2CgjfdT3p9ma" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json b/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json index f706a7ac..7a43e614 100644 --- a/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json +++ b/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json @@ -113,7 +113,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -403,4 +404,4 @@ ], "effects": [], "_key": "!actors!Vy02IhGhkJLuezu4" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json b/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json index 075e47dc..0afdddcc 100644 --- a/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json +++ b/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json @@ -103,7 +103,8 @@ } ] }, - "range": "close" + "range": "close", + "type": "attack" } }, "flags": {}, @@ -620,4 +621,4 @@ ], "effects": [], "_key": "!actors!sRn4bqerfARvhgSV" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json b/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json index 8e274cfe..66037843 100644 --- a/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json +++ b/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json @@ -102,7 +102,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -558,4 +559,4 @@ ], "effects": [], "_key": "!actors!3tqCjDwJAQ7JKqMb" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json b/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json index 2a2b5c92..87f7f688 100644 --- a/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json +++ b/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -697,4 +698,4 @@ ], "effects": [], "_key": "!actors!DscWkNVoHak6P4hh" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json b/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json index 81d7e0e6..70568858 100644 --- a/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json +++ b/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json @@ -95,7 +95,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -314,4 +315,4 @@ ], "effects": [], "_key": "!actors!G62k4oSkhkoXEs2D" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json b/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json index d0d0dda6..acbbf2cc 100644 --- a/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json +++ b/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json @@ -103,7 +103,8 @@ } ] }, - "img": "icons/weapons/axes/axe-double.webp" + "img": "icons/weapons/axes/axe-double.webp", + "type": "attack" } }, "flags": {}, @@ -561,4 +562,4 @@ ], "effects": [], "_key": "!actors!rM9qCIYeWg9I0B4l" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json b/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json index 9e689a3e..77313b30 100644 --- a/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json +++ b/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json @@ -113,7 +113,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -394,4 +395,4 @@ ], "effects": [], "_key": "!actors!yx0vK2yfNVZKWUUi" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json b/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json index 1e94b256..4c870b3e 100644 --- a/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json +++ b/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json @@ -109,7 +109,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -646,4 +647,4 @@ ], "effects": [], "_key": "!actors!mVV7a7KQAORoPMgZ" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json b/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json index 3bfaa715..f8792192 100644 --- a/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json +++ b/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json @@ -64,7 +64,45 @@ } }, "tier": 3, - "description": "

A sturdy animate old-growth tree.

" + "description": "

A sturdy animate old-growth tree.

", + "attack": { + "name": "Attack", + "roll": { + "type": "attack", + "bonus": 2 + }, + "range": "close", + "damage": { + "parts": [ + { + "value": { + "multiplier": "flat", + "flatMultiplier": 3, + "dice": "d8", + "bonus": 2, + "custom": { + "enabled": false + } + }, + "type": ["physical"], + "applyTo": "hitPoints", + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false + } + }, + "base": false + } + ] + }, + "img": "icons/skills/melee/blood-slash-foam-red.webp", + "type": "attack" + } }, "flags": {}, "_stats": { diff --git a/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json b/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json index c4b13076..7ef34fea 100644 --- a/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json +++ b/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json @@ -109,7 +109,8 @@ } ] }, - "img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp" + "img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp", + "type": "attack" } }, "flags": {}, @@ -732,4 +733,4 @@ ], "effects": [], "_key": "!actors!befIqd5IYKg6eUz2" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json b/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json index 7f8a96f8..ac3c352c 100644 --- a/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json +++ b/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json @@ -103,7 +103,8 @@ } ] }, - "img": "icons/creatures/tentacles/tentacle-earth-green.webp" + "img": "icons/creatures/tentacles/tentacle-earth-green.webp", + "type": "attack" } }, "flags": {}, @@ -603,4 +604,4 @@ ], "effects": [], "_key": "!actors!A0SeeDzwjvqOsyof" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json b/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json index ba42b6d6..1933cb63 100644 --- a/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json +++ b/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -415,4 +416,4 @@ ], "effects": [], "_key": "!actors!ms6nuOl3NFkhPj1k" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json b/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json index 377762d0..9c8c546f 100644 --- a/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json +++ b/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json @@ -95,7 +95,8 @@ "bonus": 3, "type": "attack" }, - "img": "icons/creatures/claws/claw-talons-yellow-red.webp" + "img": "icons/creatures/claws/claw-talons-yellow-red.webp", + "type": "attack" } }, "flags": {}, @@ -312,4 +313,4 @@ ], "effects": [], "_key": "!actors!moJhHgKqTKPS2WYS" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json b/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json index 4b8c4cdb..7a7414e2 100644 --- a/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json +++ b/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json @@ -112,7 +112,8 @@ } ] }, - "img": "icons/commodities/biological/hand-clawed-blue.webp" + "img": "icons/commodities/biological/hand-clawed-blue.webp", + "type": "attack" } }, "flags": {}, @@ -542,4 +543,4 @@ ], "effects": [], "_key": "!actors!EQTOAOUrkIvS2z88" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json b/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json index 59db736c..7766be2a 100644 --- a/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json +++ b/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -565,4 +566,4 @@ ], "effects": [], "_key": "!actors!CP6iRfHdyFWniTHY" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json b/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json index d5af9c61..1ae9d31b 100644 --- a/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json +++ b/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json @@ -107,7 +107,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -415,4 +416,4 @@ ], "effects": [], "_key": "!actors!wycLpvebWdUqRhpP" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json b/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json index 004f8719..d6bcbfed 100644 --- a/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json +++ b/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json @@ -111,7 +111,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -531,4 +532,4 @@ ], "effects": [], "_key": "!actors!OROJbjsqagVh7ECV" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json b/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json index b180927e..cd3d011c 100644 --- a/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json +++ b/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json @@ -107,7 +107,8 @@ "roll": { "bonus": 1, "type": "attack" - } + }, + "type": "attack" } }, "flags": {}, @@ -388,4 +389,4 @@ } ], "_key": "!actors!5YgEajn0wa4i85kC" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json b/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json index 6dfa21a1..d2293628 100644 --- a/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json +++ b/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json @@ -107,7 +107,8 @@ } ] }, - "img": "icons/creatures/slimes/slime-movement-dripping-pseudopods-green.webp" + "img": "icons/creatures/slimes/slime-movement-dripping-pseudopods-green.webp", + "type": "attack" } }, "flags": {}, @@ -537,4 +538,4 @@ ], "effects": [], "_key": "!actors!9rVlbJVrDNn1x7PS" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json b/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json index 35ac498e..5edc82f1 100644 --- a/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json +++ b/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json @@ -87,7 +87,8 @@ } ] }, - "img": "icons/creatures/abilities/mouth-teeth-sharp.webp" + "img": "icons/creatures/abilities/mouth-teeth-sharp.webp", + "type": "attack" }, "resources": { "hitPoints": { @@ -314,4 +315,4 @@ ], "effects": [], "_key": "!actors!gP3fWTLzSFnpA8EJ" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json b/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json index e66a7ba0..1f9e2689 100644 --- a/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json +++ b/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json @@ -114,7 +114,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -448,4 +449,4 @@ ], "effects": [], "_key": "!actors!EtLJiTsilPPZvLUX" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json b/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json index fa8d7f07..5cc726e7 100644 --- a/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json +++ b/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json @@ -114,7 +114,8 @@ } ] }, - "img": "icons/weapons/staves/staff-ornate-purple.webp" + "img": "icons/weapons/staves/staff-ornate-purple.webp", + "type": "attack" } }, "flags": {}, @@ -573,4 +574,4 @@ ], "effects": [], "_key": "!actors!sLAccjvCWfeedbpI" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json b/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json index 4a569ea1..bd7fe87a 100644 --- a/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json +++ b/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json @@ -95,7 +95,8 @@ "bonus": 3, "type": "attack" }, - "img": "icons/weapons/swords/sword-guard.webp" + "img": "icons/weapons/swords/sword-guard.webp", + "type": "attack" } }, "flags": {}, @@ -314,4 +315,4 @@ ], "effects": [], "_key": "!actors!bgreCaQ6ap2DVpCr" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json b/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json index bbc59263..efd04dce 100644 --- a/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json +++ b/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json @@ -102,7 +102,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -343,4 +344,4 @@ ], "effects": [], "_key": "!actors!2nXz4ilAY4xuhKLm" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json b/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json index 7c81805d..bc97ce5a 100644 --- a/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json +++ b/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -505,4 +506,4 @@ ], "effects": [], "_key": "!actors!YmVAkdNsyuXWTtYp" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json b/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json index 29faf229..4f855702 100644 --- a/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json +++ b/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json @@ -109,7 +109,8 @@ ] }, "img": "icons/creatures/abilities/mouth-teeth-sharp.webp", - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -476,4 +477,4 @@ ], "effects": [], "_key": "!actors!BK4jwyXSRx7IOQiO" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json b/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json index cdc360ff..fadf4d46 100644 --- a/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json +++ b/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json @@ -103,7 +103,8 @@ } ] }, - "img": "icons/weapons/bows/shortbow-leather.webp" + "img": "icons/weapons/bows/shortbow-leather.webp", + "type": "attack" } }, "flags": {}, @@ -365,4 +366,4 @@ ], "effects": [], "_key": "!actors!7X5q7a6ueeHs5oA9" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json b/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json index f9aa30a1..35be0c10 100644 --- a/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json +++ b/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json @@ -87,7 +87,8 @@ "base": false } ] - } + }, + "type": "attack" }, "resources": { "hitPoints": { @@ -314,4 +315,4 @@ ], "effects": [], "_key": "!actors!6l1a3Fazq8BoKIcc" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json b/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json index f564be39..b9a259ea 100644 --- a/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json +++ b/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json @@ -102,7 +102,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -558,4 +559,4 @@ ], "effects": [], "_key": "!actors!Q9LaVTyXF9NF12C7" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json b/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json index 64fcf7e3..885cd007 100644 --- a/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json +++ b/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json @@ -102,7 +102,8 @@ } ] }, - "img": "icons/weapons/swords/sword-guard-brass-worn.webp" + "img": "icons/weapons/swords/sword-guard-brass-worn.webp", + "type": "attack" } }, "flags": {}, @@ -389,4 +390,4 @@ ], "effects": [], "_key": "!actors!10YIQl0lvCJXZLfX" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json b/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json index 99cefd01..906fb301 100644 --- a/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json +++ b/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json @@ -109,7 +109,8 @@ } ] }, - "range": "far" + "range": "far", + "type": "attack" } }, "flags": {}, @@ -452,4 +453,4 @@ ], "effects": [], "_key": "!actors!5tCkhnBByUIN5UdG" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json b/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json index 318c51a6..2672514d 100644 --- a/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json +++ b/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json @@ -109,7 +109,8 @@ "bonus": 3, "type": "attack" }, - "range": "far" + "range": "far", + "type": "attack" } }, "flags": {}, @@ -506,4 +507,4 @@ ], "effects": [], "_key": "!actors!65cSO3EQEh6ZH6Xk" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json b/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json index bcbde73d..8b3ff6a4 100644 --- a/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json +++ b/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json @@ -109,7 +109,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -485,4 +486,4 @@ ], "effects": [], "_key": "!actors!UFVGl1osOsJTneLf" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json b/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json index 8b3cde3d..be274c9f 100644 --- a/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json +++ b/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json @@ -108,7 +108,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -477,4 +478,4 @@ ], "effects": [], "_key": "!actors!ldbWEL7uZs84vyrR" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json b/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json index 501cf4d8..127a992a 100644 --- a/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json +++ b/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json @@ -109,7 +109,8 @@ ] }, "img": "icons/weapons/daggers/dagger-curved-purple.webp", - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -423,4 +424,4 @@ ], "effects": [], "_key": "!actors!8zlynOhnVA59KpKT" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json b/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json index 03e9a9f4..40bceb11 100644 --- a/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json +++ b/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json @@ -108,7 +108,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -496,4 +497,4 @@ ], "effects": [], "_key": "!actors!KGVwnLq85ywP9xvB" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json b/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json index ed541b43..742d2dcc 100644 --- a/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json +++ b/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json @@ -109,7 +109,8 @@ } ] }, - "range": "" + "range": "", + "type": "attack" } }, "flags": {}, @@ -575,4 +576,4 @@ ], "effects": [], "_key": "!actors!3aAS2Qm3R6cgaYfE" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json b/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json index 4f2d0b81..b1f577d2 100644 --- a/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json +++ b/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json @@ -102,7 +102,8 @@ "roll": { "bonus": -3, "type": "attack" - } + }, + "type": "attack" } }, "flags": {}, @@ -330,4 +331,4 @@ } ], "_key": "!actors!qNgs3AbLyJrY19nt" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json b/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json index 6c548162..baddaa4d 100644 --- a/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json +++ b/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json @@ -107,7 +107,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -568,4 +569,4 @@ ], "effects": [], "_key": "!actors!VtFBt9XBE0WrGGxP" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json b/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json index 861fc6bd..8b0e8254 100644 --- a/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json +++ b/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json @@ -86,7 +86,8 @@ } ] }, - "img": "icons/creatures/slimes/slime-movement-dripping-pseudopods-green.webp" + "img": "icons/creatures/slimes/slime-movement-dripping-pseudopods-green.webp", + "type": "attack" }, "damageThresholds": { "major": 4, @@ -305,4 +306,4 @@ ], "effects": [], "_key": "!actors!aLkLFuVoKz2NLoBK" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json b/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json index 83399fcd..dc4e18f3 100644 --- a/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json +++ b/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json @@ -86,7 +86,8 @@ "base": false } ] - } + }, + "type": "attack" }, "resources": { "hitPoints": { @@ -306,4 +307,4 @@ ], "effects": [], "_key": "!actors!1fkLQXVtmILqfJ44" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json b/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json index d90df755..d3f3fceb 100644 --- a/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json +++ b/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json @@ -95,7 +95,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -312,4 +313,4 @@ ], "effects": [], "_key": "!actors!o63nS0k3wHu6EgKP" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json b/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json index f6227213..2c300e8a 100644 --- a/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json +++ b/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json @@ -108,7 +108,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -447,4 +448,4 @@ ], "effects": [], "_key": "!actors!WWyUp6Mxl1S3KYUG" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json b/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json index 1a2cfa38..74485986 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -396,4 +397,4 @@ ], "effects": [], "_key": "!actors!JqYraOqNmmhHk4Yy" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json b/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json index 743ada61..dbe89528 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -525,4 +526,4 @@ ], "effects": [], "_key": "!actors!FVgYb28fhxlVcGwA" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json b/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json index 63ad9d5c..2e582dfd 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json @@ -103,7 +103,8 @@ } ] }, - "img": "icons/commodities/tech/metal-joint.webp" + "img": "icons/commodities/tech/metal-joint.webp", + "type": "attack" } }, "flags": {}, @@ -553,4 +554,4 @@ ], "effects": [], "_key": "!actors!c5hGdvY5UnSjlHws" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json b/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json index 59891951..3f133440 100644 --- a/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json +++ b/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json @@ -114,7 +114,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -684,4 +685,4 @@ ], "effects": [], "_key": "!actors!noDdT0tsN6FXSmC8" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json b/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json index af441764..bab53785 100644 --- a/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json +++ b/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json @@ -103,7 +103,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -555,4 +556,4 @@ ], "effects": [], "_key": "!actors!ZNbQ2jg35LG4t9eH" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json b/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json index c6ff7c34..b3f5b9c6 100644 --- a/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json +++ b/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json @@ -107,7 +107,8 @@ "base": false } ] - } + }, + "type": "attack" } }, "flags": {}, @@ -467,4 +468,4 @@ ], "effects": [], "_key": "!actors!8yUj2Mzvnifhxegm" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json b/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json index 11289fba..93aa7fc9 100644 --- a/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json +++ b/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json @@ -108,7 +108,8 @@ } ] }, - "img": "icons/creatures/claws/claw-scaled-red.webp" + "img": "icons/creatures/claws/claw-scaled-red.webp", + "type": "attack" } }, "flags": {}, @@ -863,4 +864,4 @@ ], "effects": [], "_key": "!actors!UGPiPLJsPvMTSKEF" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json b/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json index 1d4fa474..10c3562a 100644 --- a/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json +++ b/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json @@ -103,7 +103,8 @@ "type": "attack" }, "range": "close", - "img": "icons/creatures/tentacles/tentacles-octopus-black-pink.webp" + "img": "icons/creatures/tentacles/tentacles-octopus-black-pink.webp", + "type": "attack" } }, "flags": {}, @@ -478,4 +479,4 @@ } ], "_key": "!actors!YhJrP7rTBiRdX5Fp" -} +} \ No newline at end of file diff --git a/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json b/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json index 972c4efa..0e469958 100644 --- a/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json +++ b/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json @@ -102,7 +102,8 @@ "bonus": -1, "type": "attack" }, - "img": "icons/creatures/abilities/mouth-teeth-sharp.webp" + "img": "icons/creatures/abilities/mouth-teeth-sharp.webp", + "type": "attack" } }, "flags": {}, @@ -361,4 +362,4 @@ } ], "_key": "!actors!Nf0v43rtflV56V2T" -} +} \ No newline at end of file diff --git a/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json b/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json index 2d655ba5..ece610c0 100644 --- a/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json +++ b/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json @@ -88,7 +88,7 @@ "image": {}, "text": { "format": 1, - "content": "

DOMAINS

The Daggerheart core set includes 9 Domain Decks, each comprising a collection of cards granting features or special abilities expressing a particular theme.

The 9 Domains are:

ARCANA

Arcana is the domain of innate and instinctual magic. Those who choose this path tap into the raw, enigmatic forces of the realms to manipulate both their own energy and the elements.

Arcana offers wielders a volatile power, but it is incredibly potent when correctly channeled.

The Arcana domain can be accessed by the Druid and Sorcerer classes.

BLADE

Blade is the domain of weapon mastery. Whether by steel, bow, or perhaps a more specialized arm, those who follow this path have the skill to cut short the lives of others. Wielders of Blade dedicate themselves to achieving inexorable power over death.

The Blade domain can be accessed by the Guardian and Warrior classes.

BONE

Bone is the domain of tactics and the body. Practitioners of this domain have an uncanny control over their own physical abilities and an eye for predicting the behaviors of others in combat. Adherents to Bone gain an unparalleled understanding of bodies and their movements.

The Bone domain can be accessed by the Ranger & Warrior classes.

CODEX

Codex is the domain of intensive magical study. Those who seek magical knowledge turn to the equations of power recorded in books, written on scrolls, etched into walls, or tattooed on bodies. Codex offers a commanding and versatile understanding of magic to devotees who pursue knowledge beyond the boundaries of common wisdom.

The Codex domain can be accessed by the Bard and Wizard classes.

GRACE

Grace is the domain of charisma. Through rapturous storytelling, charming spells, or a shroud of lies, those who channel this power define the realities of their adversaries, bending perception to their will. Grace offers its wielders raw magnetism and mastery over language.

The Grace domain can be accessed by the Bard and Rogue classes

MIDNIGHT

Midnight is the domain of shadows and secrecy. Whether by clever tricks, deft magic, or the cloak of night, those who channel these forces practice the art of obscurity and can uncover sequestered treasures. Midnight offers practitioners the power to control and create enigmas.

The Midnight domain can be access by the Rogue and Sorcerer classes.

SAGE

Sage is the domain of the natural world. Those who walk this path tap into the unfettered power of the earth and its creatures to unleash raw magic. Sage grants its adherents the vitality of a blooming flower and the ferocity of a ravenous predator.

The Sage domain can be accessed by the Druid and Ranger classes.

SPLENDOR

Splendor is the domain of life. Through this magic, followers gain the ability to heal and, to an extent, control death. Splendor offers its disciples the magnificent ability to both give and end life.

The Splendor domain can be accessed by the Seraph and Wizard classes.

VALOR

Valor is the domain of protection. Whether through attack or defense, those who choose this discipline channel formidable strength to protect their allies in battle. Valor offers great power to those who raise their shields in defense of others.

The Valor domain can be accessed by the Guardian and Seraph classes.

CLASS DOMAINS

Each class grants access to two domains:

  • Bard: Codex & Grace

  • Druid: Arcana & Sage

  • Guardian: Blade & Valor

  • Ranger: Bone & Sage

  • Rogue: Grace & Midnight

  • Seraph: Splendor & Valor

  • Sorcerer: Arcana & Midnight

  • Warrior: Blade & Bone

  • Wizard: Codex & Splendor

PCs acquire two 1st-level domain cards at character creation and an additional domain card at or below their level each time they level up.

DOMAIN CARDS

Each domain card provides one or more features your PC can utilize during their adventures. Some domain cards provide moves you can make, such as a unique attack or a spell. Others offer passive effects, new downtime or social encounter abilities, or one-time benefits.

DOMAIN CARD ANATOMY

Each domain card includes six elements:

  • Level

    The number in the top left of the card indicates the card’s level. You cannot acquire a domain card with a level higher than your PC’s.

  • Domain

    Beneath the card’s level there is a symbol indicating its domain. You can only choose cards from your class’s two domains.

  • Recall Cost

    The number and lightning bolt in the top right of the card shows its Recall Cost. This is the amount of Stress a player must mark to swap this card from their vault with a card from their loadout.

Note: A player can swap domain cards during downtime without paying the domain card’s Recall Cost.

  • Title

    The name of the card.

  • Type

    The card’s type is listed in the center above the title. There are three types of domain cards: abilities, spells, and grimoires. Abilities are typically non-magical in nature, while spells are magical. Grimoires are unique to the Codex domain and grant access to a collection of less potent spells. Some game mechanics only apply to certain types of cards.

  • Feature

    The text on the bottom half of the card describes its feature(s), including any special rules you need to follow when you use that card.

LOADOUT & VAULT

Your loadout is the set of acquired domain cards whose effects your PC can use during play. You can have up to 5 domain cards in your loadout at one time. Once you’ve acquired six or more domain cards, you must choose five to keep in your loadout; the rest are considered to be in your vault. Vault cards are inactive and do not influence play

Note: Your subclass, ancestry, and community cards don’t count toward your loadout or vault and are always active and available.

At the start of a rest, before using downtime moves, you can freely move cards between your loadout and your vault, so long as your loadout doesn’t exceed its five-card maximum.

To move a card from your vault to your loadout at any other time, you must mark a number of Stress equal to the vaulted card’s Recall Cost (located in the top right of the card next to the lightning bolt symbol). If your loadout is already full, you must also move a card from your loadout to your vault to make space, though you can do this at no cost.

When you gain a new domain card at level-up, you can immediately move it into your loadout for free. If your loadout is already full, you must also move a card from your loadout to your vault to make space.

USAGE LIMITS

If a domain card restricts how often it can be used, you can track such limits with whatever method you prefer, such as turning the card sideways, flipping it facedown, or using tokens.

Note: if an effect or ability gives you a number of uses equal to a trait with a modifier of +0 or less, it grants you 0 uses.

CLASSES

A class is a role-based archetype that determines a PC’s:

  • Access to Domains: Each class grants access to two domains; players choose cards from these domains during character creation and when leveling up.

  • Starting Evasion and Hit Points (HP)

  • Starting Items

  • Class Feature(s)

  • Class Hope Feature, a class feature that costs 3 Hope to activate.

There are 9 classes in the Daggerheart core materials: Bard, Druid, Guardian, Ranger, Rogue, Seraph, Sorcerer, Warrior, and Wizard.

SUBCLASSES

Each class is divided into two subclasses, each of which further defines and highlights one aspect of its class archetype. Your chosen subclass grants the following:

  • Spellcast Trait: the trait used on all Spellcast rolls.

  • Foundation Feature: a unique starting feature that establishes the identity and strengths of the subclass.

  • Specialization Feature: an advanced feature that can be gained on level up. For some subclasses, the specialization feature grants a new ability; for others, it expands or enhances a feature you already acquired through a class or subclass.

  • Mastery Feature: The mastery feature is a subclass’s most powerful feature, which can be gained at higher levels.

For some subclasses, the mastery feature unlocks an extraordinary new ability; for others, it’s the impressive culmination of their subclass’s core feature.

The Daggerheart core set includes cards detailing each foundation, specialization, and mastery feature. When you acquire one of these features, take its card for use as a reference during play.

ANCESTRIES

Ancestries represent your character’s lineage, which affects their physical appearance and access to certain special abilities. The following section describes each ancestry in Daggerheart and the characteristics generally shared by members of that ancestry, however, each player decides how much their character aligns with the “standard” or “average” expression of their ancestry.

In Daggerheart, the term “people” is used to refer to all ancestries, as individuals from all lineages possess unique characteristics and cultures, as well as personhood.

Some ancestries are described using the term “humanoid.” This does not imply any genetic relation to “humans,” which is a distinct ancestry within Daggerheart. Instead, it refers to the set of physical characteristics humans will recognize from their own anatomy, such as bipedal movement, upright posture, facial layout, and more. These traits vary by ancestry and individual, though “humanoid” should still provide a useful frame of reference.

The core ruleset includes the following ancestries: Clank, Drakona, Dwarf, Elf, Faerie, Faun, Firbolg, Fungril, Galapa, Giant, Goblin, Halfling, Human, Infernis, Katari, Orc, Ribbet, Simiah, and Mixed Ancestry.

ANCESTRY FEATURES

Each ancestry grants two ancestry features. While some features (such as the ability to fly) are implicitly tied to an ancestry’s anatomy, players determine their characters’ physical form. Work with the GM to re-flavor any implied traits that don’t align with your character concept. If you’d like to make a character who combines more than one ancestry, see “Mixed Ancestry.”

CLANK

Clanks are sentient mechanical beings built from a variety of materials, including metal, wood, and stone. They can resemble humanoids, animals, or even inanimate objects. Like organic beings, their bodies come in a wide array of sizes. Because of their bespoke construction, many clanks have highly specialized physical configurations. Examples include clawed hands for grasping, wheels for movement, or built-in weaponry.

Many clanks embrace body modifications for style as well as function, and members of other ancestries often turn to clank artisans to construct customized mobility aids and physical adornments. Other ancestries can create clanks, even using their own physical characteristics as inspiration, but it’s also common for clanks to build one another. A clank’s lifespan extends as long as they’re able to acquire or craft new parts, making their physical form effectively immortal. That said, their minds are subject to the effects of time, and deteriorate as the magic that powers them loses potency.

DRAKONA

Drakona resemble wingless dragons in humanoid form and possess a powerful elemental breath. All drakona have thick scales that provide excellent natural armor against both attacks and the forces of nature. They are large in size, ranging from 5 feet to 7 feet on average, with long sharp teeth. New teeth grow throughout a Drakona’s approximately 350-year lifespan, so they are never in danger of permanently losing an incisor. Unlike their dragon ancestors, drakona don’t have wings and can’t fly without magical aid. Members of this ancestry pass down the element of their breath through generations, though in rare cases, a drakona’s elemental power will differ from the rest of their family’s.

DWARF

Dwarves are most easily recognized as short humanoids with square frames, dense musculature, and thick hair. Their average height ranges from 4 to 5 ½ feet, and they are often broad in proportion to their stature. Their skin and nails contain a high amount of keratin, making them naturally resilient. This allows dwarves to embed gemstones into their bodies and decorate themselves with tattoos or piercings. Their hair grows thickly—usually on their heads, but some dwarves have thick hair across their bodies as well. Dwarves of all genders can grow facial hair, which they often style in elaborate arrangements. Typically, dwarves live up to 250 years of age, maintaining their muscle mass well into later life.

ELF

Elves are typically tall humanoids with pointed ears and acutely attuned senses. Their ears vary in size and pointed shape, and as they age, the tips begin to droop. While elves come in a wide range of body types, they are all fairly tall, with heights ranging from about 6 to 6 ½ feet. All elves have the ability to drop into a celestial trance, rather than sleep. This allows them to rest effectively in a short amount of time.

Some elves possess what is known as a “mystic form,” which occurs when an elf has dedicated themself to the study or protection of the natural world so deeply that their physical form changes. These characteristics can include celestial freckles, the presence of leaves, vines, or flowers in their hair, eyes that flicker like fire, and more. Sometimes these traits are inherited from parents, but if an elf changes their environment or magical focus, their appearance changes over time. Because elves live for about 350 years, these traits can shift more than once throughout their lifespan.

FAERIE

Faeries are winged humanoid creatures with insectile features. These characteristics cover a broad spectrum from humanoid to insectoid—some possess additional arms, compound eyes, lantern organs, chitinous exoskeletons, or stingers. Because of their close ties to the natural world, they also frequently possess attributes that allow them to blend in with various plants. The average height of a faerie ranges from about 2 feet to 5 feet, but some faeries grow up to 7 feet tall. All faeries possess membranous wings and they each go through a process of metamorphosis. The process and changes differ from faerie to faerie, but during this transformation each individual manifests the unique appearance they will carry throughout the rest of their approximately 50-year lifespan.

FAUN

Fauns resemble humanoid goats with curving horns, square pupils, and cloven hooves. Though their appearances may vary, most fauns have a humanoid torso and a goatlike lower body covered in dense fur. Faun faces can be more caprine or more humanlike, and they have a wide variety of ear and horn shapes. Faun horns range from short with minimal curvature to much larger with a distinct curl. The average faun ranges from 4 feet to 6 ½ feet tall, but their height can change dramatically from one moment to the next based on their stance. The majority of fauns have proportionately long limbs, no matter their size or shape, and are known for their ability to deliver powerful blows with their split hooves. Fauns live for roughly 225 years, and as they age, their appearance can become increasingly goatlike.

FIRBOLG

Firbolgs are bovine humanoids typically recognized by their broad noses and long, drooping ears. Some have faces that are a blend of humanoid and bison, ox, cow, or other bovine creatures. Others, often referred to as minotaurs, have heads that entirely resemble cattle. They are tall and muscular creatures, with heights ranging from around 5 feet to 7 feet, and possess remarkable strength no matter their age. Some firbolgs are known to use this strength to charge their adversaries, an action that is particuarly effective for those who have one of the many varieties of horn styles commonly found in this ancestry. Though their unique characteristics can vary, all firbolgs are covered in fur, which can be muted and earth-toned in color, or come in a variety of pastels, such as soft pinks and blues. On average, firbolgs live for about 150 years.

FUNGRIL

Fungril resemble humanoid mushrooms. They can be either more humanoid or more fungal in appearance, and they come in an assortment of colors, from earth tones to bright reds, yellows, purples, and blues. Fungril display an incredible variety of bodies, faces, and limbs, as there’s no single common shape among them. Even their heights range from a tiny 2 feet tall to a staggering 7 feet tall. While the common lifespan of a fungril is about 300 years, some have been reported to live much longer. They can communicate nonverbally, and many members of this ancestry use a mycelial array to chemically exchange information with other fungril across long distances.

GALAPA

Galapa resemble anthropomorphic turtles with large, domed shells into which they can retract. On average, they range from 4 feet to 6 feet in height, and their head and body shapes can resemble any type of turtle. Galapa come in a variety of earth tones—most often shades of green and brown— and possess unique patterns on their shells. Members of this ancestry can draw their head, arms, and legs into their shell for protection to use it as a natural shield when defensive measures are needed. Some supplement their shell's strength or appearance by attaching armor or carving unique designs, but the process is exceedingly painful. Most galapa move slowly no matter their age, and they can live approximately 150 years.

GIANT

Giants are towering humanoids with broad shoulders, long arms, and one to three eyes. Adult giants range from 6 ½ to 8 ½ feet tall and are naturally muscular, regardless of body type. They are easily recognized by their wide frames and elongated arms and necks. Though they can have up to three eyes, all giants are born with none and remain sightless for their first year of life. Until a giant reaches the age of 10 and their features fully develop, the formation of their eyes may fluctuate. Those with a single eye are commonly known as cyclops. The average giant lifespan is about 75 years.

GOBLIN

Goblins are small humanoids easily recognizable by their large eyes and massive membranous ears. With keen hearing and sharp eyesight, they perceive details both at great distances and in darkness, allowing them to move through less-optimal environments with ease. Their skin and eye colors are incredibly varied, with no one hue, either vibrant or subdued, more dominant than another. A typical goblin stands between 3 feet and 4 feet tall, and each of their ears is about the size of their head. Goblins are known to use ear positions to very specific effect when communicating nonverbally. A goblin’s lifespan is roughly 100 years, and many maintain their keen hearing and sight well into advanced age.

HALFLING

Halflings are small humanoids with large hairy feet and prominent rounded ears. On average, halflings are 3 to 4 feet in height, and their ears, nose, and feet are larger in proportion to the rest of their body. Members of this ancestry live for around 150 years, and a halfling’s appearance is likely to remain youthful even as they progress from adulthood into old age. Halflings are naturally attuned to the magnetic fields of the Mortal Realm, granting them a strong internal compass. They also possess acute senses of hearing and smell, and can often detect those who are familiar to them by the sound of their movements.

HUMAN

Humans are most easily recognized by their dexterous hands, rounded ears, and bodies built for endurance. Their average height ranges from just under 5 feet to about 6 ½ feet. They have a wide variety of builds, with some being quite broad, others lithe, and many inhabiting the spectrum in between. Humans are physically adaptable and adjust to harsh climates with relative ease. In general, humans live to an age of about 100, with their bodies changing dramatically between their youngest and oldest years.

INFERNIS

Infernis are humanoids who possess sharp canine teeth, pointed ears, and horns. They are the descendants of demons from the Circles Below. On average, infernis range in height from 5 feet to 7 feet and are known to have long fingers and pointed nails. Some have long, thin, and smooth tails that end in points, forks, or arrowheads. It’s common for infernis to have two or four horns—though some have crowns of many horns, or only one. These horns can also grow asymmetrically, forming unique, often curving, shapes that infernis enhance with carving and ornamentation. Their skin, hair, and horns come in an assortment of colors that can include soft pastels, stark tones, or vibrant hues, such as rosy scarlet, deep purple, and pitch black.

Infernis possess a “dread visage” that manifests both involuntarily, such as when they experience fear or other strong emotions, or purposefully, such as when they wish to intimidate an adversary. This visage can briefly modify their appearance in a variety of ways, including lengthening their teeth and nails, changing the colors of their eyes, twisting their horns, or enhancing their height. On average, infernis live up to 350 years, with some attributing this lifespan to their demonic lineage.

KATARI

Katari are feline humanoids with retractable claws, vertically slit pupils, and high, triangular ears. They can also have small, pointed canine teeth, soft fur, and long whiskers that assist their perception and navigation. Their ears can swivel nearly 180 degrees to detect sound, adding to their heightened senses. Katari may look more or less feline or humanoid, with catlike attributes in the form of hair, whiskers, and a muzzle. About half of the katari population have tails. Their skin and fur come in a wide range of hues and patterns, including solid colors, calico tones, tabby stripes, and an array of spots, patches, marbling, or bands. Their height ranges from about 3 feet to 6 ½ feet, and they live to around 150 years.

ORC

Orcs are humanoids most easily recognized by their square features and boar-like tusks that protrude from their lower jaw. Tusks come in various sizes, and though they extend from the mouth, they aren’t used for consuming food. Instead, many orcs choose to decorate their tusks with significant ornamentation. Orcs typically live for 125 years, and unless altered, their tusks continue to grow throughout the course of their lives. Their ears are pointed, and their hair and skin typically have green, blue, pink, or gray tones. Orcs tend toward a muscular build, and their average height ranges from 5 feet to 6 ½ feet.

RIBBET

Ribbets resemble anthropomorphic frogs with protruding eyes and webbed hands and feet. They have smooth (though sometimes warty) moist skin and eyes positioned on either side of their head. Some ribbets have hind legs more than twice the length of their torso, while others have short limbs. No matter their size (which ranges from about 3 feet to 4 ½ feet), ribbets primarily move by hopping. All ribbets have webbed appendages, allowing them to swim with ease. Some ribbets possess a natural green-and-brown camouflage, while others are vibrantly colored with bold patterns. No matter their appearance, all ribbets are born from eggs laid in the water, hatch into tadpoles, and after about 6 to 7 years, grow into amphibians that can move around on land. Ribbets live for approximately 100 years.

SIMIAH

Simiah resemble anthropomorphic monkeys and apes with long limbs and prehensile feet. While their appearance reflects all simian creatures, from the largest gorilla to the smallest marmoset, their size does not align with their animal counterparts, and they can be anywhere from 2 to 6 feet tall. All simiah can use their dexterous feet for nonverbal communication, work, and combat. Additionally, some also have prehensile tails that can grasp objects or help with balance during difficult maneuvers. These traits grant members of this ancestry unique agility that aids them in a variety of physical tasks. In particular, simiah are skilled climbers and can easily transition from bipedal movement to knuckle-walking and climbing, and back again. On average, simiah live for about 100 years.

MIXED ANCESTRY

Families within the world of Daggerheart are as unique as the peoples and cultures that inhabit it. Anyone’s appearance and abilities can be shaped by blood, magic, proximity, or a variety of other factors.

If you decide that your character is a descendant of multiple ancestries and you want to mechanically represent that in the game, use the steps below:

  1. Determine Ancestry Combination

    When you choose an ancestry at character creation, write down how your character identifies themself in the Heritage section of your character sheet. For example, if your character is descended from both goblins and orcs, you could use a hybridized term, such as “goblin-orc,” to describe your ancestry, list only the ancestry you more closely identify with (e.g., just “goblin” or just “orc”), or invent a new term, such as “toothling.”

  2. Choose Ancestry Features

    Work with your GM to choose two features from the ancestries in your character’s lineage. You must choose the first feature from one ancestry and the second from another. Write both down on a notecard you can keep with your other cards or next to your character sheet.


For example, if you are making a goblin-orc, you might take the “Surefooted” and “Tusks” features or the “Sturdy” and “Danger Sense” features. You can’t take both the “Surefooted” and “Sturdy” features, because these are both the first features listed on their respective ancestry cards.


Your character's heritage might include more than two ancestries, but you still only choose features from two. You can represent additional ancestries through their appearance or backstory.

COMMUNITIES

Communities represent a key aspect of the culture, class, or environment of origin that has had the most influence over your character’s upbringing.

Your character’s community grants them a community feature. Each community card also lists six adjectives you can use as inspiration to create your character’s personality, their relationship to their peers, their attitude toward their upbringing, or the demeanor with which they interact with the rest of the party.

HIGHBORNE

Being part of a highborne community means you're accustomed to a life of elegance, opulence, and prestige within the upper echelons of society. Traditionally, members of a highborne community possess incredible material wealth. While this can take a variety of forms depending on the community—including gold and other minerals, land, or controlling the means of production—this status always comes with power and influence. Highborne place great value on titles and possessions, and there is little social mobility within their ranks. Members of a highborne community often control the political and economic status of the areas in which they live due to their ability to influence people and the economy with their substantial wealth. The health and safety of the less affluent people who live in these locations often hinges on the ability of this highborne ruling class to prioritize the well-being of their subjects over profit.

Highborne are often amiable, candid, conniving, enterprising, ostentatious, and unflappable.

LOREBORNE

Being part of a loreborne community means you’re from a society that favors strong academic or political prowess. Loreborne communities highly value knowledge, frequently in the form of historical preservation, political advancement, scientific study, skill development, or lore and mythology compilation. Most members of these communities research in institutions built in bastions of civilization, while some eclectic few thrive in gathering information from the natural world. Some may be isolationists, operating in smaller enclaves, schools, or guilds and following their own unique ethos. Others still wield their knowledge on a larger scale, making deft political maneuvers across governmental landscapes.

Loreborne are often direct, eloquent, inquisitive, patient, rhapsodic, and witty.

ORDERBORNE

Being part of an orderborne community means you’re from a collective that focuses on discipline or faith, and you uphold a set of principles that reflect your experience there. Orderborne are frequently some of the most powerful among the surrounding communities. By aligning the members of their society around a common value or goal, such as a god, doctrine, ethos, or even a shared business or trade, the ruling bodies of these enclaves can mobilize larger populations with less effort. While orderborne communities take a variety of forms—some even profoundly pacifistic—perhaps the most feared are those that structure themselves around military prowess. In such a case, it’s not uncommon for orderborne to provide soldiers for hire to other cities or countries.

Orderborne are often ambitious, benevolent, pensive, prudent, sardonic, and stoic.

RIDGEBORNE

Being part of a ridgeborne community means you’ve called the rocky peaks and sharp cliffs of the mountainside home. Those who’ve lived in the mountains often consider themselves hardier than most because they’ve thrived among the most dangerous terrain many continents have to offer. These groups are adept at adaptation, developing unique technologies and equipment to move both people and products across difficult terrain. As such, ridgeborne grow up scrambling and climbing, making them sturdy and strong-willed. Ridgeborne localities appear in a variety of forms—some cities carve out entire cliff faces, others construct castles of stone, and still more live in small homes on windblown peaks. Outside forces often struggle to attack ridgeborne groups, as the small militias and large military forces of the mountains are adept at utilizing their high-ground advantage.

Ridgeborne are often bold, hardy, indomitable, loyal, reserved, and stubborn.

SEABORNE

Being part of a seaborne community means you lived on or near a large body of water. Seaborne communities are built, both physically and culturally, around the specific waters they call home. Some of these groups live along the shore, constructing ports for locals and travelers alike. These harbors function as centers of commerce, tourist attractions, or even just a safe place to lay down one’s head after weeks of travel. Other seaborne live on the water in small boats or large ships, with the idea of “home” comprising a ship and its crew, rather than any one landmass. No matter their exact location, seaborne communities are closely tied to the ocean tides and the creatures who inhabit them. Seaborne learn to fish at a young age, and train from birth to hold their breath and swim in even the most tumultuous waters. Individuals from these groups are highly sought after for their sailing skills, and many become captains of vessels, whether within their own community, working for another, or even at the helm of a powerful naval operation.

Seaborne are often candid, cooperative, exuberant, fierce, resolute, and weathered.

SLYBORNE

Being part of a slyborne community means you come from a group that operates outside the law, including all manner of criminals, grifters, and con artists. Members of slyborne communities are brought together by their disreputable goals and their clever means of achieving them. Many people in these communities have an array of unscrupulous skills: forging, thievery, smuggling, and violence. People of any social class can be slyborne, from those who have garnered vast wealth and influence to those without a coin to their name. To the outside eye, slyborne might appear to be ruffians with no loyalty, but these communities possess some of the strictest codes of honor which, when broken, can result in a terrifying end for the transgressor.

Slyborne are often calculating, clever, formidable, perceptive, shrewd, and tenacious.

UNDERBORNE

Being part of an underborne community means you’re from a subterranean society. Many underborne live right beneath the cities and villages of other collectives, while some live much deeper. These communities range from small family groups in burrows to massive metropolises in caverns of stone. In many locales, underborne are recognized for their incredible boldness and skill that enable great feats of architecture and engineering. Underborne are regularly hired for their bravery, as even the least daring among them has likely encountered formidable belowground beasts, and learning to dispatch such creatures is common practice amongst these societies. Because of the dangers of their environment, many underborne communities develop unique nonverbal languages that prove equally useful on the surface.

Underborne are often composed, elusive, indomitable, innovative, resourceful, and unpretentious.

WANDERBORNE

Being part of a wanderborne community means you’ve lived as a nomad, forgoing a permanent home and experiencing a wide variety of cultures. Unlike many communities that are defined by their locale, wanderborne are defined by their traveling lifestyle. Because of their frequent migration, wanderborne put less value on the accumulation of material possessions in favor of acquiring information, skills, and connections. While some wanderborne are allied by a common ethos, such as a religion or a set of political or economic values, others come together after shared tragedy, such as the loss of their home or land. No matter the reason, the dangers posed by life on the road and the choice to continue down that road together mean that wanderborne are known for their unwavering loyalty.

Wanderborne are often inscrutable, magnanimous, mirthful, reliable, savvy, and unorthodox.

WILDBORNE

Being part of a wildborne community means you lived deep within the forest. Wildborne communities are defined by their dedication to the conservation of their homelands, and many have strong religious or cultural ties to the fauna they live among. This results in unique architectural and technological advancements that favor sustainability over short-term, high-yield results. It is a hallmark of wildborne societies to integrate their villages and cities with the natural environment and avoid disturbing the lives of the plants and animals. While some construct their lodgings high in the branches of trees, others establish their homes on the ground beneath the forest canopy. It’s not uncommon for wildborne to remain reclusive and hidden within their woodland homes.

Wildborne are often hardy, loyal, nurturing, reclusive, sagacious, and vibrant.

" + "content": "

DOMAINS

The Daggerheart core set includes 9 Domain Decks, each comprising a collection of cards granting features or special abilities expressing a particular theme.

The 9 Domains are:

ARCANA

Arcana is the domain of innate and instinctual magic. Those who choose this path tap into the raw, enigmatic forces of the realms to manipulate both their own energy and the elements.

Arcana offers wielders a volatile power, but it is incredibly potent when correctly channeled.

The Arcana domain can be accessed by the Druid and Sorcerer classes.

BLADE

Blade is the domain of weapon mastery. Whether by steel, bow, or perhaps a more specialized arm, those who follow this path have the skill to cut short the lives of others. Wielders of Blade dedicate themselves to achieving inexorable power over death.

The Blade domain can be accessed by the Guardian and Warrior classes.

BONE

Bone is the domain of tactics and the body. Practitioners of this domain have an uncanny control over their own physical abilities and an eye for predicting the behaviors of others in combat. Adherents to Bone gain an unparalleled understanding of bodies and their movements.

The Bone domain can be accessed by the Ranger & Warrior classes.

CODEX

Codex is the domain of intensive magical study. Those who seek magical knowledge turn to the equations of power recorded in books, written on scrolls, etched into walls, or tattooed on bodies. Codex offers a commanding and versatile understanding of magic to devotees who pursue knowledge beyond the boundaries of common wisdom.

The Codex domain can be accessed by the Bard and Wizard classes.

GRACE

Grace is the domain of charisma. Through rapturous storytelling, charming spells, or a shroud of lies, those who channel this power define the realities of their adversaries, bending perception to their will. Grace offers its wielders raw magnetism and mastery over language.

The Grace domain can be accessed by the Bard and Rogue classes

MIDNIGHT

Midnight is the domain of shadows and secrecy. Whether by clever tricks, deft magic, or the cloak of night, those who channel these forces practice the art of obscurity and can uncover sequestered treasures. Midnight offers practitioners the power to control and create enigmas.

The Midnight domain can be access by the Rogue and Sorcerer classes.

SAGE

Sage is the domain of the natural world. Those who walk this path tap into the unfettered power of the earth and its creatures to unleash raw magic. Sage grants its adherents the vitality of a blooming flower and the ferocity of a ravenous predator.

The Sage domain can be accessed by the Druid and Ranger classes.

SPLENDOR

Splendor is the domain of life. Through this magic, followers gain the ability to heal and, to an extent, control death. Splendor offers its disciples the magnificent ability to both give and end life.

The Splendor domain can be accessed by the Seraph and Wizard classes.

VALOR

Valor is the domain of protection. Whether through attack or defense, those who choose this discipline channel formidable strength to protect their allies in battle. Valor offers great power to those who raise their shields in defense of others.

The Valor domain can be accessed by the Guardian and Seraph classes.

CLASS DOMAINS

Each class grants access to two domains:

  • Bard: Codex & Grace

  • Druid: Arcana & Sage

  • Guardian: Blade & Valor

  • Ranger: Bone & Sage

  • Rogue: Grace & Midnight

  • Seraph: Splendor & Valor

  • Sorcerer: Arcana & Midnight

  • Warrior: Blade & Bone

  • Wizard: Codex & Splendor

PCs acquire two 1st-level domain cards at character creation and an additional domain card at or below their level each time they level up.

DOMAIN CARDS

Each domain card provides one or more features your PC can utilize during their adventures. Some domain cards provide moves you can make, such as a unique attack or a spell. Others offer passive effects, new downtime or social encounter abilities, or one-time benefits.

DOMAIN CARD ANATOMY

Each domain card includes six elements:

  • Level

    The number in the top left of the card indicates the card’s level. You cannot acquire a domain card with a level higher than your PC’s.

  • Domain

    Beneath the card’s level there is a symbol indicating its domain. You can only choose cards from your class’s two domains.

  • Recall Cost

    The number and lightning bolt in the top right of the card shows its Recall Cost. This is the amount of Stress a player must mark to swap this card from their vault with a card from their loadout.

Note: A player can swap domain cards during downtime without paying the domain card’s Recall Cost.

  • Title

    The name of the card.

  • Type

    The card’s type is listed in the center above the title. There are three types of domain cards: abilities, spells, and grimoires. Abilities are typically non-magical in nature, while spells are magical. Grimoires are unique to the Codex domain and grant access to a collection of less potent spells. Some game mechanics only apply to certain types of cards.

  • Feature

    The text on the bottom half of the card describes its feature(s), including any special rules you need to follow when you use that card.

LOADOUT & VAULT

Your loadout is the set of acquired domain cards whose effects your PC can use during play. You can have up to 5 domain cards in your loadout at one time. Once you’ve acquired six or more domain cards, you must choose five to keep in your loadout; the rest are considered to be in your vault. Vault cards are inactive and do not influence play

Note: Your subclass, ancestry, and community cards don’t count toward your loadout or vault and are always active and available.

At the start of a rest, before using downtime moves, you can freely move cards between your loadout and your vault, so long as your loadout doesn’t exceed its five-card maximum.

To move a card from your vault to your loadout at any other time, you must mark a number of Stress equal to the vaulted card’s Recall Cost (located in the top right of the card next to the lightning bolt symbol). If your loadout is already full, you must also move a card from your loadout to your vault to make space, though you can do this at no cost.

When you gain a new domain card at level-up, you can immediately move it into your loadout for free. If your loadout is already full, you must also move a card from your loadout to your vault to make space.

USAGE LIMITS

If a domain card restricts how often it can be used, you can track such limits with whatever method you prefer, such as turning the card sideways, flipping it facedown, or using tokens.

Note: if an effect or ability gives you a number of uses equal to a trait with a modifier of +0 or less, it grants you 0 uses.

CLASSES

A class is a role-based archetype that determines a PC’s:

  • Access to Domains: Each class grants access to two domains; players choose cards from these domains during character creation and when leveling up.

  • Starting Evasion and Hit Points (HP)

  • Starting Items

  • Class Feature(s)

  • Class Hope Feature, a class feature that costs 3 Hope to activate.

There are 9 classes in the Daggerheart core materials: Bard, Druid, Guardian, Ranger, Rogue, Seraph, Sorcerer, Warrior, and Wizard.

SUBCLASSES

Each class is divided into two subclasses, each of which further defines and highlights one aspect of its class archetype. Your chosen subclass grants the following:

  • Spellcast Trait: the trait used on all Spellcast rolls.

  • Foundation Feature: a unique starting feature that establishes the identity and strengths of the subclass.

  • Specialization Feature: an advanced feature that can be gained on level up. For some subclasses, the specialization feature grants a new ability; for others, it expands or enhances a feature you already acquired through a class or subclass.

  • Mastery Feature: The mastery feature is a subclass’s most powerful feature, which can be gained at higher levels.

For some subclasses, the mastery feature unlocks an extraordinary new ability; for others, it’s the impressive culmination of their subclass’s core feature.

The Daggerheart core set includes cards detailing each foundation, specialization, and mastery feature. When you acquire one of these features, take its card for use as a reference during play.

ANCESTRIES

Ancestries represent your character’s lineage, which affects their physical appearance and access to certain special abilities. The following section describes each ancestry in Daggerheart and the characteristics generally shared by members of that ancestry, however, each player decides how much their character aligns with the “standard” or “average” expression of their ancestry.

In Daggerheart, the term “people” is used to refer to all ancestries, as individuals from all lineages possess unique characteristics and cultures, as well as personhood.

Some ancestries are described using the term “humanoid.” This does not imply any genetic relation to “humans,” which is a distinct ancestry within Daggerheart. Instead, it refers to the set of physical characteristics humans will recognize from their own anatomy, such as bipedal movement, upright posture, facial layout, and more. These traits vary by ancestry and individual, though “humanoid” should still provide a useful frame of reference.

The core ruleset includes the following ancestries: Clank, Drakona, Dwarf, Elf, Faerie, Faun, Firbolg, Fungril, Galapa, Giant, Goblin, Halfling, Human, Infernis, Katari, Orc, Ribbet, Simiah, and Mixed Ancestry.

ANCESTRY FEATURES

Each ancestry grants two ancestry features. While some features (such as the ability to fly) are implicitly tied to an ancestry’s anatomy, players determine their characters’ physical form. Work with the GM to re-flavor any implied traits that don’t align with your character concept. If you’d like to make a character who combines more than one ancestry, see “Mixed Ancestry.”

CLANK

Clanks are sentient mechanical beings built from a variety of materials, including metal, wood, and stone. They can resemble humanoids, animals, or even inanimate objects. Like organic beings, their bodies come in a wide array of sizes. Because of their bespoke construction, many clanks have highly specialized physical configurations. Examples include clawed hands for grasping, wheels for movement, or built-in weaponry.

Many clanks embrace body modifications for style as well as function, and members of other ancestries often turn to clank artisans to construct customized mobility aids and physical adornments. Other ancestries can create clanks, even using their own physical characteristics as inspiration, but it’s also common for clanks to build one another. A clank’s lifespan extends as long as they’re able to acquire or craft new parts, making their physical form effectively immortal. That said, their minds are subject to the effects of time, and deteriorate as the magic that powers them loses potency.

DRAKONA

Drakona resemble wingless dragons in humanoid form and possess a powerful elemental breath. All drakona have thick scales that provide excellent natural armor against both attacks and the forces of nature. They are large in size, ranging from 5 feet to 7 feet on average, with long sharp teeth. New teeth grow throughout a Drakona’s approximately 350-year lifespan, so they are never in danger of permanently losing an incisor. Unlike their dragon ancestors, drakona don’t have wings and can’t fly without magical aid. Members of this ancestry pass down the element of their breath through generations, though in rare cases, a drakona’s elemental power will differ from the rest of their family’s.

DWARF

Dwarves are most easily recognized as short humanoids with square frames, dense musculature, and thick hair. Their average height ranges from 4 to 5 ½ feet, and they are often broad in proportion to their stature. Their skin and nails contain a high amount of keratin, making them naturally resilient. This allows dwarves to embed gemstones into their bodies and decorate themselves with tattoos or piercings. Their hair grows thickly—usually on their heads, but some dwarves have thick hair across their bodies as well. Dwarves of all genders can grow facial hair, which they often style in elaborate arrangements. Typically, dwarves live up to 250 years of age, maintaining their muscle mass well into later life.

ELF

Elves are typically tall humanoids with pointed ears and acutely attuned senses. Their ears vary in size and pointed shape, and as they age, the tips begin to droop. While elves come in a wide range of body types, they are all fairly tall, with heights ranging from about 6 to 6 ½ feet. All elves have the ability to drop into a celestial trance, rather than sleep. This allows them to rest effectively in a short amount of time.

Some elves possess what is known as a “mystic form,” which occurs when an elf has dedicated themself to the study or protection of the natural world so deeply that their physical form changes. These characteristics can include celestial freckles, the presence of leaves, vines, or flowers in their hair, eyes that flicker like fire, and more. Sometimes these traits are inherited from parents, but if an elf changes their environment or magical focus, their appearance changes over time. Because elves live for about 350 years, these traits can shift more than once throughout their lifespan.

FAERIE

Faeries are winged humanoid creatures with insectile features. These characteristics cover a broad spectrum from humanoid to insectoid—some possess additional arms, compound eyes, lantern organs, chitinous exoskeletons, or stingers. Because of their close ties to the natural world, they also frequently possess attributes that allow them to blend in with various plants. The average height of a faerie ranges from about 2 feet to 5 feet, but some faeries grow up to 7 feet tall. All faeries possess membranous wings and they each go through a process of metamorphosis. The process and changes differ from faerie to faerie, but during this transformation each individual manifests the unique appearance they will carry throughout the rest of their approximately 50-year lifespan.

FAUN

Fauns resemble humanoid goats with curving horns, square pupils, and cloven hooves. Though their appearances may vary, most fauns have a humanoid torso and a goatlike lower body covered in dense fur. Faun faces can be more caprine or more humanlike, and they have a wide variety of ear and horn shapes. Faun horns range from short with minimal curvature to much larger with a distinct curl. The average faun ranges from 4 feet to 6 ½ feet tall, but their height can change dramatically from one moment to the next based on their stance. The majority of fauns have proportionately long limbs, no matter their size or shape, and are known for their ability to deliver powerful blows with their split hooves. Fauns live for roughly 225 years, and as they age, their appearance can become increasingly goatlike.

FIRBOLG

Firbolgs are bovine humanoids typically recognized by their broad noses and long, drooping ears. Some have faces that are a blend of humanoid and bison, ox, cow, or other bovine creatures. Others, often referred to as minotaurs, have heads that entirely resemble cattle. They are tall and muscular creatures, with heights ranging from around 5 feet to 7 feet, and possess remarkable strength no matter their age. Some firbolgs are known to use this strength to charge their adversaries, an action that is particuarly effective for those who have one of the many varieties of horn styles commonly found in this ancestry. Though their unique characteristics can vary, all firbolgs are covered in fur, which can be muted and earth-toned in color, or come in a variety of pastels, such as soft pinks and blues. On average, firbolgs live for about 150 years.

FUNGRIL

Fungril resemble humanoid mushrooms. They can be either more humanoid or more fungal in appearance, and they come in an assortment of colors, from earth tones to bright reds, yellows, purples, and blues. Fungril display an incredible variety of bodies, faces, and limbs, as there’s no single common shape among them. Even their heights range from a tiny 2 feet tall to a staggering 7 feet tall. While the common lifespan of a fungril is about 300 years, some have been reported to live much longer. They can communicate nonverbally, and many members of this ancestry use a mycelial array to chemically exchange information with other fungril across long distances.

GALAPA

Galapa resemble anthropomorphic turtles with large, domed shells into which they can retract. On average, they range from 4 feet to 6 feet in height, and their head and body shapes can resemble any type of turtle. Galapa come in a variety of earth tones—most often shades of green and brown— and possess unique patterns on their shells. Members of this ancestry can draw their head, arms, and legs into their shell for protection to use it as a natural shield when defensive measures are needed. Some supplement their shell's strength or appearance by attaching armor or carving unique designs, but the process is exceedingly painful. Most galapa move slowly no matter their age, and they can live approximately 150 years.

GIANT

Giants are towering humanoids with broad shoulders, long arms, and one to three eyes. Adult giants range from 6 ½ to 8 ½ feet tall and are naturally muscular, regardless of body type. They are easily recognized by their wide frames and elongated arms and necks. Though they can have up to three eyes, all giants are born with none and remain sightless for their first year of life. Until a giant reaches the age of 10 and their features fully develop, the formation of their eyes may fluctuate. Those with a single eye are commonly known as cyclops. The average giant lifespan is about 75 years.

GOBLIN

Goblins are small humanoids easily recognizable by their large eyes and massive membranous ears. With keen hearing and sharp eyesight, they perceive details both at great distances and in darkness, allowing them to move through less-optimal environments with ease. Their skin and eye colors are incredibly varied, with no one hue, either vibrant or subdued, more dominant than another. A typical goblin stands between 3 feet and 4 feet tall, and each of their ears is about the size of their head. Goblins are known to use ear positions to very specific effect when communicating nonverbally. A goblin’s lifespan is roughly 100 years, and many maintain their keen hearing and sight well into advanced age.

HALFLING

Halflings are small humanoids with large hairy feet and prominent rounded ears. On average, halflings are 3 to 4 feet in height, and their ears, nose, and feet are larger in proportion to the rest of their body. Members of this ancestry live for around 150 years, and a halfling’s appearance is likely to remain youthful even as they progress from adulthood into old age. Halflings are naturally attuned to the magnetic fields of the Mortal Realm, granting them a strong internal compass. They also possess acute senses of hearing and smell, and can often detect those who are familiar to them by the sound of their movements.

HUMAN

Humans are most easily recognized by their dexterous hands, rounded ears, and bodies built for endurance. Their average height ranges from just under 5 feet to about 6 ½ feet. They have a wide variety of builds, with some being quite broad, others lithe, and many inhabiting the spectrum in between. Humans are physically adaptable and adjust to harsh climates with relative ease. In general, humans live to an age of about 100, with their bodies changing dramatically between their youngest and oldest years.

INFERNIS

Infernis are humanoids who possess sharp canine teeth, pointed ears, and horns. They are the descendants of demons from the Circles Below. On average, infernis range in height from 5 feet to 7 feet and are known to have long fingers and pointed nails. Some have long, thin, and smooth tails that end in points, forks, or arrowheads. It’s common for infernis to have two or four horns—though some have crowns of many horns, or only one. These horns can also grow asymmetrically, forming unique, often curving, shapes that infernis enhance with carving and ornamentation. Their skin, hair, and horns come in an assortment of colors that can include soft pastels, stark tones, or vibrant hues, such as rosy scarlet, deep purple, and pitch black.

Infernis possess a “dread visage” that manifests both involuntarily, such as when they experience fear or other strong emotions, or purposefully, such as when they wish to intimidate an adversary. This visage can briefly modify their appearance in a variety of ways, including lengthening their teeth and nails, changing the colors of their eyes, twisting their horns, or enhancing their height. On average, infernis live up to 350 years, with some attributing this lifespan to their demonic lineage.

KATARI

Katari are feline humanoids with retractable claws, vertically slit pupils, and high, triangular ears. They can also have small, pointed canine teeth, soft fur, and long whiskers that assist their perception and navigation. Their ears can swivel nearly 180 degrees to detect sound, adding to their heightened senses. Katari may look more or less feline or humanoid, with catlike attributes in the form of hair, whiskers, and a muzzle. About half of the katari population have tails. Their skin and fur come in a wide range of hues and patterns, including solid colors, calico tones, tabby stripes, and an array of spots, patches, marbling, or bands. Their height ranges from about 3 feet to 6 ½ feet, and they live to around 150 years.

ORC

Orcs are humanoids most easily recognized by their square features and boar-like tusks that protrude from their lower jaw. Tusks come in various sizes, and though they extend from the mouth, they aren’t used for consuming food. Instead, many orcs choose to decorate their tusks with significant ornamentation. Orcs typically live for 125 years, and unless altered, their tusks continue to grow throughout the course of their lives. Their ears are pointed, and their hair and skin typically have green, blue, pink, or gray tones. Orcs tend toward a muscular build, and their average height ranges from 5 feet to 6 ½ feet.

RIBBET

Ribbets resemble anthropomorphic frogs with protruding eyes and webbed hands and feet. They have smooth (though sometimes warty) moist skin and eyes positioned on either side of their head. Some ribbets have hind legs more than twice the length of their torso, while others have short limbs. No matter their size (which ranges from about 3 feet to 4 ½ feet), ribbets primarily move by hopping. All ribbets have webbed appendages, allowing them to swim with ease. Some ribbets possess a natural green-and-brown camouflage, while others are vibrantly colored with bold patterns. No matter their appearance, all ribbets are born from eggs laid in the water, hatch into tadpoles, and after about 6 to 7 years, grow into amphibians that can move around on land. Ribbets live for approximately 100 years.

SIMIAH

Simiah resemble anthropomorphic monkeys and apes with long limbs and prehensile feet. While their appearance reflects all simian creatures, from the largest gorilla to the smallest marmoset, their size does not align with their animal counterparts, and they can be anywhere from 2 to 6 feet tall. All simiah can use their dexterous feet for nonverbal communication, work, and combat. Additionally, some also have prehensile tails that can grasp objects or help with balance during difficult maneuvers. These traits grant members of this ancestry unique agility that aids them in a variety of physical tasks. In particular, simiah are skilled climbers and can easily transition from bipedal movement to knuckle-walking and climbing, and back again. On average, simiah live for about 100 years.

MIXED ANCESTRY

Families within the world of Daggerheart are as unique as the peoples and cultures that inhabit it. Anyone’s appearance and abilities can be shaped by blood, magic, proximity, or a variety of other factors.

If you decide that your character is a descendant of multiple ancestries and you want to mechanically represent that in the game, use the steps below:

  1. Determine Ancestry Combination

    When you choose an ancestry at character creation, write down how your character identifies themself in the Heritage section of your character sheet. For example, if your character is descended from both goblins and orcs, you could use a hybridized term, such as “goblin-orc,” to describe your ancestry, list only the ancestry you more closely identify with (e.g., just “goblin” or just “orc”), or invent a new term, such as “toothling.”

  2. Choose Ancestry Features

    Work with your GM to choose two features from the ancestries in your character’s lineage. You must choose the first feature from one ancestry and the second from another. Write both down on a notecard you can keep with your other cards or next to your character sheet.


For example, if you are making a goblin-orc, you might take the “Surefooted” and “Tusks” features or the “Sturdy” and “Danger Sense” features. You can’t take both the “Surefooted” and “Sturdy” features, because these are both the first features listed on their respective ancestry cards.


Your character's heritage might include more than two ancestries, but you still only choose features from two. You can represent additional ancestries through their appearance or backstory.

COMMUNITIES

Communities represent a key aspect of the culture, class, or environment of origin that has had the most influence over your character’s upbringing.

Your character’s community grants them a community feature. Each community card also lists six adjectives you can use as inspiration to create your character’s personality, their relationship to their peers, their attitude toward their upbringing, or the demeanor with which they interact with the rest of the party.

HIGHBORNE

Being part of a highborne community means you're accustomed to a life of elegance, opulence, and prestige within the upper echelons of society. Traditionally, members of a highborne community possess incredible material wealth. While this can take a variety of forms depending on the community—including gold and other minerals, land, or controlling the means of production—this status always comes with power and influence. Highborne place great value on titles and possessions, and there is little social mobility within their ranks. Members of a highborne community often control the political and economic status of the areas in which they live due to their ability to influence people and the economy with their substantial wealth. The health and safety of the less affluent people who live in these locations often hinges on the ability of this highborne ruling class to prioritize the well-being of their subjects over profit.

Highborne are often amiable, candid, conniving, enterprising, ostentatious, and unflappable.

LOREBORNE

Being part of a loreborne community means you’re from a society that favors strong academic or political prowess. Loreborne communities highly value knowledge, frequently in the form of historical preservation, political advancement, scientific study, skill development, or lore and mythology compilation. Most members of these communities research in institutions built in bastions of civilization, while some eclectic few thrive in gathering information from the natural world. Some may be isolationists, operating in smaller enclaves, schools, or guilds and following their own unique ethos. Others still wield their knowledge on a larger scale, making deft political maneuvers across governmental landscapes.

Loreborne are often direct, eloquent, inquisitive, patient, rhapsodic, and witty.

ORDERBORNE

Being part of an orderborne community means you’re from a collective that focuses on discipline or faith, and you uphold a set of principles that reflect your experience there. Orderborne are frequently some of the most powerful among the surrounding communities. By aligning the members of their society around a common value or goal, such as a god, doctrine, ethos, or even a shared business or trade, the ruling bodies of these enclaves can mobilize larger populations with less effort. While orderborne communities take a variety of forms—some even profoundly pacifistic—perhaps the most feared are those that structure themselves around military prowess. In such a case, it’s not uncommon for orderborne to provide soldiers for hire to other cities or countries.

Orderborne are often ambitious, benevolent, pensive, prudent, sardonic, and stoic.

RIDGEBORNE

Being part of a ridgeborne community means you’ve called the rocky peaks and sharp cliffs of the mountainside home. Those who’ve lived in the mountains often consider themselves hardier than most because they’ve thrived among the most dangerous terrain many continents have to offer. These groups are adept at adaptation, developing unique technologies and equipment to move both people and products across difficult terrain. As such, ridgeborne grow up scrambling and climbing, making them sturdy and strong-willed. Ridgeborne localities appear in a variety of forms—some cities carve out entire cliff faces, others construct castles of stone, and still more live in small homes on windblown peaks. Outside forces often struggle to attack ridgeborne groups, as the small militias and large military forces of the mountains are adept at utilizing their high-ground advantage.

Ridgeborne are often bold, hardy, indomitable, loyal, reserved, and stubborn.

SEABORNE

Being part of a seaborne community means you lived on or near a large body of water. Seaborne communities are built, both physically and culturally, around the specific waters they call home. Some of these groups live along the shore, constructing ports for locals and travelers alike. These harbors function as centers of commerce, tourist attractions, or even just a safe place to lay down one’s head after weeks of travel. Other seaborne live on the water in small boats or large ships, with the idea of “home” comprising a ship and its crew, rather than any one landmass. No matter their exact location, seaborne communities are closely tied to the ocean tides and the creatures who inhabit them. Seaborne learn to fish at a young age, and train from birth to hold their breath and swim in even the most tumultuous waters. Individuals from these groups are highly sought after for their sailing skills, and many become captains of vessels, whether within their own community, working for another, or even at the helm of a powerful naval operation.

Seaborne are often candid, cooperative, exuberant, fierce, resolute, and weathered.

SLYBORNE

Being part of a slyborne community means you come from a group that operates outside the law, including all manner of criminals, grifters, and con artists. Members of slyborne communities are brought together by their disreputable goals and their clever means of achieving them. Many people in these communities have an array of unscrupulous skills: forging, thievery, smuggling, and violence. People of any social class can be slyborne, from those who have garnered vast wealth and influence to those without a coin to their name. To the outside eye, slyborne might appear to be ruffians with no loyalty, but these communities possess some of the strictest codes of honor which, when broken, can result in a terrifying end for the transgressor.

Slyborne are often calculating, clever, formidable, perceptive, shrewd, and tenacious.

UNDERBORNE

Being part of an underborne community means you’re from a subterranean society. Many underborne live right beneath the cities and villages of other collectives, while some live much deeper. These communities range from small family groups in burrows to massive metropolises in caverns of stone. In many locales, underborne are recognized for their incredible boldness and skill that enable great feats of architecture and engineering. Underborne are regularly hired for their bravery, as even the least daring among them has likely encountered formidable belowground beasts, and learning to dispatch such creatures is common practice amongst these societies. Because of the dangers of their environment, many underborne communities develop unique nonverbal languages that prove equally useful on the surface.

Underborne are often composed, elusive, indomitable, innovative, resourceful, and unpretentious.

WANDERBORNE

Being part of a wanderborne community means you’ve lived as a nomad, forgoing a permanent home and experiencing a wide variety of cultures. Unlike many communities that are defined by their locale, wanderborne are defined by their traveling lifestyle. Because of their frequent migration, wanderborne put less value on the accumulation of material possessions in favor of acquiring information, skills, and connections. While some wanderborne are allied by a common ethos, such as a religion or a set of political or economic values, others come together after shared tragedy, such as the loss of their home or land. No matter the reason, the dangers posed by life on the road and the choice to continue down that road together mean that wanderborne are known for their unwavering loyalty.

Wanderborne are often inscrutable, magnanimous, mirthful, reliable, savvy, and unorthodox.

WILDBORNE

Being part of a wildborne community means you lived deep within the forest. Wildborne communities are defined by their dedication to the conservation of their homelands, and many have strong religious or cultural ties to the fauna they live among. This results in unique architectural and technological advancements that favor sustainability over short-term, high-yield results. It is a hallmark of wildborne societies to integrate their villages and cities with the natural environment and avoid disturbing the lives of the plants and animals. While some construct their lodgings high in the branches of trees, others establish their homes on the ground beneath the forest canopy. It’s not uncommon for wildborne to remain reclusive and hidden within their woodland homes.

Wildborne are often hardy, loyal, nurturing, reclusive, sagacious, and vibrant.

" }, "video": { "controls": true, diff --git a/styles/less/dialog/character-creation/tab-navigation.less b/styles/less/dialog/character-creation/tab-navigation.less index dbf285f6..709e0adc 100644 --- a/styles/less/dialog/character-creation/tab-navigation.less +++ b/styles/less/dialog/character-creation/tab-navigation.less @@ -3,59 +3,16 @@ .daggerheart.dh-style.dialog.character-creation { .tab-navigation { nav { - flex: 1; + border-bottom: 0; + border-top: 0; a { - flex: 1; - text-align: center; - display: flex; - justify-content: center; - position: relative; + font-family: @font-body; + color: light-dark(@dark-blue, @golden); - &.disabled { + &[disabled] { opacity: 0.4; } - - .nav-section-text { - position: relative; - display: flex; - align-items: center; - } - - .finish-marker { - position: absolute; - align-self: center; - top: -8px; - padding: 4px; - border: 1px solid; - border-radius: 50%; - height: 16px; - width: 16px; - font-size: 12px; - display: flex; - align-items: center; - justify-content: center; - background-color: var(--color-cool-4); - content: ''; - - &.active { - background-color: var(--color-warm-2); - } - } - - .descriptor { - position: absolute; - bottom: -8px; - font-size: 12px; - border-radius: 8px; - width: 56px; - text-align: center; - line-height: 1; - border: 1px solid light-dark(@dark-blue, @golden); - border-radius: 6px; - color: light-dark(@beige, @dark); - background-image: url(../assets/parchments/dh-parchment-light.png); - } } } } diff --git a/styles/less/dialog/downtime/downtime-container.less b/styles/less/dialog/downtime/downtime-container.less index 55fb5b70..fe1344cd 100644 --- a/styles/less/dialog/downtime/downtime-container.less +++ b/styles/less/dialog/downtime/downtime-container.less @@ -6,6 +6,12 @@ .downtime-container .activity-container .activity-selected-marker { background-image: url(../assets/parchments/dh-parchment-light.png); } + + .refreshables-container { + .refreshable-container { + background-image: url(../assets/parchments/dh-parchment-light.png); + } + } } .daggerheart.dh-style.views.downtime { diff --git a/styles/less/global/dice.less b/styles/less/global/dice.less index 075fa9b4..aecfdaee 100644 --- a/styles/less/global/dice.less +++ b/styles/less/global/dice.less @@ -9,13 +9,13 @@ &.xxs { height: 1rem; - font-size: .5rem; + font-size: 0.5rem; -webkit-text-stroke: 1px black; } &.xs { height: 1.5rem; - font-size: .75rem; + font-size: 0.75rem; } &.lg { @@ -29,7 +29,7 @@ } &.discarded { - opacity: .5; + opacity: 0.5; } &:before { @@ -40,7 +40,7 @@ z-index: -1; mask: var(--svg-die) no-repeat center; mask-size: contain; - background: linear-gradient(139.01deg, #EFE6D8 3.51%, #372E1F 96.49%); + background: linear-gradient(139.01deg, #efe6d8 3.51%, #372e1f 96.49%); } &.d4:before { @@ -63,18 +63,22 @@ } &.color-hope:before { - background: linear-gradient(139.01deg, #F3C267 3.51%, #4C3407 96.49%); + background: linear-gradient(139.01deg, #f3c267 3.51%, #4c3407 96.49%); } &.color-fear:before { - background: linear-gradient(151.21deg, #352AB2 7.21%, #18162E 92.79%); + background: linear-gradient(151.21deg, #352ab2 7.21%, #18162e 92.79%); } &.color-adv:before { - background: linear-gradient(139.01deg, #40A640 3.51%, #011B01 96.49%); + background: linear-gradient(139.01deg, #40a640 3.51%, #011b01 96.49%); } &.color-dis:before { - background: linear-gradient(139.01deg, #E54E4E 3.51%, #3C0000 82.19%); + background: linear-gradient(139.01deg, #e54e4e 3.51%, #3c0000 82.19%); } -} \ No newline at end of file + + &.coin:before { + border-radius: 50%; + } +} diff --git a/styles/less/global/inventory-item.less b/styles/less/global/inventory-item.less index e79a88c7..c4239d27 100644 --- a/styles/less/global/inventory-item.less +++ b/styles/less/global/inventory-item.less @@ -35,6 +35,37 @@ } } } + + &:hover { + .inventory-item-header .item-label .item-name .expanded-icon { + margin-left: 10px; + display: inline-block; + } + &:has(.inventory-item-content.extensible) { + .inventory-item-header, + .inventory-item-content { + background: light-dark(@dark-blue-40, @golden-40); + } + } + &:has(.inventory-item-content.extended) { + .inventory-item-header .item-label .item-name .expanded-icon { + display: none; + } + } + } + + &:has(.inventory-item-content.extensible) { + .inventory-item-header { + border-radius: 5px 5px 0 0; + } + .inventory-item-content { + border-radius: 0 0 5px 5px; + } + } + + &:not(:has(.inventory-item-content.extensible)) .inventory-item-header { + border-radius: 5px; + } } .inventory-item-header { @@ -42,6 +73,7 @@ align-items: center; gap: 10px; cursor: pointer; + border-radius: 3px; .img-portait { flex: 0 0 40px; @@ -75,6 +107,10 @@ .item-name { font-size: 14px; + + .expanded-icon { + display: none; + } } .item-tags, @@ -118,6 +154,11 @@ justify-content: end; gap: 8px; + a { + width: 15px; + text-align: center; + } + .unequipped { opacity: 0.5; } diff --git a/styles/less/sheets-settings/character-settings/sheet.less b/styles/less/sheets-settings/character-settings/sheet.less index b563f2f4..43103fc7 100644 --- a/styles/less/sheets-settings/character-settings/sheet.less +++ b/styles/less/sheets-settings/character-settings/sheet.less @@ -1,3 +1,16 @@ +.theme-light .application.daggerheart.dh-style.dialog { + .tab.details { + .traits-inner-container .trait-container { + background: url('../assets/svg/trait-shield-light.svg') no-repeat; + + div { + filter: drop-shadow(0 0 3px @beige); + text-shadow: 0 0 3px @beige; + } + } + } +} + .application.daggerheart.dh-style.dialog { .tab.details { .traits-inner-container { diff --git a/styles/less/sheets/actors/adversary/sidebar.less b/styles/less/sheets/actors/adversary/sidebar.less index 4955c175..79927881 100644 --- a/styles/less/sheets/actors/adversary/sidebar.less +++ b/styles/less/sheets/actors/adversary/sidebar.less @@ -9,10 +9,14 @@ } } }, { - &.adversary { + &.sheet.actor.dh-style.adversary { .adversary-sidebar-sheet { background: transparent; } + + .portrait.death-roll .death-roll-btn { + filter: brightness(0) drop-shadow(0 0 3px @dark-blue); + } } }); @@ -27,18 +31,10 @@ border-bottom: 1px solid light-dark(@dark-blue, @golden); cursor: pointer; - img { - height: 235px; - width: 275px; - object-fit: cover; - } - - .death-roll-btn { - display: none; - } - &.death-roll { - filter: grayscale(1); + img { + filter: grayscale(1); + } .death-roll-btn { display: flex; @@ -47,12 +43,24 @@ right: 30%; font-size: 6rem; color: @beige; + filter: grayscale(1) drop-shadow(0 0 3px black); &:hover { text-shadow: 0 0 8px @beige; } } } + + img { + height: 275px; + width: 275px; + object-fit: cover; + object-position: top center; + } + + .death-roll-btn { + display: none; + } } .threshold-section { @@ -67,7 +75,6 @@ align-items: center; width: fit-content; height: 30px; - margin-top: 16px; h4 { font-size: 14px; @@ -108,6 +115,7 @@ .resources-section { display: flex; justify-content: space-evenly; + margin-bottom: 16px; .status-bar { display: flex; diff --git a/styles/less/sheets/actors/character/sidebar.less b/styles/less/sheets/actors/character/sidebar.less index 494a4728..3d8e829a 100644 --- a/styles/less/sheets/actors/character/sidebar.less +++ b/styles/less/sheets/actors/character/sidebar.less @@ -11,11 +11,16 @@ } } }, { - .character-sidebar-sheet { + &.sheet.actor.dh-style.character .character-sidebar-sheet { background: transparent; + .experience-value { background: url('../assets/svg/experience-shield-light.svg') no-repeat; } + + .portrait.death-roll .death-roll-btn { + filter: brightness(0) drop-shadow(0 0 3px @dark-blue); + } } }); @@ -29,18 +34,10 @@ border-bottom: 1px solid light-dark(@dark-blue, @golden); cursor: pointer; - img { - height: 235px; - width: 275px; - object-fit: cover; - } - - .death-roll-btn { - display: none; - } - &.death-roll { - filter: grayscale(1); + img { + filter: grayscale(1); + } .death-roll-btn { display: flex; @@ -49,6 +46,7 @@ right: 30%; font-size: 6rem; color: @beige; + filter: grayscale(1) drop-shadow(0 0 3px black); &:hover { text-shadow: 0 0 8px @beige; @@ -56,6 +54,17 @@ } } + img { + height: 275px; + width: 275px; + object-fit: cover; + object-position: top center; + } + + .death-roll-btn { + display: none; + } + .icons-list { position: absolute; display: flex; @@ -239,7 +248,7 @@ height: 30px; .status-label { - padding: 2px 10px; + padding: 2px 2px; position: relative; top: 30px; height: 22px; diff --git a/styles/less/sheets/actors/companion/header.less b/styles/less/sheets/actors/companion/header.less index b343146f..bc1995aa 100644 --- a/styles/less/sheets/actors/companion/header.less +++ b/styles/less/sheets/actors/companion/header.less @@ -10,8 +10,9 @@ .profile { height: 235px; - width: 100%; + width: 235px; object-fit: cover; + object-position: top center; cursor: pointer; mask-image: linear-gradient(0deg, transparent 0%, black 10%); } @@ -184,9 +185,50 @@ } } - .level-up-label { - font-size: 24px; - padding-top: 8px; + .level-div { + white-space: nowrap; + display: flex; + justify-content: end; + + .label { + display: flex; + flex-direction: column; + align-items: center; + gap: 4px; + + .input-section { + display: flex; + align-items: center; + justify-content: space-between; + } + } + + input { + width: 40px; + padding: 0; + text-align: center; + border: 0; + } + + .level-button { + color: light-dark(@dark, @beige); + font-size: 18px; + line-height: 1; + min-height: unset; + height: min-content; + padding: 4px; + font-family: 'Cinzel', serif; + margin: 0; + font-weight: normal; + border-color: light-dark(@dark-blue, @golden); + background-color: light-dark(transparent, @deep-black); + + &:hover { + background-image: none; + background-color: var(--color-warm-2); + filter: drop-shadow(0 0 3px lightgray); + } + } } } diff --git a/styles/less/sheets/actors/environment/header.less b/styles/less/sheets/actors/environment/header.less index 1276b276..c9d01754 100644 --- a/styles/less/sheets/actors/environment/header.less +++ b/styles/less/sheets/actors/environment/header.less @@ -9,9 +9,10 @@ text-align: center; .profile { - width: 100%; + width: 235px; height: 235px; object-fit: cover; + object-position: top center; mask-image: linear-gradient(0deg, transparent 0%, black 10%); cursor: pointer; } diff --git a/system.json b/system.json index a0c91923..66a4cfdb 100644 --- a/system.json +++ b/system.json @@ -2,7 +2,7 @@ "id": "daggerheart", "title": "Daggerheart", "description": "An unofficial implementation of the Daggerheart system", - "version": "1.0.0", + "version": "1.0.2", "compatibility": { "minimum": "13", "verified": "13.347", @@ -28,7 +28,10 @@ "name": "jacobwojoski" }, { - "name": "moliloo" + "name": "moliloo", + "url": "https://github.com/moliloo", + "email": "molilofl@gmail.com", + "discord": "molilo" }, { "name": "Mysteryusy" diff --git a/templates/actionTypes/healing.hbs b/templates/actionTypes/healing.hbs deleted file mode 100644 index 4b8023d7..00000000 --- a/templates/actionTypes/healing.hbs +++ /dev/null @@ -1,41 +0,0 @@ - -
- - {{localize "DAGGERHEART.GENERAL.healing"}} - - {{#if (and (not @root.isNPC) @root.hasRoll)}} - {{formField fields.resultBased value=source.resultBased name="healing.resultBased" localize=true classes="checkbox"}} - {{/if}} - {{#if (and (not @root.isNPC) @root.hasRoll source.resultBased)}} -
-
- -
{{localize "DAGGERHEART.GENERAL.withThing" thing=(localize "DAGGERHEART.GENERAL.hope")}}
-
- {{> formula fields=fields.value.fields source=source.value target="value"}} -
-
- -
{{localize "DAGGERHEART.GENERAL.withThing" thing=(localize "DAGGERHEART.GENERAL.fear")}}
-
- {{> formula fields=fields.valueAlt.fields source=source.valueAlt target="valueAlt"}} -
-
- {{else}} - {{> formula fields=fields.value.fields source=source.value target="value"}} - {{/if}} - {{formField fields.applyTo value=source.applyTo name="healing.applyTo" localize=true}} -
- -{{#*inline "formula"}} - {{formField fields.custom.fields.enabled value=source.custom.enabled name=(concat "healing." target ".custom.enabled") classes="checkbox"}} - {{#if source.custom.enabled}} - {{formField fields.custom.fields.formula value=source.custom.formula name=(concat "healing." target ".custom.formula") localize=true}} - {{else}} -
- {{formField fields.multiplier value=source.multiplier name=(concat "healing." target ".multiplier") localize=true}} - {{formField fields.dice value=source.dice name=(concat "healing." target ".dice")}} - {{formField fields.bonus value=source.bonus name=(concat "healing." target ".bonus") localize=true}} -
- {{/if}} -{{/inline}} \ No newline at end of file diff --git a/templates/actionTypes/macro.hbs b/templates/actionTypes/macro.hbs new file mode 100644 index 00000000..8c984be8 --- /dev/null +++ b/templates/actionTypes/macro.hbs @@ -0,0 +1,5 @@ + +
+ {{localize "DOCUMENT.Macro"}} + {{formInput fields name="macro" value=source}} +
\ No newline at end of file diff --git a/templates/actionTypes/uuid.hbs b/templates/actionTypes/uuid.hbs deleted file mode 100644 index 140cad78..00000000 --- a/templates/actionTypes/uuid.hbs +++ /dev/null @@ -1,9 +0,0 @@ - -
- -
{{localize "DOCUMENT.Macro"}}
-
-
- {{formInput fields value=source name="documentUUID" placeholder=fields.options.placeholder}} -
-
\ No newline at end of file diff --git a/templates/characterCreation/tabs/equipment.hbs b/templates/characterCreation/equipment.hbs similarity index 100% rename from templates/characterCreation/tabs/equipment.hbs rename to templates/characterCreation/equipment.hbs diff --git a/templates/characterCreation/footer.hbs b/templates/characterCreation/footer.hbs index 47321c7a..95b86cfb 100644 --- a/templates/characterCreation/footer.hbs +++ b/templates/characterCreation/footer.hbs @@ -1,7 +1,7 @@
{{> 'systems/daggerheart/templates/sheets/global/tabs/tab-navigation.hbs'}} diff --git a/templates/sheets/global/partials/inventory-item-V2.hbs b/templates/sheets/global/partials/inventory-item-V2.hbs index fcaa2c38..c5dca4f9 100644 --- a/templates/sheets/global/partials/inventory-item-V2.hbs +++ b/templates/sheets/global/partials/inventory-item-V2.hbs @@ -19,7 +19,7 @@ Parameters: data-action-id="{{item.id}}" {{/if}} data-item-uuid="{{item.uuid}}" data-type="{{type}}" data-no-compendium-edit="{{noCompendiumEdit}}" draggable="true">
{{!-- Image --}} -
@@ -30,48 +30,35 @@ Parameters:
{{!-- Item Name --}} -
{{localize item.name}}
+
{{localize item.name}} {{#unless noExtensible}}{{/unless}}
- {{!-- Attack Tags Start --}} - {{#if (eq type 'attack')}} + {{!-- Tags Start --}} + {{#with item}} + {{#if (not ../hideTags)}}
+ {{#each this._getTags as |tag|}}
- {{localize 'DAGGERHEART.GENERAL.unarmed'}} -
-
- {{localize 'DAGGERHEART.CONFIG.ActionType.action'}} + {{tag}}
+ {{/each}}
- {{!-- Attack Tags End --}} - {{else}} - {{!-- Other elements Tags Start --}} - {{#with item}} - {{#if (not ../hideTags)}} -
- {{#each this._getTags as |tag|}} -
- {{tag}} -
+ {{else if (not ../hideLabels)}} +
+
+ {{#each this._getLabels as |label|}} + {{ifThen label.value label.value label}} + {{#each label.icons as |icon|}} + + {{/each}} + {{#if (not @last)}} + - + {{/if}} {{/each}}
- {{else if (not ../hideLabels)}} -
-
- {{#each this._getLabels as |label|}} - {{ifThen label.value label.value label}} - {{#each label.icons as |icon|}} - - {{/each}} - {{#if (not @last)}} - - - {{/if}} - {{/each}} -
-
- {{/if}} - {{/with}} +
{{/if}} - {{!-- Other elements Tags End --}} + {{/with}} + {{!--Tags End --}}
{{!-- Simple Resource --}} diff --git a/templates/ui/chat/foundryRoll.hbs b/templates/ui/chat/foundryRoll.hbs index 478cc691..a3c55a9e 100644 --- a/templates/ui/chat/foundryRoll.hbs +++ b/templates/ui/chat/foundryRoll.hbs @@ -8,7 +8,7 @@

{{total}}

-
+
\ No newline at end of file diff --git a/templates/ui/chat/parts/roll-part.hbs b/templates/ui/chat/parts/roll-part.hbs index cd9bb3d6..8e88015f 100644 --- a/templates/ui/chat/parts/roll-part.hbs +++ b/templates/ui/chat/parts/roll-part.hbs @@ -6,7 +6,7 @@ {{#if roll.isCritical}} {{localize "DAGGERHEART.GENERAL.criticalShort"}} {{else}} - {{#if roll.result}} + {{#if (and roll.result (not (eq roll.type "reaction")))}} {{localize "DAGGERHEART.GENERAL.withThing" thing=roll.result.label}} {{/if}} {{/if}} diff --git a/templates/ui/combatTracker/combatTrackerHeader.hbs b/templates/ui/combatTracker/combatTrackerHeader.hbs index a34e4743..9ecff9e6 100644 --- a/templates/ui/combatTracker/combatTrackerHeader.hbs +++ b/templates/ui/combatTracker/combatTrackerHeader.hbs @@ -51,18 +51,6 @@ {{/if}}
- {{#if hasCombat}} -
-
-
-
- -
-
{{fear}}
-
- -
- {{/if}} {{!-- Combat Status --}} {{#if combats.length}} From 47754e78cd8ecdadc790d7fb03f10028b225fce7 Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Thu, 14 Aug 2025 19:08:59 +0200 Subject: [PATCH 004/260] Fix roll dialog default rollmode value (#938) --- module/applications/dialogs/d20RollDialog.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/applications/dialogs/d20RollDialog.mjs b/module/applications/dialogs/d20RollDialog.mjs index 0f1cd946..d445f24c 100644 --- a/module/applications/dialogs/d20RollDialog.mjs +++ b/module/applications/dialogs/d20RollDialog.mjs @@ -66,7 +66,7 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio context.rollConfig = this.config; context.hasRoll = !!this.config.roll; context.canRoll = true; - context.selectedRollMode = this.config.selectedRollMode; + context.selectedRollMode = this.config.selectedRollMode ?? game.settings.get('core', 'rollMode'); context.rollModes = Object.entries(CONFIG.Dice.rollModes).map(([action, { label, icon }]) => ({ action, label, From 96d26a1e5b683014ed804145290f77c8a3487b37 Mon Sep 17 00:00:00 2001 From: Murilo Brito <91566541+moliloo@users.noreply.github.com> Date: Sun, 17 Aug 2025 09:37:39 -0300 Subject: [PATCH 005/260] refactor font-family styles to avoid unecessary diplicities (#983) --- styles/daggerheart.less | 2 + styles/less/dialog/actions/action-list.less | 3 - styles/less/dialog/beastform/sheet.less | 1 - .../character-creation/tab-navigation.less | 1 - .../death-move/death-move-container.less | 2 - .../less/dialog/dice-roll/roll-selection.less | 3 - .../dialog/downtime/downtime-container.less | 8 +- styles/less/dialog/level-up/footer.less | 1 - .../dialog/level-up/navigation-container.less | 1 - .../dialog/level-up/selections-container.less | 5 - .../dialog/level-up/summary-container.less | 4 - .../less/dialog/level-up/tiers-container.less | 1 - .../less/dialog/multiclass-choice/sheet.less | 3 +- styles/less/global/dialog.less | 2 - styles/less/global/elements.less | 13 --- styles/less/global/feature-section.less | 1 - styles/less/global/filter-menu.less | 1 - styles/less/global/inventory-item.less | 3 - styles/less/global/prose-mirror.less | 1 - styles/less/global/tab-actions.less | 1 - styles/less/global/tab-effects.less | 1 - styles/less/global/tab-features.less | 1 - styles/less/global/tab-navigation.less | 1 - .../adversary-settings/features.less | 7 +- .../character-settings/sheet.less | 3 +- .../environment-settings/adversaries.less | 1 - .../environment-settings/features.less | 4 - .../less/sheets/actors/adversary/header.less | 5 - .../less/sheets/actors/adversary/sidebar.less | 3 - .../less/sheets/actors/character/header.less | 1 - .../sheets/actors/character/inventory.less | 1 - .../less/sheets/actors/character/loadout.less | 1 - .../less/sheets/actors/character/sidebar.less | 1 - .../less/sheets/actors/companion/details.less | 2 - .../sheets/actors/environment/header.less | 6 -- styles/less/sheets/items/class.less | 1 - styles/less/ui/chat/ability-use.less | 8 +- styles/less/ui/chat/action.less | 8 +- styles/less/ui/chat/downtime.less | 8 +- styles/less/ui/countdown/countdown.less | 1 - styles/less/ui/item-browser/item-browser.less | 14 +-- .../settings/homebrew-settings/domains.less | 1 - styles/less/utils/fonts.less | 50 ++-------- styles/less/utils/mixin.less | 70 +++++++++++++ .../characterCreation/tabs/experience.hbs | 2 +- templates/characterCreation/tabs/traits.hbs | 2 +- templates/components/card-preview.hbs | 6 +- templates/dialogs/beastform/footer.hbs | 4 +- templates/dialogs/deathMove.hbs | 14 ++- templates/dialogs/downtime/activities.hbs | 2 +- templates/dialogs/downtime/downtime.hbs | 8 +- .../levelup/parts/selectable-card-preview.hbs | 6 +- templates/levelup/tabs/advancements.hbs | 2 +- templates/levelup/tabs/summary.hbs | 98 +++++++++++++------ .../adversary-settings/features.hbs | 2 +- .../character-settings/details.hbs | 2 +- .../environment-settings/adversaries.hbs | 2 +- templates/sheets/actors/adversary/header.hbs | 8 +- templates/sheets/actors/adversary/sidebar.hbs | 4 +- templates/sheets/actors/character/sidebar.hbs | 4 +- templates/sheets/actors/companion/details.hbs | 4 +- .../sheets/actors/environment/header.hbs | 8 +- .../global/partials/domain-card-item.hbs | 2 +- .../global/partials/inventory-item-V2.hbs | 2 +- .../sheets/global/tabs/tab-navigation.hbs | 2 +- templates/ui/chat/ability-use.hbs | 6 +- templates/ui/chat/downtime.hbs | 4 +- templates/ui/itemBrowser/itemBrowser.hbs | 14 +-- templates/ui/itemBrowser/sidebar.hbs | 2 +- 69 files changed, 220 insertions(+), 246 deletions(-) diff --git a/styles/daggerheart.less b/styles/daggerheart.less index efff7499..187402fb 100755 --- a/styles/daggerheart.less +++ b/styles/daggerheart.less @@ -15,3 +15,5 @@ @import './less/ux/index.less'; @import '../build/tagify.css'; + +@import './less/utils/mixin.less'; diff --git a/styles/less/dialog/actions/action-list.less b/styles/less/dialog/actions/action-list.less index 33b3d0bb..a0b079a7 100644 --- a/styles/less/dialog/actions/action-list.less +++ b/styles/less/dialog/actions/action-list.less @@ -32,9 +32,7 @@ width: 30px; } span { - font-family: @font-body; flex: 1; - font-weight: bold; } } } @@ -55,7 +53,6 @@ display: flex; align-items: center; gap: 10px; - font-family: @font-body; flex: 1; i { text-align: center; diff --git a/styles/less/dialog/beastform/sheet.less b/styles/less/dialog/beastform/sheet.less index 26b6072a..c13ee95e 100644 --- a/styles/less/dialog/beastform/sheet.less +++ b/styles/less/dialog/beastform/sheet.less @@ -210,7 +210,6 @@ button { flex: 1; - font-family: @font-body; font-weight: bold; height: 40px; } diff --git a/styles/less/dialog/character-creation/tab-navigation.less b/styles/less/dialog/character-creation/tab-navigation.less index 709e0adc..36b89d5a 100644 --- a/styles/less/dialog/character-creation/tab-navigation.less +++ b/styles/less/dialog/character-creation/tab-navigation.less @@ -7,7 +7,6 @@ border-top: 0; a { - font-family: @font-body; color: light-dark(@dark-blue, @golden); &[disabled] { diff --git a/styles/less/dialog/death-move/death-move-container.less b/styles/less/dialog/death-move/death-move-container.less index d5982131..e5803d95 100644 --- a/styles/less/dialog/death-move/death-move-container.less +++ b/styles/less/dialog/death-move/death-move-container.less @@ -26,7 +26,6 @@ display: flex; align-items: center; gap: 10px; - font-family: @font-body; cursor: pointer; flex: 1; i { @@ -50,7 +49,6 @@ button { flex: 1; height: 40px; - font-family: @font-body; font-weight: 600; } } diff --git a/styles/less/dialog/dice-roll/roll-selection.less b/styles/less/dialog/dice-roll/roll-selection.less index d536ee04..9113bc03 100644 --- a/styles/less/dialog/dice-roll/roll-selection.less +++ b/styles/less/dialog/dice-roll/roll-selection.less @@ -100,7 +100,6 @@ color: light-dark(@dark-blue, @golden); .label { - font-family: @font-body; font-style: normal; font-weight: 400; font-size: 14px; @@ -126,7 +125,6 @@ transition: all 0.3s ease; .label { - font-family: @font-body; font-style: normal; font-weight: 400; font-size: 14px; @@ -174,7 +172,6 @@ flex: 1; height: 100%; font-weight: bold; - font-family: @font-body; } } } diff --git a/styles/less/dialog/downtime/downtime-container.less b/styles/less/dialog/downtime/downtime-container.less index fe1344cd..f9f8df17 100644 --- a/styles/less/dialog/downtime/downtime-container.less +++ b/styles/less/dialog/downtime/downtime-container.less @@ -15,8 +15,6 @@ } .daggerheart.dh-style.views.downtime { - font-family: @font-body; - .downtime-container { .activities-grouping { width: 280px; @@ -39,7 +37,7 @@ .activity-marker { font-size: 8px; flex: none; - color: light-dark(#18162e, #f3c267); + color: light-dark(@dark-blue, @golden); margin-right: 4px; } @@ -93,9 +91,6 @@ .refreshable-title { font-weight: bold; } - - .refreshable-name { - } } } @@ -107,7 +102,6 @@ button { flex: 1; height: 40px; - font-family: @font-body; font-weight: 600; } } diff --git a/styles/less/dialog/level-up/footer.less b/styles/less/dialog/level-up/footer.less index daf25b60..2a177102 100644 --- a/styles/less/dialog/level-up/footer.less +++ b/styles/less/dialog/level-up/footer.less @@ -10,7 +10,6 @@ gap: 10px; button { - font-family: @font-body; font-weight: bold; height: 40px; } diff --git a/styles/less/dialog/level-up/navigation-container.less b/styles/less/dialog/level-up/navigation-container.less index d8872931..282d683f 100644 --- a/styles/less/dialog/level-up/navigation-container.less +++ b/styles/less/dialog/level-up/navigation-container.less @@ -19,7 +19,6 @@ a, span { - font-family: @font-body; color: light-dark(@dark-blue, @golden); } } diff --git a/styles/less/dialog/level-up/selections-container.less b/styles/less/dialog/level-up/selections-container.less index a13c9ff3..96cadd29 100644 --- a/styles/less/dialog/level-up/selections-container.less +++ b/styles/less/dialog/level-up/selections-container.less @@ -30,10 +30,6 @@ width: 80%; } - span { - font-family: @font-body; - } - .achievement-experience-marker { border: 1px solid; border-radius: 50%; @@ -127,7 +123,6 @@ margin-bottom: 10px; h3 { - font-family: @font-subtitle; color: light-dark(@dark, @beige); margin: 0; white-space: nowrap; diff --git a/styles/less/dialog/level-up/summary-container.less b/styles/less/dialog/level-up/summary-container.less index eb760cde..f192d5ec 100644 --- a/styles/less/dialog/level-up/summary-container.less +++ b/styles/less/dialog/level-up/summary-container.less @@ -9,7 +9,6 @@ margin-bottom: 10px; h3 { - font-family: @font-subtitle; color: light-dark(@dark, @beige); margin: 0; white-space: nowrap; @@ -43,7 +42,6 @@ align-items: center; gap: 4px; font-size: 14px; - font-family: @font-body; color: light-dark(@dark, @beige); } @@ -52,7 +50,6 @@ align-items: center; gap: 4px; font-size: 16px; - font-family: @font-subtitle; color: light-dark(@dark, @beige); margin-bottom: 5px; } @@ -66,7 +63,6 @@ border-radius: 3px; padding: 0 4px; font-size: 14px; - font-family: @font-body; color: light-dark(@dark, @beige); } } diff --git a/styles/less/dialog/level-up/tiers-container.less b/styles/less/dialog/level-up/tiers-container.less index 225c31fb..d4efa46b 100644 --- a/styles/less/dialog/level-up/tiers-container.less +++ b/styles/less/dialog/level-up/tiers-container.less @@ -60,7 +60,6 @@ } .checkbox-group-label { - font-family: @font-body; font-size: 12px; font-style: italic; } diff --git a/styles/less/dialog/multiclass-choice/sheet.less b/styles/less/dialog/multiclass-choice/sheet.less index 93a8540b..1f38449a 100644 --- a/styles/less/dialog/multiclass-choice/sheet.less +++ b/styles/less/dialog/multiclass-choice/sheet.less @@ -1,3 +1,5 @@ +@import '../../utils/colors.less'; + .theme-light .daggerheart.dh-style.dialog.multiclass-choice { .multiclass-container .domain-choice-container button label { background-image: url(../assets/parchments/dh-parchment-light.png); @@ -42,7 +44,6 @@ label { position: absolute; top: 4px; - font-family: @font-body; border-radius: 6px; border: 2px solid; padding: 0 2px; diff --git a/styles/less/global/dialog.less b/styles/less/global/dialog.less index 701d5025..42fdb07e 100644 --- a/styles/less/global/dialog.less +++ b/styles/less/global/dialog.less @@ -48,7 +48,6 @@ } .formula-label { - font-family: @font-body; font-style: normal; font-weight: 500; font-size: 14px; @@ -81,7 +80,6 @@ button[type='submit'] { gap: 5px; flex-direction: row; - font-family: @font-body; font-weight: bold; font-size: var(--font-size-14); height: 40px; diff --git a/styles/less/global/elements.less b/styles/less/global/elements.less index 6b5d64c9..5e5d3921 100755 --- a/styles/less/global/elements.less +++ b/styles/less/global/elements.less @@ -76,7 +76,6 @@ textarea { color: light-dark(@dark, @beige); - font-family: @font-body; scrollbar-width: thin; scrollbar-color: light-dark(@dark-blue, @golden) transparent; } @@ -126,7 +125,6 @@ select { background: light-dark(transparent, transparent); color: light-dark(@dark, @beige); - font-family: @font-body; outline: 2px solid transparent; border: 1px solid light-dark(@dark, @beige); @@ -161,7 +159,6 @@ padding: 0.3rem 0.5rem; color: light-dark(@dark-blue, @golden); background-color: light-dark(@dark-blue-10, @golden-40); - font-family: @font-body; border-radius: 3px; transition: 0.13s ease-out; gap: 0.5rem; @@ -180,7 +177,6 @@ } table { - font-family: @font-body; border-radius: 3px; thead { @@ -309,7 +305,6 @@ } legend { - font-family: @font-body; font-weight: bold; color: light-dark(@dark-blue, @golden); } @@ -317,7 +312,6 @@ input[type='text'], input[type='number'] { color: light-dark(@dark, @beige); - font-family: @font-body; transition: all 0.3s ease; outline: 2px solid transparent; @@ -368,7 +362,6 @@ .form-group { width: 100%; label { - font-family: @font-body; font-weight: bold; font-size: smaller; } @@ -407,7 +400,6 @@ display: flex; flex-direction: column; white-space: nowrap; - font-family: @font-body; font-size: 14px; font-weight: 400; @@ -503,7 +495,6 @@ color: light-dark(@dark-blue, @dark-blue); white-space: nowrap; border: 0; - font-family: @font-body; &:hover { color: light-dark(@dark-blue, @golden); @@ -604,7 +595,6 @@ label { font-size: 16px; - font-family: @font-body; } .form-fields { @@ -679,7 +669,6 @@ .tagify__dropdown { border: 1px solid light-dark(@dark, @beige) !important; - font-family: @font-body; color: light-dark(@dark, @beige); .tagify__dropdown__wrapper { @@ -774,7 +763,6 @@ } .preview-text-container { - font-family: @font-body; padding: 10px 0; text-align: center; font-size: 16px; @@ -810,7 +798,6 @@ font-size: 10px; font-variant: small-caps; text-align: center; - font-family: @font-body; font-style: italic; color: light-dark(@dark-blue-60, @beige-80); } diff --git a/styles/less/global/feature-section.less b/styles/less/global/feature-section.less index db1c117a..13feb92c 100644 --- a/styles/less/global/feature-section.less +++ b/styles/less/global/feature-section.less @@ -24,7 +24,6 @@ align-items: center; grid-template-columns: 1fr 4fr 1fr; h4 { - font-family: @font-body; font-weight: lighter; color: light-dark(@dark, @beige); } diff --git a/styles/less/global/filter-menu.less b/styles/less/global/filter-menu.less index 09962afb..65a184f8 100644 --- a/styles/less/global/filter-menu.less +++ b/styles/less/global/filter-menu.less @@ -12,7 +12,6 @@ padding: 5px; legend { - font-family: @font-body; font-weight: bold; color: light-dark(@dark-blue, @golden); font-size: var(--font-size-12); diff --git a/styles/less/global/inventory-item.less b/styles/less/global/inventory-item.less index c4239d27..6c58d31a 100644 --- a/styles/less/global/inventory-item.less +++ b/styles/less/global/inventory-item.less @@ -102,7 +102,6 @@ .item-label { flex: 1; - font-family: @font-body; align-self: center; .item-name { @@ -202,7 +201,6 @@ padding: 0 0 0 1.25rem; li { - font-family: @font-body; margin-bottom: 0.25rem; } } @@ -310,7 +308,6 @@ mask-image: linear-gradient(180deg, transparent 0%, black 20%); .card-name { - font-family: @font-body; font-style: normal; font-weight: 400; font-size: 12px; diff --git a/styles/less/global/prose-mirror.less b/styles/less/global/prose-mirror.less index 5adf9d67..cb7933a4 100644 --- a/styles/less/global/prose-mirror.less +++ b/styles/less/global/prose-mirror.less @@ -34,7 +34,6 @@ padding: 0 0 0 1.25rem; li { - font-family: @font-body; margin-bottom: 0.25rem; } } diff --git a/styles/less/global/tab-actions.less b/styles/less/global/tab-actions.less index 0617016d..31129c99 100644 --- a/styles/less/global/tab-actions.less +++ b/styles/less/global/tab-actions.less @@ -26,7 +26,6 @@ } h4 { - font-family: @font-body; font-weight: lighter; color: @beige; } diff --git a/styles/less/global/tab-effects.less b/styles/less/global/tab-effects.less index 0c34a3ea..b4540f01 100644 --- a/styles/less/global/tab-effects.less +++ b/styles/less/global/tab-effects.less @@ -19,7 +19,6 @@ cursor: pointer; h4 { - font-family: @font-body; font-weight: lighter; color: @beige; } diff --git a/styles/less/global/tab-features.less b/styles/less/global/tab-features.less index 91335fd5..c483ae88 100644 --- a/styles/less/global/tab-features.less +++ b/styles/less/global/tab-features.less @@ -26,7 +26,6 @@ } h4 { - font-family: @font-body; font-weight: lighter; color: @beige; } diff --git a/styles/less/global/tab-navigation.less b/styles/less/global/tab-navigation.less index 53295b63..3f8844f2 100755 --- a/styles/less/global/tab-navigation.less +++ b/styles/less/global/tab-navigation.less @@ -21,7 +21,6 @@ a { color: light-dark(@dark-blue, @golden); - font-family: @font-body; } } } diff --git a/styles/less/sheets-settings/adversary-settings/features.less b/styles/less/sheets-settings/adversary-settings/features.less index 29c9874e..4e0f6a8f 100644 --- a/styles/less/sheets-settings/adversary-settings/features.less +++ b/styles/less/sheets-settings/adversary-settings/features.less @@ -14,11 +14,10 @@ margin-bottom: 12px; } - .feature-list, + .feature-list, .features-dragger { display: flex; width: 100%; - font-family: @font-body; } .feature-list { @@ -38,10 +37,6 @@ object-fit: cover; } - .label { - font-family: @font-body; - } - .controls { display: flex; gap: 5px; diff --git a/styles/less/sheets-settings/character-settings/sheet.less b/styles/less/sheets-settings/character-settings/sheet.less index 43103fc7..78bbf9c5 100644 --- a/styles/less/sheets-settings/character-settings/sheet.less +++ b/styles/less/sheets-settings/character-settings/sheet.less @@ -1,3 +1,5 @@ +@import '../../utils/colors.less'; + .theme-light .application.daggerheart.dh-style.dialog { .tab.details { .traits-inner-container .trait-container { @@ -31,7 +33,6 @@ div { filter: drop-shadow(0 0 3px black); text-shadow: 0 0 3px black; - font-family: @font-body; font-size: 12px; } diff --git a/styles/less/sheets-settings/environment-settings/adversaries.less b/styles/less/sheets-settings/environment-settings/adversaries.less index 8dc12c87..85342f7e 100644 --- a/styles/less/sheets-settings/environment-settings/adversaries.less +++ b/styles/less/sheets-settings/environment-settings/adversaries.less @@ -45,7 +45,6 @@ border: 1px dashed light-dark(@dark-blue-50, @beige-50); border-radius: 3px; color: light-dark(@dark-blue-50, @beige-50); - font-family: @font-body; } } } diff --git a/styles/less/sheets-settings/environment-settings/features.less b/styles/less/sheets-settings/environment-settings/features.less index f2a9583a..d907837a 100644 --- a/styles/less/sheets-settings/environment-settings/features.less +++ b/styles/less/sheets-settings/environment-settings/features.less @@ -32,10 +32,6 @@ border-radius: 3px; } - .label { - font-family: @font-body; - } - .controls { display: flex; gap: 5px; diff --git a/styles/less/sheets/actors/adversary/header.less b/styles/less/sheets/actors/adversary/header.less index e9306af6..22a769ae 100644 --- a/styles/less/sheets/actors/adversary/header.less +++ b/styles/less/sheets/actors/adversary/header.less @@ -64,11 +64,6 @@ flex-direction: column; gap: 12px; padding: 16px 0; - - .description, - .motives-and-tatics { - font-family: @font-body; - } } .adversary-navigation { diff --git a/styles/less/sheets/actors/adversary/sidebar.less b/styles/less/sheets/actors/adversary/sidebar.less index cd58ab8c..6d194e37 100644 --- a/styles/less/sheets/actors/adversary/sidebar.less +++ b/styles/less/sheets/actors/adversary/sidebar.less @@ -337,7 +337,6 @@ width: 180px; text-align: start; font-size: 14px; - font-family: @font-body; color: light-dark(@dark, @beige); } } @@ -346,7 +345,6 @@ height: 25px; width: 35px; font-size: 14px; - font-family: @font-body; color: light-dark(@dark, @beige); align-content: center; text-align: center; @@ -368,7 +366,6 @@ button { height: 40px; width: 100%; - font-family: @font-body; font-weight: 600; } } diff --git a/styles/less/sheets/actors/character/header.less b/styles/less/sheets/actors/character/header.less index 7bfcc7c9..2d261a6a 100644 --- a/styles/less/sheets/actors/character/header.less +++ b/styles/less/sheets/actors/character/header.less @@ -218,7 +218,6 @@ } .trait-value { - font-family: @font-body; font-style: normal; font-weight: 400; font-size: 20px; diff --git a/styles/less/sheets/actors/character/inventory.less b/styles/less/sheets/actors/character/inventory.less index 48bdd682..0870c0c3 100644 --- a/styles/less/sheets/actors/character/inventory.less +++ b/styles/less/sheets/actors/character/inventory.less @@ -16,7 +16,6 @@ input { border-radius: 50px; - font-family: @font-body; background: light-dark(@dark-blue-10, @golden-10); border: none; outline: 2px solid transparent; diff --git a/styles/less/sheets/actors/character/loadout.less b/styles/less/sheets/actors/character/loadout.less index 98fe9eed..35dffb79 100644 --- a/styles/less/sheets/actors/character/loadout.less +++ b/styles/less/sheets/actors/character/loadout.less @@ -16,7 +16,6 @@ input { border-radius: 50px; - font-family: @font-body; background: light-dark(@dark-blue-10, @golden-10); border: none; outline: 2px solid transparent; diff --git a/styles/less/sheets/actors/character/sidebar.less b/styles/less/sheets/actors/character/sidebar.less index b8069aef..e659c9a8 100644 --- a/styles/less/sheets/actors/character/sidebar.less +++ b/styles/less/sheets/actors/character/sidebar.less @@ -490,7 +490,6 @@ height: 25px; width: 35px; font-size: 14px; - font-family: @font-body; color: light-dark(@dark, @beige); align-content: center; text-align: center; diff --git a/styles/less/sheets/actors/companion/details.less b/styles/less/sheets/actors/companion/details.less index 47b5873d..9823825f 100644 --- a/styles/less/sheets/actors/companion/details.less +++ b/styles/less/sheets/actors/companion/details.less @@ -59,7 +59,6 @@ width: 180px; text-align: start; font-size: 14px; - font-family: @font-body; color: light-dark(@dark, @beige); } } @@ -68,7 +67,6 @@ height: 25px; width: 35px; font-size: 14px; - font-family: @font-body; color: light-dark(@dark, @beige); align-content: center; text-align: center; diff --git a/styles/less/sheets/actors/environment/header.less b/styles/less/sheets/actors/environment/header.less index f7353b10..9abecd77 100644 --- a/styles/less/sheets/actors/environment/header.less +++ b/styles/less/sheets/actors/environment/header.less @@ -122,12 +122,6 @@ flex-direction: column; gap: 12px; padding: 10px 20px; - - .description, - .impulses { - text-align: start; - font-family: @font-body; - } } .environment-navigation { diff --git a/styles/less/sheets/items/class.less b/styles/less/sheets/items/class.less index d32f60d6..686715c6 100644 --- a/styles/less/sheets/items/class.less +++ b/styles/less/sheets/items/class.less @@ -25,7 +25,6 @@ gap: 10px; grid-template-columns: 1fr 3fr 1fr; h4 { - font-family: @font-body; font-weight: lighter; color: light-dark(@dark, @beige); } diff --git a/styles/less/ui/chat/ability-use.less b/styles/less/ui/chat/ability-use.less index 3e747380..7993d29d 100644 --- a/styles/less/ui/chat/ability-use.less +++ b/styles/less/ui/chat/ability-use.less @@ -57,8 +57,7 @@ .title { font-size: 20px; color: @golden; - font-family: @font-subtitle; - margin: 0; + font-weight: 700; } .tags { @@ -73,7 +72,6 @@ align-items: center; padding: 3px 5px; font-size: 12px; - font-family: @font-body; background: light-dark(@dark-15, @beige-15); border: 1px solid light-dark(@dark, @beige); @@ -86,9 +84,7 @@ } .description { - color: @beige; padding: 8px; - font-family: @font-body; } .ability-card-footer { @@ -99,8 +95,6 @@ padding: 0 8px; button { - font-family: @font-body; - font-weight: 600; height: 40px; flex: 1 1 calc(50% - 5px); diff --git a/styles/less/ui/chat/action.less b/styles/less/ui/chat/action.less index c3c51816..0200c9dc 100644 --- a/styles/less/ui/chat/action.less +++ b/styles/less/ui/chat/action.less @@ -54,14 +54,12 @@ .title { font-size: 20px; color: @golden; - font-family: @font-subtitle; - margin: 0; + font-weight: 700; } .label { font-size: 12px; color: @beige; - font-family: @font-body; margin: 0; } } @@ -69,9 +67,7 @@ } .description { - color: @beige; padding: 8px; - font-family: @font-body; } .ability-card-footer { @@ -82,8 +78,6 @@ padding: 0 8px; button { - font-family: @font-body; - font-weight: 600; height: 40px; flex: 1 1 calc(50% - 5px); diff --git a/styles/less/ui/chat/downtime.less b/styles/less/ui/chat/downtime.less index bc702aeb..7c28c835 100644 --- a/styles/less/ui/chat/downtime.less +++ b/styles/less/ui/chat/downtime.less @@ -55,13 +55,11 @@ .title { font-size: 16px; color: @golden; - font-family: @font-subtitle; - margin: 0; + font-weight: 700; } .label { font-size: 12px; color: @beige; - font-family: @font-body; margin: 0; } } @@ -69,16 +67,12 @@ .description { padding: 8px; - color: beige; - font-family: @font-body; - font-size: 14px; } } .action-use-button { width: -webkit-fill-available; margin: 0 8px; - font-family: @font-body; font-weight: 600; height: 40px; } diff --git a/styles/less/ui/countdown/countdown.less b/styles/less/ui/countdown/countdown.less index ecc9f1b8..5e46989a 100644 --- a/styles/less/ui/countdown/countdown.less +++ b/styles/less/ui/countdown/countdown.less @@ -9,7 +9,6 @@ border-color: light-dark(@dark-blue, @golden); legend { - font-family: @font-body; font-weight: bold; color: light-dark(@dark-blue, @golden); diff --git a/styles/less/ui/item-browser/item-browser.less b/styles/less/ui/item-browser/item-browser.less index df35d60b..7be45b8c 100644 --- a/styles/less/ui/item-browser/item-browser.less +++ b/styles/less/ui/item-browser/item-browser.less @@ -90,7 +90,6 @@ gap: 10px; .item-path { - font-family: @font-body; color: light-dark(@dark, @beige); &.path-link { @@ -136,7 +135,6 @@ input { border-radius: 50px; - font-family: @font-body; background: light-dark(@dark-blue-10, @golden-10); border: none; outline: 2px solid transparent; @@ -179,7 +177,6 @@ justify-content: space-between; padding: 10px; border: 1px solid transparent; - font-family: @font-body; transition: all 0.1s ease; &.expanded + .subfolder-list { @@ -187,7 +184,7 @@ } &:has(+ .subfolder-list):after { - content: "+"; + content: '+'; } } @@ -231,7 +228,6 @@ grid-template-columns: 40px 400px repeat(auto-fit, minmax(100px, 1fr)); align-items: center; text-transform: capitalize; - font-family: @font-body; } } @@ -268,7 +264,6 @@ border: 1px solid light-dark(@dark-blue, @golden); border-radius: 3px; min-height: 30px; - font-family: @font-body; font-weight: bold; > * { @@ -307,7 +302,6 @@ display: flex; flex-direction: column; gap: 5px; - font-family: @font-body; h1 { font-size: 32px; @@ -332,7 +326,6 @@ padding: 0 0 0 1.25rem; li { - font-family: @font-body; margin-bottom: 0.25rem; } } @@ -365,7 +358,6 @@ .form-group { label { flex: 1; - font-family: @font-body; } .form-fields { width: 100%; @@ -395,13 +387,9 @@ margin: 0; .title { - font-family: @font-subtitle; margin: 0; text-align: center; } - .hint { - font-family: @font-body; - } } [disabled] { diff --git a/styles/less/ui/settings/homebrew-settings/domains.less b/styles/less/ui/settings/homebrew-settings/domains.less index e0e0dcd7..c2ba3ef7 100644 --- a/styles/less/ui/settings/homebrew-settings/domains.less +++ b/styles/less/ui/settings/homebrew-settings/domains.less @@ -33,7 +33,6 @@ h2 { display: flex; align-items: center; - font-family: @font-subtitle; position: relative; width: auto; white-space: nowrap; diff --git a/styles/less/utils/fonts.less b/styles/less/utils/fonts.less index 2e62a0bf..61c9792c 100755 --- a/styles/less/utils/fonts.less +++ b/styles/less/utils/fonts.less @@ -1,50 +1,14 @@ @import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;700&family=Cinzel+Decorative:wght@700&family=Montserrat:wght@400;600&display=swap'); +@import './mixin.less'; @font-title: 'Cinzel Decorative', serif; @font-subtitle: 'Cinzel', serif; @font-body: 'Montserrat', sans-serif; -.application.sheet.daggerheart.dh-style { - h1 { - font-family: @font-title; - margin: 0; - border: none; - font-weight: normal; - } - - h2, - h3 { - font-family: @font-subtitle; - margin: 0; - border: none; - font-weight: normal; - } - - h4 { - font-family: @font-body; - font-size: 14px; - border: none; - font-weight: 700; - margin: 0; - text-shadow: none; - color: #f3c267; - font-weight: normal; - } - - h5 { - font-size: 14px; - color: #f3c267; - margin: 0; - font-weight: normal; - } - - p, - span { - font-family: @font-body; - } - - small { - font-family: @font-body; - opacity: 0.8; - } +.dh-style { + .dh-typography(); +} + +.dh-style fieldset { + .dh-typography(); } diff --git a/styles/less/utils/mixin.less b/styles/less/utils/mixin.less index 0e52fa82..2f1aa907 100644 --- a/styles/less/utils/mixin.less +++ b/styles/less/utils/mixin.less @@ -44,3 +44,73 @@ gap: @gap; align-items: center; } + +/** + * Apply default typography styles. + */ +.dh-typography() { + h1 { + font-family: @font-title; + margin: 0; + border: none; + font-weight: normal; + } + + h1 input[type='text'] { + font-family: @font-title; + } + + h2, + h3 { + font-family: @font-subtitle; + margin: 0; + border: none; + font-weight: normal; + } + + h4 { + font-family: @font-body; + font-size: 14px; + border: none; + font-weight: 700; + margin: 0; + text-shadow: none; + font-weight: normal; + } + + h5 { + font-family: @font-body; + font-size: 14px; + margin: 0; + font-weight: normal; + } + + p, + span, + textarea, + label, + select, + multi-select .tags .tag, + table, + fieldset legend, + input[type='text'], + input[type='number'], + input[type='search'], + .tagify__dropdown, + li { + font-family: @font-body; + } + + button span { + font-weight: bold; + } + + small { + font-family: @font-body; + opacity: 0.8; + } + + nav a { + font-family: @font-body; + } +} diff --git a/templates/characterCreation/tabs/experience.hbs b/templates/characterCreation/tabs/experience.hbs index 77dca6dc..3eb92834 100644 --- a/templates/characterCreation/tabs/experience.hbs +++ b/templates/characterCreation/tabs/experience.hbs @@ -11,7 +11,7 @@
-
{{numberFormat this.value sign=true}}
+ {{numberFormat this.value sign=true}}
diff --git a/templates/characterCreation/tabs/traits.hbs b/templates/characterCreation/tabs/traits.hbs index 604e3721..bf32dd16 100644 --- a/templates/characterCreation/tabs/traits.hbs +++ b/templates/characterCreation/tabs/traits.hbs @@ -19,7 +19,7 @@
{{#each traits.values}}
-
{{this.name}}
+ {{this.name}} diff --git a/templates/components/card-preview.hbs b/templates/components/card-preview.hbs index 67388b6d..0df24182 100644 --- a/templates/components/card-preview.hbs +++ b/templates/components/card-preview.hbs @@ -5,19 +5,19 @@ {{#if this.img}}
-
+ {{#if altPartialBlock}} {{> @partial-block }} {{else}} {{this.name}} {{/if}} -
+
{{else}}
-
{{> @partial-block }}
+ {{> @partial-block }}
{{/if}} diff --git a/templates/dialogs/beastform/footer.hbs b/templates/dialogs/beastform/footer.hbs index 8ad53964..224a0cb5 100644 --- a/templates/dialogs/beastform/footer.hbs +++ b/templates/dialogs/beastform/footer.hbs @@ -1,3 +1,5 @@
- +
\ No newline at end of file diff --git a/templates/dialogs/deathMove.hbs b/templates/dialogs/deathMove.hbs index d2307900..341659df 100644 --- a/templates/dialogs/deathMove.hbs +++ b/templates/dialogs/deathMove.hbs @@ -6,17 +6,23 @@
    {{#each this.options as |option key|}}
  • -
  • {{/each}}
- - + +
\ No newline at end of file diff --git a/templates/dialogs/downtime/activities.hbs b/templates/dialogs/downtime/activities.hbs index 4eca8b50..9a3502e8 100644 --- a/templates/dialogs/downtime/activities.hbs +++ b/templates/dialogs/downtime/activities.hbs @@ -8,7 +8,7 @@
-
{{move.name}}
+ {{move.name}}
{{#if move.selected}}
{{move.selected}}
{{/if}} diff --git a/templates/dialogs/downtime/downtime.hbs b/templates/dialogs/downtime/downtime.hbs index 13c1face..9744ffea 100644 --- a/templates/dialogs/downtime/downtime.hbs +++ b/templates/dialogs/downtime/downtime.hbs @@ -14,14 +14,14 @@
{{#each this.refreshables.actionItems as | item |}}
-
{{item.title}}
-
{{item.name}}
+ {{item.title}} + {{item.name}}
{{/each}} {{#each this.refreshables.resourceItems as | item |}}
-
{{item.title}}
-
{{item.name}}
+ {{item.title}} + {{item.name}}
{{/each}}
diff --git a/templates/levelup/parts/selectable-card-preview.hbs b/templates/levelup/parts/selectable-card-preview.hbs index 6be03b37..27288e72 100644 --- a/templates/levelup/parts/selectable-card-preview.hbs +++ b/templates/levelup/parts/selectable-card-preview.hbs @@ -8,7 +8,9 @@ {{/if}}
-
{{this.name}}
- {{this.featureLabel}} + {{this.name}} + + {{this.featureLabel}} +
\ No newline at end of file diff --git a/templates/levelup/tabs/advancements.hbs b/templates/levelup/tabs/advancements.hbs index 86940ad4..5e65be34 100644 --- a/templates/levelup/tabs/advancements.hbs +++ b/templates/levelup/tabs/advancements.hbs @@ -30,7 +30,7 @@
{{/each}}
-
{{this.label}}
+ {{this.label}}
{{/each}} diff --git a/templates/levelup/tabs/summary.hbs b/templates/levelup/tabs/summary.hbs index a57b820a..3c3cf4b7 100644 --- a/templates/levelup/tabs/summary.hbs +++ b/templates/levelup/tabs/summary.hbs @@ -19,9 +19,13 @@ {{#if this.achievements.proficiency.shown}}
- {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.proficiencyIncrease" proficiency=this.achievements.proficiency.old }} + + {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.proficiencyIncrease" proficiency=this.achievements.proficiency.old }} + - {{this.achievements.proficiency.new}} + + {{this.achievements.proficiency.new}} +
{{/if}} @@ -29,14 +33,22 @@
{{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.damageThresholds"}}{{#if this.levelAchievements.damageThresholds.unarmored}}({{localize "DAGGERHEART.GENERAL.unarmored"}}){{/if}}
- {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.damageThresholdMajorIncrease" threshold=this.achievements.damageThresholds.major.old }} + + {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.damageThresholdMajorIncrease" threshold=this.achievements.damageThresholds.major.old }} + - {{this.achievements.damageThresholds.major.new}} + + {{this.achievements.damageThresholds.major.new}} +
- {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.damageThresholdSevereIncrease" threshold=this.achievements.damageThresholds.severe.old }} + + {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.damageThresholdSevereIncrease" threshold=this.achievements.damageThresholds.severe.old }} + - {{this.achievements.damageThresholds.severe.new}} + + {{this.achievements.damageThresholds.severe.new}} +
{{/if}} @@ -45,7 +57,7 @@
{{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.domainCards"}}
{{#each this.achievements.domainCards.values}} -
{{this.name}}
+ {{this.name}} {{/each}}
@@ -55,7 +67,7 @@
{{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.newExperiences"}}
{{#each this.achievements.experiences.values}} -
{{this.name}} {{numberFormat this.modifier sign=true}}
+ {{this.name}} {{numberFormat this.modifier sign=true}} {{/each}}
@@ -71,32 +83,48 @@
{{#if this.advancements.statistics.proficiency.shown}}
- {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.proficiencyIncrease" proficiency=this.advancements.statistics.proficiency.old }} + + {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.proficiencyIncrease" proficiency=this.advancements.statistics.proficiency.old }} + - {{this.advancements.statistics.proficiency.new}} + + {{this.advancements.statistics.proficiency.new}} +
{{/if}} {{#if this.advancements.statistics.hitPoints.shown}}
- {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.hpIncrease" hitPoints=this.advancements.statistics.hitPoints.old }} + + {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.hpIncrease" hitPoints=this.advancements.statistics.hitPoints.old }} + - {{this.advancements.statistics.hitPoints.new}} + + {{this.advancements.statistics.hitPoints.new}} +
{{/if}} {{#if this.advancements.statistics.stress.shown}}
- {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.stressIncrease" stress=this.advancements.statistics.stress.old }} + + {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.stressIncrease" stress=this.advancements.statistics.stress.old }} + - {{this.advancements.statistics.stress.new}} + + {{this.advancements.statistics.stress.new}} +
{{/if}} {{#if this.advancements.statistics.evasion.shown}}
- {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.evasionIncrease" evasion=this.advancements.statistics.evasion.old }} + + {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.evasionIncrease" evasion=this.advancements.statistics.evasion.old }} + - {{this.advancements.statistics.evasion.new}} + + {{this.advancements.statistics.evasion.new}} +
{{/if}}
@@ -108,9 +136,13 @@ {{#each this.advancements.traits}}
- {{this.label}}: {{this.old}} + + {{this.label}}: {{this.old}} + - {{this.new}} + + {{this.new}} +
{{/each}}
@@ -121,7 +153,7 @@
{{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.domainCards"}}
{{#each this.advancements.domainCards}} -
{{this.name}}
+ {{this.name}} {{/each}}
@@ -132,7 +164,7 @@
{{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.experienceIncreases"}}
{{#each this.advancements.experiences}} -
{{this.name}} {{numberFormat this.modifier sign=true}}
+ {{this.name}} {{numberFormat this.modifier sign=true}} {{/each}}
@@ -143,7 +175,7 @@
{{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.subclass"}}
{{#each this.advancements.subclass}} -
{{this.name}} - {{this.featureLabel}}
+ {{this.name}} - {{this.featureLabel}} {{/each}}
@@ -154,9 +186,9 @@
{{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.multiclass"}}
-
{{this.name}}
-
{{this.domain}}
-
{{this.subclass}}
+ {{this.name}} + {{this.domain}} + {{this.subclass}}
{{/with}} @@ -164,21 +196,29 @@ {{#if this.advancements.vicious.damage}}
- {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.damageIncreased" damage=this.advancements.vicious.damage.old }} + + {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.damageIncreased" damage=this.advancements.vicious.damage.old }} + - {{this.advancements.vicious.damage.new}} + + {{this.advancements.vicious.damage.new}} +
{{/if}} {{#if this.advancements.vicious.range}}
- {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.rangeIncreased" range=this.advancements.vicious.range.old }} + + {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.rangeIncreased" range=this.advancements.vicious.range.old }} + - {{this.advancements.vicious.range.new}} + + {{this.advancements.vicious.range.new}} +
{{/if}} {{#each this.advancements.simple}}
-
{{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.simpleFeature" feature=this}}
+ {{localize "DAGGERHEART.APPLICATIONS.Levelup.summary.simpleFeature" feature=this}}
{{/each}} diff --git a/templates/sheets-settings/adversary-settings/features.hbs b/templates/sheets-settings/adversary-settings/features.hbs index b26fa10c..ec6a9e54 100644 --- a/templates/sheets-settings/adversary-settings/features.hbs +++ b/templates/sheets-settings/adversary-settings/features.hbs @@ -23,7 +23,7 @@ {{/each}}
- {{localize "DAGGERHEART.GENERAL.dropFeaturesHere"}} + {{localize "DAGGERHEART.GENERAL.dropFeaturesHere"}}
\ No newline at end of file diff --git a/templates/sheets-settings/character-settings/details.hbs b/templates/sheets-settings/character-settings/details.hbs index 401f71f2..42e17a9b 100644 --- a/templates/sheets-settings/character-settings/details.hbs +++ b/templates/sheets-settings/character-settings/details.hbs @@ -10,7 +10,7 @@
{{#each document._source.system.traits as | trait key |}}
-
{{localize (concat "DAGGERHEART.CONFIG.Traits." key ".name" )}}
+ {{localize (concat "DAGGERHEART.CONFIG.Traits." key ".name" )}}
{{/each}} diff --git a/templates/sheets-settings/environment-settings/adversaries.hbs b/templates/sheets-settings/environment-settings/adversaries.hbs index 3464a745..e1d90e81 100644 --- a/templates/sheets-settings/environment-settings/adversaries.hbs +++ b/templates/sheets-settings/environment-settings/adversaries.hbs @@ -26,7 +26,7 @@ {{/each}}
- {{localize "DAGGERHEART.GENERAL.dropActorsHere"}} + {{localize "DAGGERHEART.GENERAL.dropActorsHere"}}
{{/each}} diff --git a/templates/sheets/actors/adversary/header.hbs b/templates/sheets/actors/adversary/header.hbs index d1c325f6..8411dd93 100644 --- a/templates/sheets/actors/adversary/header.hbs +++ b/templates/sheets/actors/adversary/header.hbs @@ -26,12 +26,12 @@
-
+ {{{description}}} -
-
+ + {{localize 'DAGGERHEART.ACTORS.Adversary.FIELDS.motivesAndTactics.label'}}: {{{source.system.motivesAndTactics}}} -
+
diff --git a/templates/sheets/actors/adversary/sidebar.hbs b/templates/sheets/actors/adversary/sidebar.hbs index 2fc106a8..16a8ea91 100644 --- a/templates/sheets/actors/adversary/sidebar.hbs +++ b/templates/sheets/actors/adversary/sidebar.hbs @@ -98,9 +98,9 @@
{{#each source.system.experiences as |experience id|}}
-
+ +{{experience.value}} -
+ {{experience.name}}
diff --git a/templates/sheets/actors/character/sidebar.hbs b/templates/sheets/actors/character/sidebar.hbs index 497aee7d..6131104d 100644 --- a/templates/sheets/actors/character/sidebar.hbs +++ b/templates/sheets/actors/character/sidebar.hbs @@ -168,9 +168,9 @@
{{#each document.system.experiences as |experience id|}} \ No newline at end of file diff --git a/templates/sheets/global/partials/inventory-item-V2.hbs b/templates/sheets/global/partials/inventory-item-V2.hbs index c5dca4f9..b456c17d 100644 --- a/templates/sheets/global/partials/inventory-item-V2.hbs +++ b/templates/sheets/global/partials/inventory-item-V2.hbs @@ -30,7 +30,7 @@ Parameters:
{{!-- Item Name --}} -
{{localize item.name}} {{#unless noExtensible}}{{/unless}}
+ {{localize item.name}} {{#unless noExtensible}}{{/unless}} {{!-- Tags Start --}} {{#with item}} diff --git a/templates/sheets/global/tabs/tab-navigation.hbs b/templates/sheets/global/tabs/tab-navigation.hbs index 10d76619..f9a31d3e 100755 --- a/templates/sheets/global/tabs/tab-navigation.hbs +++ b/templates/sheets/global/tabs/tab-navigation.hbs @@ -5,7 +5,7 @@ diff --git a/templates/ui/chat/ability-use.hbs b/templates/ui/chat/ability-use.hbs index 1ab42978..e9f2c22c 100644 --- a/templates/ui/chat/ability-use.hbs +++ b/templates/ui/chat/ability-use.hbs @@ -6,7 +6,7 @@

{{item.name}}

    {{#each item.tags as |tag|}} -
  • {{tag}}
  • +
  • {{tag}}
  • {{/each}}
@@ -17,11 +17,11 @@
{{#each actions as |action|}} {{#if (eq action.systemPath "attack")}} {{/if}} {{!-- {{#if action.cost.value}}
{{action.cost.value}} {{action.cost.type}}
{{/if}} --}} diff --git a/templates/ui/chat/downtime.hbs b/templates/ui/chat/downtime.hbs index 6c2d2023..9d7e4f8c 100644 --- a/templates/ui/chat/downtime.hbs +++ b/templates/ui/chat/downtime.hbs @@ -15,7 +15,9 @@
{{#each move.actions as | action index |}} - + {{/each}} {{/each}} diff --git a/templates/ui/itemBrowser/itemBrowser.hbs b/templates/ui/itemBrowser/itemBrowser.hbs index 65c2121e..000e4c03 100644 --- a/templates/ui/itemBrowser/itemBrowser.hbs +++ b/templates/ui/itemBrowser/itemBrowser.hbs @@ -56,10 +56,10 @@
Name
- {{#each menu.data.columns}} -
{{label}}
- {{/each}} -
+ {{#each menu.data.columns}} + {{label}} + {{/each}} +
{{/if}}
{{#each items}} @@ -67,14 +67,14 @@
-
{{name}}
+ {{name}} {{#each ../menu.data.columns}} -
{{#with (@root.formatLabel ../this this) as | label |}}{{{label}}}{{/with}}
+ {{#with (@root.formatLabel ../this this) as | label |}}{{{label}}}{{/with}} {{/each}}
-
{{{system.description}}}
+ {{{system.description}}}
{{/each}} diff --git a/templates/ui/itemBrowser/sidebar.hbs b/templates/ui/itemBrowser/sidebar.hbs index 56d9db6d..8df0aed3 100644 --- a/templates/ui/itemBrowser/sidebar.hbs +++ b/templates/ui/itemBrowser/sidebar.hbs @@ -18,7 +18,7 @@ data-action="selectFolder" data-folder-id="{{../id}}.folders.{{id}}" > - • {{label}} + • {{label}}
{{/each}}
From 03e6570d68c76ee5b74769cb432d751c47b5e6f1 Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Sun, 17 Aug 2025 14:42:55 +0200 Subject: [PATCH 006/260] Feature/519 auto expand roll message (#959) * Add settings to auto expand roll message sections * Change Settings labels to match roll message ones * Add setting to auto expand chat card desc --- lang/en.json | 7 +++- module/data/settings/Appearance.mjs | 18 ++++++++++ module/documents/chatMessage.mjs | 41 +++++++++++++++------- templates/settings/appearance-settings.hbs | 8 +++++ templates/ui/chat/parts/damage-part.hbs | 4 +-- templates/ui/chat/roll.hbs | 2 +- 6 files changed, 64 insertions(+), 16 deletions(-) diff --git a/lang/en.json b/lang/en.json index 632846c0..1088a94f 100755 --- a/lang/en.json +++ b/lang/en.json @@ -2107,7 +2107,12 @@ "extendCharacterDescriptions": { "label": "Characters" }, "extendAdversaryDescriptions": { "label": "Adversaries" }, "extendEnvironmentDescriptions": { "label": "Environments" }, - "extendItemDescriptions": { "label": "Items" } + "extendItemDescriptions": { "label": "Items" }, + "expandRollMessage": "Auto-expand Message Sections", + "expandRollMessageDesc": { "label": "Description" }, + "expandRollMessageRoll": { "label": "Formula" }, + "expandRollMessageDamage": { "label": "Damage/Healing" }, + "expandRollMessageTarget": { "label": "Target" } }, "fearDisplay": { "token": "Tokens", diff --git a/module/data/settings/Appearance.mjs b/module/data/settings/Appearance.mjs index ac980346..e493b187 100644 --- a/module/data/settings/Appearance.mjs +++ b/module/data/settings/Appearance.mjs @@ -71,6 +71,24 @@ export default class DhAppearance extends foundry.abstract.DataModel { extendItemDescriptions: new fields.BooleanField({ initial: false, label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.extendItemDescriptions.label' + }), + expandRollMessage: new fields.SchemaField({ + desc: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageDesc.label' + }), + roll: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageRoll.label' + }), + damage: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageDamage.label' + }), + target: new fields.BooleanField({ + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageTarget.label' + }) }) }; } diff --git a/module/documents/chatMessage.mjs b/module/documents/chatMessage.mjs index 43743ef1..e36c1df3 100644 --- a/module/documents/chatMessage.mjs +++ b/module/documents/chatMessage.mjs @@ -54,19 +54,36 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { e.setAttribute('data-use-perm', document.testUserPermission(game.user, 'OWNER')); }); - if (this.isContentVisible && this.type === 'dualityRoll') { - html.classList.add('duality'); - switch (this.system.roll?.result?.duality) { - case 1: - html.classList.add('hope'); - break; - case -1: - html.classList.add('fear'); - break; - default: - html.classList.add('critical'); - break; + if (this.isContentVisible) { + if(this.type === 'dualityRoll') { + html.classList.add('duality'); + switch (this.system.roll?.result?.duality) { + case 1: + html.classList.add('hope'); + break; + case -1: + html.classList.add('fear'); + break; + default: + html.classList.add('critical'); + break; + } } + + const autoExpandRoll = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance).expandRollMessage, + rollSections = html.querySelectorAll(".roll-part"), + itemDesc = html.querySelector(".domain-card-move"); + rollSections.forEach(s => { + if(s.classList.contains("roll-section")) { + const toExpand = s.querySelector('[data-action="expandRoll"]'); + toExpand.classList.toggle("expanded", autoExpandRoll.roll); + } else if(s.classList.contains("damage-section")) + s.classList.toggle("expanded", autoExpandRoll.damage); + else if(s.classList.contains("target-section")) + s.classList.toggle("expanded", autoExpandRoll.target); + }); + if(itemDesc && autoExpandRoll.desc) + itemDesc.setAttribute("open", ""); } if(!game.user.isGM) { diff --git a/templates/settings/appearance-settings.hbs b/templates/settings/appearance-settings.hbs index d4d41d62..cd0fab3e 100644 --- a/templates/settings/appearance-settings.hbs +++ b/templates/settings/appearance-settings.hbs @@ -17,6 +17,14 @@ {{formGroup settingFields.schema.fields.extendItemDescriptions value=settingFields._source.extendItemDescriptions localize=true}} +
+ {{localize 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessage'}} + {{formGroup settingFields.schema.fields.expandRollMessage.fields.desc value=settingFields.expandRollMessage.desc localize=true}} + {{formGroup settingFields.schema.fields.expandRollMessage.fields.roll value=settingFields.expandRollMessage.roll localize=true}} + {{formGroup settingFields.schema.fields.expandRollMessage.fields.damage value=settingFields.expandRollMessage.damage localize=true}} + {{formGroup settingFields.schema.fields.expandRollMessage.fields.target value=settingFields.expandRollMessage.target localize=true}} +
+ {{#if showDiceSoNice}}
{{localize "DAGGERHEART.SETTINGS.Menu.appearance.diceSoNice.title"}} diff --git a/templates/ui/chat/parts/damage-part.hbs b/templates/ui/chat/parts/damage-part.hbs index 346e9621..05b6b825 100644 --- a/templates/ui/chat/parts/damage-part.hbs +++ b/templates/ui/chat/parts/damage-part.hbs @@ -1,4 +1,4 @@ -
+
{{localize (ifThen hasHealing "DAGGERHEART.ACTIONS.TYPES.healing.name" "DAGGERHEART.ACTIONS.TYPES.damage.name")}}
@@ -12,7 +12,7 @@
{{#each damage as | roll index | }}
- {{log @root}} + {{localize (concat 'DAGGERHEART.CONFIG.HealingType.' index '.inChatRoll')}}
{{localize "DAGGERHEART.GENERAL.total"}}: {{roll.total}}
{{#if (and (eq index "hitPoints")../isDirect)}}
{{localize "DAGGERHEART.CONFIG.DamageType.direct.short"}}
{{/if}}
{{#each roll.parts}} diff --git a/templates/ui/chat/roll.hbs b/templates/ui/chat/roll.hbs index 2e6f5d24..be51969f 100644 --- a/templates/ui/chat/roll.hbs +++ b/templates/ui/chat/roll.hbs @@ -1,7 +1,7 @@
{{title}}
{{#if hasRoll}}{{> 'systems/daggerheart/templates/ui/chat/parts/roll-part.hbs'}}{{/if}} - {{#if (and (not (empty damage)) (or hasDamage hasHealing))}}{{> 'systems/daggerheart/templates/ui/chat/parts/damage-part.hbs'}}{{/if}} + {{#if (or hasDamage hasHealing)}}{{> 'systems/daggerheart/templates/ui/chat/parts/damage-part.hbs'}}{{/if}} {{#if hasTarget}}{{> 'systems/daggerheart/templates/ui/chat/parts/target-part.hbs'}}{{/if}}
From 16591cd327a9ad767b408b2fe3f8550f386400c9 Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Sun, 17 Aug 2025 15:58:34 +0200 Subject: [PATCH 007/260] Feature/761 direct damage (#961) * Add Direct Damage to Adversary base attack * Add direct damage to weapon --- module/applications/sheets/api/actor-setting.mjs | 3 +-- templates/actionTypes/damage.hbs | 2 +- templates/sheets-settings/action-settings/effect.hbs | 2 +- templates/sheets-settings/adversary-settings/attack.hbs | 2 +- templates/sheets/items/weapon/settings.hbs | 2 ++ 5 files changed, 6 insertions(+), 5 deletions(-) diff --git a/module/applications/sheets/api/actor-setting.mjs b/module/applications/sheets/api/actor-setting.mjs index 79aa1c37..d8cfb40f 100644 --- a/module/applications/sheets/api/actor-setting.mjs +++ b/module/applications/sheets/api/actor-setting.mjs @@ -44,9 +44,8 @@ export default class DHBaseActorSettings extends DHApplicationMixin(DocumentShee const context = await super._prepareContext(options); context.isNPC = this.actor.isNPC; - if (context.systemFields.attack) { + if (context.systemFields.attack) context.systemFields.attack.fields = this.actor.system.attack.schema.fields; - } return context; } diff --git a/templates/actionTypes/damage.hbs b/templates/actionTypes/damage.hbs index 3ff4c142..6a94752b 100644 --- a/templates/actionTypes/damage.hbs +++ b/templates/actionTypes/damage.hbs @@ -13,7 +13,7 @@ {{formField @root.fields.damage.fields.includeBase value=@root.source.damage.includeBase name="damage.includeBase" classes="checkbox" localize=true }} {{/if}} {{#unless (eq @root.source.type 'healing')}} - {{formField @root.fields.damage.fields.direct value=@root.source.damage.direct name="damage.direct" localize=true classes="checkbox"}} + {{formField directField value=source.direct name=(concat path "damage.direct") localize=true classes="checkbox"}} {{/unless}}
{{#each source.parts as |dmg index|}} diff --git a/templates/sheets-settings/action-settings/effect.hbs b/templates/sheets-settings/action-settings/effect.hbs index 9cb2e6c2..26a097af 100644 --- a/templates/sheets-settings/action-settings/effect.hbs +++ b/templates/sheets-settings/action-settings/effect.hbs @@ -5,7 +5,7 @@ > {{#if fields.roll}}{{> 'systems/daggerheart/templates/actionTypes/roll.hbs' fields=fields.roll.fields source=source.roll}}{{/if}} {{#if fields.save}}{{> 'systems/daggerheart/templates/actionTypes/save.hbs' fields=fields.save.fields source=source.save}}{{/if}} - {{#if fields.damage}}{{> 'systems/daggerheart/templates/actionTypes/damage.hbs' fields=fields.damage.fields.parts.element.fields source=source.damage}}{{/if}} + {{#if fields.damage}}{{> 'systems/daggerheart/templates/actionTypes/damage.hbs' fields=fields.damage.fields.parts.element.fields source=source.damage directField=fields.damage.fields.direct }}{{/if}} {{#if fields.resource}}{{> 'systems/daggerheart/templates/actionTypes/resource.hbs' fields=fields.resource.fields source=source.resource}}{{/if}} {{#if fields.macro}}{{> 'systems/daggerheart/templates/actionTypes/macro.hbs' fields=fields.macro source=source.macro}}{{/if}} {{#if fields.effects}}{{> 'systems/daggerheart/templates/actionTypes/effect.hbs' fields=fields.effects.element.fields source=source.effects}}{{/if}} diff --git a/templates/sheets-settings/adversary-settings/attack.hbs b/templates/sheets-settings/adversary-settings/attack.hbs index f7d38f1e..12bafca8 100644 --- a/templates/sheets-settings/adversary-settings/attack.hbs +++ b/templates/sheets-settings/adversary-settings/attack.hbs @@ -19,5 +19,5 @@ {{/if}} {{/if}}
- {{> 'systems/daggerheart/templates/actionTypes/damage.hbs' fields=systemFields.attack.fields.damage.fields.parts.element.fields source=document.system.attack.damage path="system.attack." horde=(eq document._source.system.type 'horde')}} + {{> 'systems/daggerheart/templates/actionTypes/damage.hbs' fields=systemFields.attack.fields.damage.fields.parts.element.fields source=document.system.attack.damage path="system.attack." directField=systemFields.attack.fields.damage.fields.direct horde=(eq document._source.system.type 'horde')}} \ No newline at end of file diff --git a/templates/sheets/items/weapon/settings.hbs b/templates/sheets/items/weapon/settings.hbs index 021fc627..b2738c75 100644 --- a/templates/sheets/items/weapon/settings.hbs +++ b/templates/sheets/items/weapon/settings.hbs @@ -27,6 +27,8 @@ {{formInput fields.value.fields.bonus value=source.value.bonus name="system.attack.damage.parts.0.value.bonus" localize=true}} {{localize "DAGGERHEART.GENERAL.type"}} {{formInput fields.type value=source.type name="system.attack.damage.parts.0.type" localize=true}} + {{localize "DAGGERHEART.CONFIG.DamageType.direct.name"}} + {{formInput @root.systemFields.attack.fields.damage.fields.direct value=@root.document.system.attack.damage.direct name="system.attack.damage.direct" localize=true}} {{/with}} {{/with}} From 18b6194afeaca73bccb45940c1fe85618467caab Mon Sep 17 00:00:00 2001 From: joaquinpereyra98 <24190917+joaquinpereyra98@users.noreply.github.com> Date: Sun, 17 Aug 2025 13:55:33 -0300 Subject: [PATCH 008/260] [Feature] Improves ForeignDocumentUUIDArrayField for can use documents to update it. (#963) Fixes #389 Co-authored-by: Joaquin Pereyra --- module/data/fields/foreignDocumentUUIDField.mjs | 9 +++++++++ module/helpers/utils.mjs | 2 +- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/module/data/fields/foreignDocumentUUIDField.mjs b/module/data/fields/foreignDocumentUUIDField.mjs index 0efa60da..cf68ace3 100644 --- a/module/data/fields/foreignDocumentUUIDField.mjs +++ b/module/data/fields/foreignDocumentUUIDField.mjs @@ -38,4 +38,13 @@ export default class ForeignDocumentUUIDField extends foundry.data.fields.Docume toObject(value) { return value?.uuid ?? value; } + + /** @override */ + _cast(value) { + if (typeof value === 'string') return value; + if (value instanceof foundry.abstract.Document) return value.uuid; + throw new Error( + `The value provided to a ForeignDocumentUUIDField must be a ${foundry.abstract.Document.name} instance or a UUID string.` + ); + } } diff --git a/module/helpers/utils.mjs b/module/helpers/utils.mjs index 6f4e5a26..47b6d904 100644 --- a/module/helpers/utils.mjs +++ b/module/helpers/utils.mjs @@ -177,7 +177,7 @@ Roll.replaceFormulaData = function (formula, data = {}, { missing, warn = false return nativeReplaceFormulaData(formula, data, { missing, warn }); }; -foundry.dice.terms.Die.MODIFIERS.sc = 'selfCorrecting'; +foundry.utils.setProperty(foundry, 'dice.terms.Die.MODIFIERS.sc', 'selfCorrecting'); /** * Return the configured value as result if 1 is rolled From 577ed5f491c0bf36224e4dc062fe1581ddcf67a8 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Mon, 18 Aug 2025 03:00:30 +0200 Subject: [PATCH 009/260] Added tooltips for experience description (#975) --- templates/dialogs/dice-roll/rollSelection.hbs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/dialogs/dice-roll/rollSelection.hbs b/templates/dialogs/dice-roll/rollSelection.hbs index 3aac0321..b2feaa0b 100644 --- a/templates/dialogs/dice-roll/rollSelection.hbs +++ b/templates/dialogs/dice-roll/rollSelection.hbs @@ -74,7 +74,7 @@ {{localize "DAGGERHEART.GENERAL.experience.plural"}} {{#each experiences}} {{#if name}} -
+
{{#if (includes ../selectedExperiences id)}} {{else}} From 495575fba4db1c9bcb2664a3807c4b01e3809ce0 Mon Sep 17 00:00:00 2001 From: Murilo Brito <91566541+moliloo@users.noreply.github.com> Date: Sun, 17 Aug 2025 22:19:22 -0300 Subject: [PATCH 010/260] [Support] Update Development Branch (#1001) * add typo report template (#971) Co-authored-by: Psitacus * Fix/fix weapon damage datas in sheet (#988) * Temp ActionField attack type missing * Move missing attack type to getModel * Fix weapon base attack reseting on update * [PR]Fix/allow deal damage button use owner (#985) * Temp ActionField attack type missing * Move missing attack type to getModel * Fix player not allowed to use Deal Damage button if Actor not assigned * Fix/add translation key for Unarmed Attack (#973) Co-authored-by: Chris Ryan * Add setup script for development (#981) * [PR] testing something (#995) * testing something * added template for PR test * Initial Commit (#992) --------- Co-authored-by: Psitacus <59754077+Psitacus@users.noreply.github.com> Co-authored-by: Psitacus Co-authored-by: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Co-authored-by: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Co-authored-by: Chris Ryan Co-authored-by: Luiz HD Costa Co-authored-by: Nikhil Nagarajan --- .env.example | 2 + .github/ISSUE_TEMPLATE/bug_report.md | 12 ++-- .github/ISSUE_TEMPLATE/feature_report.md | 14 +++++ .github/ISSUE_TEMPLATE/typo_report.md | 9 +++ .../community_pull_request_template.md | 55 +++++++++++++++++++ .gitignore | 1 + README.md | 45 ++++++++++----- lang/en.json | 2 +- module/applications/ui/chatLog.mjs | 2 +- module/data/actor/character.mjs | 2 +- module/documents/item.mjs | 8 +++ package.json | 5 +- pull_request_template.md | 9 +++ tools/dev-setup.mjs | 18 ++++++ tools/run-start.mjs | 27 +++++++++ 15 files changed, 186 insertions(+), 25 deletions(-) create mode 100644 .env.example create mode 100644 .github/ISSUE_TEMPLATE/feature_report.md create mode 100644 .github/ISSUE_TEMPLATE/typo_report.md create mode 100644 .github/PULL_REQUEST_TEMPLATE/community_pull_request_template.md create mode 100644 tools/dev-setup.mjs create mode 100644 tools/run-start.mjs diff --git a/.env.example b/.env.example new file mode 100644 index 00000000..730309d3 --- /dev/null +++ b/.env.example @@ -0,0 +1,2 @@ +FOUNDRY_MAIN_PATH=/path/to/foundry/resources/app/main.js +FOUNDRY_DATA_PATH=/path/to/foundry/data \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 938abe7c..71d48111 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -1,10 +1,10 @@ --- name: Bug report -about: Create a report to help us improve -title: "[BUG] - " +about: Create a bug report to help us identify issues and resolve them +title: "[Bug] " labels: bug +type: bug assignees: '' - --- **Describe the bug** @@ -24,11 +24,11 @@ A clear and concise description of what you expected to happen. If applicable, add screenshots to help explain your problem. **Setup Information:** - - OS: [e.g. iOS] + - OS: [e.g. iOS, Windows] - Browser [e.g. chrome, safari] - Foundry Version [e.g. v13 b342] -- System Version [e.g. main-3593f44] +- System Version [e.g. v.1.0, v.1.0.1] **Additional context** -Add any other context about the problem here. +Add any other context about the problem here. \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/feature_report.md b/.github/ISSUE_TEMPLATE/feature_report.md new file mode 100644 index 00000000..df00ba37 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_report.md @@ -0,0 +1,14 @@ +--- +name: Feature report +about: Create a feature report for suggestions on improving the system +title: "[Feature] " +labels: enhancement, discussion, maybe +type: feature +assignees: '' +--- + +**Description** +A clear and concise description of what feature needs to be implemented. + +**Screenshots** +If applicable, add screenshots to help explain the feature that needs to be implemented. \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/typo_report.md b/.github/ISSUE_TEMPLATE/typo_report.md new file mode 100644 index 00000000..67b1cd98 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/typo_report.md @@ -0,0 +1,9 @@ +--- +name: Typo report +about: Create a new issue to report a compendium typo +title: "[TYPO] - " +labels: compendium, typo +type: bug +assignees: '' + +--- \ No newline at end of file diff --git a/.github/PULL_REQUEST_TEMPLATE/community_pull_request_template.md b/.github/PULL_REQUEST_TEMPLATE/community_pull_request_template.md new file mode 100644 index 00000000..25812870 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE/community_pull_request_template.md @@ -0,0 +1,55 @@ +--- +name: Pull Request +about: Create a new pull request +title: "[Community PR] " +labels: community pr +assignees: '' +--- +## Description + +Please include a summary of the change and which issue is fixed (if applicable). Also include relevant context or motivation for the change. + +- Fixes #(issue) +- Closes #(issue) + +## Type of Change + +Please check the relevant options: + +- [ ] Bug fix +- [ ] New feature +- [ ] Code cleanup/refactor +- [ ] Documentation update +- [ ] Test coverage +- [ ] Dependency update +- [ ] Configuration change +- [ ] Other (please describe): + +## How Has This Been Tested? + +Please describe the tests you ran to verify your changes: + +- [ ] Manual testing +- [ ] Other: + +## Screenshots (if applicable) + +Include screenshots or GIFs to help explain your changes visually. + +## Checklist + +- [ ] My code follows the project style guidelines +- [ ] I have performed a self-review of my code +- [ ] I have commented my code where necessary +- [ ] I have made corresponding changes to the documentation +- [ ] My changes generate no new warnings or errors +- [ ] I have added tests that prove my fix or feature works +- [ ] New and existing tests pass locally with my changes + +## Additional Comments + +Add any other context or questions here. + +--- + +> Thank you for your contribution! 🎉 diff --git a/.gitignore b/.gitignore index 264581a4..9a22c0ce 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ .vscode +.env node_modules /packs Build diff --git a/README.md b/README.md index fda78b4b..0c2dabc3 100644 --- a/README.md +++ b/README.md @@ -24,24 +24,41 @@ You can find the documentation here: https://github.com/Foundryborne/daggerheart ## Development Setup -- Open a terminal in the directory with the repo `cd //` -- NOTE: The repo should be placed in the system files are or somewhere else and a link (if on linux) is placed in the system directory -- NOTE: Linux link can be made using `ln -snf daggerheart` inside the system folder -- Install npm `npm install` -- Update package.json to match your profile +1. **Navigate to the repo directory:** -``` -"start": "concurrently \"rollup -c --watch\" \"node C:/FoundryDev/resources/app/main.js --dataPath=C:/FoundryDevFiles --noupnp\" \"gulp\"", -"start-test": "node C:/FoundryDev/resources/app/main.js --dataPath=C:/FoundryDevFiles && rollup -c --watch && gulp", + ```bash + cd // + ``` -``` +2. **Install dependencies:** -- Replace `C:/FoundryDev/resources/app/main.js` with `////` -- The main is likely in `/resouces/app/main.js` -- Replace `--dataPath=C:/FoundryDevFiles` with `////` + ```bash + npm install + ``` -Now you should be able to build the app using `npm start` -[Foundry VTT Website][1] +3. **Configure your Foundry paths:** + + ```bash + npm run setup:dev -- --foundry-path="/path/to/foundry/main.js" --data-path="/path/to/data" + ``` + +4. **Start developing:** + ```bash + npm start + ``` + +### Available Scripts + +- `npm start` - Start development with file watching and Foundry launching +- `npm run build` - One-time build +- `npm run setup:dev -- --foundry-path="" --data-path=""` - Configure development environment + +### Notes + +- The repo should be placed in your Foundry `Data/systems/` directory or symlinked there +- Linux symlink can be made using `ln -snf daggerheart` inside the systems folder +- Your `.env` file is ignored by git, so each developer can have their own configuration + [Foundry VTT Website][1] [1]: https://foundryvtt.com/ diff --git a/lang/en.json b/lang/en.json index 1088a94f..954f8025 100755 --- a/lang/en.json +++ b/lang/en.json @@ -1995,7 +1995,7 @@ "true": "True", "type": "Type", "unarmed": "Unarmed", - "unarmedStrike": "Unarmed Strike", + "unarmedAttack": "Unarmed Attack", "unarmored": "Unarmored", "use": "Use", "used": "Used", diff --git a/module/applications/ui/chatLog.mjs b/module/applications/ui/chatLog.mjs index 8b4b12d3..a80974ed 100644 --- a/module/applications/ui/chatLog.mjs +++ b/module/applications/ui/chatLog.mjs @@ -108,7 +108,7 @@ export default class DhpChatLog extends foundry.applications.sidebar.tabs.ChatLo async onRollDamage(event, message) { event.stopPropagation(); const actor = await this.getActor(message.system.source.actor); - if (game.user.character?.id !== actor.id && !game.user.isGM) return true; + if(!actor.isOwner) return true; if (message.system.source.item && message.system.source.action) { const action = this.getAction(actor, message.system.source.item, message.system.source.action); if (!action || !action?.rollDamage) return; diff --git a/module/data/actor/character.mjs b/module/data/actor/character.mjs index 45dfcfc8..bb6a8c65 100644 --- a/module/data/actor/character.mjs +++ b/module/data/actor/character.mjs @@ -95,7 +95,7 @@ export default class DhCharacter extends BaseDataActor { }), attack: new ActionField({ initial: { - name: 'Unarmed Attack', + name: 'DAGGERHEART.GENERAL.unarmedAttack', img: 'icons/skills/melee/unarmed-punch-fist-yellow-red.webp', _id: foundry.utils.randomID(), systemPath: 'attack', diff --git a/module/documents/item.mjs b/module/documents/item.mjs index fb558e8c..8492f068 100644 --- a/module/documents/item.mjs +++ b/module/documents/item.mjs @@ -28,6 +28,14 @@ export default class DHItem extends foundry.documents.Item { return doc; } + /* -------------------------------------------- */ + + /** @inheritDoc */ + static migrateData(source) { + if(source.system?.attack && !source.system.attack.type) source.system.attack.type = "attack"; + return super.migrateData(source); + } + /** * @inheritdoc * @param {object} options - Options which modify the getRollData method. diff --git a/package.json b/package.json index 023ccff2..dbece0c7 100644 --- a/package.json +++ b/package.json @@ -7,7 +7,7 @@ "rollup": "^4.40.0" }, "scripts": { - "start": "concurrently \"rollup -c --watch\" \"node ../../../../FoundryDev/main.js --dataPath=../../../ --noupnp\" \"gulp\"", + "start": "node ./tools/run-start.mjs", "start-test": "node ./resources/app/main.js --dataPath=./ && rollup -c --watch && gulp", "build": "npm run rollup && npm run gulp", "rollup": "rollup -c", @@ -16,7 +16,8 @@ "pushLDBtoYML": "node ./tools/pushLDBtoYML.mjs", "pullYMLtoLDB": "node ./tools/pullYMLtoLDB.mjs", "pullYMLtoLDBBuild": "node ./tools/pullYMLtoLDBBuild.mjs", - "createSymlink": "node ./tools/create-symlink.mjs" + "createSymlink": "node ./tools/create-symlink.mjs", + "setup:dev": "node ./tools/dev-setup.mjs" }, "devDependencies": { "@foundryvtt/foundryvtt-cli": "^1.0.2", diff --git a/pull_request_template.md b/pull_request_template.md index 194ce9f4..c1b8cbfa 100644 --- a/pull_request_template.md +++ b/pull_request_template.md @@ -1,3 +1,12 @@ +--- +name: Pull Request +about: Create a new pull request +title: "[PR] " +labels: pr +assignees: '' +--- +Is this a community PR? Please go to preview tab and click [here](?expand=1&template=community_pull_request_template.md). If not, delete this line. + ## Description Please include a summary of the change and which issue is fixed (if applicable). Also include relevant context or motivation for the change. diff --git a/tools/dev-setup.mjs b/tools/dev-setup.mjs new file mode 100644 index 00000000..f232f5a8 --- /dev/null +++ b/tools/dev-setup.mjs @@ -0,0 +1,18 @@ +#!/usr/bin/env node +import fs from 'fs'; + +const args = process.argv.slice(2); +const foundryPath = args.find(arg => arg.startsWith('--foundry-path='))?.split('=')[1]; +const dataPath = args.find(arg => arg.startsWith('--data-path='))?.split('=')[1]; + +if (!foundryPath || !dataPath) { + console.log('Usage: npm run setup:dev -- --foundry-path="/path/to/foundry/main.js" --data-path="/path/to/data"'); + process.exit(1); +} + +const envContent = `FOUNDRY_MAIN_PATH=${foundryPath} +FOUNDRY_DATA_PATH=${dataPath} +`; + +fs.writeFileSync('.env', envContent); +console.log(`✅ Development environment configured: ${foundryPath}, ${dataPath}`); diff --git a/tools/run-start.mjs b/tools/run-start.mjs new file mode 100644 index 00000000..e620d13f --- /dev/null +++ b/tools/run-start.mjs @@ -0,0 +1,27 @@ +#!/usr/bin/env node +import { spawn } from 'child_process'; +import fs from 'fs'; + +// Load .env file if it exists +if (fs.existsSync('.env')) { + const envFile = fs.readFileSync('.env', 'utf8'); + envFile.split('\n').forEach(line => { + const [key, value] = line.split('='); + if (key && value) { + process.env[key] = value; + } + }); +} + +// Set defaults if not in environment +const foundryPath = process.env.FOUNDRY_MAIN_PATH || '../../../../FoundryDev/main.js'; +const dataPath = process.env.FOUNDRY_DATA_PATH || '../../../'; + +// Run the original command with proper environment +const args = ['rollup -c --watch', `node "${foundryPath}" --dataPath="${dataPath}" --noupnp`, 'gulp']; + +spawn('npx', ['concurrently', ...args.map(arg => `"${arg}"`)], { + stdio: 'inherit', + cwd: process.cwd(), + shell: true +}); From 8c84edddadb7d334b3d773ec344f09176592e48f Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Mon, 18 Aug 2025 03:44:59 +0200 Subject: [PATCH 011/260] [PR][Feature] 798 - Attribution (#986) * Added attribution for items, adversary and environment * Added Attribution to all adversaries * Added attribution to environments * Added attribution for class and subclass * Added Attribution to Ancestry/Community * Added Attribution for Beastforms * Added Attribution to DomainCards * Added Attribution for wepaons * Attribution for Armor/Loot/Consumables * Added a setting to hide attribution --- lang/en.json | 17 +++- module/applications/dialogs/_module.mjs | 1 + .../dialogs/attributionDialog.mjs | 93 +++++++++++++++++++ .../applications/sheets/actors/adversary.mjs | 10 +- .../sheets/actors/environment.mjs | 12 ++- .../sheets/api/application-mixin.mjs | 50 +++++++++- module/applications/sheets/api/base-actor.mjs | 3 + module/applications/sheets/api/base-item.mjs | 20 +++- module/config/generalConfig.mjs | 7 ++ module/data/actor/adversary.mjs | 3 +- module/data/actor/base.mjs | 17 +++- module/data/actor/environment.mjs | 3 +- module/data/item/base.mjs | 18 +++- module/data/settings/Appearance.mjs | 5 + ...ersary_Acid_Burrower_89yAh30vaNQOALlz.json | 9 +- ...ary_Adult_Flickerfly_G7jiltRjgvVhZewm.json | 9 +- ..._Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json | 9 +- ...ary_Arch_Necromancer_WPEOIGfclNJxWb87.json | 9 +- ...versary_Archer_Guard_JRhrrEg5UroURiAD.json | 9 +- ...sary_Archer_Squadron_0ts6CGd93lLqGZI5.json | 9 +- ...ry_Assassin_Poisoner_h5RuhzGL17dW5FBT.json | 9 +- ...adversary_Battle_Box_dgH3fW9FTYLaIDvS.json | 9 +- .../adversary_Bear_71qKDLKO3CsrNkdy.json | 9 +- ...versary_Bladed_Guard_B4LZcGuBAHzyVdzy.json | 9 +- ...ersary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json | 9 +- .../adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json | 9 +- ...dversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json | 9 +- .../adversary_Conscript_99TqczuQipBmaB8i.json | 9 +- .../adversary_Construct_uOP5oT9QzXPlnf3p.json | 9 +- .../adversary_Courtesan_ZxWaWPdzFIUPNC62.json | 9 +- .../adversary_Courtier_CBBuEXAlLKFMJdjg.json | 9 +- ...adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json | 9 +- .../adversary_Cult_Fang_tyBOpLfigAhI9bU3.json | 9 +- ...ersary_Cult_Initiate_zx99sOGTXicP4SSD.json | 9 +- ...ry_Deeproot_Defender_9x2xY9zwc3xzbXo5.json | 9 +- ...ary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json | 9 +- ...ary_Demon_of_Despair_kE4dfhqmIQpNd44e.json | 9 +- ...sary_Demon_of_Hubris_2VN3BftageoTTIzu.json | 9 +- ...ry_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json | 9 +- ...rsary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json | 9 +- ...y_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json | 9 +- .../adversary_Dire_Bat_tBWHW00epmMnkawe.json | 9 +- .../adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json | 9 +- .../adversary_Dryad_wR7cFKrHvRzbzhBT.json | 9 +- ...ersary_Electric_Eels_TLzY1nDw0Bu9Ud40.json | 9 +- ...sary_Elemental_Spark_P7h54ZePFPHpYwvB.json | 9 +- ...ersary_Elite_Soldier_bfhVWMBUh61b9J6n.json | 9 +- ...ry_Failed_Experiment_ChwwVqowFw8hJQwT.json | 9 +- ...y_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json | 9 +- ...sary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json | 9 +- ...rlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json | 11 ++- ..._Undefeated_Champion_RXkZTwBRi4dJ3JE5.json | 11 ++- ...ry_Giant_Beastmaster_8VZIgU12cB3cvlyH.json | 9 +- ...ersary_Giant_Brawler_YnObCleGjPT7yqEc.json | 9 +- ...dversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json | 9 +- ...ary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json | 9 +- .../adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json | 9 +- ...ersary_Giant_Recruit_5s8wSvpyC5rxY5aD.json | 9 +- ...rsary_Giant_Scorpion_fmfntuJ8mHRCAktP.json | 9 +- ...dversary_Glass_Snake_8KWVLWXFhlY2kYx0.json | 9 +- .../adversary_Gorgon_8mJYMpbLTb8qIOrr.json | 9 +- ...ater_Earth_Elemental_dsfB3YhoL5SudvS2.json | 9 +- ...ater_Water_Elemental_xIICT6tEdnA7dKDV.json | 9 +- ...adversary_Green_Ooze_SHXedd9zZPVfUgUa.json | 9 +- ...sary_Hallowed_Archer_kabueAo6BALApWqp.json | 9 +- ...ary_Hallowed_Soldier_VENwg7xEFcYObjmT.json | 9 +- .../adversary_Harrier_uRtghKE9mHlII4rs.json | 9 +- ...adversary_Head_Guard_mK3A5FTx6k8iPU3F.json | 9 +- ...versary_Head_Vampire_i2UNbRvgyoSs07M6.json | 9 +- ...dversary_High_Seraph_r1mbfSSwKWdcFdAU.json | 9 +- ...sary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json | 9 +- .../adversary_Hydra_MI126iMOOobQ1Obn.json | 9 +- ..._Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json | 9 +- ...y_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json | 9 +- ...ed_Knife_Kneebreaker_CBKixLH3yhivZZuL.json | 9 +- ..._Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json | 9 +- ...ged_Knife_Lieutenant_aTljstqteGoLpCBq.json | 9 +- ..._Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json | 9 +- ..._Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json | 9 +- ..._Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json | 9 +- ..._Knight_of_the_Realm_7ai2opemrclQe3VF.json | 9 +- .../adversary_Kraken_4nqv3ZwJGjnmic8j.json | 9 +- ...versary_Masked_Thief_niBpVU7yeo5ccskE.json | 9 +- ...sary_Master_Assassin_dNta0cUzr96xcFhf.json | 9 +- .../adversary_Merchant_Al3w2CgjfdT3p9ma.json | 9 +- ...rsary_Merchant_Baron_Vy02IhGhkJLuezu4.json | 9 +- ...inor_Chaos_Elemental_sRn4bqerfARvhgSV.json | 9 +- ...dversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json | 9 +- ...Minor_Fire_Elemental_DscWkNVoHak6P4hh.json | 9 +- ...versary_Minor_Treant_G62k4oSkhkoXEs2D.json | 9 +- ...ary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json | 9 +- .../adversary_Monarch_yx0vK2yfNVZKWUUi.json | 9 +- ...ersary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json | 9 +- ...adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json | 9 +- ...rsary_Oracle_of_Doom_befIqd5IYKg6eUz2.json | 9 +- ...r_Realms_Abomination_A0SeeDzwjvqOsyof.json | 9 +- ...ter_Realms_Corrupter_ms6nuOl3NFkhPj1k.json | 9 +- ..._Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json | 9 +- ...atchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json | 9 +- ...ary_Perfected_Zombie_CP6iRfHdyFWniTHY.json | 9 +- ...dversary_Petty_Noble_wycLpvebWdUqRhpP.json | 9 +- ...rsary_Pirate_Captain_OROJbjsqagVh7ECV.json | 9 +- ...rsary_Pirate_Raiders_5YgEajn0wa4i85kC.json | 9 +- ...versary_Pirate_Tough_mhcVkVFrzIJ18FDm.json | 11 ++- .../adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json | 9 +- ...ersary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json | 9 +- ...ersary_Royal_Advisor_EtLJiTsilPPZvLUX.json | 9 +- ...ersary_Secret_Keeper_sLAccjvCWfeedbpI.json | 9 +- .../adversary_Sellsword_bgreCaQ6ap2DVpCr.json | 9 +- ...ary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json | 9 +- .../adversary_Shark_YmVAkdNsyuXWTtYp.json | 9 +- .../adversary_Siren_BK4jwyXSRx7IOQiO.json | 9 +- ...sary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json | 9 +- ...sary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json | 9 +- ...sary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json | 9 +- ...ary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json | 9 +- ...sary_Spectral_Archer_5tCkhnBByUIN5UdG.json | 9 +- ...ary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json | 9 +- ...ry_Spectral_Guardian_UFVGl1osOsJTneLf.json | 9 +- ...adversary_Spellblade_ldbWEL7uZs84vyrR.json | 9 +- .../adversary_Spy_8zlynOhnVA59KpKT.json | 9 +- ...dversary_Stag_Knight_KGVwnLq85ywP9xvB.json | 9 +- ...dversary_Stonewraith_3aAS2Qm3R6cgaYfE.json | 9 +- ...ersary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json | 9 +- ...rsary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json | 9 +- ...Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json | 9 +- ...rsary_Tangle_Bramble_XcAGOSmtCFLT1unN.json | 9 +- ...sary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json | 9 +- ...ersary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json | 9 +- ...rsary_Treant_Sapling_o63nS0k3wHu6EgKP.json | 9 +- .../adversary_Vampire_WWyUp6Mxl1S3KYUG.json | 9 +- ...ault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json | 9 +- ...lt_Guardian_Sentinel_FVgYb28fhxlVcGwA.json | 9 +- ...ault_Guardian_Turret_c5hGdvY5UnSjlHws.json | 9 +- ...Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json | 11 ++- ...agon__Molten_Scourge_eArAPuB38CNR0ZIM.json | 11 ++- ...n__Obsidian_Predator_ladm7wykhZczYzrQ.json | 11 ++- ...adversary_War_Wizard_noDdT0tsN6FXSmC8.json | 9 +- ...versary_Weaponmaster_ZNbQ2jg35LG4t9eH.json | 9 +- ...dversary_Young_Dryad_8yUj2Mzvnifhxegm.json | 9 +- ...ary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json | 9 +- ...ersary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json | 9 +- ...dversary_Zombie_Pack_Nf0v43rtflV56V2T.json | 9 +- .../ancestry_Clank_ed8BoLR4SHOpeV00.json | 15 ++- .../ancestry_Drakona_VLeOEqkLS0RbF0tB.json | 15 ++- .../ancestry_Dwarf_pDt6fI6otv2E2odf.json | 15 ++- .../ancestry_Elf_q2l6g3Ssa04K84GO.json | 15 ++- .../ancestry_Faerie_XzJVbb5NT9k79ykR.json | 15 ++- .../ancestry_Faun_HaYhe6WqoXW5EbRl.json | 15 ++- .../ancestry_Firbolg_hzKmydI8sR3uk4CO.json | 15 ++- .../ancestry_Fungril_J1hX7nBBc5jQiHli.json | 15 ++- .../ancestry_Galapa_eZNG5Iv0yfbHs5CO.json | 15 ++- .../ancestry_Giant_3U8CncG92a7ERIJ0.json | 15 ++- .../ancestry_Goblin_EKPEdIz9lA9grPqH.json | 15 ++- .../ancestry_Halfling_CtL2jDjvPOJxNJKm.json | 15 ++- .../ancestry_Human_wtJ5V5qRppLQn61n.json | 15 ++- .../ancestry_Infernis_hyxcuF2I0xcZSGkm.json | 15 ++- .../ancestry_Katari_yyW0UM8srD9WuwW7.json | 15 ++- .../ancestry_Orc_D1RbUsRV9HpTrPuF.json | 15 ++- .../ancestry_Ribbet_HwOoBKXOL9Tf5j85.json | 15 ++- .../ancestry_Simiah_2yMLxxn7CHEvmShj.json | 15 ++- ...feature_Adaptability_BNofV1UC4ZbdFTkb.json | 15 ++- .../feature_Amphibious_GVhmLouGq9GWCsN8.json | 15 ++- ...feature_Caprine_Leap_nLL2zuDDDbbyxlrQ.json | 15 ++- ...ure_Celestial_Trance_TfolXWFG2W2hx6sK.json | 15 ++- .../feature_Charge_AA2CZlJSWW8GPhrR.json | 15 ++- ...feature_Danger_Sense_AXqcoxnRoWBbbKpK.json | 15 ++- ...ure_Death_Connection_WuwXH2r2uM9sDJtj.json | 15 ++- ...feature_Dread_Visage_i92lYjDhVB0LyPid.json | 15 ++- .../feature_Efficient_2xlqKOkDxWHbuj4t.json | 15 ++- ...ure_Elemental_Breath_sRaE3CgkgjBF1UpV.json | 15 ++- .../feature_Endurance_tXWEMdLXafUSZTbK.json | 15 ++- .../feature_Fearless_IlWvn5kCqCBMuUJn.json | 15 ++- ...ure_Feline_Instincts_lNgbbYnCKgrdvA85.json | 15 ++- ...ture_Fungril_Network_9tmeXm623hl4Qnws.json | 15 ++- ...feature_High_Stamina_HMXNJZ7ynzajR2KT.json | 15 ++- ..._Increased_Fortitude_0RN0baBxh95GT1cm.json | 15 ++- ...ure_Internal_Compass_e2Cu6exxtvfQzc1e.json | 15 ++- .../feature_Kick_gpW19TfJk0WWFh1S.json | 15 ++- .../feature_Long_Tongue_oWbdlh51ajn1Q5kL.json | 15 ++- .../feature_Luckbender_U6iFjZgLYawlOlQZ.json | 15 ++- .../feature_Luckbringer_8O6SQQMxKWr430QA.json | 15 ++- ...ture_Natural_Climber_soQvPL0MrTLLcc31.json | 15 ++- .../feature_Nimble_3lNqft3LmOlEIEkw.json | 15 ++- ...re_Purposeful_Design_g6I4tRUQNgL4vZ6H.json | 15 ++- ...ture_Quick_Reactions_0NSPSuB8KSEYTJIP.json | 15 ++- .../feature_Reach_WRs2jvwM0STmkWIW.json | 15 ++- .../feature_Retract_UFR67BUOhNGLFyg9.json | 15 ++- ...ure_Retracting_Claws_Zj69cAeb3NjIa8Hn.json | 15 ++- .../feature_Scales_u8ZhV962rNmUlzkp.json | 15 ++- .../feature_Shell_A6a87OWA3tx16g9V.json | 15 ++- .../feature_Sturdy_60o3cKUZzxO9EDQF.json | 15 ++- .../feature_Surefooted_YsJticxv8OFndd4D.json | 15 ++- .../feature_Thick_Skin_S0Ww7pYOSREt8qKg.json | 15 ++- .../feature_Tusks_YhxD1ujZpftPu19w.json | 15 ++- .../feature_Unshakeable_G5pE8FW94V1W9jJx.json | 15 ++- .../feature_Wings_WquAjoOcso8lwySW.json | 15 ++- ...eastform_Agile_Scout_a9UoCwtrbgKk02mK.json | 15 ++- ...orm_Aquatic_Predator_ItBVeCl2u5uetgy7.json | 15 ++- ...stform_Aquatic_Scout_qqzdFCxyYupWZK23.json | 15 ++- ...tform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json | 15 ++- ...m_Epic_Aquatic_Beast_wT4xbF99I55yjKZV.json | 15 ++- ...tform_Great_Predator_afbMt4Ld6nY3mw0N.json | 15 ++- ...m_Great_Winged_Beast_b4BMnTbJ3iPPidSb.json | 15 ++- ...orm_Household_Friend_iDmOtiHJJ80AIAVT.json | 15 ++- ...form_Legendary_Beast_mqP6z4Wg4K3oDAom.json | 15 ++- ...orm_Legendary_Hybrid_rRUtgcUjimlpPhnn.json | 15 ++- ...orm_Massive_Behemoth_qjwMzPn33aKZACkv.json | 15 ++- ...stform_Mighty_Lizard_94tvcC3D5Kp4lzuN.json | 15 ++- ...tform_Mighty_Strider_zRLjqKx4Rn2TjivL.json | 15 ++- ...Mythic_Aerial_Hunter_jV6EuEacyQlHW4SN.json | 15 ++- ...astform_Mythic_Beast_kObobka52JdpWBSu.json | 15 ++- ...stform_Mythic_Hybrid_WAbxCf2An8qmxyJ1.json | 15 ++- ...stform_Nimble_Grazer_CItO8yX6amQaqyk7.json | 15 ++- ...stform_Pack_Predator_YLisKYYhAGca50WM.json | 15 ++- ...rm_Pouncing_Predator_33oFSZ1PwFqInHPe.json | 15 ++- ...tform_Powerful_Beast_m8BVTuJI1wCvzTcf.json | 15 ++- ...rm_Stalking_Arachnid_A4TVRY0D5r9EiVwA.json | 15 ++- ...orm_Striking_Serpent_1XrZWGDttBAAUxR1.json | 15 ++- ...form_Terrible_Lizard_5BABxRe2XVrYTj8N.json | 15 ++- ...astform_Winged_Beast_mZ4Wlqtss2FlNNvL.json | 15 ++- .../feature_Agile_xLS5YT1B6yeCiNTg.json | 15 ++- .../feature_Aquatic_kQWWx9P3fCyGSVOI.json | 15 ++- ...eature_Armored_Shell_nDQZdIF2epKlhauX.json | 15 ++- ...ture_Bird_s_Eye_View_FNKQlWQcArSorMPK.json | 15 ++- .../feature_Cannonball_jp5KpPRBFBOIs46Q.json | 15 ++- .../feature_Carrier_EVOJTskJYf4rpuga.json | 15 ++- .../feature_Companion_jhWSC5bNZyYUAA5Q.json | 15 ++- ...eature_Deadly_Raptor_QQtQ77tos8ijTHag.json | 15 ++- .../feature_Demolish_DfBXO8jTchwFG8dZ.json | 15 ++- ..._Devastating_Strikes_HJbQcKWcFZ9NoFxs.json | 15 ++- ...feature_Elusive_Prey_a7Qvmm14nx9BCysA.json | 15 ++- .../feature_Fleet_GhHsSHOa509cwCvr.json | 15 ++- .../feature_Fragile_QFg1hNCEoKVDd9Zo.json | 15 ++- ...ture_Hobbling_Strike_8u0HkK3WgtU9lWYs.json | 15 ++- ...feature_Hollow_Bones_xVgmXhj2YgeqS1KK.json | 15 ++- ...ature_Massive_Stride_9QkZSeuEKgXtlpHc.json | 15 ++- ...feature_Ocean_Master_tGDdEH40wyOCsFmH.json | 15 ++- ...feature_Pack_Hunting_d3q8lfeiEMyTjusT.json | 15 ++- ...ure_Physical_Defense_StabkQ3BzWRZa8Tz.json | 15 ++- .../feature_Rampage_8upqfcZvi7b5hRLE.json | 15 ++- ...ture_Snapping_Strike_Ky3rZD3sJMXYZOBC.json | 15 ++- .../feature_Takedown_0ey4kM9ssj2otHvb.json | 15 ++- .../feature_Thick_Hide_ZYbdXaWVj2zdcmaK.json | 15 ++- .../feature_Trample_A0lgd6eVEfX6oqSB.json | 15 ++- .../feature_Undaunted_ODudjX88Te4vDP57.json | 15 ++- .../feature_Unyielding_vEAQ4cfsoPmOv2Gg.json | 15 ++- ...eature_Venomous_Bite_2KlTnfzO03vneVS8.json | 15 ++- ...ture_Venomous_Strike_uW3853pViM9VAfHb.json | 15 ++- ...feature_Vicious_Maul_jYUBi7yLHap5ljpa.json | 15 ++- ...feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json | 15 ++- .../feature_Webslinger_D73fS1iM4SZPFimu.json | 15 ++- .../classes/class_Bard_vegl3bFOq3pcFTWT.json | 15 ++- .../classes/class_Druid_ZNwUTCyGCEcidZFv.json | 15 ++- .../class_Guardian_nRAyoC0fOzXPDa4z.json | 15 ++- .../class_Ranger_BTyfve69LKqoOi9S.json | 15 ++- .../classes/class_Rogue_CvHlkHZfpMiCz5uT.json | 15 ++- .../class_Seraph_5ZnlJ5bEoyOTkUJv.json | 15 ++- .../class_Sorcerer_DchOzHcWIJE9FKcR.json | 15 ++- .../class_Warrior_xCUWwJz4WSthvLfy.json | 15 ++- .../class_Wizard_5LwX4m8ziY3F1ZGC.json | 15 ++- ...feature_Arcane_Sense_CHK32dfCTTyuxV1A.json | 15 ++- ...ttack_Of_Opportunity_3hNVqD1c0VIw2Nj5.json | 15 ++- .../feature_Beastform_P1K0jcnH2RiS6TLd.json | 15 ++- ...re_Channel_Raw_Power_P02cbN50LIoD662z.json | 15 ++- .../feature_Cloaked_5IT8wYa0m1EFw8Zp.json | 15 ++- ...ture_Combat_Training_eoSmuAJmgHUyULtp.json | 15 ++- .../feature_Evolution_6rlxhrRwFaVgq9fe.json | 15 ++- ...ature_Frontline_Tank_YS1g7YdWwOaS629x.json | 15 ++- ...eature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json | 15 ++- ...feature_Life_Support_lSlvSUHbOoX36q2j.json | 15 ++- ...feature_Make_a_Scene_N9E5skDDK2VgvohR.json | 15 ++- ...ature_Minor_Illusion_cshTYdtz9yoXYYB3.json | 15 ++- .../feature_No_Mercy_njj2C3tMDeCHHOoh.json | 15 ++- ...eature_Not_This_Time_h3VE0jhcM5xHKBs4.json | 15 ++- .../feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json | 13 ++- ...ure_Prestidigitation_SG2uw8h5YuwDviCn.json | 15 ++- .../feature_Rally_PydiMnNCKpd44SGS.json | 15 ++- ...ture_Rally__Level_5__TVeEyqmPPiRa2r3i.json | 15 ++- ...ature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json | 15 ++- ...eature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json | 15 ++- ...feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json | 15 ++- ...ure_Strange_Patterns_6YsfFjmCGuFYVhT4.json | 15 ++- .../feature_Unstoppable_PnD2UCgzIlwX6cY3.json | 15 ++- ...ature_Volatile_Magic_ieiQlD0joWSqt53D.json | 15 ++- .../feature_Wildtouch_fqSdfUYUK9QUcVE4.json | 15 ++- .../community_Highborne_DVw2mOCHB8i0XeBz.json | 15 ++- .../community_Loreborne_YsvlyqYoi8QQ8kwm.json | 15 ++- ...community_Orderborne_TY2TejenASXtS484.json | 15 ++- ...community_Ridgeborne_WHLA4qrdszXQHOuo.json | 15 ++- .../community_Seaborne_o5AA5J05N7EvH1rN.json | 15 ++- .../community_Slyborne_rGwCPMqZtky7SE6d.json | 15 ++- ...community_Underborne_eX0I1ZNMyD3nfaL1.json | 15 ++- ...ommunity_Wanderborne_82mDY2EIBfLkNwQj.json | 15 ++- .../community_Wildborne_CRJ5pzJj4FjCtIlx.json | 15 ++- .../feature_Dedicated_7aXWdH3gzaYREK0X.json | 15 ++- ...eature_Know_the_Tide_07x6Qe6qMzDw2xN4.json | 15 ++- .../feature_Lightfoot_TQ1AIQjndC4mYmmU.json | 15 ++- ...ure_Low_Light_Living_aMla3xQuCHEwORGD.json | 15 ++- ...feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json | 15 ++- .../feature_Privilege_C7NR6qRatawZusmg.json | 15 ++- .../feature_Scoundrel_ZmEuBdL0JrvuA8le.json | 15 ++- .../feature_Steady_DYmmr5CknLtHnwuj.json | 15 ++- .../feature_Well_Read_JBZJmywisJg5X3tH.json | 15 ++- ...ard_A_Soldier_s_Bond_Y08dLFuPXsgeRrHi.json | 13 ++- ...nCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json | 13 ++- ...nCard_Arcana_Touched_5PvMQKCjrgSxzstn.json | 13 ++- ...rd_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json | 13 ++- .../domainCard_Armorer_cy8GjBPGc9w9RaGO.json | 13 ++- ...rd_Astral_Projection_YNOCNmZ96sCp9NEr.json | 13 ++- .../domainCard_Banish_AIbHfryMA2Rvs1ut.json | 13 ++- ...omainCard_Bare_Bones_l5D9kq901JDESaXw.json | 15 ++- ...omainCard_Battle_Cry_Ef1JsUG50LIoKx2F.json | 13 ++- ...Card_Battle_Hardened_NeEOghgfyDUBTwBG.json | 13 ++- ...nCard_Battle_Monster_P0ezScyQ5t8ruByf.json | 13 ++- ...inCard_Blade_Touched_Gb5bqpFSBiuBxUix.json | 15 ++- ...domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json | 13 ++- ...mainCard_Body_Basher_aQz8jKkCd8M9aKMA.json | 15 ++- ...inCard_Bold_Presence_tdsL00yTSLNgZWs6.json | 13 ++- ...mainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json | 13 ++- ...ainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json | 13 ++- ...mainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json | 13 ++- ...inCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json | 13 ++- ...inCard_Book_of_Grynn_R0LNheiZycZlZzV3.json | 13 ++- ...inCard_Book_of_Homet_gFMx08ogQ8hS2Obi.json | 15 ++- ...nCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json | 13 ++- ...nCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json | 13 ++- ...inCard_Book_of_Norai_WtwSWXTRZa7QVvmo.json | 13 ++- ...inCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json | 13 ++- ...inCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json | 13 ++- ...inCard_Book_of_Tyfar_1VXzwRbvbBj5bd5V.json | 13 ++- ...nCard_Book_of_Vagras_aknDDYtN7EObv94t.json | 13 ++- ...inCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json | 13 ++- ...nCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json | 13 ++- .../domainCard_Boost_VKAHS6eWz28ukcDs.json | 13 ++- .../domainCard_Brace_QXs4vssSqNGQu5b8.json | 15 ++- ...inCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json | 13 ++- ...Card_Chain_Lightning_0kAVO6rordCfZqYP.json | 13 ++- ...Card_Champion_s_Edge_rnejRbUQsNGX1GMC.json | 13 ++- ...domainCard_Chokehold_R5GYUalYXLLFRlNl.json | 13 ++- ...ainCard_Cinder_Grasp_5EP2Lgf7ojfrc0Is.json | 13 ++- ...nCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json | 13 ++- ...inCard_Codex_Touched_7Pu83ABdMukTxu3e.json | 13 ++- ...nCard_Confusing_Aura_R8NDiJXJWmC48WSr.json | 13 ++- ...inCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json | 13 ++- ...Card_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json | 13 ++- .../domainCard_Copycat_3A7LZ1xmDEMGa165.json | 13 ++- ...Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json | 13 ++- ...ainCard_Counterspell_6dhqo1kzGxejCjHa.json | 13 ++- ...Critical_Inspiration_ABp9pUfBS69NomTD.json | 13 ++- ...Card_Cruel_Precision_bap1eCWryPNowbyo.json | 15 ++- ...inCard_Dark_Whispers_yL2qrSWmTwXVOySH.json | 13 ++- ...ainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json | 13 ++- ...omainCard_Death_Grip_x0FVGE1YbfXalJiw.json | 13 ++- .../domainCard_Deathrun_xFOSn8IVVNizgHFq.json | 13 ++- ...inCard_Deft_Deceiver_38znCh6kHTkaPwYi.json | 13 ++- ...nCard_Deft_Maneuvers_dc4rAXlv95srZUct.json | 13 ++- ..._Disintegration_Wave_kja5qvh4rdeDBB96.json | 15 ++- ...omainCard_Divination_K8oFepK24UVsAX8B.json | 13 ++- ...omainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json | 15 ++- .../domainCard_Eclipse_62Sj67PdPFzwWVe3.json | 13 ++- .../domainCard_Encore_klahWDFwihqqEhXP.json | 13 ++- ...ard_Endless_Charisma_tNzFNlVHghloKsFi.json | 13 ++- ...domainCard_Enrapture_a8lFiKX1o8T924ze.json | 13 ++- ...mainCard_Falling_Sky_hZJp9mdkMnqKDROe.json | 13 ++- ...rd_Fane_of_the_Wilds_F2m9wvZ3v5c3yCtv.json | 13 ++- .../domainCard_Ferocity_jSQsSP61CX4MhSN7.json | 13 ++- ...mainCard_Final_Words_Nbw6Jnh1vRZzwHQI.json | 13 ++- .../domainCard_Flight_54GUjNuBEy7xdzMz.json | 13 ++- ...ainCard_Floating_Eye_wOQLu7nLMQ7v6Ogw.json | 13 ++- .../domainCard_Forager_06UapZuaA5S6fAKl.json | 13 ++- ...Card_Force_of_Nature_LzVpMkD5I4QeaIHf.json | 13 ++- ...inCard_Forceful_Push_z8FFPhDh2SdFkFfS.json | 15 ++- ...nCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json | 13 ++- ...Card_Fortified_Armor_oVa49lI107eZILZr.json | 15 ++- .../domainCard_Frenzy_MMl7abdGRLl7TJLO.json | 13 ++- ...omainCard_Full_Surge_SgvjJfMyubZowPxS.json | 13 ++- ...mainCard_Get_Back_Up_BFWN2cObMdlk9uVz.json | 15 ++- ...nCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json | 13 ++- ...inCard_Glancing_Blow_nCNCqSH7UgW4O3To.json | 13 ++- ...d_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json | 13 ++- ...ainCard_Goad_Them_On_HufF5KzuNfEb9RTi.json | 13 ++- ...nCard_Gore_and_Glory_3zvjgZ5Od343wHzx.json | 13 ++- ...inCard_Grace_Touched_KAuNb51AwhD8KEXk.json | 13 ++- ...ainCard_Ground_Pound_WnGldYhJPDhx8v9X.json | 13 ++- ...inCard_Healing_Field_GlRm1Dxlc0Z1b04o.json | 13 ++- ...inCard_Healing_Hands_WTlhnQMajc1r8i50.json | 13 ++- ...nCard_Healing_Strike_XtSc0jIJLOoMTMYS.json | 13 ++- ...inCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json | 13 ++- .../domainCard_Hush_gwmYasmfgXZ7tFS6.json | 13 ++- ...ard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json | 13 ++- ...ard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json | 15 ++- ...Card_I_See_It_Coming_Kp6RejHGimnuoBom.json | 13 ++- ...omainCard_Inevitable_XTT8c8uJ4D7fvtbL.json | 15 ++- ..._Inspirational_Words_cWu1o82ZF7GvnbXc.json | 13 ++- ...ainCard_Invigoration_X8OfkEoI5gLTRf1B.json | 13 ++- ...ainCard_Invisibility_KHkzA4Zrw8EWN1CH.json | 13 ++- ...nCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json | 13 ++- ...Card_Lead_by_Example_YWCRplmtwpCjpq5i.json | 13 ++- ...omainCard_Lean_on_Me_BdePs1ZWpZTZvY1Z.json | 13 ++- ...domainCard_Life_Ward_OszbCj0jTqq2ADx9.json | 13 ++- ...inCard_Manifest_Wall_TtGOtWkbr23VhHfH.json | 13 ++- ...inCard_Mass_Disguise_dT95m0Jam8sWbeuC.json | 13 ++- ...nCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json | 13 ++- ..._Master_of_the_Craft_yAGTwXHUC3qxpTeK.json | 15 ++- ...inCard_Mending_Touch_TGjR4vJVNbQRV8zr.json | 13 ++- ...Card_Midnight_Spirit_FXLsB3QbQvTtqX5B.json | 13 ++- ...ard_Midnight_Touched_uSyGKVxOJcnp28po.json | 13 ++- ...ard_Natural_Familiar_Tag303LoRNC5zGgl.json | 13 ++- ...Card_Nature_s_Tongue_atWLorlCOxcrq8WB.json | 13 ++- ...nCard_Never_Upstaged_McdncxmO9K1YNP7Y.json | 13 ++- ...ainCard_Night_Terror_zcldCuqOg3dphUVI.json | 15 ++- ...Card_Not_Good_Enough_xheQZOIYp0ERQhT9.json | 15 ++- ...domainCard_Notorious_IqxzvvjZiYbgx21A.json | 13 ++- ...ainCard_On_the_Brink_zbxPl81kbWEegKQN.json | 15 ++- ...domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json | 13 ++- ...rd_Overwhelming_Aura_iEBLySZD9z8CLdz7.json | 13 ++- ...Card_Phantom_Retreat_0vdpIn06ifF3xxqZ.json | 13 ++- ...inCard_Pick_and_Pull_HdgZUfWd7Hyj7nBW.json | 15 ++- ...nCard_Plant_Dominion_9a6xP5pxhVvdugk9.json | 13 ++- ...mainCard_Premonition_aC43NiFQLpOADyjO.json | 13 ++- ...d_Preservation_Blast_1p1cOmbnRd5CoKBp.json | 13 ++- .../domainCard_Rage_Up_GRL0cvs96vrTDckZ.json | 13 ++- ...nCard_Rain_of_Blades_Ucenef6JpjQxwXni.json | 13 ++- ...inCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json | 13 ++- ...Card_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json | 13 ++- ...mainCard_Reassurance_iYNVTB7uAD1FTCZu.json | 13 ++- .../domainCard_Reckless_2ooUo2yoilGifY81.json | 13 ++- .../domainCard_Recovery_gsiQFT6q3WOgqerJ.json | 13 ++- .../domainCard_Redirect_faU0XkJCbar69PiN.json | 13 ++- ...Rejuvenation_Barrier_HtWx5IIemCoorMj2.json | 13 ++- ...mainCard_Restoration_wUQFsRtww18naYaq.json | 13 ++- ...ainCard_Resurrection_z30ciOwQI7g3tHla.json | 13 ++- ...mainCard_Rift_Walker_vd5STqX29RpYbGxa.json | 13 ++- .../domainCard_Rise_Up_oDIZoC4l19Nli0Fj.json | 13 ++- ...nCard_Rousing_Strike_pcbYD33rBBdAo5f9.json | 13 ++- ...domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json | 13 ++- ...omainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json | 13 ++- ...ainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json | 13 ++- ...nCard_Salvation_Beam_4uAFGp3LxiC07woC.json | 13 ++- .../domainCard_Scramble_5bBU9jWHOuOY12lR.json | 13 ++- ...mainCard_Second_Wind_ffPbSEvLuFrFsMxl.json | 13 ++- ...d_Sensory_Projection_gZOMzskSOfeiXn54.json | 13 ++- ...omainCard_Shadowbind_kguhWlidhxe2GbT0.json | 13 ++- ...ainCard_Shadowhunter_A0XzD6MmBXYdk7Ps.json | 15 ++- ...nCard_Shape_Material_db4xV3YErHRslbVE.json | 13 ++- ...ard_Share_the_Burden_8nRle10pw1HO8QVu.json | 13 ++- ...mainCard_Shield_Aura_rfIv6lln40Fh6EIl.json | 13 ++- ...ainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json | 13 ++- ...Sigil_of_Retribution_RiuN0lMlfoTAhLJz.json | 13 ++- ...nCard_Signature_Move_LWRkhNY968Cu2Zl5.json | 15 ++- .../domainCard_Smite_U1uWJE94HZVudujz.json | 13 ++- ...Card_Soothing_Speech_QED2PDYePOSTbLtC.json | 13 ++- ..._Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json | 13 ++- ...mainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json | 13 ++- ...ard_Splendor_Touched_JT5dM3gVL6chDBYU.json | 15 ++- ...d_Splintering_Strike_TYKfM3H9vBXyWiH4.json | 13 ++- ...rd_Stealth_Expertise_NIUhmuQGwbb3UClZ.json | 13 ++- ...d_Strategic_Approach_5b1awkgTmMp3FVrm.json | 13 ++- ...rd_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json | 13 ++- ...ainCard_Support_Tank_stId5syX7YpP2JGz.json | 13 ++- ...omainCard_Swift_Step_H6TqCJBaa1eWEQ1z.json | 13 ++- ...domainCard_Tactician_WChWEH36lUpXAC0K.json | 15 ++- ...mainCard_Telekinesis_FgzBppvLjXr0UbUI.json | 13 ++- .../domainCard_Teleport_HnPwVrWblYa9hwSt.json | 13 ++- ...ainCard_Tell_No_Lies_HTv9QEPS466WsstP.json | 13 ++- .../domainCard_Tempest_X7YaZgFieBlqaPdZ.json | 13 ++- ...omainCard_Thorn_Skin_oUipGK84E2KjoKqh.json | 13 ++- ...nCard_Thought_Delver_B4choj481tqajWb9.json | 13 ++- ...rd_Through_Your_Eyes_7b0mzV5QMPjVPT4o.json | 13 ++- ...nCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json | 15 ++- ...d_Transcendent_Union_kVkoCLBXLAIifqpz.json | 13 ++- ...ainCard_Troublemaker_JrdZedm1BFKeV7Yb.json | 13 ++- ...inCard_Twilight_Toll_SDjjV61TC1NceV1m.json | 13 ++- ...mainCard_Unbreakable_CUIQmrPjf9VCHmwJ.json | 13 ++- ...ard_Uncanny_Disguise_TV56wSysbU5xAlOa.json | 13 ++- ...inCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json | 13 ++- ...mainCard_Untouchable_9QElncQUDSakuSdR.json | 15 ++- ...ard_Unyielding_Armor_s3zRsOMeUkuDwgd8.json | 15 ++- ...inCard_Valor_Touched_k1AtYd3lSchIymBr.json | 13 ++- ...Card_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json | 13 ++- ...inCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json | 13 ++- ...rd_Versatile_Fighter_wQ53ImDswEHv5SGQ.json | 13 ++- ...ard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json | 13 ++- .../domainCard_Vitality_sWUlSPOJEaXyQLCj.json | 13 ++- ...Card_Voice_of_Reason_t3RRGH6mMYYJJCcF.json | 15 ++- ...domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json | 13 ++- ...domainCard_Whirlwind_anO0arioUy7I5zBg.json | 13 ++- ...inCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json | 13 ++- ...omainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json | 13 ++- ...ard_Words_of_Discord_ZjAdi1FSNCDDHI3X.json | 13 ++- .../domainCard_Wrangle_9DwSxHoUwl8Kxj3n.json | 13 ++- ...d_Zone_of_Protection_lOZaRb4fCVgQsWB5.json | 15 ++- ...ment_Abandoned_Grove_pGEdzdLkqYtBhxnG.json | 19 ++-- ...environment_Ambushed_uGEdNYERCTJBEjc5.json | 19 ++-- ...nvironment_Ambushers_uXZpebPR77YQ1oXI.json | 19 ++-- ...g_Heart_of_the_Woods_oY69NN4rYxoRE4hl.json | 19 ++-- ...Bustling_Marketplace_HZKA7hkej7JJY503.json | 19 ++-- ...ronment_Castle_Siege_1eZ32Esq7rfZOjlu.json | 19 ++-- ...ironment_Chaos_Realm_2Z1mKc65LxNk2PqR.json | 19 ++-- ...ent_Cliffside_Ascent_LPpfdlNKqiZIl04w.json | 19 ++-- ...ironment_Cult_Ritual_QAXXiOKBDmCTauHD.json | 19 ++-- ...nt_Divine_Usurpation_4DLYez7VbMCFDAuZ.json | 19 ++-- ...ment_Hallowed_Temple_dsA6j69AnaJhUyqH.json | 19 ++-- ...ronment_Haunted_City_OzYbizKraK92FDiI.json | 19 ++-- ...nment_Imperial_Court_jr1xAoXzVwVblzxI.json | 19 ++-- ...ronment_Local_Tavern_cM4X81DOyvxNIi52.json | 19 ++-- ...onment_Mountain_Pass_acMu9wJrMZZzLSTJ.json | 19 ++-- ...ecromancer_s_Ossuary_h3KyRL7AshhLAmcH.json | 19 ++-- ...ronment_Outpost_Town_YezryR32uo39xRxW.json | 19 ++-- ...nment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json | 19 ++-- ...ronment_Raging_River_t4cdqTfzcqP3H1vJ.json | 19 ++-- ...nced_Chainmail_Armor_LzLOJ9EVaHWAjoq9.json | 13 ++- ...ced_Full_Plate_Armor_crIbCb9NZ4K0VpoU.json | 13 ++- ...anced_Gambeson_Armor_epkAmlZVk7HOfUUT.json | 13 ++- ...vanced_Leather_Armor_itSOp2GCyem0f7oM.json | 13 ++- ..._Bellamoi_Fine_Armor_WuoVwZA53XRAIt6d.json | 13 ++- ...rmor_Bladefare_Armor_mNN6pvcsS10ChrWF.json | 13 ++- ...rmor_Chainmail_Armor_haULhuEg37zUUvhb.json | 13 ++- ...mor_Channeling_Armor_vMJxEWz1srfwMsoj.json | 13 ++- ...or_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json | 13 ++- ...or_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json | 13 ++- ...Elundrian_Chain_Mail_Q6LxmtFetDDkoZVZ.json | 13 ++- ...mor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json | 11 ++- ...Full_Fortified_Armor_7emTSt6nhZuTlvt5.json | 13 ++- ...mor_Full_Plate_Armor_UdUJNa31WxFW2noa.json | 13 ++- ...armor_Gambeson_Armor_yJFp1bfpecDcStVK.json | 13 ++- ...mor_Harrowbone_Armor_dvyQeUVRLc9y6rnt.json | 13 ++- ...oved_Chainmail_Armor_K5WkjS0NGqHYmhU3.json | 13 ++- ...ved_Full_Plate_Armor_9f7RozpPTqrzJS1m.json | 13 ++- ...roved_Gambeson_Armor_jphnMZjnS2FkOH3s.json | 13 ++- ...proved_Leather_Armor_t91M61pSCMKStTNt.json | 13 ++- ...ee_Breastplate_Armor_tzZntboNtHL5C6VM.json | 13 ++- .../armor_Leather_Armor_nibfdNtp2PtxvbVz.json | 13 ++- ...dary_Chainmail_Armor_EsIN5OLKe9ZYFNXZ.json | 13 ++- ...ary_Full_Plate_Armor_SXWjUR2aUR6bYvdl.json | 13 ++- ...ndary_Gambeson_Armor_c6tMXz4rPf9ioQrf.json | 13 ++- ...endary_Leather_Armor_Tptgl5WOj76TyFn7.json | 13 ++- ...armor_Monett_s_Cloak_AQzU2RsqS5V5bd1v.json | 13 ++- ...armor_Rosewild_Armor_tN8kAeBvNKM3EBFo.json | 13 ++- ...nes_of_Fortification_P4qAEDJUoNLgVRsA.json | 13 ++- ...netan_Floating_Armor_tHlBUDQC24YMZqd6.json | 13 ++- ...mor_Savior_Chainmail_8X16lJQ3xltTwynm.json | 13 ++- ...r_Spiked_Plate_Armor_QjwsIhXKqnlvRBMv.json | 13 ++- ...mor_Tyris_Soft_Armor_PSW3BxCGmtLeWOxM.json | 13 ++- ...r_Veritas_Opal_Armor_OvzgUTYy2RCN85vV.json | 13 ++- ...consumable_Acidpaste_cfVFmS8vT9dbq9s1.json | 15 ++- ...mable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json | 15 ++- ...umable_Attune_Potion_JGD3M9hBHtVAA8XP.json | 15 ++- ...sumable_Blinding_Orb_eAXHdzA5qNPldOpn.json | 15 ++- ...e_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json | 15 ++- ...mable_Bolster_Potion_FOPQNqXbiVO0ilYL.json | 15 ++- ...umable_Bonding_Honey_PfQvqopXgvroBklL.json | 15 ++- ...nsumable_Bridge_Seed_RrIasiMCt6mqVTps.json | 15 ++- ...sumable_Channelstone_IKMVQ6VwtapwoUim.json | 15 ++- ...sumable_Charm_Potion_CVBbFfOY75YwyQsp.json | 15 ++- ...e_Circle_of_the_Void_elsyP6VhHw1JjGSl.json | 15 ++- ...mable_Control_Potion_eeBhZSGLjuNZuJuI.json | 15 ++- ...consumable_Death_Tea_xDnJeF1grkmKck8Q.json | 15 ++- ...able_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json | 15 ++- ...able_Dripfang_Poison_eU8VpbWB2NHIL47n.json | 15 ++- ...ble_Enlighten_Potion_aWHSO2AqDufi7nL4.json | 15 ++- ...mable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json | 15 ++- ...nsumable_Featherbone_DpxEMpwfasEBpORU.json | 15 ++- ...onsumable_Gill_Salve_Nvbb9mze6o5D0AEg.json | 15 ++- ...e_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json | 15 ++- ...mable_Growing_Potion_fl2f3ees8RFMze9t.json | 15 ++- ...umable_Health_Potion_Aruc2NLutWuVIjP1.json | 15 ++- ...omet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json | 15 ++- ...mable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json | 15 ++- ...mproved_Arcane_Shard_nQTo6mNoPTEVBtkm.json | 15 ++- ...d_Grindletooth_Venom_BqBWXXe9T07AMV4u.json | 15 ++- ...e_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json | 15 ++- ...sumable_Jumping_Root_c2putn9apuurJhWX.json | 15 ++- ...able_Knowledge_Stone_nL9IALzm9BNi5oSt.json | 15 ++- ...e_Major_Arcane_Shard_AA7bmiwv00lshPrC.json | 15 ++- ..._Major_Attune_Potion_CCPFm5iXXwvyYYwR.json | 15 ++- ...Major_Bolster_Potion_mnyQDRtngWWQeRXF.json | 15 ++- ...e_Major_Charm_Potion_IJLAUlQymbSjzsri.json | 15 ++- ...Major_Control_Potion_80s1FLmTLtohZ5GH.json | 15 ++- ...jor_Enlighten_Potion_SDdv1G2veMLKrxcJ.json | 15 ++- ..._Major_Health_Potion_cM7pHe8bBAxSZ2xR.json | 15 ++- ...Major_Stamina_Potion_I4cQ03xbxnc81EGa.json | 15 ++- ..._Major_Stride_Potion_yK6eEDUrsPbZA8G0.json | 15 ++- ..._Minor_Health_Potion_tPfKtKRRjv8qdSqy.json | 15 ++- ...Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json | 15 ++- ...e_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json | 15 ++- ...umable_Morphing_Clay_f1NHVSIHJJCIOaBl.json | 15 ++- ...nsumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json | 15 ++- ...consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json | 15 ++- ..._Potion_of_Stability_dvL8oaxpEF6jKvYN.json | 15 ++- ...able_Redthorn_Saliva_s2Exl2XFuoOhtIov.json | 15 ++- ...eplication_Parchment_yJkwz4AP6yhGo8Vj.json | 15 ++- ...ble_Shrinking_Potion_HGixKenQwhyRAYNk.json | 15 ++- ...sumable_Sleeping_Sap_XZavUVlHEvE2srEt.json | 15 ++- ...nsumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json | 15 ++- ...mable_Stamina_Potion_hf3k1POoVSooJyN2.json | 15 ++- .../consumable_Stardrop_y4c1jrlHrf0wBWOq.json | 15 ++- ...umable_Stride_Potion_lNtcrkgFGOJNaroE.json | 15 ++- ...sumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json | 15 ++- ...onsumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json | 15 ++- ...nstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json | 15 ++- ...sumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json | 15 ++- ...le_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json | 15 ++- ...ble_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json | 15 ++- ...onsumable_Wingsprout_n10vozlmosVR6lo4.json | 15 ++- .../loot_Airblade_Charm_cTYvyaSKBxosM9Y9.json | 13 ++- ...oot_Alistair_s_Torch_MeEg57T6MKpw3sme.json | 15 ++- .../loot_Arcane_Cloak_4STt98biZwjFoKOe.json | 15 ++- .../loot_Arcane_Prism_Mn1eo2Mdtu1kzyxB.json | 13 ++- .../loot_Attune_Relic_vK6bKyQTT3m8WvMh.json | 15 ++- ...ot_Bag_of_Ficklesand_v758j4FwNVAurhYK.json | 13 ++- .../loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json | 13 ++- .../loot_Bloodstone_oMd78vhL2x2NO8Mg.json | 15 ++- .../loot_Bolster_Relic_m3EpxlDgxn2tCDDR.json | 15 ++- ...ot_Box_of_Many_Goods_bZyT7Qw7iafswlTY.json | 13 ++- ...loot_Calming_Pendant_tgFFMxpuRSiRrrEB.json | 13 ++- ...loot_Charging_Quiver_gsUDP90d4SRtLEUn.json | 15 ++- .../loot_Charm_Relic_9P9jqGSlxVCbTdLe.json | 15 ++- .../loot_Clay_Companion_lGIk9vBNz0jvskXD.json | 15 ++- .../loot_Companion_Case_V25uXkAQvK3hUta4.json | 15 ++- .../loot_Control_Relic_QPGBDItjrRhXU6iJ.json | 15 ++- ...oot_Corrector_Sprite_G0RktbmtnuAlKCRH.json | 13 ++- .../loot_Dual_Flask_HCvcAu3sdHCspGMP.json | 15 ++- .../loot_Elusive_Amulet_PkmTZXRMZL022O75.json | 13 ++- .../loot_Empty_Chest_p2yy61uKsyIsl8cU.json | 15 ++- ...loot_Enlighten_Relic_vSGx1f9SYUiA29L3.json | 15 ++- .../loot/loot_Fire_Jar_X6RMkIt89wf7qX2E.json | 13 ++- ...t_Flickerfly_Pendant_9VKYSBQxN9XFWlAm.json | 15 ++- .../loot_Gecko_Gloves_CGzjBpHJRG8KSt5Y.json | 15 ++- ...loot_Gem_of_Alacrity_zecFwBUSWtB3HW8X.json | 15 ++- ...loot_Gem_of_Audacity_hMu9It3ThCLCXuCA.json | 15 ++- .../loot_Gem_of_Insight_TbgeT9ZxKHqFqJSN.json | 15 ++- .../loot_Gem_of_Might_rtSInNPc4B3ChBUZ.json | 15 ++- ...oot_Gem_of_Precision_CrvJ7vb4s40YgEcy.json | 15 ++- ...loot_Gem_of_Sagacity_ua351S7CsH22X1x2.json | 15 ++- .../loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json | 13 ++- .../loot/loot_Glider_CiXwelozmBDcPY48.json | 13 ++- .../loot_Greatstone_y7zABzR0Q2fRskTw.json | 15 ++- ...oot_Homing_Compasses_yrAGYlDyoe4OYl7d.json | 15 ++- .../loot_Honing_Relic_SAAnEAeXDnhBbLjB.json | 15 ++- ...ot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json | 13 ++- .../loot_Infinite_Bag_Iedjw1LVWEozVh0J.json | 15 ++- ...ot_Lakestrider_Boots_NgvmrJYKpA2PrRSo.json | 15 ++- .../loot_Lorekeeper_JsPYzrqpITqGj23I.json | 15 ++- .../loot/loot_Manacles_GkmATIuemyFtQX1D.json | 15 ++- ...Health_Potion_Recipe_PQxvxAVBbkt0TleC.json | 15 ++- ...tamina_Potion_Recipe_1TLpFsp3PLDsqoTw.json | 15 ++- ...t_Mythic_Dust_Recipe_5YZls8XH3MB7twNa.json | 15 ++- ...loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json | 13 ++- ...loot_Phoenix_Feather_QNtzJSVENww63THa.json | 15 ++- ...loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json | 13 ++- .../loot_Piper_Whistle_v4PIoCCEjeE3acys.json | 15 ++- .../loot_Portal_Seed_eRd5Gk7J7hPCqp11.json | 15 ++- ...loot_Premium_Bedroll_QGYPNBIufpBguwjC.json | 13 ++- ...t_Ring_of_Resistance_aUqRifqR5JXXa1dN.json | 13 ++- ...loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json | 13 ++- ..._Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json | 13 ++- ...loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json | 13 ++- .../loot_Skeleton_Key_edkNgwy4xghZreBa.json | 13 ++- .../loot_Speaking_Orbs_LZrG6CFiSjpLA2F1.json | 15 ++- .../loot_Stride_Relic_FfJISMzYATaPQPLc.json | 15 ++- .../loot_Suspended_Rod_nnj12RiFanq7s5zv.json | 15 ++- .../loot_Valorstone_7yywua9TmQ4WP5WH.json | 15 ++- ..._of_Darksmoke_Recipe_MhCo8i0cRXzdnXbA.json | 15 ++- .../loot/loot_Woven_Net_ARuv48PWUGJGBC4n.json | 13 ++- ...lack_Powder_Revolver_NUbvkPLS71XO073r.json | 31 ------- .../weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json | 11 ++- ...ane_Frame_Wheelchair_la3sAWgnvadc4NvP.json | 11 ++- ...ced_Arcane_Gauntlets_hXR56fTKwZ6s1obs.json | 13 ++- ...n_Advanced_Battleaxe_FcbvY1ydbNVMjKvk.json | 13 ++- ..._Advanced_Broadsword_WtQAGz0TUgz8Xg70.json | 11 ++- ...on_Advanced_Crossbow_3HGs0AgVrdIBTaKG.json | 13 ++- ...pon_Advanced_Cutlass_bw9WO9lxkM9bWZxQ.json | 13 ++- ...apon_Advanced_Dagger_mrioysDjNQEIE8hN.json | 13 ++- ...n_Advanced_Dualstaff_X5x3sC7v2f3L9sjL.json | 13 ++- ...vanced_Glowing_Rings_InQoh8mZPnwarQkX.json | 13 ++- ...on_Advanced_Grappler_7vvhVl4TDJHtjpFK.json | 13 ++- ..._Advanced_Greatstaff_4UzxqfkwF8gDSdu7.json | 13 ++- ..._Advanced_Greatsword_MAC6YWTo4lzSotQc.json | 13 ++- ...pon_Advanced_Halberd_C8gQn7onAc9wsrCs.json | 13 ++- ...dvanced_Hallowed_Axe_BiyXKX2Mo1TQbKgk.json | 13 ++- ...vanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json | 13 ++- ..._Advanced_Hand_Runes_PQACczSghZIVTdgZ.json | 13 ++- ...avy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json | 11 ++- ...ght_Frame_Wheelchair_BuMfupnCzHbziQ8o.json | 11 ++- ...pon_Advanced_Longbow_M5CywMAyPKGgebsJ.json | 13 ++- ...n_Advanced_Longsword_9xkB3MWXahrsVP4N.json | 13 ++- ...weapon_Advanced_Mace_WreMYiH5uhVDaoVw.json | 13 ++- ...dvanced_Quarterstaff_zJtm2f9ZFKZRtCRg.json | 13 ++- ...apon_Advanced_Rapier_KxFne76d7cak15dO.json | 13 ++- ...nced_Returning_Blade_sIGXA4KMeYBUjcEO.json | 13 ++- ...dvanced_Round_Shield_hiEOGF2reabGLUoi.json | 13 ++- ...pon_Advanced_Scepter_2Khzuj768yoWN9QK.json | 13 ++- ...on_Advanced_Shortbow_JpSlJvDR0X8VFDns.json | 13 ++- ..._Advanced_Shortstaff_T5exRCqOXhrjSYnI.json | 13 ++- ..._Advanced_Shortsword_p3nz5CaGUoyuGVg0.json | 9 +- ...dvanced_Small_Dagger_0thN0BpN05KT8Avx.json | 9 +- ...eapon_Advanced_Spear_pK6dsNABKKp1CIGN.json | 13 ++- ...dvanced_Tower_Shield_OfOzQbs4hg6QbfTG.json | 13 ++- ...weapon_Advanced_Wand_jU9jWIardjtdAQcs.json | 13 ++- ...n_Advanced_Warhammer_8Lipw3RRKDgBVP0p.json | 13 ++- ...weapon_Advanced_Whip_01izMUSJcAUo79IX.json | 13 ++- ...ane_Frame_Wheelchair_XRChepscgr75Uug7.json | 11 ++- ...pon_Arcane_Gauntlets_PC5EyEIq7NWBV0n5.json | 13 ++- ...apon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json | 13 ++- .../weapon_Battleaxe_fbDYUja3ll9vCtrB.json | 13 ++- ...lack_Powder_Revolver_AokqTusPzn0hghkE.json | 13 ++- .../weapon_Bladed_Whip_5faflfNz20cFW1EM.json | 13 ++- ...eapon_Blessed_Anlace_n1oPTk5czTIGTkVj.json | 13 ++- .../weapon_Bloodstaff_IoMVDz92WVvfGGdc.json | 13 ++- .../weapon_Blunderbuss_SLFrK0WmldPo0shz.json | 13 ++- .../weapon_Braveshield_QEvgVoz9xKBSKsGi.json | 13 ++- .../weapon_Bravesword_QZrWAkprA2tL2MOI.json | 13 ++- .../weapon_Broadsword_1cwWNt4sqlgA8gCT.json | 11 ++- .../weapon_Buckler_EmFTp9wzT6MHSaNz.json | 13 ++- ...weapon_Casting_Sword_2Fbf2cxLfbdGkU4I.json | 13 ++- .../weapon_Crossbow_cw7HG1Z7hp7OOLD0.json | 13 ++- ...weapon_Curved_Dagger_Fk69R40svV0kanZD.json | 13 ++- .../weapon_Cutlass_CWrbnethuILXrEpA.json | 13 ++- .../weapon_Dagger_iStO0BbeMTTR0rQi.json | 13 ++- ...pon_Devouring_Dagger_C5wSGglR8e0euQnY.json | 13 ++- .../weapon_Double_Flail_xm1yU7k58fMgXxRR.json | 13 ++- ...pon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json | 13 ++- .../weapon_Dualstaff_j8cdNeIUYxxzFVji.json | 13 ++- .../weapon_Ego_Blade_G7rH31KQ5eEZXcv0.json | 13 ++- .../weapon_Elder_Bow_JdWcn9W1edhAEInL.json | 13 ++- ...pon_Extended_Polearm_fJHKMxZokVP34MCi.json | 13 ++- .../weapon_Finehair_Bow_ykF3jouxHZ6YR8Bg.json | 13 ++- .../weapon_Firestaff_BtCm2RhWEfs00g38.json | 13 ++- ...pon_Flickerfly_Blade_xLJ5RRpUoTRmAC3G.json | 13 ++- ...Floating_Bladeshards_3vti3xfo0wJND7ew.json | 13 ++- ...weapon_Fusion_Gloves_uK1RhtYAsDeoPNGx.json | 13 ++- .../weapon_Ghostblade_6gFvOFTE97QZ74Zr.json | 13 ++- .../weapon_Gilded_Bow_ctTgFfMbM3YtmsYU.json | 13 ++- ...apon_Gilded_Falchion_VwcOgqnzjf9LBj2S.json | 13 ++- ...weapon_Glowing_Rings_wG9f5NpCwSbaLy8t.json | 13 ++- .../weapon_Grappler_iEzPscUc18GuFoB6.json | 13 ++- .../weapon_Greatbow_MXBpbqQsZFln4rZk.json | 13 ++- .../weapon_Greatstaff_Yk8pTEmyLLi4095S.json | 13 ++- .../weapon_Greatsword_70ysaFJDREwTgvZa.json | 13 ++- .../weapon_Halberd_qT7FfmauAumOjJoq.json | 13 ++- .../weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json | 13 ++- ...apon_Hammer_of_Exota_0lAkBEUvbM9Osmqb.json | 13 ++- ...apon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json | 13 ++- .../weapon_Hand_Cannon_MyGz8nd5sieRQ7zl.json | 13 ++- ...weapon_Hand_Crossbow_zxKt6qXe7uZB6ljm.json | 13 ++- .../weapon_Hand_Runes_3whiedn0jBMNRdIb.json | 13 ++- .../weapon_Hand_Sling_RAIaoMi6iO1PKIlK.json | 13 ++- ...avy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json | 11 ++- ...eapon_Ilmari_s_Rifle_TMrUzVC3KvcHmdt8.json | 13 ++- ...apon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json | 13 ++- ...ane_Frame_Wheelchair_N9P695V5KKlJbAY5.json | 11 ++- ...ved_Arcane_Gauntlets_kENTDpa1hr5LDhIT.json | 13 ++- ...n_Improved_Battleaxe_nxGUpuHLmuKdKsDC.json | 13 ++- ..._Improved_Broadsword_OcKeLJxvmdT81VBc.json | 11 ++- ...on_Improved_Crossbow_55NwHIIZHUeKSE3M.json | 13 ++- ...pon_Improved_Cutlass_ddRjXnp2vbohu7rJ.json | 13 ++- ...apon_Improved_Dagger_ScjTkb9qrndhlk9S.json | 13 ++- ...n_Improved_Dualstaff_f7hhHlZ5nL3AhYEM.json | 13 ++- ...proved_Glowing_Rings_N5amhkxR1xn3B7r2.json | 13 ++- ...on_Improved_Grappler_3T3o9zfe61t22L1H.json | 13 ++- ..._Improved_Greatstaff_LCuTrYXi4lhg6LqW.json | 13 ++- ..._Improved_Greatsword_FPX4ouDrxXiQ5MDf.json | 13 ++- ...pon_Improved_Halberd_F9PETfCQGwczBPif.json | 13 ++- ...mproved_Hallowed_Axe_wFOXMN2uiX4j6Gd9.json | 13 ++- ...proved_Hand_Crossbow_XEDRkuw3BhMoVBn9.json | 13 ++- ..._Improved_Hand_Runes_jMEukC3VpNDz5AOD.json | 13 ++- ...avy_Frame_Wheelchair_L5KeCtrs768PmYWW.json | 11 ++- ...ght_Frame_Wheelchair_ZJsetdHKV77ygtCE.json | 11 ++- ...pon_Improved_Longbow_NacNonjbzyoVMNhI.json | 13 ++- ...n_Improved_Longsword_QyBZ5NxM8F9nCL9s.json | 13 ++- ...weapon_Improved_Mace_zSLx52U4Yltqx8F1.json | 13 ++- ...mproved_Quarterstaff_BEmAR60PM3ZaiNXa.json | 13 ++- ...apon_Improved_Rapier_LFPH8nD2f4Blv3AM.json | 13 ++- ...oved_Returning_Blade_SKNwkW23eVQjN4Zy.json | 13 ++- ...mproved_Round_Shield_DlinEBGZfIlvreO3.json | 13 ++- ...pon_Improved_Scepter_tj26lbNkwy8bORF4.json | 13 ++- ...on_Improved_Shortbow_6ZWl6ARfvYBaAMwY.json | 13 ++- ..._Improved_Shortstaff_Mn8ja5Oi1sXvvPSk.json | 13 ++- ..._Improved_Shortsword_rSyBNRwemBVuTo3H.json | 9 +- ...mproved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json | 9 +- ...eapon_Improved_Spear_j5Pt1thLfcvopBij.json | 13 ++- ...mproved_Tower_Shield_bxt3NsbMqTSdI5ab.json | 13 ++- ...weapon_Improved_Wand_6d9B2b5X2d2U56jt.json | 13 ++- ...n_Improved_Warhammer_pxaN4ZK4eqKrjtWj.json | 13 ++- ...weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json | 13 ++- ...eapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json | 11 ++- ...eapon_Knuckle_Blades_U8gfyvxoHm024inM.json | 13 ++- ...weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json | 11 ++- .../weapon_Labrys_Axe_ijWppQzSOqVCb3rE.json | 13 ++- ...ane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json | 11 ++- ...ary_Arcane_Gauntlets_umADDPYCaykXDc1v.json | 13 ++- ..._Legendary_Battleaxe_1nztpLzoHGfbKf5x.json | 13 ++- ...Legendary_Broadsword_y3hfTPfZhMognyaJ.json | 11 ++- ...n_Legendary_Crossbow_1G6xX2QL9O0Rsgz7.json | 13 ++- ...on_Legendary_Cutlass_Rpyz0jbFJ1SwqfyD.json | 13 ++- ...pon_Legendary_Dagger_GmTg3Fdne1UPNs8t.json | 13 ++- ..._Legendary_Dualstaff_o3rsLvImcLAx5TvD.json | 13 ++- ...endary_Glowing_Rings_PReWrfuPjoNQuieo.json | 13 ++- ...n_Legendary_Grappler_IrtUj0UntBMNn49G.json | 13 ++- ...Legendary_Greatstaff_jDtvEabkHY1GFgfc.json | 13 ++- ...Legendary_Greatsword_zMZ46F9VR7zdTxb9.json | 13 ++- ...on_Legendary_Halberd_1AuMNiJz96Ez9fur.json | 13 ++- ...gendary_Hallowed_Axe_0HmhnZnv1I6uX69c.json | 13 ++- ...endary_Hand_Crossbow_32nYyMaeDWaakSxz.json | 13 ++- ...Legendary_Hand_Runes_DWLkswhluXuMy3bB.json | 13 ++- ...avy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json | 11 ++- ...ght_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json | 11 ++- ...on_Legendary_Longbow_Utt1GpoH1fhaTOtN.json | 13 ++- ..._Legendary_Longsword_14abPqQcROJfDChR.json | 13 ++- ...eapon_Legendary_Mace_RsDsy7tIhrhaAQQc.json | 13 ++- ...gendary_Quarterstaff_1ZciqG7vIKLYpKsP.json | 13 ++- ...pon_Legendary_Rapier_BakN97v4jTePcXiZ.json | 13 ++- ...dary_Returning_Blade_mcj3CPkcSSDdAcBB.json | 13 ++- ...gendary_Round_Shield_A28WL9E2lJ3iLZHW.json | 13 ++- ...on_Legendary_Scepter_IZ4CWNxfuM46JeCN.json | 13 ++- ...n_Legendary_Shortbow_j7kp36jaetfn5jb3.json | 13 ++- ...Legendary_Shortstaff_D3SbNvNJZAFuzfhg.json | 13 ++- ...Legendary_Shortsword_dEumq3BIZBk5xYTk.json | 9 +- ...gendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json | 9 +- ...apon_Legendary_Spear_4e5pWxi2qohuGsWh.json | 13 ++- ...gendary_Tower_Shield_MaJIROht7A9LxIZx.json | 13 ++- ...eapon_Legendary_Wand_wPjg0LufJH9vUfVM.json | 13 ++- ..._Legendary_Warhammer_W9ymfEDck2icfvla.json | 13 ++- ...eapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json | 13 ++- ...ght_Frame_Wheelchair_iaGnlUkShBgdeMo0.json | 11 ++- .../weapon_Longbow_YfVs6Se903az4Yet.json | 13 ++- .../weapon_Longsword_Iv8BZM1R24QMT72M.json | 13 ++- .../weapons/weapon_Mace_cKQCDyM2UopDL9zF.json | 13 ++- .../weapon_Mage_Orb_XKBmBUEoGLdLcuqQ.json | 13 ++- ...eapon_Magus_Revolver_jGykNGQiKm63tCiE.json | 13 ++- ...pon_Meridian_Cutlass_Gi26Zk9VqlAAgx3E.json | 13 ++- .../weapon_Midas_Scythe_BdLfy5i488VZgkjP.json | 13 ++- ...apon_Parrying_Dagger_taAZDkDCpeNgxhnn.json | 13 ++- ...pon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json | 13 ++- .../weapon_Primer_Shard_SxcblanBvqaest3A.json | 11 ++- .../weapon_Quarterstaff_mlIj88p1wcQNjEDG.json | 13 ++- .../weapon_Rapier_zkAgEW6zMkRZalEm.json | 13 ++- ...on_Retractable_Saber_i8CqVTzqoRoCewNe.json | 13 ++- ...weapon_Returning_Axe_FtsQGwOg3r8uUCST.json | 13 ++- ...apon_Returning_Blade_4fQpVfQ3NVwTHStA.json | 13 ++- ...weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json | 13 ++- .../weapon_Round_Shield_mxwWKDujgsRcZWPT.json | 13 ++- ...n_Runes_of_Ruination_EG6mZhr3ib56r974.json | 13 ++- .../weapon_Scepter_GZh345N8fmuS4Jeh.json | 13 ++- ...pon_Scepter_of_Elias_acPGwIaUhx3R0mTq.json | 13 ++- .../weapon_Shortbow_p9tdjQr2AZP19RYm.json | 13 ++- .../weapon_Shortstaff_vHDHG3STcxTEfYAM.json | 13 ++- .../weapon_Shortsword_cjGZpXCoshEqi1FI.json | 9 +- ..._Siphoning_Gauntlets_1N1jggda5DfdzdMj.json | 13 ++- .../weapon_Sledge_Axe_OxsEmffWriiQmqJK.json | 13 ++- .../weapon_Small_Dagger_wKklDxs5nkzILNp4.json | 9 +- .../weapon_Spear_TF85tKJetUjLwh54.json | 13 ++- .../weapon_Spiked_Bow_O1w8KPYH85ZS8X64.json | 13 ++- ...weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json | 11 ++- ..._Steelforged_Halberd_6bkbw4Ap644KZGvJ.json | 13 ++- ...n_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json | 13 ++- ...ord_of_Light___Flame_TVPCWnSELOVBv6G1.json | 13 ++- .../weapon_Talon_Blades_jlLtgK468rO5IssR.json | 13 ++- .../weapon_Thistlebow_I1nDGpulg29GpWOW.json | 11 ++- .../weapon_Tower_Shield_C9aWpK1shVMWP4m5.json | 13 ++- ...apon_Urok_Broadsword_zGm6Wa1fGF6cECY5.json | 13 ++- .../weapons/weapon_Wand_ItWisJFNGMNWeaCV.json | 13 ++- ...Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json | 13 ++- ...weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json | 13 ++- .../weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json | 11 ++- .../weapon_Warhammer_ZXh1GQahBiODfSTC.json | 13 ++- .../weapons/weapon_Whip_CmtWqw6DwoePnX7W.json | 13 ++- ...pon_Widogast_Pendant_8Z5QrThfwkYPXNco.json | 13 ++- ...apon_Yutari_Bloodbow_0XpSBYXxtywvBFQi.json | 13 ++- ...feature_Accomplished_0wCctRupJAv5hTuE.json | 15 ++- ...ture_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json | 15 ++- .../feature_Adept_v511C6GMShsBblah.json | 15 ++- .../feature_Adrenaline_uByM34yQlw38yf1V.json | 15 ++- ...re_Advanced_Training_uGcs785h94RMtueH.json | 15 ++- ...eature_Apex_Predator_lwH3E0Zyf4gbVOd0.json | 15 ++- ...eature_Arcane_Charge_yA4MKQ1tbKFiJoDB.json | 15 ++- .../feature_Ascendant_fefLgx6kcYWusjBb.json | 15 ++- .../feature_At_Ease_xPWFvGvtUjIcqgJq.json | 15 ++- ...eature_Battle_Bonded_hWsKyed1vfILg0I8.json | 15 ++- ...eature_Battle_Ritual_qqb5acyUSl1sCpWW.json | 15 ++- .../feature_Battlemage_Y9eGMewnFZgPvX0M.json | 15 ++- .../feature_Brilliant_2A0HBDxGc4gEARou.json | 15 ++- ...re_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json | 15 ++- .../feature_Comaraderie_dArl2cxKIEGTicXU.json | 15 ++- .../feature_Companion_MBFXxIEwc0Dl4kJg.json | 15 ++- ...ature_Conjure_Shield_oirsCnN66GOlK3Fa.json | 15 ++- ..._Contacts_Everywhere_cXbRm744mW6UXGam.json | 15 ++- .../feature_Courage_o5j2vjXU8NicYlXx.json | 15 ++- .../feature_Dark_Cloud_frBTtNMX9Y2gkuPz.json | 15 ++- .../feature_Defender_Jdktv5p1K2PfgxrT.json | 15 ++- .../feature_Devout_J3A7ycmj65hlhWnI.json | 15 ++- ...ature_Elemental_Aura_2JH9NaOh69yN80Gw.json | 15 ++- ...e_Elemental_Dominion_EFUJHrkTuyv8uA9l.json | 15 ++- ...lemental_Incarnation_f37TTgCc0Q3Ih1A1.json | 15 ++- ...feature_Elementalist_dPcqKN5NeDkjB1HW.json | 15 ++- .../feature_Eloquent_5bmB1YcxiJVNVXDM.json | 15 ++- ...ure_Elusive_Predator_Cjtc43V3IzAmfIFG.json | 15 ++- ...eature_Enchanted_Aid_4pVBN8cuKePI423V.json | 15 ++- .../feature_Epic_Poetry_eCoEWkWuZPMZ9C6a.json | 15 ++- ...ture_Ethereal_Visage_tyGB6wRKjYdIBK1i.json | 15 ++- ...ture_Expert_Training_iCXtOWBKv1FdKdWz.json | 15 ++- ...ature_Face_Your_Fear_D3ffFWSXCza4WGcM.json | 15 ++- ...ture_Fleeting_Shadow_EY7Eo6hNGppVL3dR.json | 15 ++- ...ature_Fueled_by_Fear_hNqLf3zEfKRzSbvq.json | 15 ++- ...ure_Gifted_Performer_99U7YWNCxFZHCiT0.json | 15 ++- ...feature_Have_No_Fear_8TH6h6a36h09mf6d.json | 15 ++- ...ture_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json | 15 ++- ...ture_Honed_Expertise_w1BwNKxbQOSizLmZ.json | 15 ++- .../feature_Iron_Will_7AVRNyBcd1Nffjtn.json | 15 ++- ...feature_Loyal_Friend_xjZHD5Yo3Tu26rLm.json | 15 ++- ...ture_Loyal_Protector_hd7UeBPr86Mz21Pe.json | 15 ++- .../feature_Maestro_ZFkCz8XV1EtMoJ1w.json | 15 ++- ...ure_Manipulate_Magic_UNg4eyNfEQrMdD7G.json | 15 ++- ..._Martial_Preparation_dHgAnbt9m1KsQFmp.json | 15 ++- ...ture_Natural_Evasion_TnuLBtHQGbqyzn82.json | 15 ++- .../feature_Nemesis_DPKmipNRlSAMs2Cg.json | 15 ++- ...ture_Partner_in_Arms_G54qY96XK62hgoK9.json | 15 ++- ...feature_Path_Forward_uPPBOpoulUmSLlzr.json | 15 ++- ...ature_Perfect_Recall_HzPa5U0EQhDfFTqW.json | 15 ++- ...re_Power_of_the_Gods_Yij5sNyP1Ii7BAbc.json | 15 ++- .../feature_Prepared_YS52ZGdce605wNVT.json | 15 ++- ...feature_Regeneration_KRyrbSLVGreIOTZe.json | 15 ++- ...e_Regenerative_Reach_oLO3VjGkMcK1uvB9.json | 15 ++- ...ture_Reliable_Backup_QYNGdH37fsGuxS7L.json | 15 ++- .../feature_Revenge_oNfA5F9cKwNR7joq.json | 15 ++- ...ise_to_the_Challenge_dcutk8RVOJ2sEkO1.json | 15 ++- ...ature_Rousing_Speech_PCmYTX02JLzBpgml.json | 15 ++- ...re_Ruthless_Predator_Qny2J3R35bvC0Cey.json | 15 ++- ...ure_Sacred_Resonance_DxOAkDBfIMpXxAUD.json | 15 ++- ...ature_Shadow_Stepper_hAwTXjhyphiE3aeW.json | 15 ++- .../feature_Slayer_1hF5KGKQc2VKT5O8.json | 15 ++- ...eature_Sparing_Touch_GfOSgVJW8bS1OjNq.json | 15 ++- ...eature_Spirit_Weapon_McoS0RxNLOg3SfSt.json | 15 ++- ...ture_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json | 15 ++- ...eature_Transcendence_th6HZwEFnVBjUtqm.json | 15 ++- .../feature_Undaunted_866b2jjyzXP8nPRQ.json | 15 ++- .../feature_Unrelenting_4qP7bNyxVHBmr4Rb.json | 15 ++- .../feature_Unwavering_WBiFZaYNoQNhysmN.json | 15 ++- ...eature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json | 15 ++- .../feature_Virtuoso_kn2t409o0FDFQieo.json | 15 ++- ..._Warden_s_Protection_2F1bUFY80oce97C9.json | 15 ++- ...re_Weapon_Specialist_HAqtoKUTrk8Mip1n.json | 15 ++- ...ature_Well_Connected_7KnSOazixXXSnspj.json | 15 ++- ...ature_Wings_of_Light_KkQH0tYhagIqe2MT.json | 15 ++- .../subclass_Beastbound_TIUsIlTS1WkK5vr2.json | 15 ++- ...ss_Call_Of_The_Brave_NAFU9roaVG7f3RNJ.json | 15 ++- ...s_Call_Of_The_Slayer_bcNe5qP3o6CKadhK.json | 15 ++- ...class_Divine_Wielder_M5mpGoAj8LRkylrY.json | 15 ++- ...ass_Elemental_Origin_wg1H0hROc2acHwZh.json | 15 ++- ...subclass_Nightwalker_h161OSIK24Up4qNd.json | 15 ++- ...bclass_Primal_Origin_GLpRVxnY5E82khxH.json | 15 ++- ..._School_Of_Knowledge_qqQlgCqhOivUFoQn.json | 15 ++- ...bclass_School_Of_War_4y9Ph7RsCIAbkwTk.json | 15 ++- .../subclass_Stalwart_rKRxFBlkbh9cDK8K.json | 15 ++- .../subclass_Syndicate_95QxNZwgyEm1LqdG.json | 15 ++- .../subclass_Troubadour_ld8MIvk0xVJydSBz.json | 15 ++- .../subclass_Vengeance_SUo8NPBPO8aN193u.json | 15 ++- ...ss_Warden_of_Renewal_xp0XMjYT85Q7E90o.json | 15 ++- ...rden_of_the_Elements_W9hs5kxOWeY7eA4Q.json | 15 ++- .../subclass_Wayfinder_zsUglcU4NgZ8tNgZ.json | 15 ++- ...lass_Winged_Sentinel_y7ERWRIpJsdP9Re4.json | 15 ++- .../subclass_Wordsmith_XTSODVM8st75Os8M.json | 15 ++- styles/less/dialog/attribution/sheet.less | 23 +++++ styles/less/dialog/index.less | 1 + styles/less/global/elements.less | 11 +++ .../sheets/actors/actor-sheet-shared.less | 18 +++- .../sheets/actors/environment/header.less | 7 ++ .../less/sheets/actors/environment/sheet.less | 10 ++ styles/less/sheets/index.less | 2 + styles/less/sheets/items/heritage.less | 12 +++ .../less/sheets/items/item-sheet-shared.less | 13 +++ templates/dialogs/attribution.hbs | 26 ++++++ templates/settings/appearance-settings.hbs | 2 + templates/sheets/actors/adversary/notes.hbs | 4 + .../sheets/actors/environment/header.hbs | 23 +++-- templates/sheets/actors/environment/notes.hbs | 4 + .../sheets/global/tabs/tab-description.hbs | 4 + templates/sheets/items/ancestry/header.hbs | 1 + templates/sheets/items/community/header.hbs | 1 + templates/sheets/items/domainCard/header.hbs | 1 + 982 files changed, 9082 insertions(+), 3996 deletions(-) create mode 100644 module/applications/dialogs/attributionDialog.mjs delete mode 100644 src/packs/items/weapons/loot_Black_Powder_Revolver_NUbvkPLS71XO073r.json create mode 100644 styles/less/dialog/attribution/sheet.less create mode 100644 styles/less/sheets/items/heritage.less create mode 100644 styles/less/sheets/items/item-sheet-shared.less create mode 100644 templates/dialogs/attribution.hbs diff --git a/lang/en.json b/lang/en.json index 954f8025..aeb63449 100755 --- a/lang/en.json +++ b/lang/en.json @@ -236,6 +236,9 @@ } }, "APPLICATIONS": { + "Attribution": { + "title": "Attribution" + }, "CharacterCreation": { "tabs": { "ancestry": "Ancestry", @@ -1905,6 +1908,7 @@ "armorScore": "Armor Score", "activeEffects": "Active Effects", "armorSlots": "Armor Slots", + "artistAttribution": "Artwork By: {artist}", "attack": "Attack", "basics": "Basics", "bonus": "Bonus", @@ -2005,6 +2009,11 @@ }, "ITEMS": { "FIELDS": { + "attribution": { + "source": { "label": "Source" }, + "page": { "label": "Page" }, + "artist": { "label": "Artist" } + }, "resource": { "amount": { "label": "Amount" }, "dieFaces": { "label": "Die Faces" }, @@ -2102,7 +2111,7 @@ "FIELDS": { "displayFear": { "label": "Fear Display" }, "dualityColorScheme": { "label": "Chat Style" }, - "showGenericStatusEffects": { "label": "Show Foundry Status Effects" }, + "hideAttribution": { "label": "Hide Attribution" }, "expandedTitle": "Auto-expand Descriptions", "extendCharacterDescriptions": { "label": "Characters" }, "extendAdversaryDescriptions": { "label": "Adversaries" }, @@ -2112,7 +2121,8 @@ "expandRollMessageDesc": { "label": "Description" }, "expandRollMessageRoll": { "label": "Formula" }, "expandRollMessageDamage": { "label": "Damage/Healing" }, - "expandRollMessageTarget": { "label": "Target" } + "expandRollMessageTarget": { "label": "Target" }, + "showGenericStatusEffects": { "label": "Show Foundry Status Effects" } }, "fearDisplay": { "token": "Tokens", @@ -2411,7 +2421,8 @@ "rulesOff": "Rules Off", "remainingUses": "Uses refresh on {type}", "rightClickExtand": "Right-Click to extand", - "companionPartnerLevelBlock": "The companion needs an assigned partner to level up." + "companionPartnerLevelBlock": "The companion needs an assigned partner to level up.", + "configureAttribution": "Configure Attribution" } } } diff --git a/module/applications/dialogs/_module.mjs b/module/applications/dialogs/_module.mjs index 8908ae2b..84ba4037 100644 --- a/module/applications/dialogs/_module.mjs +++ b/module/applications/dialogs/_module.mjs @@ -1,3 +1,4 @@ +export { default as AttributionDialog } from './attributionDialog.mjs'; export { default as BeastformDialog } from './beastformDialog.mjs'; export { default as d20RollDialog } from './d20RollDialog.mjs'; export { default as DamageDialog } from './damageDialog.mjs'; diff --git a/module/applications/dialogs/attributionDialog.mjs b/module/applications/dialogs/attributionDialog.mjs new file mode 100644 index 00000000..a72f6306 --- /dev/null +++ b/module/applications/dialogs/attributionDialog.mjs @@ -0,0 +1,93 @@ +import autocomplete from 'autocompleter'; + +const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; + +export default class AttriubtionDialog extends HandlebarsApplicationMixin(ApplicationV2) { + constructor(item) { + super({}); + + this.item = item; + this.sources = Object.keys(CONFIG.DH.GENERAL.attributionSources).flatMap(groupKey => { + const group = CONFIG.DH.GENERAL.attributionSources[groupKey]; + return group.values.map(x => ({ group: group.label, ...x })); + }); + } + + get title() { + return game.i18n.localize('DAGGERHEART.APPLICATIONS.Attribution.title'); + } + + static DEFAULT_OPTIONS = { + tag: 'form', + classes: ['daggerheart', 'dh-style', 'dialog', 'views', 'attribution'], + position: { width: 'auto', height: 'auto' }, + window: { icon: 'fa-solid fa-signature' }, + form: { handler: this.updateData, submitOnChange: false, closeOnSubmit: true } + }; + + static PARTS = { + main: { template: 'systems/daggerheart/templates/dialogs/attribution.hbs' } + }; + + _attachPartListeners(partId, htmlElement, options) { + super._attachPartListeners(partId, htmlElement, options); + const sources = this.sources; + + htmlElement.querySelectorAll('.attribution-input').forEach(element => { + autocomplete({ + input: element, + fetch: function (text, update) { + if (!text) { + update(sources); + } else { + text = text.toLowerCase(); + var suggestions = sources.filter(n => n.label.toLowerCase().includes(text)); + update(suggestions); + } + }, + render: function (item, search) { + const label = game.i18n.localize(item.label); + const matchIndex = label.toLowerCase().indexOf(search); + + const beforeText = label.slice(0, matchIndex); + const matchText = label.slice(matchIndex, matchIndex + search.length); + const after = label.slice(matchIndex + search.length, label.length); + + const element = document.createElement('li'); + element.innerHTML = `${beforeText}${matchText ? `${matchText}` : ''}${after}`; + if (item.hint) { + element.dataset.tooltip = game.i18n.localize(item.hint); + } + + return element; + }, + renderGroup: function (label) { + const itemElement = document.createElement('div'); + itemElement.textContent = game.i18n.localize(label); + return itemElement; + }, + onSelect: function (item) { + element.value = item.label; + }, + click: e => e.fetch(), + customize: function (_input, _inputRect, container) { + container.style.zIndex = foundry.applications.api.ApplicationV2._maxZ; + }, + minLength: 0 + }); + }); + } + + async _prepareContext(_options) { + const context = await super._prepareContext(_options); + context.item = this.item; + context.data = this.item.system.attribution; + + return context; + } + + static async updateData(_event, _element, formData) { + await this.item.update({ 'system.attribution': formData.object }); + this.item.sheet.refreshFrame(); + } +} diff --git a/module/applications/sheets/actors/adversary.mjs b/module/applications/sheets/actors/adversary.mjs index c128b648..01256bcc 100644 --- a/module/applications/sheets/actors/adversary.mjs +++ b/module/applications/sheets/actors/adversary.mjs @@ -4,6 +4,7 @@ import DHBaseActorSheet from '../api/base-actor.mjs'; /**@typedef {import('@client/applications/_types.mjs').ApplicationClickAction} ApplicationClickAction */ export default class AdversarySheet extends DHBaseActorSheet { + /** @inheritDoc */ static DEFAULT_OPTIONS = { classes: ['adversary'], position: { width: 660, height: 766 }, @@ -12,7 +13,14 @@ export default class AdversarySheet extends DHBaseActorSheet { reactionRoll: AdversarySheet.#reactionRoll }, window: { - resizable: true + resizable: true, + controls: [ + { + icon: 'fa-solid fa-signature', + label: 'DAGGERHEART.UI.Tooltip.configureAttribution', + action: 'editAttribution' + } + ] } }; diff --git a/module/applications/sheets/actors/environment.mjs b/module/applications/sheets/actors/environment.mjs index aa2759a2..9fd003c6 100644 --- a/module/applications/sheets/actors/environment.mjs +++ b/module/applications/sheets/actors/environment.mjs @@ -8,10 +8,17 @@ export default class DhpEnvironment extends DHBaseActorSheet { classes: ['environment'], position: { width: 500, - height: 725 + height: 740 }, window: { - resizable: true + resizable: true, + controls: [ + { + icon: 'fa-solid fa-signature', + label: 'DAGGERHEART.UI.Tooltip.configureAttribution', + action: 'editAttribution' + } + ] }, actions: {}, dragDrop: [{ dragSelector: '.action-section .inventory-item', dropSelector: null }] @@ -42,6 +49,7 @@ export default class DhpEnvironment extends DHBaseActorSheet { switch (partId) { case 'header': await this._prepareHeaderContext(context, options); + break; case 'notes': await this._prepareNotesContext(context, options); diff --git a/module/applications/sheets/api/application-mixin.mjs b/module/applications/sheets/api/application-mixin.mjs index 83dc1581..15b84cff 100644 --- a/module/applications/sheets/api/application-mixin.mjs +++ b/module/applications/sheets/api/application-mixin.mjs @@ -85,6 +85,8 @@ export default function DHApplicationMixin(Base) { this._dragDrop = this._createDragDropHandlers(); } + #nonHeaderAttribution = ['environment', 'ancestry', 'community', 'domainCard']; + /** * The default options for the sheet. * @type {DHSheetV2Configuration} @@ -101,7 +103,8 @@ export default function DHApplicationMixin(Base) { toggleEffect: DHSheetV2.#toggleEffect, toggleExtended: DHSheetV2.#toggleExtended, addNewItem: DHSheetV2.#addNewItem, - browseItem: DHSheetV2.#browseItem + browseItem: DHSheetV2.#browseItem, + editAttribution: DHSheetV2.#editAttribution }, contextMenus: [ { @@ -125,6 +128,43 @@ export default function DHApplicationMixin(Base) { tagifyConfigs: [] }; + /**@inheritdoc */ + async _renderFrame(options) { + const frame = await super._renderFrame(options); + + const hideAttribution = game.settings.get( + CONFIG.DH.id, + CONFIG.DH.SETTINGS.gameSettings.appearance + ).hideAttribution; + const headerAttribution = !this.#nonHeaderAttribution.includes(this.document.type); + if (!hideAttribution && this.document.system.metadata.hasAttribution && headerAttribution) { + const { source, page } = this.document.system.attribution; + const attribution = [source, page ? `pg ${page}.` : null].filter(x => x).join('. '); + const element = ``; + this.window.controls.insertAdjacentHTML('beforebegin', element); + } + + return frame; + } + + /** + * Refresh the custom parts of the application frame + */ + refreshFrame() { + const hideAttribution = game.settings.get( + CONFIG.DH.id, + CONFIG.DH.SETTINGS.gameSettings.appearance + ).hideAttribution; + const headerAttribution = !this.#nonHeaderAttribution.includes(this.document.type); + if (!hideAttribution && this.document.system.metadata.hasAttribution && headerAttribution) { + const { source, page } = this.document.system.attribution; + const attribution = [source, page ? `pg ${page}.` : null].filter(x => x).join('. '); + + const label = this.window.header.querySelector('.attribution-header-label'); + label.innerHTML = attribution; + } + } + /** * Related documents that should cause a rerender of this application when updated. */ @@ -548,6 +588,14 @@ export default function DHApplicationMixin(Base) { return new ItemBrowser({ presets }).render({ force: true }); } + /** + * Open the attribution dialog + * @type {ApplicationClickAction} + */ + static async #editAttribution() { + new game.system.api.applications.dialogs.AttributionDialog(this.document).render({ force: true }); + } + /** * Create an embedded document. * @type {ApplicationClickAction} diff --git a/module/applications/sheets/api/base-actor.mjs b/module/applications/sheets/api/base-actor.mjs index 67cec44f..33c5a0e2 100644 --- a/module/applications/sheets/api/base-actor.mjs +++ b/module/applications/sheets/api/base-actor.mjs @@ -55,6 +55,9 @@ export default class DHBaseActorSheet extends DHApplicationMixin(ActorSheetV2) { async _prepareContext(_options) { const context = await super._prepareContext(_options); context.isNPC = this.document.isNPC; + context.showAttribution = !game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance) + .hideAttribution; + return context; } diff --git a/module/applications/sheets/api/base-item.mjs b/module/applications/sheets/api/base-item.mjs index a9d3237d..b4af283b 100644 --- a/module/applications/sheets/api/base-item.mjs +++ b/module/applications/sheets/api/base-item.mjs @@ -13,7 +13,16 @@ export default class DHBaseItemSheet extends DHApplicationMixin(ItemSheetV2) { static DEFAULT_OPTIONS = { classes: ['item'], position: { width: 600 }, - window: { resizable: true }, + window: { + resizable: true, + controls: [ + { + icon: 'fa-solid fa-signature', + label: 'DAGGERHEART.UI.Tooltip.configureAttribution', + action: 'editAttribution' + } + ] + }, form: { submitOnChange: true }, @@ -55,6 +64,15 @@ export default class DHBaseItemSheet extends DHApplicationMixin(ItemSheetV2) { /* Prepare Context */ /* -------------------------------------------- */ + /**@inheritdoc */ + async _prepareContext(options) { + const context = super._prepareContext(options); + context.showAttribution = !game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance) + .hideAttribution; + + return context; + } + /**@inheritdoc */ async _preparePartContext(partId, context, options) { await super._preparePartContext(partId, context, options); diff --git a/module/config/generalConfig.mjs b/module/config/generalConfig.mjs index 34ca6009..e99c6ff1 100644 --- a/module/config/generalConfig.mjs +++ b/module/config/generalConfig.mjs @@ -624,6 +624,13 @@ export const rollTypes = { } }; +export const attributionSources = { + daggerheart: { + label: 'Daggerheart', + values: [{ label: 'Daggerheart SRD' }] + } +}; + export const fearDisplay = { token: { value: 'token', label: 'DAGGERHEART.SETTINGS.Appearance.fearDisplay.token' }, bar: { value: 'bar', label: 'DAGGERHEART.SETTINGS.Appearance.fearDisplay.bar' }, diff --git a/module/data/actor/adversary.mjs b/module/data/actor/adversary.mjs index e64c64f3..80bcb43e 100644 --- a/module/data/actor/adversary.mjs +++ b/module/data/actor/adversary.mjs @@ -10,7 +10,8 @@ export default class DhpAdversary extends BaseDataActor { return foundry.utils.mergeObject(super.metadata, { label: 'TYPES.Actor.adversary', type: 'adversary', - settingSheet: DHAdversarySettings + settingSheet: DHAdversarySettings, + hasAttribution: true }); } diff --git a/module/data/actor/base.mjs b/module/data/actor/base.mjs index 5b225228..bdb810dd 100644 --- a/module/data/actor/base.mjs +++ b/module/data/actor/base.mjs @@ -39,7 +39,8 @@ export default class BaseDataActor extends foundry.abstract.TypeDataModel { type: 'base', isNPC: true, settingSheet: null, - hasResistances: true + hasResistances: true, + hasAttribution: false }; } @@ -53,6 +54,13 @@ export default class BaseDataActor extends foundry.abstract.TypeDataModel { const fields = foundry.data.fields; const schema = {}; + if (this.metadata.hasAttribution) { + schema.attribution = new fields.SchemaField({ + source: new fields.StringField(), + page: new fields.NumberField(), + artist: new fields.StringField() + }); + } if (this.metadata.isNPC) schema.description = new fields.HTMLField({ required: true, nullable: true }); if (this.metadata.hasResistances) schema.resistance = new fields.SchemaField({ @@ -78,6 +86,13 @@ export default class BaseDataActor extends foundry.abstract.TypeDataModel { */ static DEFAULT_ICON = null; + get attributionLabel() { + if (!this.attribution) return; + + const { source, page } = this.attribution; + return [source, page ? `pg ${page}.` : null].filter(x => x).join('. '); + } + /* -------------------------------------------- */ /** diff --git a/module/data/actor/environment.mjs b/module/data/actor/environment.mjs index adb7dabc..ce1df7cd 100644 --- a/module/data/actor/environment.mjs +++ b/module/data/actor/environment.mjs @@ -12,7 +12,8 @@ export default class DhEnvironment extends BaseDataActor { label: 'TYPES.Actor.environment', type: 'environment', settingSheet: DHEnvironmentSettings, - hasResistances: false + hasResistances: false, + hasAttribution: true }); } diff --git a/module/data/item/base.mjs b/module/data/item/base.mjs index f0b22b44..1b257db4 100644 --- a/module/data/item/base.mjs +++ b/module/data/item/base.mjs @@ -26,7 +26,8 @@ export default class BaseDataItem extends foundry.abstract.TypeDataModel { hasResource: false, isQuantifiable: false, isInventoryItem: false, - hasActions: false + hasActions: false, + hasAttribution: true }; } @@ -37,7 +38,13 @@ export default class BaseDataItem extends foundry.abstract.TypeDataModel { /** @inheritDoc */ static defineSchema() { - const schema = {}; + const schema = { + attribution: new fields.SchemaField({ + source: new fields.StringField(), + page: new fields.NumberField(), + artist: new fields.StringField() + }) + }; if (this.metadata.hasDescription) schema.description = new fields.HTMLField({ required: true, nullable: true }); @@ -110,6 +117,13 @@ export default class BaseDataItem extends foundry.abstract.TypeDataModel { return []; } + get attributionLabel() { + if (!this.attribution) return; + + const { source, page } = this.attribution; + return [source, page ? `pg ${page}.` : null].filter(x => x).join('. '); + } + /** * Obtain a data object used to evaluate any dice rolls associated with this Item Type * @param {object} [options] - Options which modify the getRollData method. diff --git a/module/data/settings/Appearance.mjs b/module/data/settings/Appearance.mjs index e493b187..36f6bb5a 100644 --- a/module/data/settings/Appearance.mjs +++ b/module/data/settings/Appearance.mjs @@ -89,6 +89,11 @@ export default class DhAppearance extends foundry.abstract.DataModel { initial: false, label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageTarget.label' }) + }), + hideAttribution: new fields.BooleanField({ + required: true, + initial: false, + label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.hideAttribution.label' }) }; } diff --git a/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json b/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json index e226f013..0bc8d39d 100644 --- a/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json +++ b/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json @@ -143,6 +143,11 @@ "difficulty": null, "damageMod": "none" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 75, + "artist": "" } }, "flags": {}, @@ -152,9 +157,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010222829, - "modifiedTime": 1755259462470, + "modifiedTime": 1755384241210, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { diff --git a/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json b/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json index f2eeb23b..c8079e49 100644 --- a/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json +++ b/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 91, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784219, - "modifiedTime": 1755259462665, + "modifiedTime": 1755385356620, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "G7jiltRjgvVhZewm", diff --git a/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json b/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json index 953e7deb..ad630902 100644 --- a/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json +++ b/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json @@ -105,6 +105,11 @@ "img": "icons/weapons/daggers/dagger-bone-black.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -114,9 +119,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784220, - "modifiedTime": 1755259462932, + "modifiedTime": 1755384980487, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "vNIbYQ4YSzNf0WPE", diff --git a/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json b/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json index 81287859..720dd90b 100644 --- a/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json +++ b/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json @@ -117,6 +117,11 @@ "img": "icons/magic/unholy/beam-ringed-impact-purple.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 97, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784221, - "modifiedTime": 1755259462752, + "modifiedTime": 1755385620034, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WPEOIGfclNJxWb87", diff --git a/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json b/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json index e2793ca3..2b0bddcd 100644 --- a/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json +++ b/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json @@ -111,6 +111,11 @@ "img": "icons/weapons/bows/longbow-recurve-leather-brown.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784222, - "modifiedTime": 1755259462476, + "modifiedTime": 1755384306205, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JRhrrEg5UroURiAD", diff --git a/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json b/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json index 643610d3..6f43714d 100644 --- a/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json +++ b/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784223, - "modifiedTime": 1755259462516, + "modifiedTime": 1755384973132, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "0ts6CGd93lLqGZI5", diff --git a/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json b/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json index 7cffa6de..c69454c6 100644 --- a/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json +++ b/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784224, - "modifiedTime": 1755259462844, + "modifiedTime": 1755384989183, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "h5RuhzGL17dW5FBT", diff --git a/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json b/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json index cad8ac88..5765ca72 100644 --- a/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json +++ b/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 85, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784224, - "modifiedTime": 1755264708230, + "modifiedTime": 1755385012352, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dgH3fW9FTYLaIDvS", diff --git a/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json b/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json index 688b54f4..a1c06c52 100644 --- a/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json +++ b/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 75, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784226, - "modifiedTime": 1755259462479, + "modifiedTime": 1755384265295, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "71qKDLKO3CsrNkdy", diff --git a/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json b/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json index 184f5fdf..cd514f93 100644 --- a/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json +++ b/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784226, - "modifiedTime": 1755259462481, + "modifiedTime": 1755384320981, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "B4LZcGuBAHzyVdzy", diff --git a/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json b/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json index bbdb4e63..052f5c1e 100644 --- a/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json +++ b/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json @@ -115,6 +115,11 @@ "img": "icons/skills/melee/unarmed-punch-fist-yellow-red.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -124,9 +129,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784231, - "modifiedTime": 1755259462487, + "modifiedTime": 1755384340788, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2UeZ0tEe7AzgSJNd", diff --git a/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json b/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json index 8904e37a..ca46acc2 100644 --- a/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json +++ b/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json @@ -111,6 +111,11 @@ "img": "icons/weapons/clubs/club-banded-barbed-black.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 75, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784233, - "modifiedTime": 1755259462491, + "modifiedTime": 1755384280132, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8Zkqk1jU09nKL2fy", diff --git a/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json b/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json index 652ccc48..ff9b1215 100644 --- a/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json +++ b/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json @@ -106,6 +106,11 @@ "img": "icons/magic/light/beam-rays-magenta.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 85, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784233, - "modifiedTime": 1755259462855, + "modifiedTime": 1755385025439, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jDmHqGvzg5wjgmxE", diff --git a/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json b/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json index 6bea9bbc..51d3f73d 100644 --- a/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json +++ b/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json @@ -99,6 +99,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 85, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784234, - "modifiedTime": 1755259462618, + "modifiedTime": 1755385032835, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "99TqczuQipBmaB8i", diff --git a/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json b/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json index eb5d35a1..ed0d9abd 100644 --- a/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json +++ b/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 75, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784236, - "modifiedTime": 1755259462495, + "modifiedTime": 1755384289735, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uOP5oT9QzXPlnf3p", diff --git a/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json b/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json index e0cfcf66..6432afab 100644 --- a/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json +++ b/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 85, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784237, - "modifiedTime": 1755264799637, + "modifiedTime": 1755385040425, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ZxWaWPdzFIUPNC62", diff --git a/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json b/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json index 77181f05..90f7bd6c 100644 --- a/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json +++ b/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784237, - "modifiedTime": 1755259462499, + "modifiedTime": 1755384362436, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CBBuEXAlLKFMJdjg", diff --git a/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json b/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json index 6c63e29e..d83ce510 100644 --- a/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json +++ b/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json @@ -117,6 +117,11 @@ "img": "icons/weapons/staves/staff-ornate-purple.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 85, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784239, - "modifiedTime": 1755259462512, + "modifiedTime": 1755385049086, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "0NxCSugvKQ4W8OYZ", diff --git a/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json b/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json index 96fc1cc6..236402ea 100644 --- a/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json +++ b/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json @@ -106,6 +106,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784239, - "modifiedTime": 1755264898243, + "modifiedTime": 1755385067530, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tyBOpLfigAhI9bU3", diff --git a/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json b/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json index fe8d090f..78024303 100644 --- a/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json +++ b/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json @@ -99,6 +99,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784240, - "modifiedTime": 1755264925295, + "modifiedTime": 1755385079522, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "zx99sOGTXicP4SSD", diff --git a/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json b/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json index 31418d81..d14eff69 100644 --- a/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json +++ b/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json @@ -111,6 +111,11 @@ "img": "icons/magic/nature/root-vines-grow-brown.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784246, - "modifiedTime": 1755259462506, + "modifiedTime": 1755384371297, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9x2xY9zwc3xzbXo5", diff --git a/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json b/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json index d32c7ef7..e74522d3 100644 --- a/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json +++ b/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 91, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784247, - "modifiedTime": 1755265775161, + "modifiedTime": 1755385363507, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "pnyjIGxxvurcWmTv", diff --git a/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json b/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json index 673a050d..b5313df2 100644 --- a/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json +++ b/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json @@ -112,6 +112,11 @@ "type": "attack", "range": "far", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 92, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784248, - "modifiedTime": 1755266281854, + "modifiedTime": 1755385375748, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kE4dfhqmIQpNd44e", diff --git a/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json b/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json index 23cfe473..61427aab 100644 --- a/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json +++ b/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 92, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784249, - "modifiedTime": 1755259462532, + "modifiedTime": 1755385382792, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2VN3BftageoTTIzu", diff --git a/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json b/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json index d20f1f18..718f4a9a 100644 --- a/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json +++ b/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json @@ -112,6 +112,11 @@ "img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 92, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784249, - "modifiedTime": 1755259462726, + "modifiedTime": 1755385392005, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "SxSOkM4bcVOFyjbo", diff --git a/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json b/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json index 0948c917..5bdeddf9 100644 --- a/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json +++ b/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 92, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784252, - "modifiedTime": 1755259462568, + "modifiedTime": 1755385398938, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5lphJAgzoqZI3VoG", diff --git a/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json b/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json index bd8fa5e9..c3aeac45 100644 --- a/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json +++ b/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784253, - "modifiedTime": 1755264935543, + "modifiedTime": 1755385087255, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "NoRZ1PqB8N5wcIw0", diff --git a/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json b/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json index 6e2f68a7..fde75123 100644 --- a/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json +++ b/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json @@ -111,6 +111,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 93, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784253, - "modifiedTime": 1755266383523, + "modifiedTime": 1755385409189, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tBWHW00epmMnkawe", diff --git a/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json b/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json index 71a12698..7104b09f 100644 --- a/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json +++ b/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784257, - "modifiedTime": 1755259591554, + "modifiedTime": 1755384380804, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wNzeuQLfLUMvgHlQ", diff --git a/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json b/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json index c899f15b..7fb7a97d 100644 --- a/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json +++ b/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 93, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784258, - "modifiedTime": 1755259462937, + "modifiedTime": 1755385415645, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wR7cFKrHvRzbzhBT", diff --git a/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json b/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json index 87d1999c..77a84dcf 100644 --- a/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json +++ b/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json @@ -106,6 +106,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784258, - "modifiedTime": 1755264962798, + "modifiedTime": 1755385098856, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "TLzY1nDw0Bu9Ud40", diff --git a/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json b/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json index 227a40af..2e08edfd 100644 --- a/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json +++ b/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json @@ -99,6 +99,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 93, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784259, - "modifiedTime": 1755259462705, + "modifiedTime": 1755385425940, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "P7h54ZePFPHpYwvB", diff --git a/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json b/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json index 872f0398..a9e26e65 100644 --- a/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json +++ b/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json @@ -138,6 +138,11 @@ "difficulty": null, "damageMod": "none" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -147,9 +152,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754090776362, - "modifiedTime": 1755259462811, + "modifiedTime": 1755385106827, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { diff --git a/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json b/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json index 491e085d..6546153e 100644 --- a/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json +++ b/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784262, - "modifiedTime": 1755265009751, + "modifiedTime": 1755385114729, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ChwwVqowFw8hJQwT", diff --git a/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json b/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json index 2b4aea79..b87fb26a 100644 --- a/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json +++ b/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json @@ -99,6 +99,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 97, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784264, - "modifiedTime": 1755259462703, + "modifiedTime": 1755385629418, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "OsLG2BjaEdTZUJU9", diff --git a/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json b/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json index 2dece191..91530e2e 100644 --- a/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json +++ b/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json @@ -112,6 +112,11 @@ "img": "icons/weapons/staves/staff-animal-skull-bull.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 97, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784265, - "modifiedTime": 1755259462708, + "modifiedTime": 1755385635754, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "PELRry1vqjBzSAlr", diff --git a/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json b/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json index aa8b015e..73ae6429 100644 --- a/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json +++ b/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json @@ -155,7 +155,12 @@ } } }, - "motivesAndTactics": "Corrupt, dominate, punish, break the weak" + "motivesAndTactics": "Corrupt, dominate, punish, break the weak", + "attribution": { + "source": "Daggerheart SRD", + "page": 97, + "artist": "" + } }, "prototypeToken": { "name": "Fallen Warlord: Realm Breaker", @@ -742,9 +747,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753929378070, - "modifiedTime": 1755259462847, + "modifiedTime": 1755385644142, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!hxZ0sgoFJubh5aj6" diff --git a/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json b/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json index 45a59c7e..d49889b8 100644 --- a/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json +++ b/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json @@ -156,7 +156,12 @@ }, "chatDisplay": false }, - "motivesAndTactics": "Dispatch merciless death, punish the defi ant, secure victory at any cost" + "motivesAndTactics": "Dispatch merciless death, punish the defi ant, secure victory at any cost", + "attribution": { + "source": "Daggerheart SRD", + "page": 98, + "artist": "" + } }, "prototypeToken": { "name": "Fallen Warlord: Undefeated Champion", @@ -800,9 +805,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753929476879, - "modifiedTime": 1755259462720, + "modifiedTime": 1755385652290, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!RXkZTwBRi4dJ3JE5" diff --git a/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json b/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json index 2408d7cd..5c09cd95 100644 --- a/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json +++ b/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 87, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784268, - "modifiedTime": 1755259462604, + "modifiedTime": 1755385128275, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8VZIgU12cB3cvlyH", diff --git a/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json b/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json index db039085..bfcbbba2 100644 --- a/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json +++ b/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 87, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784268, - "modifiedTime": 1755259462794, + "modifiedTime": 1755385135374, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YnObCleGjPT7yqEc", diff --git a/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json b/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json index a281a775..b342864e 100644 --- a/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json +++ b/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json @@ -138,6 +138,11 @@ "difficulty": null, "damageMod": "none" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 87, + "artist": "" } }, "flags": {}, @@ -147,9 +152,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1754090770908, - "modifiedTime": 1755265221515, + "modifiedTime": 1755385144098, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { diff --git a/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json b/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json index 1cc50da4..a16fab7d 100644 --- a/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json +++ b/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784269, - "modifiedTime": 1755259619874, + "modifiedTime": 1755384391635, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "IIWV4ysJPFPnTP7W", diff --git a/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json b/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json index e4330c68..9046d679 100644 --- a/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json +++ b/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json @@ -105,6 +105,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -114,9 +119,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784270, - "modifiedTime": 1755259636506, + "modifiedTime": 1755384399993, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "4PfLnaCrOcMdb4dK", diff --git a/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json b/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json index 09a3fe45..3365533c 100644 --- a/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json +++ b/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json @@ -99,6 +99,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 87, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784271, - "modifiedTime": 1755259462570, + "modifiedTime": 1755385156358, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5s8wSvpyC5rxY5aD", diff --git a/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json b/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json index 6337dc1c..32dee4b9 100644 --- a/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json +++ b/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784272, - "modifiedTime": 1755259666128, + "modifiedTime": 1755384410923, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "fmfntuJ8mHRCAktP", diff --git a/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json b/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json index f82aa34f..a79154e5 100644 --- a/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json +++ b/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784273, - "modifiedTime": 1755259462600, + "modifiedTime": 1755384427339, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8KWVLWXFhlY2kYx0", diff --git a/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json b/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json index 57cb1760..e68bc6f4 100644 --- a/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json +++ b/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json @@ -112,6 +112,11 @@ "img": "icons/weapons/bows/shortbow-recurve-yellow.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 88, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784274, - "modifiedTime": 1755259462608, + "modifiedTime": 1755385192601, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8mJYMpbLTb8qIOrr", diff --git a/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json b/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json index e519b193..59b08577 100644 --- a/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json +++ b/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 93, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784275, - "modifiedTime": 1755259462829, + "modifiedTime": 1755385432586, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dsfB3YhoL5SudvS2", diff --git a/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json b/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json index 57dbc48b..b1da3ec3 100644 --- a/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json +++ b/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 93, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784278, - "modifiedTime": 1755259462945, + "modifiedTime": 1755385438845, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xIICT6tEdnA7dKDV", diff --git a/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json b/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json index 253da042..ca663abf 100644 --- a/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json +++ b/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784278, - "modifiedTime": 1755259726565, + "modifiedTime": 1755384442882, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "SHXedd9zZPVfUgUa", diff --git a/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json b/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json index fe3f0050..aea1a4eb 100644 --- a/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json +++ b/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 98, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784279, - "modifiedTime": 1755259462863, + "modifiedTime": 1755385664307, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kabueAo6BALApWqp", diff --git a/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json b/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json index 944e53aa..69b1d11d 100644 --- a/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json +++ b/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json @@ -99,6 +99,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 98, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784279, - "modifiedTime": 1755266855456, + "modifiedTime": 1755385672764, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VENwg7xEFcYObjmT", diff --git a/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json b/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json index b0c3f125..52289d7b 100644 --- a/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json +++ b/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json @@ -111,6 +111,11 @@ "img": "icons/weapons/polearms/spear-hooked-rounded.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784281, - "modifiedTime": 1755259462930, + "modifiedTime": 1755384460991, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uRtghKE9mHlII4rs", diff --git a/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json b/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json index a5ebb68c..467ce106 100644 --- a/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json +++ b/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784282, - "modifiedTime": 1755259874457, + "modifiedTime": 1755384472544, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "mK3A5FTx6k8iPU3F", diff --git a/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json b/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json index 0abf7cdb..8ac5ecdb 100644 --- a/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json +++ b/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 95, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784283, - "modifiedTime": 1755266472641, + "modifiedTime": 1755385468446, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "i2UNbRvgyoSs07M6", diff --git a/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json b/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json index c2e5c886..e2cdfbef 100644 --- a/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json +++ b/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json @@ -112,6 +112,11 @@ "img": "icons/skills/melee/strike-blade-hooked-orange-blue.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 98, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784283, - "modifiedTime": 1755259462909, + "modifiedTime": 1755385681541, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "r1mbfSSwKWdcFdAU", diff --git a/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json b/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json index af630cdd..5982e496 100644 --- a/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json +++ b/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 94, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784284, - "modifiedTime": 1755266545039, + "modifiedTime": 1755385452708, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "6hbqmxDXFOzZJDk4", diff --git a/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json b/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json index 170b55a1..d2d4fd83 100644 --- a/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json +++ b/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 94, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784285, - "modifiedTime": 1755259462679, + "modifiedTime": 1755385485548, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "MI126iMOOobQ1Obn", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json b/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json index 1c8d59c6..9affbacd 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784290, - "modifiedTime": 1755259904640, + "modifiedTime": 1755384483511, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5Lh1T0zaT8Pkr2U2", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json b/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json index 6ecc3fdd..e1314bb1 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json @@ -111,6 +111,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784291, - "modifiedTime": 1755259462688, + "modifiedTime": 1755384496776, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "MbBPIOxaxXYNApXz", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json b/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json index 0d5e2133..96f25b1c 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784292, - "modifiedTime": 1755259941370, + "modifiedTime": 1755384505324, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CBKixLH3yhivZZuL", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json b/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json index a7caeeee..fbfd0a66 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json @@ -105,6 +105,11 @@ "stress": { "max": 1 } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -114,9 +119,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784293, - "modifiedTime": 1755259961931, + "modifiedTime": 1755384512770, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "C0OMQqV7pN6t7ouR", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json b/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json index c551f836..22d89d60 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json @@ -111,6 +111,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784294, - "modifiedTime": 1755259462803, + "modifiedTime": 1755384520025, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "aTljstqteGoLpCBq", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json b/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json index d3acab90..535d1564 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784295, - "modifiedTime": 1755260040062, + "modifiedTime": 1755384529543, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "XF4tYTq9nPJAy2ox", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json b/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json index b08f3922..443edf04 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json @@ -111,6 +111,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784296, - "modifiedTime": 1755259462527, + "modifiedTime": 1755384539312, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1zuyof1XuIfi3aMG", diff --git a/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json b/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json index 51740ec5..35dfc091 100644 --- a/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json +++ b/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 88, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784297, - "modifiedTime": 1755259462684, + "modifiedTime": 1755385201114, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "MYXmTx2FHcIjdfYZ", diff --git a/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json b/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json index 86757347..3fe4bac0 100644 --- a/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json +++ b/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json @@ -122,6 +122,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 88, + "artist": "" } }, "flags": {}, @@ -131,9 +136,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784302, - "modifiedTime": 1755265352331, + "modifiedTime": 1755385208695, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "7ai2opemrclQe3VF", diff --git a/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json b/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json index d0b014eb..ff9f41d1 100644 --- a/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json +++ b/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json @@ -112,6 +112,11 @@ "img": "icons/creatures/tentacles/tentacles-octopus-black-pink.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 99, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784303, - "modifiedTime": 1755259462553, + "modifiedTime": 1755385695905, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "4nqv3ZwJGjnmic8j", diff --git a/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json b/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json index a316a402..7d16e606 100644 --- a/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json +++ b/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 88, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784304, - "modifiedTime": 1755265377045, + "modifiedTime": 1755385217678, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "niBpVU7yeo5ccskE", diff --git a/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json b/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json index 26b1374b..2b16ec95 100644 --- a/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json +++ b/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json @@ -117,6 +117,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784305, - "modifiedTime": 1755259462821, + "modifiedTime": 1755384999362, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dNta0cUzr96xcFhf", diff --git a/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json b/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json index 1f3826ca..c11a9313 100644 --- a/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json +++ b/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 79, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784305, - "modifiedTime": 1755263103972, + "modifiedTime": 1755384552277, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Al3w2CgjfdT3p9ma", diff --git a/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json b/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json index 97f6a052..5b06271d 100644 --- a/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json +++ b/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 88, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784306, - "modifiedTime": 1755265400782, + "modifiedTime": 1755385228380, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Vy02IhGhkJLuezu4", diff --git a/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json b/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json index 810359dd..9761b071 100644 --- a/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json +++ b/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json @@ -106,6 +106,11 @@ "range": "close", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 79, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784307, - "modifiedTime": 1755259462919, + "modifiedTime": 1755384563851, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "sRn4bqerfARvhgSV", diff --git a/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json b/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json index 9b4e8594..da22947a 100644 --- a/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json +++ b/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json @@ -105,6 +105,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 79, + "artist": "" } }, "flags": {}, @@ -114,9 +119,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784308, - "modifiedTime": 1755259462544, + "modifiedTime": 1755384577384, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "3tqCjDwJAQ7JKqMb", diff --git a/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json b/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json index fa4b9828..34727ef0 100644 --- a/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json +++ b/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 79, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784308, - "modifiedTime": 1755259462650, + "modifiedTime": 1755384584836, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "DscWkNVoHak6P4hh", diff --git a/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json b/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json index 8e05e6fe..fd0e6a51 100644 --- a/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json +++ b/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json @@ -99,6 +99,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784309, - "modifiedTime": 1755263168654, + "modifiedTime": 1755384597383, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "G62k4oSkhkoXEs2D", diff --git a/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json b/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json index 67cca4a4..b98e3640 100644 --- a/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json +++ b/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json @@ -106,6 +106,11 @@ "img": "icons/weapons/axes/axe-double.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 89, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784310, - "modifiedTime": 1755259462912, + "modifiedTime": 1755385247589, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rM9qCIYeWg9I0B4l", diff --git a/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json b/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json index 8e84e0ec..4f88edeb 100644 --- a/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json +++ b/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 94, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784312, - "modifiedTime": 1755266608082, + "modifiedTime": 1755385492928, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "yx0vK2yfNVZKWUUi", diff --git a/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json b/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json index fa72fea6..6681a8f2 100644 --- a/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json +++ b/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 89, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784313, - "modifiedTime": 1755259462879, + "modifiedTime": 1755385255652, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "mVV7a7KQAORoPMgZ", diff --git a/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json b/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json index f32a9894..2eade5d2 100644 --- a/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json +++ b/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json @@ -105,6 +105,11 @@ "img": "icons/skills/melee/blood-slash-foam-red.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 95, + "artist": "" } }, "flags": {}, @@ -114,9 +119,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784314, - "modifiedTime": 1755259462770, + "modifiedTime": 1755385515496, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "XK78QUfY8c8Go8Uv", diff --git a/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json b/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json index ac8f7c34..3546a587 100644 --- a/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json +++ b/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json @@ -112,6 +112,11 @@ "img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 99, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784315, - "modifiedTime": 1755259462807, + "modifiedTime": 1755385703272, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "befIqd5IYKg6eUz2", diff --git a/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json b/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json index beedfcb5..ee33d4e6 100644 --- a/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json +++ b/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json @@ -106,6 +106,11 @@ "img": "icons/creatures/tentacles/tentacle-earth-green.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 99, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784319, - "modifiedTime": 1755259462626, + "modifiedTime": 1755385710032, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "A0SeeDzwjvqOsyof", diff --git a/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json b/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json index 2c6b7623..e19fb41d 100644 --- a/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json +++ b/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 99, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784320, - "modifiedTime": 1755259462889, + "modifiedTime": 1755385717112, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ms6nuOl3NFkhPj1k", diff --git a/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json b/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json index ac0380b5..94634439 100644 --- a/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json +++ b/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json @@ -99,6 +99,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 99, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784321, - "modifiedTime": 1755266968806, + "modifiedTime": 1755385729840, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "moJhHgKqTKPS2WYS", diff --git a/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json b/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json index c6a5393b..5509e2ff 100644 --- a/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json +++ b/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json @@ -115,6 +115,11 @@ "img": "icons/commodities/biological/hand-clawed-blue.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -124,9 +129,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784322, - "modifiedTime": 1755259462653, + "modifiedTime": 1755384671972, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "EQTOAOUrkIvS2z88", diff --git a/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json b/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json index 2062fdb3..e428a33f 100644 --- a/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json +++ b/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 101, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784323, - "modifiedTime": 1755267137806, + "modifiedTime": 1755385787559, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CP6iRfHdyFWniTHY", diff --git a/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json b/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json index 673f9af5..0f7b07a2 100644 --- a/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json +++ b/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784324, - "modifiedTime": 1755263279700, + "modifiedTime": 1755384656265, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wycLpvebWdUqRhpP", diff --git a/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json b/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json index e485ffb5..343eed99 100644 --- a/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json +++ b/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784325, - "modifiedTime": 1755263303289, + "modifiedTime": 1755384693018, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "OROJbjsqagVh7ECV", diff --git a/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json b/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json index 178883bf..7dde8489 100644 --- a/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json +++ b/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784326, - "modifiedTime": 1755263339105, + "modifiedTime": 1755384706485, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5YgEajn0wa4i85kC", diff --git a/src/packs/adversaries/adversary_Pirate_Tough_mhcVkVFrzIJ18FDm.json b/src/packs/adversaries/adversary_Pirate_Tough_mhcVkVFrzIJ18FDm.json index 8a3839f5..8858ffdb 100644 --- a/src/packs/adversaries/adversary_Pirate_Tough_mhcVkVFrzIJ18FDm.json +++ b/src/packs/adversaries/adversary_Pirate_Tough_mhcVkVFrzIJ18FDm.json @@ -145,7 +145,12 @@ } } }, - "motivesAndTactics": "Plunder, raid, smash, terrorize" + "motivesAndTactics": "Plunder, raid, smash, terrorize", + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" + } }, "prototypeToken": { "name": "Pirate Tough", @@ -449,9 +454,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754089855172, - "modifiedTime": 1755259462883, + "modifiedTime": 1755384713113, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!mhcVkVFrzIJ18FDm" diff --git a/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json b/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json index f8656c9d..55dccaa4 100644 --- a/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json +++ b/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784338, - "modifiedTime": 1755263361677, + "modifiedTime": 1755384643919, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9rVlbJVrDNn1x7PS", diff --git a/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json b/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json index 3f566841..4a168cac 100644 --- a/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json +++ b/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json @@ -99,6 +99,11 @@ "stress": { "max": 1 } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784339, - "modifiedTime": 1755263398665, + "modifiedTime": 1755384730622, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gP3fWTLzSFnpA8EJ", diff --git a/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json b/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json index 0632ca05..58e52937 100644 --- a/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json +++ b/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json @@ -117,6 +117,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 89, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784339, - "modifiedTime": 1755259462657, + "modifiedTime": 1755385265369, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "EtLJiTsilPPZvLUX", diff --git a/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json b/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json index 4791237c..ffba4d54 100644 --- a/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json +++ b/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json @@ -117,6 +117,11 @@ "img": "icons/weapons/staves/staff-ornate-purple.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 89, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784341, - "modifiedTime": 1755259462915, + "modifiedTime": 1755385272304, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "sLAccjvCWfeedbpI", diff --git a/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json b/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json index 7e92085f..50bfa399 100644 --- a/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json +++ b/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json @@ -99,6 +99,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784341, - "modifiedTime": 1755263436436, + "modifiedTime": 1755384775888, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "bgreCaQ6ap2DVpCr", diff --git a/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json b/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json index b2f19954..860b659b 100644 --- a/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json +++ b/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784342, - "modifiedTime": 1755263464581, + "modifiedTime": 1755384838975, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2nXz4ilAY4xuhKLm", diff --git a/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json b/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json index 9f29fea3..d8437156 100644 --- a/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json +++ b/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784342, - "modifiedTime": 1755259462790, + "modifiedTime": 1755385288183, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YmVAkdNsyuXWTtYp", diff --git a/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json b/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json index 27592dd8..cfa42eac 100644 --- a/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json +++ b/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784344, - "modifiedTime": 1755265520298, + "modifiedTime": 1755385294725, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "BK4jwyXSRx7IOQiO", diff --git a/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json b/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json index 29ab00ba..31693f85 100644 --- a/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json +++ b/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json @@ -106,6 +106,11 @@ "img": "icons/weapons/bows/shortbow-leather.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784345, - "modifiedTime": 1755259462590, + "modifiedTime": 1755384787440, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "7X5q7a6ueeHs5oA9", diff --git a/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json b/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json index 9fccfbd6..f444fb51 100644 --- a/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json +++ b/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json @@ -99,6 +99,11 @@ "stress": { "max": 1 } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784347, - "modifiedTime": 1755264328739, + "modifiedTime": 1755384795225, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "6l1a3Fazq8BoKIcc", diff --git a/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json b/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json index 4edf1b89..4696285a 100644 --- a/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json +++ b/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784348, - "modifiedTime": 1755264339964, + "modifiedTime": 1755384814146, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Q9LaVTyXF9NF12C7", diff --git a/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json b/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json index 55ab1fb4..5d090b46 100644 --- a/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json +++ b/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784350, - "modifiedTime": 1755264406791, + "modifiedTime": 1755384823045, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "10YIQl0lvCJXZLfX", diff --git a/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json b/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json index e556640f..9a0e8aaf 100644 --- a/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json +++ b/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json @@ -112,6 +112,11 @@ "range": "far", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784351, - "modifiedTime": 1755259462572, + "modifiedTime": 1755385301617, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5tCkhnBByUIN5UdG", diff --git a/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json b/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json index c1d3db63..bd13b3e1 100644 --- a/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json +++ b/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json @@ -112,6 +112,11 @@ "range": "far", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784352, - "modifiedTime": 1755259462575, + "modifiedTime": 1755385308553, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "65cSO3EQEh6ZH6Xk", diff --git a/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json b/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json index cd4dc479..84a4a49a 100644 --- a/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json +++ b/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784353, - "modifiedTime": 1755259462734, + "modifiedTime": 1755385316790, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "UFVGl1osOsJTneLf", diff --git a/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json b/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json index da7fd6d6..80130503 100644 --- a/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json +++ b/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json @@ -113,6 +113,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -122,9 +127,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784353, - "modifiedTime": 1755264447203, + "modifiedTime": 1755384873585, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ldbWEL7uZs84vyrR", diff --git a/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json b/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json index fd4244f3..9349713e 100644 --- a/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json +++ b/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784354, - "modifiedTime": 1755265655362, + "modifiedTime": 1755385323568, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8zlynOhnVA59KpKT", diff --git a/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json b/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json index 13dc9a27..f448bdf0 100644 --- a/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json +++ b/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 94, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784355, - "modifiedTime": 1755266627287, + "modifiedTime": 1755385501283, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "KGVwnLq85ywP9xvB", diff --git a/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json b/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json index 760e1c74..e60fe4cc 100644 --- a/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json +++ b/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 91, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784355, - "modifiedTime": 1755265669682, + "modifiedTime": 1755385336971, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "3aAS2Qm3R6cgaYfE", diff --git a/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json b/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json index 0e9cfa6d..0a7697cc 100644 --- a/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json +++ b/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784356, - "modifiedTime": 1755264462044, + "modifiedTime": 1755384883461, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "qNgs3AbLyJrY19nt", diff --git a/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json b/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json index 0c869376..dc35d8b9 100644 --- a/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json +++ b/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784356, - "modifiedTime": 1755264471444, + "modifiedTime": 1755384893528, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VtFBt9XBE0WrGGxP", diff --git a/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json b/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json index f1a00b34..1a8f1087 100644 --- a/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json +++ b/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json @@ -143,6 +143,11 @@ "difficulty": null, "damageMod": "none" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -152,9 +157,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754054959791, - "modifiedTime": 1755259462711, + "modifiedTime": 1755384904068, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { diff --git a/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json b/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json index c61f84aa..6a5b19d5 100644 --- a/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json +++ b/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json @@ -139,6 +139,11 @@ "difficulty": null, "damageMod": "none" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -148,9 +153,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754055125822, - "modifiedTime": 1755259462779, + "modifiedTime": 1755384916131, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { diff --git a/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json b/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json index be94d1bd..25247c81 100644 --- a/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json +++ b/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json @@ -102,6 +102,11 @@ "stress": { "max": 1 } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -111,9 +116,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784359, - "modifiedTime": 1755264530216, + "modifiedTime": 1755384624947, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "aLkLFuVoKz2NLoBK", diff --git a/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json b/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json index 6c4849d4..07860ef4 100644 --- a/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json +++ b/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json @@ -102,6 +102,11 @@ "damageThresholds": { "major": 5, "severe": 5 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -111,9 +116,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784359, - "modifiedTime": 1755264552312, + "modifiedTime": 1755384634569, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1fkLQXVtmILqfJ44", diff --git a/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json b/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json index a5c004b5..b081ca1f 100644 --- a/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json +++ b/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json @@ -98,6 +98,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 95, + "artist": "" } }, "flags": {}, @@ -107,9 +112,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784360, - "modifiedTime": 1755259462897, + "modifiedTime": 1755385523279, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "o63nS0k3wHu6EgKP", diff --git a/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json b/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json index 803934a6..5617570b 100644 --- a/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json +++ b/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 95, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784364, - "modifiedTime": 1755266648769, + "modifiedTime": 1755385538146, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WWyUp6Mxl1S3KYUG", diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json b/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json index 068ce832..5402a6cd 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 95, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784367, - "modifiedTime": 1755259462674, + "modifiedTime": 1755385547451, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JqYraOqNmmhHk4Yy", diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json b/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json index 992bb62e..34e698e5 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 96, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784368, - "modifiedTime": 1755259462659, + "modifiedTime": 1755385569020, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "FVgYb28fhxlVcGwA", diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json b/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json index 9de89cce..b16a2f85 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json @@ -106,6 +106,11 @@ "img": "icons/commodities/tech/metal-joint.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 96, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784368, - "modifiedTime": 1755259462816, + "modifiedTime": 1755385577282, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "c5hGdvY5UnSjlHws", diff --git a/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json b/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json index 51a4cd52..9b65ed36 100644 --- a/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json +++ b/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json @@ -145,7 +145,12 @@ } } }, - "motivesAndTactics": "Choke, fly, intimidate, kill or be killed" + "motivesAndTactics": "Choke, fly, intimidate, kill or be killed", + "attribution": { + "source": "Daggerheart SRD", + "page": 101, + "artist": "" + } }, "prototypeToken": { "name": "Volcanic Dragon: Ashen Tyrant", @@ -901,9 +906,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753929252617, - "modifiedTime": 1755267105169, + "modifiedTime": 1755385779475, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!pMuXGCSOQaxpi5tb" diff --git a/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json b/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json index 56e7a0e7..8ea0f54e 100644 --- a/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json +++ b/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json @@ -145,7 +145,12 @@ } } }, - "motivesAndTactics": "Douse with lava, incinerate, repel Invaders, reposition" + "motivesAndTactics": "Douse with lava, incinerate, repel Invaders, reposition", + "attribution": { + "source": "Daggerheart SRD", + "page": 100, + "artist": "" + } }, "prototypeToken": { "name": "Volcanic Dragon: Molten Scourge", @@ -901,9 +906,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753929160832, - "modifiedTime": 1755259462833, + "modifiedTime": 1755385761296, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!eArAPuB38CNR0ZIM" diff --git a/src/packs/adversaries/adversary_Volcanic_Dragon__Obsidian_Predator_ladm7wykhZczYzrQ.json b/src/packs/adversaries/adversary_Volcanic_Dragon__Obsidian_Predator_ladm7wykhZczYzrQ.json index b546dbc0..a87a8d62 100644 --- a/src/packs/adversaries/adversary_Volcanic_Dragon__Obsidian_Predator_ladm7wykhZczYzrQ.json +++ b/src/packs/adversaries/adversary_Volcanic_Dragon__Obsidian_Predator_ladm7wykhZczYzrQ.json @@ -145,7 +145,12 @@ } } }, - "motivesAndTactics": "Defend lair, dive-bomb, fly, hunt, intimidate" + "motivesAndTactics": "Defend lair, dive-bomb, fly, hunt, intimidate", + "attribution": { + "source": "Daggerheart SRD", + "page": 100, + "artist": "" + } }, "prototypeToken": { "name": "Volcanic Dragon: Obsidian Predator", @@ -806,9 +811,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753929001531, - "modifiedTime": 1755259462866, + "modifiedTime": 1755385751958, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!ladm7wykhZczYzrQ" diff --git a/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json b/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json index 714c273e..b77c51a9 100644 --- a/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json +++ b/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json @@ -117,6 +117,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 91, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784373, - "modifiedTime": 1755259462894, + "modifiedTime": 1755385343007, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "noDdT0tsN6FXSmC8", diff --git a/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json b/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json index fef30f1b..c35018ba 100644 --- a/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json +++ b/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784373, - "modifiedTime": 1755259462796, + "modifiedTime": 1755384941263, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ZNbQ2jg35LG4t9eH", diff --git a/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json b/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json index 8c89cd72..3fa1cb51 100644 --- a/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json +++ b/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784374, - "modifiedTime": 1755264623824, + "modifiedTime": 1755384952240, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8yUj2Mzvnifhxegm", diff --git a/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json b/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json index 48b1cd14..b30f12c6 100644 --- a/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json +++ b/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 96, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784374, - "modifiedTime": 1755266725295, + "modifiedTime": 1755385585250, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "UGPiPLJsPvMTSKEF", diff --git a/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json b/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json index ce880f7d..4d63e66a 100644 --- a/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json +++ b/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json @@ -106,6 +106,11 @@ "img": "icons/creatures/tentacles/tentacles-octopus-black-pink.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 101, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784375, - "modifiedTime": 1755259462784, + "modifiedTime": 1755385797660, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YhJrP7rTBiRdX5Fp", diff --git a/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json b/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json index 6f001b5c..a2f6c836 100644 --- a/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json +++ b/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784375, - "modifiedTime": 1755264639582, + "modifiedTime": 1755384852262, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Nf0v43rtflV56V2T", diff --git a/src/packs/ancestries/ancestry_Clank_ed8BoLR4SHOpeV00.json b/src/packs/ancestries/ancestry_Clank_ed8BoLR4SHOpeV00.json index fe060a41..9f71128c 100644 --- a/src/packs/ancestries/ancestry_Clank_ed8BoLR4SHOpeV00.json +++ b/src/packs/ancestries/ancestry_Clank_ed8BoLR4SHOpeV00.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.2xlqKOkDxWHbuj4t" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784381, - "modifiedTime": 1753993914940, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394032819, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ed8BoLR4SHOpeV00", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Drakona_VLeOEqkLS0RbF0tB.json b/src/packs/ancestries/ancestry_Drakona_VLeOEqkLS0RbF0tB.json index a3861a40..0f5657b4 100644 --- a/src/packs/ancestries/ancestry_Drakona_VLeOEqkLS0RbF0tB.json +++ b/src/packs/ancestries/ancestry_Drakona_VLeOEqkLS0RbF0tB.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.sRaE3CgkgjBF1UpV" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784382, - "modifiedTime": 1753994173339, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394105939, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VLeOEqkLS0RbF0tB", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Dwarf_pDt6fI6otv2E2odf.json b/src/packs/ancestries/ancestry_Dwarf_pDt6fI6otv2E2odf.json index 8bdd2113..706dc2ec 100644 --- a/src/packs/ancestries/ancestry_Dwarf_pDt6fI6otv2E2odf.json +++ b/src/packs/ancestries/ancestry_Dwarf_pDt6fI6otv2E2odf.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.0RN0baBxh95GT1cm" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784382, - "modifiedTime": 1753994478754, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394117175, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "pDt6fI6otv2E2odf", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Elf_q2l6g3Ssa04K84GO.json b/src/packs/ancestries/ancestry_Elf_q2l6g3Ssa04K84GO.json index 84792663..3db7bee2 100644 --- a/src/packs/ancestries/ancestry_Elf_q2l6g3Ssa04K84GO.json +++ b/src/packs/ancestries/ancestry_Elf_q2l6g3Ssa04K84GO.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.TfolXWFG2W2hx6sK" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784382, - "modifiedTime": 1753994623487, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394127340, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "q2l6g3Ssa04K84GO", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Faerie_XzJVbb5NT9k79ykR.json b/src/packs/ancestries/ancestry_Faerie_XzJVbb5NT9k79ykR.json index 250444de..93b277e6 100644 --- a/src/packs/ancestries/ancestry_Faerie_XzJVbb5NT9k79ykR.json +++ b/src/packs/ancestries/ancestry_Faerie_XzJVbb5NT9k79ykR.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.WquAjoOcso8lwySW" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784383, - "modifiedTime": 1753994865178, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394136677, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "XzJVbb5NT9k79ykR", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Faun_HaYhe6WqoXW5EbRl.json b/src/packs/ancestries/ancestry_Faun_HaYhe6WqoXW5EbRl.json index 628f4a6a..5dc04976 100644 --- a/src/packs/ancestries/ancestry_Faun_HaYhe6WqoXW5EbRl.json +++ b/src/packs/ancestries/ancestry_Faun_HaYhe6WqoXW5EbRl.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.gpW19TfJk0WWFh1S" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784383, - "modifiedTime": 1753995403631, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394142374, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HaYhe6WqoXW5EbRl", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Firbolg_hzKmydI8sR3uk4CO.json b/src/packs/ancestries/ancestry_Firbolg_hzKmydI8sR3uk4CO.json index 07cc9996..2de5ee24 100644 --- a/src/packs/ancestries/ancestry_Firbolg_hzKmydI8sR3uk4CO.json +++ b/src/packs/ancestries/ancestry_Firbolg_hzKmydI8sR3uk4CO.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.G5pE8FW94V1W9jJx" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784384, - "modifiedTime": 1753995720164, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394148626, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "hzKmydI8sR3uk4CO", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Fungril_J1hX7nBBc5jQiHli.json b/src/packs/ancestries/ancestry_Fungril_J1hX7nBBc5jQiHli.json index 06146d9c..aa30fc5b 100644 --- a/src/packs/ancestries/ancestry_Fungril_J1hX7nBBc5jQiHli.json +++ b/src/packs/ancestries/ancestry_Fungril_J1hX7nBBc5jQiHli.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.WuwXH2r2uM9sDJtj" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784385, - "modifiedTime": 1753996282858, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394159775, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "J1hX7nBBc5jQiHli", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Galapa_eZNG5Iv0yfbHs5CO.json b/src/packs/ancestries/ancestry_Galapa_eZNG5Iv0yfbHs5CO.json index 5d6ca0ae..2817ecf3 100644 --- a/src/packs/ancestries/ancestry_Galapa_eZNG5Iv0yfbHs5CO.json +++ b/src/packs/ancestries/ancestry_Galapa_eZNG5Iv0yfbHs5CO.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.UFR67BUOhNGLFyg9" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784385, - "modifiedTime": 1753996656622, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394165825, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "eZNG5Iv0yfbHs5CO", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Giant_3U8CncG92a7ERIJ0.json b/src/packs/ancestries/ancestry_Giant_3U8CncG92a7ERIJ0.json index 02b3fa63..d7b6bda0 100644 --- a/src/packs/ancestries/ancestry_Giant_3U8CncG92a7ERIJ0.json +++ b/src/packs/ancestries/ancestry_Giant_3U8CncG92a7ERIJ0.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.WRs2jvwM0STmkWIW" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784386, - "modifiedTime": 1753996849286, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394174325, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "3U8CncG92a7ERIJ0", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Goblin_EKPEdIz9lA9grPqH.json b/src/packs/ancestries/ancestry_Goblin_EKPEdIz9lA9grPqH.json index 0e1fb16e..a7f92b00 100644 --- a/src/packs/ancestries/ancestry_Goblin_EKPEdIz9lA9grPqH.json +++ b/src/packs/ancestries/ancestry_Goblin_EKPEdIz9lA9grPqH.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.AXqcoxnRoWBbbKpK" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784386, - "modifiedTime": 1753997126174, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394180109, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "EKPEdIz9lA9grPqH", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Halfling_CtL2jDjvPOJxNJKm.json b/src/packs/ancestries/ancestry_Halfling_CtL2jDjvPOJxNJKm.json index ea37196d..32b640b5 100644 --- a/src/packs/ancestries/ancestry_Halfling_CtL2jDjvPOJxNJKm.json +++ b/src/packs/ancestries/ancestry_Halfling_CtL2jDjvPOJxNJKm.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.e2Cu6exxtvfQzc1e" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784387, - "modifiedTime": 1753997257661, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394186643, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CtL2jDjvPOJxNJKm", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Human_wtJ5V5qRppLQn61n.json b/src/packs/ancestries/ancestry_Human_wtJ5V5qRppLQn61n.json index 58310832..5ef479b6 100644 --- a/src/packs/ancestries/ancestry_Human_wtJ5V5qRppLQn61n.json +++ b/src/packs/ancestries/ancestry_Human_wtJ5V5qRppLQn61n.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.BNofV1UC4ZbdFTkb" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784388, - "modifiedTime": 1753997481487, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394199176, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wtJ5V5qRppLQn61n", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Infernis_hyxcuF2I0xcZSGkm.json b/src/packs/ancestries/ancestry_Infernis_hyxcuF2I0xcZSGkm.json index 67e95734..823aedf8 100644 --- a/src/packs/ancestries/ancestry_Infernis_hyxcuF2I0xcZSGkm.json +++ b/src/packs/ancestries/ancestry_Infernis_hyxcuF2I0xcZSGkm.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.i92lYjDhVB0LyPid" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784388, - "modifiedTime": 1754000194006, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394204627, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "hyxcuF2I0xcZSGkm", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Katari_yyW0UM8srD9WuwW7.json b/src/packs/ancestries/ancestry_Katari_yyW0UM8srD9WuwW7.json index f3997143..25819b34 100644 --- a/src/packs/ancestries/ancestry_Katari_yyW0UM8srD9WuwW7.json +++ b/src/packs/ancestries/ancestry_Katari_yyW0UM8srD9WuwW7.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.Zj69cAeb3NjIa8Hn" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784388, - "modifiedTime": 1754000474970, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394210762, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "yyW0UM8srD9WuwW7", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Orc_D1RbUsRV9HpTrPuF.json b/src/packs/ancestries/ancestry_Orc_D1RbUsRV9HpTrPuF.json index 0075cf94..dbbfe21b 100644 --- a/src/packs/ancestries/ancestry_Orc_D1RbUsRV9HpTrPuF.json +++ b/src/packs/ancestries/ancestry_Orc_D1RbUsRV9HpTrPuF.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.YhxD1ujZpftPu19w" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784389, - "modifiedTime": 1754000737849, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394218178, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "D1RbUsRV9HpTrPuF", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Ribbet_HwOoBKXOL9Tf5j85.json b/src/packs/ancestries/ancestry_Ribbet_HwOoBKXOL9Tf5j85.json index 5624ba77..677852f7 100644 --- a/src/packs/ancestries/ancestry_Ribbet_HwOoBKXOL9Tf5j85.json +++ b/src/packs/ancestries/ancestry_Ribbet_HwOoBKXOL9Tf5j85.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.oWbdlh51ajn1Q5kL" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784389, - "modifiedTime": 1754000881040, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394245530, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HwOoBKXOL9Tf5j85", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Simiah_2yMLxxn7CHEvmShj.json b/src/packs/ancestries/ancestry_Simiah_2yMLxxn7CHEvmShj.json index d09abcdd..647ddf20 100644 --- a/src/packs/ancestries/ancestry_Simiah_2yMLxxn7CHEvmShj.json +++ b/src/packs/ancestries/ancestry_Simiah_2yMLxxn7CHEvmShj.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.3lNqft3LmOlEIEkw" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784390, - "modifiedTime": 1754001185010, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394237166, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2yMLxxn7CHEvmShj", "sort": 3400000, diff --git a/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json b/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json index 74d0396e..854e377c 100644 --- a/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json +++ b/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753997402776, - "modifiedTime": 1753997472141, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394506059, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BNofV1UC4ZbdFTkb" } diff --git a/src/packs/ancestries/feature_Amphibious_GVhmLouGq9GWCsN8.json b/src/packs/ancestries/feature_Amphibious_GVhmLouGq9GWCsN8.json index fbc8de74..f1e07a4a 100644 --- a/src/packs/ancestries/feature_Amphibious_GVhmLouGq9GWCsN8.json +++ b/src/packs/ancestries/feature_Amphibious_GVhmLouGq9GWCsN8.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754000764274, - "modifiedTime": 1754000778312, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394576564, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GVhmLouGq9GWCsN8" } diff --git a/src/packs/ancestries/feature_Caprine_Leap_nLL2zuDDDbbyxlrQ.json b/src/packs/ancestries/feature_Caprine_Leap_nLL2zuDDDbbyxlrQ.json index db455164..98a9ee47 100644 --- a/src/packs/ancestries/feature_Caprine_Leap_nLL2zuDDDbbyxlrQ.json +++ b/src/packs/ancestries/feature_Caprine_Leap_nLL2zuDDDbbyxlrQ.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753995211408, - "modifiedTime": 1753995232467, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394383202, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nLL2zuDDDbbyxlrQ" } diff --git a/src/packs/ancestries/feature_Celestial_Trance_TfolXWFG2W2hx6sK.json b/src/packs/ancestries/feature_Celestial_Trance_TfolXWFG2W2hx6sK.json index e9a240ef..1e6323cd 100644 --- a/src/packs/ancestries/feature_Celestial_Trance_TfolXWFG2W2hx6sK.json +++ b/src/packs/ancestries/feature_Celestial_Trance_TfolXWFG2W2hx6sK.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [ { @@ -81,12 +86,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753994570602, - "modifiedTime": 1753994583518, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394338351, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TfolXWFG2W2hx6sK" } diff --git a/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json b/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json index 319086a4..291785f2 100644 --- a/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json +++ b/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json @@ -72,7 +72,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -85,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753995559143, - "modifiedTime": 1753995629206, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394400787, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!AA2CZlJSWW8GPhrR" } diff --git a/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json b/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json index e8152918..595a2a6b 100644 --- a/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json +++ b/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753997061290, - "modifiedTime": 1754498245294, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394466678, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!AXqcoxnRoWBbbKpK" } diff --git a/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json b/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json index cc2ba641..3fffc763 100644 --- a/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json +++ b/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753996213198, - "modifiedTime": 1753996272048, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394413905, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WuwXH2r2uM9sDJtj" } diff --git a/src/packs/ancestries/feature_Dread_Visage_i92lYjDhVB0LyPid.json b/src/packs/ancestries/feature_Dread_Visage_i92lYjDhVB0LyPid.json index 23adb822..d9b8b729 100644 --- a/src/packs/ancestries/feature_Dread_Visage_i92lYjDhVB0LyPid.json +++ b/src/packs/ancestries/feature_Dread_Visage_i92lYjDhVB0LyPid.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [ { @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753999985847, - "modifiedTime": 1754000026405, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394529510, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!i92lYjDhVB0LyPid" } diff --git a/src/packs/ancestries/feature_Efficient_2xlqKOkDxWHbuj4t.json b/src/packs/ancestries/feature_Efficient_2xlqKOkDxWHbuj4t.json index 5d946a88..83ed4b1f 100644 --- a/src/packs/ancestries/feature_Efficient_2xlqKOkDxWHbuj4t.json +++ b/src/packs/ancestries/feature_Efficient_2xlqKOkDxWHbuj4t.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [ { @@ -81,12 +86,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753993806761, - "modifiedTime": 1753993849345, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394264580, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2xlqKOkDxWHbuj4t" } diff --git a/src/packs/ancestries/feature_Elemental_Breath_sRaE3CgkgjBF1UpV.json b/src/packs/ancestries/feature_Elemental_Breath_sRaE3CgkgjBF1UpV.json index ccd0f87e..cb77a1bf 100644 --- a/src/packs/ancestries/feature_Elemental_Breath_sRaE3CgkgjBF1UpV.json +++ b/src/packs/ancestries/feature_Elemental_Breath_sRaE3CgkgjBF1UpV.json @@ -82,7 +82,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [], "sort": 0, @@ -95,12 +100,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753994055921, - "modifiedTime": 1753994120065, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394293348, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!sRaE3CgkgjBF1UpV" } diff --git a/src/packs/ancestries/feature_Endurance_tXWEMdLXafUSZTbK.json b/src/packs/ancestries/feature_Endurance_tXWEMdLXafUSZTbK.json index 1624957e..6766717a 100644 --- a/src/packs/ancestries/feature_Endurance_tXWEMdLXafUSZTbK.json +++ b/src/packs/ancestries/feature_Endurance_tXWEMdLXafUSZTbK.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [ { @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753996738047, - "modifiedTime": 1753996763700, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394456808, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tXWEMdLXafUSZTbK" } diff --git a/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json b/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json index bb8d790c..13cf7f84 100644 --- a/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json +++ b/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753999842518, - "modifiedTime": 1753999969945, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394522944, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!IlWvn5kCqCBMuUJn" } diff --git a/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json b/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json index c0547372..09d5dbbe 100644 --- a/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json +++ b/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754000245487, - "modifiedTime": 1754000291789, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394539445, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!lNgbbYnCKgrdvA85" } diff --git a/src/packs/ancestries/feature_Fungril_Network_9tmeXm623hl4Qnws.json b/src/packs/ancestries/feature_Fungril_Network_9tmeXm623hl4Qnws.json index 60a74cf4..92dcd32f 100644 --- a/src/packs/ancestries/feature_Fungril_Network_9tmeXm623hl4Qnws.json +++ b/src/packs/ancestries/feature_Fungril_Network_9tmeXm623hl4Qnws.json @@ -57,7 +57,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753996087513, - "modifiedTime": 1753996189704, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394420289, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9tmeXm623hl4Qnws" } diff --git a/src/packs/ancestries/feature_High_Stamina_HMXNJZ7ynzajR2KT.json b/src/packs/ancestries/feature_High_Stamina_HMXNJZ7ynzajR2KT.json index 81fd4b84..eeae4dd4 100644 --- a/src/packs/ancestries/feature_High_Stamina_HMXNJZ7ynzajR2KT.json +++ b/src/packs/ancestries/feature_High_Stamina_HMXNJZ7ynzajR2KT.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [ { @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753997324366, - "modifiedTime": 1753997344417, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394512693, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!HMXNJZ7ynzajR2KT" } diff --git a/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json b/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json index 34de2d91..8ecbfb61 100644 --- a/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json +++ b/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753994395837, - "modifiedTime": 1753994468110, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394316666, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0RN0baBxh95GT1cm" } diff --git a/src/packs/ancestries/feature_Internal_Compass_e2Cu6exxtvfQzc1e.json b/src/packs/ancestries/feature_Internal_Compass_e2Cu6exxtvfQzc1e.json index 00645109..0ebd51ff 100644 --- a/src/packs/ancestries/feature_Internal_Compass_e2Cu6exxtvfQzc1e.json +++ b/src/packs/ancestries/feature_Internal_Compass_e2Cu6exxtvfQzc1e.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753997233606, - "modifiedTime": 1753997248375, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394489091, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!e2Cu6exxtvfQzc1e" } diff --git a/src/packs/ancestries/feature_Kick_gpW19TfJk0WWFh1S.json b/src/packs/ancestries/feature_Kick_gpW19TfJk0WWFh1S.json index f9233e32..6f43dad7 100644 --- a/src/packs/ancestries/feature_Kick_gpW19TfJk0WWFh1S.json +++ b/src/packs/ancestries/feature_Kick_gpW19TfJk0WWFh1S.json @@ -63,7 +63,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -76,12 +81,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753995249173, - "modifiedTime": 1753995396728, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394376321, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!gpW19TfJk0WWFh1S" } diff --git a/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json b/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json index 4c8cfc30..d474f7ca 100644 --- a/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json +++ b/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json @@ -90,7 +90,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "effects": [], "sort": 0, @@ -103,12 +108,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754000791839, - "modifiedTime": 1754000854253, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394583397, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!oWbdlh51ajn1Q5kL" } diff --git a/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json b/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json index 51b33024..6059aa88 100644 --- a/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json +++ b/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753994658436, - "modifiedTime": 1754498186961, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394357635, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!U6iFjZgLYawlOlQZ" } diff --git a/src/packs/ancestries/feature_Luckbringer_8O6SQQMxKWr430QA.json b/src/packs/ancestries/feature_Luckbringer_8O6SQQMxKWr430QA.json index 01de5030..474c5907 100644 --- a/src/packs/ancestries/feature_Luckbringer_8O6SQQMxKWr430QA.json +++ b/src/packs/ancestries/feature_Luckbringer_8O6SQQMxKWr430QA.json @@ -78,7 +78,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -91,12 +96,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753997164653, - "modifiedTime": 1753997217376, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394482641, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!8O6SQQMxKWr430QA" } diff --git a/src/packs/ancestries/feature_Natural_Climber_soQvPL0MrTLLcc31.json b/src/packs/ancestries/feature_Natural_Climber_soQvPL0MrTLLcc31.json index 9f36411f..cfe8f9d4 100644 --- a/src/packs/ancestries/feature_Natural_Climber_soQvPL0MrTLLcc31.json +++ b/src/packs/ancestries/feature_Natural_Climber_soQvPL0MrTLLcc31.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "effects": [ { @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754001064223, - "modifiedTime": 1754001078029, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394600697, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!soQvPL0MrTLLcc31" } diff --git a/src/packs/ancestries/feature_Nimble_3lNqft3LmOlEIEkw.json b/src/packs/ancestries/feature_Nimble_3lNqft3LmOlEIEkw.json index d3539a9f..cd759ff4 100644 --- a/src/packs/ancestries/feature_Nimble_3lNqft3LmOlEIEkw.json +++ b/src/packs/ancestries/feature_Nimble_3lNqft3LmOlEIEkw.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "effects": [ { @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754001125989, - "modifiedTime": 1754001147782, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394608816, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3lNqft3LmOlEIEkw" } diff --git a/src/packs/ancestries/feature_Purposeful_Design_g6I4tRUQNgL4vZ6H.json b/src/packs/ancestries/feature_Purposeful_Design_g6I4tRUQNgL4vZ6H.json index d805e240..5a541979 100644 --- a/src/packs/ancestries/feature_Purposeful_Design_g6I4tRUQNgL4vZ6H.json +++ b/src/packs/ancestries/feature_Purposeful_Design_g6I4tRUQNgL4vZ6H.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753993755899, - "modifiedTime": 1753993791943, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394275281, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!g6I4tRUQNgL4vZ6H" } diff --git a/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json b/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json index 87c6ec96..522faf75 100644 --- a/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json +++ b/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753994522468, - "modifiedTime": 1753994554455, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394348185, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0NSPSuB8KSEYTJIP" } diff --git a/src/packs/ancestries/feature_Reach_WRs2jvwM0STmkWIW.json b/src/packs/ancestries/feature_Reach_WRs2jvwM0STmkWIW.json index b6c974d0..deac5491 100644 --- a/src/packs/ancestries/feature_Reach_WRs2jvwM0STmkWIW.json +++ b/src/packs/ancestries/feature_Reach_WRs2jvwM0STmkWIW.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753996802591, - "modifiedTime": 1753996830453, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394448890, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WRs2jvwM0STmkWIW" } diff --git a/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json b/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json index 356f9283..59e33ce4 100644 --- a/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json +++ b/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json @@ -33,7 +33,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [ { @@ -104,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753996513763, - "modifiedTime": 1753996553192, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394440308, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!UFR67BUOhNGLFyg9" } diff --git a/src/packs/ancestries/feature_Retracting_Claws_Zj69cAeb3NjIa8Hn.json b/src/packs/ancestries/feature_Retracting_Claws_Zj69cAeb3NjIa8Hn.json index 01e909bb..1987971a 100644 --- a/src/packs/ancestries/feature_Retracting_Claws_Zj69cAeb3NjIa8Hn.json +++ b/src/packs/ancestries/feature_Retracting_Claws_Zj69cAeb3NjIa8Hn.json @@ -62,7 +62,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [ { @@ -122,12 +127,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754000306620, - "modifiedTime": 1754000434953, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394546895, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Zj69cAeb3NjIa8Hn" } diff --git a/src/packs/ancestries/feature_Scales_u8ZhV962rNmUlzkp.json b/src/packs/ancestries/feature_Scales_u8ZhV962rNmUlzkp.json index 3b23d6b7..d4a61a00 100644 --- a/src/packs/ancestries/feature_Scales_u8ZhV962rNmUlzkp.json +++ b/src/packs/ancestries/feature_Scales_u8ZhV962rNmUlzkp.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [ { @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753993962796, - "modifiedTime": 1753993988373, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394286965, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!u8ZhV962rNmUlzkp" } diff --git a/src/packs/ancestries/feature_Shell_A6a87OWA3tx16g9V.json b/src/packs/ancestries/feature_Shell_A6a87OWA3tx16g9V.json index 65352d25..06c73c40 100644 --- a/src/packs/ancestries/feature_Shell_A6a87OWA3tx16g9V.json +++ b/src/packs/ancestries/feature_Shell_A6a87OWA3tx16g9V.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [ { @@ -81,12 +86,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753996421284, - "modifiedTime": 1753996433164, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394431506, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!A6a87OWA3tx16g9V" } diff --git a/src/packs/ancestries/feature_Sturdy_60o3cKUZzxO9EDQF.json b/src/packs/ancestries/feature_Sturdy_60o3cKUZzxO9EDQF.json index 61ff446d..fac77407 100644 --- a/src/packs/ancestries/feature_Sturdy_60o3cKUZzxO9EDQF.json +++ b/src/packs/ancestries/feature_Sturdy_60o3cKUZzxO9EDQF.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754000559764, - "modifiedTime": 1754000590019, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394566830, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!60o3cKUZzxO9EDQF" } diff --git a/src/packs/ancestries/feature_Surefooted_YsJticxv8OFndd4D.json b/src/packs/ancestries/feature_Surefooted_YsJticxv8OFndd4D.json index cc0fd804..a11247db 100644 --- a/src/packs/ancestries/feature_Surefooted_YsJticxv8OFndd4D.json +++ b/src/packs/ancestries/feature_Surefooted_YsJticxv8OFndd4D.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753997026520, - "modifiedTime": 1753997047297, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394473491, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!YsJticxv8OFndd4D" } diff --git a/src/packs/ancestries/feature_Thick_Skin_S0Ww7pYOSREt8qKg.json b/src/packs/ancestries/feature_Thick_Skin_S0Ww7pYOSREt8qKg.json index 6b8aa900..b2716a1c 100644 --- a/src/packs/ancestries/feature_Thick_Skin_S0Ww7pYOSREt8qKg.json +++ b/src/packs/ancestries/feature_Thick_Skin_S0Ww7pYOSREt8qKg.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [ { @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753994247261, - "modifiedTime": 1753994338239, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394307516, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!S0Ww7pYOSREt8qKg" } diff --git a/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json b/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json index 4078ca03..746be465 100644 --- a/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json +++ b/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [ { @@ -112,12 +117,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754000611682, - "modifiedTime": 1754000658375, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394557399, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!YhxD1ujZpftPu19w" } diff --git a/src/packs/ancestries/feature_Unshakeable_G5pE8FW94V1W9jJx.json b/src/packs/ancestries/feature_Unshakeable_G5pE8FW94V1W9jJx.json index 5d534a67..aa256f5b 100644 --- a/src/packs/ancestries/feature_Unshakeable_G5pE8FW94V1W9jJx.json +++ b/src/packs/ancestries/feature_Unshakeable_G5pE8FW94V1W9jJx.json @@ -57,7 +57,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753995651913, - "modifiedTime": 1753995700360, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394394521, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!G5pE8FW94V1W9jJx" } diff --git a/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json b/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json index 56ffaacc..7bc73dc6 100644 --- a/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json +++ b/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [ { @@ -106,12 +111,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753994723305, - "modifiedTime": 1753994805028, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394368487, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WquAjoOcso8lwySW" } diff --git a/src/packs/beastforms/beastform_Agile_Scout_a9UoCwtrbgKk02mK.json b/src/packs/beastforms/beastform_Agile_Scout_a9UoCwtrbgKk02mK.json index 9ce4cea5..43c4d556 100644 --- a/src/packs/beastforms/beastform_Agile_Scout_a9UoCwtrbgKk02mK.json +++ b/src/packs/beastforms/beastform_Agile_Scout_a9UoCwtrbgKk02mK.json @@ -36,7 +36,12 @@ "advantages": 2, "features": 2 }, - "examples": "Fox, Mouse, Weasel, etc." + "examples": "Fox, Mouse, Weasel, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -120,12 +125,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753570913893, - "modifiedTime": 1753575463479, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395235599, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "a9UoCwtrbgKk02mK", "sort": 500000, diff --git a/src/packs/beastforms/beastform_Aquatic_Predator_ItBVeCl2u5uetgy7.json b/src/packs/beastforms/beastform_Aquatic_Predator_ItBVeCl2u5uetgy7.json index 75c747ab..6b418b31 100644 --- a/src/packs/beastforms/beastform_Aquatic_Predator_ItBVeCl2u5uetgy7.json +++ b/src/packs/beastforms/beastform_Aquatic_Predator_ItBVeCl2u5uetgy7.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Dolphin, Orca, Shark, etc." + "examples": "Dolphin, Orca, Shark, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626985883, - "modifiedTime": 1753626995174, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395436609, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ItBVeCl2u5uetgy7", "sort": 0, diff --git a/src/packs/beastforms/beastform_Aquatic_Scout_qqzdFCxyYupWZK23.json b/src/packs/beastforms/beastform_Aquatic_Scout_qqzdFCxyYupWZK23.json index 4b5c792c..63f041d5 100644 --- a/src/packs/beastforms/beastform_Aquatic_Scout_qqzdFCxyYupWZK23.json +++ b/src/packs/beastforms/beastform_Aquatic_Scout_qqzdFCxyYupWZK23.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Eel, Fish, Octopus, etc." + "examples": "Eel, Fish, Octopus, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753575463467, - "modifiedTime": 1753575469111, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395249086, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "qqzdFCxyYupWZK23", "sort": 200000, diff --git a/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json b/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json index 553fa9e9..0d2d7c4d 100644 --- a/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json +++ b/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Armadillo, Pangolin, Turtle, etc." + "examples": "Armadillo, Pangolin, Turtle, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753580987168, - "modifiedTime": 1753617739186, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395295538, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8pUHJv3BYdjA4Qdf", "sort": 100000, diff --git a/src/packs/beastforms/beastform_Epic_Aquatic_Beast_wT4xbF99I55yjKZV.json b/src/packs/beastforms/beastform_Epic_Aquatic_Beast_wT4xbF99I55yjKZV.json index 895a3467..2666e555 100644 --- a/src/packs/beastforms/beastform_Epic_Aquatic_Beast_wT4xbF99I55yjKZV.json +++ b/src/packs/beastforms/beastform_Epic_Aquatic_Beast_wT4xbF99I55yjKZV.json @@ -38,7 +38,12 @@ "advantages": 2, "features": 2 }, - "examples": "Giant Squid, Whale, etc." + "examples": "Giant Squid, Whale, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [ { @@ -128,12 +133,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628697986, - "modifiedTime": 1753628714911, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395495481, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wT4xbF99I55yjKZV", "sort": 0, diff --git a/src/packs/beastforms/beastform_Great_Predator_afbMt4Ld6nY3mw0N.json b/src/packs/beastforms/beastform_Great_Predator_afbMt4Ld6nY3mw0N.json index e794abf2..e526cb8e 100644 --- a/src/packs/beastforms/beastform_Great_Predator_afbMt4Ld6nY3mw0N.json +++ b/src/packs/beastforms/beastform_Great_Predator_afbMt4Ld6nY3mw0N.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Dire Wolf, Velociraptor, Sabertooth Tiger, etc." + "examples": "Dire Wolf, Velociraptor, Sabertooth Tiger, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625648103, - "modifiedTime": 1753626865950, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395413225, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "afbMt4Ld6nY3mw0N", "sort": 100000, diff --git a/src/packs/beastforms/beastform_Great_Winged_Beast_b4BMnTbJ3iPPidSb.json b/src/packs/beastforms/beastform_Great_Winged_Beast_b4BMnTbJ3iPPidSb.json index 15eed972..a7a78a5d 100644 --- a/src/packs/beastforms/beastform_Great_Winged_Beast_b4BMnTbJ3iPPidSb.json +++ b/src/packs/beastforms/beastform_Great_Winged_Beast_b4BMnTbJ3iPPidSb.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Giant Eagle, Falcon, etc." + "examples": "Giant Eagle, Falcon, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626865938, - "modifiedTime": 1753626874515, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395430043, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "b4BMnTbJ3iPPidSb", "sort": 200000, diff --git a/src/packs/beastforms/beastform_Household_Friend_iDmOtiHJJ80AIAVT.json b/src/packs/beastforms/beastform_Household_Friend_iDmOtiHJJ80AIAVT.json index 57a1ecdf..7cf786f1 100644 --- a/src/packs/beastforms/beastform_Household_Friend_iDmOtiHJJ80AIAVT.json +++ b/src/packs/beastforms/beastform_Household_Friend_iDmOtiHJJ80AIAVT.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Cat, Dog, Rabbit, etc." + "examples": "Cat, Dog, Rabbit, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753573035973, - "modifiedTime": 1753575463479, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395259885, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "iDmOtiHJJ80AIAVT", "sort": 100000, diff --git a/src/packs/beastforms/beastform_Legendary_Beast_mqP6z4Wg4K3oDAom.json b/src/packs/beastforms/beastform_Legendary_Beast_mqP6z4Wg4K3oDAom.json index a73b31d2..6bbfee9e 100644 --- a/src/packs/beastforms/beastform_Legendary_Beast_mqP6z4Wg4K3oDAom.json +++ b/src/packs/beastforms/beastform_Legendary_Beast_mqP6z4Wg4K3oDAom.json @@ -23,7 +23,12 @@ "advantages": 2, "features": 2 }, - "examples": "" + "examples": "", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -95,12 +100,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753627165434, - "modifiedTime": 1753627165434, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395443346, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "mqP6z4Wg4K3oDAom", "sort": 0, diff --git a/src/packs/beastforms/beastform_Legendary_Hybrid_rRUtgcUjimlpPhnn.json b/src/packs/beastforms/beastform_Legendary_Hybrid_rRUtgcUjimlpPhnn.json index aff94138..99ca7aa0 100644 --- a/src/packs/beastforms/beastform_Legendary_Hybrid_rRUtgcUjimlpPhnn.json +++ b/src/packs/beastforms/beastform_Legendary_Hybrid_rRUtgcUjimlpPhnn.json @@ -23,7 +23,12 @@ "features": 2, "maximumTier": 2 }, - "examples": "" + "examples": "", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -113,12 +118,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753627303526, - "modifiedTime": 1753627303526, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395450377, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rRUtgcUjimlpPhnn", "sort": 0, diff --git a/src/packs/beastforms/beastform_Massive_Behemoth_qjwMzPn33aKZACkv.json b/src/packs/beastforms/beastform_Massive_Behemoth_qjwMzPn33aKZACkv.json index 470cfffe..3022d310 100644 --- a/src/packs/beastforms/beastform_Massive_Behemoth_qjwMzPn33aKZACkv.json +++ b/src/packs/beastforms/beastform_Massive_Behemoth_qjwMzPn33aKZACkv.json @@ -39,7 +39,12 @@ "advantages": 2, "features": 2 }, - "examples": "Elephant, Mammoth, Rhinoceros, etc." + "examples": "Elephant, Mammoth, Rhinoceros, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -129,12 +134,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753627711166, - "modifiedTime": 1753631381561, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395470445, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "qjwMzPn33aKZACkv", "sort": 100000, diff --git a/src/packs/beastforms/beastform_Mighty_Lizard_94tvcC3D5Kp4lzuN.json b/src/packs/beastforms/beastform_Mighty_Lizard_94tvcC3D5Kp4lzuN.json index 374fc301..63bfaa08 100644 --- a/src/packs/beastforms/beastform_Mighty_Lizard_94tvcC3D5Kp4lzuN.json +++ b/src/packs/beastforms/beastform_Mighty_Lizard_94tvcC3D5Kp4lzuN.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Alligator, Crocodile, Gila Monster, etc." + "examples": "Alligator, Crocodile, Gila Monster, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626720443, - "modifiedTime": 1753626865950, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395421310, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "94tvcC3D5Kp4lzuN", "sort": 300000, diff --git a/src/packs/beastforms/beastform_Mighty_Strider_zRLjqKx4Rn2TjivL.json b/src/packs/beastforms/beastform_Mighty_Strider_zRLjqKx4Rn2TjivL.json index e44e01e9..bc46ad18 100644 --- a/src/packs/beastforms/beastform_Mighty_Strider_zRLjqKx4Rn2TjivL.json +++ b/src/packs/beastforms/beastform_Mighty_Strider_zRLjqKx4Rn2TjivL.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Camel, Horse, Zebra, etc." + "examples": "Camel, Horse, Zebra, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753617739175, - "modifiedTime": 1753617745460, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395313904, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "zRLjqKx4Rn2TjivL", "sort": 200000, diff --git a/src/packs/beastforms/beastform_Mythic_Aerial_Hunter_jV6EuEacyQlHW4SN.json b/src/packs/beastforms/beastform_Mythic_Aerial_Hunter_jV6EuEacyQlHW4SN.json index fbd60195..87dabf23 100644 --- a/src/packs/beastforms/beastform_Mythic_Aerial_Hunter_jV6EuEacyQlHW4SN.json +++ b/src/packs/beastforms/beastform_Mythic_Aerial_Hunter_jV6EuEacyQlHW4SN.json @@ -38,7 +38,12 @@ "advantages": 2, "features": 2 }, - "examples": "Dragon, Pterodactyl, Roc, Wyvern, etc." + "examples": "Dragon, Pterodactyl, Roc, Wyvern, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [ { @@ -128,12 +133,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628382723, - "modifiedTime": 1753628401450, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395486698, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jV6EuEacyQlHW4SN", "sort": 200000, diff --git a/src/packs/beastforms/beastform_Mythic_Beast_kObobka52JdpWBSu.json b/src/packs/beastforms/beastform_Mythic_Beast_kObobka52JdpWBSu.json index d7d407a6..0032c72c 100644 --- a/src/packs/beastforms/beastform_Mythic_Beast_kObobka52JdpWBSu.json +++ b/src/packs/beastforms/beastform_Mythic_Beast_kObobka52JdpWBSu.json @@ -23,7 +23,12 @@ "advantages": 2, "features": 2 }, - "examples": "" + "examples": "", + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [ { @@ -101,12 +106,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628844905, - "modifiedTime": 1753628844905, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395505081, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kObobka52JdpWBSu", "sort": 0, diff --git a/src/packs/beastforms/beastform_Mythic_Hybrid_WAbxCf2An8qmxyJ1.json b/src/packs/beastforms/beastform_Mythic_Hybrid_WAbxCf2An8qmxyJ1.json index c0be75db..21e2a834 100644 --- a/src/packs/beastforms/beastform_Mythic_Hybrid_WAbxCf2An8qmxyJ1.json +++ b/src/packs/beastforms/beastform_Mythic_Hybrid_WAbxCf2An8qmxyJ1.json @@ -23,7 +23,12 @@ "features": 3, "maximumTier": 3 }, - "examples": "" + "examples": "", + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [ { @@ -113,12 +118,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628965658, - "modifiedTime": 1753628965658, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395511998, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WAbxCf2An8qmxyJ1", "sort": 0, diff --git a/src/packs/beastforms/beastform_Nimble_Grazer_CItO8yX6amQaqyk7.json b/src/packs/beastforms/beastform_Nimble_Grazer_CItO8yX6amQaqyk7.json index 926b8739..232721d8 100644 --- a/src/packs/beastforms/beastform_Nimble_Grazer_CItO8yX6amQaqyk7.json +++ b/src/packs/beastforms/beastform_Nimble_Grazer_CItO8yX6amQaqyk7.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Deer, Gazelle, Goat, etc." + "examples": "Deer, Gazelle, Goat, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753574930310, - "modifiedTime": 1753575463479, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395265901, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CItO8yX6amQaqyk7", "sort": 300000, diff --git a/src/packs/beastforms/beastform_Pack_Predator_YLisKYYhAGca50WM.json b/src/packs/beastforms/beastform_Pack_Predator_YLisKYYhAGca50WM.json index 38150adb..664b6c83 100644 --- a/src/packs/beastforms/beastform_Pack_Predator_YLisKYYhAGca50WM.json +++ b/src/packs/beastforms/beastform_Pack_Predator_YLisKYYhAGca50WM.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Coyote, Hyena, Wolf, etc." + "examples": "Coyote, Hyena, Wolf, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753575274807, - "modifiedTime": 1753575463479, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395272135, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YLisKYYhAGca50WM", "sort": 400000, diff --git a/src/packs/beastforms/beastform_Pouncing_Predator_33oFSZ1PwFqInHPe.json b/src/packs/beastforms/beastform_Pouncing_Predator_33oFSZ1PwFqInHPe.json index 9073bb23..fe261bf7 100644 --- a/src/packs/beastforms/beastform_Pouncing_Predator_33oFSZ1PwFqInHPe.json +++ b/src/packs/beastforms/beastform_Pouncing_Predator_33oFSZ1PwFqInHPe.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Cheetah, Lion, Panther, etc." + "examples": "Cheetah, Lion, Panther, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621789186, - "modifiedTime": 1753621803375, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395328437, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "33oFSZ1PwFqInHPe", "sort": 0, diff --git a/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json b/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json index 17d55206..082710f4 100644 --- a/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json +++ b/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Bear, Bull, Moose, etc." + "examples": "Bear, Bull, Moose, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753582598510, - "modifiedTime": 1753617739186, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395305302, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "m8BVTuJI1wCvzTcf", "sort": 300000, diff --git a/src/packs/beastforms/beastform_Stalking_Arachnid_A4TVRY0D5r9EiVwA.json b/src/packs/beastforms/beastform_Stalking_Arachnid_A4TVRY0D5r9EiVwA.json index 98a949ff..6416e019 100644 --- a/src/packs/beastforms/beastform_Stalking_Arachnid_A4TVRY0D5r9EiVwA.json +++ b/src/packs/beastforms/beastform_Stalking_Arachnid_A4TVRY0D5r9EiVwA.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Tarantula, Wolf Spider, etc." + "examples": "Tarantula, Wolf Spider, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753576016472, - "modifiedTime": 1753576046773, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395283720, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "A4TVRY0D5r9EiVwA", "sort": 0, diff --git a/src/packs/beastforms/beastform_Striking_Serpent_1XrZWGDttBAAUxR1.json b/src/packs/beastforms/beastform_Striking_Serpent_1XrZWGDttBAAUxR1.json index 3f4a5dbb..5efb5d71 100644 --- a/src/packs/beastforms/beastform_Striking_Serpent_1XrZWGDttBAAUxR1.json +++ b/src/packs/beastforms/beastform_Striking_Serpent_1XrZWGDttBAAUxR1.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Cobra, Rattlesnake, Viper, etc." + "examples": "Cobra, Rattlesnake, Viper, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621251793, - "modifiedTime": 1753621266619, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395321271, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1XrZWGDttBAAUxR1", "sort": 0, diff --git a/src/packs/beastforms/beastform_Terrible_Lizard_5BABxRe2XVrYTj8N.json b/src/packs/beastforms/beastform_Terrible_Lizard_5BABxRe2XVrYTj8N.json index 0614d763..a0025f36 100644 --- a/src/packs/beastforms/beastform_Terrible_Lizard_5BABxRe2XVrYTj8N.json +++ b/src/packs/beastforms/beastform_Terrible_Lizard_5BABxRe2XVrYTj8N.json @@ -38,7 +38,12 @@ "advantages": 2, "features": 2 }, - "examples": "Brachiosaurus, Tyrannosaurus, etc." + "examples": "Brachiosaurus, Tyrannosaurus, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -128,12 +133,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628213224, - "modifiedTime": 1753628382733, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395476212, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5BABxRe2XVrYTj8N", "sort": 300000, diff --git a/src/packs/beastforms/beastform_Winged_Beast_mZ4Wlqtss2FlNNvL.json b/src/packs/beastforms/beastform_Winged_Beast_mZ4Wlqtss2FlNNvL.json index 352b7124..207e0334 100644 --- a/src/packs/beastforms/beastform_Winged_Beast_mZ4Wlqtss2FlNNvL.json +++ b/src/packs/beastforms/beastform_Winged_Beast_mZ4Wlqtss2FlNNvL.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Hawk, Owl, Raven, etc." + "examples": "Hawk, Owl, Raven, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753624952844, - "modifiedTime": 1753624972889, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395334887, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "mZ4Wlqtss2FlNNvL", "sort": 0, diff --git a/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json b/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json index d36699a4..4c54bebb 100644 --- a/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json +++ b/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json @@ -39,7 +39,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753569752255, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395530698, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xLS5YT1B6yeCiNTg", "sort": 2700000, diff --git a/src/packs/beastforms/feature_Aquatic_kQWWx9P3fCyGSVOI.json b/src/packs/beastforms/feature_Aquatic_kQWWx9P3fCyGSVOI.json index fc8862c7..47bf2c20 100644 --- a/src/packs/beastforms/feature_Aquatic_kQWWx9P3fCyGSVOI.json +++ b/src/packs/beastforms/feature_Aquatic_kQWWx9P3fCyGSVOI.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753575456927, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395593318, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kQWWx9P3fCyGSVOI", "sort": 2100000, diff --git a/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json b/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json index 5ff9b259..b4d711a5 100644 --- a/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json +++ b/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json @@ -44,7 +44,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -142,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753580983699, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395623887, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "nDQZdIF2epKlhauX", "sort": 2200000, diff --git a/src/packs/beastforms/feature_Bird_s_Eye_View_FNKQlWQcArSorMPK.json b/src/packs/beastforms/feature_Bird_s_Eye_View_FNKQlWQcArSorMPK.json index 83fdfab1..53fe0c0b 100644 --- a/src/packs/beastforms/feature_Bird_s_Eye_View_FNKQlWQcArSorMPK.json +++ b/src/packs/beastforms/feature_Bird_s_Eye_View_FNKQlWQcArSorMPK.json @@ -31,7 +31,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753624947561, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395710291, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "FNKQlWQcArSorMPK", "sort": 1400000, diff --git a/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json b/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json index 7b714c75..49f5f88d 100644 --- a/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json +++ b/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json @@ -61,7 +61,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753580984811, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395630937, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jp5KpPRBFBOIs46Q", "sort": 1900000, diff --git a/src/packs/beastforms/feature_Carrier_EVOJTskJYf4rpuga.json b/src/packs/beastforms/feature_Carrier_EVOJTskJYf4rpuga.json index 4a0dcae2..30c82923 100644 --- a/src/packs/beastforms/feature_Carrier_EVOJTskJYf4rpuga.json +++ b/src/packs/beastforms/feature_Carrier_EVOJTskJYf4rpuga.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753617736331, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395659457, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "EVOJTskJYf4rpuga", "sort": 900000, diff --git a/src/packs/beastforms/feature_Companion_jhWSC5bNZyYUAA5Q.json b/src/packs/beastforms/feature_Companion_jhWSC5bNZyYUAA5Q.json index b54e4a05..2a5504fe 100644 --- a/src/packs/beastforms/feature_Companion_jhWSC5bNZyYUAA5Q.json +++ b/src/packs/beastforms/feature_Companion_jhWSC5bNZyYUAA5Q.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753572888764, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395556952, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jhWSC5bNZyYUAA5Q", "sort": 2600000, diff --git a/src/packs/beastforms/feature_Deadly_Raptor_QQtQ77tos8ijTHag.json b/src/packs/beastforms/feature_Deadly_Raptor_QQtQ77tos8ijTHag.json index d21facf5..e44e8fb5 100644 --- a/src/packs/beastforms/feature_Deadly_Raptor_QQtQ77tos8ijTHag.json +++ b/src/packs/beastforms/feature_Deadly_Raptor_QQtQ77tos8ijTHag.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628380597, - "modifiedTime": 1753628380597, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395796630, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "QQtQ77tos8ijTHag", "sort": 0, diff --git a/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json b/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json index 4e683d9a..45ceee81 100644 --- a/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json +++ b/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json @@ -93,7 +93,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -144,12 +149,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753627699848, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395772711, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "DfBXO8jTchwFG8dZ", "sort": 100000, diff --git a/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json b/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json index 1c792e95..9b24e84e 100644 --- a/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json +++ b/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json @@ -39,7 +39,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628206110, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395786112, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HJbQcKWcFZ9NoFxs", "sort": 200000, diff --git a/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json b/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json index 1de48d46..27b3eb9c 100644 --- a/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json +++ b/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json @@ -63,7 +63,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -76,12 +81,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753574925665, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395566717, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "a7Qvmm14nx9BCysA", "sort": 2300000, diff --git a/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json b/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json index cabc703d..554cba68 100644 --- a/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json +++ b/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json @@ -39,7 +39,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621784810, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395691006, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "GhHsSHOa509cwCvr", "sort": 1000000, diff --git a/src/packs/beastforms/feature_Fragile_QFg1hNCEoKVDd9Zo.json b/src/packs/beastforms/feature_Fragile_QFg1hNCEoKVDd9Zo.json index e22b70b4..c4a39892 100644 --- a/src/packs/beastforms/feature_Fragile_QFg1hNCEoKVDd9Zo.json +++ b/src/packs/beastforms/feature_Fragile_QFg1hNCEoKVDd9Zo.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753569754067, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395538450, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "QFg1hNCEoKVDd9Zo", "sort": 2500000, diff --git a/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json b/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json index a46fd322..95477418 100644 --- a/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json +++ b/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json @@ -44,7 +44,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -97,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753575250590, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395576634, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8u0HkK3WgtU9lWYs", "sort": 2400000, diff --git a/src/packs/beastforms/feature_Hollow_Bones_xVgmXhj2YgeqS1KK.json b/src/packs/beastforms/feature_Hollow_Bones_xVgmXhj2YgeqS1KK.json index d358b416..7dbcb48b 100644 --- a/src/packs/beastforms/feature_Hollow_Bones_xVgmXhj2YgeqS1KK.json +++ b/src/packs/beastforms/feature_Hollow_Bones_xVgmXhj2YgeqS1KK.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753624948910, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395703373, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xVgmXhj2YgeqS1KK", "sort": 1500000, diff --git a/src/packs/beastforms/feature_Massive_Stride_9QkZSeuEKgXtlpHc.json b/src/packs/beastforms/feature_Massive_Stride_9QkZSeuEKgXtlpHc.json index 17812c9d..05e95201 100644 --- a/src/packs/beastforms/feature_Massive_Stride_9QkZSeuEKgXtlpHc.json +++ b/src/packs/beastforms/feature_Massive_Stride_9QkZSeuEKgXtlpHc.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628207886, - "modifiedTime": 1753628207886, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395780645, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9QkZSeuEKgXtlpHc", "sort": 0, diff --git a/src/packs/beastforms/feature_Ocean_Master_tGDdEH40wyOCsFmH.json b/src/packs/beastforms/feature_Ocean_Master_tGDdEH40wyOCsFmH.json index 37716764..2dab5551 100644 --- a/src/packs/beastforms/feature_Ocean_Master_tGDdEH40wyOCsFmH.json +++ b/src/packs/beastforms/feature_Ocean_Master_tGDdEH40wyOCsFmH.json @@ -36,7 +36,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [ { @@ -87,12 +92,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628691739, - "modifiedTime": 1753628691739, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395806363, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tGDdEH40wyOCsFmH", "sort": 0, diff --git a/src/packs/beastforms/feature_Pack_Hunting_d3q8lfeiEMyTjusT.json b/src/packs/beastforms/feature_Pack_Hunting_d3q8lfeiEMyTjusT.json index d6e58fcb..0c66a4e0 100644 --- a/src/packs/beastforms/feature_Pack_Hunting_d3q8lfeiEMyTjusT.json +++ b/src/packs/beastforms/feature_Pack_Hunting_d3q8lfeiEMyTjusT.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753575268237, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395582868, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "d3q8lfeiEMyTjusT", "sort": 1800000, diff --git a/src/packs/beastforms/feature_Physical_Defense_StabkQ3BzWRZa8Tz.json b/src/packs/beastforms/feature_Physical_Defense_StabkQ3BzWRZa8Tz.json index effdc34f..4a86cb45 100644 --- a/src/packs/beastforms/feature_Physical_Defense_StabkQ3BzWRZa8Tz.json +++ b/src/packs/beastforms/feature_Physical_Defense_StabkQ3BzWRZa8Tz.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626716369, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395740811, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "StabkQ3BzWRZa8Tz", "sort": 500000, diff --git a/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json b/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json index 0164d236..3ac9731d 100644 --- a/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json +++ b/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json @@ -44,7 +44,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -57,12 +62,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753582591417, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395649724, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8upqfcZvi7b5hRLE", "sort": 2000000, diff --git a/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json b/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json index c22dad6e..e49f6b47 100644 --- a/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json +++ b/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json @@ -44,7 +44,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -96,12 +101,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626717512, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395734143, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Ky3rZD3sJMXYZOBC", "sort": 300000, diff --git a/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json b/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json index 13ffe145..a1a14198 100644 --- a/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json +++ b/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json @@ -89,7 +89,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -145,12 +150,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621786000, - "modifiedTime": 1753643111609, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395696040, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "0ey4kM9ssj2otHvb", "sort": 600000, diff --git a/src/packs/beastforms/feature_Thick_Hide_ZYbdXaWVj2zdcmaK.json b/src/packs/beastforms/feature_Thick_Hide_ZYbdXaWVj2zdcmaK.json index 62e74afd..ab765715 100644 --- a/src/packs/beastforms/feature_Thick_Hide_ZYbdXaWVj2zdcmaK.json +++ b/src/packs/beastforms/feature_Thick_Hide_ZYbdXaWVj2zdcmaK.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753582593100, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395643155, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ZYbdXaWVj2zdcmaK", "sort": 1100000, diff --git a/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json b/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json index 15dec8f3..b55d8f6e 100644 --- a/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json +++ b/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json @@ -93,7 +93,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -144,12 +149,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753617737349, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395668076, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "A0lgd6eVEfX6oqSB", "sort": 800000, diff --git a/src/packs/beastforms/feature_Undaunted_ODudjX88Te4vDP57.json b/src/packs/beastforms/feature_Undaunted_ODudjX88Te4vDP57.json index 5137104d..1ed1f2eb 100644 --- a/src/packs/beastforms/feature_Undaunted_ODudjX88Te4vDP57.json +++ b/src/packs/beastforms/feature_Undaunted_ODudjX88Te4vDP57.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753627700926, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395766945, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ODudjX88Te4vDP57", "sort": 400000, diff --git a/src/packs/beastforms/feature_Unyielding_vEAQ4cfsoPmOv2Gg.json b/src/packs/beastforms/feature_Unyielding_vEAQ4cfsoPmOv2Gg.json index 98fe5e15..b1aadec4 100644 --- a/src/packs/beastforms/feature_Unyielding_vEAQ4cfsoPmOv2Gg.json +++ b/src/packs/beastforms/feature_Unyielding_vEAQ4cfsoPmOv2Gg.json @@ -55,7 +55,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628692761, - "modifiedTime": 1753628692761, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395812715, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "vEAQ4cfsoPmOv2Gg", "sort": 0, diff --git a/src/packs/beastforms/feature_Venomous_Bite_2KlTnfzO03vneVS8.json b/src/packs/beastforms/feature_Venomous_Bite_2KlTnfzO03vneVS8.json index bea17311..150a4ffb 100644 --- a/src/packs/beastforms/feature_Venomous_Bite_2KlTnfzO03vneVS8.json +++ b/src/packs/beastforms/feature_Venomous_Bite_2KlTnfzO03vneVS8.json @@ -36,7 +36,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -86,12 +91,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753576004121, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395614203, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2KlTnfzO03vneVS8", "sort": 1600000, diff --git a/src/packs/beastforms/feature_Venomous_Strike_uW3853pViM9VAfHb.json b/src/packs/beastforms/feature_Venomous_Strike_uW3853pViM9VAfHb.json index 11e60f58..cd44212c 100644 --- a/src/packs/beastforms/feature_Venomous_Strike_uW3853pViM9VAfHb.json +++ b/src/packs/beastforms/feature_Venomous_Strike_uW3853pViM9VAfHb.json @@ -60,7 +60,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -109,12 +114,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621248553, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395682759, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uW3853pViM9VAfHb", "sort": 1300000, diff --git a/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json b/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json index 9c862f3e..06706094 100644 --- a/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json +++ b/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json @@ -74,7 +74,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625637943, - "modifiedTime": 1753643084893, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395725076, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jYUBi7yLHap5ljpa", "sort": 700000, diff --git a/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json b/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json index 5380f968..39b4a777 100644 --- a/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json +++ b/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json @@ -39,7 +39,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621249622, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395677589, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "cTlqpQZPy5TvdDAT", "sort": 1200000, diff --git a/src/packs/beastforms/feature_Webslinger_D73fS1iM4SZPFimu.json b/src/packs/beastforms/feature_Webslinger_D73fS1iM4SZPFimu.json index 4f6e6717..5e1295e1 100644 --- a/src/packs/beastforms/feature_Webslinger_D73fS1iM4SZPFimu.json +++ b/src/packs/beastforms/feature_Webslinger_D73fS1iM4SZPFimu.json @@ -60,7 +60,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -112,12 +117,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753576005315, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395606969, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "D73fS1iM4SZPFimu", "sort": 1700000, diff --git a/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json b/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json index 836e49b5..f0057263 100644 --- a/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json +++ b/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json @@ -58,7 +58,12 @@ "suggestedSecondaryWeapon": "Compendium.daggerheart.weapons.Item.wKklDxs5nkzILNp4", "suggestedArmor": "Compendium.daggerheart.armors.Item.yJFp1bfpecDcStVK" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "ownership": { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174600538, - "modifiedTime": 1754325498779, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755390999058, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "vegl3bFOq3pcFTWT", "sort": 300000, diff --git a/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json b/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json index 800598a6..6b7d137d 100644 --- a/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json +++ b/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json @@ -58,7 +58,12 @@ "suggestedSecondaryWeapon": "Compendium.daggerheart.weapons.Item.mxwWKDujgsRcZWPT", "suggestedArmor": "Compendium.daggerheart.armors.Item.nibfdNtp2PtxvbVz" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [], "folder": null, @@ -72,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754222247012, - "modifiedTime": 1754325498779, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391012909, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ZNwUTCyGCEcidZFv" } diff --git a/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json b/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json index 2d76ccfb..47677e4f 100644 --- a/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json +++ b/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json @@ -54,7 +54,12 @@ "suggestedSecondaryWeapon": null, "suggestedArmor": "Compendium.daggerheart.armors.Item.haULhuEg37zUUvhb" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [], "folder": null, @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754246931974, - "modifiedTime": 1754325498779, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391032291, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nRAyoC0fOzXPDa4z" } diff --git a/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json b/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json index 17fb6b2d..51a016a4 100644 --- a/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json +++ b/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json @@ -54,7 +54,12 @@ "suggestedSecondaryWeapon": null, "suggestedArmor": "Compendium.daggerheart.armors.Item.nibfdNtp2PtxvbVz" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "folder": null, @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754268869310, - "modifiedTime": 1754325517617, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391043325, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BTyfve69LKqoOi9S" } diff --git a/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json b/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json index 617ea0f0..aa40d9bf 100644 --- a/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json +++ b/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json @@ -58,7 +58,12 @@ "suggestedSecondaryWeapon": "Compendium.daggerheart.weapons.Item.wKklDxs5nkzILNp4", "suggestedArmor": "Compendium.daggerheart.armors.Item.yJFp1bfpecDcStVK" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [], "folder": null, @@ -72,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754325275832, - "modifiedTime": 1754500637635, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391064025, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CvHlkHZfpMiCz5uT" } diff --git a/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json b/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json index b88da6c2..1f020737 100644 --- a/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json +++ b/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json @@ -54,7 +54,12 @@ "suggestedSecondaryWeapon": "Compendium.daggerheart.weapons.Item.mxwWKDujgsRcZWPT", "suggestedArmor": "Compendium.daggerheart.armors.Item.haULhuEg37zUUvhb" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "folder": null, @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754351482530, - "modifiedTime": 1754355938087, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391077728, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!5ZnlJ5bEoyOTkUJv" } diff --git a/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json b/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json index 15e9bcce..2f04b0c5 100644 --- a/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json +++ b/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json @@ -62,7 +62,12 @@ "suggestedSecondaryWeapon": null, "suggestedArmor": "Compendium.daggerheart.armors.Item.yJFp1bfpecDcStVK" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "folder": null, @@ -76,12 +81,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349743129, - "modifiedTime": 1754350005553, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391092028, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!DchOzHcWIJE9FKcR" } diff --git a/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json b/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json index 230c3a70..8e0de2a2 100644 --- a/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json +++ b/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json @@ -58,7 +58,12 @@ "suggestedSecondaryWeapon": null, "suggestedArmor": "Compendium.daggerheart.armors.Item.haULhuEg37zUUvhb" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [], "folder": null, @@ -72,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754255776706, - "modifiedTime": 1754325510730, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391103528, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xCUWwJz4WSthvLfy" } diff --git a/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json b/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json index 9a5790db..c36cef8c 100644 --- a/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json +++ b/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json @@ -58,7 +58,12 @@ "suggestedSecondaryWeapon": null, "suggestedArmor": "Compendium.daggerheart.armors.Item.nibfdNtp2PtxvbVz" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "folder": null, @@ -72,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253505323, - "modifiedTime": 1754325500455, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391118180, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!5LwX4m8ziY3F1ZGC" } diff --git a/src/packs/classes/feature_Arcane_Sense_CHK32dfCTTyuxV1A.json b/src/packs/classes/feature_Arcane_Sense_CHK32dfCTTyuxV1A.json index 493a5336..6e737d42 100644 --- a/src/packs/classes/feature_Arcane_Sense_CHK32dfCTTyuxV1A.json +++ b/src/packs/classes/feature_Arcane_Sense_CHK32dfCTTyuxV1A.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349703843, - "modifiedTime": 1754349703843, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391367476, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CHK32dfCTTyuxV1A" } diff --git a/src/packs/classes/feature_Attack_Of_Opportunity_3hNVqD1c0VIw2Nj5.json b/src/packs/classes/feature_Attack_Of_Opportunity_3hNVqD1c0VIw2Nj5.json index 4fc8f904..aff9be25 100644 --- a/src/packs/classes/feature_Attack_Of_Opportunity_3hNVqD1c0VIw2Nj5.json +++ b/src/packs/classes/feature_Attack_Of_Opportunity_3hNVqD1c0VIw2Nj5.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754257407143, - "modifiedTime": 1754257470399, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391424513, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3hNVqD1c0VIw2Nj5" } diff --git a/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json b/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json index c93225e2..a0aab233 100644 --- a/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json +++ b/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json @@ -40,7 +40,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [], "sort": 200000, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754221796297, - "modifiedTime": 1754246230370, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391222871, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!P1K0jcnH2RiS6TLd" } diff --git a/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json b/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json index f01b29b1..d0b792cc 100644 --- a/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json +++ b/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json @@ -42,7 +42,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -55,12 +60,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349703843, - "modifiedTime": 1754498040342, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391373925, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!P02cbN50LIoD662z" } diff --git a/src/packs/classes/feature_Cloaked_5IT8wYa0m1EFw8Zp.json b/src/packs/classes/feature_Cloaked_5IT8wYa0m1EFw8Zp.json index d5067bf7..f14ef868 100644 --- a/src/packs/classes/feature_Cloaked_5IT8wYa0m1EFw8Zp.json +++ b/src/packs/classes/feature_Cloaked_5IT8wYa0m1EFw8Zp.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754324132841, - "modifiedTime": 1754324172617, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391307139, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!5IT8wYa0m1EFw8Zp" } diff --git a/src/packs/classes/feature_Combat_Training_eoSmuAJmgHUyULtp.json b/src/packs/classes/feature_Combat_Training_eoSmuAJmgHUyULtp.json index 83121c84..e13427d4 100644 --- a/src/packs/classes/feature_Combat_Training_eoSmuAJmgHUyULtp.json +++ b/src/packs/classes/feature_Combat_Training_eoSmuAJmgHUyULtp.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [ { @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754257489875, - "modifiedTime": 1754257512503, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391432013, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!eoSmuAJmgHUyULtp" } diff --git a/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json b/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json index ed9b87e3..8194c296 100644 --- a/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json +++ b/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json @@ -40,7 +40,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [], "sort": 100000, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754221506611, - "modifiedTime": 1754353698203, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391214500, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6rlxhrRwFaVgq9fe" } diff --git a/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json b/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json index af403628..a0b56f5f 100644 --- a/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json +++ b/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json @@ -85,7 +85,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [], "sort": 0, @@ -98,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754246687097, - "modifiedTime": 1754246740977, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391259920, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!YS1g7YdWwOaS629x" } diff --git a/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json b/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json index b99116da..f2e99b8f 100644 --- a/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json +++ b/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json @@ -40,7 +40,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "sort": 0, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754268431889, - "modifiedTime": 1754268481364, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391281371, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2Cyb9ZeuAesf5Sb3" } diff --git a/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json b/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json index 289401df..64256829 100644 --- a/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json +++ b/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json @@ -87,7 +87,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 0, @@ -100,12 +105,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754352191693, - "modifiedTime": 1754352366258, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391338608, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!lSlvSUHbOoX36q2j" } diff --git a/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json b/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json index 0b06f0f2..3d92768d 100644 --- a/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json +++ b/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json @@ -44,7 +44,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [ { @@ -102,12 +107,12 @@ "compendiumSource": "Compendium.daggerheart.classes.Item.OxmucTHHfuBSv2dn", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174534518, - "modifiedTime": 1754246214305, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391180683, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/classes/feature_Minor_Illusion_cshTYdtz9yoXYYB3.json b/src/packs/classes/feature_Minor_Illusion_cshTYdtz9yoXYYB3.json index 1bb9865b..a5103190 100644 --- a/src/packs/classes/feature_Minor_Illusion_cshTYdtz9yoXYYB3.json +++ b/src/packs/classes/feature_Minor_Illusion_cshTYdtz9yoXYYB3.json @@ -57,7 +57,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349703843, - "modifiedTime": 1754349703843, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391393430, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cshTYdtz9yoXYYB3" } diff --git a/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json b/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json index fd65ec54..b131fcdf 100644 --- a/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json +++ b/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json @@ -47,7 +47,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [ { @@ -112,12 +117,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754257270096, - "modifiedTime": 1754257373211, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391439746, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!njj2C3tMDeCHHOoh" } diff --git a/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json b/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json index 43b53093..fe59bd63 100644 --- a/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json +++ b/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json @@ -42,7 +42,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -55,12 +60,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254821288, - "modifiedTime": 1754254888546, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391455848, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!h3VE0jhcM5xHKBs4" } diff --git a/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json b/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json index 8203a246..6c8f2ee8 100644 --- a/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json +++ b/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json @@ -15,7 +15,12 @@ }, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 100000, @@ -30,10 +35,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1754352649696, - "modifiedTime": 1754845640002, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755391345473, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Xd7RYhfTxIj9aWI2" } diff --git a/src/packs/classes/feature_Prestidigitation_SG2uw8h5YuwDviCn.json b/src/packs/classes/feature_Prestidigitation_SG2uw8h5YuwDviCn.json index 3757fde2..d4846155 100644 --- a/src/packs/classes/feature_Prestidigitation_SG2uw8h5YuwDviCn.json +++ b/src/packs/classes/feature_Prestidigitation_SG2uw8h5YuwDviCn.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254907799, - "modifiedTime": 1754254926599, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391463314, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SG2uw8h5YuwDviCn" } diff --git a/src/packs/classes/feature_Rally_PydiMnNCKpd44SGS.json b/src/packs/classes/feature_Rally_PydiMnNCKpd44SGS.json index c5933ca8..f421c6ab 100644 --- a/src/packs/classes/feature_Rally_PydiMnNCKpd44SGS.json +++ b/src/packs/classes/feature_Rally_PydiMnNCKpd44SGS.json @@ -36,7 +36,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174497668, - "modifiedTime": 1754494820213, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391189267, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/classes/feature_Rally__Level_5__TVeEyqmPPiRa2r3i.json b/src/packs/classes/feature_Rally__Level_5__TVeEyqmPPiRa2r3i.json index da124244..50d8e2ab 100644 --- a/src/packs/classes/feature_Rally__Level_5__TVeEyqmPPiRa2r3i.json +++ b/src/packs/classes/feature_Rally__Level_5__TVeEyqmPPiRa2r3i.json @@ -36,7 +36,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174499893, - "modifiedTime": 1754494835723, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391195765, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json b/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json index a8b7fa77..4f798663 100644 --- a/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json +++ b/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json @@ -40,7 +40,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754268505051, - "modifiedTime": 1754268589700, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391289388, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ncLx2P8BOUtrAD38" } diff --git a/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json b/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json index b544f70a..244f46c5 100644 --- a/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json +++ b/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json @@ -45,7 +45,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -110,12 +115,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754323951411, - "modifiedTime": 1754324053728, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391319440, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hVaaPIjxoextIgSL" } diff --git a/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json b/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json index ec203e9a..eb637edd 100644 --- a/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json +++ b/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json @@ -37,7 +37,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -108,12 +113,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754324216454, - "modifiedTime": 1754324890997, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391313725, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!5QqpEwmwkPfZHpMW" } diff --git a/src/packs/classes/feature_Strange_Patterns_6YsfFjmCGuFYVhT4.json b/src/packs/classes/feature_Strange_Patterns_6YsfFjmCGuFYVhT4.json index afe896de..18e6f87e 100644 --- a/src/packs/classes/feature_Strange_Patterns_6YsfFjmCGuFYVhT4.json +++ b/src/packs/classes/feature_Strange_Patterns_6YsfFjmCGuFYVhT4.json @@ -84,7 +84,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -97,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254942995, - "modifiedTime": 1754498121727, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391470247, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6YsfFjmCGuFYVhT4" } diff --git a/src/packs/classes/feature_Unstoppable_PnD2UCgzIlwX6cY3.json b/src/packs/classes/feature_Unstoppable_PnD2UCgzIlwX6cY3.json index 5505ed44..c768b09f 100644 --- a/src/packs/classes/feature_Unstoppable_PnD2UCgzIlwX6cY3.json +++ b/src/packs/classes/feature_Unstoppable_PnD2UCgzIlwX6cY3.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754246498657, - "modifiedTime": 1754246649352, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391250586, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PnD2UCgzIlwX6cY3" } diff --git a/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json b/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json index b6994b72..08c89b32 100644 --- a/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json +++ b/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json @@ -41,7 +41,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "folder": "oNhnBt8HZ2oaSnSn", @@ -55,12 +60,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349703843, - "modifiedTime": 1754349703843, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391406960, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ieiQlD0joWSqt53D" } diff --git a/src/packs/classes/feature_Wildtouch_fqSdfUYUK9QUcVE4.json b/src/packs/classes/feature_Wildtouch_fqSdfUYUK9QUcVE4.json index efdbe7e7..19f780fd 100644 --- a/src/packs/classes/feature_Wildtouch_fqSdfUYUK9QUcVE4.json +++ b/src/packs/classes/feature_Wildtouch_fqSdfUYUK9QUcVE4.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [], "sort": 300000, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754221970100, - "modifiedTime": 1754246231149, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391229618, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!fqSdfUYUK9QUcVE4" } diff --git a/src/packs/communities/community_Highborne_DVw2mOCHB8i0XeBz.json b/src/packs/communities/community_Highborne_DVw2mOCHB8i0XeBz.json index be485d0b..58ccda51 100644 --- a/src/packs/communities/community_Highborne_DVw2mOCHB8i0XeBz.json +++ b/src/packs/communities/community_Highborne_DVw2mOCHB8i0XeBz.json @@ -7,19 +7,24 @@ "description": "

Being part of a highborne community means you’re accustomed to a life of elegance, opulence, and prestige within the upper echelons of society.

Traditionally, members of a highborne community possess incredible material wealth. While this can take a variety of forms depending on the community—including gold and other minerals, land, or controlling the means of production—this status always comes with power and influence. Highborne place great value on titles and possessions, and there is little social mobility within their ranks. Members of a highborne community often control the political and economic status of the areas in which they live due to their ability to influence people and the economy with their substantial wealth. The health and safety of the less affluent people who live in these locations often hinges on the ability of this highborne ruling class to prioritize the well-being of their subjects over profit.

\n

Highborne are often amiable, candid, conniving, enterprising, ostentatious, and unflappable.

", "features": [ "Compendium.daggerheart.communities.Item.C7NR6qRatawZusmg" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784392, - "modifiedTime": 1754010352828, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394637367, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "DVw2mOCHB8i0XeBz", "sort": 3400000, diff --git a/src/packs/communities/community_Loreborne_YsvlyqYoi8QQ8kwm.json b/src/packs/communities/community_Loreborne_YsvlyqYoi8QQ8kwm.json index 50530aff..2db69c4d 100644 --- a/src/packs/communities/community_Loreborne_YsvlyqYoi8QQ8kwm.json +++ b/src/packs/communities/community_Loreborne_YsvlyqYoi8QQ8kwm.json @@ -7,19 +7,24 @@ "description": "

Being part of a loreborne community means you’re from a society that favors strong academic or political prowess.

Loreborne communities highly value knowledge, frequently in the form of historical preservation, political advancement, scientific study, skill development, or lore and mythology compilation. Most members of these communities research in institutions built in bastions of civilization, while some eclectic few thrive in gathering information from the natural world. Some may be isolationists, operating in smaller enclaves, schools, or guilds and following their own unique ethos. Others still wield their knowledge on a larger scale, making deft political maneuvers across governmental landscapes.

\n

Loreborne are often direct, eloquent, inquisitive, patient, rhapsodic, and witty.

", "features": [ "Compendium.daggerheart.communities.Item.JBZJmywisJg5X3tH" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784392, - "modifiedTime": 1754010491764, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394793025, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YsvlyqYoi8QQ8kwm", "sort": 3400000, diff --git a/src/packs/communities/community_Orderborne_TY2TejenASXtS484.json b/src/packs/communities/community_Orderborne_TY2TejenASXtS484.json index 7817a2ea..ae6adc86 100644 --- a/src/packs/communities/community_Orderborne_TY2TejenASXtS484.json +++ b/src/packs/communities/community_Orderborne_TY2TejenASXtS484.json @@ -7,19 +7,24 @@ "description": "

Being part of an orderborne community means you’re from a collective that focuses on discipline or faith, and you uphold a set of principles that reflect your experience there.

Orderborne are frequently some of the most powerful among the surrounding communities. By aligning the members of their society around a common value or goal, such as a god, doctrine, ethos, or even a shared business or trade, the ruling bodies of these enclaves are able to mobilize larger populations with less effort. While orderborne communities take a variety of forms—some even profoundly pacifistic—perhaps the most feared are those that structure themselves around military prowess. In such a case, it’s not uncommon for orderborne to provide soldiers for hire to other cities or countries.

\n

Orderborne are often ambitious, benevolent, pensive, prudent, sardonic, and stoic.

", "features": [ "Compendium.daggerheart.communities.Item.7aXWdH3gzaYREK0X" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784393, - "modifiedTime": 1754010626874, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394802410, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "TY2TejenASXtS484", "sort": 3400000, diff --git a/src/packs/communities/community_Ridgeborne_WHLA4qrdszXQHOuo.json b/src/packs/communities/community_Ridgeborne_WHLA4qrdszXQHOuo.json index 5971d311..1b09ad82 100644 --- a/src/packs/communities/community_Ridgeborne_WHLA4qrdszXQHOuo.json +++ b/src/packs/communities/community_Ridgeborne_WHLA4qrdszXQHOuo.json @@ -7,19 +7,24 @@ "description": "

Being part of a ridgeborne community means you’ve called the rocky peaks and sharp cliffs of the mountainside home.

Those who’ve lived in the mountains often consider themselves hardier than most because they’ve thrived among the most dangerous terrain many continents have to offer. These groups are adept at adaptation, developing unique technologies and equipment to move both people and products across difficult terrain. As such, ridgeborne grow up scrambling and climbing, making them sturdy and strong-willed. Ridgeborne localities appear in a variety of forms—some cities carve out entire cliff faces, others construct castles of stone, and still more live in small homes on windblown peaks. Outside forces often struggle to attack ridgeborne groups, as the small militias and large military forces of the mountains are adept at utilizing their high-ground advantage.

\n

Ridgeborne are often bold, hardy, indomitable, loyal, reserved, and stubborn.

", "features": [ "Compendium.daggerheart.communities.Item.DYmmr5CknLtHnwuj" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784394, - "modifiedTime": 1754010655426, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394814094, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WHLA4qrdszXQHOuo", "sort": 3400000, diff --git a/src/packs/communities/community_Seaborne_o5AA5J05N7EvH1rN.json b/src/packs/communities/community_Seaborne_o5AA5J05N7EvH1rN.json index 95798e66..cd474b14 100644 --- a/src/packs/communities/community_Seaborne_o5AA5J05N7EvH1rN.json +++ b/src/packs/communities/community_Seaborne_o5AA5J05N7EvH1rN.json @@ -7,19 +7,24 @@ "description": "

Being part of a seaborne community means you lived on or near a large body of water.

Seaborne communities are built, both physically and culturally, around the specific waters they call home. Some of these groups live along the shore, constructing ports for locals and travelers alike. These harbors function as centers of commerce, tourist attractions, or even just a safe place to lay down one’s head after weeks of travel. Other seaborne live on the water in small boats or large ships, with the idea of “home” comprising a ship and its crew, rather than any one landmass. No matter their exact location, seaborne communities are closely tied to the ocean tides and the creatures who inhabit them. Seaborne learn to fish at a young age, and train from birth to hold their breath and swim in even the most tumultuous waters. Individuals from these groups are highly sought after for their sailing skills, and many become captains of vessels, whether within their own community, working for another, or even at the helm of a powerful naval operation.

\n

Seaborne are often candid, cooperative, exuberant, fierce, resolute, and weathered.

", "features": [ "Compendium.daggerheart.communities.Item.07x6Qe6qMzDw2xN4" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784395, - "modifiedTime": 1754010861330, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394819693, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "o5AA5J05N7EvH1rN", "sort": 3400000, diff --git a/src/packs/communities/community_Slyborne_rGwCPMqZtky7SE6d.json b/src/packs/communities/community_Slyborne_rGwCPMqZtky7SE6d.json index c038fe90..3d8911be 100644 --- a/src/packs/communities/community_Slyborne_rGwCPMqZtky7SE6d.json +++ b/src/packs/communities/community_Slyborne_rGwCPMqZtky7SE6d.json @@ -7,19 +7,24 @@ "description": "

Being part of a slyborne community means you come from a group that operates outside the law, including all manner of criminals, grifters, and con artists.

Being part of a slyborne community means you come from a group that operates outside the law, including all manner of criminals, grifters, and con artists. Members of slyborne communities are brought together by their disreputable goals and their clever means of achieving them. Many people in these communities have an array of unscrupulous skills: forging, thievery, smuggling, and violence. People of any social class can be slyborne, from those who have garnered vast wealth and influence to those without a coin to their name. To the outside eye, slyborne might appear to be ruffians with no loyalty, but these communities possess some of the strictest codes of honor which, when broken, can result in a terrifying end for the transgressor.

\n

Slyborne are often calculating, clever, formidable, perceptive, shrewd, and tenacious.

", "features": [ "Compendium.daggerheart.communities.Item.ZmEuBdL0JrvuA8le" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784396, - "modifiedTime": 1754011031727, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394825710, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rGwCPMqZtky7SE6d", "sort": 3400000, diff --git a/src/packs/communities/community_Underborne_eX0I1ZNMyD3nfaL1.json b/src/packs/communities/community_Underborne_eX0I1ZNMyD3nfaL1.json index 7bd276be..7a5134c6 100644 --- a/src/packs/communities/community_Underborne_eX0I1ZNMyD3nfaL1.json +++ b/src/packs/communities/community_Underborne_eX0I1ZNMyD3nfaL1.json @@ -7,19 +7,24 @@ "description": "

Being part of an underborne community means you’re from a subterranean society.

Many underborne live right beneath the cities and villages of other collectives, while some live much deeper. These communities range from small family groups in burrows to massive metropolises in caverns of stone. In many locales, underborne are recognized for their incredible boldness and skill that enable great feats of architecture and engineering. Underborne are regularly hired for their bravery, as even the least daring among them has likely encountered formidable belowground beasts, and learning to dispatch such creatures is common practice amongst these societies. Because of the dangers of their environment, many underborne communities develop unique nonverbal languages that prove equally useful on the surface.

\n

Underborne are often composed, elusive, indomitable, innovative, resourceful, and unpretentious.

", "features": [ "Compendium.daggerheart.communities.Item.aMla3xQuCHEwORGD" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784398, - "modifiedTime": 1754011085731, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394833394, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "eX0I1ZNMyD3nfaL1", "sort": 3400000, diff --git a/src/packs/communities/community_Wanderborne_82mDY2EIBfLkNwQj.json b/src/packs/communities/community_Wanderborne_82mDY2EIBfLkNwQj.json index a1b03f93..465e20e3 100644 --- a/src/packs/communities/community_Wanderborne_82mDY2EIBfLkNwQj.json +++ b/src/packs/communities/community_Wanderborne_82mDY2EIBfLkNwQj.json @@ -7,19 +7,24 @@ "description": "

Being part of a wanderborne community means you’ve lived as a nomad, forgoing a permanent home and experiencing a wide variety of cultures.

Unlike many communities that are defined by their locale, wanderborne are defined by their traveling lifestyle. Because of their frequent migration, wanderborne put less value on the accumulation of material possessions in favor of acquiring information, skills, and connections. While some wanderborne are allied by a common ethos, such as a religion or a set of political or economic values, others come together after shared tragedy, such as the loss of their home or land. No matter the reason, the dangers posed by life on the road and the choice to continue down that road together mean that wanderborne are known for their unwavering loyalty.

\n

Wanderborne are often inscrutable, magnanimous, mirthful, reliable, savvy, and unorthodox.

", "features": [ "Compendium.daggerheart.communities.Item.2RSrQouA2zEJ5Xee" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 34, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784398, - "modifiedTime": 1754011123332, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394858795, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "82mDY2EIBfLkNwQj", "sort": 3400000, diff --git a/src/packs/communities/community_Wildborne_CRJ5pzJj4FjCtIlx.json b/src/packs/communities/community_Wildborne_CRJ5pzJj4FjCtIlx.json index 73032136..922c3fc7 100644 --- a/src/packs/communities/community_Wildborne_CRJ5pzJj4FjCtIlx.json +++ b/src/packs/communities/community_Wildborne_CRJ5pzJj4FjCtIlx.json @@ -7,19 +7,24 @@ "description": "

Being part of a wildborne community means you lived deep within the forest.

Wildborne communities are defined by their dedication to the conservation of their homelands, and many have strong religious or cultural ties to the fauna they live among. This results in unique architectural and technological advancements that favor sustainability over short-term, high-yield results. It is a hallmark of wildborne societies to integrate their villages and cities with the natural environment and avoid disturbing the lives of the plants and animals. While some construct their lodgings high in the branches of trees, others establish their homes on the ground beneath the forest canopy. It’s not uncommon for wildborne to remain reclusive and hidden within their woodland homes.

\n

Wildborne are often hardy, loyal, nurturing, reclusive, sagacious, and vibrant.

", "features": [ "Compendium.daggerheart.communities.Item.TQ1AIQjndC4mYmmU" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 34, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784398, - "modifiedTime": 1754011159389, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394854412, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CRJ5pzJj4FjCtIlx", "sort": 3400000, diff --git a/src/packs/communities/feature_Dedicated_7aXWdH3gzaYREK0X.json b/src/packs/communities/feature_Dedicated_7aXWdH3gzaYREK0X.json index c93811a9..223afcf6 100644 --- a/src/packs/communities/feature_Dedicated_7aXWdH3gzaYREK0X.json +++ b/src/packs/communities/feature_Dedicated_7aXWdH3gzaYREK0X.json @@ -33,7 +33,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "effects": [], "flags": {}, @@ -41,12 +46,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394895431, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Know_the_Tide_07x6Qe6qMzDw2xN4.json b/src/packs/communities/feature_Know_the_Tide_07x6Qe6qMzDw2xN4.json index d2c1c314..e93245f6 100644 --- a/src/packs/communities/feature_Know_the_Tide_07x6Qe6qMzDw2xN4.json +++ b/src/packs/communities/feature_Know_the_Tide_07x6Qe6qMzDw2xN4.json @@ -18,7 +18,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "effects": [], "flags": {}, @@ -26,12 +31,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754498464092, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394912698, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Lightfoot_TQ1AIQjndC4mYmmU.json b/src/packs/communities/feature_Lightfoot_TQ1AIQjndC4mYmmU.json index 86d1ba97..2c9028a2 100644 --- a/src/packs/communities/feature_Lightfoot_TQ1AIQjndC4mYmmU.json +++ b/src/packs/communities/feature_Lightfoot_TQ1AIQjndC4mYmmU.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 34, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394946768, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Low_Light_Living_aMla3xQuCHEwORGD.json b/src/packs/communities/feature_Low_Light_Living_aMla3xQuCHEwORGD.json index 27dde95c..38008333 100644 --- a/src/packs/communities/feature_Low_Light_Living_aMla3xQuCHEwORGD.json +++ b/src/packs/communities/feature_Low_Light_Living_aMla3xQuCHEwORGD.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "effects": [ { @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394926216, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json b/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json index 605c9d7d..2e4c3507 100644 --- a/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json +++ b/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json @@ -41,7 +41,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 34, + "artist": "" + } }, "effects": [], "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394951501, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Privilege_C7NR6qRatawZusmg.json b/src/packs/communities/feature_Privilege_C7NR6qRatawZusmg.json index 20f015b2..a3d9912a 100644 --- a/src/packs/communities/feature_Privilege_C7NR6qRatawZusmg.json +++ b/src/packs/communities/feature_Privilege_C7NR6qRatawZusmg.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "effects": [ { @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394874830, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Scoundrel_ZmEuBdL0JrvuA8le.json b/src/packs/communities/feature_Scoundrel_ZmEuBdL0JrvuA8le.json index b5618477..1dd3db4f 100644 --- a/src/packs/communities/feature_Scoundrel_ZmEuBdL0JrvuA8le.json +++ b/src/packs/communities/feature_Scoundrel_ZmEuBdL0JrvuA8le.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "effects": [ { @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394919483, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Steady_DYmmr5CknLtHnwuj.json b/src/packs/communities/feature_Steady_DYmmr5CknLtHnwuj.json index 713f8f53..f3690651 100644 --- a/src/packs/communities/feature_Steady_DYmmr5CknLtHnwuj.json +++ b/src/packs/communities/feature_Steady_DYmmr5CknLtHnwuj.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "effects": [ { @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394904715, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Well_Read_JBZJmywisJg5X3tH.json b/src/packs/communities/feature_Well_Read_JBZJmywisJg5X3tH.json index 7fd9e397..7ef972a2 100644 --- a/src/packs/communities/feature_Well_Read_JBZJmywisJg5X3tH.json +++ b/src/packs/communities/feature_Well_Read_JBZJmywisJg5X3tH.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394887664, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/domains/domainCard_A_Soldier_s_Bond_Y08dLFuPXsgeRrHi.json b/src/packs/domains/domainCard_A_Soldier_s_Bond_Y08dLFuPXsgeRrHi.json index 2177b496..f84e8113 100644 --- a/src/packs/domains/domainCard_A_Soldier_s_Bond_Y08dLFuPXsgeRrHi.json +++ b/src/packs/domains/domainCard_A_Soldier_s_Bond_Y08dLFuPXsgeRrHi.json @@ -78,6 +78,11 @@ "img": "icons/magic/light/beam-rays-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -85,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784407, - "modifiedTime": 1754304308103, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428101583, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Y08dLFuPXsgeRrHi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json b/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json index 142f6f42..e816526d 100644 --- a/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json +++ b/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json @@ -42,6 +42,11 @@ "img": "icons/magic/fire/flame-burning-hand-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784408, - "modifiedTime": 1754254353257, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428058189, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Zp2S2EnLS5Iv3XuT", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json b/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json index 64c03215..1f7f2aad 100644 --- a/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json +++ b/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json @@ -49,6 +49,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -56,12 +61,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784408, - "modifiedTime": 1754253919218, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428012661, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5PvMQKCjrgSxzstn", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json b/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json index 1bf40321..2a6789be 100644 --- a/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json +++ b/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json @@ -66,6 +66,11 @@ "img": "icons/magic/defensive/barrier-shield-dome-deflect-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -73,12 +78,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784409, - "modifiedTime": 1754254134197, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428031621, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JzSvxy9Mu3RJp1jV", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Armorer_cy8GjBPGc9w9RaGO.json b/src/packs/domains/domainCard_Armorer_cy8GjBPGc9w9RaGO.json index cc33310b..bb14ed8b 100644 --- a/src/packs/domains/domainCard_Armorer_cy8GjBPGc9w9RaGO.json +++ b/src/packs/domains/domainCard_Armorer_cy8GjBPGc9w9RaGO.json @@ -77,6 +77,11 @@ "img": "icons/tools/hand/hammer-and-nail.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -84,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784409, - "modifiedTime": 1754241866049, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429881876, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "cy8GjBPGc9w9RaGO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json b/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json index a82eb0e7..1927078e 100644 --- a/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json +++ b/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json @@ -40,6 +40,11 @@ "img": "icons/magic/perception/orb-crystal-ball-scrying.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -47,12 +52,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784409, - "modifiedTime": 1754342271751, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429240862, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YNOCNmZ96sCp9NEr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Banish_AIbHfryMA2Rvs1ut.json b/src/packs/domains/domainCard_Banish_AIbHfryMA2Rvs1ut.json index 403a8286..ce7669d5 100644 --- a/src/packs/domains/domainCard_Banish_AIbHfryMA2Rvs1ut.json +++ b/src/packs/domains/domainCard_Banish_AIbHfryMA2Rvs1ut.json @@ -63,6 +63,11 @@ "max": "1", "icon": "fa-solid fa-hand-sparkles", "recovery": "shortRest" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784411, - "modifiedTime": 1754240991601, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429055116, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "AIbHfryMA2Rvs1ut", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Bare_Bones_l5D9kq901JDESaXw.json b/src/packs/domains/domainCard_Bare_Bones_l5D9kq901JDESaXw.json index 181e994a..0509faff 100644 --- a/src/packs/domains/domainCard_Bare_Bones_l5D9kq901JDESaXw.json +++ b/src/packs/domains/domainCard_Bare_Bones_l5D9kq901JDESaXw.json @@ -11,19 +11,24 @@ "type": "ability", "resource": null, "actions": {}, - "inVault": false + "inVault": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754067006722, - "modifiedTime": 1754337008196, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429823165, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "effects": [], "ownership": { diff --git a/src/packs/domains/domainCard_Battle_Cry_Ef1JsUG50LIoKx2F.json b/src/packs/domains/domainCard_Battle_Cry_Ef1JsUG50LIoKx2F.json index e3c74f7e..be928940 100644 --- a/src/packs/domains/domainCard_Battle_Cry_Ef1JsUG50LIoKx2F.json +++ b/src/packs/domains/domainCard_Battle_Cry_Ef1JsUG50LIoKx2F.json @@ -108,6 +108,11 @@ "img": "icons/magic/control/buff-flight-wings-runes-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -115,12 +120,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784413, - "modifiedTime": 1754304622040, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428179279, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Ef1JsUG50LIoKx2F", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Battle_Hardened_NeEOghgfyDUBTwBG.json b/src/packs/domains/domainCard_Battle_Hardened_NeEOghgfyDUBTwBG.json index ccd46389..3b804ddf 100644 --- a/src/packs/domains/domainCard_Battle_Hardened_NeEOghgfyDUBTwBG.json +++ b/src/packs/domains/domainCard_Battle_Hardened_NeEOghgfyDUBTwBG.json @@ -78,6 +78,11 @@ "img": "icons/magic/life/heart-cross-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -85,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784415, - "modifiedTime": 1754304541810, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428149693, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "NeEOghgfyDUBTwBG", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json b/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json index 50cabbea..7c2f5e54 100644 --- a/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json +++ b/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json @@ -42,6 +42,11 @@ "img": "icons/magic/control/silhouette-aura-energy.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784414, - "modifiedTime": 1754304799641, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428207522, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "P0ezScyQ5t8ruByf", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Blade_Touched_Gb5bqpFSBiuBxUix.json b/src/packs/domains/domainCard_Blade_Touched_Gb5bqpFSBiuBxUix.json index 82a13070..f451d5cf 100644 --- a/src/packs/domains/domainCard_Blade_Touched_Gb5bqpFSBiuBxUix.json +++ b/src/packs/domains/domainCard_Blade_Touched_Gb5bqpFSBiuBxUix.json @@ -8,19 +8,24 @@ "domain": "blade", "recallCost": 1, "level": 7, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784416, - "modifiedTime": 1754304595818, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428164790, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Gb5bqpFSBiuBxUix", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json b/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json index 67fe9335..d211ab8f 100644 --- a/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json +++ b/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json @@ -66,6 +66,11 @@ "img": "icons/magic/symbols/runes-star-orange-purple.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -73,12 +78,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784416, - "modifiedTime": 1754253600839, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427965888, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Qu0iA4s3Xov10Erd", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Body_Basher_aQz8jKkCd8M9aKMA.json b/src/packs/domains/domainCard_Body_Basher_aQz8jKkCd8M9aKMA.json index 763a4fe0..8e3ffa06 100644 --- a/src/packs/domains/domainCard_Body_Basher_aQz8jKkCd8M9aKMA.json +++ b/src/packs/domains/domainCard_Body_Basher_aQz8jKkCd8M9aKMA.json @@ -11,19 +11,24 @@ "type": "ability", "resource": null, "actions": {}, - "inVault": false + "inVault": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754067167343, - "modifiedTime": 1754241470721, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429841164, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "effects": [ { diff --git a/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json b/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json index 9c767f34..164ffb48 100644 --- a/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json +++ b/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json @@ -67,6 +67,11 @@ "img": "icons/skills/wounds/blood-cells-disease-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784418, - "modifiedTime": 1754241531537, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429846358, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tdsL00yTSLNgZWs6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json b/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json index aa4552c5..89fac249 100644 --- a/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json +++ b/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json @@ -96,6 +96,11 @@ "img": "icons/magic/light/beam-horizon-strike-yellow.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -103,12 +108,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784418, - "modifiedTime": 1754269150878, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429657284, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "BNevJyGk7hmN7XOY", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json b/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json index 5932c284..d398e708 100644 --- a/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json +++ b/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json @@ -42,6 +42,11 @@ "img": "icons/magic/holy/barrier-shield-winged-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784419, - "modifiedTime": 1754252494658, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428331915, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ON5bvnoQBy0SYc9Y", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json b/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json index 2c18114e..3fa7e50c 100644 --- a/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json +++ b/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json @@ -237,6 +237,11 @@ "img": "icons/magic/water/projectile-icecicle.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -244,12 +249,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784419, - "modifiedTime": 1754228833533, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428973862, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YtZzYBtR0yLPPA93", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json b/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json index a3808a31..1073b715 100644 --- a/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json +++ b/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json @@ -160,6 +160,11 @@ "img": "icons/creatures/magical/construct-golem-stone-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -167,12 +172,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784420, - "modifiedTime": 1754240355163, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429022342, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "oVs2MSC6Uf5GbgEG", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json b/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json index 4b04f076..c7f334db 100644 --- a/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json +++ b/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json @@ -136,6 +136,11 @@ "img": "icons/magic/fire/barrier-wall-flame-ring-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784420, - "modifiedTime": 1754240392592, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429032715, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "R0LNheiZycZlZzV3", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Homet_gFMx08ogQ8hS2Obi.json b/src/packs/domains/domainCard_Book_of_Homet_gFMx08ogQ8hS2Obi.json index 6869c1f0..94ff8ca7 100644 --- a/src/packs/domains/domainCard_Book_of_Homet_gFMx08ogQ8hS2Obi.json +++ b/src/packs/domains/domainCard_Book_of_Homet_gFMx08ogQ8hS2Obi.json @@ -105,19 +105,24 @@ "range": "" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784421, - "modifiedTime": 1754240751151, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429070054, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gFMx08ogQ8hS2Obi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json b/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json index 91943faf..35bfe6b9 100644 --- a/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json +++ b/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json @@ -155,6 +155,11 @@ "img": "icons/magic/perception/third-eye-blue-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -162,12 +167,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784421, - "modifiedTime": 1754228842497, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428980637, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "df4iRqQzRntrF6Qw", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json b/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json index d3fdb94f..be949650 100644 --- a/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json +++ b/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json @@ -171,6 +171,11 @@ "img": "icons/magic/symbols/runes-star-pentagon-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -178,12 +183,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784423, - "modifiedTime": 1754230131429, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429006130, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "cWRFHJdxEZ0M1dAg", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Norai_WtwSWXTRZa7QVvmo.json b/src/packs/domains/domainCard_Book_of_Norai_WtwSWXTRZa7QVvmo.json index 70d1fc79..4db3e78f 100644 --- a/src/packs/domains/domainCard_Book_of_Norai_WtwSWXTRZa7QVvmo.json +++ b/src/packs/domains/domainCard_Book_of_Norai_WtwSWXTRZa7QVvmo.json @@ -160,6 +160,11 @@ "img": "icons/magic/fire/explosion-fireball-large-red-orange.webp", "range": "veryFar" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -167,12 +172,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784423, - "modifiedTime": 1754231026933, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429011603, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WtwSWXTRZa7QVvmo", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json b/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json index 7c0ecab0..b6f8bfcc 100644 --- a/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json +++ b/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json @@ -112,6 +112,11 @@ "img": "icons/magic/unholy/hand-light-green.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784424, - "modifiedTime": 1754233533128, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429102985, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "SZMNR3uGNinJcN4N", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json b/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json index 594c34e1..4ee7c45c 100644 --- a/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json +++ b/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json @@ -118,6 +118,11 @@ "img": "icons/magic/control/silhouette-hold-change-green.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784424, - "modifiedTime": 1754229292338, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428993189, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "eq8VNqYMRHhF9xw9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Tyfar_1VXzwRbvbBj5bd5V.json b/src/packs/domains/domainCard_Book_of_Tyfar_1VXzwRbvbBj5bd5V.json index ed29fd87..e974f58a 100644 --- a/src/packs/domains/domainCard_Book_of_Tyfar_1VXzwRbvbBj5bd5V.json +++ b/src/packs/domains/domainCard_Book_of_Tyfar_1VXzwRbvbBj5bd5V.json @@ -176,6 +176,11 @@ "img": "icons/magic/air/fog-gas-smoke-dense-gray.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -183,12 +188,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784426, - "modifiedTime": 1754241041570, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428986804, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1VXzwRbvbBj5bd5V", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json b/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json index a54f4c5f..28e768a2 100644 --- a/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json +++ b/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json @@ -158,6 +158,11 @@ "img": "icons/magic/perception/orb-crystal-ball-scrying-blue.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -165,12 +170,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784427, - "modifiedTime": 1754240299795, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428999015, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "aknDDYtN7EObv94t", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json b/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json index e9c8dacf..b001346c 100644 --- a/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json +++ b/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json @@ -91,6 +91,11 @@ "img": "icons/magic/control/energy-stream-link-large-teal.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -98,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784427, - "modifiedTime": 1754233138291, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429085107, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VOIgm2j2Ijszwc5m", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json b/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json index 4e1cdaf6..8cef1c1e 100644 --- a/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json +++ b/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json @@ -91,6 +91,11 @@ "img": "icons/magic/defensive/barrier-shield-dome-deflect-teal.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -98,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784429, - "modifiedTime": 1754234029921, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429115570, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "J1ovx2FpNDvPq1o6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json b/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json index d6438669..ebc99d4e 100644 --- a/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json +++ b/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json @@ -42,6 +42,11 @@ "img": "icons/skills/movement/arrow-upward-yellow.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784430, - "modifiedTime": 1754252472924, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428287690, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VKAHS6eWz28ukcDs", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Brace_QXs4vssSqNGQu5b8.json b/src/packs/domains/domainCard_Brace_QXs4vssSqNGQu5b8.json index 4ac9fc40..c477f555 100644 --- a/src/packs/domains/domainCard_Brace_QXs4vssSqNGQu5b8.json +++ b/src/packs/domains/domainCard_Brace_QXs4vssSqNGQu5b8.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 3, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784431, - "modifiedTime": 1754249663994, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428272090, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "QXs4vssSqNGQu5b8", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json b/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json index 8f440bd9..567d7d57 100644 --- a/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json +++ b/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json @@ -47,6 +47,11 @@ "img": "icons/skills/wounds/bone-broken-knee-beam.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784431, - "modifiedTime": 1754252500559, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428345979, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8UANBgSdhMZ0sqfO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json b/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json index 84704d27..5c1132f9 100644 --- a/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json +++ b/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json @@ -147,6 +147,11 @@ "img": "icons/magic/lightning/bolt-forked-large-magenta.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -154,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784433, - "modifiedTime": 1754253714828, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427978632, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "0kAVO6rordCfZqYP", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json b/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json index f0ffe8f8..80176175 100644 --- a/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json +++ b/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json @@ -228,6 +228,11 @@ "img": "icons/skills/melee/strike-axe-blood-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -235,12 +240,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784433, - "modifiedTime": 1754304490701, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428137797, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rnejRbUQsNGX1GMC", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json b/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json index f68ba80c..1785da8e 100644 --- a/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json +++ b/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json @@ -79,6 +79,11 @@ "img": "icons/magic/control/debuff-chains-shackle-movement-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -86,12 +91,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784434, - "modifiedTime": 1754173330136, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429320800, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "R5GYUalYXLLFRlNl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Cinder_Grasp_5EP2Lgf7ojfrc0Is.json b/src/packs/domains/domainCard_Cinder_Grasp_5EP2Lgf7ojfrc0Is.json index ce88eb60..410bb313 100644 --- a/src/packs/domains/domainCard_Cinder_Grasp_5EP2Lgf7ojfrc0Is.json +++ b/src/packs/domains/domainCard_Cinder_Grasp_5EP2Lgf7ojfrc0Is.json @@ -143,6 +143,11 @@ "img": "icons/magic/fire/flame-burning-earth-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -150,12 +155,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784434, - "modifiedTime": 1754475145346, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755427937789, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5EP2Lgf7ojfrc0Is", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json b/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json index 6b5f9ee9..f19833c5 100644 --- a/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json +++ b/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json @@ -47,6 +47,11 @@ "img": "icons/magic/perception/shadow-stealth-eyes-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784435, - "modifiedTime": 1754254076729, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428020354, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Zhw7PtK8nMPlsOqD", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json b/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json index 2e3caa80..69c40e15 100644 --- a/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json +++ b/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json @@ -67,6 +67,11 @@ "img": "icons/magic/symbols/star-inverted-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784435, - "modifiedTime": 1754232995094, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429075701, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "7Pu83ABdMukTxu3e", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json b/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json index ee91b2fc..b4f0d1b5 100644 --- a/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json +++ b/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json @@ -117,6 +117,11 @@ "resource": { "type": "simple", "value": 0 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -124,12 +129,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784437, - "modifiedTime": 1754501480068, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428037022, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "R8NDiJXJWmC48WSr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json b/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json index 87226a85..9d243ade 100644 --- a/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json +++ b/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json @@ -181,6 +181,11 @@ "img": "icons/creatures/invertebrates/wasp-swarm-movement.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -188,12 +193,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784438, - "modifiedTime": 1754338003443, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429481288, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rZPH0BY8Sznc9sFG", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json b/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json index 6c23ae92..a4361133 100644 --- a/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json +++ b/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json @@ -45,6 +45,11 @@ "img": "icons/creatures/mammals/deer-movement-leap-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784438, - "modifiedTime": 1754339195316, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429572061, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Jkp6cMDiHHaBZQRS", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Copycat_3A7LZ1xmDEMGa165.json b/src/packs/domains/domainCard_Copycat_3A7LZ1xmDEMGa165.json index 6e9762c6..2785ecaa 100644 --- a/src/packs/domains/domainCard_Copycat_3A7LZ1xmDEMGa165.json +++ b/src/packs/domains/domainCard_Copycat_3A7LZ1xmDEMGa165.json @@ -34,6 +34,11 @@ "img": "icons/magic/perception/hand-eye-black.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -41,12 +46,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784439, - "modifiedTime": 1754499898585, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429253976, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "3A7LZ1xmDEMGa165", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json b/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json index e5e4532f..ef1cd258 100644 --- a/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json +++ b/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json @@ -116,6 +116,11 @@ "img": "icons/magic/acid/dissolve-bone-white.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -123,12 +128,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784439, - "modifiedTime": 1754338276907, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429496161, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "qJaSNTuDfbPVr8Lb", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Counterspell_6dhqo1kzGxejCjHa.json b/src/packs/domains/domainCard_Counterspell_6dhqo1kzGxejCjHa.json index 63ed214d..511e4f14 100644 --- a/src/packs/domains/domainCard_Counterspell_6dhqo1kzGxejCjHa.json +++ b/src/packs/domains/domainCard_Counterspell_6dhqo1kzGxejCjHa.json @@ -57,6 +57,11 @@ "img": "icons/magic/control/hypnosis-mesmerism-watch.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784440, - "modifiedTime": 1754253523353, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427950892, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "6dhqo1kzGxejCjHa", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Critical_Inspiration_ABp9pUfBS69NomTD.json b/src/packs/domains/domainCard_Critical_Inspiration_ABp9pUfBS69NomTD.json index ba3c5685..747eb272 100644 --- a/src/packs/domains/domainCard_Critical_Inspiration_ABp9pUfBS69NomTD.json +++ b/src/packs/domains/domainCard_Critical_Inspiration_ABp9pUfBS69NomTD.json @@ -51,6 +51,11 @@ "img": "icons/magic/light/hand-sparks-glow-yellow.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -58,12 +63,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784441, - "modifiedTime": 1754241711823, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429855659, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ABp9pUfBS69NomTD", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Cruel_Precision_bap1eCWryPNowbyo.json b/src/packs/domains/domainCard_Cruel_Precision_bap1eCWryPNowbyo.json index 8b142a56..352e1941 100644 --- a/src/packs/domains/domainCard_Cruel_Precision_bap1eCWryPNowbyo.json +++ b/src/packs/domains/domainCard_Cruel_Precision_bap1eCWryPNowbyo.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 7, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784442, - "modifiedTime": 1754252496659, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428338581, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "bap1eCWryPNowbyo", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json b/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json index 2e680a1a..b92f15cd 100644 --- a/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json +++ b/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json @@ -64,6 +64,11 @@ "img": "icons/magic/control/mouth-smile-deception-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -71,12 +76,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784442, - "modifiedTime": 1754331078647, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429363025, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "yL2qrSWmTwXVOySH", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json b/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json index 62b40269..df82f1aa 100644 --- a/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json +++ b/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json @@ -38,6 +38,11 @@ "img": "icons/skills/targeting/crosshair-pointed-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -45,12 +50,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784443, - "modifiedTime": 1754304260916, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428127375, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xxZOXC4tiZQ6kg1e", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Death_Grip_x0FVGE1YbfXalJiw.json b/src/packs/domains/domainCard_Death_Grip_x0FVGE1YbfXalJiw.json index 4341f03f..437100da 100644 --- a/src/packs/domains/domainCard_Death_Grip_x0FVGE1YbfXalJiw.json +++ b/src/packs/domains/domainCard_Death_Grip_x0FVGE1YbfXalJiw.json @@ -216,6 +216,11 @@ "img": "icons/magic/nature/root-vine-beanstalk-moon.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -223,12 +228,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784444, - "modifiedTime": 1754338651654, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429513441, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "x0FVGE1YbfXalJiw", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json b/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json index 4d415f76..a4e50ac7 100644 --- a/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json +++ b/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json @@ -42,6 +42,11 @@ "img": "icons/magic/movement/trail-streak-zigzag-yellow.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784445, - "modifiedTime": 1754252515126, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428374555, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xFOSn8IVVNizgHFq", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json b/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json index 0ac724a6..c55fc136 100644 --- a/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json +++ b/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json @@ -45,6 +45,11 @@ "img": "icons/magic/life/heart-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784445, - "modifiedTime": 1754340779197, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429137161, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "38znCh6kHTkaPwYi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json b/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json index bdf4cbd0..1880da2e 100644 --- a/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json +++ b/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json @@ -47,6 +47,11 @@ "img": "icons/skills/movement/arrow-upward-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784446, - "modifiedTime": 1754249648390, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428242266, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dc4rAXlv95srZUct", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Disintegration_Wave_kja5qvh4rdeDBB96.json b/src/packs/domains/domainCard_Disintegration_Wave_kja5qvh4rdeDBB96.json index cf5c2cc0..1f229fca 100644 --- a/src/packs/domains/domainCard_Disintegration_Wave_kja5qvh4rdeDBB96.json +++ b/src/packs/domains/domainCard_Disintegration_Wave_kja5qvh4rdeDBB96.json @@ -58,19 +58,24 @@ "range": "far" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784447, - "modifiedTime": 1754240832214, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429109019, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kja5qvh4rdeDBB96", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json b/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json index 0c7e5530..5c97f2dc 100644 --- a/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json +++ b/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json @@ -42,6 +42,11 @@ "img": "icons/skills/trades/academics-astronomy-navigation-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784448, - "modifiedTime": 1754269593038, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429706201, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "K8oFepK24UVsAX8B", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json b/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json index 6b8cc8b1..83ebfad4 100644 --- a/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json +++ b/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json @@ -99,19 +99,24 @@ "range": "veryFar" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784449, - "modifiedTime": 1754501560924, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428045130, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "C0qLOwSSvZ6PG3Ws", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Eclipse_62Sj67PdPFzwWVe3.json b/src/packs/domains/domainCard_Eclipse_62Sj67PdPFzwWVe3.json index 855d336e..d51c23cd 100644 --- a/src/packs/domains/domainCard_Eclipse_62Sj67PdPFzwWVe3.json +++ b/src/packs/domains/domainCard_Eclipse_62Sj67PdPFzwWVe3.json @@ -114,6 +114,11 @@ "img": "icons/skills/wounds/anatomy-organ-brain-pink-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -121,12 +126,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784449, - "modifiedTime": 1754331279468, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429426240, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "62Sj67PdPFzwWVe3", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Encore_klahWDFwihqqEhXP.json b/src/packs/domains/domainCard_Encore_klahWDFwihqqEhXP.json index 43b6cf22..ef4eb1ad 100644 --- a/src/packs/domains/domainCard_Encore_klahWDFwihqqEhXP.json +++ b/src/packs/domains/domainCard_Encore_klahWDFwihqqEhXP.json @@ -56,6 +56,11 @@ "img": "icons/magic/light/explosion-impact-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -63,12 +68,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784450, - "modifiedTime": 1754342166865, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429267094, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "klahWDFwihqqEhXP", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json b/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json index a226b952..6c11b1b2 100644 --- a/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json +++ b/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json @@ -40,6 +40,11 @@ "img": "icons/sundries/gaming/dice-runed-tan.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -47,12 +52,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784450, - "modifiedTime": 1754341790725, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429228458, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tNzFNlVHghloKsFi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json b/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json index fc87d922..5aca5a59 100644 --- a/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json +++ b/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json @@ -121,6 +121,11 @@ "img": "icons/commodities/gems/gem-faceted-navette-red.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -128,12 +133,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784451, - "modifiedTime": 1754500747453, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429143444, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "a8lFiKX1o8T924ze", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json b/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json index fd032d37..60018023 100644 --- a/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json +++ b/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json @@ -92,6 +92,11 @@ "img": "icons/magic/light/projectiles-star-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -99,12 +104,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784452, - "modifiedTime": 1754501517016, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428063874, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "hZJp9mdkMnqKDROe", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Fane_of_the_Wilds_F2m9wvZ3v5c3yCtv.json b/src/packs/domains/domainCard_Fane_of_the_Wilds_F2m9wvZ3v5c3yCtv.json index 05477e79..a2c18ba5 100644 --- a/src/packs/domains/domainCard_Fane_of_the_Wilds_F2m9wvZ3v5c3yCtv.json +++ b/src/packs/domains/domainCard_Fane_of_the_Wilds_F2m9wvZ3v5c3yCtv.json @@ -15,6 +15,11 @@ "recovery": "longRest", "max": "", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784452, - "modifiedTime": 1754336327302, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429617500, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "F2m9wvZ3v5c3yCtv", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Ferocity_jSQsSP61CX4MhSN7.json b/src/packs/domains/domainCard_Ferocity_jSQsSP61CX4MhSN7.json index feb74897..483c6a7d 100644 --- a/src/packs/domains/domainCard_Ferocity_jSQsSP61CX4MhSN7.json +++ b/src/packs/domains/domainCard_Ferocity_jSQsSP61CX4MhSN7.json @@ -33,6 +33,11 @@ "img": "icons/skills/melee/maneuver-daggers-paired-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -40,12 +45,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784453, - "modifiedTime": 1754249658710, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428260608, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jSQsSP61CX4MhSN7", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Final_Words_Nbw6Jnh1vRZzwHQI.json b/src/packs/domains/domainCard_Final_Words_Nbw6Jnh1vRZzwHQI.json index 61cd64e6..17f4c969 100644 --- a/src/packs/domains/domainCard_Final_Words_Nbw6Jnh1vRZzwHQI.json +++ b/src/packs/domains/domainCard_Final_Words_Nbw6Jnh1vRZzwHQI.json @@ -57,6 +57,11 @@ "img": "icons/magic/death/undead-skeleton-fire-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784454, - "modifiedTime": 1754269243084, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429677699, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Nbw6Jnh1vRZzwHQI", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json b/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json index 1b4970d2..97a3fcf7 100644 --- a/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json +++ b/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json @@ -100,6 +100,11 @@ "value": 0, "max": "", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -107,12 +112,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784454, - "modifiedTime": 1754253557569, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427958620, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "54GUjNuBEy7xdzMz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Floating_Eye_wOQLu7nLMQ7v6Ogw.json b/src/packs/domains/domainCard_Floating_Eye_wOQLu7nLMQ7v6Ogw.json index 62a36dcf..17cf7e0c 100644 --- a/src/packs/domains/domainCard_Floating_Eye_wOQLu7nLMQ7v6Ogw.json +++ b/src/packs/domains/domainCard_Floating_Eye_wOQLu7nLMQ7v6Ogw.json @@ -38,6 +38,11 @@ "img": "icons/magic/perception/eye-tendrils-web-purple.webp", "range": "veryFar" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -45,12 +50,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784455, - "modifiedTime": 1754253473206, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427943550, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wOQLu7nLMQ7v6Ogw", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Forager_06UapZuaA5S6fAKl.json b/src/packs/domains/domainCard_Forager_06UapZuaA5S6fAKl.json index 5e039fb9..652a79e1 100644 --- a/src/packs/domains/domainCard_Forager_06UapZuaA5S6fAKl.json +++ b/src/packs/domains/domainCard_Forager_06UapZuaA5S6fAKl.json @@ -238,6 +238,11 @@ "img": "icons/consumables/potions/bottle-bulb-corked-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -245,12 +250,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784456, - "modifiedTime": 1754339631526, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429578094, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "06UapZuaA5S6fAKl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json b/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json index bf4a1e0d..ff9b1ebf 100644 --- a/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json +++ b/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json @@ -75,6 +75,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784456, - "modifiedTime": 1754340347669, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429633230, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "LzVpMkD5I4QeaIHf", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json b/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json index 1943eac9..3212a11c 100644 --- a/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json +++ b/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json @@ -48,19 +48,24 @@ } }, "resource": null, - "inVault": false + "inVault": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754067019520, - "modifiedTime": 1754241411518, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429828890, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "effects": [ { diff --git a/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json b/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json index 6b812038..a881ec6c 100644 --- a/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json +++ b/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json @@ -70,6 +70,11 @@ "img": "icons/creatures/magical/humanoid-silhouette-dashing-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -77,12 +82,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784457, - "modifiedTime": 1754339713793, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429599034, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JrkUMTzaFmQNBHVm", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Fortified_Armor_oVa49lI107eZILZr.json b/src/packs/domains/domainCard_Fortified_Armor_oVa49lI107eZILZr.json index b48a2e09..a0a58f74 100644 --- a/src/packs/domains/domainCard_Fortified_Armor_oVa49lI107eZILZr.json +++ b/src/packs/domains/domainCard_Fortified_Armor_oVa49lI107eZILZr.json @@ -8,19 +8,24 @@ "domain": "blade", "recallCost": 0, "level": 4, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784458, - "modifiedTime": 1754304268859, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428132316, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "oVa49lI107eZILZr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json b/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json index d8718735..87dddb15 100644 --- a/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json +++ b/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json @@ -38,6 +38,11 @@ "img": "icons/magic/fire/projectile-wave-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -45,12 +50,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784459, - "modifiedTime": 1754304635322, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428186983, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "MMl7abdGRLl7TJLO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json b/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json index ca10655c..15ffb49e 100644 --- a/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json +++ b/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json @@ -45,6 +45,11 @@ "img": "icons/magic/control/buff-flight-wings-runes-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" } }, "flags": {}, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784460, - "modifiedTime": 1754498928489, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429931329, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "SgvjJfMyubZowPxS", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Get_Back_Up_BFWN2cObMdlk9uVz.json b/src/packs/domains/domainCard_Get_Back_Up_BFWN2cObMdlk9uVz.json index 91b55807..a35dcd3c 100644 --- a/src/packs/domains/domainCard_Get_Back_Up_BFWN2cObMdlk9uVz.json +++ b/src/packs/domains/domainCard_Get_Back_Up_BFWN2cObMdlk9uVz.json @@ -9,19 +9,24 @@ "recallCost": 1, "level": 1, "type": "ability", - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784460, - "modifiedTime": 1754304045807, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428082275, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "BFWN2cObMdlk9uVz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json b/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json index a9e66110..f4cc79de 100644 --- a/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json +++ b/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json @@ -45,6 +45,11 @@ "img": "icons/magic/nature/stealth-hide-eyes-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784461, - "modifiedTime": 1754337461017, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429462909, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VZ2b4zfRzV73XTuT", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json b/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json index b01a8e00..71e1a34a 100644 --- a/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json +++ b/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json @@ -46,6 +46,11 @@ "img": "systems/daggerheart/assets/icons/domains/domain-card/blade.png", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784462, - "modifiedTime": 1754304608102, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428170369, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "nCNCqSH7UgW4O3To", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json b/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json index 99b6b683..d630e5f7 100644 --- a/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json +++ b/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json @@ -70,6 +70,11 @@ "img": "icons/magic/symbols/runes-triangle-blue.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -77,12 +82,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784463, - "modifiedTime": 1754330838174, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429335032, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "B5HXqYRJiL3xMNKT", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Goad_Them_On_HufF5KzuNfEb9RTi.json b/src/packs/domains/domainCard_Goad_Them_On_HufF5KzuNfEb9RTi.json index 03c1b5e0..9066a308 100644 --- a/src/packs/domains/domainCard_Goad_Them_On_HufF5KzuNfEb9RTi.json +++ b/src/packs/domains/domainCard_Goad_Them_On_HufF5KzuNfEb9RTi.json @@ -87,6 +87,11 @@ "img": "icons/magic/control/mouth-smile-deception-purple.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784464, - "modifiedTime": 1754241738411, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429869259, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HufF5KzuNfEb9RTi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Gore_and_Glory_3zvjgZ5Od343wHzx.json b/src/packs/domains/domainCard_Gore_and_Glory_3zvjgZ5Od343wHzx.json index 6c8de699..bfb91236 100644 --- a/src/packs/domains/domainCard_Gore_and_Glory_3zvjgZ5Od343wHzx.json +++ b/src/packs/domains/domainCard_Gore_and_Glory_3zvjgZ5Od343wHzx.json @@ -146,6 +146,11 @@ "img": "icons/magic/holy/barrier-shield-winged-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -153,12 +158,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784464, - "modifiedTime": 1754304753469, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428195100, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "3zvjgZ5Od343wHzx", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json b/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json index f1d82163..2a59fb30 100644 --- a/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json +++ b/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json @@ -92,6 +92,11 @@ "img": "icons/commodities/gems/gem-faceted-navette-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -99,12 +104,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784465, - "modifiedTime": 1754341871438, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429233975, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "KAuNb51AwhD8KEXk", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json b/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json index 4e603ff8..02091c6c 100644 --- a/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json +++ b/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json @@ -91,6 +91,11 @@ "img": "icons/magic/earth/barrier-stone-brown-green.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" } }, "flags": {}, @@ -98,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784466, - "modifiedTime": 1754242257735, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429937836, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WnGldYhJPDhx8v9X", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json b/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json index a9b0561d..d97dea73 100644 --- a/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json +++ b/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json @@ -175,6 +175,11 @@ "max": "1", "icon": "", "progression": "decreasing" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -182,12 +187,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784466, - "modifiedTime": 1754499077474, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429518847, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "GlRm1Dxlc0Z1b04o", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json b/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json index a7aeb6b2..2f626025 100644 --- a/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json +++ b/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json @@ -370,6 +370,11 @@ "img": "icons/commodities/gems/gem-faceted-navette-red.webp", "range": "melee" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -377,12 +382,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784467, - "modifiedTime": 1754269408742, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429684407, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WTlhnQMajc1r8i50", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json b/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json index 6c3dd4fd..76af7794 100644 --- a/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json +++ b/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json @@ -87,6 +87,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-green.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784468, - "modifiedTime": 1754269824514, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429756749, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "XtSc0jIJLOoMTMYS", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json b/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json index 0ab4d205..b572243f 100644 --- a/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json +++ b/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json @@ -73,6 +73,11 @@ "img": "icons/magic/defensive/shield-barrier-blue.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" } }, "flags": {}, @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784468, - "modifiedTime": 1754242400496, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429945423, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kdFoLo3KXwn4LqTG", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json b/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json index 93dfbf97..f60aaf26 100644 --- a/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json +++ b/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json @@ -70,6 +70,11 @@ "img": "icons/magic/unholy/orb-glowing-purple.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -77,12 +82,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784470, - "modifiedTime": 1754331001689, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429348547, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gwmYasmfgXZ7tFS6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json b/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json index a221859c..7579ac02 100644 --- a/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json +++ b/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json @@ -88,6 +88,11 @@ "img": "icons/magic/control/hypnosis-mesmerism-swirl.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -95,12 +100,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784471, - "modifiedTime": 1754341315075, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429167606, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2ZeuCGVatQdPOVC6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json b/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json index 1699800f..866589a1 100644 --- a/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json +++ b/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json @@ -42,19 +42,24 @@ } }, "resource": null, - "inVault": false + "inVault": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754067020844, - "modifiedTime": 1754241453261, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429834425, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "effects": [], "ownership": { diff --git a/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json b/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json index 0960839a..0633f0e3 100644 --- a/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json +++ b/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json @@ -66,6 +66,11 @@ "img": "icons/skills/melee/maneuver-sword-katana-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -73,12 +78,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784472, - "modifiedTime": 1754249651973, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428247643, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Kp6RejHGimnuoBom", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Inevitable_XTT8c8uJ4D7fvtbL.json b/src/packs/domains/domainCard_Inevitable_XTT8c8uJ4D7fvtbL.json index 78718d6b..18afea52 100644 --- a/src/packs/domains/domainCard_Inevitable_XTT8c8uJ4D7fvtbL.json +++ b/src/packs/domains/domainCard_Inevitable_XTT8c8uJ4D7fvtbL.json @@ -8,19 +8,24 @@ "domain": "valor", "recallCost": 1, "level": 6, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784472, - "modifiedTime": 1754242058119, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429896649, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "XTT8c8uJ4D7fvtbL", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json b/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json index 424b08b7..ceb386d3 100644 --- a/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json +++ b/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json @@ -243,6 +243,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -250,12 +255,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784473, - "modifiedTime": 1754499693699, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429148644, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "cWu1o82ZF7GvnbXc", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json b/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json index 9bdf44e7..e655d21b 100644 --- a/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json +++ b/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json @@ -66,6 +66,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -73,12 +78,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784474, - "modifiedTime": 1754270049868, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429801608, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "X8OfkEoI5gLTRf1B", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json b/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json index a0bff97c..ac5337f1 100644 --- a/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json +++ b/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json @@ -76,6 +76,11 @@ "value": 0, "max": "@cast", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784475, - "modifiedTime": 1754341402828, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429172642, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "KHkzA4Zrw8EWN1CH", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json b/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json index 53ef85a7..2a86115c 100644 --- a/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json +++ b/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json @@ -98,6 +98,11 @@ "img": "icons/magic/perception/eye-ringed-glow-angry-small-teal.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784475, - "modifiedTime": 1754252480391, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428299138, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "O38MQMhJWdZnXi6b", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json b/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json index 67f8e04c..fa6f3c10 100644 --- a/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json +++ b/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json @@ -45,6 +45,11 @@ "img": "icons/magic/control/buff-flight-wings-runes-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" } }, "flags": {}, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784475, - "modifiedTime": 1754242464667, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429951881, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YWCRplmtwpCjpq5i", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Lean_on_Me_BdePs1ZWpZTZvY1Z.json b/src/packs/domains/domainCard_Lean_on_Me_BdePs1ZWpZTZvY1Z.json index aecbe898..73bfee2b 100644 --- a/src/packs/domains/domainCard_Lean_on_Me_BdePs1ZWpZTZvY1Z.json +++ b/src/packs/domains/domainCard_Lean_on_Me_BdePs1ZWpZTZvY1Z.json @@ -77,6 +77,11 @@ "img": "icons/magic/life/heart-cross-strong-purple-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -84,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784477, - "modifiedTime": 1754241703151, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429861185, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "BdePs1ZWpZTZvY1Z", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json b/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json index 78b2ec5e..1c680cd4 100644 --- a/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json +++ b/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json @@ -47,6 +47,11 @@ "img": "icons/magic/defensive/shield-barrier-deflect-gold.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784478, - "modifiedTime": 1754269642386, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429712212, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "OszbCj0jTqq2ADx9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json b/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json index acb35822..077ea5d0 100644 --- a/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json +++ b/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json @@ -66,6 +66,11 @@ "img": "icons/magic/symbols/ring-circle-smoke-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -73,12 +78,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784479, - "modifiedTime": 1754240697822, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429040215, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "TtGOtWkbr23VhHfH", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Mass_Disguise_dT95m0Jam8sWbeuC.json b/src/packs/domains/domainCard_Mass_Disguise_dT95m0Jam8sWbeuC.json index 76ea0d6b..050a47a0 100644 --- a/src/packs/domains/domainCard_Mass_Disguise_dT95m0Jam8sWbeuC.json +++ b/src/packs/domains/domainCard_Mass_Disguise_dT95m0Jam8sWbeuC.json @@ -37,6 +37,11 @@ "img": "icons/skills/social/diplomacy-unity-alliance.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784480, - "modifiedTime": 1754331105670, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429370519, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dT95m0Jam8sWbeuC", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json b/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json index 2713e2c7..29da4453 100644 --- a/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json +++ b/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json @@ -121,6 +121,11 @@ "img": "icons/commodities/gems/gem-faceted-navette-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -128,12 +133,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784481, - "modifiedTime": 1754499825008, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429247535, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ubpixIgZrJXKyM3b", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Master_of_the_Craft_yAGTwXHUC3qxpTeK.json b/src/packs/domains/domainCard_Master_of_the_Craft_yAGTwXHUC3qxpTeK.json index 8ab75989..148ce05a 100644 --- a/src/packs/domains/domainCard_Master_of_the_Craft_yAGTwXHUC3qxpTeK.json +++ b/src/packs/domains/domainCard_Master_of_the_Craft_yAGTwXHUC3qxpTeK.json @@ -8,19 +8,24 @@ "domain": "grace", "recallCost": 0, "level": 9, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784482, - "modifiedTime": 1754229084018, - "lastModifiedBy": "l5jB3XmcVXOTQpRZ" + "modifiedTime": 1755429259836, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "yAGTwXHUC3qxpTeK", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json b/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json index 437adffc..12940038 100644 --- a/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json +++ b/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json @@ -342,6 +342,11 @@ "max": "1", "icon": "fa-solid fa-hands-praying", "recovery": "longRest" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -349,12 +354,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784482, - "modifiedTime": 1754498631054, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429662900, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "TGjR4vJVNbQRV8zr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json b/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json index 701f912d..7809506f 100644 --- a/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json +++ b/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json @@ -121,6 +121,11 @@ "img": "icons/creatures/magical/spirit-undead-ghost-purple.webp", "range": "veryFar" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -128,12 +133,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784482, - "modifiedTime": 1754330630881, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429306955, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "FXLsB3QbQvTtqX5B", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json b/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json index 7a06e78e..ac120ef6 100644 --- a/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json +++ b/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json @@ -107,6 +107,11 @@ "img": "icons/skills/wounds/anatomy-organ-brain-pink-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -114,12 +119,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784484, - "modifiedTime": 1754331118511, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429376821, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uSyGKVxOJcnp28po", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json b/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json index 97da5875..974ea647 100644 --- a/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json +++ b/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json @@ -122,6 +122,11 @@ "img": "icons/magic/perception/eye-ringed-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -129,12 +134,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784485, - "modifiedTime": 1754338204263, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429486873, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Tag303LoRNC5zGgl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json b/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json index ed754e5c..d290126d 100644 --- a/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json +++ b/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json @@ -91,6 +91,11 @@ "img": "icons/magic/nature/beam-hand-leaves-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -98,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784485, - "modifiedTime": 1754337595015, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429468262, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "atWLorlCOxcrq8WB", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json b/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json index b53b635d..5549707f 100644 --- a/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json +++ b/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json @@ -184,6 +184,11 @@ "img": "icons/commodities/gems/gem-faceted-navette-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -191,12 +196,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784486, - "modifiedTime": 1754341729669, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429215057, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "McdncxmO9K1YNP7Y", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json b/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json index cb538eb1..c2abcab4 100644 --- a/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json +++ b/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json @@ -121,19 +121,24 @@ "range": "" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784487, - "modifiedTime": 1754499654051, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429413469, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "zcldCuqOg3dphUVI", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Not_Good_Enough_xheQZOIYp0ERQhT9.json b/src/packs/domains/domainCard_Not_Good_Enough_xheQZOIYp0ERQhT9.json index 56abe99f..6d7acdf5 100644 --- a/src/packs/domains/domainCard_Not_Good_Enough_xheQZOIYp0ERQhT9.json +++ b/src/packs/domains/domainCard_Not_Good_Enough_xheQZOIYp0ERQhT9.json @@ -8,19 +8,24 @@ "domain": "blade", "recallCost": 1, "level": 1, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784487, - "modifiedTime": 1754244517328, - "lastModifiedBy": "l5jB3XmcVXOTQpRZ" + "modifiedTime": 1755428087961, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xheQZOIYp0ERQhT9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json b/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json index aad731ff..7f9244dc 100644 --- a/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json +++ b/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json @@ -40,6 +40,11 @@ "img": "icons/magic/light/explosion-star-glow-silhouette.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -47,12 +52,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784489, - "modifiedTime": 1754342229231, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429273228, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "IqxzvvjZiYbgx21A", "sort": 3400000, diff --git a/src/packs/domains/domainCard_On_the_Brink_zbxPl81kbWEegKQN.json b/src/packs/domains/domainCard_On_the_Brink_zbxPl81kbWEegKQN.json index b6f6548f..c6978859 100644 --- a/src/packs/domains/domainCard_On_the_Brink_zbxPl81kbWEegKQN.json +++ b/src/packs/domains/domainCard_On_the_Brink_zbxPl81kbWEegKQN.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 9, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784489, - "modifiedTime": 1754252507659, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428361099, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "zbxPl81kbWEegKQN", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json b/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json index 0d924ef2..79fe6211 100644 --- a/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json +++ b/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json @@ -46,6 +46,11 @@ "img": "icons/skills/melee/strike-axe-blood-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784490, - "modifiedTime": 1754304817948, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428212614, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "I7pNsQ9Yx6mRJX4V", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json b/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json index 68abefea..72a79735 100644 --- a/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json +++ b/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json @@ -71,6 +71,11 @@ "img": "icons/magic/holy/angel-winged-humanoid-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784491, - "modifiedTime": 1754270006714, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429784343, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "iEBLySZD9z8CLdz7", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json b/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json index 7e58df93..43c2d220 100644 --- a/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json +++ b/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json @@ -70,6 +70,11 @@ "img": "icons/magic/control/silhouette-hold-beam-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -77,12 +82,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784491, - "modifiedTime": 1754331063221, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429354517, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "0vdpIn06ifF3xxqZ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Pick_and_Pull_HdgZUfWd7Hyj7nBW.json b/src/packs/domains/domainCard_Pick_and_Pull_HdgZUfWd7Hyj7nBW.json index 23e477a9..8556feb3 100644 --- a/src/packs/domains/domainCard_Pick_and_Pull_HdgZUfWd7Hyj7nBW.json +++ b/src/packs/domains/domainCard_Pick_and_Pull_HdgZUfWd7Hyj7nBW.json @@ -8,19 +8,24 @@ "domain": "midnight", "recallCost": 0, "level": 1, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784492, - "modifiedTime": 1754330601777, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429286495, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HdgZUfWd7Hyj7nBW", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Plant_Dominion_9a6xP5pxhVvdugk9.json b/src/packs/domains/domainCard_Plant_Dominion_9a6xP5pxhVvdugk9.json index 8176850e..665a7af9 100644 --- a/src/packs/domains/domainCard_Plant_Dominion_9a6xP5pxhVvdugk9.json +++ b/src/packs/domains/domainCard_Plant_Dominion_9a6xP5pxhVvdugk9.json @@ -57,6 +57,11 @@ "img": "icons/magic/nature/tree-elm-roots-brown.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784493, - "modifiedTime": 1754499238543, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429623471, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9a6xP5pxhVvdugk9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json b/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json index 8a590089..5ec9f9b8 100644 --- a/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json +++ b/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json @@ -49,6 +49,11 @@ "recovery": "longRest", "max": "1", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -56,12 +61,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784494, - "modifiedTime": 1754253731528, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427986895, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "aC43NiFQLpOADyjO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Preservation_Blast_1p1cOmbnRd5CoKBp.json b/src/packs/domains/domainCard_Preservation_Blast_1p1cOmbnRd5CoKBp.json index 2460130f..9240a534 100644 --- a/src/packs/domains/domainCard_Preservation_Blast_1p1cOmbnRd5CoKBp.json +++ b/src/packs/domains/domainCard_Preservation_Blast_1p1cOmbnRd5CoKBp.json @@ -84,6 +84,11 @@ "img": "icons/magic/air/air-pressure-shield-blue.webp", "range": "melee" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -91,12 +96,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784495, - "modifiedTime": 1754253657439, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427971834, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1p1cOmbnRd5CoKBp", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json b/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json index b11bd6f9..d9d67737 100644 --- a/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json +++ b/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json @@ -84,6 +84,11 @@ "img": "icons/magic/control/silhouette-aura-energy.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -91,12 +96,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784496, - "modifiedTime": 1754445106667, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428155116, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "GRL0cvs96vrTDckZ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json b/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json index 7327a44e..630960f4 100644 --- a/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json +++ b/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json @@ -140,6 +140,11 @@ "img": "icons/skills/melee/spear-tips-three-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -147,12 +152,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784497, - "modifiedTime": 1754330607042, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429293162, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Ucenef6JpjQxwXni", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json b/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json index e2f248c7..6da00db8 100644 --- a/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json +++ b/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json @@ -42,6 +42,11 @@ "img": "icons/skills/melee/maneuver-greatsword-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784497, - "modifiedTime": 1754252487558, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428316589, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tceJDcCUefrMS2Ov", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json b/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json index 201005a1..0bc016be 100644 --- a/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json +++ b/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json @@ -66,6 +66,11 @@ "img": "icons/skills/melee/strike-axe-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -73,12 +78,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784498, - "modifiedTime": 1754304768446, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428200348, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "MCgNRlh0s5XUPCfl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Reassurance_iYNVTB7uAD1FTCZu.json b/src/packs/domains/domainCard_Reassurance_iYNVTB7uAD1FTCZu.json index 43c17e96..87ec672e 100644 --- a/src/packs/domains/domainCard_Reassurance_iYNVTB7uAD1FTCZu.json +++ b/src/packs/domains/domainCard_Reassurance_iYNVTB7uAD1FTCZu.json @@ -33,6 +33,11 @@ "img": "icons/sundries/gaming/dice-pair-white-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -40,12 +45,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784499, - "modifiedTime": 1754498645559, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429669557, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "iYNVTB7uAD1FTCZu", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json b/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json index 7e6d927a..28847ad5 100644 --- a/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json +++ b/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json @@ -42,6 +42,11 @@ "img": "icons/magic/control/silhouette-aura-energy.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784500, - "modifiedTime": 1754304322191, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428107078, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2ooUo2yoilGifY81", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Recovery_gsiQFT6q3WOgqerJ.json b/src/packs/domains/domainCard_Recovery_gsiQFT6q3WOgqerJ.json index 8b491d49..963abf97 100644 --- a/src/packs/domains/domainCard_Recovery_gsiQFT6q3WOgqerJ.json +++ b/src/packs/domains/domainCard_Recovery_gsiQFT6q3WOgqerJ.json @@ -38,6 +38,11 @@ "img": "icons/magic/life/cross-beam-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -45,12 +50,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784500, - "modifiedTime": 1754252490411, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428322053, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gsiQFT6q3WOgqerJ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json b/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json index 85a952c3..c30bfb3c 100644 --- a/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json +++ b/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json @@ -42,6 +42,11 @@ "img": "icons/skills/melee/sword-twirl-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784500, - "modifiedTime": 1754252475141, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428292852, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "faU0XkJCbar69PiN", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rejuvenation_Barrier_HtWx5IIemCoorMj2.json b/src/packs/domains/domainCard_Rejuvenation_Barrier_HtWx5IIemCoorMj2.json index 4d910604..1ab77475 100644 --- a/src/packs/domains/domainCard_Rejuvenation_Barrier_HtWx5IIemCoorMj2.json +++ b/src/packs/domains/domainCard_Rejuvenation_Barrier_HtWx5IIemCoorMj2.json @@ -82,6 +82,11 @@ "img": "icons/magic/nature/leaf-hand-green.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -89,12 +94,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784502, - "modifiedTime": 1754499308449, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429606994, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HtWx5IIemCoorMj2", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json b/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json index c75e8ca6..89ebb736 100644 --- a/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json +++ b/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json @@ -204,6 +204,11 @@ "img": "icons/magic/light/beam-rays-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -211,12 +216,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784502, - "modifiedTime": 1754498742091, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429742185, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wUQFsRtww18naYaq", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Resurrection_z30ciOwQI7g3tHla.json b/src/packs/domains/domainCard_Resurrection_z30ciOwQI7g3tHla.json index 7d580ff9..02c742ef 100644 --- a/src/packs/domains/domainCard_Resurrection_z30ciOwQI7g3tHla.json +++ b/src/packs/domains/domainCard_Resurrection_z30ciOwQI7g3tHla.json @@ -104,6 +104,11 @@ "img": "icons/sundries/gaming/dice-runed-brown.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -111,12 +116,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784503, - "modifiedTime": 1754270120120, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429807372, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "z30ciOwQI7g3tHla", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rift_Walker_vd5STqX29RpYbGxa.json b/src/packs/domains/domainCard_Rift_Walker_vd5STqX29RpYbGxa.json index 476e9534..76313434 100644 --- a/src/packs/domains/domainCard_Rift_Walker_vd5STqX29RpYbGxa.json +++ b/src/packs/domains/domainCard_Rift_Walker_vd5STqX29RpYbGxa.json @@ -57,6 +57,11 @@ "img": "icons/magic/earth/projectile-stone-bullet-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784503, - "modifiedTime": 1754253784334, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427997569, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "vd5STqX29RpYbGxa", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rise_Up_oDIZoC4l19Nli0Fj.json b/src/packs/domains/domainCard_Rise_Up_oDIZoC4l19Nli0Fj.json index d7c8c618..964b5736 100644 --- a/src/packs/domains/domainCard_Rise_Up_oDIZoC4l19Nli0Fj.json +++ b/src/packs/domains/domainCard_Rise_Up_oDIZoC4l19Nli0Fj.json @@ -77,6 +77,11 @@ "img": "icons/magic/life/heart-cross-strong-purple-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -84,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784504, - "modifiedTime": 1754242078238, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429903155, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "oDIZoC4l19Nli0Fj", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rousing_Strike_pcbYD33rBBdAo5f9.json b/src/packs/domains/domainCard_Rousing_Strike_pcbYD33rBBdAo5f9.json index 47aa96d1..99c411fe 100644 --- a/src/packs/domains/domainCard_Rousing_Strike_pcbYD33rBBdAo5f9.json +++ b/src/packs/domains/domainCard_Rousing_Strike_pcbYD33rBBdAo5f9.json @@ -32,6 +32,11 @@ "img": "icons/magic/light/hand-sparks-glow-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -39,12 +44,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784506, - "modifiedTime": 1754242030472, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429887417, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "pcbYD33rBBdAo5f9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json b/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json index ea33cfcb..5e45f832 100644 --- a/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json +++ b/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json @@ -64,6 +64,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-pink-gold.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -71,12 +76,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784506, - "modifiedTime": 1754253212120, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427506566, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "GEhBUmv9Bj7oJfHk", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json b/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json index 3f84099c..2ab645bd 100644 --- a/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json +++ b/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json @@ -45,6 +45,11 @@ "img": "icons/environment/settlement/watchtower-moonlit-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784506, - "modifiedTime": 1754233292265, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429092085, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "lmBLMPuR8qLbuzNf", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json b/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json index 3f172c21..625ed0d0 100644 --- a/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json +++ b/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json @@ -87,6 +87,11 @@ "max": "1", "icon": "", "recovery": "shortRest" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784507, - "modifiedTime": 1754339963905, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429585605, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VOSFaQHZbmhMyXwi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json b/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json index 0d799f82..baaba0a6 100644 --- a/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json +++ b/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json @@ -87,6 +87,11 @@ "img": "icons/magic/light/beams-rays-orange-purple-large.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784508, - "modifiedTime": 1754270031835, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429792958, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "4uAFGp3LxiC07woC", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Scramble_5bBU9jWHOuOY12lR.json b/src/packs/domains/domainCard_Scramble_5bBU9jWHOuOY12lR.json index 5ca6fc07..77b1b0c8 100644 --- a/src/packs/domains/domainCard_Scramble_5bBU9jWHOuOY12lR.json +++ b/src/packs/domains/domainCard_Scramble_5bBU9jWHOuOY12lR.json @@ -33,6 +33,11 @@ "img": "icons/skills/movement/feet-winged-boots-brown.webp", "range": "melee" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -40,12 +45,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784509, - "modifiedTime": 1754304188850, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428115458, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5bBU9jWHOuOY12lR", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json b/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json index 07b037d6..90756d98 100644 --- a/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json +++ b/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json @@ -171,6 +171,11 @@ "recovery": "shortRest", "max": "1", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -178,12 +183,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784509, - "modifiedTime": 1754269533170, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429692907, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ffPbSEvLuFrFsMxl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Sensory_Projection_gZOMzskSOfeiXn54.json b/src/packs/domains/domainCard_Sensory_Projection_gZOMzskSOfeiXn54.json index 227ab463..9e0e7f67 100644 --- a/src/packs/domains/domainCard_Sensory_Projection_gZOMzskSOfeiXn54.json +++ b/src/packs/domains/domainCard_Sensory_Projection_gZOMzskSOfeiXn54.json @@ -57,6 +57,11 @@ "img": "icons/magic/control/debuff-energy-hold-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784511, - "modifiedTime": 1754254316744, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428050507, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gZOMzskSOfeiXn54", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shadowbind_kguhWlidhxe2GbT0.json b/src/packs/domains/domainCard_Shadowbind_kguhWlidhxe2GbT0.json index 000a1b1f..25277259 100644 --- a/src/packs/domains/domainCard_Shadowbind_kguhWlidhxe2GbT0.json +++ b/src/packs/domains/domainCard_Shadowbind_kguhWlidhxe2GbT0.json @@ -61,6 +61,11 @@ "img": "icons/magic/control/debuff-energy-snare-blue.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784512, - "modifiedTime": 1754499502570, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429312498, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kguhWlidhxe2GbT0", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shadowhunter_A0XzD6MmBXYdk7Ps.json b/src/packs/domains/domainCard_Shadowhunter_A0XzD6MmBXYdk7Ps.json index 1b1639fd..e76637df 100644 --- a/src/packs/domains/domainCard_Shadowhunter_A0XzD6MmBXYdk7Ps.json +++ b/src/packs/domains/domainCard_Shadowhunter_A0XzD6MmBXYdk7Ps.json @@ -9,19 +9,24 @@ "recallCost": 2, "level": 8, "type": "ability", - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784513, - "modifiedTime": 1754331190370, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429396600, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "A0XzD6MmBXYdk7Ps", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json b/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json index c4eb21a0..87f8bb7a 100644 --- a/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json +++ b/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json @@ -42,6 +42,11 @@ "img": "icons/commodities/stone/geode-raw-white.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784514, - "modifiedTime": 1754269669897, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429726392, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "db4xV3YErHRslbVE", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Share_the_Burden_8nRle10pw1HO8QVu.json b/src/packs/domains/domainCard_Share_the_Burden_8nRle10pw1HO8QVu.json index 62c4de86..202a4e58 100644 --- a/src/packs/domains/domainCard_Share_the_Burden_8nRle10pw1HO8QVu.json +++ b/src/packs/domains/domainCard_Share_the_Burden_8nRle10pw1HO8QVu.json @@ -33,6 +33,11 @@ "img": "systems/daggerheart/assets/icons/domains/domain-card/grace.png", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -40,12 +45,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784515, - "modifiedTime": 1754499760780, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429220432, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8nRle10pw1HO8QVu", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json b/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json index ea63ca5a..e03eaf12 100644 --- a/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json +++ b/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json @@ -47,6 +47,11 @@ "img": "icons/magic/defensive/shield-barrier-flaming-diamond-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784516, - "modifiedTime": 1754269891393, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429770054, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rfIv6lln40Fh6EIl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json b/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json index 2b7ccf04..d61473c9 100644 --- a/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json +++ b/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json @@ -65,6 +65,11 @@ "img": "icons/magic/defensive/shield-barrier-deflect-teal.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -72,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784516, - "modifiedTime": 1754242112465, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429912530, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JwfhtgmmuRxg4zhI", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Sigil_of_Retribution_RiuN0lMlfoTAhLJz.json b/src/packs/domains/domainCard_Sigil_of_Retribution_RiuN0lMlfoTAhLJz.json index cd3e81b3..edb6588b 100644 --- a/src/packs/domains/domainCard_Sigil_of_Retribution_RiuN0lMlfoTAhLJz.json +++ b/src/packs/domains/domainCard_Sigil_of_Retribution_RiuN0lMlfoTAhLJz.json @@ -44,6 +44,11 @@ "img": "icons/magic/symbols/triangle-glow-purple.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -51,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784517, - "modifiedTime": 1754232249140, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429062367, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "RiuN0lMlfoTAhLJz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Signature_Move_LWRkhNY968Cu2Zl5.json b/src/packs/domains/domainCard_Signature_Move_LWRkhNY968Cu2Zl5.json index 29ab1f5c..b429259a 100644 --- a/src/packs/domains/domainCard_Signature_Move_LWRkhNY968Cu2Zl5.json +++ b/src/packs/domains/domainCard_Signature_Move_LWRkhNY968Cu2Zl5.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 5, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784518, - "modifiedTime": 1754252482524, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428307837, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "LWRkhNY968Cu2Zl5", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json b/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json index 939fff19..245db4a2 100644 --- a/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json +++ b/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json @@ -47,6 +47,11 @@ "img": "icons/skills/melee/sword-winged-holy-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784519, - "modifiedTime": 1754498725946, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429734196, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "U1uWJE94HZVudujz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Soothing_Speech_QED2PDYePOSTbLtC.json b/src/packs/domains/domainCard_Soothing_Speech_QED2PDYePOSTbLtC.json index 73bef395..f7520c6c 100644 --- a/src/packs/domains/domainCard_Soothing_Speech_QED2PDYePOSTbLtC.json +++ b/src/packs/domains/domainCard_Soothing_Speech_QED2PDYePOSTbLtC.json @@ -144,6 +144,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -151,12 +156,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784519, - "modifiedTime": 1754341467905, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429180273, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "QED2PDYePOSTbLtC", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json b/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json index a5ba7cae..02d43c56 100644 --- a/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json +++ b/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json @@ -45,6 +45,11 @@ "img": "icons/magic/unholy/silhouette-light-fire-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784520, - "modifiedTime": 1754331335651, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429431607, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "iQhgqmLwhcSTYnvr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json b/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json index 651fe897..c0b78538 100644 --- a/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json +++ b/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json @@ -46,6 +46,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784521, - "modifiedTime": 1754331207737, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429406322, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ewhIzXQ2h9fS9I8c", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Splendor_Touched_JT5dM3gVL6chDBYU.json b/src/packs/domains/domainCard_Splendor_Touched_JT5dM3gVL6chDBYU.json index 0772f92b..03d39a92 100644 --- a/src/packs/domains/domainCard_Splendor_Touched_JT5dM3gVL6chDBYU.json +++ b/src/packs/domains/domainCard_Splendor_Touched_JT5dM3gVL6chDBYU.json @@ -8,19 +8,24 @@ "domain": "splendor", "recallCost": 2, "level": 7, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784522, - "modifiedTime": 1754268980895, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429762596, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JT5dM3gVL6chDBYU", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json b/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json index ed3d5f4c..20f8deca 100644 --- a/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json +++ b/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json @@ -66,6 +66,11 @@ "img": "icons/skills/melee/strike-sword-steel-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -73,12 +78,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784522, - "modifiedTime": 1754501075258, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428367184, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "TYKfM3H9vBXyWiH4", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json b/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json index a19143c9..f5a140d6 100644 --- a/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json +++ b/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json @@ -40,6 +40,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -47,12 +52,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784523, - "modifiedTime": 1754330848539, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429340856, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "NIUhmuQGwbb3UClZ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json b/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json index ae4ab09d..b984da10 100644 --- a/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json +++ b/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json @@ -50,6 +50,11 @@ "img": "icons/skills/targeting/crosshair-arrowhead-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -57,12 +62,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784523, - "modifiedTime": 1754501630846, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428265451, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5b1awkgTmMp3FVrm", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json b/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json index b601a08d..103765e3 100644 --- a/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json +++ b/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json @@ -152,6 +152,11 @@ "img": "icons/magic/light/beam-strike-village-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -159,12 +164,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784524, - "modifiedTime": 1754269929319, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429776475, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "lRHo6ZkK1zybeEoG", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json b/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json index 04c3c64c..1d5f2cf7 100644 --- a/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json +++ b/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json @@ -40,6 +40,11 @@ "img": "icons/magic/holy/barrier-shield-winged-blue.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -47,12 +52,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784525, - "modifiedTime": 1754241759840, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429875110, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "stId5syX7YpP2JGz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Swift_Step_H6TqCJBaa1eWEQ1z.json b/src/packs/domains/domainCard_Swift_Step_H6TqCJBaa1eWEQ1z.json index 0dc8c2c9..cc2a4a10 100644 --- a/src/packs/domains/domainCard_Swift_Step_H6TqCJBaa1eWEQ1z.json +++ b/src/packs/domains/domainCard_Swift_Step_H6TqCJBaa1eWEQ1z.json @@ -146,6 +146,11 @@ "img": "icons/magic/life/cross-beam-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -153,12 +158,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784526, - "modifiedTime": 1754252518993, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428380396, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "H6TqCJBaa1eWEQ1z", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Tactician_WChWEH36lUpXAC0K.json b/src/packs/domains/domainCard_Tactician_WChWEH36lUpXAC0K.json index bcd56d25..eb3546f1 100644 --- a/src/packs/domains/domainCard_Tactician_WChWEH36lUpXAC0K.json +++ b/src/packs/domains/domainCard_Tactician_WChWEH36lUpXAC0K.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 3, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784526, - "modifiedTime": 1754249669078, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428277274, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WChWEH36lUpXAC0K", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Telekinesis_FgzBppvLjXr0UbUI.json b/src/packs/domains/domainCard_Telekinesis_FgzBppvLjXr0UbUI.json index 22a7d347..cffac839 100644 --- a/src/packs/domains/domainCard_Telekinesis_FgzBppvLjXr0UbUI.json +++ b/src/packs/domains/domainCard_Telekinesis_FgzBppvLjXr0UbUI.json @@ -131,6 +131,11 @@ "img": "icons/magic/control/energy-stream-link-spiral-blue.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -138,12 +143,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784527, - "modifiedTime": 1754253886885, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428003177, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "FgzBppvLjXr0UbUI", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Teleport_HnPwVrWblYa9hwSt.json b/src/packs/domains/domainCard_Teleport_HnPwVrWblYa9hwSt.json index e1569b1a..9e4e39ec 100644 --- a/src/packs/domains/domainCard_Teleport_HnPwVrWblYa9hwSt.json +++ b/src/packs/domains/domainCard_Teleport_HnPwVrWblYa9hwSt.json @@ -56,6 +56,11 @@ "img": "icons/magic/movement/pinwheel-turning-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -63,12 +68,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784528, - "modifiedTime": 1754231629691, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429045982, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HnPwVrWblYa9hwSt", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Tell_No_Lies_HTv9QEPS466WsstP.json b/src/packs/domains/domainCard_Tell_No_Lies_HTv9QEPS466WsstP.json index f25819c7..b1fef374 100644 --- a/src/packs/domains/domainCard_Tell_No_Lies_HTv9QEPS466WsstP.json +++ b/src/packs/domains/domainCard_Tell_No_Lies_HTv9QEPS466WsstP.json @@ -82,6 +82,11 @@ "img": "icons/magic/control/voodoo-doll-pain-damage-red.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -89,12 +94,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784529, - "modifiedTime": 1754341185897, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429155562, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HTv9QEPS466WsstP", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Tempest_X7YaZgFieBlqaPdZ.json b/src/packs/domains/domainCard_Tempest_X7YaZgFieBlqaPdZ.json index 71d1dc6a..69161e38 100644 --- a/src/packs/domains/domainCard_Tempest_X7YaZgFieBlqaPdZ.json +++ b/src/packs/domains/domainCard_Tempest_X7YaZgFieBlqaPdZ.json @@ -244,6 +244,11 @@ "img": "icons/magic/air/air-wave-gust-smoke-yellow.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -251,12 +256,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784530, - "modifiedTime": 1754340540933, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429646639, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "X7YaZgFieBlqaPdZ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json b/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json index 6aca1471..6c56de38 100644 --- a/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json +++ b/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json @@ -78,6 +78,11 @@ "max": "@cast", "icon": "", "dieFaces": "d6" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -85,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784531, - "modifiedTime": 1754338832102, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429528391, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "oUipGK84E2KjoKqh", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json b/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json index 3717b810..ed0e7184 100644 --- a/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json +++ b/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json @@ -91,6 +91,11 @@ "img": "icons/magic/control/fear-fright-shadow-monster-purple.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -98,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784532, - "modifiedTime": 1754341613759, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429199741, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "B4choj481tqajWb9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Through_Your_Eyes_7b0mzV5QMPjVPT4o.json b/src/packs/domains/domainCard_Through_Your_Eyes_7b0mzV5QMPjVPT4o.json index 4c3d2611..03c43739 100644 --- a/src/packs/domains/domainCard_Through_Your_Eyes_7b0mzV5QMPjVPT4o.json +++ b/src/packs/domains/domainCard_Through_Your_Eyes_7b0mzV5QMPjVPT4o.json @@ -37,6 +37,11 @@ "img": "icons/magic/perception/eye-slit-pink.webp", "range": "veryFar" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784533, - "modifiedTime": 1754341493606, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429187901, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "7b0mzV5QMPjVPT4o", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json b/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json index 124144a8..a4ab4541 100644 --- a/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json +++ b/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json @@ -130,19 +130,24 @@ "range": "" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784534, - "modifiedTime": 1754499113867, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429505289, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "n0P3VS1WfxvmXbB6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json b/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json index 10ef5d47..91539c93 100644 --- a/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json +++ b/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json @@ -47,6 +47,11 @@ "img": "icons/magic/light/explosion-beam-impact-silhouette.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784534, - "modifiedTime": 1754240901607, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429121503, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kVkoCLBXLAIifqpz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Troublemaker_JrdZedm1BFKeV7Yb.json b/src/packs/domains/domainCard_Troublemaker_JrdZedm1BFKeV7Yb.json index 5bcd3482..9d8e3db8 100644 --- a/src/packs/domains/domainCard_Troublemaker_JrdZedm1BFKeV7Yb.json +++ b/src/packs/domains/domainCard_Troublemaker_JrdZedm1BFKeV7Yb.json @@ -83,6 +83,11 @@ "img": "icons/magic/control/fear-fright-monster-purple-blue.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -90,12 +95,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784535, - "modifiedTime": 1754341260325, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429160838, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JrdZedm1BFKeV7Yb", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json b/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json index c4c06be8..620e0558 100644 --- a/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json +++ b/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json @@ -76,6 +76,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-blue.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784535, - "modifiedTime": 1754331253303, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429419135, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "SDjjV61TC1NceV1m", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Unbreakable_CUIQmrPjf9VCHmwJ.json b/src/packs/domains/domainCard_Unbreakable_CUIQmrPjf9VCHmwJ.json index 3d06e736..d79fa2a7 100644 --- a/src/packs/domains/domainCard_Unbreakable_CUIQmrPjf9VCHmwJ.json +++ b/src/packs/domains/domainCard_Unbreakable_CUIQmrPjf9VCHmwJ.json @@ -56,6 +56,11 @@ "img": "icons/magic/life/heart-cross-strong-flame-purple-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" } }, "flags": {}, @@ -63,12 +68,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784536, - "modifiedTime": 1754242513278, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429961365, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CUIQmrPjf9VCHmwJ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json b/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json index a90187c0..1d0456ce 100644 --- a/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json +++ b/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json @@ -77,6 +77,11 @@ "value": 0, "max": "@cast", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -84,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784537, - "modifiedTime": 1754330615594, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429298602, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "TV56wSysbU5xAlOa", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json b/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json index 17f934d6..8137b243 100644 --- a/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json +++ b/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json @@ -133,6 +133,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -140,12 +145,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784537, - "modifiedTime": 1754501257508, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755427920648, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "o62i0QdbUDIiAhSq", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Untouchable_9QElncQUDSakuSdR.json b/src/packs/domains/domainCard_Untouchable_9QElncQUDSakuSdR.json index 89b4cbee..548f9eee 100644 --- a/src/packs/domains/domainCard_Untouchable_9QElncQUDSakuSdR.json +++ b/src/packs/domains/domainCard_Untouchable_9QElncQUDSakuSdR.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 1, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784538, - "modifiedTime": 1754249654207, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428252550, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9QElncQUDSakuSdR", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Unyielding_Armor_s3zRsOMeUkuDwgd8.json b/src/packs/domains/domainCard_Unyielding_Armor_s3zRsOMeUkuDwgd8.json index a5b3ed83..2c991d8d 100644 --- a/src/packs/domains/domainCard_Unyielding_Armor_s3zRsOMeUkuDwgd8.json +++ b/src/packs/domains/domainCard_Unyielding_Armor_s3zRsOMeUkuDwgd8.json @@ -8,19 +8,24 @@ "domain": "valor", "recallCost": 1, "level": 10, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784538, - "modifiedTime": 1754242525301, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429967098, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "s3zRsOMeUkuDwgd8", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Valor_Touched_k1AtYd3lSchIymBr.json b/src/packs/domains/domainCard_Valor_Touched_k1AtYd3lSchIymBr.json index ec66bbd6..8ff2e41a 100644 --- a/src/packs/domains/domainCard_Valor_Touched_k1AtYd3lSchIymBr.json +++ b/src/packs/domains/domainCard_Valor_Touched_k1AtYd3lSchIymBr.json @@ -77,6 +77,11 @@ "img": "icons/equipment/chest/breastplate-collared-steel-grey.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -84,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784539, - "modifiedTime": 1754242143242, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429918794, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "k1AtYd3lSchIymBr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json b/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json index 1d9e2108..29ba6f90 100644 --- a/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json +++ b/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json @@ -45,6 +45,11 @@ "img": "icons/magic/perception/shadow-stealth-eyes-purple.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784539, - "modifiedTime": 1754331169719, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429382850, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "GBMIElIpk4cvk1Bd", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json b/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json index 917c2e93..3e0a4623 100644 --- a/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json +++ b/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json @@ -61,6 +61,11 @@ "img": "icons/magic/unholy/barrier-shield-glowing-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784541, - "modifiedTime": 1754173368653, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429328234, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gV4L5ZZmfPrEbIDh", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json b/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json index c8134c0c..6d4db3d1 100644 --- a/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json +++ b/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json @@ -42,6 +42,11 @@ "img": "icons/magic/control/silhouette-aura-energy.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784541, - "modifiedTime": 1754304293769, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428120598, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wQ53ImDswEHv5SGQ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json b/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json index cedcec36..042cb330 100644 --- a/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json +++ b/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json @@ -123,6 +123,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -130,12 +135,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784541, - "modifiedTime": 1754338467256, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429474482, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "qvpvTnkAoRn9vYO4", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Vitality_sWUlSPOJEaXyQLCj.json b/src/packs/domains/domainCard_Vitality_sWUlSPOJEaXyQLCj.json index 3e41ae1a..6d85b5b5 100644 --- a/src/packs/domains/domainCard_Vitality_sWUlSPOJEaXyQLCj.json +++ b/src/packs/domains/domainCard_Vitality_sWUlSPOJEaXyQLCj.json @@ -46,6 +46,11 @@ "img": "systems/daggerheart/assets/icons/domains/domain-card/blade.png", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784542, - "modifiedTime": 1754304501280, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428142811, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "sWUlSPOJEaXyQLCj", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Voice_of_Reason_t3RRGH6mMYYJJCcF.json b/src/packs/domains/domainCard_Voice_of_Reason_t3RRGH6mMYYJJCcF.json index 481caddf..dd661b1e 100644 --- a/src/packs/domains/domainCard_Voice_of_Reason_t3RRGH6mMYYJJCcF.json +++ b/src/packs/domains/domainCard_Voice_of_Reason_t3RRGH6mMYYJJCcF.json @@ -8,19 +8,24 @@ "domain": "splendor", "recallCost": 1, "level": 3, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784542, - "modifiedTime": 1754268954870, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429699193, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "t3RRGH6mMYYJJCcF", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json b/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json index e4c48b0e..0b32e34d 100644 --- a/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json +++ b/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json @@ -47,6 +47,11 @@ "img": "icons/creatures/invertebrates/spider-pink-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784543, - "modifiedTime": 1754253399849, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427927041, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1ROT08E1UVBwHLAS", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json b/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json index a6013aa6..a4614046 100644 --- a/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json +++ b/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json @@ -42,6 +42,11 @@ "img": "icons/magic/control/buff-flight-wings-runes-purple-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -49,12 +54,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784545, - "modifiedTime": 1754304354572, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428093764, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "anO0arioUy7I5zBg", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json b/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json index 69bc5bc8..57c0fd94 100644 --- a/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json +++ b/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json @@ -71,6 +71,11 @@ "value": 0, "max": "3", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784546, - "modifiedTime": 1754339127606, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429562599, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9dFvcM1i3bxG3BSA", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json b/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json index 269139cf..06eb5b84 100644 --- a/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json +++ b/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json @@ -46,6 +46,11 @@ "img": "icons/magic/control/debuff-energy-hold-levitate-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784547, - "modifiedTime": 1754499199811, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429591650, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "DjnKlZQYaWdQGKcK", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Words_of_Discord_ZjAdi1FSNCDDHI3X.json b/src/packs/domains/domainCard_Words_of_Discord_ZjAdi1FSNCDDHI3X.json index b1e6aaa2..86f046c2 100644 --- a/src/packs/domains/domainCard_Words_of_Discord_ZjAdi1FSNCDDHI3X.json +++ b/src/packs/domains/domainCard_Words_of_Discord_ZjAdi1FSNCDDHI3X.json @@ -87,6 +87,11 @@ "img": "icons/skills/melee/strike-axe-energy-pink.webp", "range": "melee" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784548, - "modifiedTime": 1754341685992, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429205496, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ZjAdi1FSNCDDHI3X", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Wrangle_9DwSxHoUwl8Kxj3n.json b/src/packs/domains/domainCard_Wrangle_9DwSxHoUwl8Kxj3n.json index 76b17134..30e8cb4e 100644 --- a/src/packs/domains/domainCard_Wrangle_9DwSxHoUwl8Kxj3n.json +++ b/src/packs/domains/domainCard_Wrangle_9DwSxHoUwl8Kxj3n.json @@ -57,6 +57,11 @@ "img": "icons/skills/melee/sword-engraved-glow-purple.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784549, - "modifiedTime": 1754252503293, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428352791, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9DwSxHoUwl8Kxj3n", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Zone_of_Protection_lOZaRb4fCVgQsWB5.json b/src/packs/domains/domainCard_Zone_of_Protection_lOZaRb4fCVgQsWB5.json index c712284d..3e5b643c 100644 --- a/src/packs/domains/domainCard_Zone_of_Protection_lOZaRb4fCVgQsWB5.json +++ b/src/packs/domains/domainCard_Zone_of_Protection_lOZaRb4fCVgQsWB5.json @@ -58,19 +58,24 @@ "range": "far" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784549, - "modifiedTime": 1754498786877, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429748542, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "lOZaRb4fCVgQsWB5", "sort": 3400000, diff --git a/src/packs/environments/environment_Abandoned_Grove_pGEdzdLkqYtBhxnG.json b/src/packs/environments/environment_Abandoned_Grove_pGEdzdLkqYtBhxnG.json index 1f1d5722..9e855978 100644 --- a/src/packs/environments/environment_Abandoned_Grove_pGEdzdLkqYtBhxnG.json +++ b/src/packs/environments/environment_Abandoned_Grove_pGEdzdLkqYtBhxnG.json @@ -1,6 +1,6 @@ { "name": "Abandoned Grove", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -27,19 +27,24 @@ "tier": 1, "description": "

A former druidic grove lying fallow and fully reclaimed by nature.

", "type": "exploration", - "impulses": "Draw in the curious, echo the past" + "impulses": "Draw in the curious, echo the past", + "attribution": { + "source": "Daggerheart SRD", + "page": 103, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784553, - "modifiedTime": 1754208922163, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890228, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "pGEdzdLkqYtBhxnG", "sort": 3400000, @@ -55,7 +60,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "AbominationVaults.webp", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Ambushed_uGEdNYERCTJBEjc5.json b/src/packs/environments/environment_Ambushed_uGEdNYERCTJBEjc5.json index a705fa2d..7135bd42 100644 --- a/src/packs/environments/environment_Ambushed_uGEdNYERCTJBEjc5.json +++ b/src/packs/environments/environment_Ambushed_uGEdNYERCTJBEjc5.json @@ -1,6 +1,6 @@ { "name": "Ambushed", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -10,19 +10,24 @@ "tier": 1, "description": "

An ambush is set to catch an unsuspecting party off-guard.

", "type": "event", - "impulses": "Overwhelm, scatter, surround" + "impulses": "Overwhelm, scatter, surround", + "attribution": { + "source": "Daggerheart SRD", + "page": 103, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784553, - "modifiedTime": 1754211171895, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890231, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uGEdNYERCTJBEjc5", "sort": 3400000, @@ -38,7 +43,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json b/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json index 3a8e3092..6510bc5c 100644 --- a/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json +++ b/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json @@ -1,6 +1,6 @@ { "name": "Ambushers", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -10,19 +10,24 @@ "tier": 1, "description": "

An ambush is set by the PCs to catch unsuspecting adversaries off-guard.

", "type": "event", - "impulses": "Escape, group up, protect the most vulnerable" + "impulses": "Escape, group up, protect the most vulnerable", + "attribution": { + "source": "Daggerheart SRD", + "page": 103, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784554, - "modifiedTime": 1754211550898, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890234, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uXZpebPR77YQ1oXI", "sort": 3400000, @@ -38,7 +43,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Burning_Heart_of_the_Woods_oY69NN4rYxoRE4hl.json b/src/packs/environments/environment_Burning_Heart_of_the_Woods_oY69NN4rYxoRE4hl.json index a1949373..5683f6f5 100644 --- a/src/packs/environments/environment_Burning_Heart_of_the_Woods_oY69NN4rYxoRE4hl.json +++ b/src/packs/environments/environment_Burning_Heart_of_the_Woods_oY69NN4rYxoRE4hl.json @@ -1,6 +1,6 @@ { "name": "Burning Heart of the Woods", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "MfrIkJK12PAEfbPL", "system": { @@ -32,19 +32,24 @@ "tier": 3, "description": "

Thick indigo ash fills the air around a towering moss-covered tree that burns eternally with flames a sickly shade of blue.

", "type": "exploration", - "impulses": "Beat out an uncanny rhythm for all to follow, corrupt the woods" + "impulses": "Beat out an uncanny rhythm for all to follow, corrupt the woods", + "attribution": { + "source": "Daggerheart SRD", + "page": 108, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784554, - "modifiedTime": 1754218065764, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890258, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "oY69NN4rYxoRE4hl", "sort": 3400000, @@ -60,7 +65,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Bustling_Marketplace_HZKA7hkej7JJY503.json b/src/packs/environments/environment_Bustling_Marketplace_HZKA7hkej7JJY503.json index f68ad8fd..11b458c1 100644 --- a/src/packs/environments/environment_Bustling_Marketplace_HZKA7hkej7JJY503.json +++ b/src/packs/environments/environment_Bustling_Marketplace_HZKA7hkej7JJY503.json @@ -1,6 +1,6 @@ { "name": "Bustling Marketplace", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -25,19 +25,24 @@ "tier": 1, "description": "

The economic heart of the settlement, with local artisans, traveling merchants, and patrons across social classes.

", "type": "social", - "impulses": "Buy low, and sell high, tempt and tantalize with wares from near and far" + "impulses": "Buy low, and sell high, tempt and tantalize with wares from near and far", + "attribution": { + "source": "Daggerheart SRD", + "page": 104, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784554, - "modifiedTime": 1754212085334, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890236, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HZKA7hkej7JJY503", "sort": 3400000, @@ -53,7 +58,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Castle_Siege_1eZ32Esq7rfZOjlu.json b/src/packs/environments/environment_Castle_Siege_1eZ32Esq7rfZOjlu.json index 1739e6bd..88d9096e 100644 --- a/src/packs/environments/environment_Castle_Siege_1eZ32Esq7rfZOjlu.json +++ b/src/packs/environments/environment_Castle_Siege_1eZ32Esq7rfZOjlu.json @@ -1,6 +1,6 @@ { "name": "Castle Siege", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "MfrIkJK12PAEfbPL", "system": { @@ -29,19 +29,24 @@ "tier": 3, "description": "

An active siege with an attacking force fighting to gain entry to a fortified castle.

", "type": "event", - "impulses": "Bleed out the will to fi ght, breach the walls, build tension" + "impulses": "Bleed out the will to fi ght, breach the walls, build tension", + "attribution": { + "source": "Daggerheart SRD", + "page": 109, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784555, - "modifiedTime": 1754218654354, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890261, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1eZ32Esq7rfZOjlu", "sort": 3400000, @@ -57,7 +62,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json b/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json index fe3f3349..d31300b5 100644 --- a/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json +++ b/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json @@ -1,6 +1,6 @@ { "name": "Chaos Realm", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "IKumu5HTLqONLYqb", "system": { @@ -19,19 +19,24 @@ "tier": 4, "description": "

An otherworldly space where the laws of reality are unstable and dangerous.

", "type": "traversal", - "impulses": "Annihilate certainty, consume power, defy logic" + "impulses": "Annihilate certainty, consume power, defy logic", + "attribution": { + "source": "Daggerheart SRD", + "page": 110, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784556, - "modifiedTime": 1754219630584, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890266, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2Z1mKc65LxNk2PqR", "sort": 3400000, @@ -47,7 +52,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json b/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json index 67a6e7ea..43a0f61f 100644 --- a/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json +++ b/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json @@ -1,6 +1,6 @@ { "name": "Cliffside Ascent", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -20,19 +20,24 @@ "tier": 1, "description": "

A steep, rocky cliffside tall enough to make traversal dangerous.

", "type": "traversal", - "impulses": "Cast the unready down to a rocky doom, draw people in with promise of what lies at the top" + "impulses": "Cast the unready down to a rocky doom, draw people in with promise of what lies at the top", + "attribution": { + "source": "Daggerheart SRD", + "page": 104, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784557, - "modifiedTime": 1754212638870, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890238, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "LPpfdlNKqiZIl04w", "sort": 3400000, @@ -48,7 +53,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Cult_Ritual_QAXXiOKBDmCTauHD.json b/src/packs/environments/environment_Cult_Ritual_QAXXiOKBDmCTauHD.json index a1d1ed38..ded1d14f 100644 --- a/src/packs/environments/environment_Cult_Ritual_QAXXiOKBDmCTauHD.json +++ b/src/packs/environments/environment_Cult_Ritual_QAXXiOKBDmCTauHD.json @@ -1,6 +1,6 @@ { "name": "Cult Ritual", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "XMeecO3IRvu5ck6F", "system": { @@ -20,19 +20,24 @@ "tier": 2, "description": "

A Fallen cult assembles around a sigil of the defeated gods and a bonfire that burns a sickly shade of green.

", "type": "event", - "impulses": "Profane the land, unite the Mortal Realm with the Circles Below" + "impulses": "Profane the land, unite the Mortal Realm with the Circles Below", + "attribution": { + "source": "Daggerheart SRD", + "page": 106, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784557, - "modifiedTime": 1754215595854, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890248, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "QAXXiOKBDmCTauHD", "sort": 3400000, @@ -48,7 +53,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json b/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json index c0b9e8e8..b924328f 100644 --- a/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json +++ b/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json @@ -1,6 +1,6 @@ { "name": "Divine Usurpation", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "IKumu5HTLqONLYqb", "system": { @@ -21,19 +21,24 @@ "tier": 4, "description": "

A massive ritual designed to breach the gates of the Hallows Above and unseat the New Gods themselves.

", "type": "event", - "impulses": "Collect power, overawe, silence dissent" + "impulses": "Collect power, overawe, silence dissent", + "attribution": { + "source": "Daggerheart SRD", + "page": 110, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784558, - "modifiedTime": 1754220432059, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890271, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "4DLYez7VbMCFDAuZ", "sort": 3400000, @@ -49,7 +54,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json b/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json index 745414dc..8eed0247 100644 --- a/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json +++ b/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json @@ -1,6 +1,6 @@ { "name": "Hallowed Temple", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "XMeecO3IRvu5ck6F", "system": { @@ -19,19 +19,24 @@ "tier": 2, "description": "

A bustling but well-kept temple that provides healing and hosts regular services, overseen by a priest or seraph.

", "type": "social", - "impulses": "Connect the Mortal Realm with the Hallows Above, display the power of the divine, provide aid and succor to the faithful" + "impulses": "Connect the Mortal Realm with the Hallows Above, display the power of the divine, provide aid and succor to the faithful", + "attribution": { + "source": "Daggerheart SRD", + "page": 107, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784558, - "modifiedTime": 1754216032747, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890251, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dsA6j69AnaJhUyqH", "sort": 3400000, @@ -47,7 +52,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Haunted_City_OzYbizKraK92FDiI.json b/src/packs/environments/environment_Haunted_City_OzYbizKraK92FDiI.json index 11c98e66..0653ae50 100644 --- a/src/packs/environments/environment_Haunted_City_OzYbizKraK92FDiI.json +++ b/src/packs/environments/environment_Haunted_City_OzYbizKraK92FDiI.json @@ -1,6 +1,6 @@ { "name": "Haunted City", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "XMeecO3IRvu5ck6F", "system": { @@ -19,19 +19,24 @@ "tier": 2, "description": "

An abandoned city populated by the restless spirits of eras past.

", "type": "exploration", - "impulses": "Misdirect and disorient, replay apocalypses both public and personal" + "impulses": "Misdirect and disorient, replay apocalypses both public and personal", + "attribution": { + "source": "Daggerheart SRD", + "page": 107, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784559, - "modifiedTime": 1754216926766, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890253, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "OzYbizKraK92FDiI", "sort": 3400000, @@ -47,7 +52,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json b/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json index ab2c1ef8..1a9888f1 100644 --- a/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json +++ b/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json @@ -1,6 +1,6 @@ { "name": "Imperial Court", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "IKumu5HTLqONLYqb", "system": { @@ -21,19 +21,24 @@ "tier": 4, "description": "

The majestic domain of a powerful empire, lavishly appointed with stolen treasures.

", "type": "social", - "impulses": "Justify and perpetuate imperial rule, seduce rivals with promises of power and comfort" + "impulses": "Justify and perpetuate imperial rule, seduce rivals with promises of power and comfort", + "attribution": { + "source": "Daggerheart SRD", + "page": 111, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784559, - "modifiedTime": 1754220962410, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890268, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jr1xAoXzVwVblzxI", "sort": 3400000, @@ -49,7 +54,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Local_Tavern_cM4X81DOyvxNIi52.json b/src/packs/environments/environment_Local_Tavern_cM4X81DOyvxNIi52.json index cb440aab..1bc1c17f 100644 --- a/src/packs/environments/environment_Local_Tavern_cM4X81DOyvxNIi52.json +++ b/src/packs/environments/environment_Local_Tavern_cM4X81DOyvxNIi52.json @@ -1,6 +1,6 @@ { "name": "Local Tavern", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -33,19 +33,24 @@ "tier": 1, "description": "

A lively tavern that serves as the social hub for its town.

", "type": "social", - "impulses": "Provide opportunities for adventurers, nurture community" + "impulses": "Provide opportunities for adventurers, nurture community", + "attribution": { + "source": "Daggerheart SRD", + "page": 105, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784561, - "modifiedTime": 1754213299544, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890240, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "cM4X81DOyvxNIi52", "sort": 3400000, @@ -61,7 +66,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json b/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json index e2a31c41..85e442e1 100644 --- a/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json +++ b/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json @@ -1,6 +1,6 @@ { "name": "Mountain Pass", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "XMeecO3IRvu5ck6F", "system": { @@ -27,19 +27,24 @@ "tier": 2, "description": "

Stony peaks that pierce the clouds, with a twisting path winding its way up and over through many switchbacks.

", "type": "traversal", - "impulses": "Exact a chilling toll in supplies and stamina, reveal magical tampering, slow down travel" + "impulses": "Exact a chilling toll in supplies and stamina, reveal magical tampering, slow down travel", + "attribution": { + "source": "Daggerheart SRD", + "page": 108, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784562, - "modifiedTime": 1754217303533, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890256, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "acMu9wJrMZZzLSTJ", "sort": 3400000, @@ -55,7 +60,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json b/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json index 5afc9db6..dc76c382 100644 --- a/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json +++ b/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json @@ -1,6 +1,6 @@ { "name": "Necromancer’s Ossuary", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "IKumu5HTLqONLYqb", "system": { @@ -18,19 +18,24 @@ "tier": 4, "description": "

A dusty crypt with a library, twisting corridors, and abundant sarcophagi, spattered with the blood of ill-fated invaders.

", "type": "exploration", - "impulses": "Confound intruders, delve into secrets best left buried, manifest unlife, unleash a tide of undead" + "impulses": "Confound intruders, delve into secrets best left buried, manifest unlife, unleash a tide of undead", + "attribution": { + "source": "Daggerheart SRD", + "page": 111, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784563, - "modifiedTime": 1754221404218, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890275, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "h3KyRL7AshhLAmcH", "sort": 3400000, @@ -46,7 +51,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json b/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json index 8e58b6a8..ef961283 100644 --- a/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json +++ b/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json @@ -1,6 +1,6 @@ { "name": "Outpost Town", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -29,19 +29,24 @@ "tier": 1, "description": "

A small town on the outskirts of a nation or region, close to a dungeon, tombs, or other adventuring destinations.

", "type": "social", - "impulses": "Drive the desperate to certain doom, profi t off of ragged hope" + "impulses": "Drive the desperate to certain doom, profi t off of ragged hope", + "attribution": { + "source": "Daggerheart SRD", + "page": 105, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784564, - "modifiedTime": 1754213845896, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890243, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YezryR32uo39xRxW", "sort": 3400000, @@ -57,7 +62,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json b/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json index 3db3d3b6..abd838dd 100644 --- a/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json +++ b/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json @@ -1,6 +1,6 @@ { "name": "Pitched Battle", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "MfrIkJK12PAEfbPL", "system": { @@ -29,19 +29,24 @@ "tier": 3, "description": "

A massive combat between two large groups of armed combatants.

", "type": "event", - "impulses": "Seize people, land, and wealth, spill blood for greed and glory" + "impulses": "Seize people, land, and wealth, spill blood for greed and glory", + "attribution": { + "source": "Daggerheart SRD", + "page": 109, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784565, - "modifiedTime": 1754219040722, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890264, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "EWD3ZsLoK6VMVOf7", "sort": 3400000, @@ -57,7 +62,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json b/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json index 211c619a..47ec74e2 100644 --- a/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json +++ b/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json @@ -1,6 +1,6 @@ { "name": "Raging River", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -29,19 +29,24 @@ "tier": 1, "description": "

A swift-moving river without a bridge crossing, deep enough to sweep away most people.

", "type": "traversal", - "impulses": "Bar crossing, carry away the unready, divide the land" + "impulses": "Bar crossing, carry away the unready, divide the land", + "attribution": { + "source": "Daggerheart SRD", + "page": 106, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784565, - "modifiedTime": 1754214189395, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890245, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "t4cdqTfzcqP3H1vJ", "sort": 3400000, @@ -57,7 +62,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/items/armors/armor_Advanced_Chainmail_Armor_LzLOJ9EVaHWAjoq9.json b/src/packs/items/armors/armor_Advanced_Chainmail_Armor_LzLOJ9EVaHWAjoq9.json index 96a2edd7..c5155cb4 100644 --- a/src/packs/items/armors/armor_Advanced_Chainmail_Armor_LzLOJ9EVaHWAjoq9.json +++ b/src/packs/items/armors/armor_Advanced_Chainmail_Armor_LzLOJ9EVaHWAjoq9.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 13, "severe": 31 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807810859, - "modifiedTime": 1753807844642, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431740693, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!LzLOJ9EVaHWAjoq9" } diff --git a/src/packs/items/armors/armor_Advanced_Full_Plate_Armor_crIbCb9NZ4K0VpoU.json b/src/packs/items/armors/armor_Advanced_Full_Plate_Armor_crIbCb9NZ4K0VpoU.json index 4d97b8bb..4946d733 100644 --- a/src/packs/items/armors/armor_Advanced_Full_Plate_Armor_crIbCb9NZ4K0VpoU.json +++ b/src/packs/items/armors/armor_Advanced_Full_Plate_Armor_crIbCb9NZ4K0VpoU.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 15, "severe": 35 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809204693, - "modifiedTime": 1753809243349, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431745995, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!crIbCb9NZ4K0VpoU" } diff --git a/src/packs/items/armors/armor_Advanced_Gambeson_Armor_epkAmlZVk7HOfUUT.json b/src/packs/items/armors/armor_Advanced_Gambeson_Armor_epkAmlZVk7HOfUUT.json index 032ebe6d..74ea9cf7 100644 --- a/src/packs/items/armors/armor_Advanced_Gambeson_Armor_epkAmlZVk7HOfUUT.json +++ b/src/packs/items/armors/armor_Advanced_Gambeson_Armor_epkAmlZVk7HOfUUT.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 9, "severe": 23 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807704469, - "modifiedTime": 1753807740230, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431751044, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!epkAmlZVk7HOfUUT" } diff --git a/src/packs/items/armors/armor_Advanced_Leather_Armor_itSOp2GCyem0f7oM.json b/src/packs/items/armors/armor_Advanced_Leather_Armor_itSOp2GCyem0f7oM.json index ef9d64f9..2c2699a6 100644 --- a/src/packs/items/armors/armor_Advanced_Leather_Armor_itSOp2GCyem0f7oM.json +++ b/src/packs/items/armors/armor_Advanced_Leather_Armor_itSOp2GCyem0f7oM.json @@ -18,6 +18,11 @@ "baseThresholds": { "major": 11, "severe": 27 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -31,12 +36,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807744573, - "modifiedTime": 1753807795515, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431757894, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!itSOp2GCyem0f7oM" } diff --git a/src/packs/items/armors/armor_Bellamoi_Fine_Armor_WuoVwZA53XRAIt6d.json b/src/packs/items/armors/armor_Bellamoi_Fine_Armor_WuoVwZA53XRAIt6d.json index fb4bad0e..a3d805ed 100644 --- a/src/packs/items/armors/armor_Bellamoi_Fine_Armor_WuoVwZA53XRAIt6d.json +++ b/src/packs/items/armors/armor_Bellamoi_Fine_Armor_WuoVwZA53XRAIt6d.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 11, "severe": 27 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807855787, - "modifiedTime": 1753807887685, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431768795, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WuoVwZA53XRAIt6d" } diff --git a/src/packs/items/armors/armor_Bladefare_Armor_mNN6pvcsS10ChrWF.json b/src/packs/items/armors/armor_Bladefare_Armor_mNN6pvcsS10ChrWF.json index 60521ffc..2c4d0b5b 100644 --- a/src/packs/items/armors/armor_Bladefare_Armor_mNN6pvcsS10ChrWF.json +++ b/src/packs/items/armors/armor_Bladefare_Armor_mNN6pvcsS10ChrWF.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 16, "severe": 39 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753808752024, - "modifiedTime": 1753808787752, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431763662, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mNN6pvcsS10ChrWF" } diff --git a/src/packs/items/armors/armor_Chainmail_Armor_haULhuEg37zUUvhb.json b/src/packs/items/armors/armor_Chainmail_Armor_haULhuEg37zUUvhb.json index f7d07f32..2c2df8c9 100644 --- a/src/packs/items/armors/armor_Chainmail_Armor_haULhuEg37zUUvhb.json +++ b/src/packs/items/armors/armor_Chainmail_Armor_haULhuEg37zUUvhb.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 7, "severe": 15 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805286605, - "modifiedTime": 1753805329039, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431648072, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!haULhuEg37zUUvhb" } diff --git a/src/packs/items/armors/armor_Channeling_Armor_vMJxEWz1srfwMsoj.json b/src/packs/items/armors/armor_Channeling_Armor_vMJxEWz1srfwMsoj.json index 3d795985..efae1b77 100644 --- a/src/packs/items/armors/armor_Channeling_Armor_vMJxEWz1srfwMsoj.json +++ b/src/packs/items/armors/armor_Channeling_Armor_vMJxEWz1srfwMsoj.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 13, "severe": 36 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809433880, - "modifiedTime": 1753809460722, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431807296, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!vMJxEWz1srfwMsoj" } diff --git a/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json b/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json index 52002171..33924bf9 100644 --- a/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json +++ b/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json @@ -56,6 +56,11 @@ "baseThresholds": { "major": 11, "severe": 27 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -69,12 +74,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807902750, - "modifiedTime": 1753809495490, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431776878, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mdQ69eFHyAQUDmE7" } diff --git a/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json b/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json index 9a6b1baa..4b08aa31 100644 --- a/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json +++ b/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json @@ -80,6 +80,11 @@ "baseThresholds": { "major": 13, "severe": 36 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -93,12 +98,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809264956, - "modifiedTime": 1753809422818, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431812730, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hAY6UgdGT7dj22Pr" } diff --git a/src/packs/items/armors/armor_Elundrian_Chain_Mail_Q6LxmtFetDDkoZVZ.json b/src/packs/items/armors/armor_Elundrian_Chain_Mail_Q6LxmtFetDDkoZVZ.json index 0825a7a1..8a395b4a 100644 --- a/src/packs/items/armors/armor_Elundrian_Chain_Mail_Q6LxmtFetDDkoZVZ.json +++ b/src/packs/items/armors/armor_Elundrian_Chain_Mail_Q6LxmtFetDDkoZVZ.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 9, "severe": 21 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805557786, - "modifiedTime": 1753805605453, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431672675, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Q6LxmtFetDDkoZVZ" } diff --git a/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json b/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json index 3c471a93..2dfb8b29 100644 --- a/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json +++ b/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json @@ -79,6 +79,11 @@ "baseThresholds": { "major": 13, "severe": 36 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -94,10 +99,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753809470138, - "modifiedTime": 1754853048367, - "lastModifiedBy": "7zAk0CoP90J7ebn0" + "modifiedTime": 1755431817865, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bcQUh4QG3qFX0Vx6" } diff --git a/src/packs/items/armors/armor_Full_Fortified_Armor_7emTSt6nhZuTlvt5.json b/src/packs/items/armors/armor_Full_Fortified_Armor_7emTSt6nhZuTlvt5.json index 73ecfc96..7b2820b4 100644 --- a/src/packs/items/armors/armor_Full_Fortified_Armor_7emTSt6nhZuTlvt5.json +++ b/src/packs/items/armors/armor_Full_Fortified_Armor_7emTSt6nhZuTlvt5.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 15, "severe": 40 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809653710, - "modifiedTime": 1753809691935, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431822964, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!7emTSt6nhZuTlvt5" } diff --git a/src/packs/items/armors/armor_Full_Plate_Armor_UdUJNa31WxFW2noa.json b/src/packs/items/armors/armor_Full_Plate_Armor_UdUJNa31WxFW2noa.json index 4b45cf7e..14d9257d 100644 --- a/src/packs/items/armors/armor_Full_Plate_Armor_UdUJNa31WxFW2noa.json +++ b/src/packs/items/armors/armor_Full_Plate_Armor_UdUJNa31WxFW2noa.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 8, "severe": 17 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805338471, - "modifiedTime": 1753805365355, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431655405, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!UdUJNa31WxFW2noa" } diff --git a/src/packs/items/armors/armor_Gambeson_Armor_yJFp1bfpecDcStVK.json b/src/packs/items/armors/armor_Gambeson_Armor_yJFp1bfpecDcStVK.json index c51838e0..c02ddd6f 100644 --- a/src/packs/items/armors/armor_Gambeson_Armor_yJFp1bfpecDcStVK.json +++ b/src/packs/items/armors/armor_Gambeson_Armor_yJFp1bfpecDcStVK.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 5, "severe": 11 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753804995685, - "modifiedTime": 1753805399875, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431660555, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!yJFp1bfpecDcStVK" } diff --git a/src/packs/items/armors/armor_Harrowbone_Armor_dvyQeUVRLc9y6rnt.json b/src/packs/items/armors/armor_Harrowbone_Armor_dvyQeUVRLc9y6rnt.json index 85dd7864..efb272fe 100644 --- a/src/packs/items/armors/armor_Harrowbone_Armor_dvyQeUVRLc9y6rnt.json +++ b/src/packs/items/armors/armor_Harrowbone_Armor_dvyQeUVRLc9y6rnt.json @@ -72,6 +72,11 @@ "baseThresholds": { "major": 9, "severe": 21 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -85,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805616349, - "modifiedTime": 1753807254838, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431677692, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dvyQeUVRLc9y6rnt" } diff --git a/src/packs/items/armors/armor_Improved_Chainmail_Armor_K5WkjS0NGqHYmhU3.json b/src/packs/items/armors/armor_Improved_Chainmail_Armor_K5WkjS0NGqHYmhU3.json index 62648557..e39f7ebf 100644 --- a/src/packs/items/armors/armor_Improved_Chainmail_Armor_K5WkjS0NGqHYmhU3.json +++ b/src/packs/items/armors/armor_Improved_Chainmail_Armor_K5WkjS0NGqHYmhU3.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 11, "severe": 24 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805490635, - "modifiedTime": 1753805512828, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431684575, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!K5WkjS0NGqHYmhU3" } diff --git a/src/packs/items/armors/armor_Improved_Full_Plate_Armor_9f7RozpPTqrzJS1m.json b/src/packs/items/armors/armor_Improved_Full_Plate_Armor_9f7RozpPTqrzJS1m.json index 7e5e36df..3d2355fc 100644 --- a/src/packs/items/armors/armor_Improved_Full_Plate_Armor_9f7RozpPTqrzJS1m.json +++ b/src/packs/items/armors/armor_Improved_Full_Plate_Armor_9f7RozpPTqrzJS1m.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 13, "severe": 28 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805522506, - "modifiedTime": 1753805544375, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431689873, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9f7RozpPTqrzJS1m" } diff --git a/src/packs/items/armors/armor_Improved_Gambeson_Armor_jphnMZjnS2FkOH3s.json b/src/packs/items/armors/armor_Improved_Gambeson_Armor_jphnMZjnS2FkOH3s.json index 8c6a8f2c..b16a0219 100644 --- a/src/packs/items/armors/armor_Improved_Gambeson_Armor_jphnMZjnS2FkOH3s.json +++ b/src/packs/items/armors/armor_Improved_Gambeson_Armor_jphnMZjnS2FkOH3s.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 7, "severe": 16 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805377869, - "modifiedTime": 1753805418921, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431695440, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jphnMZjnS2FkOH3s" } diff --git a/src/packs/items/armors/armor_Improved_Leather_Armor_t91M61pSCMKStTNt.json b/src/packs/items/armors/armor_Improved_Leather_Armor_t91M61pSCMKStTNt.json index 4d225093..9794cf70 100644 --- a/src/packs/items/armors/armor_Improved_Leather_Armor_t91M61pSCMKStTNt.json +++ b/src/packs/items/armors/armor_Improved_Leather_Armor_t91M61pSCMKStTNt.json @@ -18,6 +18,11 @@ "baseThresholds": { "major": 9, "severe": 20 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -31,12 +36,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805428821, - "modifiedTime": 1753805482906, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431701475, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!t91M61pSCMKStTNt" } diff --git a/src/packs/items/armors/armor_Irontree_Breastplate_Armor_tzZntboNtHL5C6VM.json b/src/packs/items/armors/armor_Irontree_Breastplate_Armor_tzZntboNtHL5C6VM.json index 71ad95a9..4fa628b4 100644 --- a/src/packs/items/armors/armor_Irontree_Breastplate_Armor_tzZntboNtHL5C6VM.json +++ b/src/packs/items/armors/armor_Irontree_Breastplate_Armor_tzZntboNtHL5C6VM.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 9, "severe": 20 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -90,12 +95,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807283589, - "modifiedTime": 1753807455497, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431706974, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tzZntboNtHL5C6VM" } diff --git a/src/packs/items/armors/armor_Leather_Armor_nibfdNtp2PtxvbVz.json b/src/packs/items/armors/armor_Leather_Armor_nibfdNtp2PtxvbVz.json index 1d87a030..32e577c0 100644 --- a/src/packs/items/armors/armor_Leather_Armor_nibfdNtp2PtxvbVz.json +++ b/src/packs/items/armors/armor_Leather_Armor_nibfdNtp2PtxvbVz.json @@ -18,6 +18,11 @@ "baseThresholds": { "major": 6, "severe": 13 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -31,12 +36,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805219679, - "modifiedTime": 1753805275427, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431666089, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nibfdNtp2PtxvbVz" } diff --git a/src/packs/items/armors/armor_Legendary_Chainmail_Armor_EsIN5OLKe9ZYFNXZ.json b/src/packs/items/armors/armor_Legendary_Chainmail_Armor_EsIN5OLKe9ZYFNXZ.json index 1192b4d5..b61b613c 100644 --- a/src/packs/items/armors/armor_Legendary_Chainmail_Armor_EsIN5OLKe9ZYFNXZ.json +++ b/src/packs/items/armors/armor_Legendary_Chainmail_Armor_EsIN5OLKe9ZYFNXZ.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 15, "severe": 40 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809118507, - "modifiedTime": 1753809151454, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431827865, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!EsIN5OLKe9ZYFNXZ" } diff --git a/src/packs/items/armors/armor_Legendary_Full_Plate_Armor_SXWjUR2aUR6bYvdl.json b/src/packs/items/armors/armor_Legendary_Full_Plate_Armor_SXWjUR2aUR6bYvdl.json index 5b2d4a97..1459709a 100644 --- a/src/packs/items/armors/armor_Legendary_Full_Plate_Armor_SXWjUR2aUR6bYvdl.json +++ b/src/packs/items/armors/armor_Legendary_Full_Plate_Armor_SXWjUR2aUR6bYvdl.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 17, "severe": 44 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809163051, - "modifiedTime": 1753809225793, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431832881, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SXWjUR2aUR6bYvdl" } diff --git a/src/packs/items/armors/armor_Legendary_Gambeson_Armor_c6tMXz4rPf9ioQrf.json b/src/packs/items/armors/armor_Legendary_Gambeson_Armor_c6tMXz4rPf9ioQrf.json index e05e5f32..7b425421 100644 --- a/src/packs/items/armors/armor_Legendary_Gambeson_Armor_c6tMXz4rPf9ioQrf.json +++ b/src/packs/items/armors/armor_Legendary_Gambeson_Armor_c6tMXz4rPf9ioQrf.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 11, "severe": 32 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809031184, - "modifiedTime": 1753809064934, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431838049, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!c6tMXz4rPf9ioQrf" } diff --git a/src/packs/items/armors/armor_Legendary_Leather_Armor_Tptgl5WOj76TyFn7.json b/src/packs/items/armors/armor_Legendary_Leather_Armor_Tptgl5WOj76TyFn7.json index 9dc82529..c456bc79 100644 --- a/src/packs/items/armors/armor_Legendary_Leather_Armor_Tptgl5WOj76TyFn7.json +++ b/src/packs/items/armors/armor_Legendary_Leather_Armor_Tptgl5WOj76TyFn7.json @@ -18,6 +18,11 @@ "baseThresholds": { "major": 13, "severe": 36 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -31,12 +36,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809078323, - "modifiedTime": 1753809106203, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431845786, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Tptgl5WOj76TyFn7" } diff --git a/src/packs/items/armors/armor_Monett_s_Cloak_AQzU2RsqS5V5bd1v.json b/src/packs/items/armors/armor_Monett_s_Cloak_AQzU2RsqS5V5bd1v.json index 0cc3415d..ed64499f 100644 --- a/src/packs/items/armors/armor_Monett_s_Cloak_AQzU2RsqS5V5bd1v.json +++ b/src/packs/items/armors/armor_Monett_s_Cloak_AQzU2RsqS5V5bd1v.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 16, "severe": 39 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753808797896, - "modifiedTime": 1753808820623, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431781312, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!AQzU2RsqS5V5bd1v" } diff --git a/src/packs/items/armors/armor_Rosewild_Armor_tN8kAeBvNKM3EBFo.json b/src/packs/items/armors/armor_Rosewild_Armor_tN8kAeBvNKM3EBFo.json index a0cb99f1..48eb7fde 100644 --- a/src/packs/items/armors/armor_Rosewild_Armor_tN8kAeBvNKM3EBFo.json +++ b/src/packs/items/armors/armor_Rosewild_Armor_tN8kAeBvNKM3EBFo.json @@ -48,6 +48,11 @@ "baseThresholds": { "major": 11, "severe": 23 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -61,12 +66,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807654078, - "modifiedTime": 1753807692793, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431712574, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tN8kAeBvNKM3EBFo" } diff --git a/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json b/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json index 33fef2f5..ab892847 100644 --- a/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json +++ b/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json @@ -56,6 +56,11 @@ "baseThresholds": { "major": 17, "severe": 43 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -69,12 +74,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753808832397, - "modifiedTime": 1753809018449, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431788295, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!P4qAEDJUoNLgVRsA" } diff --git a/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json b/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json index df5cb28f..1edf8517 100644 --- a/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json +++ b/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json @@ -56,6 +56,11 @@ "baseThresholds": { "major": 9, "severe": 20 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -69,12 +74,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807528637, - "modifiedTime": 1753808232404, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431718527, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tHlBUDQC24YMZqd6" } diff --git a/src/packs/items/armors/armor_Savior_Chainmail_8X16lJQ3xltTwynm.json b/src/packs/items/armors/armor_Savior_Chainmail_8X16lJQ3xltTwynm.json index 4d8ccfa6..78689fcf 100644 --- a/src/packs/items/armors/armor_Savior_Chainmail_8X16lJQ3xltTwynm.json +++ b/src/packs/items/armors/armor_Savior_Chainmail_8X16lJQ3xltTwynm.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 18, "severe": 48 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -108,12 +113,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809733405, - "modifiedTime": 1753809762536, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431850849, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!8X16lJQ3xltTwynm" } diff --git a/src/packs/items/armors/armor_Spiked_Plate_Armor_QjwsIhXKqnlvRBMv.json b/src/packs/items/armors/armor_Spiked_Plate_Armor_QjwsIhXKqnlvRBMv.json index 07536704..c744b0b1 100644 --- a/src/packs/items/armors/armor_Spiked_Plate_Armor_QjwsIhXKqnlvRBMv.json +++ b/src/packs/items/armors/armor_Spiked_Plate_Armor_QjwsIhXKqnlvRBMv.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 10, "severe": 25 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753808464678, - "modifiedTime": 1753808691813, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431794279, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QjwsIhXKqnlvRBMv" } diff --git a/src/packs/items/armors/armor_Tyris_Soft_Armor_PSW3BxCGmtLeWOxM.json b/src/packs/items/armors/armor_Tyris_Soft_Armor_PSW3BxCGmtLeWOxM.json index ae9c849b..60da770c 100644 --- a/src/packs/items/armors/armor_Tyris_Soft_Armor_PSW3BxCGmtLeWOxM.json +++ b/src/packs/items/armors/armor_Tyris_Soft_Armor_PSW3BxCGmtLeWOxM.json @@ -48,6 +48,11 @@ "baseThresholds": { "major": 8, "severe": 18 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -61,12 +66,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807607742, - "modifiedTime": 1753807646156, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431725559, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PSW3BxCGmtLeWOxM" } diff --git a/src/packs/items/armors/armor_Veritas_Opal_Armor_OvzgUTYy2RCN85vV.json b/src/packs/items/armors/armor_Veritas_Opal_Armor_OvzgUTYy2RCN85vV.json index 44f644b0..829c3e40 100644 --- a/src/packs/items/armors/armor_Veritas_Opal_Armor_OvzgUTYy2RCN85vV.json +++ b/src/packs/items/armors/armor_Veritas_Opal_Armor_OvzgUTYy2RCN85vV.json @@ -48,6 +48,11 @@ "baseThresholds": { "major": 13, "severe": 36 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -61,12 +66,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809706360, - "modifiedTime": 1753809725217, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431856135, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!OvzgUTYy2RCN85vV" } diff --git a/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json b/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json index 78da26af..e092929a 100644 --- a/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json +++ b/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753590344700, - "modifiedTime": 1754394373835, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432861888, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cfVFmS8vT9dbq9s1" } diff --git a/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json b/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json index 20aeeb50..62049319 100644 --- a/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json +++ b/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json @@ -38,7 +38,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753588973384, - "modifiedTime": 1754394381368, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432710896, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!VlbsCjvvLNfTzNXb" } diff --git a/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json b/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json index 39f74078..9e316540 100644 --- a/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json +++ b/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753587033468, - "modifiedTime": 1754394388974, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432536588, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!JGD3M9hBHtVAA8XP" } diff --git a/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json b/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json index 0913fb6d..e0e2eb55 100644 --- a/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json +++ b/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json @@ -35,7 +35,12 @@ "range": "close" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [ { @@ -89,12 +94,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753592512731, - "modifiedTime": 1754394410769, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755433077981, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!eAXHdzA5qNPldOpn" } diff --git a/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json b/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json index 103b102f..a1b70dc6 100644 --- a/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json +++ b/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589954973, - "modifiedTime": 1754394423870, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432804800, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!pDGzmczoTlKGmKgd" } diff --git a/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json b/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json index 0c33a50e..7519c7ab 100644 --- a/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json +++ b/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753586850134, - "modifiedTime": 1754394431654, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432522101, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!FOPQNqXbiVO0ilYL" } diff --git a/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json b/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json index 61b0fb2f..64984603 100644 --- a/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json +++ b/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753592033119, - "modifiedTime": 1754394442471, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755433017227, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PfQvqopXgvroBklL" } diff --git a/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json b/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json index a03ba6fe..6a199792 100644 --- a/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json +++ b/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753591685990, - "modifiedTime": 1754394450971, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432982976, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!RrIasiMCt6mqVTps" } diff --git a/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json b/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json index c93bb512..76e8833a 100644 --- a/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json +++ b/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753590192533, - "modifiedTime": 1754394463123, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432844735, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!IKMVQ6VwtapwoUim" } diff --git a/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json b/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json index 26e03cb2..46e8f8e6 100644 --- a/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json +++ b/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753587097370, - "modifiedTime": 1754394471027, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432545153, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CVBbFfOY75YwyQsp" } diff --git a/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json b/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json index cdbae661..aa4917eb 100644 --- a/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json +++ b/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json @@ -38,7 +38,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753590692159, - "modifiedTime": 1754394477728, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432898488, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!elsyP6VhHw1JjGSl" } diff --git a/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json b/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json index f158628e..17fc697d 100644 --- a/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json +++ b/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753586944889, - "modifiedTime": 1754394484407, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432529169, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!eeBhZSGLjuNZuJuI" } diff --git a/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json b/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json index b7d636bc..e0b8a28c 100644 --- a/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json +++ b/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753592717630, - "modifiedTime": 1754394494474, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755433085832, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xDnJeF1grkmKck8Q" } diff --git a/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json b/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json index da89cf7a..9389ca85 100644 --- a/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json +++ b/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json @@ -79,7 +79,12 @@ "range": "close" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -93,12 +98,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753591525829, - "modifiedTime": 1753591674720, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432974525, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!wM18PWWW2Ami4fBG" } diff --git a/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json b/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json index fa9da4cf..81c57691 100644 --- a/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json +++ b/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json @@ -61,7 +61,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753590938047, - "modifiedTime": 1754394503675, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432918239, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!eU8VpbWB2NHIL47n" } diff --git a/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json b/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json index 08ba032e..87be77e4 100644 --- a/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json +++ b/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753587185754, - "modifiedTime": 1754394512375, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432555520, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!aWHSO2AqDufi7nL4" } diff --git a/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json b/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json index 79a7a676..e463d5c3 100644 --- a/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json +++ b/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json @@ -124,7 +124,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -138,12 +143,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753591925502, - "modifiedTime": 1754394521825, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755433009779, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!aX6NyxkNzu0LcJpt" } diff --git a/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json b/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json index 7b4816a5..31a5b7fd 100644 --- a/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json +++ b/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753590624634, - "modifiedTime": 1754394529842, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432889504, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!DpxEMpwfasEBpORU" } diff --git a/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json b/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json index 33130fd2..5e770de0 100644 --- a/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json +++ b/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589241094, - "modifiedTime": 1754394537845, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432719146, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Nvbb9mze6o5D0AEg" } diff --git a/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json b/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json index ba7fd727..e2150bed 100644 --- a/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json +++ b/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -101,12 +106,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753587386639, - "modifiedTime": 1754394547827, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432584688, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!8WkhvSzeOmLdnoLJ" } diff --git a/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json b/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json index ad36fe3e..055fd275 100644 --- a/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json +++ b/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [ { @@ -100,12 +105,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753592174440, - "modifiedTime": 1754394557196, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755433036930, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!fl2f3ees8RFMze9t" } diff --git a/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json b/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json index 4279f73c..22afde4d 100644 --- a/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json +++ b/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json @@ -74,7 +74,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +93,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753588839527, - "modifiedTime": 1754394566378, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432692443, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Aruc2NLutWuVIjP1" } diff --git a/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json b/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json index 7aa146d4..9f814705 100644 --- a/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json +++ b/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589998065, - "modifiedTime": 1754394576928, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432817234, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!VSwa1LpQ9PjZKsWF" } diff --git a/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json b/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json index 9747d8d2..75c96d1b 100644 --- a/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json +++ b/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753590388618, - "modifiedTime": 1754394599463, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432869271, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!EhaQCPJ8oiqpRIwB" } diff --git a/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json b/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json index dc86564b..2319ae44 100644 --- a/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json +++ b/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json @@ -81,7 +81,12 @@ "range": "far" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -95,12 +100,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589403341, - "modifiedTime": 1754394607830, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432739380, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nQTo6mNoPTEVBtkm" } diff --git a/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json b/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json index 9b1ac237..1ad9bdb4 100644 --- a/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json +++ b/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -101,12 +106,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753588170670, - "modifiedTime": 1754394620213, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432643893, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BqBWXXe9T07AMV4u" } diff --git a/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json b/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json index df45fcf2..cff7849b 100644 --- a/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json +++ b/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json @@ -61,7 +61,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753591372075, - "modifiedTime": 1754394648049, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432964594, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!yUol6M5b8jsbk9za" } diff --git a/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json b/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json index bbe9e1a4..352c229d 100644 --- a/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json +++ b/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753588566489, - "modifiedTime": 1754394659649, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432674260, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!c2putn9apuurJhWX" } diff --git a/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json b/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json index 02a13b6c..17a2992e 100644 --- a/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json +++ b/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753592240392, - "modifiedTime": 1754394668583, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755433061047, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nL9IALzm9BNi5oSt" } diff --git a/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json b/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json index ff722381..002bd46d 100644 --- a/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json +++ b/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json @@ -79,7 +79,12 @@ "range": "far" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -93,12 +98,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753590515261, - "modifiedTime": 1754394676288, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432877237, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!AA7bmiwv00lshPrC" } diff --git a/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json b/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json index 63b3dfbf..127bcd72 100644 --- a/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json +++ b/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589747286, - "modifiedTime": 1754394684950, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432778983, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CCPFm5iXXwvyYYwR" } diff --git a/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json b/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json index 58b988f9..90d28bc8 100644 --- a/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json +++ b/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589623872, - "modifiedTime": 1754394694337, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432764001, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mnyQDRtngWWQeRXF" } diff --git a/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json b/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json index 65c01549..8d5d83c6 100644 --- a/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json +++ b/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589816684, - "modifiedTime": 1754394702935, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432785816, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!IJLAUlQymbSjzsri" } diff --git a/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json b/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json index ff85d8ed..dfab73ea 100644 --- a/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json +++ b/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589675185, - "modifiedTime": 1754394710253, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432772014, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!80s1FLmTLtohZ5GH" } diff --git a/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json b/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json index d2b26b03..c51237fc 100644 --- a/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json +++ b/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589874661, - "modifiedTime": 1754394718504, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432794986, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SDdv1G2veMLKrxcJ" } diff --git a/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json b/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json index 454373f8..49d0f6f7 100644 --- a/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json +++ b/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json @@ -74,7 +74,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +93,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753591046168, - "modifiedTime": 1754394726288, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432927907, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cM7pHe8bBAxSZ2xR" } diff --git a/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json b/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json index 12ce1a3d..f28faa25 100644 --- a/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json +++ b/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json @@ -74,7 +74,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +93,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753591113317, - "modifiedTime": 1754394330048, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432935058, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!I4cQ03xbxnc81EGa" } diff --git a/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json b/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json index a88a1c48..80dcead1 100644 --- a/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json +++ b/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589545730, - "modifiedTime": 1754394734536, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432751630, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!yK6eEDUrsPbZA8G0" } diff --git a/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json b/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json index 8e6ebe0a..bc7bb074 100644 --- a/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json +++ b/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json @@ -74,7 +74,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +93,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753587253431, - "modifiedTime": 1754394742922, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432566654, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tPfKtKRRjv8qdSqy" } diff --git a/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json b/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json index b8944384..b4bd2a2c 100644 --- a/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json +++ b/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json @@ -74,7 +74,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +93,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753587324465, - "modifiedTime": 1754394346717, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432574155, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!b6vGSPFWOlzZZDLO" } diff --git a/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json b/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json index caa7a36d..1415d195 100644 --- a/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json +++ b/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json @@ -38,7 +38,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -52,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753592792213, - "modifiedTime": 1754394753189, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755433095534, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!UFQVwgYOUZ88UxcH" } diff --git a/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json b/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json index 5c6bfa94..ce16c984 100644 --- a/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json +++ b/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json @@ -43,7 +43,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -102,12 +107,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753588254032, - "modifiedTime": 1754394761890, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432657276, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!f1NHVSIHJJCIOaBl" } diff --git a/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json b/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json index 1201b838..f720881e 100644 --- a/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json +++ b/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -101,12 +106,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753590241722, - "modifiedTime": 1754394769155, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432854453, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Zsh2AvZr8EkGtLyw" } diff --git a/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json b/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json index 2e3f60d4..38ef8357 100644 --- a/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json +++ b/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753591168468, - "modifiedTime": 1754394777490, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432944044, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!qr1bosjFcUfuwq4B" } diff --git a/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json b/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json index 990cb6eb..41b29bdf 100644 --- a/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json +++ b/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -100,12 +105,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753588038000, - "modifiedTime": 1754394786974, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432626825, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dvL8oaxpEF6jKvYN" } diff --git a/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json b/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json index 41408713..e14b5524 100644 --- a/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json +++ b/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -101,12 +106,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753590061810, - "modifiedTime": 1754394793758, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432828838, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!s2Exl2XFuoOhtIov" } diff --git a/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json b/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json index 8488df22..68681ddd 100644 --- a/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json +++ b/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753589306667, - "modifiedTime": 1754394802909, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432726696, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!yJkwz4AP6yhGo8Vj" } diff --git a/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json b/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json index 95e84b30..f2336545 100644 --- a/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json +++ b/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [ { @@ -100,12 +105,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753592077792, - "modifiedTime": 1754394810891, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755433027028, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!HGixKenQwhyRAYNk" } diff --git a/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json b/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json index 9ac76466..a397074b 100644 --- a/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json +++ b/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json @@ -75,7 +75,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -89,12 +94,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753591837472, - "modifiedTime": 1754394819077, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432997515, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!XZavUVlHEvE2srEt" } diff --git a/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json b/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json index 5edcef3d..86879588 100644 --- a/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json +++ b/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json @@ -83,7 +83,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -97,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753588752841, - "modifiedTime": 1754394825942, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432682259, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cg6VtQ0eVZjDdcK0" } diff --git a/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json b/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json index 3fc1c15d..8837f815 100644 --- a/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json +++ b/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json @@ -74,7 +74,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +93,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753588904835, - "modifiedTime": 1754394357617, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432700497, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hf3k1POoVSooJyN2" } diff --git a/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json b/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json index cd30d320..7d6bf0cd 100644 --- a/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json +++ b/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json @@ -61,7 +61,12 @@ "range": "veryFar" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753592933782, - "modifiedTime": 1754394853714, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755433102382, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!y4c1jrlHrf0wBWOq" } diff --git a/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json b/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json index b28dd0c7..3849ac0d 100644 --- a/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json +++ b/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753585993187, - "modifiedTime": 1754394862377, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432512018, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!lNtcrkgFGOJNaroE" } diff --git a/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json b/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json index d9e28567..3ee1ec60 100644 --- a/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json +++ b/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json @@ -54,7 +54,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753590791260, - "modifiedTime": 1754394871161, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432908523, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!kwexUzdM9wm1Qums" } diff --git a/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json b/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json index 25780390..8dac2f79 100644 --- a/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json +++ b/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json @@ -140,7 +140,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -154,12 +159,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753592391195, - "modifiedTime": 1754394899780, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755433069335, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GrDrRqWgv7gvl9vn" } diff --git a/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json b/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json index 33e77c66..ab941d10 100644 --- a/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json +++ b/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json @@ -81,7 +81,12 @@ "range": "far" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -95,12 +100,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753587732694, - "modifiedTime": 1754394908763, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432611972, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mUepnLbkvFk0ha4Z" } diff --git a/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json b/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json index 20d2ddea..aef91404 100644 --- a/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json +++ b/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json @@ -75,7 +75,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -89,12 +94,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753587484164, - "modifiedTime": 1754394924546, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432594538, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hvy5BkG3F6iOIXTx" } diff --git a/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json b/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json index b65c1dec..56957a44 100644 --- a/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json +++ b/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json @@ -30,7 +30,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753588345314, - "modifiedTime": 1754394933247, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432665859, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Nwv5ydGf0MWnzq1n" } diff --git a/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json b/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json index 3f318842..26dc7ede 100644 --- a/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json +++ b/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753587590537, - "modifiedTime": 1754394940997, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432602190, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!VqEX5YwK5oL3r1t6" } diff --git a/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json b/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json index f07a6fc9..32552f86 100644 --- a/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json +++ b/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json @@ -35,7 +35,12 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753591283853, - "modifiedTime": 1754394949465, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432952411, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!n10vozlmosVR6lo4" } diff --git a/src/packs/items/loot/loot_Airblade_Charm_cTYvyaSKBxosM9Y9.json b/src/packs/items/loot/loot_Airblade_Charm_cTYvyaSKBxosM9Y9.json index fbfe3800..3f368be7 100644 --- a/src/packs/items/loot/loot_Airblade_Charm_cTYvyaSKBxosM9Y9.json +++ b/src/packs/items/loot/loot_Airblade_Charm_cTYvyaSKBxosM9Y9.json @@ -29,6 +29,11 @@ "img": "icons/equipment/neck/amulet-carved-stone-spiral-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -43,12 +48,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638435202, - "modifiedTime": 1753638500393, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432212303, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cTYvyaSKBxosM9Y9" } diff --git a/src/packs/items/loot/loot_Alistair_s_Torch_MeEg57T6MKpw3sme.json b/src/packs/items/loot/loot_Alistair_s_Torch_MeEg57T6MKpw3sme.json index 8e77f2bb..dc8c30e4 100644 --- a/src/packs/items/loot/loot_Alistair_s_Torch_MeEg57T6MKpw3sme.json +++ b/src/packs/items/loot/loot_Alistair_s_Torch_MeEg57T6MKpw3sme.json @@ -6,7 +6,12 @@ "system": { "description": "

You can light this magic torch at will. The flame’s light fills a much larger space than it should, enough to illuminate a cave bright as day.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625181140, - "modifiedTime": 1753625205417, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431934319, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MeEg57T6MKpw3sme" } diff --git a/src/packs/items/loot/loot_Arcane_Cloak_4STt98biZwjFoKOe.json b/src/packs/items/loot/loot_Arcane_Cloak_4STt98biZwjFoKOe.json index c8b3c168..bf0a7352 100644 --- a/src/packs/items/loot/loot_Arcane_Cloak_4STt98biZwjFoKOe.json +++ b/src/packs/items/loot/loot_Arcane_Cloak_4STt98biZwjFoKOe.json @@ -6,7 +6,12 @@ "system": { "description": "

A creature with a Spellcast trait wearing this cloak can adjust its color, texture, and size at will.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625371758, - "modifiedTime": 1753625392529, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431960072, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4STt98biZwjFoKOe" } diff --git a/src/packs/items/loot/loot_Arcane_Prism_Mn1eo2Mdtu1kzyxB.json b/src/packs/items/loot/loot_Arcane_Prism_Mn1eo2Mdtu1kzyxB.json index b1fa3700..dc3376cb 100644 --- a/src/packs/items/loot/loot_Arcane_Prism_Mn1eo2Mdtu1kzyxB.json +++ b/src/packs/items/loot/loot_Arcane_Prism_Mn1eo2Mdtu1kzyxB.json @@ -34,6 +34,11 @@ "img": "icons/commodities/gems/gem-faceted-trillion-blue.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [ @@ -93,12 +98,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626536923, - "modifiedTime": 1753989088942, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432045259, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Mn1eo2Mdtu1kzyxB" } diff --git a/src/packs/items/loot/loot_Attune_Relic_vK6bKyQTT3m8WvMh.json b/src/packs/items/loot/loot_Attune_Relic_vK6bKyQTT3m8WvMh.json index 59909fa7..3473c512 100644 --- a/src/packs/items/loot/loot_Attune_Relic_vK6bKyQTT3m8WvMh.json +++ b/src/packs/items/loot/loot_Attune_Relic_vK6bKyQTT3m8WvMh.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Instinct. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639587267, - "modifiedTime": 1753639733198, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432312623, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!vK6bKyQTT3m8WvMh" } diff --git a/src/packs/items/loot/loot_Bag_of_Ficklesand_v758j4FwNVAurhYK.json b/src/packs/items/loot/loot_Bag_of_Ficklesand_v758j4FwNVAurhYK.json index 767dc8e0..69817496 100644 --- a/src/packs/items/loot/loot_Bag_of_Ficklesand_v758j4FwNVAurhYK.json +++ b/src/packs/items/loot/loot_Bag_of_Ficklesand_v758j4FwNVAurhYK.json @@ -58,6 +58,11 @@ "img": "icons/containers/bags/pouch-cloth-tan.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [ @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637946114, - "modifiedTime": 1753989248198, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432176800, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!v758j4FwNVAurhYK" } diff --git a/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json b/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json index 717f4024..acd9ffee 100644 --- a/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json +++ b/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json @@ -37,6 +37,11 @@ "img": "icons/equipment/waist/belt-buckle-ornate-steel.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" } }, "effects": [], @@ -51,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640971116, - "modifiedTime": 1753641065768, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432474549, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!gFzkUGCjkRJtyoe9" } diff --git a/src/packs/items/loot/loot_Bloodstone_oMd78vhL2x2NO8Mg.json b/src/packs/items/loot/loot_Bloodstone_oMd78vhL2x2NO8Mg.json index f5a19dff..52a85f8a 100644 --- a/src/packs/items/loot/loot_Bloodstone_oMd78vhL2x2NO8Mg.json +++ b/src/packs/items/loot/loot_Bloodstone_oMd78vhL2x2NO8Mg.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this stone to a weapon that doesn’t already have a feature. The weapon gains the following feature.

Brutal: When you roll the maximum value on a damage die, roll an additional damage die.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637532005, - "modifiedTime": 1753637570344, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432124214, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!oMd78vhL2x2NO8Mg" } diff --git a/src/packs/items/loot/loot_Bolster_Relic_m3EpxlDgxn2tCDDR.json b/src/packs/items/loot/loot_Bolster_Relic_m3EpxlDgxn2tCDDR.json index 695b8a1c..719d3a37 100644 --- a/src/packs/items/loot/loot_Bolster_Relic_m3EpxlDgxn2tCDDR.json +++ b/src/packs/items/loot/loot_Bolster_Relic_m3EpxlDgxn2tCDDR.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Strength. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639461783, - "modifiedTime": 1753639473676, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432292506, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!m3EpxlDgxn2tCDDR" } diff --git a/src/packs/items/loot/loot_Box_of_Many_Goods_bZyT7Qw7iafswlTY.json b/src/packs/items/loot/loot_Box_of_Many_Goods_bZyT7Qw7iafswlTY.json index 3112c665..ee305349 100644 --- a/src/packs/items/loot/loot_Box_of_Many_Goods_bZyT7Qw7iafswlTY.json +++ b/src/packs/items/loot/loot_Box_of_Many_Goods_bZyT7Qw7iafswlTY.json @@ -53,6 +53,11 @@ "img": "icons/containers/boxes/crate-heavy-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -67,12 +72,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638361357, - "modifiedTime": 1753989365853, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432203301, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bZyT7Qw7iafswlTY" } diff --git a/src/packs/items/loot/loot_Calming_Pendant_tgFFMxpuRSiRrrEB.json b/src/packs/items/loot/loot_Calming_Pendant_tgFFMxpuRSiRrrEB.json index 82a1078a..8ba9f0bc 100644 --- a/src/packs/items/loot/loot_Calming_Pendant_tgFFMxpuRSiRrrEB.json +++ b/src/packs/items/loot/loot_Calming_Pendant_tgFFMxpuRSiRrrEB.json @@ -53,6 +53,11 @@ "img": "icons/equipment/neck/amulet-round-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -67,12 +72,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637842111, - "modifiedTime": 1753989405747, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432160633, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tgFFMxpuRSiRrrEB" } diff --git a/src/packs/items/loot/loot_Charging_Quiver_gsUDP90d4SRtLEUn.json b/src/packs/items/loot/loot_Charging_Quiver_gsUDP90d4SRtLEUn.json index 19ef04c7..5bff2a6b 100644 --- a/src/packs/items/loot/loot_Charging_Quiver_gsUDP90d4SRtLEUn.json +++ b/src/packs/items/loot/loot_Charging_Quiver_gsUDP90d4SRtLEUn.json @@ -6,7 +6,12 @@ "system": { "description": "

When you succeed on an attack with an arrow stored in this quiver, gain a bonus to the damage roll equal to your current tier.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [ { @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625025089, - "modifiedTime": 1753989432098, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755431911218, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!gsUDP90d4SRtLEUn" } diff --git a/src/packs/items/loot/loot_Charm_Relic_9P9jqGSlxVCbTdLe.json b/src/packs/items/loot/loot_Charm_Relic_9P9jqGSlxVCbTdLe.json index a1c80a2b..419c7b1d 100644 --- a/src/packs/items/loot/loot_Charm_Relic_9P9jqGSlxVCbTdLe.json +++ b/src/packs/items/loot/loot_Charm_Relic_9P9jqGSlxVCbTdLe.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Presence. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639686831, - "modifiedTime": 1753639719586, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432321075, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9P9jqGSlxVCbTdLe" } diff --git a/src/packs/items/loot/loot_Clay_Companion_lGIk9vBNz0jvskXD.json b/src/packs/items/loot/loot_Clay_Companion_lGIk9vBNz0jvskXD.json index d60c928c..e45c91b0 100644 --- a/src/packs/items/loot/loot_Clay_Companion_lGIk9vBNz0jvskXD.json +++ b/src/packs/items/loot/loot_Clay_Companion_lGIk9vBNz0jvskXD.json @@ -6,7 +6,12 @@ "system": { "description": "

When you sculpt this ball of clay into a clay animal companion, it behaves as that animal. For example, a clay spider can spin clay webs, while a clay bird can fly. The clay companion retains memory and identity across different shapes, but they can adopt new mannerisms with each form.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640057300, - "modifiedTime": 1753640276057, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432384479, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!lGIk9vBNz0jvskXD" } diff --git a/src/packs/items/loot/loot_Companion_Case_V25uXkAQvK3hUta4.json b/src/packs/items/loot/loot_Companion_Case_V25uXkAQvK3hUta4.json index 65854d4c..94b37cc8 100644 --- a/src/packs/items/loot/loot_Companion_Case_V25uXkAQvK3hUta4.json +++ b/src/packs/items/loot/loot_Companion_Case_V25uXkAQvK3hUta4.json @@ -6,7 +6,12 @@ "system": { "description": "

This case can fit a small animal companion. While the companion is inside, the animal and case are immune to all damage and harmful effects.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625898190, - "modifiedTime": 1753625935379, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432012809, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!V25uXkAQvK3hUta4" } diff --git a/src/packs/items/loot/loot_Control_Relic_QPGBDItjrRhXU6iJ.json b/src/packs/items/loot/loot_Control_Relic_QPGBDItjrRhXU6iJ.json index 9245934b..b2c0b796 100644 --- a/src/packs/items/loot/loot_Control_Relic_QPGBDItjrRhXU6iJ.json +++ b/src/packs/items/loot/loot_Control_Relic_QPGBDItjrRhXU6iJ.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Finesse. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639492071, - "modifiedTime": 1753639541446, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432304157, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QPGBDItjrRhXU6iJ" } diff --git a/src/packs/items/loot/loot_Corrector_Sprite_G0RktbmtnuAlKCRH.json b/src/packs/items/loot/loot_Corrector_Sprite_G0RktbmtnuAlKCRH.json index 4a1a0848..9519e392 100644 --- a/src/packs/items/loot/loot_Corrector_Sprite_G0RktbmtnuAlKCRH.json +++ b/src/packs/items/loot/loot_Corrector_Sprite_G0RktbmtnuAlKCRH.json @@ -29,6 +29,11 @@ "img": "icons/magic/light/orbs-smoke-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [], @@ -43,12 +48,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637155361, - "modifiedTime": 1753637366036, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432083881, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!G0RktbmtnuAlKCRH" } diff --git a/src/packs/items/loot/loot_Dual_Flask_HCvcAu3sdHCspGMP.json b/src/packs/items/loot/loot_Dual_Flask_HCvcAu3sdHCspGMP.json index f99220c9..3d6ab8be 100644 --- a/src/packs/items/loot/loot_Dual_Flask_HCvcAu3sdHCspGMP.json +++ b/src/packs/items/loot/loot_Dual_Flask_HCvcAu3sdHCspGMP.json @@ -6,7 +6,12 @@ "system": { "description": "

This flask can hold two different liquids. You can swap between them by flipping a small switch on the flask’s side.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637893309, - "modifiedTime": 1753637932763, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432168119, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!HCvcAu3sdHCspGMP" } diff --git a/src/packs/items/loot/loot_Elusive_Amulet_PkmTZXRMZL022O75.json b/src/packs/items/loot/loot_Elusive_Amulet_PkmTZXRMZL022O75.json index 6b007a29..215658b1 100644 --- a/src/packs/items/loot/loot_Elusive_Amulet_PkmTZXRMZL022O75.json +++ b/src/packs/items/loot/loot_Elusive_Amulet_PkmTZXRMZL022O75.json @@ -34,6 +34,11 @@ "img": "icons/equipment/neck/pendant-rough-silver-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [ @@ -88,12 +93,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638931971, - "modifiedTime": 1753989758225, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432243222, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PkmTZXRMZL022O75" } diff --git a/src/packs/items/loot/loot_Empty_Chest_p2yy61uKsyIsl8cU.json b/src/packs/items/loot/loot_Empty_Chest_p2yy61uKsyIsl8cU.json index bb6ca519..ea8649d3 100644 --- a/src/packs/items/loot/loot_Empty_Chest_p2yy61uKsyIsl8cU.json +++ b/src/packs/items/loot/loot_Empty_Chest_p2yy61uKsyIsl8cU.json @@ -6,7 +6,12 @@ "system": { "description": "

This magical chest appears empty. When you speak a specific trigger word or action and open the chest, you can see the items stored within it.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625859659, - "modifiedTime": 1753625887033, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432002874, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!p2yy61uKsyIsl8cU" } diff --git a/src/packs/items/loot/loot_Enlighten_Relic_vSGx1f9SYUiA29L3.json b/src/packs/items/loot/loot_Enlighten_Relic_vSGx1f9SYUiA29L3.json index 0f992ddf..cbba2957 100644 --- a/src/packs/items/loot/loot_Enlighten_Relic_vSGx1f9SYUiA29L3.json +++ b/src/packs/items/loot/loot_Enlighten_Relic_vSGx1f9SYUiA29L3.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Knowledge. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639753586, - "modifiedTime": 1753639789835, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432328609, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!vSGx1f9SYUiA29L3" } diff --git a/src/packs/items/loot/loot_Fire_Jar_X6RMkIt89wf7qX2E.json b/src/packs/items/loot/loot_Fire_Jar_X6RMkIt89wf7qX2E.json index bcdda979..be48c507 100644 --- a/src/packs/items/loot/loot_Fire_Jar_X6RMkIt89wf7qX2E.json +++ b/src/packs/items/loot/loot_Fire_Jar_X6RMkIt89wf7qX2E.json @@ -29,6 +29,11 @@ "img": "icons/containers/kitchenware/jug-wrapped-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [], @@ -43,12 +48,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625575791, - "modifiedTime": 1753625617382, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431975757, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!X6RMkIt89wf7qX2E" } diff --git a/src/packs/items/loot/loot_Flickerfly_Pendant_9VKYSBQxN9XFWlAm.json b/src/packs/items/loot/loot_Flickerfly_Pendant_9VKYSBQxN9XFWlAm.json index bb7f8495..4f87a4d2 100644 --- a/src/packs/items/loot/loot_Flickerfly_Pendant_9VKYSBQxN9XFWlAm.json +++ b/src/packs/items/loot/loot_Flickerfly_Pendant_9VKYSBQxN9XFWlAm.json @@ -6,7 +6,12 @@ "system": { "description": "

While you carry this pendant, your weapons with a Melee range that deal physical damage have a gossamer sheen and can attack targets within Very Close range.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639935227, - "modifiedTime": 1753639964153, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432355676, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9VKYSBQxN9XFWlAm" } diff --git a/src/packs/items/loot/loot_Gecko_Gloves_CGzjBpHJRG8KSt5Y.json b/src/packs/items/loot/loot_Gecko_Gloves_CGzjBpHJRG8KSt5Y.json index 3dbdae76..578eb7c5 100644 --- a/src/packs/items/loot/loot_Gecko_Gloves_CGzjBpHJRG8KSt5Y.json +++ b/src/packs/items/loot/loot_Gecko_Gloves_CGzjBpHJRG8KSt5Y.json @@ -6,7 +6,12 @@ "system": { "description": "

You can climb up vertical surfaces and across ceilings.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637390470, - "modifiedTime": 1753637455936, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432092979, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CGzjBpHJRG8KSt5Y" } diff --git a/src/packs/items/loot/loot_Gem_of_Alacrity_zecFwBUSWtB3HW8X.json b/src/packs/items/loot/loot_Gem_of_Alacrity_zecFwBUSWtB3HW8X.json index 86b17e74..68eef682 100644 --- a/src/packs/items/loot/loot_Gem_of_Alacrity_zecFwBUSWtB3HW8X.json +++ b/src/packs/items/loot/loot_Gem_of_Alacrity_zecFwBUSWtB3HW8X.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Agility when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640285473, - "modifiedTime": 1753640317903, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432422196, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zecFwBUSWtB3HW8X" } diff --git a/src/packs/items/loot/loot_Gem_of_Audacity_hMu9It3ThCLCXuCA.json b/src/packs/items/loot/loot_Gem_of_Audacity_hMu9It3ThCLCXuCA.json index 07d44a2c..b592cd2d 100644 --- a/src/packs/items/loot/loot_Gem_of_Audacity_hMu9It3ThCLCXuCA.json +++ b/src/packs/items/loot/loot_Gem_of_Audacity_hMu9It3ThCLCXuCA.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Presence when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640590771, - "modifiedTime": 1753640602606, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432430946, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hMu9It3ThCLCXuCA" } diff --git a/src/packs/items/loot/loot_Gem_of_Insight_TbgeT9ZxKHqFqJSN.json b/src/packs/items/loot/loot_Gem_of_Insight_TbgeT9ZxKHqFqJSN.json index 03743b23..7f75d412 100644 --- a/src/packs/items/loot/loot_Gem_of_Insight_TbgeT9ZxKHqFqJSN.json +++ b/src/packs/items/loot/loot_Gem_of_Insight_TbgeT9ZxKHqFqJSN.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Instinct when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640563344, - "modifiedTime": 1753640580953, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432436597, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TbgeT9ZxKHqFqJSN" } diff --git a/src/packs/items/loot/loot_Gem_of_Might_rtSInNPc4B3ChBUZ.json b/src/packs/items/loot/loot_Gem_of_Might_rtSInNPc4B3ChBUZ.json index 8395388f..19d6f2c4 100644 --- a/src/packs/items/loot/loot_Gem_of_Might_rtSInNPc4B3ChBUZ.json +++ b/src/packs/items/loot/loot_Gem_of_Might_rtSInNPc4B3ChBUZ.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Strength when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640512721, - "modifiedTime": 1753640527143, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432442699, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!rtSInNPc4B3ChBUZ" } diff --git a/src/packs/items/loot/loot_Gem_of_Precision_CrvJ7vb4s40YgEcy.json b/src/packs/items/loot/loot_Gem_of_Precision_CrvJ7vb4s40YgEcy.json index 6dc57398..0d10ff19 100644 --- a/src/packs/items/loot/loot_Gem_of_Precision_CrvJ7vb4s40YgEcy.json +++ b/src/packs/items/loot/loot_Gem_of_Precision_CrvJ7vb4s40YgEcy.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Finesse when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640535939, - "modifiedTime": 1753640553552, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432448347, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CrvJ7vb4s40YgEcy" } diff --git a/src/packs/items/loot/loot_Gem_of_Sagacity_ua351S7CsH22X1x2.json b/src/packs/items/loot/loot_Gem_of_Sagacity_ua351S7CsH22X1x2.json index 4128007b..cb3de994 100644 --- a/src/packs/items/loot/loot_Gem_of_Sagacity_ua351S7CsH22X1x2.json +++ b/src/packs/items/loot/loot_Gem_of_Sagacity_ua351S7CsH22X1x2.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Knowledge when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640610217, - "modifiedTime": 1753640623916, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432454597, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ua351S7CsH22X1x2" } diff --git a/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json b/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json index dacc4376..6b233757 100644 --- a/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json +++ b/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json @@ -37,6 +37,11 @@ "img": "icons/commodities/treasure/token-engraved-purple-glowing.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [], @@ -51,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625773657, - "modifiedTime": 1753625847459, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431995057, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Pj17cvdJ1XG1jv6I" } diff --git a/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json b/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json index 799e170f..2457d2e2 100644 --- a/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json +++ b/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json @@ -37,6 +37,11 @@ "img": "icons/commodities/leather/leather-patch-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -51,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637642501, - "modifiedTime": 1753989923053, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432142381, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CiXwelozmBDcPY48" } diff --git a/src/packs/items/loot/loot_Greatstone_y7zABzR0Q2fRskTw.json b/src/packs/items/loot/loot_Greatstone_y7zABzR0Q2fRskTw.json index e19ac9a6..72d434f9 100644 --- a/src/packs/items/loot/loot_Greatstone_y7zABzR0Q2fRskTw.json +++ b/src/packs/items/loot/loot_Greatstone_y7zABzR0Q2fRskTw.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this stone to a weapon that doesn’t already have a feature. The weapon gains the following feature.

Powerful: On a successful attack, roll an additional damage die and discard the lowest result.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637596921, - "modifiedTime": 1753637633941, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432133748, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!y7zABzR0Q2fRskTw" } diff --git a/src/packs/items/loot/loot_Homing_Compasses_yrAGYlDyoe4OYl7d.json b/src/packs/items/loot/loot_Homing_Compasses_yrAGYlDyoe4OYl7d.json index be6e9ad5..93bbb201 100644 --- a/src/packs/items/loot/loot_Homing_Compasses_yrAGYlDyoe4OYl7d.json +++ b/src/packs/items/loot/loot_Homing_Compasses_yrAGYlDyoe4OYl7d.json @@ -6,7 +6,12 @@ "system": { "description": "

These two compasses point toward each other no matter how far apart they are.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637089789, - "modifiedTime": 1753637129113, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432074527, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!yrAGYlDyoe4OYl7d" } diff --git a/src/packs/items/loot/loot_Honing_Relic_SAAnEAeXDnhBbLjB.json b/src/packs/items/loot/loot_Honing_Relic_SAAnEAeXDnhBbLjB.json index 4fb5b0de..6bf34bee 100644 --- a/src/packs/items/loot/loot_Honing_Relic_SAAnEAeXDnhBbLjB.json +++ b/src/packs/items/loot/loot_Honing_Relic_SAAnEAeXDnhBbLjB.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to an Experience of your choice. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639799902, - "modifiedTime": 1753639815534, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432343825, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SAAnEAeXDnhBbLjB" } diff --git a/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json b/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json index 6899908f..83356cb6 100644 --- a/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json +++ b/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json @@ -99,6 +99,11 @@ "img": "icons/equipment/neck/amulet-round-engraved-spiral-gold.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -113,12 +118,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639224510, - "modifiedTime": 1753639329411, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432255622, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9DcFR75tsnBYIp6Z" } diff --git a/src/packs/items/loot/loot_Infinite_Bag_Iedjw1LVWEozVh0J.json b/src/packs/items/loot/loot_Infinite_Bag_Iedjw1LVWEozVh0J.json index 83044c0f..1a82453c 100644 --- a/src/packs/items/loot/loot_Infinite_Bag_Iedjw1LVWEozVh0J.json +++ b/src/packs/items/loot/loot_Infinite_Bag_Iedjw1LVWEozVh0J.json @@ -6,7 +6,12 @@ "system": { "description": "

When you store items in this bag, they are kept in a pocket dimension that never runs out of space. You can retrieve an item at any time.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639339762, - "modifiedTime": 1753639361505, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432274021, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Iedjw1LVWEozVh0J" } diff --git a/src/packs/items/loot/loot_Lakestrider_Boots_NgvmrJYKpA2PrRSo.json b/src/packs/items/loot/loot_Lakestrider_Boots_NgvmrJYKpA2PrRSo.json index b64c2faf..1c5a2c64 100644 --- a/src/packs/items/loot/loot_Lakestrider_Boots_NgvmrJYKpA2PrRSo.json +++ b/src/packs/items/loot/loot_Lakestrider_Boots_NgvmrJYKpA2PrRSo.json @@ -6,7 +6,12 @@ "system": { "description": "

You can walk on the surface of water as if it were soft ground.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639975496, - "modifiedTime": 1753639999823, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432366912, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!NgvmrJYKpA2PrRSo" } diff --git a/src/packs/items/loot/loot_Lorekeeper_JsPYzrqpITqGj23I.json b/src/packs/items/loot/loot_Lorekeeper_JsPYzrqpITqGj23I.json index 8a1fd26e..16bb3186 100644 --- a/src/packs/items/loot/loot_Lorekeeper_JsPYzrqpITqGj23I.json +++ b/src/packs/items/loot/loot_Lorekeeper_JsPYzrqpITqGj23I.json @@ -6,7 +6,12 @@ "system": { "description": "

You can store the name and details of up to three hostile creatures inside this book. You gain a +1 bonus to action rolls against those creatures.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637467427, - "modifiedTime": 1753637489198, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432101012, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!JsPYzrqpITqGj23I" } diff --git a/src/packs/items/loot/loot_Manacles_GkmATIuemyFtQX1D.json b/src/packs/items/loot/loot_Manacles_GkmATIuemyFtQX1D.json index cbeb9f38..ba762c74 100644 --- a/src/packs/items/loot/loot_Manacles_GkmATIuemyFtQX1D.json +++ b/src/packs/items/loot/loot_Manacles_GkmATIuemyFtQX1D.json @@ -6,7 +6,12 @@ "system": { "description": "

This pair of locking cuffs comes with a key.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625337217, - "modifiedTime": 1753625362038, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431952005, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GkmATIuemyFtQX1D" } diff --git a/src/packs/items/loot/loot_Minor_Health_Potion_Recipe_PQxvxAVBbkt0TleC.json b/src/packs/items/loot/loot_Minor_Health_Potion_Recipe_PQxvxAVBbkt0TleC.json index 2d8c286b..a84e783a 100644 --- a/src/packs/items/loot/loot_Minor_Health_Potion_Recipe_PQxvxAVBbkt0TleC.json +++ b/src/packs/items/loot/loot_Minor_Health_Potion_Recipe_PQxvxAVBbkt0TleC.json @@ -6,7 +6,12 @@ "system": { "description": "

As a downtime move, you can use a vial of blood to craft a Minor Health Potion.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637045921, - "modifiedTime": 1753637071130, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432066493, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PQxvxAVBbkt0TleC" } diff --git a/src/packs/items/loot/loot_Minor_Stamina_Potion_Recipe_1TLpFsp3PLDsqoTw.json b/src/packs/items/loot/loot_Minor_Stamina_Potion_Recipe_1TLpFsp3PLDsqoTw.json index d963d82d..8069ae69 100644 --- a/src/packs/items/loot/loot_Minor_Stamina_Potion_Recipe_1TLpFsp3PLDsqoTw.json +++ b/src/packs/items/loot/loot_Minor_Stamina_Potion_Recipe_1TLpFsp3PLDsqoTw.json @@ -6,7 +6,12 @@ "system": { "description": "

As a downtime move, you can use the bone of a creature to craft a Minor Stamina Potion.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626639554, - "modifiedTime": 1753626666369, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432058259, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1TLpFsp3PLDsqoTw" } diff --git a/src/packs/items/loot/loot_Mythic_Dust_Recipe_5YZls8XH3MB7twNa.json b/src/packs/items/loot/loot_Mythic_Dust_Recipe_5YZls8XH3MB7twNa.json index 2325a405..dfc1916d 100644 --- a/src/packs/items/loot/loot_Mythic_Dust_Recipe_5YZls8XH3MB7twNa.json +++ b/src/packs/items/loot/loot_Mythic_Dust_Recipe_5YZls8XH3MB7twNa.json @@ -6,7 +6,12 @@ "system": { "description": "

As a downtime move, you can use a handful of fine gold dust to craft Mythic Dust.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640163566, - "modifiedTime": 1753640190943, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432395196, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!5YZls8XH3MB7twNa" } diff --git a/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json b/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json index f62b7895..ab2f2cc3 100644 --- a/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json +++ b/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json @@ -37,6 +37,11 @@ "img": "icons/equipment/neck/choker-chain-thin-gold.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -51,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638721391, - "modifiedTime": 1753638917868, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432230353, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!F4hoRfvVdZq5bhhI" } diff --git a/src/packs/items/loot/loot_Phoenix_Feather_QNtzJSVENww63THa.json b/src/packs/items/loot/loot_Phoenix_Feather_QNtzJSVENww63THa.json index a51d206b..2cd09252 100644 --- a/src/packs/items/loot/loot_Phoenix_Feather_QNtzJSVENww63THa.json +++ b/src/packs/items/loot/loot_Phoenix_Feather_QNtzJSVENww63THa.json @@ -6,7 +6,12 @@ "system": { "description": "

If you have at least one Phoenix Feather on you when you fall unconscious, you gain a +1 bonus to the roll you make to determine whether you gain a scar.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638285123, - "modifiedTime": 1753638336982, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432194183, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QNtzJSVENww63THa" } diff --git a/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json b/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json index a3789138..9a056431 100644 --- a/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json +++ b/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json @@ -29,6 +29,11 @@ "img": "icons/weapons/ammunition/arrow-broadhead-glowing-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [ @@ -101,12 +106,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625947079, - "modifiedTime": 1753990194353, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432020809, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!I63LTFD6GXHgyGpR" } diff --git a/src/packs/items/loot/loot_Piper_Whistle_v4PIoCCEjeE3acys.json b/src/packs/items/loot/loot_Piper_Whistle_v4PIoCCEjeE3acys.json index b0e2954c..1a059ae1 100644 --- a/src/packs/items/loot/loot_Piper_Whistle_v4PIoCCEjeE3acys.json +++ b/src/packs/items/loot/loot_Piper_Whistle_v4PIoCCEjeE3acys.json @@ -6,7 +6,12 @@ "system": { "description": "

This handcrafted whistle has a distinctive sound. When you blow this whistle, its piercing tone can be heard within a 1-mile radius.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753624968366, - "modifiedTime": 1753625011843, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431902952, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!v4PIoCCEjeE3acys" } diff --git a/src/packs/items/loot/loot_Portal_Seed_eRd5Gk7J7hPCqp11.json b/src/packs/items/loot/loot_Portal_Seed_eRd5Gk7J7hPCqp11.json index 4eb1e0d7..d09850e3 100644 --- a/src/packs/items/loot/loot_Portal_Seed_eRd5Gk7J7hPCqp11.json +++ b/src/packs/items/loot/loot_Portal_Seed_eRd5Gk7J7hPCqp11.json @@ -6,7 +6,12 @@ "system": { "description": "

You can plant this seed in the ground to grow a portal in that spot. The portal is ready to use in 24 hours. You can use this portal to travel to any other location where you planted a portal seed. A portal can be destroyed by dealing any amount of magic damage to it.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638512020, - "modifiedTime": 1753638586392, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432221837, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!eRd5Gk7J7hPCqp11" } diff --git a/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json b/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json index 9d90b78b..f000d904 100644 --- a/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json +++ b/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json @@ -68,6 +68,11 @@ "img": "icons/sundries/survival/bedroll-blue-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [], @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753624827945, - "modifiedTime": 1753624908866, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431895118, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QGYPNBIufpBguwjC" } diff --git a/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json b/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json index f241cf1f..628fe395 100644 --- a/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json +++ b/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json @@ -29,6 +29,11 @@ "img": "icons/equipment/finger/ring-shield-silver.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -43,12 +48,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638222884, - "modifiedTime": 1753638266245, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432185583, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!aUqRifqR5JXXa1dN" } diff --git a/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json b/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json index 502c73b2..b6de3da5 100644 --- a/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json +++ b/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json @@ -37,6 +37,11 @@ "img": "icons/equipment/finger/ring-ball-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [ @@ -96,12 +101,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637775628, - "modifiedTime": 1753637832657, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432151648, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!K1ysGnTpNyxPu5Au" } diff --git a/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json b/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json index 94f8bdec..e4a4511f 100644 --- a/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json +++ b/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json @@ -37,6 +37,11 @@ "img": "icons/equipment/finger/ring-faceted-gold-teal.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" } }, "effects": [], @@ -51,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640632212, - "modifiedTime": 1753640958684, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432465536, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!kn71qCQY0DnjmQBJ" } diff --git a/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json b/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json index 46beee5a..f6d004e4 100644 --- a/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json +++ b/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json @@ -37,6 +37,11 @@ "img": "icons/commodities/gems/gem-rough-navette-purple-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" } }, "effects": [], @@ -51,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640199098, - "modifiedTime": 1753990369010, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432405079, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2ULPgNyqCrxea0v0" } diff --git a/src/packs/items/loot/loot_Skeleton_Key_edkNgwy4xghZreBa.json b/src/packs/items/loot/loot_Skeleton_Key_edkNgwy4xghZreBa.json index 4b480459..d05a0de4 100644 --- a/src/packs/items/loot/loot_Skeleton_Key_edkNgwy4xghZreBa.json +++ b/src/packs/items/loot/loot_Skeleton_Key_edkNgwy4xghZreBa.json @@ -53,6 +53,11 @@ "img": "icons/sundries/misc/key-ornate-iron-black.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [], @@ -67,12 +72,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626370278, - "modifiedTime": 1753626508104, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432037375, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!edkNgwy4xghZreBa" } diff --git a/src/packs/items/loot/loot_Speaking_Orbs_LZrG6CFiSjpLA2F1.json b/src/packs/items/loot/loot_Speaking_Orbs_LZrG6CFiSjpLA2F1.json index 1239b6ab..af9fc42c 100644 --- a/src/packs/items/loot/loot_Speaking_Orbs_LZrG6CFiSjpLA2F1.json +++ b/src/packs/items/loot/loot_Speaking_Orbs_LZrG6CFiSjpLA2F1.json @@ -6,7 +6,12 @@ "system": { "description": "

This pair of orbs allows any creatures holding them to communicate with each other across any distance.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625222662, - "modifiedTime": 1753625327080, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431943587, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!LZrG6CFiSjpLA2F1" } diff --git a/src/packs/items/loot/loot_Stride_Relic_FfJISMzYATaPQPLc.json b/src/packs/items/loot/loot_Stride_Relic_FfJISMzYATaPQPLc.json index 9f169207..15edb13a 100644 --- a/src/packs/items/loot/loot_Stride_Relic_FfJISMzYATaPQPLc.json +++ b/src/packs/items/loot/loot_Stride_Relic_FfJISMzYATaPQPLc.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Agility. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639376996, - "modifiedTime": 1753639432017, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432282538, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!FfJISMzYATaPQPLc" } diff --git a/src/packs/items/loot/loot_Suspended_Rod_nnj12RiFanq7s5zv.json b/src/packs/items/loot/loot_Suspended_Rod_nnj12RiFanq7s5zv.json index 83ca772a..7932eb77 100644 --- a/src/packs/items/loot/loot_Suspended_Rod_nnj12RiFanq7s5zv.json +++ b/src/packs/items/loot/loot_Suspended_Rod_nnj12RiFanq7s5zv.json @@ -6,7 +6,12 @@ "system": { "description": "

This flat rod is inscribed with runes. When you activate the rod, it is immediately suspended in place. Until the rod is deactivated, it can’t move, doesn’t abide by the rules of gravity, and remains in place.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625627433, - "modifiedTime": 1753625765676, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431985810, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nnj12RiFanq7s5zv" } diff --git a/src/packs/items/loot/loot_Valorstone_7yywua9TmQ4WP5WH.json b/src/packs/items/loot/loot_Valorstone_7yywua9TmQ4WP5WH.json index 6970a396..39cb89d7 100644 --- a/src/packs/items/loot/loot_Valorstone_7yywua9TmQ4WP5WH.json +++ b/src/packs/items/loot/loot_Valorstone_7yywua9TmQ4WP5WH.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this stone to armor that doesn’t already have a feature. The armor gains the following feature.

Resilient: Before you mark your last Armor Slot, roll a d6. On a result of 6, reduce the severity by one threshold without marking an Armor Slot.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626167593, - "modifiedTime": 1753626237350, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432029408, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!7yywua9TmQ4WP5WH" } diff --git a/src/packs/items/loot/loot_Vial_of_Darksmoke_Recipe_MhCo8i0cRXzdnXbA.json b/src/packs/items/loot/loot_Vial_of_Darksmoke_Recipe_MhCo8i0cRXzdnXbA.json index d9ad7e17..29bb21fc 100644 --- a/src/packs/items/loot/loot_Vial_of_Darksmoke_Recipe_MhCo8i0cRXzdnXbA.json +++ b/src/packs/items/loot/loot_Vial_of_Darksmoke_Recipe_MhCo8i0cRXzdnXbA.json @@ -6,7 +6,12 @@ "system": { "description": "

As a downtime move, you can mark a Stress to craft a Vial of Darksmoke.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637508452, - "modifiedTime": 1753637524868, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432114401, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MhCo8i0cRXzdnXbA" } diff --git a/src/packs/items/loot/loot_Woven_Net_ARuv48PWUGJGBC4n.json b/src/packs/items/loot/loot_Woven_Net_ARuv48PWUGJGBC4n.json index 3013f603..32fa6c6b 100644 --- a/src/packs/items/loot/loot_Woven_Net_ARuv48PWUGJGBC4n.json +++ b/src/packs/items/loot/loot_Woven_Net_ARuv48PWUGJGBC4n.json @@ -58,6 +58,11 @@ "img": "icons/tools/fishing/net-tan.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [ @@ -144,12 +149,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625403538, - "modifiedTime": 1753625550934, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431968372, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ARuv48PWUGJGBC4n" } diff --git a/src/packs/items/weapons/loot_Black_Powder_Revolver_NUbvkPLS71XO073r.json b/src/packs/items/weapons/loot_Black_Powder_Revolver_NUbvkPLS71XO073r.json deleted file mode 100644 index a51a5c14..00000000 --- a/src/packs/items/weapons/loot_Black_Powder_Revolver_NUbvkPLS71XO073r.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "folder": "OKJC8cHvPuseBHWq", - "name": "Black Powder Revolver", - "type": "loot", - "_id": "NUbvkPLS71XO073r", - "img": "icons/weapons/guns/gun-pistol-brass.webp", - "system": { - "description": "", - "quantity": 1, - "actions": {} - }, - "effects": [], - "sort": 0, - "ownership": { - "default": 0, - "FecEtPuoQh6MpjQ0": 3 - }, - "flags": {}, - "_stats": { - "compendiumSource": null, - "duplicateSource": null, - "exportSource": null, - "coreVersion": "13.346", - "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753832431607, - "modifiedTime": 1753832439003, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" - }, - "_key": "!items!NUbvkPLS71XO073r" -} diff --git a/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json b/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json index 0dc1f068..03472e33 100644 --- a/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json +++ b/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753835285790, - "modifiedTime": 1754815224721, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755431272519, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ijodu5yNBoMxpkHV" } diff --git a/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json b/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json index 0abfe057..db39bfcf 100644 --- a/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json +++ b/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -159,10 +164,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753836715885, - "modifiedTime": 1754845968271, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430195943, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "la3sAWgnvadc4NvP", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Advanced_Arcane_Gauntlets_hXR56fTKwZ6s1obs.json b/src/packs/items/weapons/weapon_Advanced_Arcane_Gauntlets_hXR56fTKwZ6s1obs.json index 7e06132f..5e75aae7 100644 --- a/src/packs/items/weapons/weapon_Advanced_Arcane_Gauntlets_hXR56fTKwZ6s1obs.json +++ b/src/packs/items/weapons/weapon_Advanced_Arcane_Gauntlets_hXR56fTKwZ6s1obs.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833079329, - "modifiedTime": 1753833112531, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431151799, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hXR56fTKwZ6s1obs" } diff --git a/src/packs/items/weapons/weapon_Advanced_Battleaxe_FcbvY1ydbNVMjKvk.json b/src/packs/items/weapons/weapon_Advanced_Battleaxe_FcbvY1ydbNVMjKvk.json index b99dee62..ad176f61 100644 --- a/src/packs/items/weapons/weapon_Advanced_Battleaxe_FcbvY1ydbNVMjKvk.json +++ b/src/packs/items/weapons/weapon_Advanced_Battleaxe_FcbvY1ydbNVMjKvk.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831668041, - "modifiedTime": 1753831689481, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430983569, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!FcbvY1ydbNVMjKvk" } diff --git a/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json b/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json index 19a6d9bf..927b0310 100644 --- a/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json +++ b/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753831599435, - "modifiedTime": 1754814950120, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430988859, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WtQAGz0TUgz8Xg70" } diff --git a/src/packs/items/weapons/weapon_Advanced_Crossbow_3HGs0AgVrdIBTaKG.json b/src/packs/items/weapons/weapon_Advanced_Crossbow_3HGs0AgVrdIBTaKG.json index cd64eb4b..017002b4 100644 --- a/src/packs/items/weapons/weapon_Advanced_Crossbow_3HGs0AgVrdIBTaKG.json +++ b/src/packs/items/weapons/weapon_Advanced_Crossbow_3HGs0AgVrdIBTaKG.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832024062, - "modifiedTime": 1753832046861, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430993878, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3HGs0AgVrdIBTaKG" } diff --git a/src/packs/items/weapons/weapon_Advanced_Cutlass_bw9WO9lxkM9bWZxQ.json b/src/packs/items/weapons/weapon_Advanced_Cutlass_bw9WO9lxkM9bWZxQ.json index f2dd3e0f..2c00a2cf 100644 --- a/src/packs/items/weapons/weapon_Advanced_Cutlass_bw9WO9lxkM9bWZxQ.json +++ b/src/packs/items/weapons/weapon_Advanced_Cutlass_bw9WO9lxkM9bWZxQ.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831881396, - "modifiedTime": 1753831904535, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430999379, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bw9WO9lxkM9bWZxQ" } diff --git a/src/packs/items/weapons/weapon_Advanced_Dagger_mrioysDjNQEIE8hN.json b/src/packs/items/weapons/weapon_Advanced_Dagger_mrioysDjNQEIE8hN.json index 17aa209b..9fd77076 100644 --- a/src/packs/items/weapons/weapon_Advanced_Dagger_mrioysDjNQEIE8hN.json +++ b/src/packs/items/weapons/weapon_Advanced_Dagger_mrioysDjNQEIE8hN.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831785214, - "modifiedTime": 1753831814649, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431005188, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mrioysDjNQEIE8hN" } diff --git a/src/packs/items/weapons/weapon_Advanced_Dualstaff_X5x3sC7v2f3L9sjL.json b/src/packs/items/weapons/weapon_Advanced_Dualstaff_X5x3sC7v2f3L9sjL.json index dc665696..eed619c5 100644 --- a/src/packs/items/weapons/weapon_Advanced_Dualstaff_X5x3sC7v2f3L9sjL.json +++ b/src/packs/items/weapons/weapon_Advanced_Dualstaff_X5x3sC7v2f3L9sjL.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833383897, - "modifiedTime": 1753833411958, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431162464, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!X5x3sC7v2f3L9sjL" } diff --git a/src/packs/items/weapons/weapon_Advanced_Glowing_Rings_InQoh8mZPnwarQkX.json b/src/packs/items/weapons/weapon_Advanced_Glowing_Rings_InQoh8mZPnwarQkX.json index c647f3da..338ddc71 100644 --- a/src/packs/items/weapons/weapon_Advanced_Glowing_Rings_InQoh8mZPnwarQkX.json +++ b/src/packs/items/weapons/weapon_Advanced_Glowing_Rings_InQoh8mZPnwarQkX.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833176806, - "modifiedTime": 1753833243855, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431169037, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!InQoh8mZPnwarQkX" } diff --git a/src/packs/items/weapons/weapon_Advanced_Grappler_7vvhVl4TDJHtjpFK.json b/src/packs/items/weapons/weapon_Advanced_Grappler_7vvhVl4TDJHtjpFK.json index ffb6bb44..4477b871 100644 --- a/src/packs/items/weapons/weapon_Advanced_Grappler_7vvhVl4TDJHtjpFK.json +++ b/src/packs/items/weapons/weapon_Advanced_Grappler_7vvhVl4TDJHtjpFK.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753795033661, - "modifiedTime": 1753795079243, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430411064, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!7vvhVl4TDJHtjpFK" } diff --git a/src/packs/items/weapons/weapon_Advanced_Greatstaff_4UzxqfkwF8gDSdu7.json b/src/packs/items/weapons/weapon_Advanced_Greatstaff_4UzxqfkwF8gDSdu7.json index cbd63dd5..dd768c28 100644 --- a/src/packs/items/weapons/weapon_Advanced_Greatstaff_4UzxqfkwF8gDSdu7.json +++ b/src/packs/items/weapons/weapon_Advanced_Greatstaff_4UzxqfkwF8gDSdu7.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833576312, - "modifiedTime": 1753833602381, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431174265, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4UzxqfkwF8gDSdu7" } diff --git a/src/packs/items/weapons/weapon_Advanced_Greatsword_MAC6YWTo4lzSotQc.json b/src/packs/items/weapons/weapon_Advanced_Greatsword_MAC6YWTo4lzSotQc.json index 81d05554..d1dff9f7 100644 --- a/src/packs/items/weapons/weapon_Advanced_Greatsword_MAC6YWTo4lzSotQc.json +++ b/src/packs/items/weapons/weapon_Advanced_Greatsword_MAC6YWTo4lzSotQc.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -162,12 +167,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831701352, - "modifiedTime": 1753831723203, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431010340, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MAC6YWTo4lzSotQc" } diff --git a/src/packs/items/weapons/weapon_Advanced_Halberd_C8gQn7onAc9wsrCs.json b/src/packs/items/weapons/weapon_Advanced_Halberd_C8gQn7onAc9wsrCs.json index d314f604..cc9dddea 100644 --- a/src/packs/items/weapons/weapon_Advanced_Halberd_C8gQn7onAc9wsrCs.json +++ b/src/packs/items/weapons/weapon_Advanced_Halberd_C8gQn7onAc9wsrCs.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831933214, - "modifiedTime": 1753831956886, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431016287, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!C8gQn7onAc9wsrCs" } diff --git a/src/packs/items/weapons/weapon_Advanced_Hallowed_Axe_BiyXKX2Mo1TQbKgk.json b/src/packs/items/weapons/weapon_Advanced_Hallowed_Axe_BiyXKX2Mo1TQbKgk.json index 52840548..48b52862 100644 --- a/src/packs/items/weapons/weapon_Advanced_Hallowed_Axe_BiyXKX2Mo1TQbKgk.json +++ b/src/packs/items/weapons/weapon_Advanced_Hallowed_Axe_BiyXKX2Mo1TQbKgk.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833120834, - "modifiedTime": 1753833164907, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431179762, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BiyXKX2Mo1TQbKgk" } diff --git a/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json b/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json index ef1eb127..6b893013 100644 --- a/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json +++ b/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753795089792, - "modifiedTime": 1753795117775, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430416538, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Lsvocst8aGqkBj7g" } diff --git a/src/packs/items/weapons/weapon_Advanced_Hand_Runes_PQACczSghZIVTdgZ.json b/src/packs/items/weapons/weapon_Advanced_Hand_Runes_PQACczSghZIVTdgZ.json index 9f78b140..2ecb02ce 100644 --- a/src/packs/items/weapons/weapon_Advanced_Hand_Runes_PQACczSghZIVTdgZ.json +++ b/src/packs/items/weapons/weapon_Advanced_Hand_Runes_PQACczSghZIVTdgZ.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833253569, - "modifiedTime": 1753833282989, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431184599, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PQACczSghZIVTdgZ" } diff --git a/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json b/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json index f8257028..9b7f4816 100644 --- a/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json +++ b/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -150,10 +155,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836675558, - "modifiedTime": 1754845996869, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430171326, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "eT2Qwb0RdrLX2hH1", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json b/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json index 324af2b1..9321abf8 100644 --- a/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json +++ b/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json @@ -129,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 54, + "artist": "" } }, "effects": [], @@ -143,10 +148,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836614032, - "modifiedTime": 1754846020904, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430232313, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "BuMfupnCzHbziQ8o", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Advanced_Longbow_M5CywMAyPKGgebsJ.json b/src/packs/items/weapons/weapon_Advanced_Longbow_M5CywMAyPKGgebsJ.json index 0ebb1d08..237d30c2 100644 --- a/src/packs/items/weapons/weapon_Advanced_Longbow_M5CywMAyPKGgebsJ.json +++ b/src/packs/items/weapons/weapon_Advanced_Longbow_M5CywMAyPKGgebsJ.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832060079, - "modifiedTime": 1753832086913, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431035842, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!M5CywMAyPKGgebsJ" } diff --git a/src/packs/items/weapons/weapon_Advanced_Longsword_9xkB3MWXahrsVP4N.json b/src/packs/items/weapons/weapon_Advanced_Longsword_9xkB3MWXahrsVP4N.json index 8b44c759..e7977c92 100644 --- a/src/packs/items/weapons/weapon_Advanced_Longsword_9xkB3MWXahrsVP4N.json +++ b/src/packs/items/weapons/weapon_Advanced_Longsword_9xkB3MWXahrsVP4N.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831635467, - "modifiedTime": 1753831658646, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431029688, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9xkB3MWXahrsVP4N" } diff --git a/src/packs/items/weapons/weapon_Advanced_Mace_WreMYiH5uhVDaoVw.json b/src/packs/items/weapons/weapon_Advanced_Mace_WreMYiH5uhVDaoVw.json index 770a061c..1dd1f447 100644 --- a/src/packs/items/weapons/weapon_Advanced_Mace_WreMYiH5uhVDaoVw.json +++ b/src/packs/items/weapons/weapon_Advanced_Mace_WreMYiH5uhVDaoVw.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831730528, - "modifiedTime": 1753831747562, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431024022, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WreMYiH5uhVDaoVw" } diff --git a/src/packs/items/weapons/weapon_Advanced_Quarterstaff_zJtm2f9ZFKZRtCRg.json b/src/packs/items/weapons/weapon_Advanced_Quarterstaff_zJtm2f9ZFKZRtCRg.json index e9a2ff48..60d059ef 100644 --- a/src/packs/items/weapons/weapon_Advanced_Quarterstaff_zJtm2f9ZFKZRtCRg.json +++ b/src/packs/items/weapons/weapon_Advanced_Quarterstaff_zJtm2f9ZFKZRtCRg.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831826360, - "modifiedTime": 1753831868734, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431045472, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zJtm2f9ZFKZRtCRg" } diff --git a/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json b/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json index e108d48f..9352e5de 100644 --- a/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json +++ b/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831909596, - "modifiedTime": 1753831926420, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431050992, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!KxFne76d7cak15dO" } diff --git a/src/packs/items/weapons/weapon_Advanced_Returning_Blade_sIGXA4KMeYBUjcEO.json b/src/packs/items/weapons/weapon_Advanced_Returning_Blade_sIGXA4KMeYBUjcEO.json index e549ce09..04a8537c 100644 --- a/src/packs/items/weapons/weapon_Advanced_Returning_Blade_sIGXA4KMeYBUjcEO.json +++ b/src/packs/items/weapons/weapon_Advanced_Returning_Blade_sIGXA4KMeYBUjcEO.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833291783, - "modifiedTime": 1753833332963, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431189871, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!sIGXA4KMeYBUjcEO" } diff --git a/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json b/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json index 9240fbaf..6384e2b8 100644 --- a/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json +++ b/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794853303, - "modifiedTime": 1753794890718, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430422255, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hiEOGF2reabGLUoi" } diff --git a/src/packs/items/weapons/weapon_Advanced_Scepter_2Khzuj768yoWN9QK.json b/src/packs/items/weapons/weapon_Advanced_Scepter_2Khzuj768yoWN9QK.json index 0f24c888..8410acba 100644 --- a/src/packs/items/weapons/weapon_Advanced_Scepter_2Khzuj768yoWN9QK.json +++ b/src/packs/items/weapons/weapon_Advanced_Scepter_2Khzuj768yoWN9QK.json @@ -166,6 +166,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -179,12 +184,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833421806, - "modifiedTime": 1753835888435, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431194696, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2Khzuj768yoWN9QK" } diff --git a/src/packs/items/weapons/weapon_Advanced_Shortbow_JpSlJvDR0X8VFDns.json b/src/packs/items/weapons/weapon_Advanced_Shortbow_JpSlJvDR0X8VFDns.json index e54b4eea..c6cf9e45 100644 --- a/src/packs/items/weapons/weapon_Advanced_Shortbow_JpSlJvDR0X8VFDns.json +++ b/src/packs/items/weapons/weapon_Advanced_Shortbow_JpSlJvDR0X8VFDns.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831998635, - "modifiedTime": 1753832018423, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431055980, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!JpSlJvDR0X8VFDns" } diff --git a/src/packs/items/weapons/weapon_Advanced_Shortstaff_T5exRCqOXhrjSYnI.json b/src/packs/items/weapons/weapon_Advanced_Shortstaff_T5exRCqOXhrjSYnI.json index b09613da..b9f8abd7 100644 --- a/src/packs/items/weapons/weapon_Advanced_Shortstaff_T5exRCqOXhrjSYnI.json +++ b/src/packs/items/weapons/weapon_Advanced_Shortstaff_T5exRCqOXhrjSYnI.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833341389, - "modifiedTime": 1753833375298, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431199497, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!T5exRCqOXhrjSYnI" } diff --git a/src/packs/items/weapons/weapon_Advanced_Shortsword_p3nz5CaGUoyuGVg0.json b/src/packs/items/weapons/weapon_Advanced_Shortsword_p3nz5CaGUoyuGVg0.json index a7b33030..3602de12 100644 --- a/src/packs/items/weapons/weapon_Advanced_Shortsword_p3nz5CaGUoyuGVg0.json +++ b/src/packs/items/weapons/weapon_Advanced_Shortsword_p3nz5CaGUoyuGVg0.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753794821174, - "modifiedTime": 1755268343096, + "modifiedTime": 1755430427239, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!p3nz5CaGUoyuGVg0" diff --git a/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json b/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json index 958bda92..aec66a76 100644 --- a/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json +++ b/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753794938643, - "modifiedTime": 1755268350050, + "modifiedTime": 1755430432441, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0thN0BpN05KT8Avx" diff --git a/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json b/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json index 0bfb4a8f..a1a7ad44 100644 --- a/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json +++ b/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -144,12 +149,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831962536, - "modifiedTime": 1753831987004, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431061358, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!pK6dsNABKKp1CIGN" } diff --git a/src/packs/items/weapons/weapon_Advanced_Tower_Shield_OfOzQbs4hg6QbfTG.json b/src/packs/items/weapons/weapon_Advanced_Tower_Shield_OfOzQbs4hg6QbfTG.json index 33d9f577..47982de2 100644 --- a/src/packs/items/weapons/weapon_Advanced_Tower_Shield_OfOzQbs4hg6QbfTG.json +++ b/src/packs/items/weapons/weapon_Advanced_Tower_Shield_OfOzQbs4hg6QbfTG.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794904892, - "modifiedTime": 1753794929241, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430438607, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!OfOzQbs4hg6QbfTG" } diff --git a/src/packs/items/weapons/weapon_Advanced_Wand_jU9jWIardjtdAQcs.json b/src/packs/items/weapons/weapon_Advanced_Wand_jU9jWIardjtdAQcs.json index 65bd9fc3..4e427132 100644 --- a/src/packs/items/weapons/weapon_Advanced_Wand_jU9jWIardjtdAQcs.json +++ b/src/packs/items/weapons/weapon_Advanced_Wand_jU9jWIardjtdAQcs.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833518519, - "modifiedTime": 1753833553163, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431205397, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jU9jWIardjtdAQcs" } diff --git a/src/packs/items/weapons/weapon_Advanced_Warhammer_8Lipw3RRKDgBVP0p.json b/src/packs/items/weapons/weapon_Advanced_Warhammer_8Lipw3RRKDgBVP0p.json index 56eb31fc..7d3276c6 100644 --- a/src/packs/items/weapons/weapon_Advanced_Warhammer_8Lipw3RRKDgBVP0p.json +++ b/src/packs/items/weapons/weapon_Advanced_Warhammer_8Lipw3RRKDgBVP0p.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831754451, - "modifiedTime": 1753831777547, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431066673, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!8Lipw3RRKDgBVP0p" } diff --git a/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json b/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json index b9c4242d..99cae67f 100644 --- a/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json +++ b/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753795001576, - "modifiedTime": 1753808405822, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430443629, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!01izMUSJcAUo79IX" } diff --git a/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json b/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json index 3dd7d463..ca0b07d7 100644 --- a/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json +++ b/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753836689082, - "modifiedTime": 1754845945327, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430185213, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!XRChepscgr75Uug7" } diff --git a/src/packs/items/weapons/weapon_Arcane_Gauntlets_PC5EyEIq7NWBV0n5.json b/src/packs/items/weapons/weapon_Arcane_Gauntlets_PC5EyEIq7NWBV0n5.json index abef59b7..9eb20491 100644 --- a/src/packs/items/weapons/weapon_Arcane_Gauntlets_PC5EyEIq7NWBV0n5.json +++ b/src/packs/items/weapons/weapon_Arcane_Gauntlets_PC5EyEIq7NWBV0n5.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828194643, - "modifiedTime": 1753828233213, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430636989, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PC5EyEIq7NWBV0n5" } diff --git a/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json b/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json index ae0f0398..eb5c8e2b 100644 --- a/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json +++ b/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833614959, - "modifiedTime": 1753833653403, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431211441, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!YcS1rHgfnSlla8Xf" } diff --git a/src/packs/items/weapons/weapon_Battleaxe_fbDYUja3ll9vCtrB.json b/src/packs/items/weapons/weapon_Battleaxe_fbDYUja3ll9vCtrB.json index 00034072..63ed7753 100644 --- a/src/packs/items/weapons/weapon_Battleaxe_fbDYUja3ll9vCtrB.json +++ b/src/packs/items/weapons/weapon_Battleaxe_fbDYUja3ll9vCtrB.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827787429, - "modifiedTime": 1753827801986, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430553429, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!fbDYUja3ll9vCtrB" } diff --git a/src/packs/items/weapons/weapon_Black_Powder_Revolver_AokqTusPzn0hghkE.json b/src/packs/items/weapons/weapon_Black_Powder_Revolver_AokqTusPzn0hghkE.json index 916958c9..699b06ae 100644 --- a/src/packs/items/weapons/weapon_Black_Powder_Revolver_AokqTusPzn0hghkE.json +++ b/src/packs/items/weapons/weapon_Black_Powder_Revolver_AokqTusPzn0hghkE.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832483435, - "modifiedTime": 1753832502167, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431071691, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!AokqTusPzn0hghkE" } diff --git a/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json b/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json index 9e188b9f..c7a74b26 100644 --- a/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json +++ b/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829680830, - "modifiedTime": 1753829701111, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430702556, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!5faflfNz20cFW1EM" } diff --git a/src/packs/items/weapons/weapon_Blessed_Anlace_n1oPTk5czTIGTkVj.json b/src/packs/items/weapons/weapon_Blessed_Anlace_n1oPTk5czTIGTkVj.json index f4d8d52a..83ef5820 100644 --- a/src/packs/items/weapons/weapon_Blessed_Anlace_n1oPTk5czTIGTkVj.json +++ b/src/packs/items/weapons/weapon_Blessed_Anlace_n1oPTk5czTIGTkVj.json @@ -168,6 +168,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -181,12 +186,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833663905, - "modifiedTime": 1754406631151, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755431216258, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!n1oPTk5czTIGTkVj" } diff --git a/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json b/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json index abd09941..1273d9a8 100644 --- a/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json +++ b/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836256052, - "modifiedTime": 1753836294025, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431424609, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!IoMVDz92WVvfGGdc" } diff --git a/src/packs/items/weapons/weapon_Blunderbuss_SLFrK0WmldPo0shz.json b/src/packs/items/weapons/weapon_Blunderbuss_SLFrK0WmldPo0shz.json index 7d211d92..e6fefe1c 100644 --- a/src/packs/items/weapons/weapon_Blunderbuss_SLFrK0WmldPo0shz.json +++ b/src/packs/items/weapons/weapon_Blunderbuss_SLFrK0WmldPo0shz.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829780930, - "modifiedTime": 1753829802107, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430707621, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SLFrK0WmldPo0shz" } diff --git a/src/packs/items/weapons/weapon_Braveshield_QEvgVoz9xKBSKsGi.json b/src/packs/items/weapons/weapon_Braveshield_QEvgVoz9xKBSKsGi.json index 6b9af93d..920985fa 100644 --- a/src/packs/items/weapons/weapon_Braveshield_QEvgVoz9xKBSKsGi.json +++ b/src/packs/items/weapons/weapon_Braveshield_QEvgVoz9xKBSKsGi.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753797203355, - "modifiedTime": 1753797247008, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430470813, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QEvgVoz9xKBSKsGi" } diff --git a/src/packs/items/weapons/weapon_Bravesword_QZrWAkprA2tL2MOI.json b/src/packs/items/weapons/weapon_Bravesword_QZrWAkprA2tL2MOI.json index b5d7559f..29ccef77 100644 --- a/src/packs/items/weapons/weapon_Bravesword_QZrWAkprA2tL2MOI.json +++ b/src/packs/items/weapons/weapon_Bravesword_QZrWAkprA2tL2MOI.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832142373, - "modifiedTime": 1753832160787, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431087258, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QZrWAkprA2tL2MOI" } diff --git a/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json b/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json index 959a8547..10bbaf8c 100644 --- a/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json +++ b/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753827734892, - "modifiedTime": 1754814769821, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430559304, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1cwWNt4sqlgA8gCT" } diff --git a/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json b/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json index 852a213f..8e6ef6ca 100644 --- a/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json +++ b/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json @@ -137,6 +137,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -189,12 +194,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753795181779, - "modifiedTime": 1753808413753, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430450631, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!EmFTp9wzT6MHSaNz" } diff --git a/src/packs/items/weapons/weapon_Casting_Sword_2Fbf2cxLfbdGkU4I.json b/src/packs/items/weapons/weapon_Casting_Sword_2Fbf2cxLfbdGkU4I.json index 6394645b..45924203 100644 --- a/src/packs/items/weapons/weapon_Casting_Sword_2Fbf2cxLfbdGkU4I.json +++ b/src/packs/items/weapons/weapon_Casting_Sword_2Fbf2cxLfbdGkU4I.json @@ -164,6 +164,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -177,12 +182,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831124348, - "modifiedTime": 1753831194254, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430854985, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2Fbf2cxLfbdGkU4I" } diff --git a/src/packs/items/weapons/weapon_Crossbow_cw7HG1Z7hp7OOLD0.json b/src/packs/items/weapons/weapon_Crossbow_cw7HG1Z7hp7OOLD0.json index ac1fdb6a..b0915863 100644 --- a/src/packs/items/weapons/weapon_Crossbow_cw7HG1Z7hp7OOLD0.json +++ b/src/packs/items/weapons/weapon_Crossbow_cw7HG1Z7hp7OOLD0.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828109370, - "modifiedTime": 1753828127762, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430563597, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cw7HG1Z7hp7OOLD0" } diff --git a/src/packs/items/weapons/weapon_Curved_Dagger_Fk69R40svV0kanZD.json b/src/packs/items/weapons/weapon_Curved_Dagger_Fk69R40svV0kanZD.json index c3c4b5d6..0ce2a676 100644 --- a/src/packs/items/weapons/weapon_Curved_Dagger_Fk69R40svV0kanZD.json +++ b/src/packs/items/weapons/weapon_Curved_Dagger_Fk69R40svV0kanZD.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835098261, - "modifiedTime": 1753835125696, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431277893, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Fk69R40svV0kanZD" } diff --git a/src/packs/items/weapons/weapon_Cutlass_CWrbnethuILXrEpA.json b/src/packs/items/weapons/weapon_Cutlass_CWrbnethuILXrEpA.json index 42839516..601ac04e 100644 --- a/src/packs/items/weapons/weapon_Cutlass_CWrbnethuILXrEpA.json +++ b/src/packs/items/weapons/weapon_Cutlass_CWrbnethuILXrEpA.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827943490, - "modifiedTime": 1753827960371, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430570250, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CWrbnethuILXrEpA" } diff --git a/src/packs/items/weapons/weapon_Dagger_iStO0BbeMTTR0rQi.json b/src/packs/items/weapons/weapon_Dagger_iStO0BbeMTTR0rQi.json index fe6e34bb..74b81e48 100644 --- a/src/packs/items/weapons/weapon_Dagger_iStO0BbeMTTR0rQi.json +++ b/src/packs/items/weapons/weapon_Dagger_iStO0BbeMTTR0rQi.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827894955, - "modifiedTime": 1753827907060, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430575107, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!iStO0BbeMTTR0rQi" } diff --git a/src/packs/items/weapons/weapon_Devouring_Dagger_C5wSGglR8e0euQnY.json b/src/packs/items/weapons/weapon_Devouring_Dagger_C5wSGglR8e0euQnY.json index 153220f1..8a97fe05 100644 --- a/src/packs/items/weapons/weapon_Devouring_Dagger_C5wSGglR8e0euQnY.json +++ b/src/packs/items/weapons/weapon_Devouring_Dagger_C5wSGglR8e0euQnY.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831203997, - "modifiedTime": 1753831225429, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430861829, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!C5wSGglR8e0euQnY" } diff --git a/src/packs/items/weapons/weapon_Double_Flail_xm1yU7k58fMgXxRR.json b/src/packs/items/weapons/weapon_Double_Flail_xm1yU7k58fMgXxRR.json index 2a3a6095..86145c0f 100644 --- a/src/packs/items/weapons/weapon_Double_Flail_xm1yU7k58fMgXxRR.json +++ b/src/packs/items/weapons/weapon_Double_Flail_xm1yU7k58fMgXxRR.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832332785, - "modifiedTime": 1753832367770, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431095042, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xm1yU7k58fMgXxRR" } diff --git a/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json b/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json index 4463cef4..1c4f75ce 100644 --- a/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json +++ b/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834935521, - "modifiedTime": 1753835006406, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431282742, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nXjuBa215H1sTUK3" } diff --git a/src/packs/items/weapons/weapon_Dualstaff_j8cdNeIUYxxzFVji.json b/src/packs/items/weapons/weapon_Dualstaff_j8cdNeIUYxxzFVji.json index 35cf3dd6..44487b58 100644 --- a/src/packs/items/weapons/weapon_Dualstaff_j8cdNeIUYxxzFVji.json +++ b/src/packs/items/weapons/weapon_Dualstaff_j8cdNeIUYxxzFVji.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828411828, - "modifiedTime": 1753828446546, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430641953, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!j8cdNeIUYxxzFVji" } diff --git a/src/packs/items/weapons/weapon_Ego_Blade_G7rH31KQ5eEZXcv0.json b/src/packs/items/weapons/weapon_Ego_Blade_G7rH31KQ5eEZXcv0.json index 2d54aa50..82f90f23 100644 --- a/src/packs/items/weapons/weapon_Ego_Blade_G7rH31KQ5eEZXcv0.json +++ b/src/packs/items/weapons/weapon_Ego_Blade_G7rH31KQ5eEZXcv0.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831084805, - "modifiedTime": 1753831108928, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430867175, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!G7rH31KQ5eEZXcv0" } diff --git a/src/packs/items/weapons/weapon_Elder_Bow_JdWcn9W1edhAEInL.json b/src/packs/items/weapons/weapon_Elder_Bow_JdWcn9W1edhAEInL.json index f9637a9e..7441238b 100644 --- a/src/packs/items/weapons/weapon_Elder_Bow_JdWcn9W1edhAEInL.json +++ b/src/packs/items/weapons/weapon_Elder_Bow_JdWcn9W1edhAEInL.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831304971, - "modifiedTime": 1753831327540, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430872430, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!JdWcn9W1edhAEInL" } diff --git a/src/packs/items/weapons/weapon_Extended_Polearm_fJHKMxZokVP34MCi.json b/src/packs/items/weapons/weapon_Extended_Polearm_fJHKMxZokVP34MCi.json index 65b0a657..0c28d943 100644 --- a/src/packs/items/weapons/weapon_Extended_Polearm_fJHKMxZokVP34MCi.json +++ b/src/packs/items/weapons/weapon_Extended_Polearm_fJHKMxZokVP34MCi.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835136460, - "modifiedTime": 1753835169098, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431287604, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!fJHKMxZokVP34MCi" } diff --git a/src/packs/items/weapons/weapon_Finehair_Bow_ykF3jouxHZ6YR8Bg.json b/src/packs/items/weapons/weapon_Finehair_Bow_ykF3jouxHZ6YR8Bg.json index 5dba19c9..d4c8bb5b 100644 --- a/src/packs/items/weapons/weapon_Finehair_Bow_ykF3jouxHZ6YR8Bg.json +++ b/src/packs/items/weapons/weapon_Finehair_Bow_ykF3jouxHZ6YR8Bg.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829844531, - "modifiedTime": 1753829859088, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430717775, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ykF3jouxHZ6YR8Bg" } diff --git a/src/packs/items/weapons/weapon_Firestaff_BtCm2RhWEfs00g38.json b/src/packs/items/weapons/weapon_Firestaff_BtCm2RhWEfs00g38.json index f71b63b2..e10f1fd7 100644 --- a/src/packs/items/weapons/weapon_Firestaff_BtCm2RhWEfs00g38.json +++ b/src/packs/items/weapons/weapon_Firestaff_BtCm2RhWEfs00g38.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833915734, - "modifiedTime": 1753834249920, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431221418, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BtCm2RhWEfs00g38" } diff --git a/src/packs/items/weapons/weapon_Flickerfly_Blade_xLJ5RRpUoTRmAC3G.json b/src/packs/items/weapons/weapon_Flickerfly_Blade_xLJ5RRpUoTRmAC3G.json index 6696a3fb..d37f7142 100644 --- a/src/packs/items/weapons/weapon_Flickerfly_Blade_xLJ5RRpUoTRmAC3G.json +++ b/src/packs/items/weapons/weapon_Flickerfly_Blade_xLJ5RRpUoTRmAC3G.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832095587, - "modifiedTime": 1753832129589, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431100825, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xLJ5RRpUoTRmAC3G" } diff --git a/src/packs/items/weapons/weapon_Floating_Bladeshards_3vti3xfo0wJND7ew.json b/src/packs/items/weapons/weapon_Floating_Bladeshards_3vti3xfo0wJND7ew.json index 48087189..16237fff 100644 --- a/src/packs/items/weapons/weapon_Floating_Bladeshards_3vti3xfo0wJND7ew.json +++ b/src/packs/items/weapons/weapon_Floating_Bladeshards_3vti3xfo0wJND7ew.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836170763, - "modifiedTime": 1753836240655, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431431739, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3vti3xfo0wJND7ew" } diff --git a/src/packs/items/weapons/weapon_Fusion_Gloves_uK1RhtYAsDeoPNGx.json b/src/packs/items/weapons/weapon_Fusion_Gloves_uK1RhtYAsDeoPNGx.json index e8e14abb..ac039ece 100644 --- a/src/packs/items/weapons/weapon_Fusion_Gloves_uK1RhtYAsDeoPNGx.json +++ b/src/packs/items/weapons/weapon_Fusion_Gloves_uK1RhtYAsDeoPNGx.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836449043, - "modifiedTime": 1753836485751, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431436926, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!uK1RhtYAsDeoPNGx" } diff --git a/src/packs/items/weapons/weapon_Ghostblade_6gFvOFTE97QZ74Zr.json b/src/packs/items/weapons/weapon_Ghostblade_6gFvOFTE97QZ74Zr.json index a5d39bea..2a3853ea 100644 --- a/src/packs/items/weapons/weapon_Ghostblade_6gFvOFTE97QZ74Zr.json +++ b/src/packs/items/weapons/weapon_Ghostblade_6gFvOFTE97QZ74Zr.json @@ -93,6 +93,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -106,12 +111,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833724570, - "modifiedTime": 1753833788108, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431226770, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6gFvOFTE97QZ74Zr" } diff --git a/src/packs/items/weapons/weapon_Gilded_Bow_ctTgFfMbM3YtmsYU.json b/src/packs/items/weapons/weapon_Gilded_Bow_ctTgFfMbM3YtmsYU.json index bf6423c5..ff8d606b 100644 --- a/src/packs/items/weapons/weapon_Gilded_Bow_ctTgFfMbM3YtmsYU.json +++ b/src/packs/items/weapons/weapon_Gilded_Bow_ctTgFfMbM3YtmsYU.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833878513, - "modifiedTime": 1753833907298, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431231849, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ctTgFfMbM3YtmsYU" } diff --git a/src/packs/items/weapons/weapon_Gilded_Falchion_VwcOgqnzjf9LBj2S.json b/src/packs/items/weapons/weapon_Gilded_Falchion_VwcOgqnzjf9LBj2S.json index e9372819..f92fa49f 100644 --- a/src/packs/items/weapons/weapon_Gilded_Falchion_VwcOgqnzjf9LBj2S.json +++ b/src/packs/items/weapons/weapon_Gilded_Falchion_VwcOgqnzjf9LBj2S.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829584359, - "modifiedTime": 1753829600720, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430712705, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!VwcOgqnzjf9LBj2S" } diff --git a/src/packs/items/weapons/weapon_Glowing_Rings_wG9f5NpCwSbaLy8t.json b/src/packs/items/weapons/weapon_Glowing_Rings_wG9f5NpCwSbaLy8t.json index d1b43470..b0a515e1 100644 --- a/src/packs/items/weapons/weapon_Glowing_Rings_wG9f5NpCwSbaLy8t.json +++ b/src/packs/items/weapons/weapon_Glowing_Rings_wG9f5NpCwSbaLy8t.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828268892, - "modifiedTime": 1753828300354, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430650322, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!wG9f5NpCwSbaLy8t" } diff --git a/src/packs/items/weapons/weapon_Grappler_iEzPscUc18GuFoB6.json b/src/packs/items/weapons/weapon_Grappler_iEzPscUc18GuFoB6.json index 760cd787..585473ad 100644 --- a/src/packs/items/weapons/weapon_Grappler_iEzPscUc18GuFoB6.json +++ b/src/packs/items/weapons/weapon_Grappler_iEzPscUc18GuFoB6.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753744418464, - "modifiedTime": 1753794424526, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430265968, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!iEzPscUc18GuFoB6" } diff --git a/src/packs/items/weapons/weapon_Greatbow_MXBpbqQsZFln4rZk.json b/src/packs/items/weapons/weapon_Greatbow_MXBpbqQsZFln4rZk.json index 40092016..64800e1b 100644 --- a/src/packs/items/weapons/weapon_Greatbow_MXBpbqQsZFln4rZk.json +++ b/src/packs/items/weapons/weapon_Greatbow_MXBpbqQsZFln4rZk.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829810496, - "modifiedTime": 1753829836266, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430723754, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MXBpbqQsZFln4rZk" } diff --git a/src/packs/items/weapons/weapon_Greatstaff_Yk8pTEmyLLi4095S.json b/src/packs/items/weapons/weapon_Greatstaff_Yk8pTEmyLLi4095S.json index 91ab35c3..24a37b60 100644 --- a/src/packs/items/weapons/weapon_Greatstaff_Yk8pTEmyLLi4095S.json +++ b/src/packs/items/weapons/weapon_Greatstaff_Yk8pTEmyLLi4095S.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828546209, - "modifiedTime": 1753828572366, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430656056, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Yk8pTEmyLLi4095S" } diff --git a/src/packs/items/weapons/weapon_Greatsword_70ysaFJDREwTgvZa.json b/src/packs/items/weapons/weapon_Greatsword_70ysaFJDREwTgvZa.json index 88d68120..c3cfc91a 100644 --- a/src/packs/items/weapons/weapon_Greatsword_70ysaFJDREwTgvZa.json +++ b/src/packs/items/weapons/weapon_Greatsword_70ysaFJDREwTgvZa.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -162,12 +167,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827812456, - "modifiedTime": 1753827837860, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430580231, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!70ysaFJDREwTgvZa" } diff --git a/src/packs/items/weapons/weapon_Halberd_qT7FfmauAumOjJoq.json b/src/packs/items/weapons/weapon_Halberd_qT7FfmauAumOjJoq.json index 76ef57d5..5ddc4cf0 100644 --- a/src/packs/items/weapons/weapon_Halberd_qT7FfmauAumOjJoq.json +++ b/src/packs/items/weapons/weapon_Halberd_qT7FfmauAumOjJoq.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828005240, - "modifiedTime": 1753828027571, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430586032, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!qT7FfmauAumOjJoq" } diff --git a/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json b/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json index dfb94b82..11e0cc87 100644 --- a/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json +++ b/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828229603, - "modifiedTime": 1753828259599, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430661659, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Vayg7CnRTFBrunjM" } diff --git a/src/packs/items/weapons/weapon_Hammer_of_Exota_0lAkBEUvbM9Osmqb.json b/src/packs/items/weapons/weapon_Hammer_of_Exota_0lAkBEUvbM9Osmqb.json index 79b179e2..0c00da28 100644 --- a/src/packs/items/weapons/weapon_Hammer_of_Exota_0lAkBEUvbM9Osmqb.json +++ b/src/packs/items/weapons/weapon_Hammer_of_Exota_0lAkBEUvbM9Osmqb.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831233943, - "modifiedTime": 1753831254600, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430877137, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0lAkBEUvbM9Osmqb" } diff --git a/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json b/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json index 0733bc22..0a1d9dab 100644 --- a/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json +++ b/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832169515, - "modifiedTime": 1753832195344, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431106242, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1R4uzOpWD8bkYRUm" } diff --git a/src/packs/items/weapons/weapon_Hand_Cannon_MyGz8nd5sieRQ7zl.json b/src/packs/items/weapons/weapon_Hand_Cannon_MyGz8nd5sieRQ7zl.json index 9dfce730..20370546 100644 --- a/src/packs/items/weapons/weapon_Hand_Cannon_MyGz8nd5sieRQ7zl.json +++ b/src/packs/items/weapons/weapon_Hand_Cannon_MyGz8nd5sieRQ7zl.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835328057, - "modifiedTime": 1753835363359, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431292435, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MyGz8nd5sieRQ7zl" } diff --git a/src/packs/items/weapons/weapon_Hand_Crossbow_zxKt6qXe7uZB6ljm.json b/src/packs/items/weapons/weapon_Hand_Crossbow_zxKt6qXe7uZB6ljm.json index 7cbbeaec..61ce4d99 100644 --- a/src/packs/items/weapons/weapon_Hand_Crossbow_zxKt6qXe7uZB6ljm.json +++ b/src/packs/items/weapons/weapon_Hand_Crossbow_zxKt6qXe7uZB6ljm.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753744526958, - "modifiedTime": 1753794520954, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430274014, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zxKt6qXe7uZB6ljm" } diff --git a/src/packs/items/weapons/weapon_Hand_Runes_3whiedn0jBMNRdIb.json b/src/packs/items/weapons/weapon_Hand_Runes_3whiedn0jBMNRdIb.json index b16488ce..18da1680 100644 --- a/src/packs/items/weapons/weapon_Hand_Runes_3whiedn0jBMNRdIb.json +++ b/src/packs/items/weapons/weapon_Hand_Runes_3whiedn0jBMNRdIb.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828308338, - "modifiedTime": 1753828333546, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430667859, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3whiedn0jBMNRdIb" } diff --git a/src/packs/items/weapons/weapon_Hand_Sling_RAIaoMi6iO1PKIlK.json b/src/packs/items/weapons/weapon_Hand_Sling_RAIaoMi6iO1PKIlK.json index 39a16ddb..42d6b73e 100644 --- a/src/packs/items/weapons/weapon_Hand_Sling_RAIaoMi6iO1PKIlK.json +++ b/src/packs/items/weapons/weapon_Hand_Sling_RAIaoMi6iO1PKIlK.json @@ -164,6 +164,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -177,12 +182,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753796778752, - "modifiedTime": 1753796892053, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430455807, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!RAIaoMi6iO1PKIlK" } diff --git a/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json b/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json index b4c48925..a3aad851 100644 --- a/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json +++ b/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -154,10 +159,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836652314, - "modifiedTime": 1754845988869, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430156096, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!XjPQjhRCH08VUIbr" } diff --git a/src/packs/items/weapons/weapon_Ilmari_s_Rifle_TMrUzVC3KvcHmdt8.json b/src/packs/items/weapons/weapon_Ilmari_s_Rifle_TMrUzVC3KvcHmdt8.json index 5d2ad638..51bb46e8 100644 --- a/src/packs/items/weapons/weapon_Ilmari_s_Rifle_TMrUzVC3KvcHmdt8.json +++ b/src/packs/items/weapons/weapon_Ilmari_s_Rifle_TMrUzVC3KvcHmdt8.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834324778, - "modifiedTime": 1753834352088, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431237332, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TMrUzVC3KvcHmdt8" } diff --git a/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json b/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json index 5dd794d9..b817a332 100644 --- a/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json +++ b/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835022121, - "modifiedTime": 1753835056093, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431297704, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Zg6IutksQVOqAg8K" } diff --git a/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json b/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json index 69744aab..2fa3de9b 100644 --- a/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json +++ b/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -159,10 +164,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753836714712, - "modifiedTime": 1754845960700, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430190586, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "N9P695V5KKlJbAY5", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Improved_Arcane_Gauntlets_kENTDpa1hr5LDhIT.json b/src/packs/items/weapons/weapon_Improved_Arcane_Gauntlets_kENTDpa1hr5LDhIT.json index ace2d7f5..4fc65837 100644 --- a/src/packs/items/weapons/weapon_Improved_Arcane_Gauntlets_kENTDpa1hr5LDhIT.json +++ b/src/packs/items/weapons/weapon_Improved_Arcane_Gauntlets_kENTDpa1hr5LDhIT.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830663702, - "modifiedTime": 1753830688044, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430881797, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!kENTDpa1hr5LDhIT" } diff --git a/src/packs/items/weapons/weapon_Improved_Battleaxe_nxGUpuHLmuKdKsDC.json b/src/packs/items/weapons/weapon_Improved_Battleaxe_nxGUpuHLmuKdKsDC.json index 78a1d9ce..32ef07e2 100644 --- a/src/packs/items/weapons/weapon_Improved_Battleaxe_nxGUpuHLmuKdKsDC.json +++ b/src/packs/items/weapons/weapon_Improved_Battleaxe_nxGUpuHLmuKdKsDC.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829159520, - "modifiedTime": 1753829179084, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430728755, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nxGUpuHLmuKdKsDC" } diff --git a/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json b/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json index 69e46858..9828108d 100644 --- a/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json +++ b/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753829098118, - "modifiedTime": 1754814935815, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430733489, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!OcKeLJxvmdT81VBc" } diff --git a/src/packs/items/weapons/weapon_Improved_Crossbow_55NwHIIZHUeKSE3M.json b/src/packs/items/weapons/weapon_Improved_Crossbow_55NwHIIZHUeKSE3M.json index 4ebf336e..9607f5dd 100644 --- a/src/packs/items/weapons/weapon_Improved_Crossbow_55NwHIIZHUeKSE3M.json +++ b/src/packs/items/weapons/weapon_Improved_Crossbow_55NwHIIZHUeKSE3M.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829524850, - "modifiedTime": 1753829540618, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430738916, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!55NwHIIZHUeKSE3M" } diff --git a/src/packs/items/weapons/weapon_Improved_Cutlass_ddRjXnp2vbohu7rJ.json b/src/packs/items/weapons/weapon_Improved_Cutlass_ddRjXnp2vbohu7rJ.json index 57ead715..f72fd026 100644 --- a/src/packs/items/weapons/weapon_Improved_Cutlass_ddRjXnp2vbohu7rJ.json +++ b/src/packs/items/weapons/weapon_Improved_Cutlass_ddRjXnp2vbohu7rJ.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829336088, - "modifiedTime": 1753829379988, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430744857, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ddRjXnp2vbohu7rJ" } diff --git a/src/packs/items/weapons/weapon_Improved_Dagger_ScjTkb9qrndhlk9S.json b/src/packs/items/weapons/weapon_Improved_Dagger_ScjTkb9qrndhlk9S.json index 09e93778..509be257 100644 --- a/src/packs/items/weapons/weapon_Improved_Dagger_ScjTkb9qrndhlk9S.json +++ b/src/packs/items/weapons/weapon_Improved_Dagger_ScjTkb9qrndhlk9S.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829275876, - "modifiedTime": 1753829295031, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430751928, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ScjTkb9qrndhlk9S" } diff --git a/src/packs/items/weapons/weapon_Improved_Dualstaff_f7hhHlZ5nL3AhYEM.json b/src/packs/items/weapons/weapon_Improved_Dualstaff_f7hhHlZ5nL3AhYEM.json index a55aedd0..e6227e27 100644 --- a/src/packs/items/weapons/weapon_Improved_Dualstaff_f7hhHlZ5nL3AhYEM.json +++ b/src/packs/items/weapons/weapon_Improved_Dualstaff_f7hhHlZ5nL3AhYEM.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830887023, - "modifiedTime": 1753830918763, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430886600, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!f7hhHlZ5nL3AhYEM" } diff --git a/src/packs/items/weapons/weapon_Improved_Glowing_Rings_N5amhkxR1xn3B7r2.json b/src/packs/items/weapons/weapon_Improved_Glowing_Rings_N5amhkxR1xn3B7r2.json index 1ee640bb..09fc7d78 100644 --- a/src/packs/items/weapons/weapon_Improved_Glowing_Rings_N5amhkxR1xn3B7r2.json +++ b/src/packs/items/weapons/weapon_Improved_Glowing_Rings_N5amhkxR1xn3B7r2.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830729041, - "modifiedTime": 1753830753601, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430892102, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!N5amhkxR1xn3B7r2" } diff --git a/src/packs/items/weapons/weapon_Improved_Grappler_3T3o9zfe61t22L1H.json b/src/packs/items/weapons/weapon_Improved_Grappler_3T3o9zfe61t22L1H.json index d8b91be7..b10eb764 100644 --- a/src/packs/items/weapons/weapon_Improved_Grappler_3T3o9zfe61t22L1H.json +++ b/src/packs/items/weapons/weapon_Improved_Grappler_3T3o9zfe61t22L1H.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794386984, - "modifiedTime": 1753795053642, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430314424, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3T3o9zfe61t22L1H" } diff --git a/src/packs/items/weapons/weapon_Improved_Greatstaff_LCuTrYXi4lhg6LqW.json b/src/packs/items/weapons/weapon_Improved_Greatstaff_LCuTrYXi4lhg6LqW.json index 9b239f60..ab3f7d21 100644 --- a/src/packs/items/weapons/weapon_Improved_Greatstaff_LCuTrYXi4lhg6LqW.json +++ b/src/packs/items/weapons/weapon_Improved_Greatstaff_LCuTrYXi4lhg6LqW.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831031130, - "modifiedTime": 1753831074766, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430897181, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!LCuTrYXi4lhg6LqW" } diff --git a/src/packs/items/weapons/weapon_Improved_Greatsword_FPX4ouDrxXiQ5MDf.json b/src/packs/items/weapons/weapon_Improved_Greatsword_FPX4ouDrxXiQ5MDf.json index 28cad987..eae9543b 100644 --- a/src/packs/items/weapons/weapon_Improved_Greatsword_FPX4ouDrxXiQ5MDf.json +++ b/src/packs/items/weapons/weapon_Improved_Greatsword_FPX4ouDrxXiQ5MDf.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -162,12 +167,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829188168, - "modifiedTime": 1753829211950, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430760464, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!FPX4ouDrxXiQ5MDf" } diff --git a/src/packs/items/weapons/weapon_Improved_Halberd_F9PETfCQGwczBPif.json b/src/packs/items/weapons/weapon_Improved_Halberd_F9PETfCQGwczBPif.json index bc88174b..ac5197ed 100644 --- a/src/packs/items/weapons/weapon_Improved_Halberd_F9PETfCQGwczBPif.json +++ b/src/packs/items/weapons/weapon_Improved_Halberd_F9PETfCQGwczBPif.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829414070, - "modifiedTime": 1753829436559, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430766141, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!F9PETfCQGwczBPif" } diff --git a/src/packs/items/weapons/weapon_Improved_Hallowed_Axe_wFOXMN2uiX4j6Gd9.json b/src/packs/items/weapons/weapon_Improved_Hallowed_Axe_wFOXMN2uiX4j6Gd9.json index 818c0f55..d9bc2a64 100644 --- a/src/packs/items/weapons/weapon_Improved_Hallowed_Axe_wFOXMN2uiX4j6Gd9.json +++ b/src/packs/items/weapons/weapon_Improved_Hallowed_Axe_wFOXMN2uiX4j6Gd9.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830697026, - "modifiedTime": 1753830717920, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430905049, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!wFOXMN2uiX4j6Gd9" } diff --git a/src/packs/items/weapons/weapon_Improved_Hand_Crossbow_XEDRkuw3BhMoVBn9.json b/src/packs/items/weapons/weapon_Improved_Hand_Crossbow_XEDRkuw3BhMoVBn9.json index 63e7f363..8227c35d 100644 --- a/src/packs/items/weapons/weapon_Improved_Hand_Crossbow_XEDRkuw3BhMoVBn9.json +++ b/src/packs/items/weapons/weapon_Improved_Hand_Crossbow_XEDRkuw3BhMoVBn9.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794476404, - "modifiedTime": 1753794517681, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430322922, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!XEDRkuw3BhMoVBn9" } diff --git a/src/packs/items/weapons/weapon_Improved_Hand_Runes_jMEukC3VpNDz5AOD.json b/src/packs/items/weapons/weapon_Improved_Hand_Runes_jMEukC3VpNDz5AOD.json index 246a4dff..05f8955c 100644 --- a/src/packs/items/weapons/weapon_Improved_Hand_Runes_jMEukC3VpNDz5AOD.json +++ b/src/packs/items/weapons/weapon_Improved_Hand_Runes_jMEukC3VpNDz5AOD.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830762576, - "modifiedTime": 1753830786247, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430910158, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jMEukC3VpNDz5AOD" } diff --git a/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json b/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json index 70531b7c..c22323d0 100644 --- a/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json +++ b/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -150,10 +155,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836674233, - "modifiedTime": 1754845992757, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430164612, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "L5KeCtrs768PmYWW", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json b/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json index 737e2c55..e774d93d 100644 --- a/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json +++ b/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json @@ -129,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 54, + "artist": "" } }, "effects": [], @@ -143,10 +148,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836612291, - "modifiedTime": 1754846018260, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430225855, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ZJsetdHKV77ygtCE", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Improved_Longbow_NacNonjbzyoVMNhI.json b/src/packs/items/weapons/weapon_Improved_Longbow_NacNonjbzyoVMNhI.json index 18b98cc0..f23b203e 100644 --- a/src/packs/items/weapons/weapon_Improved_Longbow_NacNonjbzyoVMNhI.json +++ b/src/packs/items/weapons/weapon_Improved_Longbow_NacNonjbzyoVMNhI.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829548741, - "modifiedTime": 1753829574677, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430771841, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!NacNonjbzyoVMNhI" } diff --git a/src/packs/items/weapons/weapon_Improved_Longsword_QyBZ5NxM8F9nCL9s.json b/src/packs/items/weapons/weapon_Improved_Longsword_QyBZ5NxM8F9nCL9s.json index b064b1c2..c6e71c36 100644 --- a/src/packs/items/weapons/weapon_Improved_Longsword_QyBZ5NxM8F9nCL9s.json +++ b/src/packs/items/weapons/weapon_Improved_Longsword_QyBZ5NxM8F9nCL9s.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829133179, - "modifiedTime": 1753829150848, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430779350, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QyBZ5NxM8F9nCL9s" } diff --git a/src/packs/items/weapons/weapon_Improved_Mace_zSLx52U4Yltqx8F1.json b/src/packs/items/weapons/weapon_Improved_Mace_zSLx52U4Yltqx8F1.json index 3c079674..a4c469e3 100644 --- a/src/packs/items/weapons/weapon_Improved_Mace_zSLx52U4Yltqx8F1.json +++ b/src/packs/items/weapons/weapon_Improved_Mace_zSLx52U4Yltqx8F1.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829219204, - "modifiedTime": 1753829233784, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430785076, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zSLx52U4Yltqx8F1" } diff --git a/src/packs/items/weapons/weapon_Improved_Quarterstaff_BEmAR60PM3ZaiNXa.json b/src/packs/items/weapons/weapon_Improved_Quarterstaff_BEmAR60PM3ZaiNXa.json index 54b220a5..03975811 100644 --- a/src/packs/items/weapons/weapon_Improved_Quarterstaff_BEmAR60PM3ZaiNXa.json +++ b/src/packs/items/weapons/weapon_Improved_Quarterstaff_BEmAR60PM3ZaiNXa.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829305566, - "modifiedTime": 1753829326219, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430790792, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BEmAR60PM3ZaiNXa" } diff --git a/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json b/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json index 27808573..7c79855b 100644 --- a/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json +++ b/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829388946, - "modifiedTime": 1753829406872, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430796102, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!LFPH8nD2f4Blv3AM" } diff --git a/src/packs/items/weapons/weapon_Improved_Returning_Blade_SKNwkW23eVQjN4Zy.json b/src/packs/items/weapons/weapon_Improved_Returning_Blade_SKNwkW23eVQjN4Zy.json index 64404db7..1bc01015 100644 --- a/src/packs/items/weapons/weapon_Improved_Returning_Blade_SKNwkW23eVQjN4Zy.json +++ b/src/packs/items/weapons/weapon_Improved_Returning_Blade_SKNwkW23eVQjN4Zy.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830798994, - "modifiedTime": 1753830839524, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430915852, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SKNwkW23eVQjN4Zy" } diff --git a/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json b/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json index 49be7813..ac23f153 100644 --- a/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json +++ b/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753744776245, - "modifiedTime": 1753794098472, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430336489, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!DlinEBGZfIlvreO3" } diff --git a/src/packs/items/weapons/weapon_Improved_Scepter_tj26lbNkwy8bORF4.json b/src/packs/items/weapons/weapon_Improved_Scepter_tj26lbNkwy8bORF4.json index a97d7e10..4d61a5aa 100644 --- a/src/packs/items/weapons/weapon_Improved_Scepter_tj26lbNkwy8bORF4.json +++ b/src/packs/items/weapons/weapon_Improved_Scepter_tj26lbNkwy8bORF4.json @@ -166,6 +166,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -179,12 +184,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830930043, - "modifiedTime": 1753835907269, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430920982, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tj26lbNkwy8bORF4" } diff --git a/src/packs/items/weapons/weapon_Improved_Shortbow_6ZWl6ARfvYBaAMwY.json b/src/packs/items/weapons/weapon_Improved_Shortbow_6ZWl6ARfvYBaAMwY.json index ec704881..6ed121f7 100644 --- a/src/packs/items/weapons/weapon_Improved_Shortbow_6ZWl6ARfvYBaAMwY.json +++ b/src/packs/items/weapons/weapon_Improved_Shortbow_6ZWl6ARfvYBaAMwY.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829484986, - "modifiedTime": 1753829516515, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430802429, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6ZWl6ARfvYBaAMwY" } diff --git a/src/packs/items/weapons/weapon_Improved_Shortstaff_Mn8ja5Oi1sXvvPSk.json b/src/packs/items/weapons/weapon_Improved_Shortstaff_Mn8ja5Oi1sXvvPSk.json index 5ff31862..f9c5246e 100644 --- a/src/packs/items/weapons/weapon_Improved_Shortstaff_Mn8ja5Oi1sXvvPSk.json +++ b/src/packs/items/weapons/weapon_Improved_Shortstaff_Mn8ja5Oi1sXvvPSk.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830852208, - "modifiedTime": 1753830874554, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430927432, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Mn8ja5Oi1sXvvPSk" } diff --git a/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json b/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json index c2704b4d..adae8915 100644 --- a/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json +++ b/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753744566951, - "modifiedTime": 1755268322555, + "modifiedTime": 1755430345968, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!rSyBNRwemBVuTo3H" diff --git a/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json b/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json index 5685ac71..2b85fbb5 100644 --- a/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json +++ b/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753794291887, - "modifiedTime": 1755268329308, + "modifiedTime": 1755430352669, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nMuF8ZDZ2aXZVTg6" diff --git a/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json b/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json index 367f80ad..a398b785 100644 --- a/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json +++ b/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -144,12 +149,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829443743, - "modifiedTime": 1753829474262, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430807883, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!j5Pt1thLfcvopBij" } diff --git a/src/packs/items/weapons/weapon_Improved_Tower_Shield_bxt3NsbMqTSdI5ab.json b/src/packs/items/weapons/weapon_Improved_Tower_Shield_bxt3NsbMqTSdI5ab.json index b612daef..ef768788 100644 --- a/src/packs/items/weapons/weapon_Improved_Tower_Shield_bxt3NsbMqTSdI5ab.json +++ b/src/packs/items/weapons/weapon_Improved_Tower_Shield_bxt3NsbMqTSdI5ab.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794198427, - "modifiedTime": 1753794267315, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430358886, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bxt3NsbMqTSdI5ab" } diff --git a/src/packs/items/weapons/weapon_Improved_Wand_6d9B2b5X2d2U56jt.json b/src/packs/items/weapons/weapon_Improved_Wand_6d9B2b5X2d2U56jt.json index 951b4115..54eaac9f 100644 --- a/src/packs/items/weapons/weapon_Improved_Wand_6d9B2b5X2d2U56jt.json +++ b/src/packs/items/weapons/weapon_Improved_Wand_6d9B2b5X2d2U56jt.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830985241, - "modifiedTime": 1753831019167, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430932717, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6d9B2b5X2d2U56jt" } diff --git a/src/packs/items/weapons/weapon_Improved_Warhammer_pxaN4ZK4eqKrjtWj.json b/src/packs/items/weapons/weapon_Improved_Warhammer_pxaN4ZK4eqKrjtWj.json index 115195a7..17615b31 100644 --- a/src/packs/items/weapons/weapon_Improved_Warhammer_pxaN4ZK4eqKrjtWj.json +++ b/src/packs/items/weapons/weapon_Improved_Warhammer_pxaN4ZK4eqKrjtWj.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829240673, - "modifiedTime": 1753829265352, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430814443, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!pxaN4ZK4eqKrjtWj" } diff --git a/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json b/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json index 1035131d..9f44f5bc 100644 --- a/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json +++ b/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794353291, - "modifiedTime": 1753808384267, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430364486, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ftTp8VlsBQ1r4LFD" } diff --git a/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json b/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json index d934731d..46acc280 100644 --- a/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json +++ b/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753831418620, - "modifiedTime": 1754815023493, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430940256, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!q382JqMkqLaaFLIr" } diff --git a/src/packs/items/weapons/weapon_Knuckle_Blades_U8gfyvxoHm024inM.json b/src/packs/items/weapons/weapon_Knuckle_Blades_U8gfyvxoHm024inM.json index fafe9bbc..714f3b5d 100644 --- a/src/packs/items/weapons/weapon_Knuckle_Blades_U8gfyvxoHm024inM.json +++ b/src/packs/items/weapons/weapon_Knuckle_Blades_U8gfyvxoHm024inM.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829611315, - "modifiedTime": 1753829635422, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430819669, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!U8gfyvxoHm024inM" } diff --git a/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json b/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json index f2f53dc7..3cb214bd 100644 --- a/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json +++ b/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json @@ -123,6 +123,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -138,10 +143,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753797258168, - "modifiedTime": 1754814600761, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430475899, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SFqganS8Du4aEKjQ" } diff --git a/src/packs/items/weapons/weapon_Labrys_Axe_ijWppQzSOqVCb3rE.json b/src/packs/items/weapons/weapon_Labrys_Axe_ijWppQzSOqVCb3rE.json index fe91f8a1..051c759a 100644 --- a/src/packs/items/weapons/weapon_Labrys_Axe_ijWppQzSOqVCb3rE.json +++ b/src/packs/items/weapons/weapon_Labrys_Axe_ijWppQzSOqVCb3rE.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832206440, - "modifiedTime": 1753832248436, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431111826, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ijWppQzSOqVCb3rE" } diff --git a/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json b/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json index b402692f..9a448ab2 100644 --- a/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json +++ b/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -159,10 +164,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753836717240, - "modifiedTime": 1754845972571, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430202136, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gA2tiET9VHGhwMoO", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Legendary_Arcane_Gauntlets_umADDPYCaykXDc1v.json b/src/packs/items/weapons/weapon_Legendary_Arcane_Gauntlets_umADDPYCaykXDc1v.json index ba769375..f9aabadf 100644 --- a/src/packs/items/weapons/weapon_Legendary_Arcane_Gauntlets_umADDPYCaykXDc1v.json +++ b/src/packs/items/weapons/weapon_Legendary_Arcane_Gauntlets_umADDPYCaykXDc1v.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835451334, - "modifiedTime": 1753835475492, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431441720, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!umADDPYCaykXDc1v" } diff --git a/src/packs/items/weapons/weapon_Legendary_Battleaxe_1nztpLzoHGfbKf5x.json b/src/packs/items/weapons/weapon_Legendary_Battleaxe_1nztpLzoHGfbKf5x.json index c7376573..3d08b628 100644 --- a/src/packs/items/weapons/weapon_Legendary_Battleaxe_1nztpLzoHGfbKf5x.json +++ b/src/packs/items/weapons/weapon_Legendary_Battleaxe_1nztpLzoHGfbKf5x.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834500236, - "modifiedTime": 1753834519405, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431304811, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1nztpLzoHGfbKf5x" } diff --git a/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json b/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json index 32d19734..6375e1b6 100644 --- a/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json +++ b/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753834430378, - "modifiedTime": 1754814961454, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755431309986, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!y3hfTPfZhMognyaJ" } diff --git a/src/packs/items/weapons/weapon_Legendary_Crossbow_1G6xX2QL9O0Rsgz7.json b/src/packs/items/weapons/weapon_Legendary_Crossbow_1G6xX2QL9O0Rsgz7.json index 51bc4ea3..9a66906b 100644 --- a/src/packs/items/weapons/weapon_Legendary_Crossbow_1G6xX2QL9O0Rsgz7.json +++ b/src/packs/items/weapons/weapon_Legendary_Crossbow_1G6xX2QL9O0Rsgz7.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834862922, - "modifiedTime": 1753834882694, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431317436, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1G6xX2QL9O0Rsgz7" } diff --git a/src/packs/items/weapons/weapon_Legendary_Cutlass_Rpyz0jbFJ1SwqfyD.json b/src/packs/items/weapons/weapon_Legendary_Cutlass_Rpyz0jbFJ1SwqfyD.json index 99950a86..a04487f0 100644 --- a/src/packs/items/weapons/weapon_Legendary_Cutlass_Rpyz0jbFJ1SwqfyD.json +++ b/src/packs/items/weapons/weapon_Legendary_Cutlass_Rpyz0jbFJ1SwqfyD.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834710917, - "modifiedTime": 1753834734158, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431326087, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Rpyz0jbFJ1SwqfyD" } diff --git a/src/packs/items/weapons/weapon_Legendary_Dagger_GmTg3Fdne1UPNs8t.json b/src/packs/items/weapons/weapon_Legendary_Dagger_GmTg3Fdne1UPNs8t.json index 02b8cdce..322b3b27 100644 --- a/src/packs/items/weapons/weapon_Legendary_Dagger_GmTg3Fdne1UPNs8t.json +++ b/src/packs/items/weapons/weapon_Legendary_Dagger_GmTg3Fdne1UPNs8t.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834616464, - "modifiedTime": 1753834659439, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431331293, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GmTg3Fdne1UPNs8t" } diff --git a/src/packs/items/weapons/weapon_Legendary_Dualstaff_o3rsLvImcLAx5TvD.json b/src/packs/items/weapons/weapon_Legendary_Dualstaff_o3rsLvImcLAx5TvD.json index 5c7977cc..e3f0f656 100644 --- a/src/packs/items/weapons/weapon_Legendary_Dualstaff_o3rsLvImcLAx5TvD.json +++ b/src/packs/items/weapons/weapon_Legendary_Dualstaff_o3rsLvImcLAx5TvD.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835724086, - "modifiedTime": 1753835787515, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431447143, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!o3rsLvImcLAx5TvD" } diff --git a/src/packs/items/weapons/weapon_Legendary_Glowing_Rings_PReWrfuPjoNQuieo.json b/src/packs/items/weapons/weapon_Legendary_Glowing_Rings_PReWrfuPjoNQuieo.json index 9d55a327..31776620 100644 --- a/src/packs/items/weapons/weapon_Legendary_Glowing_Rings_PReWrfuPjoNQuieo.json +++ b/src/packs/items/weapons/weapon_Legendary_Glowing_Rings_PReWrfuPjoNQuieo.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835522076, - "modifiedTime": 1753835564865, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431453215, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PReWrfuPjoNQuieo" } diff --git a/src/packs/items/weapons/weapon_Legendary_Grappler_IrtUj0UntBMNn49G.json b/src/packs/items/weapons/weapon_Legendary_Grappler_IrtUj0UntBMNn49G.json index 3a22dde7..adcc5fe1 100644 --- a/src/packs/items/weapons/weapon_Legendary_Grappler_IrtUj0UntBMNn49G.json +++ b/src/packs/items/weapons/weapon_Legendary_Grappler_IrtUj0UntBMNn49G.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753797131628, - "modifiedTime": 1753797154423, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430482260, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!IrtUj0UntBMNn49G" } diff --git a/src/packs/items/weapons/weapon_Legendary_Greatstaff_jDtvEabkHY1GFgfc.json b/src/packs/items/weapons/weapon_Legendary_Greatstaff_jDtvEabkHY1GFgfc.json index a7dbbfc5..b0eb6642 100644 --- a/src/packs/items/weapons/weapon_Legendary_Greatstaff_jDtvEabkHY1GFgfc.json +++ b/src/packs/items/weapons/weapon_Legendary_Greatstaff_jDtvEabkHY1GFgfc.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835957503, - "modifiedTime": 1753835997508, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431458779, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jDtvEabkHY1GFgfc" } diff --git a/src/packs/items/weapons/weapon_Legendary_Greatsword_zMZ46F9VR7zdTxb9.json b/src/packs/items/weapons/weapon_Legendary_Greatsword_zMZ46F9VR7zdTxb9.json index cfd0cfc6..654ddaa8 100644 --- a/src/packs/items/weapons/weapon_Legendary_Greatsword_zMZ46F9VR7zdTxb9.json +++ b/src/packs/items/weapons/weapon_Legendary_Greatsword_zMZ46F9VR7zdTxb9.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -162,12 +167,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834526945, - "modifiedTime": 1753834554233, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431336357, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zMZ46F9VR7zdTxb9" } diff --git a/src/packs/items/weapons/weapon_Legendary_Halberd_1AuMNiJz96Ez9fur.json b/src/packs/items/weapons/weapon_Legendary_Halberd_1AuMNiJz96Ez9fur.json index caeb9c2e..38c67ecf 100644 --- a/src/packs/items/weapons/weapon_Legendary_Halberd_1AuMNiJz96Ez9fur.json +++ b/src/packs/items/weapons/weapon_Legendary_Halberd_1AuMNiJz96Ez9fur.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834772989, - "modifiedTime": 1753834797363, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431341765, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1AuMNiJz96Ez9fur" } diff --git a/src/packs/items/weapons/weapon_Legendary_Hallowed_Axe_0HmhnZnv1I6uX69c.json b/src/packs/items/weapons/weapon_Legendary_Hallowed_Axe_0HmhnZnv1I6uX69c.json index 2c56cdaa..563d52fa 100644 --- a/src/packs/items/weapons/weapon_Legendary_Hallowed_Axe_0HmhnZnv1I6uX69c.json +++ b/src/packs/items/weapons/weapon_Legendary_Hallowed_Axe_0HmhnZnv1I6uX69c.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835486056, - "modifiedTime": 1753835507874, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431464517, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0HmhnZnv1I6uX69c" } diff --git a/src/packs/items/weapons/weapon_Legendary_Hand_Crossbow_32nYyMaeDWaakSxz.json b/src/packs/items/weapons/weapon_Legendary_Hand_Crossbow_32nYyMaeDWaakSxz.json index 35e53a9a..cbb44354 100644 --- a/src/packs/items/weapons/weapon_Legendary_Hand_Crossbow_32nYyMaeDWaakSxz.json +++ b/src/packs/items/weapons/weapon_Legendary_Hand_Crossbow_32nYyMaeDWaakSxz.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753797168339, - "modifiedTime": 1753797192489, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430487677, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!32nYyMaeDWaakSxz" } diff --git a/src/packs/items/weapons/weapon_Legendary_Hand_Runes_DWLkswhluXuMy3bB.json b/src/packs/items/weapons/weapon_Legendary_Hand_Runes_DWLkswhluXuMy3bB.json index 73886272..5459f230 100644 --- a/src/packs/items/weapons/weapon_Legendary_Hand_Runes_DWLkswhluXuMy3bB.json +++ b/src/packs/items/weapons/weapon_Legendary_Hand_Runes_DWLkswhluXuMy3bB.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835579627, - "modifiedTime": 1753835606935, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431470561, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!DWLkswhluXuMy3bB" } diff --git a/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json b/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json index d337d32f..b5f1b74e 100644 --- a/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json +++ b/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -150,10 +155,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836676831, - "modifiedTime": 1754846000470, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430177593, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "S6nB0CNlzdU05o5U", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json b/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json index 622fcf12..7d9fc299 100644 --- a/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json +++ b/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json @@ -129,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 54, + "artist": "" } }, "effects": [], @@ -143,10 +148,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836615437, - "modifiedTime": 1754846023338, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430241189, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Xt8tVSn5Fu6ly6LF", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Legendary_Longbow_Utt1GpoH1fhaTOtN.json b/src/packs/items/weapons/weapon_Legendary_Longbow_Utt1GpoH1fhaTOtN.json index 333632dc..fdcc899a 100644 --- a/src/packs/items/weapons/weapon_Legendary_Longbow_Utt1GpoH1fhaTOtN.json +++ b/src/packs/items/weapons/weapon_Legendary_Longbow_Utt1GpoH1fhaTOtN.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834890609, - "modifiedTime": 1753834925920, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431350371, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Utt1GpoH1fhaTOtN" } diff --git a/src/packs/items/weapons/weapon_Legendary_Longsword_14abPqQcROJfDChR.json b/src/packs/items/weapons/weapon_Legendary_Longsword_14abPqQcROJfDChR.json index 636dd7a5..fd755a94 100644 --- a/src/packs/items/weapons/weapon_Legendary_Longsword_14abPqQcROJfDChR.json +++ b/src/packs/items/weapons/weapon_Legendary_Longsword_14abPqQcROJfDChR.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834472085, - "modifiedTime": 1753834491863, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431355505, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!14abPqQcROJfDChR" } diff --git a/src/packs/items/weapons/weapon_Legendary_Mace_RsDsy7tIhrhaAQQc.json b/src/packs/items/weapons/weapon_Legendary_Mace_RsDsy7tIhrhaAQQc.json index e037c5c8..535bba46 100644 --- a/src/packs/items/weapons/weapon_Legendary_Mace_RsDsy7tIhrhaAQQc.json +++ b/src/packs/items/weapons/weapon_Legendary_Mace_RsDsy7tIhrhaAQQc.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834566762, - "modifiedTime": 1753834581202, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431360506, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!RsDsy7tIhrhaAQQc" } diff --git a/src/packs/items/weapons/weapon_Legendary_Quarterstaff_1ZciqG7vIKLYpKsP.json b/src/packs/items/weapons/weapon_Legendary_Quarterstaff_1ZciqG7vIKLYpKsP.json index b4ea03f9..401d6c96 100644 --- a/src/packs/items/weapons/weapon_Legendary_Quarterstaff_1ZciqG7vIKLYpKsP.json +++ b/src/packs/items/weapons/weapon_Legendary_Quarterstaff_1ZciqG7vIKLYpKsP.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834677366, - "modifiedTime": 1753834698077, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431365622, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1ZciqG7vIKLYpKsP" } diff --git a/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json b/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json index bbdf3ad9..eaa6768c 100644 --- a/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json +++ b/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834740751, - "modifiedTime": 1753834763060, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431370823, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BakN97v4jTePcXiZ" } diff --git a/src/packs/items/weapons/weapon_Legendary_Returning_Blade_mcj3CPkcSSDdAcBB.json b/src/packs/items/weapons/weapon_Legendary_Returning_Blade_mcj3CPkcSSDdAcBB.json index 8081d1ce..da3a5f42 100644 --- a/src/packs/items/weapons/weapon_Legendary_Returning_Blade_mcj3CPkcSSDdAcBB.json +++ b/src/packs/items/weapons/weapon_Legendary_Returning_Blade_mcj3CPkcSSDdAcBB.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835615004, - "modifiedTime": 1753835665790, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431477112, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mcj3CPkcSSDdAcBB" } diff --git a/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json b/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json index 421df201..1773485d 100644 --- a/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json +++ b/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753796968563, - "modifiedTime": 1753797012196, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430492843, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!A28WL9E2lJ3iLZHW" } diff --git a/src/packs/items/weapons/weapon_Legendary_Scepter_IZ4CWNxfuM46JeCN.json b/src/packs/items/weapons/weapon_Legendary_Scepter_IZ4CWNxfuM46JeCN.json index 92d9b49c..afb3ef97 100644 --- a/src/packs/items/weapons/weapon_Legendary_Scepter_IZ4CWNxfuM46JeCN.json +++ b/src/packs/items/weapons/weapon_Legendary_Scepter_IZ4CWNxfuM46JeCN.json @@ -166,6 +166,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -179,12 +184,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835822353, - "modifiedTime": 1753835867763, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431483750, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!IZ4CWNxfuM46JeCN" } diff --git a/src/packs/items/weapons/weapon_Legendary_Shortbow_j7kp36jaetfn5jb3.json b/src/packs/items/weapons/weapon_Legendary_Shortbow_j7kp36jaetfn5jb3.json index 0cf8c3de..7e439d04 100644 --- a/src/packs/items/weapons/weapon_Legendary_Shortbow_j7kp36jaetfn5jb3.json +++ b/src/packs/items/weapons/weapon_Legendary_Shortbow_j7kp36jaetfn5jb3.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834834626, - "modifiedTime": 1753834854507, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431376890, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!j7kp36jaetfn5jb3" } diff --git a/src/packs/items/weapons/weapon_Legendary_Shortstaff_D3SbNvNJZAFuzfhg.json b/src/packs/items/weapons/weapon_Legendary_Shortstaff_D3SbNvNJZAFuzfhg.json index 9a3c1f13..44844553 100644 --- a/src/packs/items/weapons/weapon_Legendary_Shortstaff_D3SbNvNJZAFuzfhg.json +++ b/src/packs/items/weapons/weapon_Legendary_Shortstaff_D3SbNvNJZAFuzfhg.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835676579, - "modifiedTime": 1753835813150, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431489948, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!D3SbNvNJZAFuzfhg" } diff --git a/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json b/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json index 4c1a13a3..4e6ace3f 100644 --- a/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json +++ b/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753796913551, - "modifiedTime": 1755268362375, + "modifiedTime": 1755430497769, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dEumq3BIZBk5xYTk" diff --git a/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json b/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json index 67d58df9..8381111e 100644 --- a/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json +++ b/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753797057472, - "modifiedTime": 1755268370240, + "modifiedTime": 1755430502860, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Px3Rh3kIvAqyISxJ" diff --git a/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json b/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json index bfdcd4eb..c7fa407a 100644 --- a/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json +++ b/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -144,12 +149,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834806427, - "modifiedTime": 1753834827595, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431384407, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4e5pWxi2qohuGsWh" } diff --git a/src/packs/items/weapons/weapon_Legendary_Tower_Shield_MaJIROht7A9LxIZx.json b/src/packs/items/weapons/weapon_Legendary_Tower_Shield_MaJIROht7A9LxIZx.json index 7e62f1aa..39d7b7c5 100644 --- a/src/packs/items/weapons/weapon_Legendary_Tower_Shield_MaJIROht7A9LxIZx.json +++ b/src/packs/items/weapons/weapon_Legendary_Tower_Shield_MaJIROht7A9LxIZx.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753797026049, - "modifiedTime": 1753797043015, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430508197, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MaJIROht7A9LxIZx" } diff --git a/src/packs/items/weapons/weapon_Legendary_Wand_wPjg0LufJH9vUfVM.json b/src/packs/items/weapons/weapon_Legendary_Wand_wPjg0LufJH9vUfVM.json index be8b131b..c58aab9e 100644 --- a/src/packs/items/weapons/weapon_Legendary_Wand_wPjg0LufJH9vUfVM.json +++ b/src/packs/items/weapons/weapon_Legendary_Wand_wPjg0LufJH9vUfVM.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835923888, - "modifiedTime": 1753835965485, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431495832, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!wPjg0LufJH9vUfVM" } diff --git a/src/packs/items/weapons/weapon_Legendary_Warhammer_W9ymfEDck2icfvla.json b/src/packs/items/weapons/weapon_Legendary_Warhammer_W9ymfEDck2icfvla.json index b449fca5..5970022d 100644 --- a/src/packs/items/weapons/weapon_Legendary_Warhammer_W9ymfEDck2icfvla.json +++ b/src/packs/items/weapons/weapon_Legendary_Warhammer_W9ymfEDck2icfvla.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834588280, - "modifiedTime": 1753834609113, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431389974, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!W9ymfEDck2icfvla" } diff --git a/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json b/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json index b4b8bf02..603f8fae 100644 --- a/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json +++ b/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753797101746, - "modifiedTime": 1753808440137, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430513049, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Wcdbf6yS3LEt7nsg" } diff --git a/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json b/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json index 9bb97d2b..62090883 100644 --- a/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json +++ b/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 54, + "artist": "" } }, "effects": [], @@ -145,10 +150,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836579296, - "modifiedTime": 1754846015528, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430218981, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!iaGnlUkShBgdeMo0" } diff --git a/src/packs/items/weapons/weapon_Longbow_YfVs6Se903az4Yet.json b/src/packs/items/weapons/weapon_Longbow_YfVs6Se903az4Yet.json index e20f9111..39a0582f 100644 --- a/src/packs/items/weapons/weapon_Longbow_YfVs6Se903az4Yet.json +++ b/src/packs/items/weapons/weapon_Longbow_YfVs6Se903az4Yet.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828135552, - "modifiedTime": 1753828159427, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430591132, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!YfVs6Se903az4Yet" } diff --git a/src/packs/items/weapons/weapon_Longsword_Iv8BZM1R24QMT72M.json b/src/packs/items/weapons/weapon_Longsword_Iv8BZM1R24QMT72M.json index c5d9070b..b58eb1d5 100644 --- a/src/packs/items/weapons/weapon_Longsword_Iv8BZM1R24QMT72M.json +++ b/src/packs/items/weapons/weapon_Longsword_Iv8BZM1R24QMT72M.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827769163, - "modifiedTime": 1753827781183, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430596498, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Iv8BZM1R24QMT72M" } diff --git a/src/packs/items/weapons/weapon_Mace_cKQCDyM2UopDL9zF.json b/src/packs/items/weapons/weapon_Mace_cKQCDyM2UopDL9zF.json index 529e3874..f074eaba 100644 --- a/src/packs/items/weapons/weapon_Mace_cKQCDyM2UopDL9zF.json +++ b/src/packs/items/weapons/weapon_Mace_cKQCDyM2UopDL9zF.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827843717, - "modifiedTime": 1753827858825, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430601987, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cKQCDyM2UopDL9zF" } diff --git a/src/packs/items/weapons/weapon_Mage_Orb_XKBmBUEoGLdLcuqQ.json b/src/packs/items/weapons/weapon_Mage_Orb_XKBmBUEoGLdLcuqQ.json index f609e409..27725351 100644 --- a/src/packs/items/weapons/weapon_Mage_Orb_XKBmBUEoGLdLcuqQ.json +++ b/src/packs/items/weapons/weapon_Mage_Orb_XKBmBUEoGLdLcuqQ.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834259866, - "modifiedTime": 1753834310221, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431242468, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!XKBmBUEoGLdLcuqQ" } diff --git a/src/packs/items/weapons/weapon_Magus_Revolver_jGykNGQiKm63tCiE.json b/src/packs/items/weapons/weapon_Magus_Revolver_jGykNGQiKm63tCiE.json index daa68be1..9f46d9be 100644 --- a/src/packs/items/weapons/weapon_Magus_Revolver_jGykNGQiKm63tCiE.json +++ b/src/packs/items/weapons/weapon_Magus_Revolver_jGykNGQiKm63tCiE.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836385650, - "modifiedTime": 1753836419000, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431501404, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jGykNGQiKm63tCiE" } diff --git a/src/packs/items/weapons/weapon_Meridian_Cutlass_Gi26Zk9VqlAAgx3E.json b/src/packs/items/weapons/weapon_Meridian_Cutlass_Gi26Zk9VqlAAgx3E.json index e7809a76..d92bc921 100644 --- a/src/packs/items/weapons/weapon_Meridian_Cutlass_Gi26Zk9VqlAAgx3E.json +++ b/src/packs/items/weapons/weapon_Meridian_Cutlass_Gi26Zk9VqlAAgx3E.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832261628, - "modifiedTime": 1753832286780, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431117685, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Gi26Zk9VqlAAgx3E" } diff --git a/src/packs/items/weapons/weapon_Midas_Scythe_BdLfy5i488VZgkjP.json b/src/packs/items/weapons/weapon_Midas_Scythe_BdLfy5i488VZgkjP.json index 420f28b8..bd682fac 100644 --- a/src/packs/items/weapons/weapon_Midas_Scythe_BdLfy5i488VZgkjP.json +++ b/src/packs/items/weapons/weapon_Midas_Scythe_BdLfy5i488VZgkjP.json @@ -129,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [ @@ -181,12 +186,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836123608, - "modifiedTime": 1753836160033, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431507969, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BdLfy5i488VZgkjP" } diff --git a/src/packs/items/weapons/weapon_Parrying_Dagger_taAZDkDCpeNgxhnn.json b/src/packs/items/weapons/weapon_Parrying_Dagger_taAZDkDCpeNgxhnn.json index c4a796a7..05b1f08b 100644 --- a/src/packs/items/weapons/weapon_Parrying_Dagger_taAZDkDCpeNgxhnn.json +++ b/src/packs/items/weapons/weapon_Parrying_Dagger_taAZDkDCpeNgxhnn.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794685727, - "modifiedTime": 1753794748494, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430370186, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!taAZDkDCpeNgxhnn" } diff --git a/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json b/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json index 417fae15..2e88d91c 100644 --- a/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json +++ b/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json @@ -137,6 +137,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -189,12 +194,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753796723376, - "modifiedTime": 1753808423862, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430461362, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bW3xw5S9DbaLCN3E" } diff --git a/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json b/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json index e3dd3035..d6c5b2cb 100644 --- a/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json +++ b/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json @@ -123,6 +123,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -138,10 +143,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753797317938, - "modifiedTime": 1754814518028, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430518095, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SxcblanBvqaest3A" } diff --git a/src/packs/items/weapons/weapon_Quarterstaff_mlIj88p1wcQNjEDG.json b/src/packs/items/weapons/weapon_Quarterstaff_mlIj88p1wcQNjEDG.json index 7526e8c1..2f6fcbb9 100644 --- a/src/packs/items/weapons/weapon_Quarterstaff_mlIj88p1wcQNjEDG.json +++ b/src/packs/items/weapons/weapon_Quarterstaff_mlIj88p1wcQNjEDG.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827915482, - "modifiedTime": 1753827935877, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430606837, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mlIj88p1wcQNjEDG" } diff --git a/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json b/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json index 01e1cbf2..45f5d8e7 100644 --- a/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json +++ b/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827969157, - "modifiedTime": 1753827996285, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430611691, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zkAgEW6zMkRZalEm" } diff --git a/src/packs/items/weapons/weapon_Retractable_Saber_i8CqVTzqoRoCewNe.json b/src/packs/items/weapons/weapon_Retractable_Saber_i8CqVTzqoRoCewNe.json index 350d8b4f..fd0b1900 100644 --- a/src/packs/items/weapons/weapon_Retractable_Saber_i8CqVTzqoRoCewNe.json +++ b/src/packs/items/weapons/weapon_Retractable_Saber_i8CqVTzqoRoCewNe.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832298659, - "modifiedTime": 1753832323983, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431122548, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!i8CqVTzqoRoCewNe" } diff --git a/src/packs/items/weapons/weapon_Returning_Axe_FtsQGwOg3r8uUCST.json b/src/packs/items/weapons/weapon_Returning_Axe_FtsQGwOg3r8uUCST.json index 5fcd1214..5884b401 100644 --- a/src/packs/items/weapons/weapon_Returning_Axe_FtsQGwOg3r8uUCST.json +++ b/src/packs/items/weapons/weapon_Returning_Axe_FtsQGwOg3r8uUCST.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794760906, - "modifiedTime": 1753794803866, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430383420, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!FtsQGwOg3r8uUCST" } diff --git a/src/packs/items/weapons/weapon_Returning_Blade_4fQpVfQ3NVwTHStA.json b/src/packs/items/weapons/weapon_Returning_Blade_4fQpVfQ3NVwTHStA.json index e20c840e..1d6d48e9 100644 --- a/src/packs/items/weapons/weapon_Returning_Blade_4fQpVfQ3NVwTHStA.json +++ b/src/packs/items/weapons/weapon_Returning_Blade_4fQpVfQ3NVwTHStA.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828345143, - "modifiedTime": 1753828368281, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430673452, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4fQpVfQ3NVwTHStA" } diff --git a/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json b/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json index 9c71aa5c..9c0f0eae 100644 --- a/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json +++ b/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835247877, - "modifiedTime": 1753835276839, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431395791, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!E9QDh5o9eQ1Qx0kH" } diff --git a/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json b/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json index c49aa7dd..d6620abd 100644 --- a/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json +++ b/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753742068200, - "modifiedTime": 1753794114990, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430279232, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mxwWKDujgsRcZWPT" } diff --git a/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json b/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json index ce7fe3bc..b062a33a 100644 --- a/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json +++ b/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833802007, - "modifiedTime": 1753833831195, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431248793, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!EG6mZhr3ib56r974" } diff --git a/src/packs/items/weapons/weapon_Scepter_GZh345N8fmuS4Jeh.json b/src/packs/items/weapons/weapon_Scepter_GZh345N8fmuS4Jeh.json index c7a686e7..a4393081 100644 --- a/src/packs/items/weapons/weapon_Scepter_GZh345N8fmuS4Jeh.json +++ b/src/packs/items/weapons/weapon_Scepter_GZh345N8fmuS4Jeh.json @@ -166,6 +166,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -179,12 +184,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828453134, - "modifiedTime": 1753835916388, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430678619, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GZh345N8fmuS4Jeh" } diff --git a/src/packs/items/weapons/weapon_Scepter_of_Elias_acPGwIaUhx3R0mTq.json b/src/packs/items/weapons/weapon_Scepter_of_Elias_acPGwIaUhx3R0mTq.json index 4348fbee..0c95d62e 100644 --- a/src/packs/items/weapons/weapon_Scepter_of_Elias_acPGwIaUhx3R0mTq.json +++ b/src/packs/items/weapons/weapon_Scepter_of_Elias_acPGwIaUhx3R0mTq.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831343009, - "modifiedTime": 1753831365565, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430946684, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!acPGwIaUhx3R0mTq" } diff --git a/src/packs/items/weapons/weapon_Shortbow_p9tdjQr2AZP19RYm.json b/src/packs/items/weapons/weapon_Shortbow_p9tdjQr2AZP19RYm.json index 424f762d..70b697e6 100644 --- a/src/packs/items/weapons/weapon_Shortbow_p9tdjQr2AZP19RYm.json +++ b/src/packs/items/weapons/weapon_Shortbow_p9tdjQr2AZP19RYm.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828079904, - "modifiedTime": 1753828100575, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430616717, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!p9tdjQr2AZP19RYm" } diff --git a/src/packs/items/weapons/weapon_Shortstaff_vHDHG3STcxTEfYAM.json b/src/packs/items/weapons/weapon_Shortstaff_vHDHG3STcxTEfYAM.json index ed9f9492..73f7985a 100644 --- a/src/packs/items/weapons/weapon_Shortstaff_vHDHG3STcxTEfYAM.json +++ b/src/packs/items/weapons/weapon_Shortstaff_vHDHG3STcxTEfYAM.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828380553, - "modifiedTime": 1753828404541, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430683436, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!vHDHG3STcxTEfYAM" } diff --git a/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json b/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json index 8e1c9d03..05f355eb 100644 --- a/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json +++ b/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -167,9 +172,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753741549716, - "modifiedTime": 1755268286538, + "modifiedTime": 1755430284749, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cjGZpXCoshEqi1FI" diff --git a/src/packs/items/weapons/weapon_Siphoning_Gauntlets_1N1jggda5DfdzdMj.json b/src/packs/items/weapons/weapon_Siphoning_Gauntlets_1N1jggda5DfdzdMj.json index fcadecf6..34159ba9 100644 --- a/src/packs/items/weapons/weapon_Siphoning_Gauntlets_1N1jggda5DfdzdMj.json +++ b/src/packs/items/weapons/weapon_Siphoning_Gauntlets_1N1jggda5DfdzdMj.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836075703, - "modifiedTime": 1753836131553, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431513330, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1N1jggda5DfdzdMj" } diff --git a/src/packs/items/weapons/weapon_Sledge_Axe_OxsEmffWriiQmqJK.json b/src/packs/items/weapons/weapon_Sledge_Axe_OxsEmffWriiQmqJK.json index b37a1027..ab3945ae 100644 --- a/src/packs/items/weapons/weapon_Sledge_Axe_OxsEmffWriiQmqJK.json +++ b/src/packs/items/weapons/weapon_Sledge_Axe_OxsEmffWriiQmqJK.json @@ -155,6 +155,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -207,12 +212,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835064119, - "modifiedTime": 1753835089195, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431401912, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!OxsEmffWriiQmqJK" } diff --git a/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json b/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json index 1a11cab5..e824ea75 100644 --- a/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json +++ b/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753744141625, - "modifiedTime": 1755268300204, + "modifiedTime": 1755430291284, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!wKklDxs5nkzILNp4" diff --git a/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json b/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json index 77ba9a93..77bd4f42 100644 --- a/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json +++ b/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -144,12 +149,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828035153, - "modifiedTime": 1753828072360, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430621466, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TF85tKJetUjLwh54" } diff --git a/src/packs/items/weapons/weapon_Spiked_Bow_O1w8KPYH85ZS8X64.json b/src/packs/items/weapons/weapon_Spiked_Bow_O1w8KPYH85ZS8X64.json index f4f34d63..f3932e9c 100644 --- a/src/packs/items/weapons/weapon_Spiked_Bow_O1w8KPYH85ZS8X64.json +++ b/src/packs/items/weapons/weapon_Spiked_Bow_O1w8KPYH85ZS8X64.json @@ -164,6 +164,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -177,12 +182,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832511150, - "modifiedTime": 1753832558389, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431128203, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!O1w8KPYH85ZS8X64" } diff --git a/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json b/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json index 9b9d691a..29ff25a8 100644 --- a/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json +++ b/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -166,10 +171,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753794535926, - "modifiedTime": 1754814481212, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430389345, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!vzyzFwLUniWZV1rt" } diff --git a/src/packs/items/weapons/weapon_Steelforged_Halberd_6bkbw4Ap644KZGvJ.json b/src/packs/items/weapons/weapon_Steelforged_Halberd_6bkbw4Ap644KZGvJ.json index a7d7cd60..f869f8d2 100644 --- a/src/packs/items/weapons/weapon_Steelforged_Halberd_6bkbw4Ap644KZGvJ.json +++ b/src/packs/items/weapons/weapon_Steelforged_Halberd_6bkbw4Ap644KZGvJ.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829710295, - "modifiedTime": 1753829730643, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430825877, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6bkbw4Ap644KZGvJ" } diff --git a/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json b/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json index 58d4a7c7..03e4053f 100644 --- a/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json +++ b/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835178086, - "modifiedTime": 1753835227169, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431409725, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1jOJHHKdtk3s2jaY" } diff --git a/src/packs/items/weapons/weapon_Sword_of_Light___Flame_TVPCWnSELOVBv6G1.json b/src/packs/items/weapons/weapon_Sword_of_Light___Flame_TVPCWnSELOVBv6G1.json index 7985574e..90a857ab 100644 --- a/src/packs/items/weapons/weapon_Sword_of_Light___Flame_TVPCWnSELOVBv6G1.json +++ b/src/packs/items/weapons/weapon_Sword_of_Light___Flame_TVPCWnSELOVBv6G1.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836015665, - "modifiedTime": 1753836060729, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431519254, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TVPCWnSELOVBv6G1" } diff --git a/src/packs/items/weapons/weapon_Talon_Blades_jlLtgK468rO5IssR.json b/src/packs/items/weapons/weapon_Talon_Blades_jlLtgK468rO5IssR.json index fb6c6f98..c3a4c20c 100644 --- a/src/packs/items/weapons/weapon_Talon_Blades_jlLtgK468rO5IssR.json +++ b/src/packs/items/weapons/weapon_Talon_Blades_jlLtgK468rO5IssR.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832378140, - "modifiedTime": 1753832420169, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431133663, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jlLtgK468rO5IssR" } diff --git a/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json b/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json index cec5b0d1..5b370f70 100644 --- a/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json +++ b/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753836302436, - "modifiedTime": 1754815251135, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755431525815, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!I1nDGpulg29GpWOW" } diff --git a/src/packs/items/weapons/weapon_Tower_Shield_C9aWpK1shVMWP4m5.json b/src/packs/items/weapons/weapon_Tower_Shield_C9aWpK1shVMWP4m5.json index 874dfc5f..850f79a6 100644 --- a/src/packs/items/weapons/weapon_Tower_Shield_C9aWpK1shVMWP4m5.json +++ b/src/packs/items/weapons/weapon_Tower_Shield_C9aWpK1shVMWP4m5.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753742294258, - "modifiedTime": 1753742986604, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430296399, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!C9aWpK1shVMWP4m5" } diff --git a/src/packs/items/weapons/weapon_Urok_Broadsword_zGm6Wa1fGF6cECY5.json b/src/packs/items/weapons/weapon_Urok_Broadsword_zGm6Wa1fGF6cECY5.json index b1fad87b..d971f0c5 100644 --- a/src/packs/items/weapons/weapon_Urok_Broadsword_zGm6Wa1fGF6cECY5.json +++ b/src/packs/items/weapons/weapon_Urok_Broadsword_zGm6Wa1fGF6cECY5.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829648524, - "modifiedTime": 1753829674190, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430831515, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zGm6Wa1fGF6cECY5" } diff --git a/src/packs/items/weapons/weapon_Wand_ItWisJFNGMNWeaCV.json b/src/packs/items/weapons/weapon_Wand_ItWisJFNGMNWeaCV.json index d990e614..e500c15f 100644 --- a/src/packs/items/weapons/weapon_Wand_ItWisJFNGMNWeaCV.json +++ b/src/packs/items/weapons/weapon_Wand_ItWisJFNGMNWeaCV.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828516647, - "modifiedTime": 1753828537368, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430688603, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ItWisJFNGMNWeaCV" } diff --git a/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json b/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json index 46471b7f..88522c0b 100644 --- a/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json +++ b/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json @@ -137,6 +137,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [ @@ -189,12 +194,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831377291, - "modifiedTime": 1753831408550, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430952360, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tP6vmnrmTq2h5sj7" } diff --git a/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json b/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json index 76b82f6a..3fbea383 100644 --- a/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json +++ b/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836344144, - "modifiedTime": 1753836369996, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431531704, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ZrRGNjGCgZTTfgDG" } diff --git a/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json b/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json index 5d65a310..2db63c9d 100644 --- a/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json +++ b/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753829740082, - "modifiedTime": 1754814992370, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430838534, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!z6yEdFYQJ5IzgTX3" } diff --git a/src/packs/items/weapons/weapon_Warhammer_ZXh1GQahBiODfSTC.json b/src/packs/items/weapons/weapon_Warhammer_ZXh1GQahBiODfSTC.json index 0804236c..7668ae21 100644 --- a/src/packs/items/weapons/weapon_Warhammer_ZXh1GQahBiODfSTC.json +++ b/src/packs/items/weapons/weapon_Warhammer_ZXh1GQahBiODfSTC.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827866228, - "modifiedTime": 1753827888903, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430626466, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ZXh1GQahBiODfSTC" } diff --git a/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json b/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json index b354f5f4..dd75905f 100644 --- a/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json +++ b/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json @@ -130,6 +130,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -143,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753744226240, - "modifiedTime": 1753808365384, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430301656, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CmtWqw6DwoePnX7W" } diff --git a/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json b/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json index 743aef06..bc8dea0d 100644 --- a/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json +++ b/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833840059, - "modifiedTime": 1753833870464, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431254653, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!8Z5QrThfwkYPXNco" } diff --git a/src/packs/items/weapons/weapon_Yutari_Bloodbow_0XpSBYXxtywvBFQi.json b/src/packs/items/weapons/weapon_Yutari_Bloodbow_0XpSBYXxtywvBFQi.json index f096cbc4..79ec0577 100644 --- a/src/packs/items/weapons/weapon_Yutari_Bloodbow_0XpSBYXxtywvBFQi.json +++ b/src/packs/items/weapons/weapon_Yutari_Bloodbow_0XpSBYXxtywvBFQi.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831267751, - "modifiedTime": 1753831296579, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430958208, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0XpSBYXxtywvBFQi" } diff --git a/src/packs/subclasses/feature_Accomplished_0wCctRupJAv5hTuE.json b/src/packs/subclasses/feature_Accomplished_0wCctRupJAv5hTuE.json index 2e23c31c..02a98035 100644 --- a/src/packs/subclasses/feature_Accomplished_0wCctRupJAv5hTuE.json +++ b/src/packs/subclasses/feature_Accomplished_0wCctRupJAv5hTuE.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253943924, - "modifiedTime": 1754253975014, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392523853, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0wCctRupJAv5hTuE" } diff --git a/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json b/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json index 6b505c86..441bf12a 100644 --- a/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json +++ b/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json @@ -38,7 +38,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -91,12 +96,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754243143650, - "modifiedTime": 1754351612905, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391854504, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!k7vvMJtEcxMWUUrW" } diff --git a/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json b/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json index a19ae5c9..4e5b9d0b 100644 --- a/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json +++ b/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json @@ -42,7 +42,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -55,12 +60,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253694438, - "modifiedTime": 1754253772703, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392496269, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!v511C6GMShsBblah" } diff --git a/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json b/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json index ef5d4c56..c1b11484 100644 --- a/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json +++ b/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json @@ -38,7 +38,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -109,12 +114,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754319984350, - "modifiedTime": 1754351983791, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392070263, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!uByM34yQlw38yf1V" } diff --git a/src/packs/subclasses/feature_Advanced_Training_uGcs785h94RMtueH.json b/src/packs/subclasses/feature_Advanced_Training_uGcs785h94RMtueH.json index 7cbad7d7..3b7f55d9 100644 --- a/src/packs/subclasses/feature_Advanced_Training_uGcs785h94RMtueH.json +++ b/src/packs/subclasses/feature_Advanced_Training_uGcs785h94RMtueH.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267928272, - "modifiedTime": 1754267942465, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391976441, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!uGcs785h94RMtueH" } diff --git a/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json b/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json index b435ffad..31d79e90 100644 --- a/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json +++ b/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json @@ -40,7 +40,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754268013491, - "modifiedTime": 1754268190654, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391968894, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!lwH3E0Zyf4gbVOd0" } diff --git a/src/packs/subclasses/feature_Arcane_Charge_yA4MKQ1tbKFiJoDB.json b/src/packs/subclasses/feature_Arcane_Charge_yA4MKQ1tbKFiJoDB.json index 59dfea8f..8ebe8a5b 100644 --- a/src/packs/subclasses/feature_Arcane_Charge_yA4MKQ1tbKFiJoDB.json +++ b/src/packs/subclasses/feature_Arcane_Charge_yA4MKQ1tbKFiJoDB.json @@ -17,7 +17,12 @@ }, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [ { @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349515898, - "modifiedTime": 1754349515898, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392345960, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!yA4MKQ1tbKFiJoDB" } diff --git a/src/packs/subclasses/feature_Ascendant_fefLgx6kcYWusjBb.json b/src/packs/subclasses/feature_Ascendant_fefLgx6kcYWusjBb.json index efb31ac4..3367b434 100644 --- a/src/packs/subclasses/feature_Ascendant_fefLgx6kcYWusjBb.json +++ b/src/packs/subclasses/feature_Ascendant_fefLgx6kcYWusjBb.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754355721228, - "modifiedTime": 1754355738718, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392230926, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!fefLgx6kcYWusjBb" } diff --git a/src/packs/subclasses/feature_At_Ease_xPWFvGvtUjIcqgJq.json b/src/packs/subclasses/feature_At_Ease_xPWFvGvtUjIcqgJq.json index 4cccb077..d7212244 100644 --- a/src/packs/subclasses/feature_At_Ease_xPWFvGvtUjIcqgJq.json +++ b/src/packs/subclasses/feature_At_Ease_xPWFvGvtUjIcqgJq.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754237891794, - "modifiedTime": 1754245935236, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391823600, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xPWFvGvtUjIcqgJq" } diff --git a/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json b/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json index d56edfa1..259a25da 100644 --- a/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json +++ b/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267290791, - "modifiedTime": 1754267339284, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391947493, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hWsKyed1vfILg0I8" } diff --git a/src/packs/subclasses/feature_Battle_Ritual_qqb5acyUSl1sCpWW.json b/src/packs/subclasses/feature_Battle_Ritual_qqb5acyUSl1sCpWW.json index 1ebf58ca..df550dff 100644 --- a/src/packs/subclasses/feature_Battle_Ritual_qqb5acyUSl1sCpWW.json +++ b/src/packs/subclasses/feature_Battle_Ritual_qqb5acyUSl1sCpWW.json @@ -103,7 +103,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -116,12 +121,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256232412, - "modifiedTime": 1754256309647, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392388947, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!qqb5acyUSl1sCpWW" } diff --git a/src/packs/subclasses/feature_Battlemage_Y9eGMewnFZgPvX0M.json b/src/packs/subclasses/feature_Battlemage_Y9eGMewnFZgPvX0M.json index b6be75f0..ab44a170 100644 --- a/src/packs/subclasses/feature_Battlemage_Y9eGMewnFZgPvX0M.json +++ b/src/packs/subclasses/feature_Battlemage_Y9eGMewnFZgPvX0M.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253784757, - "modifiedTime": 1754253819240, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392505769, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Y9eGMewnFZgPvX0M" } diff --git a/src/packs/subclasses/feature_Brilliant_2A0HBDxGc4gEARou.json b/src/packs/subclasses/feature_Brilliant_2A0HBDxGc4gEARou.json index 0c05fbf6..77bf5d74 100644 --- a/src/packs/subclasses/feature_Brilliant_2A0HBDxGc4gEARou.json +++ b/src/packs/subclasses/feature_Brilliant_2A0HBDxGc4gEARou.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 100000, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254253864, - "modifiedTime": 1754254310242, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392562593, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2A0HBDxGc4gEARou" } diff --git a/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json b/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json index 752fee05..a0c614a5 100644 --- a/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json +++ b/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json @@ -85,7 +85,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "sort": 200000, @@ -98,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754179740310, - "modifiedTime": 1754496518048, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391695859, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!etaQ01yGJhBLDUqZ" } diff --git a/src/packs/subclasses/feature_Comaraderie_dArl2cxKIEGTicXU.json b/src/packs/subclasses/feature_Comaraderie_dArl2cxKIEGTicXU.json index 61ce367d..2b30206e 100644 --- a/src/packs/subclasses/feature_Comaraderie_dArl2cxKIEGTicXU.json +++ b/src/packs/subclasses/feature_Comaraderie_dArl2cxKIEGTicXU.json @@ -33,7 +33,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -46,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256748303, - "modifiedTime": 1754256845527, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392438216, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dArl2cxKIEGTicXU" } diff --git a/src/packs/subclasses/feature_Companion_MBFXxIEwc0Dl4kJg.json b/src/packs/subclasses/feature_Companion_MBFXxIEwc0Dl4kJg.json index e13065b7..8028eec2 100644 --- a/src/packs/subclasses/feature_Companion_MBFXxIEwc0Dl4kJg.json +++ b/src/packs/subclasses/feature_Companion_MBFXxIEwc0Dl4kJg.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754266772170, - "modifiedTime": 1754266905966, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391922354, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MBFXxIEwc0Dl4kJg" } diff --git a/src/packs/subclasses/feature_Conjure_Shield_oirsCnN66GOlK3Fa.json b/src/packs/subclasses/feature_Conjure_Shield_oirsCnN66GOlK3Fa.json index 8fc72db2..88a739d0 100644 --- a/src/packs/subclasses/feature_Conjure_Shield_oirsCnN66GOlK3Fa.json +++ b/src/packs/subclasses/feature_Conjure_Shield_oirsCnN66GOlK3Fa.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254077810, - "modifiedTime": 1754254095589, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392539956, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!oirsCnN66GOlK3Fa" } diff --git a/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json b/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json index 3c8fa5b5..2b69d05e 100644 --- a/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json +++ b/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json @@ -41,7 +41,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754320389008, - "modifiedTime": 1754496752362, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392080713, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cXbRm744mW6UXGam" } diff --git a/src/packs/subclasses/feature_Courage_o5j2vjXU8NicYlXx.json b/src/packs/subclasses/feature_Courage_o5j2vjXU8NicYlXx.json index 108f4571..5b2fdcdf 100644 --- a/src/packs/subclasses/feature_Courage_o5j2vjXU8NicYlXx.json +++ b/src/packs/subclasses/feature_Courage_o5j2vjXU8NicYlXx.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256184552, - "modifiedTime": 1754256222832, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392395130, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!o5j2vjXU8NicYlXx" } diff --git a/src/packs/subclasses/feature_Dark_Cloud_frBTtNMX9Y2gkuPz.json b/src/packs/subclasses/feature_Dark_Cloud_frBTtNMX9Y2gkuPz.json index 2de13f94..c31aa7d2 100644 --- a/src/packs/subclasses/feature_Dark_Cloud_frBTtNMX9Y2gkuPz.json +++ b/src/packs/subclasses/feature_Dark_Cloud_frBTtNMX9Y2gkuPz.json @@ -56,7 +56,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [], "sort": 0, @@ -69,12 +74,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754319411878, - "modifiedTime": 1754351939150, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392060813, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!frBTtNMX9Y2gkuPz" } diff --git a/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json b/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json index 37e5fa11..515f12da 100644 --- a/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json +++ b/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json @@ -40,7 +40,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "sort": 400000, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754220872809, - "modifiedTime": 1754353606220, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391765479, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Jdktv5p1K2PfgxrT" } diff --git a/src/packs/subclasses/feature_Devout_J3A7ycmj65hlhWnI.json b/src/packs/subclasses/feature_Devout_J3A7ycmj65hlhWnI.json index b7568b2c..1fd3d016 100644 --- a/src/packs/subclasses/feature_Devout_J3A7ycmj65hlhWnI.json +++ b/src/packs/subclasses/feature_Devout_J3A7ycmj65hlhWnI.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754353798475, - "modifiedTime": 1754353830966, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392196286, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!J3A7ycmj65hlhWnI" } diff --git a/src/packs/subclasses/feature_Elemental_Aura_2JH9NaOh69yN80Gw.json b/src/packs/subclasses/feature_Elemental_Aura_2JH9NaOh69yN80Gw.json index 286f651d..6e65294e 100644 --- a/src/packs/subclasses/feature_Elemental_Aura_2JH9NaOh69yN80Gw.json +++ b/src/packs/subclasses/feature_Elemental_Aura_2JH9NaOh69yN80Gw.json @@ -173,7 +173,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [ { @@ -370,12 +375,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754180638227, - "modifiedTime": 1754353118771, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391729977, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2JH9NaOh69yN80Gw" } diff --git a/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json b/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json index 30d3928f..11317c54 100644 --- a/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json +++ b/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json @@ -126,7 +126,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [ { @@ -332,12 +337,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754219959517, - "modifiedTime": 1754353189971, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391758846, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!EFUJHrkTuyv8uA9l" } diff --git a/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json b/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json index 855d34aa..56387284 100644 --- a/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json +++ b/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json @@ -231,7 +231,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [ { @@ -441,12 +446,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754176169510, - "modifiedTime": 1754352293609, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391716994, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!f37TTgCc0Q3Ih1A1" } diff --git a/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json b/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json index b282d4fb..dd2d8597 100644 --- a/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json +++ b/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json @@ -84,7 +84,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [ { @@ -202,12 +207,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349507020, - "modifiedTime": 1754349507020, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392284524, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dPcqKN5NeDkjB1HW" } diff --git a/src/packs/subclasses/feature_Eloquent_5bmB1YcxiJVNVXDM.json b/src/packs/subclasses/feature_Eloquent_5bmB1YcxiJVNVXDM.json index daca1154..be3ae3d6 100644 --- a/src/packs/subclasses/feature_Eloquent_5bmB1YcxiJVNVXDM.json +++ b/src/packs/subclasses/feature_Eloquent_5bmB1YcxiJVNVXDM.json @@ -31,7 +31,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [], "flags": {}, @@ -39,12 +44,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.QaEinpTu6c1Tj859", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754494786779, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391624722, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json b/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json index 74f5a35e..fed36288 100644 --- a/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json +++ b/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267748776, - "modifiedTime": 1754267799813, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391941589, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Cjtc43V3IzAmfIFG" } diff --git a/src/packs/subclasses/feature_Enchanted_Aid_4pVBN8cuKePI423V.json b/src/packs/subclasses/feature_Enchanted_Aid_4pVBN8cuKePI423V.json index 756a21cc..4a3dd229 100644 --- a/src/packs/subclasses/feature_Enchanted_Aid_4pVBN8cuKePI423V.json +++ b/src/packs/subclasses/feature_Enchanted_Aid_4pVBN8cuKePI423V.json @@ -33,7 +33,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [], "sort": 0, @@ -46,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349511084, - "modifiedTime": 1754349511084, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392324026, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4pVBN8cuKePI423V" } diff --git a/src/packs/subclasses/feature_Epic_Poetry_eCoEWkWuZPMZ9C6a.json b/src/packs/subclasses/feature_Epic_Poetry_eCoEWkWuZPMZ9C6a.json index f80c05e3..23864dbe 100644 --- a/src/packs/subclasses/feature_Epic_Poetry_eCoEWkWuZPMZ9C6a.json +++ b/src/packs/subclasses/feature_Epic_Poetry_eCoEWkWuZPMZ9C6a.json @@ -8,7 +8,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [ { @@ -67,12 +72,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.4dVLpWQ5SpAGnc5A", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754236502610, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391644691, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Ethereal_Visage_tyGB6wRKjYdIBK1i.json b/src/packs/subclasses/feature_Ethereal_Visage_tyGB6wRKjYdIBK1i.json index c434eae9..ea7992a3 100644 --- a/src/packs/subclasses/feature_Ethereal_Visage_tyGB6wRKjYdIBK1i.json +++ b/src/packs/subclasses/feature_Ethereal_Visage_tyGB6wRKjYdIBK1i.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754355219220, - "modifiedTime": 1754355252528, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392202970, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tyGB6wRKjYdIBK1i" } diff --git a/src/packs/subclasses/feature_Expert_Training_iCXtOWBKv1FdKdWz.json b/src/packs/subclasses/feature_Expert_Training_iCXtOWBKv1FdKdWz.json index e6b18e5a..2ef5b31f 100644 --- a/src/packs/subclasses/feature_Expert_Training_iCXtOWBKv1FdKdWz.json +++ b/src/packs/subclasses/feature_Expert_Training_iCXtOWBKv1FdKdWz.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267251789, - "modifiedTime": 1754267277163, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391953639, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!iCXtOWBKv1FdKdWz" } diff --git a/src/packs/subclasses/feature_Face_Your_Fear_D3ffFWSXCza4WGcM.json b/src/packs/subclasses/feature_Face_Your_Fear_D3ffFWSXCza4WGcM.json index 2e0d5a05..056e3bc8 100644 --- a/src/packs/subclasses/feature_Face_Your_Fear_D3ffFWSXCza4WGcM.json +++ b/src/packs/subclasses/feature_Face_Your_Fear_D3ffFWSXCza4WGcM.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253863023, - "modifiedTime": 1754253898944, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392512687, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!D3ffFWSXCza4WGcM" } diff --git a/src/packs/subclasses/feature_Fleeting_Shadow_EY7Eo6hNGppVL3dR.json b/src/packs/subclasses/feature_Fleeting_Shadow_EY7Eo6hNGppVL3dR.json index 5c8e344a..ed1d1569 100644 --- a/src/packs/subclasses/feature_Fleeting_Shadow_EY7Eo6hNGppVL3dR.json +++ b/src/packs/subclasses/feature_Fleeting_Shadow_EY7Eo6hNGppVL3dR.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754320756015, - "modifiedTime": 1754320791763, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755392093113, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!EY7Eo6hNGppVL3dR" } diff --git a/src/packs/subclasses/feature_Fueled_by_Fear_hNqLf3zEfKRzSbvq.json b/src/packs/subclasses/feature_Fueled_by_Fear_hNqLf3zEfKRzSbvq.json index a96a7324..bfef6ea3 100644 --- a/src/packs/subclasses/feature_Fueled_by_Fear_hNqLf3zEfKRzSbvq.json +++ b/src/packs/subclasses/feature_Fueled_by_Fear_hNqLf3zEfKRzSbvq.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254160964, - "modifiedTime": 1754254207526, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392548972, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hNqLf3zEfKRzSbvq" } diff --git a/src/packs/subclasses/feature_Gifted_Performer_99U7YWNCxFZHCiT0.json b/src/packs/subclasses/feature_Gifted_Performer_99U7YWNCxFZHCiT0.json index 57cbdc0c..81730014 100644 --- a/src/packs/subclasses/feature_Gifted_Performer_99U7YWNCxFZHCiT0.json +++ b/src/packs/subclasses/feature_Gifted_Performer_99U7YWNCxFZHCiT0.json @@ -170,7 +170,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [ { @@ -224,12 +229,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.6j1RP4fz3BwSfoli", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754475491670, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391572653, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Have_No_Fear_8TH6h6a36h09mf6d.json b/src/packs/subclasses/feature_Have_No_Fear_8TH6h6a36h09mf6d.json index f4423761..90855e04 100644 --- a/src/packs/subclasses/feature_Have_No_Fear_8TH6h6a36h09mf6d.json +++ b/src/packs/subclasses/feature_Have_No_Fear_8TH6h6a36h09mf6d.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 26, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254675541, - "modifiedTime": 1754254712265, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392573261, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!8TH6h6a36h09mf6d" } diff --git a/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json b/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json index b057717a..f0088f38 100644 --- a/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json +++ b/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json @@ -39,7 +39,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "flags": {}, @@ -47,12 +52,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.3YIVugLcucLNtLSZ", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754240308015, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391585771, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Honed_Expertise_w1BwNKxbQOSizLmZ.json b/src/packs/subclasses/feature_Honed_Expertise_w1BwNKxbQOSizLmZ.json index 9f2e7e19..e0e21482 100644 --- a/src/packs/subclasses/feature_Honed_Expertise_w1BwNKxbQOSizLmZ.json +++ b/src/packs/subclasses/feature_Honed_Expertise_w1BwNKxbQOSizLmZ.json @@ -57,7 +57,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 200000, @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253988597, - "modifiedTime": 1754254310242, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392579823, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!w1BwNKxbQOSizLmZ" } diff --git a/src/packs/subclasses/feature_Iron_Will_7AVRNyBcd1Nffjtn.json b/src/packs/subclasses/feature_Iron_Will_7AVRNyBcd1Nffjtn.json index 5b300ade..26e04708 100644 --- a/src/packs/subclasses/feature_Iron_Will_7AVRNyBcd1Nffjtn.json +++ b/src/packs/subclasses/feature_Iron_Will_7AVRNyBcd1Nffjtn.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754237297894, - "modifiedTime": 1754350175771, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391817317, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!7AVRNyBcd1Nffjtn" } diff --git a/src/packs/subclasses/feature_Loyal_Friend_xjZHD5Yo3Tu26rLm.json b/src/packs/subclasses/feature_Loyal_Friend_xjZHD5Yo3Tu26rLm.json index 5f8c3ed7..4f464e6b 100644 --- a/src/packs/subclasses/feature_Loyal_Friend_xjZHD5Yo3Tu26rLm.json +++ b/src/packs/subclasses/feature_Loyal_Friend_xjZHD5Yo3Tu26rLm.json @@ -33,7 +33,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -46,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267956703, - "modifiedTime": 1754496703770, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391982191, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xjZHD5Yo3Tu26rLm" } diff --git a/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json b/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json index 9b7372ee..667fefd8 100644 --- a/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json +++ b/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json @@ -40,7 +40,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "sort": 300000, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754244826486, - "modifiedTime": 1754350266486, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391872035, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hd7UeBPr86Mz21Pe" } diff --git a/src/packs/subclasses/feature_Maestro_ZFkCz8XV1EtMoJ1w.json b/src/packs/subclasses/feature_Maestro_ZFkCz8XV1EtMoJ1w.json index 1dbc1ae6..59b05ae6 100644 --- a/src/packs/subclasses/feature_Maestro_ZFkCz8XV1EtMoJ1w.json +++ b/src/packs/subclasses/feature_Maestro_ZFkCz8XV1EtMoJ1w.json @@ -8,7 +8,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "flags": {}, @@ -16,12 +21,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.c6kz0r85oQ6G7eaZ", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754236475709, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391614339, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json b/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json index df35ffdf..6981cd57 100644 --- a/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json +++ b/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json @@ -42,7 +42,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -55,12 +60,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349507020, - "modifiedTime": 1754349507020, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392299130, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!UNg4eyNfEQrMdD7G" } diff --git a/src/packs/subclasses/feature_Martial_Preparation_dHgAnbt9m1KsQFmp.json b/src/packs/subclasses/feature_Martial_Preparation_dHgAnbt9m1KsQFmp.json index 49117c74..c754561c 100644 --- a/src/packs/subclasses/feature_Martial_Preparation_dHgAnbt9m1KsQFmp.json +++ b/src/packs/subclasses/feature_Martial_Preparation_dHgAnbt9m1KsQFmp.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256861952, - "modifiedTime": 1754256903587, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392449968, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dHgAnbt9m1KsQFmp" } diff --git a/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json b/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json index fe491267..41c12fe9 100644 --- a/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json +++ b/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json @@ -66,7 +66,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -79,12 +84,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349511084, - "modifiedTime": 1754349511084, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392316643, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TnuLBtHQGbqyzn82" } diff --git a/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json b/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json index 11d8f0b0..aa7a3458 100644 --- a/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json +++ b/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json @@ -45,7 +45,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -103,12 +108,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754244990457, - "modifiedTime": 1754351671775, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391879536, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!DPKmipNRlSAMs2Cg" } diff --git a/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json b/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json index 6eb53b78..1dab1e94 100644 --- a/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json +++ b/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json @@ -40,7 +40,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "sort": 300000, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754242808363, - "modifiedTime": 1754350282699, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391847017, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!G54qY96XK62hgoK9" } diff --git a/src/packs/subclasses/feature_Path_Forward_uPPBOpoulUmSLlzr.json b/src/packs/subclasses/feature_Path_Forward_uPPBOpoulUmSLlzr.json index 1921f2ae..72dc7dd3 100644 --- a/src/packs/subclasses/feature_Path_Forward_uPPBOpoulUmSLlzr.json +++ b/src/packs/subclasses/feature_Path_Forward_uPPBOpoulUmSLlzr.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267110974, - "modifiedTime": 1754267209120, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391932973, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!uPPBOpoulUmSLlzr" } diff --git a/src/packs/subclasses/feature_Perfect_Recall_HzPa5U0EQhDfFTqW.json b/src/packs/subclasses/feature_Perfect_Recall_HzPa5U0EQhDfFTqW.json index 0b28959b..b1042617 100644 --- a/src/packs/subclasses/feature_Perfect_Recall_HzPa5U0EQhDfFTqW.json +++ b/src/packs/subclasses/feature_Perfect_Recall_HzPa5U0EQhDfFTqW.json @@ -33,7 +33,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -46,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254320808, - "modifiedTime": 1754254522728, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392533206, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!HzPa5U0EQhDfFTqW" } diff --git a/src/packs/subclasses/feature_Power_of_the_Gods_Yij5sNyP1Ii7BAbc.json b/src/packs/subclasses/feature_Power_of_the_Gods_Yij5sNyP1Ii7BAbc.json index ef286817..f4d1f648 100644 --- a/src/packs/subclasses/feature_Power_of_the_Gods_Yij5sNyP1Ii7BAbc.json +++ b/src/packs/subclasses/feature_Power_of_the_Gods_Yij5sNyP1Ii7BAbc.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754355875610, - "modifiedTime": 1754355895962, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392237241, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Yij5sNyP1Ii7BAbc" } diff --git a/src/packs/subclasses/feature_Prepared_YS52ZGdce605wNVT.json b/src/packs/subclasses/feature_Prepared_YS52ZGdce605wNVT.json index fe00e41d..77250a5f 100644 --- a/src/packs/subclasses/feature_Prepared_YS52ZGdce605wNVT.json +++ b/src/packs/subclasses/feature_Prepared_YS52ZGdce605wNVT.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253648251, - "modifiedTime": 1754253683668, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392490085, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!YS52ZGdce605wNVT" } diff --git a/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json b/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json index 91e8975c..a0349e7c 100644 --- a/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json +++ b/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json @@ -84,7 +84,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "sort": 300000, @@ -97,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754180232243, - "modifiedTime": 1754353321403, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391703163, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!KRyrbSLVGreIOTZe" } diff --git a/src/packs/subclasses/feature_Regenerative_Reach_oLO3VjGkMcK1uvB9.json b/src/packs/subclasses/feature_Regenerative_Reach_oLO3VjGkMcK1uvB9.json index 9ef8efdf..0ba951b1 100644 --- a/src/packs/subclasses/feature_Regenerative_Reach_oLO3VjGkMcK1uvB9.json +++ b/src/packs/subclasses/feature_Regenerative_Reach_oLO3VjGkMcK1uvB9.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "sort": 200000, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754182966287, - "modifiedTime": 1754236486774, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391738116, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!oLO3VjGkMcK1uvB9" } diff --git a/src/packs/subclasses/feature_Reliable_Backup_QYNGdH37fsGuxS7L.json b/src/packs/subclasses/feature_Reliable_Backup_QYNGdH37fsGuxS7L.json index d3a5254f..66bb65a9 100644 --- a/src/packs/subclasses/feature_Reliable_Backup_QYNGdH37fsGuxS7L.json +++ b/src/packs/subclasses/feature_Reliable_Backup_QYNGdH37fsGuxS7L.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754322198870, - "modifiedTime": 1754322328469, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755392114116, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QYNGdH37fsGuxS7L" } diff --git a/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json b/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json index 1d0406bd..ad653f1e 100644 --- a/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json +++ b/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json @@ -70,7 +70,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "sort": 500000, @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754238182847, - "modifiedTime": 1754246061287, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391829666, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!oNfA5F9cKwNR7joq" } diff --git a/src/packs/subclasses/feature_Rise_to_the_Challenge_dcutk8RVOJ2sEkO1.json b/src/packs/subclasses/feature_Rise_to_the_Challenge_dcutk8RVOJ2sEkO1.json index 7e4ef685..c28c0e20 100644 --- a/src/packs/subclasses/feature_Rise_to_the_Challenge_dcutk8RVOJ2sEkO1.json +++ b/src/packs/subclasses/feature_Rise_to_the_Challenge_dcutk8RVOJ2sEkO1.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256466148, - "modifiedTime": 1754256510431, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392416615, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dcutk8RVOJ2sEkO1" } diff --git a/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json b/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json index 312e055b..be204300 100644 --- a/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json +++ b/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json @@ -85,7 +85,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "flags": {}, @@ -93,12 +98,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.iLytX899psvrPRnG", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754494763682, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391592956, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json b/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json index ac907b99..8ac4675a 100644 --- a/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json +++ b/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json @@ -45,7 +45,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [ { @@ -110,12 +115,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754266926055, - "modifiedTime": 1754267089385, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391927605, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Qny2J3R35bvC0Cey" } diff --git a/src/packs/subclasses/feature_Sacred_Resonance_DxOAkDBfIMpXxAUD.json b/src/packs/subclasses/feature_Sacred_Resonance_DxOAkDBfIMpXxAUD.json index a610db7e..0ebbecc2 100644 --- a/src/packs/subclasses/feature_Sacred_Resonance_DxOAkDBfIMpXxAUD.json +++ b/src/packs/subclasses/feature_Sacred_Resonance_DxOAkDBfIMpXxAUD.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754353916777, - "modifiedTime": 1754354052548, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392223655, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!DxOAkDBfIMpXxAUD" } diff --git a/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json b/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json index 77e3504d..c46446d0 100644 --- a/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json +++ b/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json @@ -45,7 +45,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -103,12 +108,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754318976447, - "modifiedTime": 1754323456453, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755392035163, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hAwTXjhyphiE3aeW" } diff --git a/src/packs/subclasses/feature_Slayer_1hF5KGKQc2VKT5O8.json b/src/packs/subclasses/feature_Slayer_1hF5KGKQc2VKT5O8.json index ef813ae1..ce038aef 100644 --- a/src/packs/subclasses/feature_Slayer_1hF5KGKQc2VKT5O8.json +++ b/src/packs/subclasses/feature_Slayer_1hF5KGKQc2VKT5O8.json @@ -14,7 +14,12 @@ }, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -27,12 +32,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256326320, - "modifiedTime": 1754256425506, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392403783, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1hF5KGKQc2VKT5O8" } diff --git a/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json b/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json index cf0a8f93..311cb456 100644 --- a/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json +++ b/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json @@ -171,7 +171,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -184,12 +189,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754353243691, - "modifiedTime": 1754500973073, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392184339, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GfOSgVJW8bS1OjNq" } diff --git a/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json b/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json index ca08ad1f..54a8303a 100644 --- a/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json +++ b/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json @@ -42,7 +42,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -55,12 +60,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754353023665, - "modifiedTime": 1754353132278, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392178319, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!McoS0RxNLOg3SfSt" } diff --git a/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json b/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json index 9563a324..a8952599 100644 --- a/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json +++ b/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json @@ -46,7 +46,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 26, + "artist": "" + } }, "effects": [], "sort": 0, @@ -59,12 +64,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254574860, - "modifiedTime": 1754254657593, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392589991, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1nmFmkNXY6OYyyju" } diff --git a/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json b/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json index cf2c658d..b0cc2c4f 100644 --- a/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json +++ b/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json @@ -42,7 +42,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [ { @@ -238,12 +243,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349515898, - "modifiedTime": 1754497438787, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392338476, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!th6HZwEFnVBjUtqm" } diff --git a/src/packs/subclasses/feature_Undaunted_866b2jjyzXP8nPRQ.json b/src/packs/subclasses/feature_Undaunted_866b2jjyzXP8nPRQ.json index 48feb948..16bcf7d9 100644 --- a/src/packs/subclasses/feature_Undaunted_866b2jjyzXP8nPRQ.json +++ b/src/packs/subclasses/feature_Undaunted_866b2jjyzXP8nPRQ.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754243538688, - "modifiedTime": 1754244861863, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391864452, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!866b2jjyzXP8nPRQ" } diff --git a/src/packs/subclasses/feature_Unrelenting_4qP7bNyxVHBmr4Rb.json b/src/packs/subclasses/feature_Unrelenting_4qP7bNyxVHBmr4Rb.json index 14420491..da75c64e 100644 --- a/src/packs/subclasses/feature_Unrelenting_4qP7bNyxVHBmr4Rb.json +++ b/src/packs/subclasses/feature_Unrelenting_4qP7bNyxVHBmr4Rb.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754242120515, - "modifiedTime": 1754242888502, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391840785, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4qP7bNyxVHBmr4Rb" } diff --git a/src/packs/subclasses/feature_Unwavering_WBiFZaYNoQNhysmN.json b/src/packs/subclasses/feature_Unwavering_WBiFZaYNoQNhysmN.json index 0675d2c3..5a9f6cf6 100644 --- a/src/packs/subclasses/feature_Unwavering_WBiFZaYNoQNhysmN.json +++ b/src/packs/subclasses/feature_Unwavering_WBiFZaYNoQNhysmN.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754236984012, - "modifiedTime": 1754245935236, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391809567, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WBiFZaYNoQNhysmN" } diff --git a/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json b/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json index 5eda8565..d56182e9 100644 --- a/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json +++ b/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json @@ -45,7 +45,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -103,12 +108,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754321406972, - "modifiedTime": 1754322584899, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755392101482, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!iyIg1VLwO8C6jvFZ" } diff --git a/src/packs/subclasses/feature_Virtuoso_kn2t409o0FDFQieo.json b/src/packs/subclasses/feature_Virtuoso_kn2t409o0FDFQieo.json index 1f7c6eec..26f00fb3 100644 --- a/src/packs/subclasses/feature_Virtuoso_kn2t409o0FDFQieo.json +++ b/src/packs/subclasses/feature_Virtuoso_kn2t409o0FDFQieo.json @@ -8,7 +8,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "flags": {}, @@ -16,12 +21,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.lmUplK4FSH6EOTKJ", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754236506280, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391637042, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Warden_s_Protection_2F1bUFY80oce97C9.json b/src/packs/subclasses/feature_Warden_s_Protection_2F1bUFY80oce97C9.json index 3d6055d2..49fa4398 100644 --- a/src/packs/subclasses/feature_Warden_s_Protection_2F1bUFY80oce97C9.json +++ b/src/packs/subclasses/feature_Warden_s_Protection_2F1bUFY80oce97C9.json @@ -78,7 +78,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "sort": 300000, @@ -91,12 +96,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754183079986, - "modifiedTime": 1754496541966, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391744012, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2F1bUFY80oce97C9" } diff --git a/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json b/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json index a4937457..886f2e21 100644 --- a/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json +++ b/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json @@ -65,7 +65,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256525016, - "modifiedTime": 1754256712476, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392424300, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!HAqtoKUTrk8Mip1n" } diff --git a/src/packs/subclasses/feature_Well_Connected_7KnSOazixXXSnspj.json b/src/packs/subclasses/feature_Well_Connected_7KnSOazixXXSnspj.json index 474dbb8a..77edd828 100644 --- a/src/packs/subclasses/feature_Well_Connected_7KnSOazixXXSnspj.json +++ b/src/packs/subclasses/feature_Well_Connected_7KnSOazixXXSnspj.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754319141863, - "modifiedTime": 1754319354348, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755392041962, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!7KnSOazixXXSnspj" } diff --git a/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json b/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json index 034ea026..9580889b 100644 --- a/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json +++ b/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json @@ -70,7 +70,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [ { @@ -141,12 +146,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754354510934, - "modifiedTime": 1754355070373, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392171336, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!KkQH0tYhagIqe2MT" } diff --git a/src/packs/subclasses/subclass_Beastbound_TIUsIlTS1WkK5vr2.json b/src/packs/subclasses/subclass_Beastbound_TIUsIlTS1WkK5vr2.json index 824572e9..14f64dca 100644 --- a/src/packs/subclasses/subclass_Beastbound_TIUsIlTS1WkK5vr2.json +++ b/src/packs/subclasses/subclass_Beastbound_TIUsIlTS1WkK5vr2.json @@ -30,7 +30,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -43,12 +48,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754268237448, - "modifiedTime": 1754268308097, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391910037, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TIUsIlTS1WkK5vr2" } diff --git a/src/packs/subclasses/subclass_Call_Of_The_Brave_NAFU9roaVG7f3RNJ.json b/src/packs/subclasses/subclass_Call_Of_The_Brave_NAFU9roaVG7f3RNJ.json index 51718237..7abd2d61 100644 --- a/src/packs/subclasses/subclass_Call_Of_The_Brave_NAFU9roaVG7f3RNJ.json +++ b/src/packs/subclasses/subclass_Call_Of_The_Brave_NAFU9roaVG7f3RNJ.json @@ -26,7 +26,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -39,12 +44,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256077777, - "modifiedTime": 1754256954656, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392366229, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!NAFU9roaVG7f3RNJ" } diff --git a/src/packs/subclasses/subclass_Call_Of_The_Slayer_bcNe5qP3o6CKadhK.json b/src/packs/subclasses/subclass_Call_Of_The_Slayer_bcNe5qP3o6CKadhK.json index ab0419d8..69cdf70f 100644 --- a/src/packs/subclasses/subclass_Call_Of_The_Slayer_bcNe5qP3o6CKadhK.json +++ b/src/packs/subclasses/subclass_Call_Of_The_Slayer_bcNe5qP3o6CKadhK.json @@ -22,7 +22,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -35,12 +40,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256112978, - "modifiedTime": 1754256959532, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392375946, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bcNe5qP3o6CKadhK" } diff --git a/src/packs/subclasses/subclass_Divine_Wielder_M5mpGoAj8LRkylrY.json b/src/packs/subclasses/subclass_Divine_Wielder_M5mpGoAj8LRkylrY.json index e5f1f4c8..19449650 100644 --- a/src/packs/subclasses/subclass_Divine_Wielder_M5mpGoAj8LRkylrY.json +++ b/src/packs/subclasses/subclass_Divine_Wielder_M5mpGoAj8LRkylrY.json @@ -26,7 +26,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -39,12 +44,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754352806098, - "modifiedTime": 1754354057333, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392139199, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!M5mpGoAj8LRkylrY" } diff --git a/src/packs/subclasses/subclass_Elemental_Origin_wg1H0hROc2acHwZh.json b/src/packs/subclasses/subclass_Elemental_Origin_wg1H0hROc2acHwZh.json index b1e5f67e..f9fadc3d 100644 --- a/src/packs/subclasses/subclass_Elemental_Origin_wg1H0hROc2acHwZh.json +++ b/src/packs/subclasses/subclass_Elemental_Origin_wg1H0hROc2acHwZh.json @@ -22,7 +22,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -35,12 +40,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349604941, - "modifiedTime": 1754349648910, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392260989, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!wg1H0hROc2acHwZh" } diff --git a/src/packs/subclasses/subclass_Nightwalker_h161OSIK24Up4qNd.json b/src/packs/subclasses/subclass_Nightwalker_h161OSIK24Up4qNd.json index 8da59a4c..f4a72013 100644 --- a/src/packs/subclasses/subclass_Nightwalker_h161OSIK24Up4qNd.json +++ b/src/packs/subclasses/subclass_Nightwalker_h161OSIK24Up4qNd.json @@ -30,7 +30,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [], "sort": 0, @@ -43,12 +48,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754322815758, - "modifiedTime": 1754323509061, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755392009996, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!h161OSIK24Up4qNd" } diff --git a/src/packs/subclasses/subclass_Primal_Origin_GLpRVxnY5E82khxH.json b/src/packs/subclasses/subclass_Primal_Origin_GLpRVxnY5E82khxH.json index e3f38604..0462164c 100644 --- a/src/packs/subclasses/subclass_Primal_Origin_GLpRVxnY5E82khxH.json +++ b/src/packs/subclasses/subclass_Primal_Origin_GLpRVxnY5E82khxH.json @@ -22,7 +22,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -35,12 +40,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349604941, - "modifiedTime": 1754349673276, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392267640, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GLpRVxnY5E82khxH" } diff --git a/src/packs/subclasses/subclass_School_Of_Knowledge_qqQlgCqhOivUFoQn.json b/src/packs/subclasses/subclass_School_Of_Knowledge_qqQlgCqhOivUFoQn.json index 7dcbcf35..1e582722 100644 --- a/src/packs/subclasses/subclass_School_Of_Knowledge_qqQlgCqhOivUFoQn.json +++ b/src/packs/subclasses/subclass_School_Of_Knowledge_qqQlgCqhOivUFoQn.json @@ -34,7 +34,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -47,12 +52,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253538384, - "modifiedTime": 1754254543287, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392466418, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!qqQlgCqhOivUFoQn" } diff --git a/src/packs/subclasses/subclass_School_Of_War_4y9Ph7RsCIAbkwTk.json b/src/packs/subclasses/subclass_School_Of_War_4y9Ph7RsCIAbkwTk.json index 03af87fc..9c69d8c8 100644 --- a/src/packs/subclasses/subclass_School_Of_War_4y9Ph7RsCIAbkwTk.json +++ b/src/packs/subclasses/subclass_School_Of_War_4y9Ph7RsCIAbkwTk.json @@ -34,7 +34,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -47,12 +52,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253587683, - "modifiedTime": 1754254721869, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392474218, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4y9Ph7RsCIAbkwTk" } diff --git a/src/packs/subclasses/subclass_Stalwart_rKRxFBlkbh9cDK8K.json b/src/packs/subclasses/subclass_Stalwart_rKRxFBlkbh9cDK8K.json index 0e9ea4df..f6693e6d 100644 --- a/src/packs/subclasses/subclass_Stalwart_rKRxFBlkbh9cDK8K.json +++ b/src/packs/subclasses/subclass_Stalwart_rKRxFBlkbh9cDK8K.json @@ -34,7 +34,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "sort": 0, @@ -47,12 +52,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754245881893, - "modifiedTime": 1754245958817, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391787981, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!rKRxFBlkbh9cDK8K" } diff --git a/src/packs/subclasses/subclass_Syndicate_95QxNZwgyEm1LqdG.json b/src/packs/subclasses/subclass_Syndicate_95QxNZwgyEm1LqdG.json index 8d7285d4..5d2af915 100644 --- a/src/packs/subclasses/subclass_Syndicate_95QxNZwgyEm1LqdG.json +++ b/src/packs/subclasses/subclass_Syndicate_95QxNZwgyEm1LqdG.json @@ -22,7 +22,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 0, @@ -35,12 +40,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754323643089, - "modifiedTime": 1754323735227, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755392018277, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!95QxNZwgyEm1LqdG" } diff --git a/src/packs/subclasses/subclass_Troubadour_ld8MIvk0xVJydSBz.json b/src/packs/subclasses/subclass_Troubadour_ld8MIvk0xVJydSBz.json index e50ecfa8..c8f9ede3 100644 --- a/src/packs/subclasses/subclass_Troubadour_ld8MIvk0xVJydSBz.json +++ b/src/packs/subclasses/subclass_Troubadour_ld8MIvk0xVJydSBz.json @@ -21,7 +21,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "ownership": { @@ -33,12 +38,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174653653, - "modifiedTime": 1754236659263, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391532634, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ld8MIvk0xVJydSBz", "sort": 100000, diff --git a/src/packs/subclasses/subclass_Vengeance_SUo8NPBPO8aN193u.json b/src/packs/subclasses/subclass_Vengeance_SUo8NPBPO8aN193u.json index 53f7cf96..11d7f047 100644 --- a/src/packs/subclasses/subclass_Vengeance_SUo8NPBPO8aN193u.json +++ b/src/packs/subclasses/subclass_Vengeance_SUo8NPBPO8aN193u.json @@ -26,7 +26,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "sort": 0, @@ -39,12 +44,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754246011733, - "modifiedTime": 1754246076491, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391794966, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SUo8NPBPO8aN193u" } diff --git a/src/packs/subclasses/subclass_Warden_of_Renewal_xp0XMjYT85Q7E90o.json b/src/packs/subclasses/subclass_Warden_of_Renewal_xp0XMjYT85Q7E90o.json index 08421469..053552cc 100644 --- a/src/packs/subclasses/subclass_Warden_of_Renewal_xp0XMjYT85Q7E90o.json +++ b/src/packs/subclasses/subclass_Warden_of_Renewal_xp0XMjYT85Q7E90o.json @@ -29,7 +29,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "folder": "AZWrSJzGXltzQhAJ", @@ -43,12 +48,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754221346981, - "modifiedTime": 1754236671909, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391677508, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xp0XMjYT85Q7E90o" } diff --git a/src/packs/subclasses/subclass_Warden_of_the_Elements_W9hs5kxOWeY7eA4Q.json b/src/packs/subclasses/subclass_Warden_of_the_Elements_W9hs5kxOWeY7eA4Q.json index 0e4972f6..515666a2 100644 --- a/src/packs/subclasses/subclass_Warden_of_the_Elements_W9hs5kxOWeY7eA4Q.json +++ b/src/packs/subclasses/subclass_Warden_of_the_Elements_W9hs5kxOWeY7eA4Q.json @@ -21,7 +21,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "folder": "AZWrSJzGXltzQhAJ", @@ -35,12 +40,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754221102716, - "modifiedTime": 1754236671090, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391669341, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!W9hs5kxOWeY7eA4Q" } diff --git a/src/packs/subclasses/subclass_Wayfinder_zsUglcU4NgZ8tNgZ.json b/src/packs/subclasses/subclass_Wayfinder_zsUglcU4NgZ8tNgZ.json index 4f9a2289..66c31f99 100644 --- a/src/packs/subclasses/subclass_Wayfinder_zsUglcU4NgZ8tNgZ.json +++ b/src/packs/subclasses/subclass_Wayfinder_zsUglcU4NgZ8tNgZ.json @@ -26,7 +26,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -39,12 +44,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754268318903, - "modifiedTime": 1754268377047, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391902003, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zsUglcU4NgZ8tNgZ" } diff --git a/src/packs/subclasses/subclass_Winged_Sentinel_y7ERWRIpJsdP9Re4.json b/src/packs/subclasses/subclass_Winged_Sentinel_y7ERWRIpJsdP9Re4.json index 6da6a117..975363c7 100644 --- a/src/packs/subclasses/subclass_Winged_Sentinel_y7ERWRIpJsdP9Re4.json +++ b/src/packs/subclasses/subclass_Winged_Sentinel_y7ERWRIpJsdP9Re4.json @@ -26,7 +26,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -39,12 +44,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754354451615, - "modifiedTime": 1754355901649, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392149951, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!y7ERWRIpJsdP9Re4" } diff --git a/src/packs/subclasses/subclass_Wordsmith_XTSODVM8st75Os8M.json b/src/packs/subclasses/subclass_Wordsmith_XTSODVM8st75Os8M.json index f4c35265..896c82ed 100644 --- a/src/packs/subclasses/subclass_Wordsmith_XTSODVM8st75Os8M.json +++ b/src/packs/subclasses/subclass_Wordsmith_XTSODVM8st75Os8M.json @@ -25,7 +25,12 @@ } ], "featureState": 1, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "ownership": { @@ -37,12 +42,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174655078, - "modifiedTime": 1754236660088, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391551654, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "XTSODVM8st75Os8M", "sort": 200000, diff --git a/styles/less/dialog/attribution/sheet.less b/styles/less/dialog/attribution/sheet.less new file mode 100644 index 00000000..d20b094d --- /dev/null +++ b/styles/less/dialog/attribution/sheet.less @@ -0,0 +1,23 @@ +.daggerheart.dh-style.dialog.attribution { + .window-content { + padding-top: 0; + } + + .attribution-container { + display: flex; + flex-direction: column; + gap: 8px; + + h4 { + margin-bottom: 0; + } + + footer { + display: flex; + + button { + flex: 1; + } + } + } +} diff --git a/styles/less/dialog/index.less b/styles/less/dialog/index.less index 05593d44..65af4a71 100644 --- a/styles/less/dialog/index.less +++ b/styles/less/dialog/index.less @@ -1,3 +1,4 @@ +@import './attribution/sheet.less'; @import './level-up/navigation-container.less'; @import './level-up/selections-container.less'; @import './level-up/sheet.less'; diff --git a/styles/less/global/elements.less b/styles/less/global/elements.less index 5e5d3921..2f4912c5 100755 --- a/styles/less/global/elements.less +++ b/styles/less/global/elements.less @@ -519,6 +519,17 @@ } } } + .artist-attribution { + width: 100%; + display: flex; + justify-content: left; + font-style: italic; + font-family: @font-body; + margin-top: 4px; + color: light-dark(#14142599, #efe6d850); + font-size: 12px; + padding-left: 3px; + } } .application.setting.dh-style { diff --git a/styles/less/sheets/actors/actor-sheet-shared.less b/styles/less/sheets/actors/actor-sheet-shared.less index 91a2323f..4a7d6404 100644 --- a/styles/less/sheets/actors/actor-sheet-shared.less +++ b/styles/less/sheets/actors/actor-sheet-shared.less @@ -1,8 +1,20 @@ - .application.sheet.daggerheart.actor.dh-style { - .portrait img, .profile { + .portrait img, + .profile { width: 100%; object-fit: cover; object-position: top center; } -} \ No newline at end of file + + &.minimized { + .attribution-header-label { + display: none; + } + } + + .attribution-header-label { + font-style: italic; + font-family: @font-body; + color: light-dark(@chat-blue-bg, @beige-50); + } +} diff --git a/styles/less/sheets/actors/environment/header.less b/styles/less/sheets/actors/environment/header.less index 9abecd77..0ac361a1 100644 --- a/styles/less/sheets/actors/environment/header.less +++ b/styles/less/sheets/actors/environment/header.less @@ -55,6 +55,13 @@ font-size: 12px; } } + + .attribution-header-label { + text-align: left; + position: relative; + top: 4px; + margin-bottom: -6px; + } } .status-number { diff --git a/styles/less/sheets/actors/environment/sheet.less b/styles/less/sheets/actors/environment/sheet.less index 74cec028..f86e3d00 100644 --- a/styles/less/sheets/actors/environment/sheet.less +++ b/styles/less/sheets/actors/environment/sheet.less @@ -5,6 +5,10 @@ .appTheme({ &.environment { background-image: url('../assets/parchments/dh-parchment-dark.png'); + + .attribution-header-label { + background-image: url('../assets/parchments/dh-parchment-dark.png'); + } } }, { &.environment { @@ -18,5 +22,11 @@ overflow-y: auto; scrollbar-width: thin; scrollbar-color: light-dark(@dark-blue, @golden) transparent; + + &.active { + overflow: hidden; + display: flex; + flex-direction: column; + } } } diff --git a/styles/less/sheets/index.less b/styles/less/sheets/index.less index a8f36a63..1ffb92fe 100644 --- a/styles/less/sheets/index.less +++ b/styles/less/sheets/index.less @@ -26,3 +26,5 @@ @import './items/class.less'; @import './items/domain-card.less'; @import './items/feature.less'; +@import './items/heritage.less'; +@import './items/item-sheet-shared.less'; diff --git a/styles/less/sheets/items/heritage.less b/styles/less/sheets/items/heritage.less new file mode 100644 index 00000000..1342f5ee --- /dev/null +++ b/styles/less/sheets/items/heritage.less @@ -0,0 +1,12 @@ +.application.sheet.daggerheart.dh-style { + &.ancestry, + &.community { + .item-card-header { + .item-info { + .item-description { + gap: 0; + } + } + } + } +} diff --git a/styles/less/sheets/items/item-sheet-shared.less b/styles/less/sheets/items/item-sheet-shared.less new file mode 100644 index 00000000..d0a8cc48 --- /dev/null +++ b/styles/less/sheets/items/item-sheet-shared.less @@ -0,0 +1,13 @@ +.application.sheet.daggerheart.dh-style.item { + &.minimized { + .attribution-header-label { + display: none; + } + } + + .attribution-header-label { + font-style: italic; + font-family: @font-body; + color: light-dark(@chat-blue-bg, @beige-50); + } +} diff --git a/templates/dialogs/attribution.hbs b/templates/dialogs/attribution.hbs new file mode 100644 index 00000000..20f00fb8 --- /dev/null +++ b/templates/dialogs/attribution.hbs @@ -0,0 +1,26 @@ +
+

{{item.name}}

+ +
+
+ + +
+
+
+
+ + +
+
+
+
+ + +
+
+ +
+ +
+
\ No newline at end of file diff --git a/templates/settings/appearance-settings.hbs b/templates/settings/appearance-settings.hbs index cd0fab3e..aa094d69 100644 --- a/templates/settings/appearance-settings.hbs +++ b/templates/settings/appearance-settings.hbs @@ -3,6 +3,8 @@

{{localize 'DAGGERHEART.SETTINGS.Menu.appearance.name'}}

+ {{formGroup settingFields.schema.fields.hideAttribution value=settingFields._source.hideAttribution localize=true}} +
{{localize 'DAGGERHEART.GENERAL.fear'}} {{formGroup settingFields.schema.fields.displayFear value=settingFields._source.displayFear localize=true}} diff --git a/templates/sheets/actors/adversary/notes.hbs b/templates/sheets/actors/adversary/notes.hbs index a2378516..a5c3f706 100644 --- a/templates/sheets/actors/adversary/notes.hbs +++ b/templates/sheets/actors/adversary/notes.hbs @@ -7,4 +7,8 @@ {{localize tabs.notes.label}} {{formInput notes.field value=notes.value enriched=notes.enriched toggled=true}}
+ + {{#if (and showAttribution document.system.attribution.artist)}} + + {{/if}} \ No newline at end of file diff --git a/templates/sheets/actors/environment/header.hbs b/templates/sheets/actors/environment/header.hbs index feecf9e9..b7eab3db 100644 --- a/templates/sheets/actors/environment/header.hbs +++ b/templates/sheets/actors/environment/header.hbs @@ -3,20 +3,25 @@

-
-
- - {{localize (concat 'DAGGERHEART.GENERAL.Tiers.' source.system.tier)}} - -
- {{#if source.system.type}} +
+
- {{localize (concat 'DAGGERHEART.CONFIG.EnvironmentType.' source.system.type '.label')}} + {{localize (concat 'DAGGERHEART.GENERAL.Tiers.' source.system.tier)}}
+ {{#if source.system.type}} +
+ + {{localize (concat 'DAGGERHEART.CONFIG.EnvironmentType.' source.system.type '.label')}} + +
+ {{/if}} +
+ {{#if (and showAttribution document.system.attributionLabel)}} + {{/if}} -
+
diff --git a/templates/sheets/actors/environment/notes.hbs b/templates/sheets/actors/environment/notes.hbs index 663a484a..4f6b131e 100644 --- a/templates/sheets/actors/environment/notes.hbs +++ b/templates/sheets/actors/environment/notes.hbs @@ -7,4 +7,8 @@ {{localize tabs.notes.label}} {{formInput notes.field value=notes.value enriched=notes.value toggled=true}} + + {{#if (and showAttribution document.system.attribution.artist)}} + + {{/if}} \ No newline at end of file diff --git a/templates/sheets/global/tabs/tab-description.hbs b/templates/sheets/global/tabs/tab-description.hbs index 69f62ade..6d0669e0 100755 --- a/templates/sheets/global/tabs/tab-description.hbs +++ b/templates/sheets/global/tabs/tab-description.hbs @@ -7,4 +7,8 @@ {{localize "DAGGERHEART.GENERAL.description"}} {{formInput systemFields.description value=document.system.description enriched=enrichedDescription toggled=true}} + + {{#if (and showAttribution document.system.attribution.artist)}} + + {{/if}} \ No newline at end of file diff --git a/templates/sheets/items/ancestry/header.hbs b/templates/sheets/items/ancestry/header.hbs index 00f863f1..60eaa363 100644 --- a/templates/sheets/items/ancestry/header.hbs +++ b/templates/sheets/items/ancestry/header.hbs @@ -4,6 +4,7 @@

{{localize 'TYPES.Item.ancestry'}}

+ {{#if (and showAttribution source.system.attributionLabel)}}
{{source.system.attributionLabel}}
{{/if}}
\ No newline at end of file diff --git a/templates/sheets/items/community/header.hbs b/templates/sheets/items/community/header.hbs index 794a3f12..63267f44 100644 --- a/templates/sheets/items/community/header.hbs +++ b/templates/sheets/items/community/header.hbs @@ -4,6 +4,7 @@

{{localize 'TYPES.Item.community'}}

+ {{#if (and showAttribution source.system.attributionLabel)}}
{{source.system.attributionLabel}}
{{/if}}
\ No newline at end of file diff --git a/templates/sheets/items/domainCard/header.hbs b/templates/sheets/items/domainCard/header.hbs index 7d3b73e2..935dca6f 100644 --- a/templates/sheets/items/domainCard/header.hbs +++ b/templates/sheets/items/domainCard/header.hbs @@ -24,5 +24,6 @@ {{source.system.level}}
+ {{#if (and showAttribution source.system.attributionLabel)}}
{{source.system.attributionLabel}}
{{/if}}
\ No newline at end of file From 5cd5de31aa0ab73227e79276f566eaa9b830deaf Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Mon, 18 Aug 2025 03:52:20 +0200 Subject: [PATCH 012/260] Scrolling Texts are now queued with a 600ms delay (#989) --- module/data/actor/base.mjs | 4 ++-- module/data/item/base.mjs | 4 +++- module/documents/actor.mjs | 42 +++++++++++++++++++++++++++----------- module/helpers/utils.mjs | 18 ++++++++-------- 4 files changed, 43 insertions(+), 25 deletions(-) diff --git a/module/data/actor/base.mjs b/module/data/actor/base.mjs index bdb810dd..2b74bf1c 100644 --- a/module/data/actor/base.mjs +++ b/module/data/actor/base.mjs @@ -1,5 +1,5 @@ import DHBaseActorSettings from '../../applications/sheets/api/actor-setting.mjs'; -import { createScrollText, getScrollTextData } from '../../helpers/utils.mjs'; +import { getScrollTextData } from '../../helpers/utils.mjs'; const resistanceField = (resistanceLabel, immunityLabel, reductionLabel) => new foundry.data.fields.SchemaField({ @@ -148,6 +148,6 @@ export default class BaseDataActor extends foundry.abstract.TypeDataModel { _onUpdate(changes, options, userId) { super._onUpdate(changes, options, userId); - createScrollText(this.parent, options.scrollingTextData); + if (options.scrollingTextData) this.parent.queueScrollText(options.scrollingTextData); } } diff --git a/module/data/item/base.mjs b/module/data/item/base.mjs index 1b257db4..59286a7b 100644 --- a/module/data/item/base.mjs +++ b/module/data/item/base.mjs @@ -221,6 +221,8 @@ export default class BaseDataItem extends foundry.abstract.TypeDataModel { super._onUpdate(changed, options, userId); updateLinkedItemApps(options, this.parent.sheet); - createScrollText(this.parent?.parent, options.scrollingTextData); + + if (this.parent?.parent && options.scrollingTextData) + this.parent.parent.queueScrollText(options.scrollingTextData); } } diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index 8e0b1c88..c4cc2207 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -1,10 +1,13 @@ import { emitAsGM, GMUpdateEvent } from '../systemRegistration/socket.mjs'; import { LevelOptionType } from '../data/levelTier.mjs'; import DHFeature from '../data/item/feature.mjs'; -import { damageKeyToNumber } from '../helpers/utils.mjs'; +import { createScrollText, damageKeyToNumber } from '../helpers/utils.mjs'; import DhCompanionLevelUp from '../applications/levelup/companionLevelup.mjs'; export default class DhpActor extends Actor { + #scrollTextQueue = []; + #scrollTextInterval; + /** * Return the first Actor active owner. */ @@ -27,7 +30,7 @@ export default class DhpActor extends Actor { /** @inheritDoc */ static migrateData(source) { - if(source.system?.attack && !source.system.attack.type) source.system.attack.type = "attack"; + if (source.system?.attack && !source.system.attack.type) source.system.attack.type = 'attack'; return super.migrateData(source); } @@ -572,19 +575,15 @@ export default class DhpActor extends Actor { if (armorSlotResult) { const { modifiedDamage, armorSpent, stressSpent } = armorSlotResult; updates.find(u => u.key === 'hitPoints').value = modifiedDamage; - if(armorSpent) { + if (armorSpent) { const armorUpdate = updates.find(u => u.key === 'armor'); - if(armorUpdate) - armorUpdate.value += armorSpent; - else - updates.push({ value: armorSpent, key: 'armor' }); + if (armorUpdate) armorUpdate.value += armorSpent; + else updates.push({ value: armorSpent, key: 'armor' }); } - if(stressSpent) { + if (stressSpent) { const stressUpdate = updates.find(u => u.key === 'stress'); - if(stressUpdate) - stressUpdate.value += stressSpent; - else - updates.push({ value: stressSpent, key: 'stress' }); + if (stressUpdate) stressUpdate.value += stressSpent; + else updates.push({ value: stressSpent, key: 'stress' }); } } } @@ -754,4 +753,23 @@ export default class DhpActor extends Actor { } } } + + queueScrollText(scrollingTextData) { + this.#scrollTextQueue.push(...scrollingTextData.map(data => () => createScrollText(this, data))); + if (!this.#scrollTextInterval) { + const scrollFunc = this.#scrollTextQueue.pop(); + scrollFunc?.(); + + const intervalFunc = () => { + const scrollFunc = this.#scrollTextQueue.pop(); + scrollFunc?.(); + if (this.#scrollTextQueue.length === 0) { + clearInterval(this.#scrollTextInterval); + this.#scrollTextInterval = null; + } + }; + + this.#scrollTextInterval = setInterval(intervalFunc.bind(this), 600); + } + } } diff --git a/module/helpers/utils.mjs b/module/helpers/utils.mjs index 47b6d904..dbf66ff4 100644 --- a/module/helpers/utils.mjs +++ b/module/helpers/utils.mjs @@ -371,17 +371,15 @@ export function getScrollTextData(resources, resource, key) { return { text, stroke, fill, direction }; } -export function createScrollText(actor, optionsData) { - if (actor && optionsData?.length) { +export function createScrollText(actor, data) { + if (actor) { actor.getActiveTokens().forEach(token => { - optionsData.forEach(data => { - const { text, ...options } = data; - canvas.interface.createScrollingText(token.getCenterPoint(), data.text, { - duration: 2000, - distance: token.h, - jitter: 0, - ...options - }); + const { text, ...options } = data; + canvas.interface.createScrollingText(token.getCenterPoint(), data.text, { + duration: 2000, + distance: token.h, + jitter: 0, + ...options }); }); } From f69e5704e4f47051fd681db81f768e53f5a6fca0 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Mon, 18 Aug 2025 03:59:57 +0200 Subject: [PATCH 013/260] Added a simple ViewMode for a character's levelup progression (#997) --- lang/en.json | 6 +- module/applications/levelup/_module.mjs | 1 + .../applications/levelup/levelupViewMode.mjs | 95 +++++++++++++++++++ .../applications/sheets/actors/character.mjs | 23 ++++- templates/levelup/tabs/viewMode.hbs | 24 +++++ 5 files changed, 143 insertions(+), 6 deletions(-) create mode 100644 module/applications/levelup/levelupViewMode.mjs create mode 100644 templates/levelup/tabs/viewMode.hbs diff --git a/lang/en.json b/lang/en.json index aeb63449..a7a615f5 100755 --- a/lang/en.json +++ b/lang/en.json @@ -193,7 +193,8 @@ "companionLevelup": { "confirmTitle": "Companion Levelup", "confirmText": "Would you like to level up your companion {name} by {levelChange} levels at this time? (You can do it manually later)" - } + }, + "viewLevelups": "View Levelups" }, "Companion": { "FIELDS": { @@ -493,7 +494,8 @@ "pretext": "When you level up, record it on your character sheet, then choose two from the list below or any unmarked from the previous tier.", "posttext": "Take an additional domain card of your level or lower from a domain you have access to." }, - "title": "{actor} Level Up" + "title": "{actor} Level Up", + "viewModeTitle": "{actor} Level Up (View Mode)" }, "MulticlassChoice": { "title": "Multiclassing - {actor}", diff --git a/module/applications/levelup/_module.mjs b/module/applications/levelup/_module.mjs index dd4135b4..24944feb 100644 --- a/module/applications/levelup/_module.mjs +++ b/module/applications/levelup/_module.mjs @@ -1,3 +1,4 @@ export { default as CharacterLevelup } from './characterLevelup.mjs'; export { default as CompanionLevelup } from './companionLevelup.mjs'; export { default as Levelup } from './levelup.mjs'; +export { default as LevelupViewMode } from './levelupViewMode.mjs'; diff --git a/module/applications/levelup/levelupViewMode.mjs b/module/applications/levelup/levelupViewMode.mjs new file mode 100644 index 00000000..b3d7c30f --- /dev/null +++ b/module/applications/levelup/levelupViewMode.mjs @@ -0,0 +1,95 @@ +import { chunkify } from '../../helpers/utils.mjs'; + +const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; + +export default class DhlevelUpViewMode extends HandlebarsApplicationMixin(ApplicationV2) { + constructor(actor) { + super({}); + + this.actor = actor; + } + + get title() { + return game.i18n.format('DAGGERHEART.APPLICATIONS.Levelup.viewModeTitle', { actor: this.actor.name }); + } + + static DEFAULT_OPTIONS = { + classes: ['daggerheart', 'dialog', 'dh-style', 'levelup'], + position: { width: 1000, height: 'auto' }, + window: { + resizable: true, + icon: 'fa-solid fa-arrow-turn-up' + } + }; + + static PARTS = { + main: { template: 'systems/daggerheart/templates/levelup/tabs/viewMode.hbs' } + }; + + async _prepareContext(_options) { + const context = await super._prepareContext(_options); + + const { tiers } = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.LevelTiers); + const tierKeys = Object.keys(tiers); + const selections = Object.keys(this.actor.system.levelData.levelups).reduce( + (acc, key) => { + const level = this.actor.system.levelData.levelups[key]; + Object.keys(level.selections).forEach(optionKey => { + const choice = level.selections[optionKey]; + if (!acc[choice.tier][choice.optionKey]) acc[choice.tier][choice.optionKey] = {}; + acc[choice.tier][choice.optionKey][choice.checkboxNr] = choice; + }); + + return acc; + }, + tierKeys.reduce((acc, key) => { + acc[key] = {}; + return acc; + }, {}) + ); + + context.tiers = tierKeys.map((tierKey, tierIndex) => { + const tier = tiers[tierKey]; + + return { + name: tier.name, + active: true, + groups: Object.keys(tier.options).map(optionKey => { + const option = tier.options[optionKey]; + + const checkboxes = [...Array(option.checkboxSelections).keys()].flatMap(index => { + const checkboxNr = index + 1; + const checkboxData = selections[tierKey]?.[optionKey]?.[checkboxNr]; + const checkbox = { ...option, checkboxNr, tier: tierKey, disabled: true }; + + if (checkboxData) { + checkbox.level = checkboxData.level; + checkbox.selected = true; + } + + return checkbox; + }); + + let label = game.i18n.localize(option.label); + return { + label: label, + checkboxGroups: chunkify(checkboxes, option.minCost, chunkedBoxes => { + const anySelected = chunkedBoxes.some(x => x.selected); + const anyDisabled = chunkedBoxes.some(x => x.disabled); + return { + multi: option.minCost > 1, + checkboxes: chunkedBoxes.map(x => ({ + ...x, + selected: anySelected, + disabled: anyDisabled + })) + }; + }) + }; + }) + }; + }); + + return context; + } +} diff --git a/module/applications/sheets/actors/character.mjs b/module/applications/sheets/actors/character.mjs index 481c745e..78a77406 100644 --- a/module/applications/sheets/actors/character.mjs +++ b/module/applications/sheets/actors/character.mjs @@ -1,7 +1,7 @@ import DHBaseActorSheet from '../api/base-actor.mjs'; import DhpDeathMove from '../../dialogs/deathMove.mjs'; import { abilities } from '../../../config/actorConfig.mjs'; -import DhCharacterlevelUp from '../../levelup/characterLevelup.mjs'; +import { CharacterLevelup, LevelupViewMode } from '../../levelup/_module.mjs'; import DhCharacterCreation from '../../characterCreation/characterCreation.mjs'; import FilterMenu from '../../ux/filter-menu.mjs'; import { getDocFromElement, getDocFromElementSync } from '../../../helpers/utils.mjs'; @@ -23,6 +23,7 @@ export default class CharacterSheet extends DHBaseActorSheet { openPack: CharacterSheet.#openPack, makeDeathMove: CharacterSheet.#makeDeathMove, levelManagement: CharacterSheet.#levelManagement, + viewLevelups: CharacterSheet.#viewLevelups, toggleEquipItem: CharacterSheet.#toggleEquipItem, toggleResourceDice: CharacterSheet.#toggleResourceDice, handleResourceDice: CharacterSheet.#handleResourceDice, @@ -30,7 +31,14 @@ export default class CharacterSheet extends DHBaseActorSheet { tempBrowser: CharacterSheet.#tempBrowser }, window: { - resizable: true + resizable: true, + controls: [ + { + icon: 'fa-solid fa-angles-up', + label: 'DAGGERHEART.ACTORS.Character.viewLevelups', + action: 'viewLevelups' + } + ] }, dragDrop: [ { @@ -585,7 +593,14 @@ export default class CharacterSheet extends DHBaseActorSheet { if (!value || !subclass) return ui.notifications.error(game.i18n.localize('DAGGERHEART.UI.Notifications.missingClassOrSubclass')); - new DhCharacterlevelUp(this.document).render({ force: true }); + new CharacterLevelup(this.document).render({ force: true }); + } + + /** + * Opens the charater level management window in viewMode. + */ + static #viewLevelups() { + new LevelupViewMode(this.document).render({ force: true }); } /** @@ -638,7 +653,7 @@ export default class CharacterSheet extends DHBaseActorSheet { ability: abilityLabel }) }); - + this.consumeResource(result?.costs); } diff --git a/templates/levelup/tabs/viewMode.hbs b/templates/levelup/tabs/viewMode.hbs new file mode 100644 index 00000000..12e7cbcd --- /dev/null +++ b/templates/levelup/tabs/viewMode.hbs @@ -0,0 +1,24 @@ +
+
+ {{#each this.tiers as |tier key|}} +
+ {{tier.name}} + + {{#each tier.groups}} +
+
+ {{#each this.checkboxGroups}} +
+ {{#each this.checkboxes}} + + {{/each}} +
+ {{/each}} +
+ {{this.label}} +
+ {{/each}} +
+ {{/each}} +
+
\ No newline at end of file From bc5b01bdcf1ae8e5d647a210fc4632b2c8b07ee8 Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Sun, 17 Aug 2025 23:39:17 -0400 Subject: [PATCH 014/260] Use more opaque color for sheet background (#974) --- styles/less/global/sheet.less | 12 ++++++++++-- styles/less/utils/colors.less | 1 + 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/styles/less/global/sheet.less b/styles/less/global/sheet.less index 172f0113..08e2668f 100755 --- a/styles/less/global/sheet.less +++ b/styles/less/global/sheet.less @@ -4,12 +4,20 @@ // Theme handling .appTheme({ - background: @dark-blue-60; - backdrop-filter: blur(10px); + background: @dark-blue-90; + backdrop-filter: blur(8px); }, { background: url('../assets/parchments/dh-parchment-light.png') no-repeat center; }); +body.game:is(.performance-low, .noblur) { + .themed.theme-dark .application.daggerheart.sheet.dh-style, + .themed.theme-dark.application.daggerheart.sheet.dh-style, + &.theme-dark .application.daggerheart { + background: @dark-blue; + }; +} + .application.sheet.dh-style { border-radius: 10px; diff --git a/styles/less/utils/colors.less b/styles/less/utils/colors.less index 64edfc6f..dcc7cc5b 100755 --- a/styles/less/utils/colors.less +++ b/styles/less/utils/colors.less @@ -47,6 +47,7 @@ @dark-blue-40: #18162e40; @dark-blue-50: #18162e50; @dark-blue-60: #18162e60; +@dark-blue-90: #18162e90; @semi-transparent-dark-blue: rgba(24, 22, 46, 0.33); @dark: #222; From f19548ef4f0cb8c35a1885a8b0645567bfd2162d Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Sun, 17 Aug 2025 23:40:58 -0400 Subject: [PATCH 015/260] Make sidebar hover more visually stable (#999) --- styles/less/sheets/actors/adversary/sidebar.less | 5 +++-- styles/less/sheets/actors/character/sidebar.less | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/styles/less/sheets/actors/adversary/sidebar.less b/styles/less/sheets/actors/adversary/sidebar.less index 6d194e37..70cd92ed 100644 --- a/styles/less/sheets/actors/adversary/sidebar.less +++ b/styles/less/sheets/actors/adversary/sidebar.less @@ -270,7 +270,7 @@ margin-bottom: 10px; .inventory-item { - padding: 0 10px; + padding-left: 10px; } } @@ -279,10 +279,11 @@ padding-top: 10px; padding-bottom: 20px; mask-image: linear-gradient(0deg, transparent 0%, black 5%, black 95%, transparent 100%); + scrollbar-width: thin; + scrollbar-gutter: stable; &:hover { overflow-y: auto; - scrollbar-width: thin; scrollbar-color: light-dark(@dark-blue, @golden) transparent; } } diff --git a/styles/less/sheets/actors/character/sidebar.less b/styles/less/sheets/actors/character/sidebar.less index e659c9a8..3ff8576d 100644 --- a/styles/less/sheets/actors/character/sidebar.less +++ b/styles/less/sheets/actors/character/sidebar.less @@ -443,7 +443,7 @@ margin-bottom: 10px; .inventory-item { - padding: 0 10px; + padding-left: 10px; } } @@ -452,10 +452,11 @@ padding-top: 10px; padding-bottom: 20px; mask-image: linear-gradient(0deg, transparent 0%, black 5%); + scrollbar-gutter: stable; + scrollbar-width: thin; &:hover { overflow-y: auto; - scrollbar-width: thin; scrollbar-color: light-dark(@dark-blue, @golden) transparent; } } From 4038c44f9a65cc5c1474e45ae656b62192901ee5 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Tue, 19 Aug 2025 13:03:16 +0200 Subject: [PATCH 016/260] [Fix] 987 - Auto Expand Bottom Chat (#1010) * If the last message in the chatlog is updated, scroll to bottom of chatlog * Cleaned up with ui.chat methods --- module/documents/chatMessage.mjs | 47 ++++++++++++++++++++------------ 1 file changed, 30 insertions(+), 17 deletions(-) diff --git a/module/documents/chatMessage.mjs b/module/documents/chatMessage.mjs index e36c1df3..79449bc0 100644 --- a/module/documents/chatMessage.mjs +++ b/module/documents/chatMessage.mjs @@ -43,6 +43,18 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { return super._preDelete(options, user); } + /** @inheritDoc */ + _onUpdate(changes, options, userId) { + super._onUpdate(changes, options, userId); + + const lastMessage = Array.from(game.messages).sort((a, b) => b.timestamp - a.timestamp)[0]; + if (lastMessage.id === this.id && ui.chat.isAtBottom) { + setTimeout(() => { + ui.chat.scrollBottom(); + }, 5); + } + } + enrichChatMessage(html) { const elements = html.querySelectorAll('[data-perm-id]'); elements.forEach(e => { @@ -55,7 +67,7 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { }); if (this.isContentVisible) { - if(this.type === 'dualityRoll') { + if (this.type === 'dualityRoll') { html.classList.add('duality'); switch (this.system.roll?.result?.duality) { case 1: @@ -70,27 +82,28 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { } } - const autoExpandRoll = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance).expandRollMessage, - rollSections = html.querySelectorAll(".roll-part"), - itemDesc = html.querySelector(".domain-card-move"); + const autoExpandRoll = game.settings.get( + CONFIG.DH.id, + CONFIG.DH.SETTINGS.gameSettings.appearance + ).expandRollMessage, + rollSections = html.querySelectorAll('.roll-part'), + itemDesc = html.querySelector('.domain-card-move'); rollSections.forEach(s => { - if(s.classList.contains("roll-section")) { + if (s.classList.contains('roll-section')) { const toExpand = s.querySelector('[data-action="expandRoll"]'); - toExpand.classList.toggle("expanded", autoExpandRoll.roll); - } else if(s.classList.contains("damage-section")) - s.classList.toggle("expanded", autoExpandRoll.damage); - else if(s.classList.contains("target-section")) - s.classList.toggle("expanded", autoExpandRoll.target); + toExpand.classList.toggle('expanded', autoExpandRoll.roll); + } else if (s.classList.contains('damage-section')) + s.classList.toggle('expanded', autoExpandRoll.damage); + else if (s.classList.contains('target-section')) s.classList.toggle('expanded', autoExpandRoll.target); }); - if(itemDesc && autoExpandRoll.desc) - itemDesc.setAttribute("open", ""); + if (itemDesc && autoExpandRoll.desc) itemDesc.setAttribute('open', ''); } - - if(!game.user.isGM) { - const applyButtons = html.querySelector(".apply-buttons"); + + if (!game.user.isGM) { + const applyButtons = html.querySelector('.apply-buttons'); applyButtons?.remove(); - if(!this.isAuthor && !this.speakerActor?.isOwner) { - const buttons = html.querySelectorAll(".ability-card-footer > .ability-use-button"); + if (!this.isAuthor && !this.speakerActor?.isOwner) { + const buttons = html.querySelectorAll('.ability-card-footer > .ability-use-button'); buttons.forEach(b => b.remove()); } } From 85111648aa1396b4f81a953dcc15c08d2088b9c3 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Wed, 20 Aug 2025 02:42:26 +0200 Subject: [PATCH 017/260] Fixed Spear/HallowedAxe and type in SRD (#1023) --- ...eapon_Advanced_Spear_pK6dsNABKKp1CIGN.json | 41 +------------------ .../weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json | 6 +-- ...eapon_Improved_Spear_j5Pt1thLfcvopBij.json | 41 +------------------ ...apon_Legendary_Spear_4e5pWxi2qohuGsWh.json | 41 +------------------ .../weapon_Spear_TF85tKJetUjLwh54.json | 41 +------------------ ...rnal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json | 2 +- 6 files changed, 8 insertions(+), 164 deletions(-) diff --git a/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json b/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json index a1a7ad44..af308099 100644 --- a/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json +++ b/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json @@ -99,46 +99,7 @@ "artist": "" } }, - "effects": [ - { - "name": "Cumbersome", - "description": "-1 to Finesse", - "img": "icons/commodities/metal/mail-plate-steel.webp", - "changes": [ - { - "key": "system.traits.finesse.value", - "mode": 2, - "value": "-1" - } - ], - "_id": "hl0S2LrBY5Mg69q6", - "type": "base", - "system": {}, - "disabled": false, - "duration": { - "startTime": null, - "combat": null - }, - "origin": null, - "tint": "#ffffff", - "transfer": true, - "statuses": [], - "sort": 0, - "flags": {}, - "_stats": { - "compendiumSource": null, - "duplicateSource": null, - "exportSource": null, - "coreVersion": "13.346", - "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753831987001, - "modifiedTime": 1753831987001, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" - }, - "_key": "!items.effects!pK6dsNABKKp1CIGN.hl0S2LrBY5Mg69q6" - } - ], + "effects": [], "sort": 0, "ownership": { "default": 0, diff --git a/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json b/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json index 11e0cc87..1a6d341f 100644 --- a/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json +++ b/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json @@ -25,7 +25,7 @@ "amount": 1 }, "roll": { - "trait": "agility", + "trait": "strength", "type": "attack", "difficulty": null, "bonus": null, @@ -112,9 +112,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.0.6", "createdTime": 1753828229603, - "modifiedTime": 1755430661659, + "modifiedTime": 1755633052433, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Vayg7CnRTFBrunjM" diff --git a/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json b/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json index a398b785..32c080ff 100644 --- a/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json +++ b/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json @@ -99,46 +99,7 @@ "artist": "" } }, - "effects": [ - { - "name": "Cumbersome", - "description": "-1 to Finesse", - "img": "icons/commodities/metal/mail-plate-steel.webp", - "changes": [ - { - "key": "system.traits.finesse.value", - "mode": 2, - "value": "-1" - } - ], - "_id": "8twXPJELZpvFWA5K", - "type": "base", - "system": {}, - "disabled": false, - "duration": { - "startTime": null, - "combat": null - }, - "origin": null, - "tint": "#ffffff", - "transfer": true, - "statuses": [], - "sort": 0, - "flags": {}, - "_stats": { - "compendiumSource": null, - "duplicateSource": null, - "exportSource": null, - "coreVersion": "13.346", - "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753829466016, - "modifiedTime": 1753829466016, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" - }, - "_key": "!items.effects!j5Pt1thLfcvopBij.8twXPJELZpvFWA5K" - } - ], + "effects": [], "sort": 0, "ownership": { "default": 0, diff --git a/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json b/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json index c7fa407a..1f76d2aa 100644 --- a/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json +++ b/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json @@ -99,46 +99,7 @@ "artist": "" } }, - "effects": [ - { - "name": "Cumbersome", - "description": "-1 to Finesse", - "img": "icons/commodities/metal/mail-plate-steel.webp", - "changes": [ - { - "key": "system.traits.finesse.value", - "mode": 2, - "value": "-1" - } - ], - "_id": "f44KWDgCQeKYfccr", - "type": "base", - "system": {}, - "disabled": false, - "duration": { - "startTime": null, - "combat": null - }, - "origin": null, - "tint": "#ffffff", - "transfer": true, - "statuses": [], - "sort": 0, - "flags": {}, - "_stats": { - "compendiumSource": null, - "duplicateSource": null, - "exportSource": null, - "coreVersion": "13.346", - "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753834816288, - "modifiedTime": 1753834816288, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" - }, - "_key": "!items.effects!4e5pWxi2qohuGsWh.f44KWDgCQeKYfccr" - } - ], + "effects": [], "sort": 0, "ownership": { "default": 0, diff --git a/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json b/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json index 77bd4f42..2432a75b 100644 --- a/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json +++ b/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json @@ -99,46 +99,7 @@ "artist": "" } }, - "effects": [ - { - "name": "Cumbersome", - "description": "-1 to Finesse", - "img": "icons/commodities/metal/mail-plate-steel.webp", - "changes": [ - { - "key": "system.traits.finesse.value", - "mode": 2, - "value": "-1" - } - ], - "_id": "Z5MnVI8EOOgzRdXC", - "type": "base", - "system": {}, - "disabled": false, - "duration": { - "startTime": null, - "combat": null - }, - "origin": null, - "tint": "#ffffff", - "transfer": true, - "statuses": [], - "sort": 0, - "flags": {}, - "_stats": { - "compendiumSource": null, - "duplicateSource": null, - "exportSource": null, - "coreVersion": "13.346", - "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753828072355, - "modifiedTime": 1753828072355, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" - }, - "_key": "!items.effects!TF85tKJetUjLwh54.Z5MnVI8EOOgzRdXC" - } - ], + "effects": [], "sort": 0, "ownership": { "default": 0, diff --git a/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json b/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json index ece610c0..a1bc9f84 100644 --- a/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json +++ b/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json @@ -125,7 +125,7 @@ "image": {}, "text": { "format": 1, - "content": "

FLOW OF THE GAME

Daggerheart is a conversation. The GM describes fictional scenarios involving the PCs, and the players take turns describing how their characters react. The goal of every person at the table is to build upon everyone else’s ideas and collaboratively tell a satisfying story. The system facilitates this collaborative process by providing structure to the conversation and mechanics for resolving moments of tension where fate or fortune determine the outcome of events.

PLAYER PRINCIPLES & BEST PRACTICES

To get the most out of Daggerheart, we recommend players keep the following principles and practices in mind throughout each session:

PRINCIPLES

  • Be a fan of your character and their journey.

  • Spotlight your friends.

  • Address the characters and address the players.

  • Build the world together.

  • Play to find out what happens.

  • Hold on gently.

BEST PRACTICES

  • Embrace danger.

  • Use your resources.

  • Tell the story.

  • Discover your character.

For more information, see the Daggerheart Core Rulebook, pages 9 and 108.

CORE GAMEPLAY LOOP

The core gameplay loop is the procedure that drives every scene, both in and out of combat:

STEP 1: SET THE SCENE

The GM describes a scenario, establishing the PCs’ surroundings and any dangers, NPCs, or other important details the characters would notice.

STEP 2: ASK AND ANSWER QUESTIONS

The players ask clarifying questions to explore the scene more deeply and gather information that could inform their characters’ actions. The GM responds to these questions by giving the players information their characters could easily obtain, or by asking questions of their own to the players. The players also respond to any questions the GM poses to them.

In this way, the table builds out the fiction collaboratively.

STEP 3: BUILD ON THE FICTION

As the scene develops, the players find opportunities to take action—problems to solve, obstacles to overcome, mysteries to investigate, and so on. The players describe how their characters proceed; if their proposed actions carry no chance of failure (or if failure would be boring), they automatically succeed. But if the outcome of their action is unknown, the GM calls for an action roll. Either way, the table works the outcome into the story and moves the fiction forward, narrating how the PC’s actions have changed things.

STEP 4: GO BACK TO STEP 1

The process repeats from the beginning, with the GM relaying any updated details or material changes to the players. This process continues until the end of the scene is triggered by a mechanic or arrives organically.

THE SPORLIGHT

The spotlight is a symbol that represents the table’s attention—and therefore the immediate focus of both the narrative and the game mechanics. Any time a character or player becomes the focus of a scene, they “are in the spotlight” or “have the spotlight.”

The spotlight moves around the table organically as scenes unfold unless a mechanical trigger determines where the spotlight goes next. For example, when a player fails an action roll, the mechanics prompt the GM to seize the spotlight and make a GM move.

TURN ORDER & ACTION ECONOMY

Daggerheart’s turns don’t follow a traditional, rigid format:
there is no explicit initiative mechanic and characters don’t have a set number of actions they can take or things they can do before the spotlight passes to someone else. A player with the spotlight describes what their character does and the spotlight simply swings to whoever:

  1. the fiction would naturally turn it toward

  2. hasn’t had the focus in a while, or

  3. a triggered mechanic puts it on


Optional: Spotlight Tracker Tool

If your group prefers a more traditional action economy, you can use tokens to track how many times a player has had the spotlight: At the start of a session or scene, each player adds a certain number of tokens (we recommend 3) to their character sheet and removes a token each time they take an action. If the spotlight would swing to someone without any tokens, it swings to someone else instead. Once every player has used all their available tokens, players refill their character sheet with the same number of tokens as before, then continue playing.


MAKING MOVES & TAKING ACTION

Any time a character does something to advance the story, such as speaking with another character, interacting with the environment, making an attack, casting a spell, or using a class feature, they are making a move.

ACTION ROLLS

Any move where success would be trivial or failure would be boring automatically succeeds, but any move that’s difficult to accomplish or risky to attempt triggers an action roll.

OVERVIEW

All action rolls require a pair of d12s called Duality Dice.

These are two visually distinct twelve-sided dice, with one die representing Hope and the other representing Fear.

To make an action roll, you roll the Duality Dice, sum the results, apply any relevant modifiers, and compare the total to a Difficulty number to determine the outcome:

  • Success with Hope: If your total meets or beats the difficulty AND your Hope Die shows a higher result than your Fear Die, you rolled a “Success with Hope.” You succeed and gain a Hope.

  • Success with Fear: If your total meets or beats the Difficulty AND your Fear Die shows a higher result than your Hope Die, you rolled a “Success with Fear.” You succeed with a cost or complication, but the GM gains a Fear.

  • Failure with Hope: If your total is less than the Difficulty AND your Hope Die shows a higher result than your Fear Die, you rolled a “Failure with Hope.” You fail with a minor consequence and gain a Hope, then the spotlight swings to the GM.

  • Failure with Fear: If your total is less than the Difficulty AND your Fear Die shows a higher result than your Hope Die, you rolled a “Failure with Fear.” You fail with a major consequence and the GM gains a Fear, then the spotlight swings to the GM.

  • Critical Success: If the Duality Dice show matching results, you rolled a “Critical Success” (“Crit”). You automatically succeed with a bonus, gain a Hope, and clear a Stress. If this was an attack roll, you deal critical damage.

Note: A Critical Success counts as a roll “with Hope.”

After resolving the action roll, the table works together to weave the outcome into the narrative and play continues.

FAILING FORWARD

In Daggerheart, every time you roll the dice, the scene changes in some way. There is no such thing as a roll where “nothing happens,” because the fiction constantly evolves based on the successes and failures of the characters.

PROCEDURE

The following steps describe in more detail the procedure that all action rolls utilize:

STEP 1: PICK AN APPROPRIATE TRAIT

Some actions and effects specify in their description which trait applies to the roll; otherwise, the GM tells the acting player which character trait best applies to the action being attempted. If more than one trait could apply to the roll, the GM chooses or lets the acting player decide.

STEP 2: DETERMINE THE DIFFICULTY

Some actions and features say in their description what the Difficulty is. Otherwise, the GM determines the Difficulty based on the scenario. The GM can choose whether to share the Difficulty with the table. In either case, the GM should communicate the potential consequences of failure to the acting player.

STEP 3: APPLY EXTRA DICE AND MODIFIERS

The acting player decides whether to Utilize an Experience or activate other effects, then, if applicable, adds the appropriate tokens and dice (such as advantage or Rally dice) to their dice pool.


Note: Unless an action, ability, or feature specifically allows for it, a player must declare the use of any Experiences, extra dice, or other modifiers before they roll.


STEP 4: ROLL THE DICE

The acting player rolls their entire dice pool and announces the results in the format of “[total result] with [Hope/Fear]”— or “Critical Success!” in the case of matching Duality Dice.


Example: A player is making an action roll with a +1 in the relevant trait and no other modifiers; they roll the Duality Dice and get a result of 5 on their Hope Die and 7 on their Fear Die, then announce “I rolled a 13 with Fear!”


STEP 5: RESOLVE THE OUTCOME

The active player and the GM work together, along with the suggestions and support of the rest of the table, to resolve the outcome of the action.

GM MOVES AND ADVERSARY ACTIONS

GMs also make moves. They should consider making a move when a player does one of the following things:

  • Rolls with Fear on an action roll.

  • Fails an action roll.

  • Does something that would have consequences.

  • Gives them a golden opportunity.

  • Looks to them for what happens next.

After the GM turn is done, the spotlight goes back to the PCs.

Many adversaries and environments have Fear Features, especially powerful or consequential moves that the GM must spend Fear to activate.


Note: This Fear is in addition to any Fear the GM has previously spent to seize the spotlight or activate another action or ability.


ADVERSARY ACTIONS

When play passes to the GM, the GM can make a GM move to spotlight an adversary. A spotlighted adversary can:

  • Move within Close range and make a standard attack

  • Move within Close range and use an adversary action

  • Clear a condition

  • Sprint within Far or Very Far range on the battlefield

  • Do anything else the fiction demands or the GM deems appropriate

The GM can spend additional Fear to spotlight additional adversaries. Once the GM has finished, the spotlight swings back to the PCs.

SPECIAL ROLLS

Some rolls have unique specifications or otherwise modify the action roll procedure: trait rolls, Spellcast Rolls, attack rolls, and damage rolls. Unless otherwise noted, you can apply any bonus, modifier, or effect to a special roll as if it were a standard action roll.

TRAIT ROLLS

An action roll that specifies which character trait applies to it is called a trait roll. In the text of a feature or effect, a trait roll is referenced with the format “[Trait] Roll (Difficulty)” (e.g., “Agility Roll (12)”). If the text of an effect doesn’t specify a trait roll’s Difficulty, the GM sets the Difficulty based on the circumstances.

Features and effects that affect a trait roll also affect any action roll that uses the same trait, including attack rolls, Spellcast rolls, and standard action rolls.


Example: The katari’s ancestry feature “Feline Instincts,” which allows the katari to reroll an Agility Roll, can also be used on a standard action roll using Agility to traverse dangerous terrain or on an attack roll made with a weapon that uses Agility.


SPELLCAST ROLLS

Spellcast Rolls are trait rolls that require you to use your Spellcast trait. Your Spellcast trait, if you have one, is determined by your subclass.

Spellcast Rolls are only made when a character uses a feature that requires one. A successful Spellcast Roll activates the effect as described by the feature.


Notes: A Spellcast Roll that can damage a target is also considered an attack roll.

When you cast a spell, the text tells you when the effect ends. The GM can spend a Fear to end a temporary effect. If your spell doesn’t specify when it ends, it ends when you choose or at a natural moment of the story. You can choose to end your spell early.

You can cast and maintain the effects of more than one spell at the same time.


REACTION ROLLS

A reaction roll is made in response to an attack or a hazard, representing a character’s attempt to avoid or withstand an imminent effect.

Reaction rolls work like action rolls, except they don’t generate Hope or Fear, don’t trigger additional GM moves, and other characters can’t aid you with Help an Ally.

If you critically succeed on a reaction roll, you don’t clear a Stress or gain a Hope, but you do ignore any effects that would have impacted you on a success, such as taking damage or marking Stress.

GROUP ACTION ROLLS

When multiple PCs take action together, the party chooses one PC to lead the action. Each other player then describes how their character collaborates on the task. The leader makes an action roll as usual, while the other players make reaction rolls using whichever traits they and the GM decide fit best.

The lead character gains a +1 bonus to their lead action roll for each of these reaction rolls that succeeded and a −1 penalty for each these reaction rolls that failed.

TAG TEAM ROLLS

Each player can, once per session, initiate a Tag Team Roll between their character and another PC by spending 3 Hope. The players work with one another to describe how they combine their actions in a unique and exciting way. Both players make separate action rolls; before resolving the roll’s outcome, choose one of the rolls to apply to both actions. On a roll with Hope, all PCs involved gain a Hope. On a roll with Fear, the GM gains a Fear token for each PC involved.

On a successful Tag Team attack roll, both players roll damage and add the totals together to determine the damage dealt, which is then treated as if it came from a single source. If the attacks deal different types of damage, the players choose which type to deal.


Notes:

A Tag Team Roll counts as a single action roll for the purposes of any countdowns or features that track action rolls.

Though each player may only initiate one Tag Team Roll per session, one PC can be involved in multiple Tag Team Rolls.


ADVANTAGE & DISADVANTAGE

Some features and effects let you roll with advantage or disadvantage on an action or reaction roll:

  • Advantage represents an opportunity that you seize to increase your chances of success. When you roll with advantage, you roll a d6 advantage die with your dice pool and add its result to your total.

  • Disadvantage represents an additional difficulty, hardship, or challenge you face when attempting an action. When you roll with disadvantage, you roll a d6 disadvantage die with your dice pool and subtract its result from your total.

Advantage or disadvantage can be granted or imposed by mechanical triggers or at the GM’s discretion. When a PC aids you with Help an Ally, they roll their own advantage die and you add it to your total.

Advantage and disadvantage dice cancel each out, one-for-one, when they would be added to the same dice pool, so you’ll never roll both at the same time. If you have advantage or disadvantage from other sources that don’t affect your own dice pool, such as another player’s Help an Ally move, their effects stack with your rolled results.

HOPE & FEAR

Hope and Fear are metacurrencies representing the cosmic forces that shape the events of your table’s story. Hope powers PC abilities and features, while Fear powers the abilities of the GM and the adversaries and environments they control.

HOPE

Every PC starts with 2 Hope at character creation and gains more throughout play. A PC can have a maximum of 6 Hope at one time, and Hope carries over between sessions.

Players can spend Hope to:

  • Help an Ally

    When you Help an Ally who is making an action roll, describe how you do so and roll an advantage die. Multiple players can spend Hope to help the same acting player, but that player only adds the highest result to their final total.

  • Utilize an Experience

    When you Utilize an Experience on a relevant roll, add its modifier to the result. You can spend multiple Hope to utilize multiple Experiences.

  • Initiate a Tag Team Roll

    Spend 3 Hope to initiate a Tag Team roll, combining the actions of two PCs into one impressive act of synergy. When you make a Tag Team roll, both players roll their action rolls and then choose which set of results to apply to the outcome.

  • Activate a Hope Feature

    A Hope Feature is any effect that allows (or requires) you to spend a specified amount of Hope to activate it. Class Hope features are class-specific features, detailed on your character sheet, that cost 3 Hope to activate


Note: When using a Hope Feature, if you rolled with Hope for that action, the Hope you gain from that roll can be spent on that feature (or toward it, if it requires spending multiple Hope).


FEAR

The GM gains Fear whenever a player rolls with Fear and can spend Fear at any time to make or enhance a GM move or to use a Fear Feature. The GM can have up to 12 Fear at one time. Fear carries over between sessions.

COMBAT

Though Daggerheart relies on the same flow of collaborative storytelling in and out of combat, physical conflicts rely more heavily on several key mechanics related to attacking, maneuvering, and taking damage.

EVASION

Evasion represents a character’s ability to avoid attacks and other unwanted effects. Any roll made against a PC has a Difficulty equal to the target’s Evasion. A PC’s base Evasion is determined by their class, but can be modified by domain cards, equipment, conditions, and other effects.


Note: attacks rolled against adversaries use the target’s Difficulty instead of Evasion.


HIT POINTS & DAMAGE THRESHOLDS

Hit Points (HP) represent a character’s ability to withstand physical injury. When a character takes damage, they mark 1 to 3 HP, based on their damage thresholds:

  • If the final damage is at or above the character’s Severe damage threshold, they mark 3 HP.

  • If the final damage is at or above the character’s Major damage threshold but below their Severe damage threshold, they mark 2 HP.

  • If the final damage is below the character’s Major damage threshold, they mark 1 HP.

  • If incoming damage is ever reduced to 0 or less, no HP is marked.

A PC’s damage thresholds are calculated by adding their level to the listed damage thresholds of their equipped armor. A PC’s starting HP is based on their class, but they can gain additional Hit Points through advancements, features, and other effects.

An adversary’s Damage Thresholds and HP are listed in their stat blocks.

When a character marks their last Hit Point, they fall. If a PC falls, they make a death move.

Characters can clear Hit Points by taking downtime moves (see: Downtime) or by activating relevant special abilities or effects.


Optional Rule: Massive Damage

If a character ever takes damage equal to twice their Severe threshold, they mark 4 HP instead of 3.


STRESS

Stress represents how much mental, physical, and emotional strain a character can endure. Some special abilities or effects require the character activating them to mark Stress, and the GM can require a PC to mark Stress as a GM move or to represent the cost, complication, or consequence of an action roll.

When a character marks their last Stress, they become Vulnerable (see: Conditions) until they clear at least 1 Stress.

When a character must mark 1 or more Stress but can’t, they mark 1 HP instead. A character can’t use a move that requires them to mark Stress if all of their Stress is marked.

PCs can clear Stress by making downtime moves (see: Downtime). A PC’s maximum Stress is determined by their class, but they can increase it through advancements, abilities, and other effects.

ATTACKING

ATTACK ROLLS

An attack roll is an action roll intended to inflict harm. The trait that applies to an attack roll is specified by the weapon or spell being used. Unarmed attack rolls use either Strength or Finesse (GM’s choice). An attack roll’s Difficulty, unless otherwise noted, is equal to the Difficulty score of its target.

DAMAGE ROLLS

On a successful attack, roll damage. Damage is calculated from the damage roll listed in the attack’s description with the format “xdy+[modifier]” (e.g., for a spell that inflicts “1d8+2” damage, you roll an eight-sided and add 2 to the result; the damage dealt is equal to the total).

Any time an effect says to deal damage using your Spellcast trait, you roll a number of dice equal to your Spellcast trait.


Note: If your Spellcast trait is +0 or lower, you don’t roll anything.


For weapons, the number of damage dice you roll is equal to your Proficiency. Note that your Proficiency multiplies the number of dice you roll, but doesn’t affect the modifier. For example, a PC with Proficiency 2 and wielding a weapon with adamage rating of “d8+2” deals damage equal to “2d8+2” on a successful attack.

Successful unarmed attacks inflict [Proficiency]d4 damage.

CRITICAL DAMAGE

When you get a critical success (i.e., you roll matching values on your Duality Dice) on an attack roll, you deal extra damage.

Make the damage roll as usual, but add the maximum possible result of the damage dice to the final total. For instance, if an attack would normally deal 2d8+1 damage, a critical success would deal 2d8+1+16.

DAMAGE TYPES

There are two damage types: physical damage (phy) and magic damage (mag). Unless stated otherwise, mundane weapons and unarmed attacks deal physical damage, and spells deal magic damage.

RESISTANCE, IMMUNITY, AND DIRECT DAMAGE

If a target has resistance to a damage type, then they reduce incoming damage of that type by half before comparing it to their Hit Point Thresholds. If the target has additional ways of reducing incoming damage, such as marking Armor Slots, they apply the resistance effect first. The effects of multiple resistances to the same damage type do not stack.

If a target has immunity to a damage type, they ignore incoming damage of that type.

If an attack deals both physical and magic damage, a character can only benefit from resistance or immunity if they are resistant or immune to both damage types.

Direct damage is damage that can’t be reduced by marking Armor Slots.

MULTI-TARGET ATTACK ROLLS

If a spell or ability allows you to target multiple adversaries, make one attack roll and one damage roll, then apply the results to each target individually.

MULTIPLE DAMAGE SOURCES

Damage dealt simultaneously from multiple sources is always totaled before it’s compared to its target’s damage thresholds.


For example, if a PC with orc ancestry makes a successful attack against a target in Melee range and decides to spend a Hope to use their “Tusks” feature (which gives them an extra 1d6 damage on a damage roll), they would roll their normal weapon damage and add a d6 to the result, then deal that total damage to the adversary.


MAPS, RANGE, AND MOVEMENT

You can play Daggerheart using “theater of the mind” or maps and miniatures. The conversions below from abstract ranges to physical measurements assume 1 inch of map represents about 5 feet of fictional space.

Daggerheart uses the following ranges to translate fictional positioning into relative distance for the purposes of targeting, movement, and other game mechanics:

  • Melee: Close enough to touch, up to a few feet away.

  • Very Close: Close enough to see fine details, about 5–10 feet away. While in danger, a character can move, as part of their action, from Very Close range into Melee range. On a map: anything within the shortest length of a game card (2-3 inches).

  • Close: Close enough to see prominent details, about 10–30 feet away. While in danger, a character can move, as part of their action, from Close range into Melee range. On a map: anything within the length of a pencil (5-6 inches).

  • Far: Close enough to see very little detail, about 30–100 feet away. While in danger, a character must make an Agility Roll to safely move from Far range into Melee range. On a map: anything within the length of the long edge of a piece of copy paper (11–12 inches).

  • Very Far: Too far to make out any details, about 100–300 feet away. While in danger, a character must make an Agility Roll to safely move from Very Far range into Melee range. On a map: anything beyond Far range, but still within the bounds of the conflict or scene.

  • Out of Range: Anything beyond a character’s Very Far range is Out of Range and usually can’t be targeted.

Range is measured from the source of an effect, such as the attacker or spellcaster, to the target or object of an effect.

A weapon, spell, ability, item, or other effect’s stated range is a maximum range; unless otherwise noted, it can be used at closer distances.


Optional Rule: Defined Ranges

If your table would rather operate with more precise range rules, you can use a 1-inch grid battle map during combat.

If you do, use the following guidelines for play:

  • Melee: 1 square

  • Very Close: 3 squares

  • Close: 6 squares

  • Far: 12 squares

  • Very Far: 13+ squares

  • Out of Range: Off the battlemap


MOVEMENT UNDER PRESSURE

When you’re under pressure or in danger and make an action roll, you can move to a location within Close range as part of that action. If you’re not already making an action roll, or if you want to move farther than your Close range, you need to succeed on an Agility Roll to safely reposition yourself.

An adversary can move within Close range for free as part of an action, or within Very Far range as a separate action.

AREA OF EFFECT

Unless stated otherwise, all the targets of a group effect must be within Very Close range of a single origin point within your effect’s range.

LINE OF SIGHT & COVER

Unless stated otherwise, a ranged attacker must have line of sight to their intended target to make an attack roll. If a partial obstruction lies between the attacker and target, the target has cover. Attacks made through cover are rolled with disadvantage. If the obstruction is total, there is no line of sight.

CONDITIONS

Conditions are effects that grant specific benefits or drawbacks to the target they are attached to.

STANDARD CONDITIONS

Daggerheart has three standard conditions:

HIDDEN

While you’re out of sight from all enemies and they don’t otherwise know your location, you gain the Hidden condition. Any rolls against a Hidden creature have disadvantage. After an adversary moves to where they would see you, you move into their line of sight, or you make an attack, you are no longer Hidden.

RESTRAINED

Restrained characters can’t move, but you can still take actions from their current position.

VULNERABLE

When a creature is Vulnerable, all rolls targeting them have advantage.

Some features can apply special or unique conditions, which work as described in the feature text.

Unless otherwise noted, the same condition can’t be applied more than once to the same target.

TEMPORARY TAGS & SPECIAL CONDITIONS

The temporary tag denotes a condition or effect that the affected creature can clear by making a move against it. When an affected PC makes a move to clear a temporary condition or effect, it normally requires a successful action roll using an appropriate trait. When an affected adversary makes a move to clear a temporary condition or effect, the GM puts the spotlight on the adversary and describes how they do it; this doesn’t require a roll but it does use up that adversary’s spotlight.

Special conditions are only cleared when specific requirements are met, such as completing a certain action or using a particular item. The requirements for clearing these conditions are stated in the text of the effect that applies the condition.

DOWNTIME

Between conflicts, the party can take a rest to recover expended resources and deepen their bonds. During a rest, each PC can make up to two downtime moves.

When the party rests, they must choose between a short rest and a long rest. If a party takes three short rests in a row, their next rest must be a long rest.

If a short rest is interrupted, such as by an adversary's attack, the characters don’t gain its benefits. If a long rest is interrupted, the characters only gain the benefits of a short rest.

A short rest lasts enough time for the party to catch its breath, about an hour in-world. Each player can move domain cards between their loadout and vault for free, then choose twice from the following list of downtime moves (players can choose the same move twice):

  • Tend to Wounds: Clear 1d4+Tier Hit Points for yourself or an ally.

  • Clear Stress: Clear 1d4+Tier Stress.

  • Repair Armor: Clear 1d4+Tier Armor Slots from your or an ally’s armor.

  • Prepare: Describe how you prepare yourself for the path ahead, then gain a Hope. If you choose to Prepare with one or more members of your party, you each gain 2 Hope.

At the end of a short rest, any features or effects with a limited number of uses per rest refresh and any features or effects that last until your next rest expire.

A long rest is when the characters make camp and relax or sleep for several in-game hours. Each player can move domain cards between their loadout and vault for free, then choose twice from the following list of downtime moves (players can choose the same move twice):

  • Tend to All Wounds: Clear all Hit Points for yourself or an ally.

  • Clear All Stress: Clear all Stress.

  • Repair All Armor: Clear all Armor Slots from your or an ally’s armor

  • Prepare: Describe how you prepare for the next day’s adventure, then gain a Hope. If you choose to Prepare with one or more members of your party, you each gain 2 Hope.

  • Work on a Project: With GM approval, a PC may pursue a long-term project, such as deciphering an ancient text or crafting a new weapon. The first time they start a new project, assign it a countdown. Each time a PC makes the Work on a Project move, they either advance their project’s countdown automatically or make an action roll to advance it (GM’s choice).

At the end of a long rest, any features or effects with a limited number of uses per rest or per long rest refresh and any features or effects that last until your next rest or until your next long rest expire.

DOWNTIME CONSEQUENCES

On a short rest, the GM gains 1d4 Fear. On a long rest, they gain Fear equal to 1d4 + the number of PCs, and they can advance a long-term countdown of their choice.

DEATH

When a PC marks their last Hit Point, they must make a death move by choosing one of the following options:

  • Blaze of Glory: Your character embraces death and goes out in a blaze of glory. Take one final action. It automatically critically succeeds (with GM approval), and then you cross through the veil of death.

  • Avoid Death: Your character avoids death and faces the consequences. They temporarily drop unconscious, and then you work with the GM to describe how the situation worsens. While unconscious, your character can’t move or act, and they can’t be targeted by an attack. They return to consciousness when an ally clears 1 or more of their marked Hit Points or when the party finishes a long rest. After your character falls unconscious, roll your Hope Die. If its value is equal to or less than your character’s level, they gain a scar: permanently cross out a Hope slot and work with the GM to determine its lasting narrative impact and how, if possible, it can be restored. If you ever cross out your last Hope slot, your character’s journey ends.

  • Risk It All: Roll your Duality Dice. If the Hope Die is higher, your character stays on their feet and clears a number of Hit Points or Stress equal to the value of the Hope Die (you can divide the Hope Die value between Hit Points and Stress however you’d prefer). If the Fear Die is higher, your character crosses through the veil of death. If the Duality Dice show matching results, your character stays up and clears all Hit Points and Stress.

If your character dies, work with the GM before the next session to create a new character at the current level of the rest of the party.

ADDITIONAL RULES

The following rules apply to many aspects of the game.

ROUNDING UP

This game doesn’t use fractions; if you need to round to a whole number, round up unless otherwise specified. When in doubt, resolve any ambiguity in favor of the PCs.

REROLLING DICE

When a feature allows you to reroll a die, you always take the new result unless the feature specifically says otherwise.

INCOMING DAMAGE

Incoming damage means the total damage from a single attack or source, before Armor Slots are marked.

SIMULTANEOUS EFFECTS

If the resolution order of multiple effects is unclear, the person in control of the effects (player or GM) decides what order to resolve them in.

STACKING EFFECTS

Unless stated otherwise, all effects beside conditions and advantage/disadvantage can stack.

ONGOING SPELL EFFECTS

If an effect doesn’t have a listed mechanical expiration, it only ends when decided by the controlling player, the GM, or the demands of the fiction.

SPENDING RESOURCES

Unless an effect states otherwise, you can’t spend Hope or mark Stress multiple times on the same feature to increase or repeat its effects on the same roll.

USING FEATURES AFTER A ROLL

If a feature allows you to affect a roll after the result has been totaled, you can use it after the GM declares whether the roll succeeds or fails, but not after the consequences unfold or another roll is made.

LEVELING UP

Your party levels up whenever the GM decides you’ve reached a narrative milestone (usually about every 3 sessions). All party members level up at the same time.

Daggerheart has 10 PC levels divided into 4 tiers:


→ Tier 1 encompasses level 1 only.

→ Tier 2 encompasses levels 2–4.

→ Tier 3 encompasses levels 5–7.

→ Tier 4 encompasses levels 8–10.


Your tier affects your damage thresholds, tier achievements, and access to advancements.

STEP ONE: TIER ACHIEVEMENTS

Take any applicable tier achievements

  • At level 2, you gain a new Experience at +2 and permanently increase your Proficiency by 1.

  • At level 5, you gain a new Experience at +2, permanently increase your Proficiency by 1, and clear any marked traits.

  • At level 8, you gain a new Experience at +2, permanently increase your Proficiency by 1, and clear any marked traits.

STEP TWO: ADVANCEMENTS

Choose any two advancements with at least one unmarked slot from your tier or below. Options with multiple slots can be chosen more than once. When you choose an advancement, mark one of its slots.

  • When you choose to increase two unmarked character traits and mark them: Choose two unmarked character traits and gain a permanent +1 bonus to them. You can’t increase these stats again until the next tier (when your tier achievement allows you to clear those marks).

  • When you choose to permanently add 1 or more Hit Point slots: Darken the outline of the next rectangle in the Hit Point section of your character sheet in pen or permanent marker.

  • When you choose to permanently add 1 or more Stress slots: Darken the outline of the next rectangle in the Stress section of your character sheet in pen or permanent marker.

  • When you choose to increase your Experience: Choose two Experiences on your character sheet and gain a permanent +1 bonus to both.

  • When you take an additional domain card: You can choose an additional domain card at or below your level or from your class’s domains. If you’ve multiclassed, you can instead select a card at or below half your level from your chosen multiclass domain.

  • When you choose to increase your Evasion: Gain a permanent +1 bonus to your Evasion.

  • When you choose to take an upgraded subclass card: Take the next card for your subclass. If you have only the foundation card, take a specialization; if you have a specialization already, take a mastery. Then cross out this tier’s multiclass option.

  • When you choose to increase your Proficiency: Fill in one of the open circles in the “Proficiency” section of your character sheet, then increase your weapon’s number of damage dice by 1. The black box around this advancement’s slots indicates you must spend two advancements and mark both level-up slots in order to take it as an option.

  • When you choose to multiclass: Choose an additional class, select one of its domains, and gain its class feature. Add the appropriate multiclass module to your character sheet and take the foundation card from one of its subclasses. Then cross out the “upgraded subclass” advancement option in this tier and all other “multiclass” advancement options on your character sheet. The black box around this advancement’s slots indicates you must spend two advancements and mark both level-up slots in order to take it as an option.

STEP THREE: DAMAGE THRESHOLDS

Increase all damage thresholds by 1.

STEP FOUR: DOMAIN CARDS

Acquire a new domain card at your level or lower from one of your class’s domains and add it to your loadout or vault. If your loadout is already full, you can’t add the new card to it until you move another into your vault. You can also exchange one domain card you’ve previously acquired for a different domain card of the same level or lower.

MULTICLASSING

Starting at level 5, you can choose multiclassing as an option when leveling up. When you multiclass, you choose an additional class, gain access to one of its domains, and acquire its class feature. Take the appropriate multiclass module and add it to the right side of your character sheet, then choose a foundation card from one of its subclasses. If your foundation cards specify different Spellcast traits, you can choose which one to apply when making a Spellcast roll.

Whenever you have the option to acquire a new domain card, you can choose from cards at or below half your current level (rounded up) from the domain you chose when you selected the multiclass advancement.

EQUIPMENT

Your equipped weapons and armor are the ones listed in the “Active Weapons” and “Active Armor” sections of your character sheet. Your character can only attack with weapons, benefit from armor, and gain features from items they have equipped. You can’t equip weapons or armor with a higher tier than you.

PCs can carry up to two additional weapons in the “Inventory Weapon” areas of the character sheet.

You can swap an Inventory Weapon with an Active Weapon at no cost during a rest or moment of calm; otherwise, you must mark a Stress to do so.

Your character can only have one Active Armor at a time.

They can’t equip armor while in danger or under pressure; otherwise, they can equip or unequip armor without cost.

Each armor has its own Armor Slots; if your character unequips their armor, track how many of its Armor Slots are marked. You can't carry armor in your inventory. When your character equips or unequips armor, recalculate your damage thresholds.

WEAPONS

All weapons have a tier, trait, range, damage die, damage type, and burden. Some weapons also have a feature.

CATEGORY

A weapon’s category specifies whether it is a Primary or Secondary weapon. Your character can only equip up to one weapon of each category at a time.

TRAIT

A weapon’s trait specifies which trait to use when making an attack roll with it.

RANGE

A weapon’s range specifies the maximum distance between the attacker and their target when attacking with it.

DAMAGE

A weapon’s damage indicates the size of the damage dice you roll on a successful attack with it; you roll a number of dice equal to your Proficiency. If the damage includes a flat modifier, this number is added to the total damage rolled, but is not altered or affected by Proficiency.

DAMAGE TYPE

A weapon’s damage type indicates whether it deals physical or magic damage. Weapons that deal magic damage can only be wielded by characters with a Spellcast trait.

BURDEN

A weapon’s burden indicates how many hands it occupies when equipped. Your character’s maximum burden is 2 hands.

FEATURE

A weapon’s feature is a special rule that stays in effect while the weapon is equipped.

You can throw an equipped weapon at a target within Very Close range, making the attack roll with Finesse. On a success, deal damage as usual for that weapon. Once thrown, the weapon is no longer considered equipped. Until you retrieve and re-equip it, you can’t attack with it or benefit from its features.

Combat Wheelchair

By Mark Thompson

The combat wheelchair is a ruleset designed to help you play a wheelchair user in Daggerheart. This section provides mechanics and narrative guidance for you to work from, but feel free to adapt the flavor text to best suit your character. Have fun with your character’s wheelchair design, and make it as unique or tailored to them as you please.

ACTION AND MOVEMENT

When describing how your character moves, you can use descriptions such as the following:

  • “I roll over to the door to see if it’s open.”

  • “I wheel myself over to the group to ask what’s going on.”

  • “I pull my brakes and skid to a halt, turning in my seat to level my bow at the intruder.”

CONSEQUENCES

Here are some ways you might describe complications you encounter when your character uses their wheelchair:

  • “I pull my brakes, but I don’t think to account for the loose gravel on the ground.”

  • “I hit a patch of ice awkwardly and am sent skidding out past my target.”

  • “I go to push off in pursuit, but one of my front caster wheels snags on a crack in the pavement, stalling me for a moment.”

GMs should avoid breaking a character's wheelchair or otherwise removing it from play as a consequence, unless everyone at the table, especially the wheelchair user’s player, gives their approval.

EVASION

Your character is assumed to be skilled in moving their wheelchair and navigating numerous situations in it. As a result, the only wheelchair that gives a penalty to a PC's Evasion is the Heavy Frame model.

BURDEN

All wheelchairs can be maneuvered using one or two hands outside of combat. However, when being used as a weapon, the chair is restricted to requiring one or two hands to perform attacks, depending on the model you’ve chosen. If you’re playing a character who has limited to no mobility in their arms, their wheelchair can be attuned to them by magical means. For example, your character might use a psychic link to guide the chair around like a pseudo-electric wheelchair. All the rules presented here can be tailored and adapted to any character's needs.

CHOOSING YOUR MODEL

All combat wheelchairs are equipped as Primary Weapons.

There are three models of wheelchair available: light, heavy, and arcane. You’re encouraged to consider the type of character you’re playing and the class they belong to, then choose the model that best matches that character concept.

ARMOR

Every armor has a name, base damage thresholds, and a base Armor Score. Some armor also has a feature.

  • An armor’s base armor score indicates how many Armor Slots it provides its wearer before additional bonuses are added to calculate their total Armor Score. A PC’s Armor Score can’t exceed 12.

  • An armor’s base thresholds determine its wearer’s major and severe damage thresholds before adding bonuses to calculate their final damage thresholds.

  • An armor’s feature is a special rule that stays in effect while the armor is equipped.

While unarmored, your character’s base Armor Score is 0, their Major threshold is equal to their level, and their Severe threshold is equal to twice their level.

REDUCING INCOMING DAMAGE

When you take damage, you can mark one Armor Slot to reduce the number of Hit Points you would mark by one. If your character has an Armor Score of 0, you can’t mark Armor Slots. If an effect temporarily increases your Armor Score,

it increases your available Armor Slots by the same amount; when the effect ends, so does the availability of these Armor Slots.

LOOT

Loot comprises any consumables or reusable items the party acquires.

Items can be used until sold, discarded, or lost.

To generate a random item, choose a rarity, roll the designated dice, and match the total to the item in the table:

  • Common: 1d12 or 2d12

  • Rare: 3d12 or 4d12

  • Uncommon: 2d12 or 3d12

  • Legendary: 4d12 or 5d12

@UUID[RollTable.KKqUrMMXPpm7uhYT]{Loot}

Consumables

Consumables are loot that can only be used once. You can hold up to five of each consumable at a time. Using a consumable doesn’t require a roll unless required by the GM or the demands of the fiction.

To generate a random consumable, choose a rarity, roll the designated dice, and match the total to the item in the table:

  • Common: 1d12 or 2d12

  • Rare: 3d12 or 4d12

  • Uncommon: 2d12 or 3d12

  • Legendary: 4d12 or 5d12

@UUID[RollTable.wZXyi343PSVVwWB3]{Consumables}

GOLD

Gold is an abstract measurement of how much wealth a character has, and is measured in handfuls, bags, and chests, with 10 handfuls to 1 bag, and 10 bags to 1 chest. When you have marked all of the slots in a category and you gain another gold reward in that category, mark a slot in the following category and clear all the slots in the current one.

For example, if you have 9 handfuls and gain another, you instead mark 1 bag and erase all handfuls. If you have 9 bags and gain another, you mark 1 chest and erase all bags.

You can’t have more than 1 chest, so if all your Gold slots are marked, you’ll need to spend some of your gold or store it somewhere else before you can acquire more.


Optional Rule: Gold Coins

If your group wants to track gold with more granularity, you can add coins as your lowest denomination. Following the established pattern, 10 coins equal 1 handful.


" + "content": "

FLOW OF THE GAME

Daggerheart is a conversation. The GM describes fictional scenarios involving the PCs, and the players take turns describing how their characters react. The goal of every person at the table is to build upon everyone else’s ideas and collaboratively tell a satisfying story. The system facilitates this collaborative process by providing structure to the conversation and mechanics for resolving moments of tension where fate or fortune determine the outcome of events.

PLAYER PRINCIPLES & BEST PRACTICES

To get the most out of Daggerheart, we recommend players keep the following principles and practices in mind throughout each session:

PRINCIPLES

  • Be a fan of your character and their journey.

  • Spotlight your friends.

  • Address the characters and address the players.

  • Build the world together.

  • Play to find out what happens.

  • Hold on gently.

BEST PRACTICES

  • Embrace danger.

  • Use your resources.

  • Tell the story.

  • Discover your character.

For more information, see the Daggerheart Core Rulebook, pages 9 and 108.

CORE GAMEPLAY LOOP

The core gameplay loop is the procedure that drives every scene, both in and out of combat:

STEP 1: SET THE SCENE

The GM describes a scenario, establishing the PCs’ surroundings and any dangers, NPCs, or other important details the characters would notice.

STEP 2: ASK AND ANSWER QUESTIONS

The players ask clarifying questions to explore the scene more deeply and gather information that could inform their characters’ actions. The GM responds to these questions by giving the players information their characters could easily obtain, or by asking questions of their own to the players. The players also respond to any questions the GM poses to them.

In this way, the table builds out the fiction collaboratively.

STEP 3: BUILD ON THE FICTION

As the scene develops, the players find opportunities to take action—problems to solve, obstacles to overcome, mysteries to investigate, and so on. The players describe how their characters proceed; if their proposed actions carry no chance of failure (or if failure would be boring), they automatically succeed. But if the outcome of their action is unknown, the GM calls for an action roll. Either way, the table works the outcome into the story and moves the fiction forward, narrating how the PC’s actions have changed things.

STEP 4: GO BACK TO STEP 1

The process repeats from the beginning, with the GM relaying any updated details or material changes to the players. This process continues until the end of the scene is triggered by a mechanic or arrives organically.

THE SPOTLIGHT

The spotlight is a symbol that represents the table’s attention—and therefore the immediate focus of both the narrative and the game mechanics. Any time a character or player becomes the focus of a scene, they “are in the spotlight” or “have the spotlight.”

The spotlight moves around the table organically as scenes unfold unless a mechanical trigger determines where the spotlight goes next. For example, when a player fails an action roll, the mechanics prompt the GM to seize the spotlight and make a GM move.

TURN ORDER & ACTION ECONOMY

Daggerheart’s turns don’t follow a traditional, rigid format:
there is no explicit initiative mechanic and characters don’t have a set number of actions they can take or things they can do before the spotlight passes to someone else. A player with the spotlight describes what their character does and the spotlight simply swings to whoever:

  1. the fiction would naturally turn it toward

  2. hasn’t had the focus in a while, or

  3. a triggered mechanic puts it on


Optional: Spotlight Tracker Tool

If your group prefers a more traditional action economy, you can use tokens to track how many times a player has had the spotlight: At the start of a session or scene, each player adds a certain number of tokens (we recommend 3) to their character sheet and removes a token each time they take an action. If the spotlight would swing to someone without any tokens, it swings to someone else instead. Once every player has used all their available tokens, players refill their character sheet with the same number of tokens as before, then continue playing.


MAKING MOVES & TAKING ACTION

Any time a character does something to advance the story, such as speaking with another character, interacting with the environment, making an attack, casting a spell, or using a class feature, they are making a move.

ACTION ROLLS

Any move where success would be trivial or failure would be boring automatically succeeds, but any move that’s difficult to accomplish or risky to attempt triggers an action roll.

OVERVIEW

All action rolls require a pair of d12s called Duality Dice.

These are two visually distinct twelve-sided dice, with one die representing Hope and the other representing Fear.

To make an action roll, you roll the Duality Dice, sum the results, apply any relevant modifiers, and compare the total to a Difficulty number to determine the outcome:

  • Success with Hope: If your total meets or beats the difficulty AND your Hope Die shows a higher result than your Fear Die, you rolled a “Success with Hope.” You succeed and gain a Hope.

  • Success with Fear: If your total meets or beats the Difficulty AND your Fear Die shows a higher result than your Hope Die, you rolled a “Success with Fear.” You succeed with a cost or complication, but the GM gains a Fear.

  • Failure with Hope: If your total is less than the Difficulty AND your Hope Die shows a higher result than your Fear Die, you rolled a “Failure with Hope.” You fail with a minor consequence and gain a Hope, then the spotlight swings to the GM.

  • Failure with Fear: If your total is less than the Difficulty AND your Fear Die shows a higher result than your Hope Die, you rolled a “Failure with Fear.” You fail with a major consequence and the GM gains a Fear, then the spotlight swings to the GM.

  • Critical Success: If the Duality Dice show matching results, you rolled a “Critical Success” (“Crit”). You automatically succeed with a bonus, gain a Hope, and clear a Stress. If this was an attack roll, you deal critical damage.

Note: A Critical Success counts as a roll “with Hope.”

After resolving the action roll, the table works together to weave the outcome into the narrative and play continues.

FAILING FORWARD

In Daggerheart, every time you roll the dice, the scene changes in some way. There is no such thing as a roll where “nothing happens,” because the fiction constantly evolves based on the successes and failures of the characters.

PROCEDURE

The following steps describe in more detail the procedure that all action rolls utilize:

STEP 1: PICK AN APPROPRIATE TRAIT

Some actions and effects specify in their description which trait applies to the roll; otherwise, the GM tells the acting player which character trait best applies to the action being attempted. If more than one trait could apply to the roll, the GM chooses or lets the acting player decide.

STEP 2: DETERMINE THE DIFFICULTY

Some actions and features say in their description what the Difficulty is. Otherwise, the GM determines the Difficulty based on the scenario. The GM can choose whether to share the Difficulty with the table. In either case, the GM should communicate the potential consequences of failure to the acting player.

STEP 3: APPLY EXTRA DICE AND MODIFIERS

The acting player decides whether to Utilize an Experience or activate other effects, then, if applicable, adds the appropriate tokens and dice (such as advantage or Rally dice) to their dice pool.


Note: Unless an action, ability, or feature specifically allows for it, a player must declare the use of any Experiences, extra dice, or other modifiers before they roll.


STEP 4: ROLL THE DICE

The acting player rolls their entire dice pool and announces the results in the format of “[total result] with [Hope/Fear]”— or “Critical Success!” in the case of matching Duality Dice.


Example: A player is making an action roll with a +1 in the relevant trait and no other modifiers; they roll the Duality Dice and get a result of 5 on their Hope Die and 7 on their Fear Die, then announce “I rolled a 13 with Fear!”


STEP 5: RESOLVE THE OUTCOME

The active player and the GM work together, along with the suggestions and support of the rest of the table, to resolve the outcome of the action.

GM MOVES AND ADVERSARY ACTIONS

GMs also make moves. They should consider making a move when a player does one of the following things:

  • Rolls with Fear on an action roll.

  • Fails an action roll.

  • Does something that would have consequences.

  • Gives them a golden opportunity.

  • Looks to them for what happens next.

After the GM turn is done, the spotlight goes back to the PCs.

Many adversaries and environments have Fear Features, especially powerful or consequential moves that the GM must spend Fear to activate.


Note: This Fear is in addition to any Fear the GM has previously spent to seize the spotlight or activate another action or ability.


ADVERSARY ACTIONS

When play passes to the GM, the GM can make a GM move to spotlight an adversary. A spotlighted adversary can:

  • Move within Close range and make a standard attack

  • Move within Close range and use an adversary action

  • Clear a condition

  • Sprint within Far or Very Far range on the battlefield

  • Do anything else the fiction demands or the GM deems appropriate

The GM can spend additional Fear to spotlight additional adversaries. Once the GM has finished, the spotlight swings back to the PCs.

SPECIAL ROLLS

Some rolls have unique specifications or otherwise modify the action roll procedure: trait rolls, Spellcast Rolls, attack rolls, and damage rolls. Unless otherwise noted, you can apply any bonus, modifier, or effect to a special roll as if it were a standard action roll.

TRAIT ROLLS

An action roll that specifies which character trait applies to it is called a trait roll. In the text of a feature or effect, a trait roll is referenced with the format “[Trait] Roll (Difficulty)” (e.g., “Agility Roll (12)”). If the text of an effect doesn’t specify a trait roll’s Difficulty, the GM sets the Difficulty based on the circumstances.

Features and effects that affect a trait roll also affect any action roll that uses the same trait, including attack rolls, Spellcast rolls, and standard action rolls.


Example: The katari’s ancestry feature “Feline Instincts,” which allows the katari to reroll an Agility Roll, can also be used on a standard action roll using Agility to traverse dangerous terrain or on an attack roll made with a weapon that uses Agility.


SPELLCAST ROLLS

Spellcast Rolls are trait rolls that require you to use your Spellcast trait. Your Spellcast trait, if you have one, is determined by your subclass.

Spellcast Rolls are only made when a character uses a feature that requires one. A successful Spellcast Roll activates the effect as described by the feature.


Notes: A Spellcast Roll that can damage a target is also considered an attack roll.

When you cast a spell, the text tells you when the effect ends. The GM can spend a Fear to end a temporary effect. If your spell doesn’t specify when it ends, it ends when you choose or at a natural moment of the story. You can choose to end your spell early.

You can cast and maintain the effects of more than one spell at the same time.


REACTION ROLLS

A reaction roll is made in response to an attack or a hazard, representing a character’s attempt to avoid or withstand an imminent effect.

Reaction rolls work like action rolls, except they don’t generate Hope or Fear, don’t trigger additional GM moves, and other characters can’t aid you with Help an Ally.

If you critically succeed on a reaction roll, you don’t clear a Stress or gain a Hope, but you do ignore any effects that would have impacted you on a success, such as taking damage or marking Stress.

GROUP ACTION ROLLS

When multiple PCs take action together, the party chooses one PC to lead the action. Each other player then describes how their character collaborates on the task. The leader makes an action roll as usual, while the other players make reaction rolls using whichever traits they and the GM decide fit best.

The lead character gains a +1 bonus to their lead action roll for each of these reaction rolls that succeeded and a −1 penalty for each these reaction rolls that failed.

TAG TEAM ROLLS

Each player can, once per session, initiate a Tag Team Roll between their character and another PC by spending 3 Hope. The players work with one another to describe how they combine their actions in a unique and exciting way. Both players make separate action rolls; before resolving the roll’s outcome, choose one of the rolls to apply to both actions. On a roll with Hope, all PCs involved gain a Hope. On a roll with Fear, the GM gains a Fear token for each PC involved.

On a successful Tag Team attack roll, both players roll damage and add the totals together to determine the damage dealt, which is then treated as if it came from a single source. If the attacks deal different types of damage, the players choose which type to deal.


Notes:

A Tag Team Roll counts as a single action roll for the purposes of any countdowns or features that track action rolls.

Though each player may only initiate one Tag Team Roll per session, one PC can be involved in multiple Tag Team Rolls.


ADVANTAGE & DISADVANTAGE

Some features and effects let you roll with advantage or disadvantage on an action or reaction roll:

  • Advantage represents an opportunity that you seize to increase your chances of success. When you roll with advantage, you roll a d6 advantage die with your dice pool and add its result to your total.

  • Disadvantage represents an additional difficulty, hardship, or challenge you face when attempting an action. When you roll with disadvantage, you roll a d6 disadvantage die with your dice pool and subtract its result from your total.

Advantage or disadvantage can be granted or imposed by mechanical triggers or at the GM’s discretion. When a PC aids you with Help an Ally, they roll their own advantage die and you add it to your total.

Advantage and disadvantage dice cancel each out, one-for-one, when they would be added to the same dice pool, so you’ll never roll both at the same time. If you have advantage or disadvantage from other sources that don’t affect your own dice pool, such as another player’s Help an Ally move, their effects stack with your rolled results.

HOPE & FEAR

Hope and Fear are metacurrencies representing the cosmic forces that shape the events of your table’s story. Hope powers PC abilities and features, while Fear powers the abilities of the GM and the adversaries and environments they control.

HOPE

Every PC starts with 2 Hope at character creation and gains more throughout play. A PC can have a maximum of 6 Hope at one time, and Hope carries over between sessions.

Players can spend Hope to:

  • Help an Ally

    When you Help an Ally who is making an action roll, describe how you do so and roll an advantage die. Multiple players can spend Hope to help the same acting player, but that player only adds the highest result to their final total.

  • Utilize an Experience

    When you Utilize an Experience on a relevant roll, add its modifier to the result. You can spend multiple Hope to utilize multiple Experiences.

  • Initiate a Tag Team Roll

    Spend 3 Hope to initiate a Tag Team roll, combining the actions of two PCs into one impressive act of synergy. When you make a Tag Team roll, both players roll their action rolls and then choose which set of results to apply to the outcome.

  • Activate a Hope Feature

    A Hope Feature is any effect that allows (or requires) you to spend a specified amount of Hope to activate it. Class Hope features are class-specific features, detailed on your character sheet, that cost 3 Hope to activate


Note: When using a Hope Feature, if you rolled with Hope for that action, the Hope you gain from that roll can be spent on that feature (or toward it, if it requires spending multiple Hope).


FEAR

The GM gains Fear whenever a player rolls with Fear and can spend Fear at any time to make or enhance a GM move or to use a Fear Feature. The GM can have up to 12 Fear at one time. Fear carries over between sessions.

COMBAT

Though Daggerheart relies on the same flow of collaborative storytelling in and out of combat, physical conflicts rely more heavily on several key mechanics related to attacking, maneuvering, and taking damage.

EVASION

Evasion represents a character’s ability to avoid attacks and other unwanted effects. Any roll made against a PC has a Difficulty equal to the target’s Evasion. A PC’s base Evasion is determined by their class, but can be modified by domain cards, equipment, conditions, and other effects.


Note: attacks rolled against adversaries use the target’s Difficulty instead of Evasion.


HIT POINTS & DAMAGE THRESHOLDS

Hit Points (HP) represent a character’s ability to withstand physical injury. When a character takes damage, they mark 1 to 3 HP, based on their damage thresholds:

  • If the final damage is at or above the character’s Severe damage threshold, they mark 3 HP.

  • If the final damage is at or above the character’s Major damage threshold but below their Severe damage threshold, they mark 2 HP.

  • If the final damage is below the character’s Major damage threshold, they mark 1 HP.

  • If incoming damage is ever reduced to 0 or less, no HP is marked.

A PC’s damage thresholds are calculated by adding their level to the listed damage thresholds of their equipped armor. A PC’s starting HP is based on their class, but they can gain additional Hit Points through advancements, features, and other effects.

An adversary’s Damage Thresholds and HP are listed in their stat blocks.

When a character marks their last Hit Point, they fall. If a PC falls, they make a death move.

Characters can clear Hit Points by taking downtime moves (see: Downtime) or by activating relevant special abilities or effects.


Optional Rule: Massive Damage

If a character ever takes damage equal to twice their Severe threshold, they mark 4 HP instead of 3.


STRESS

Stress represents how much mental, physical, and emotional strain a character can endure. Some special abilities or effects require the character activating them to mark Stress, and the GM can require a PC to mark Stress as a GM move or to represent the cost, complication, or consequence of an action roll.

When a character marks their last Stress, they become Vulnerable (see: Conditions) until they clear at least 1 Stress.

When a character must mark 1 or more Stress but can’t, they mark 1 HP instead. A character can’t use a move that requires them to mark Stress if all of their Stress is marked.

PCs can clear Stress by making downtime moves (see: Downtime). A PC’s maximum Stress is determined by their class, but they can increase it through advancements, abilities, and other effects.

ATTACKING

ATTACK ROLLS

An attack roll is an action roll intended to inflict harm. The trait that applies to an attack roll is specified by the weapon or spell being used. Unarmed attack rolls use either Strength or Finesse (GM’s choice). An attack roll’s Difficulty, unless otherwise noted, is equal to the Difficulty score of its target.

DAMAGE ROLLS

On a successful attack, roll damage. Damage is calculated from the damage roll listed in the attack’s description with the format “xdy+[modifier]” (e.g., for a spell that inflicts “1d8+2” damage, you roll an eight-sided and add 2 to the result; the damage dealt is equal to the total).

Any time an effect says to deal damage using your Spellcast trait, you roll a number of dice equal to your Spellcast trait.


Note: If your Spellcast trait is +0 or lower, you don’t roll anything.


For weapons, the number of damage dice you roll is equal to your Proficiency. Note that your Proficiency multiplies the number of dice you roll, but doesn’t affect the modifier. For example, a PC with Proficiency 2 and wielding a weapon with adamage rating of “d8+2” deals damage equal to “2d8+2” on a successful attack.

Successful unarmed attacks inflict [Proficiency]d4 damage.

CRITICAL DAMAGE

When you get a critical success (i.e., you roll matching values on your Duality Dice) on an attack roll, you deal extra damage.

Make the damage roll as usual, but add the maximum possible result of the damage dice to the final total. For instance, if an attack would normally deal 2d8+1 damage, a critical success would deal 2d8+1+16.

DAMAGE TYPES

There are two damage types: physical damage (phy) and magic damage (mag). Unless stated otherwise, mundane weapons and unarmed attacks deal physical damage, and spells deal magic damage.

RESISTANCE, IMMUNITY, AND DIRECT DAMAGE

If a target has resistance to a damage type, then they reduce incoming damage of that type by half before comparing it to their Hit Point Thresholds. If the target has additional ways of reducing incoming damage, such as marking Armor Slots, they apply the resistance effect first. The effects of multiple resistances to the same damage type do not stack.

If a target has immunity to a damage type, they ignore incoming damage of that type.

If an attack deals both physical and magic damage, a character can only benefit from resistance or immunity if they are resistant or immune to both damage types.

Direct damage is damage that can’t be reduced by marking Armor Slots.

MULTI-TARGET ATTACK ROLLS

If a spell or ability allows you to target multiple adversaries, make one attack roll and one damage roll, then apply the results to each target individually.

MULTIPLE DAMAGE SOURCES

Damage dealt simultaneously from multiple sources is always totaled before it’s compared to its target’s damage thresholds.


For example, if a PC with orc ancestry makes a successful attack against a target in Melee range and decides to spend a Hope to use their “Tusks” feature (which gives them an extra 1d6 damage on a damage roll), they would roll their normal weapon damage and add a d6 to the result, then deal that total damage to the adversary.


MAPS, RANGE, AND MOVEMENT

You can play Daggerheart using “theater of the mind” or maps and miniatures. The conversions below from abstract ranges to physical measurements assume 1 inch of map represents about 5 feet of fictional space.

Daggerheart uses the following ranges to translate fictional positioning into relative distance for the purposes of targeting, movement, and other game mechanics:

  • Melee: Close enough to touch, up to a few feet away.

  • Very Close: Close enough to see fine details, about 5–10 feet away. While in danger, a character can move, as part of their action, from Very Close range into Melee range. On a map: anything within the shortest length of a game card (2-3 inches).

  • Close: Close enough to see prominent details, about 10–30 feet away. While in danger, a character can move, as part of their action, from Close range into Melee range. On a map: anything within the length of a pencil (5-6 inches).

  • Far: Close enough to see very little detail, about 30–100 feet away. While in danger, a character must make an Agility Roll to safely move from Far range into Melee range. On a map: anything within the length of the long edge of a piece of copy paper (11–12 inches).

  • Very Far: Too far to make out any details, about 100–300 feet away. While in danger, a character must make an Agility Roll to safely move from Very Far range into Melee range. On a map: anything beyond Far range, but still within the bounds of the conflict or scene.

  • Out of Range: Anything beyond a character’s Very Far range is Out of Range and usually can’t be targeted.

Range is measured from the source of an effect, such as the attacker or spellcaster, to the target or object of an effect.

A weapon, spell, ability, item, or other effect’s stated range is a maximum range; unless otherwise noted, it can be used at closer distances.


Optional Rule: Defined Ranges

If your table would rather operate with more precise range rules, you can use a 1-inch grid battle map during combat.

If you do, use the following guidelines for play:

  • Melee: 1 square

  • Very Close: 3 squares

  • Close: 6 squares

  • Far: 12 squares

  • Very Far: 13+ squares

  • Out of Range: Off the battlemap


MOVEMENT UNDER PRESSURE

When you’re under pressure or in danger and make an action roll, you can move to a location within Close range as part of that action. If you’re not already making an action roll, or if you want to move farther than your Close range, you need to succeed on an Agility Roll to safely reposition yourself.

An adversary can move within Close range for free as part of an action, or within Very Far range as a separate action.

AREA OF EFFECT

Unless stated otherwise, all the targets of a group effect must be within Very Close range of a single origin point within your effect’s range.

LINE OF SIGHT & COVER

Unless stated otherwise, a ranged attacker must have line of sight to their intended target to make an attack roll. If a partial obstruction lies between the attacker and target, the target has cover. Attacks made through cover are rolled with disadvantage. If the obstruction is total, there is no line of sight.

CONDITIONS

Conditions are effects that grant specific benefits or drawbacks to the target they are attached to.

STANDARD CONDITIONS

Daggerheart has three standard conditions:

HIDDEN

While you’re out of sight from all enemies and they don’t otherwise know your location, you gain the Hidden condition. Any rolls against a Hidden creature have disadvantage. After an adversary moves to where they would see you, you move into their line of sight, or you make an attack, you are no longer Hidden.

RESTRAINED

Restrained characters can’t move, but you can still take actions from their current position.

VULNERABLE

When a creature is Vulnerable, all rolls targeting them have advantage.

Some features can apply special or unique conditions, which work as described in the feature text.

Unless otherwise noted, the same condition can’t be applied more than once to the same target.

TEMPORARY TAGS & SPECIAL CONDITIONS

The temporary tag denotes a condition or effect that the affected creature can clear by making a move against it. When an affected PC makes a move to clear a temporary condition or effect, it normally requires a successful action roll using an appropriate trait. When an affected adversary makes a move to clear a temporary condition or effect, the GM puts the spotlight on the adversary and describes how they do it; this doesn’t require a roll but it does use up that adversary’s spotlight.

Special conditions are only cleared when specific requirements are met, such as completing a certain action or using a particular item. The requirements for clearing these conditions are stated in the text of the effect that applies the condition.

DOWNTIME

Between conflicts, the party can take a rest to recover expended resources and deepen their bonds. During a rest, each PC can make up to two downtime moves.

When the party rests, they must choose between a short rest and a long rest. If a party takes three short rests in a row, their next rest must be a long rest.

If a short rest is interrupted, such as by an adversary's attack, the characters don’t gain its benefits. If a long rest is interrupted, the characters only gain the benefits of a short rest.

A short rest lasts enough time for the party to catch its breath, about an hour in-world. Each player can move domain cards between their loadout and vault for free, then choose twice from the following list of downtime moves (players can choose the same move twice):

  • Tend to Wounds: Clear 1d4+Tier Hit Points for yourself or an ally.

  • Clear Stress: Clear 1d4+Tier Stress.

  • Repair Armor: Clear 1d4+Tier Armor Slots from your or an ally’s armor.

  • Prepare: Describe how you prepare yourself for the path ahead, then gain a Hope. If you choose to Prepare with one or more members of your party, you each gain 2 Hope.

At the end of a short rest, any features or effects with a limited number of uses per rest refresh and any features or effects that last until your next rest expire.

A long rest is when the characters make camp and relax or sleep for several in-game hours. Each player can move domain cards between their loadout and vault for free, then choose twice from the following list of downtime moves (players can choose the same move twice):

  • Tend to All Wounds: Clear all Hit Points for yourself or an ally.

  • Clear All Stress: Clear all Stress.

  • Repair All Armor: Clear all Armor Slots from your or an ally’s armor

  • Prepare: Describe how you prepare for the next day’s adventure, then gain a Hope. If you choose to Prepare with one or more members of your party, you each gain 2 Hope.

  • Work on a Project: With GM approval, a PC may pursue a long-term project, such as deciphering an ancient text or crafting a new weapon. The first time they start a new project, assign it a countdown. Each time a PC makes the Work on a Project move, they either advance their project’s countdown automatically or make an action roll to advance it (GM’s choice).

At the end of a long rest, any features or effects with a limited number of uses per rest or per long rest refresh and any features or effects that last until your next rest or until your next long rest expire.

DOWNTIME CONSEQUENCES

On a short rest, the GM gains 1d4 Fear. On a long rest, they gain Fear equal to 1d4 + the number of PCs, and they can advance a long-term countdown of their choice.

DEATH

When a PC marks their last Hit Point, they must make a death move by choosing one of the following options:

  • Blaze of Glory: Your character embraces death and goes out in a blaze of glory. Take one final action. It automatically critically succeeds (with GM approval), and then you cross through the veil of death.

  • Avoid Death: Your character avoids death and faces the consequences. They temporarily drop unconscious, and then you work with the GM to describe how the situation worsens. While unconscious, your character can’t move or act, and they can’t be targeted by an attack. They return to consciousness when an ally clears 1 or more of their marked Hit Points or when the party finishes a long rest. After your character falls unconscious, roll your Hope Die. If its value is equal to or less than your character’s level, they gain a scar: permanently cross out a Hope slot and work with the GM to determine its lasting narrative impact and how, if possible, it can be restored. If you ever cross out your last Hope slot, your character’s journey ends.

  • Risk It All: Roll your Duality Dice. If the Hope Die is higher, your character stays on their feet and clears a number of Hit Points or Stress equal to the value of the Hope Die (you can divide the Hope Die value between Hit Points and Stress however you’d prefer). If the Fear Die is higher, your character crosses through the veil of death. If the Duality Dice show matching results, your character stays up and clears all Hit Points and Stress.

If your character dies, work with the GM before the next session to create a new character at the current level of the rest of the party.

ADDITIONAL RULES

The following rules apply to many aspects of the game.

ROUNDING UP

This game doesn’t use fractions; if you need to round to a whole number, round up unless otherwise specified. When in doubt, resolve any ambiguity in favor of the PCs.

REROLLING DICE

When a feature allows you to reroll a die, you always take the new result unless the feature specifically says otherwise.

INCOMING DAMAGE

Incoming damage means the total damage from a single attack or source, before Armor Slots are marked.

SIMULTANEOUS EFFECTS

If the resolution order of multiple effects is unclear, the person in control of the effects (player or GM) decides what order to resolve them in.

STACKING EFFECTS

Unless stated otherwise, all effects beside conditions and advantage/disadvantage can stack.

ONGOING SPELL EFFECTS

If an effect doesn’t have a listed mechanical expiration, it only ends when decided by the controlling player, the GM, or the demands of the fiction.

SPENDING RESOURCES

Unless an effect states otherwise, you can’t spend Hope or mark Stress multiple times on the same feature to increase or repeat its effects on the same roll.

USING FEATURES AFTER A ROLL

If a feature allows you to affect a roll after the result has been totaled, you can use it after the GM declares whether the roll succeeds or fails, but not after the consequences unfold or another roll is made.

LEVELING UP

Your party levels up whenever the GM decides you’ve reached a narrative milestone (usually about every 3 sessions). All party members level up at the same time.

Daggerheart has 10 PC levels divided into 4 tiers:


→ Tier 1 encompasses level 1 only.

→ Tier 2 encompasses levels 2–4.

→ Tier 3 encompasses levels 5–7.

→ Tier 4 encompasses levels 8–10.


Your tier affects your damage thresholds, tier achievements, and access to advancements.

STEP ONE: TIER ACHIEVEMENTS

Take any applicable tier achievements

  • At level 2, you gain a new Experience at +2 and permanently increase your Proficiency by 1.

  • At level 5, you gain a new Experience at +2, permanently increase your Proficiency by 1, and clear any marked traits.

  • At level 8, you gain a new Experience at +2, permanently increase your Proficiency by 1, and clear any marked traits.

STEP TWO: ADVANCEMENTS

Choose any two advancements with at least one unmarked slot from your tier or below. Options with multiple slots can be chosen more than once. When you choose an advancement, mark one of its slots.

  • When you choose to increase two unmarked character traits and mark them: Choose two unmarked character traits and gain a permanent +1 bonus to them. You can’t increase these stats again until the next tier (when your tier achievement allows you to clear those marks).

  • When you choose to permanently add 1 or more Hit Point slots: Darken the outline of the next rectangle in the Hit Point section of your character sheet in pen or permanent marker.

  • When you choose to permanently add 1 or more Stress slots: Darken the outline of the next rectangle in the Stress section of your character sheet in pen or permanent marker.

  • When you choose to increase your Experience: Choose two Experiences on your character sheet and gain a permanent +1 bonus to both.

  • When you take an additional domain card: You can choose an additional domain card at or below your level or from your class’s domains. If you’ve multiclassed, you can instead select a card at or below half your level from your chosen multiclass domain.

  • When you choose to increase your Evasion: Gain a permanent +1 bonus to your Evasion.

  • When you choose to take an upgraded subclass card: Take the next card for your subclass. If you have only the foundation card, take a specialization; if you have a specialization already, take a mastery. Then cross out this tier’s multiclass option.

  • When you choose to increase your Proficiency: Fill in one of the open circles in the “Proficiency” section of your character sheet, then increase your weapon’s number of damage dice by 1. The black box around this advancement’s slots indicates you must spend two advancements and mark both level-up slots in order to take it as an option.

  • When you choose to multiclass: Choose an additional class, select one of its domains, and gain its class feature. Add the appropriate multiclass module to your character sheet and take the foundation card from one of its subclasses. Then cross out the “upgraded subclass” advancement option in this tier and all other “multiclass” advancement options on your character sheet. The black box around this advancement’s slots indicates you must spend two advancements and mark both level-up slots in order to take it as an option.

STEP THREE: DAMAGE THRESHOLDS

Increase all damage thresholds by 1.

STEP FOUR: DOMAIN CARDS

Acquire a new domain card at your level or lower from one of your class’s domains and add it to your loadout or vault. If your loadout is already full, you can’t add the new card to it until you move another into your vault. You can also exchange one domain card you’ve previously acquired for a different domain card of the same level or lower.

MULTICLASSING

Starting at level 5, you can choose multiclassing as an option when leveling up. When you multiclass, you choose an additional class, gain access to one of its domains, and acquire its class feature. Take the appropriate multiclass module and add it to the right side of your character sheet, then choose a foundation card from one of its subclasses. If your foundation cards specify different Spellcast traits, you can choose which one to apply when making a Spellcast roll.

Whenever you have the option to acquire a new domain card, you can choose from cards at or below half your current level (rounded up) from the domain you chose when you selected the multiclass advancement.

EQUIPMENT

Your equipped weapons and armor are the ones listed in the “Active Weapons” and “Active Armor” sections of your character sheet. Your character can only attack with weapons, benefit from armor, and gain features from items they have equipped. You can’t equip weapons or armor with a higher tier than you.

PCs can carry up to two additional weapons in the “Inventory Weapon” areas of the character sheet.

You can swap an Inventory Weapon with an Active Weapon at no cost during a rest or moment of calm; otherwise, you must mark a Stress to do so.

Your character can only have one Active Armor at a time.

They can’t equip armor while in danger or under pressure; otherwise, they can equip or unequip armor without cost.

Each armor has its own Armor Slots; if your character unequips their armor, track how many of its Armor Slots are marked. You can't carry armor in your inventory. When your character equips or unequips armor, recalculate your damage thresholds.

WEAPONS

All weapons have a tier, trait, range, damage die, damage type, and burden. Some weapons also have a feature.

CATEGORY

A weapon’s category specifies whether it is a Primary or Secondary weapon. Your character can only equip up to one weapon of each category at a time.

TRAIT

A weapon’s trait specifies which trait to use when making an attack roll with it.

RANGE

A weapon’s range specifies the maximum distance between the attacker and their target when attacking with it.

DAMAGE

A weapon’s damage indicates the size of the damage dice you roll on a successful attack with it; you roll a number of dice equal to your Proficiency. If the damage includes a flat modifier, this number is added to the total damage rolled, but is not altered or affected by Proficiency.

DAMAGE TYPE

A weapon’s damage type indicates whether it deals physical or magic damage. Weapons that deal magic damage can only be wielded by characters with a Spellcast trait.

BURDEN

A weapon’s burden indicates how many hands it occupies when equipped. Your character’s maximum burden is 2 hands.

FEATURE

A weapon’s feature is a special rule that stays in effect while the weapon is equipped.

You can throw an equipped weapon at a target within Very Close range, making the attack roll with Finesse. On a success, deal damage as usual for that weapon. Once thrown, the weapon is no longer considered equipped. Until you retrieve and re-equip it, you can’t attack with it or benefit from its features.

Combat Wheelchair

By Mark Thompson

The combat wheelchair is a ruleset designed to help you play a wheelchair user in Daggerheart. This section provides mechanics and narrative guidance for you to work from, but feel free to adapt the flavor text to best suit your character. Have fun with your character’s wheelchair design, and make it as unique or tailored to them as you please.

ACTION AND MOVEMENT

When describing how your character moves, you can use descriptions such as the following:

  • “I roll over to the door to see if it’s open.”

  • “I wheel myself over to the group to ask what’s going on.”

  • “I pull my brakes and skid to a halt, turning in my seat to level my bow at the intruder.”

CONSEQUENCES

Here are some ways you might describe complications you encounter when your character uses their wheelchair:

  • “I pull my brakes, but I don’t think to account for the loose gravel on the ground.”

  • “I hit a patch of ice awkwardly and am sent skidding out past my target.”

  • “I go to push off in pursuit, but one of my front caster wheels snags on a crack in the pavement, stalling me for a moment.”

GMs should avoid breaking a character's wheelchair or otherwise removing it from play as a consequence, unless everyone at the table, especially the wheelchair user’s player, gives their approval.

EVASION

Your character is assumed to be skilled in moving their wheelchair and navigating numerous situations in it. As a result, the only wheelchair that gives a penalty to a PC's Evasion is the Heavy Frame model.

BURDEN

All wheelchairs can be maneuvered using one or two hands outside of combat. However, when being used as a weapon, the chair is restricted to requiring one or two hands to perform attacks, depending on the model you’ve chosen. If you’re playing a character who has limited to no mobility in their arms, their wheelchair can be attuned to them by magical means. For example, your character might use a psychic link to guide the chair around like a pseudo-electric wheelchair. All the rules presented here can be tailored and adapted to any character's needs.

CHOOSING YOUR MODEL

All combat wheelchairs are equipped as Primary Weapons.

There are three models of wheelchair available: light, heavy, and arcane. You’re encouraged to consider the type of character you’re playing and the class they belong to, then choose the model that best matches that character concept.

ARMOR

Every armor has a name, base damage thresholds, and a base Armor Score. Some armor also has a feature.

  • An armor’s base armor score indicates how many Armor Slots it provides its wearer before additional bonuses are added to calculate their total Armor Score. A PC’s Armor Score can’t exceed 12.

  • An armor’s base thresholds determine its wearer’s major and severe damage thresholds before adding bonuses to calculate their final damage thresholds.

  • An armor’s feature is a special rule that stays in effect while the armor is equipped.

While unarmored, your character’s base Armor Score is 0, their Major threshold is equal to their level, and their Severe threshold is equal to twice their level.

REDUCING INCOMING DAMAGE

When you take damage, you can mark one Armor Slot to reduce the number of Hit Points you would mark by one. If your character has an Armor Score of 0, you can’t mark Armor Slots. If an effect temporarily increases your Armor Score,

it increases your available Armor Slots by the same amount; when the effect ends, so does the availability of these Armor Slots.

LOOT

Loot comprises any consumables or reusable items the party acquires.

Items can be used until sold, discarded, or lost.

To generate a random item, choose a rarity, roll the designated dice, and match the total to the item in the table:

  • Common: 1d12 or 2d12

  • Rare: 3d12 or 4d12

  • Uncommon: 2d12 or 3d12

  • Legendary: 4d12 or 5d12

@UUID[RollTable.KKqUrMMXPpm7uhYT]{Loot}

Consumables

Consumables are loot that can only be used once. You can hold up to five of each consumable at a time. Using a consumable doesn’t require a roll unless required by the GM or the demands of the fiction.

To generate a random consumable, choose a rarity, roll the designated dice, and match the total to the item in the table:

  • Common: 1d12 or 2d12

  • Rare: 3d12 or 4d12

  • Uncommon: 2d12 or 3d12

  • Legendary: 4d12 or 5d12

@UUID[RollTable.wZXyi343PSVVwWB3]{Consumables}

GOLD

Gold is an abstract measurement of how much wealth a character has, and is measured in handfuls, bags, and chests, with 10 handfuls to 1 bag, and 10 bags to 1 chest. When you have marked all of the slots in a category and you gain another gold reward in that category, mark a slot in the following category and clear all the slots in the current one.

For example, if you have 9 handfuls and gain another, you instead mark 1 bag and erase all handfuls. If you have 9 bags and gain another, you mark 1 chest and erase all bags.

You can’t have more than 1 chest, so if all your Gold slots are marked, you’ll need to spend some of your gold or store it somewhere else before you can acquire more.


Optional Rule: Gold Coins

If your group wants to track gold with more granularity, you can add coins as your lowest denomination. Following the established pattern, 10 coins equal 1 handful.


" }, "video": { "controls": true, From 774b6dbdcca072d10af66a87b045dfa1b4030a5d Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Wed, 20 Aug 2025 02:56:00 +0200 Subject: [PATCH 018/260] Fixed so character dice rolls await the DiceSoNice animation before consuming resources (#1024) --- module/dice/dhRoll.mjs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/module/dice/dhRoll.mjs b/module/dice/dhRoll.mjs index 6d691c20..ac340c64 100644 --- a/module/dice/dhRoll.mjs +++ b/module/dice/dhRoll.mjs @@ -84,7 +84,7 @@ export default class DHRoll extends Roll { static async toMessage(roll, config) { const cls = getDocumentClass('ChatMessage'), - msg = { + msgData = { type: this.messageType, user: game.user.id, title: roll.title, @@ -94,8 +94,16 @@ export default class DHRoll extends Roll { rolls: [roll] }; config.selectedRollMode ??= game.settings.get('core', 'rollMode'); - if (roll._evaluated) return await cls.create(msg, { rollMode: config.selectedRollMode }); - return msg; + + if (roll._evaluated) { + const message = await cls.create(msgData, { rollMode: config.selectedRollMode }); + + if (game.modules.get('dice-so-nice')?.active) { + await game.dice3d.waitFor3DAnimationByMessageID(message.id); + } + + return message; + } else return msgData; } /** @inheritDoc */ From af250d7a61ee953d384a70b476d9a252fa222bdf Mon Sep 17 00:00:00 2001 From: joaquinpereyra98 <24190917+joaquinpereyra98@users.noreply.github.com> Date: Tue, 19 Aug 2025 22:07:35 -0300 Subject: [PATCH 019/260] [BUG] - Deleting items in the scrollable window causes scrollbar to reset to top (#1025) Fixes #977 Co-authored-by: Joaquin Pereyra --- .../applications/sheets/actors/adversary.mjs | 19 ++++++++--- .../applications/sheets/actors/character.mjs | 6 ++++ .../applications/sheets/actors/companion.mjs | 5 ++- .../sheets/actors/environment.mjs | 8 +++-- .../less/sheets/actors/adversary/effects.less | 17 ++++++++++ .../less/sheets/actors/companion/effects.less | 17 ++++++++++ .../environment/potentialAdversaries.less | 17 ++++++++++ styles/less/sheets/index.less | 3 ++ templates/sheets/actors/adversary/effects.hbs | 34 ++++++++++--------- templates/sheets/actors/companion/effects.hbs | 34 ++++++++++--------- .../environment/potentialAdversaries.hbs | 2 +- 11 files changed, 122 insertions(+), 40 deletions(-) create mode 100644 styles/less/sheets/actors/adversary/effects.less create mode 100644 styles/less/sheets/actors/companion/effects.less create mode 100644 styles/less/sheets/actors/environment/potentialAdversaries.less diff --git a/module/applications/sheets/actors/adversary.mjs b/module/applications/sheets/actors/adversary.mjs index a5d9d8a6..b47cb85a 100644 --- a/module/applications/sheets/actors/adversary.mjs +++ b/module/applications/sheets/actors/adversary.mjs @@ -25,11 +25,22 @@ export default class AdversarySheet extends DHBaseActorSheet { }; static PARTS = { - sidebar: { template: 'systems/daggerheart/templates/sheets/actors/adversary/sidebar.hbs' }, + sidebar: { + template: 'systems/daggerheart/templates/sheets/actors/adversary/sidebar.hbs', + scrollable: ['.shortcut-items-section'] + }, header: { template: 'systems/daggerheart/templates/sheets/actors/adversary/header.hbs' }, - features: { template: 'systems/daggerheart/templates/sheets/actors/adversary/features.hbs' }, - notes: { template: 'systems/daggerheart/templates/sheets/actors/adversary/notes.hbs' }, - effects: { template: 'systems/daggerheart/templates/sheets/actors/adversary/effects.hbs' } + features: { + template: 'systems/daggerheart/templates/sheets/actors/adversary/features.hbs', + scrollable: ['.feature-section'] + }, + notes: { + template: 'systems/daggerheart/templates/sheets/actors/adversary/notes.hbs' + }, + effects: { + template: 'systems/daggerheart/templates/sheets/actors/adversary/effects.hbs', + scrollable: ['.effects-sections'] + } }; /** @inheritdoc */ diff --git a/module/applications/sheets/actors/character.mjs b/module/applications/sheets/actors/character.mjs index 92f6239b..0328f0dd 100644 --- a/module/applications/sheets/actors/character.mjs +++ b/module/applications/sheets/actors/character.mjs @@ -78,6 +78,7 @@ export default class CharacterSheet extends DHBaseActorSheet { static PARTS = { sidebar: { id: 'sidebar', + scrollable: ['.shortcut-items-section'], template: 'systems/daggerheart/templates/sheets/actors/character/sidebar.hbs' }, header: { @@ -86,22 +87,27 @@ export default class CharacterSheet extends DHBaseActorSheet { }, features: { id: 'features', + scrollable: ['.features-sections'], template: 'systems/daggerheart/templates/sheets/actors/character/features.hbs' }, loadout: { id: 'loadout', + scrollable: ['.items-section'], template: 'systems/daggerheart/templates/sheets/actors/character/loadout.hbs' }, inventory: { id: 'inventory', + scrollable: ['.items-section'], template: 'systems/daggerheart/templates/sheets/actors/character/inventory.hbs' }, biography: { id: 'biography', + scrollable: ['.items-section'], template: 'systems/daggerheart/templates/sheets/actors/character/biography.hbs' }, effects: { id: 'effects', + scrollable: ['.effects-sections'], template: 'systems/daggerheart/templates/sheets/actors/character/effects.hbs' } }; diff --git a/module/applications/sheets/actors/companion.mjs b/module/applications/sheets/actors/companion.mjs index 1105131d..2b82f50a 100644 --- a/module/applications/sheets/actors/companion.mjs +++ b/module/applications/sheets/actors/companion.mjs @@ -15,7 +15,10 @@ export default class DhCompanionSheet extends DHBaseActorSheet { static PARTS = { header: { template: 'systems/daggerheart/templates/sheets/actors/companion/header.hbs' }, details: { template: 'systems/daggerheart/templates/sheets/actors/companion/details.hbs' }, - effects: { template: 'systems/daggerheart/templates/sheets/actors/companion/effects.hbs' } + effects: { + template: 'systems/daggerheart/templates/sheets/actors/companion/effects.hbs', + scrollable: ['.effects-sections'] + } }; /* -------------------------------------------- */ diff --git a/module/applications/sheets/actors/environment.mjs b/module/applications/sheets/actors/environment.mjs index 9fd003c6..0389d2c9 100644 --- a/module/applications/sheets/actors/environment.mjs +++ b/module/applications/sheets/actors/environment.mjs @@ -27,9 +27,13 @@ export default class DhpEnvironment extends DHBaseActorSheet { /**@override */ static PARTS = { header: { template: 'systems/daggerheart/templates/sheets/actors/environment/header.hbs' }, - features: { template: 'systems/daggerheart/templates/sheets/actors/environment/features.hbs' }, + features: { + template: 'systems/daggerheart/templates/sheets/actors/environment/features.hbs', + scrollable: ['feature-section'] + }, potentialAdversaries: { - template: 'systems/daggerheart/templates/sheets/actors/environment/potentialAdversaries.hbs' + template: 'systems/daggerheart/templates/sheets/actors/environment/potentialAdversaries.hbs', + scrollable: ['items-sections'] }, notes: { template: 'systems/daggerheart/templates/sheets/actors/environment/notes.hbs' } }; diff --git a/styles/less/sheets/actors/adversary/effects.less b/styles/less/sheets/actors/adversary/effects.less new file mode 100644 index 00000000..4afe2454 --- /dev/null +++ b/styles/less/sheets/actors/adversary/effects.less @@ -0,0 +1,17 @@ +@import '../../../utils/colors.less'; + +.application.sheet.daggerheart.actor.dh-style.adversary { + .tab.effects { + .effects-sections { + display: flex; + flex-direction: column; + gap: 10px; + overflow-y: auto; + mask-image: linear-gradient(0deg, transparent 0%, black 5%); + padding-bottom: 20px; + + scrollbar-width: thin; + scrollbar-color: light-dark(@dark-blue, @golden) transparent; + } + } +} diff --git a/styles/less/sheets/actors/companion/effects.less b/styles/less/sheets/actors/companion/effects.less new file mode 100644 index 00000000..12e1d847 --- /dev/null +++ b/styles/less/sheets/actors/companion/effects.less @@ -0,0 +1,17 @@ +@import '../../../utils/colors.less'; + +.application.sheet.daggerheart.actor.dh-style.companion { + .tab.effects { + .effects-sections { + display: flex; + flex-direction: column; + gap: 10px; + overflow-y: auto; + mask-image: linear-gradient(0deg, transparent 0%, black 5%); + padding-bottom: 20px; + + scrollbar-width: thin; + scrollbar-color: light-dark(@dark-blue, @golden) transparent; + } + } +} diff --git a/styles/less/sheets/actors/environment/potentialAdversaries.less b/styles/less/sheets/actors/environment/potentialAdversaries.less new file mode 100644 index 00000000..6fd7af65 --- /dev/null +++ b/styles/less/sheets/actors/environment/potentialAdversaries.less @@ -0,0 +1,17 @@ +@import '../../../utils/colors.less'; + +.application.sheet.daggerheart.actor.dh-style.environment { + .tab.potentialAdversaries { + .items-section { + display: flex; + flex-direction: column; + gap: 10px; + overflow-y: auto; + mask-image: linear-gradient(0deg, transparent 0%, black 5%); + padding-bottom: 20px; + + scrollbar-width: thin; + scrollbar-color: light-dark(@dark-blue, @golden) transparent; + } + } +} \ No newline at end of file diff --git a/styles/less/sheets/index.less b/styles/less/sheets/index.less index 1ffb92fe..991837c0 100644 --- a/styles/less/sheets/index.less +++ b/styles/less/sheets/index.less @@ -4,6 +4,7 @@ @import './actors/adversary/header.less'; @import './actors/adversary/sheet.less'; @import './actors/adversary/sidebar.less'; +@import './actors/adversary/effects.less'; @import './actors/character/biography.less'; @import './actors/character/effects.less'; @@ -17,9 +18,11 @@ @import './actors/companion/details.less'; @import './actors/companion/header.less'; @import './actors/companion/sheet.less'; +@import './actors/companion/effects.less'; @import './actors/environment/actions.less'; @import './actors/environment/header.less'; +@import './actors/environment/potentialAdversaries.less'; @import './actors/environment/sheet.less'; @import './items/beastform.less'; diff --git a/templates/sheets/actors/adversary/effects.hbs b/templates/sheets/actors/adversary/effects.hbs index 325610e6..cefb6e57 100644 --- a/templates/sheets/actors/adversary/effects.hbs +++ b/templates/sheets/actors/adversary/effects.hbs @@ -1,20 +1,22 @@
- {{> 'daggerheart.inventory-items' - title='DAGGERHEART.GENERAL.activeEffects' - type='effect' - isGlassy=true - collection=effects.actives - canCreate=true - hideResources=true - }} +
+ {{> 'daggerheart.inventory-items' + title='DAGGERHEART.GENERAL.activeEffects' + type='effect' + isGlassy=true + collection=effects.actives + canCreate=true + hideResources=true + }} - {{> 'daggerheart.inventory-items' - title='DAGGERHEART.GENERAL.inactiveEffects' - type='effect' - isGlassy=true - collection=effects.inactives - canCreate=true - hideResources=true - }} + {{> 'daggerheart.inventory-items' + title='DAGGERHEART.GENERAL.inactiveEffects' + type='effect' + isGlassy=true + collection=effects.inactives + canCreate=true + hideResources=true + }} +
\ No newline at end of file diff --git a/templates/sheets/actors/companion/effects.hbs b/templates/sheets/actors/companion/effects.hbs index 325610e6..cefb6e57 100644 --- a/templates/sheets/actors/companion/effects.hbs +++ b/templates/sheets/actors/companion/effects.hbs @@ -1,20 +1,22 @@
- {{> 'daggerheart.inventory-items' - title='DAGGERHEART.GENERAL.activeEffects' - type='effect' - isGlassy=true - collection=effects.actives - canCreate=true - hideResources=true - }} +
+ {{> 'daggerheart.inventory-items' + title='DAGGERHEART.GENERAL.activeEffects' + type='effect' + isGlassy=true + collection=effects.actives + canCreate=true + hideResources=true + }} - {{> 'daggerheart.inventory-items' - title='DAGGERHEART.GENERAL.inactiveEffects' - type='effect' - isGlassy=true - collection=effects.inactives - canCreate=true - hideResources=true - }} + {{> 'daggerheart.inventory-items' + title='DAGGERHEART.GENERAL.inactiveEffects' + type='effect' + isGlassy=true + collection=effects.inactives + canCreate=true + hideResources=true + }} +
\ No newline at end of file diff --git a/templates/sheets/actors/environment/potentialAdversaries.hbs b/templates/sheets/actors/environment/potentialAdversaries.hbs index cc246312..5f4d039e 100644 --- a/templates/sheets/actors/environment/potentialAdversaries.hbs +++ b/templates/sheets/actors/environment/potentialAdversaries.hbs @@ -3,7 +3,7 @@ data-tab='{{tabs.potentialAdversaries.id}}' data-group='{{tabs.potentialAdversaries.group}}' > -
+
{{#each document.system.potentialAdversaries as |category categoryId|}} {{> 'daggerheart.inventory-items' title=category.label From 7a6bbe34888dd4687f797565bca5001f318c3d59 Mon Sep 17 00:00:00 2001 From: Murilo Brito <91566541+moliloo@users.noreply.github.com> Date: Wed, 20 Aug 2025 05:14:46 -0300 Subject: [PATCH 020/260] add light theme for chat messages (#1016) --- styles/less/global/chat.less | 15 ++++- styles/less/global/inventory-item.less | 2 +- styles/less/ui/chat/ability-use.less | 40 ++++++++++-- styles/less/ui/chat/action.less | 31 ++++++++- styles/less/ui/chat/chat.less | 50 +++++++++++++- styles/less/ui/chat/downtime.less | 29 +++++++++ styles/less/ui/chat/sheet.less | 90 +++++++++++++++++++++----- styles/less/utils/colors.less | 1 + 8 files changed, 231 insertions(+), 27 deletions(-) diff --git a/styles/less/global/chat.less b/styles/less/global/chat.less index 37ec993d..bf29a05c 100644 --- a/styles/less/global/chat.less +++ b/styles/less/global/chat.less @@ -7,6 +7,15 @@ #chat-notifications .chat-log { .chat-message { background-image: url('../assets/parchments/dh-parchment-light.png'); + + .message-header .message-header-metadata .message-metadata, + .message-header .message-header-main .message-sub-header-container { + color: @dark; + } + + .message-header .message-header-main .message-sub-header-container h4 { + color: @dark-blue; + } } } } @@ -36,7 +45,7 @@ .message-metadata { font-family: @font-body; - color: light-dark(@dark, @beige); + color: @beige; } } @@ -59,14 +68,14 @@ display: flex; flex-direction: column; justify-content: space-between; - color: light-dark(@dark, @beige); + color: @beige; h4 { font-size: 16px; font-weight: bold; margin-bottom: 0; font-family: @font-subtitle; - color: light-dark(@dark-blue, @golden); + color: @golden; } } } diff --git a/styles/less/global/inventory-item.less b/styles/less/global/inventory-item.less index 6c58d31a..d63c658e 100644 --- a/styles/less/global/inventory-item.less +++ b/styles/less/global/inventory-item.less @@ -135,7 +135,7 @@ .label { gap: 4px; - color: @beige-80; + color: light-dark(@dark-80, @beige-80); } } } diff --git a/styles/less/ui/chat/ability-use.less b/styles/less/ui/chat/ability-use.less index 7993d29d..58897697 100644 --- a/styles/less/ui/chat/ability-use.less +++ b/styles/less/ui/chat/ability-use.less @@ -2,6 +2,38 @@ @import '../../utils/fonts.less'; @import '../../utils/spacing.less'; +.theme-light { + .daggerheart.chat.domain-card { + .domain-card-move .domain-card-header { + border-bottom: 1px solid @dark-blue; + + &:hover { + background: @dark-blue-10; + } + + .domain-label { + .title { + color: @dark-blue; + } + + .tags .tag { + background: @dark-15; + border: 1px solid @dark; + color: @dark; + } + } + + .fa-chevron-down { + color: @dark-blue; + } + } + + .description { + color: @dark; + } + } +} + .daggerheart.chat { &.domain-card { display: flex; @@ -41,7 +73,7 @@ border-bottom: 1px solid @golden; &:hover { - background: light-dark(@dark-blue-10, @golden-10); + background: @golden-10; cursor: pointer; transition: all 0.3s ease; } @@ -73,9 +105,9 @@ padding: 3px 5px; font-size: 12px; - background: light-dark(@dark-15, @beige-15); - border: 1px solid light-dark(@dark, @beige); - color: light-dark(@dark, @beige); + background: @beige-15; + border: 1px solid @beige; + color: @beige; border-radius: 3px; } } diff --git a/styles/less/ui/chat/action.less b/styles/less/ui/chat/action.less index 0200c9dc..82cc3210 100644 --- a/styles/less/ui/chat/action.less +++ b/styles/less/ui/chat/action.less @@ -2,6 +2,35 @@ @import '../../utils/fonts.less'; @import '../../utils/spacing.less'; +.theme-light { + .daggerheart.chat.action { + .action-move .action-section { + border-bottom: 1px solid @dark-blue; + + &:hover { + background: @dark-blue-10; + } + + .action-header { + .title { + color: @dark-blue; + } + .label { + color: @dark; + } + } + + .fa-chevron-down { + color: @dark-blue; + } + } + + .description { + color: @dark; + } + } +} + .daggerheart.chat { &.action { display: flex; @@ -34,7 +63,7 @@ border-bottom: 1px solid @golden; &:hover { - background: light-dark(@dark-blue-10, @golden-10); + background: @golden-10; cursor: pointer; transition: all 0.3s ease; } diff --git a/styles/less/ui/chat/chat.less b/styles/less/ui/chat/chat.less index 81af3d23..c6ed95ca 100644 --- a/styles/less/ui/chat/chat.less +++ b/styles/less/ui/chat/chat.less @@ -2,6 +2,49 @@ @import '../../utils/fonts.less'; @import '../../utils/spacing.less'; +.theme-light { + .daggerheart, + #chat-notifications { + --text-color: @dark-blue; + --bg-color: @dark-blue-40; + + .message-content .chat-roll { + .roll-part-header { + span, + span:before, + span:after { + color: @dark-blue; + } + &:before { + background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, @dark-blue 100%); + color: @dark-blue; + } + + &:after { + background: linear-gradient(90deg, @dark-blue 0%, rgba(0, 0, 0, 0) 100%); + color: @dark-blue; + } + } + .roll-section { + .roll-part-content { + .roll-result-value { + color: @dark-blue; + } + + .dice-tooltip .wrapper .roll-die { + color: @beige; + } + } + } + } + + .chat-message .roll-formula { + background: @dark-15; + color: @dark; + } + } +} + .daggerheart.chat { &.resource-roll { .reroll-message { @@ -27,8 +70,8 @@ .daggerheart, #chat-notifications { .chat-message { - --text-color: light-dark(@dark-blue, @golden); - --bg-color: light-dark(@dark-blue-40, @golden-40); + --text-color: @golden; + --bg-color: @golden-40; [data-use-perm='false'] { pointer-events: none; @@ -85,7 +128,7 @@ display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; - color: light-dark(@dark, @beige); + color: @beige; margin: 10px 0; span { @@ -427,6 +470,7 @@ gap: 5px; margin-top: 8px; button { + height: 32px; flex: 1; } } diff --git a/styles/less/ui/chat/downtime.less b/styles/less/ui/chat/downtime.less index 7c28c835..8b898c43 100644 --- a/styles/less/ui/chat/downtime.less +++ b/styles/less/ui/chat/downtime.less @@ -2,6 +2,35 @@ @import '../../utils/fonts.less'; @import '../../utils/spacing.less'; +.theme-light { + .daggerheart.chat.downtime { + .downtime-moves-list .downtime-move { + &:hover { + background: @dark-blue-10; + } + + .downtime-label { + border-bottom: 1px solid @dark-blue; + + .header-label .title { + color: @dark-blue; + } + .header-label .label { + color: @dark; + } + } + + .fa-chevron-down { + color: @dark-blue; + } + } + + .description { + color: @dark; + } + } +} + .daggerheart.chat { &.downtime { display: flex; diff --git a/styles/less/ui/chat/sheet.less b/styles/less/ui/chat/sheet.less index da66c12f..59fa39dc 100644 --- a/styles/less/ui/chat/sheet.less +++ b/styles/less/ui/chat/sheet.less @@ -1,6 +1,66 @@ @import '../../utils/colors.less'; @import '../../utils/fonts.less'; +.theme-light { + .chat-message .message-content { + color: @dark; + + blockquote { + border-left: 5px solid @dark-blue-40; + } + + a[href] { + color: @dark-blue; + } + + a[href]:hover, + a[href].active { + font-weight: bold; + text-shadow: 0 0 8px @dark-blue; + } + + button { + background: transparent; + border: 1px solid @dark-blue; + color: @dark-blue; + + &:hover { + background: @light-black; + color: @dark-blue; + } + + &:disabled { + background: transparent; + color: @dark-blue; + + &:hover { + background: transparent; + color: @dark-blue; + } + } + + &.reverted { + background: @dark-blue-10; + color: @dark-blue; + border: 1px solid @dark; + &:hover { + background: transparent; + color: @dark-blue; + } + img { + border-radius: 3px; + } + } + } + + .roll-buttons button { + height: 40px; + font-family: @font-body; + font-weight: bold; + } + } +} + .chat-message.dh-chat-message { .message-content { padding: 0; @@ -17,7 +77,7 @@ .message-content { padding: 0 8px; font-family: @font-body; - color: light-dark(@dark, @beige); + color: @beige; blockquote { border-left: 5px solid light-dark(@dark-blue-40, @golden-40); @@ -34,15 +94,15 @@ } button { - background: light-dark(transparent, @golden); - border: 1px solid light-dark(@dark-blue, @dark-blue); - color: light-dark(@dark-blue, @dark-blue); + background: @golden; + border: 1px solid @dark-blue; + color: @dark-blue; outline: none; box-shadow: none; &:hover { - background: light-dark(@light-black, @dark-blue); - color: light-dark(@dark-blue, @golden); + background: @dark-blue; + color: @golden; } &.glow { @@ -50,24 +110,24 @@ } &:disabled { - background: light-dark(transparent, @golden); - color: light-dark(@dark-blue, @dark-blue); + background: @golden; + color: @dark-blue; opacity: 0.6; cursor: not-allowed; &:hover { - background: light-dark(transparent, @golden); - color: light-dark(@dark-blue, @dark-blue); + background: @golden; + color: @dark-blue; } } &.reverted { - background: light-dark(@dark-blue-10, @golden-10); - color: light-dark(@dark-blue, @golden); - border: 1px solid light-dark(@dark, transparent); + background: @golden-10; + color: @golden; + border: 1px solid transparent; &:hover { - background: light-dark(transparent, @golden); - color: light-dark(@dark-blue, @dark-blue); + background: @golden; + color: @dark-blue; } img { border-radius: 3px; diff --git a/styles/less/utils/colors.less b/styles/less/utils/colors.less index dcc7cc5b..9ce201a3 100755 --- a/styles/less/utils/colors.less +++ b/styles/less/utils/colors.less @@ -53,6 +53,7 @@ @dark: #222; @dark-15: #22222215; @dark-40: #22222240; +@dark-80: #22222280; @dark-filter: brightness(0) saturate(100%); @deep-black: #0e0d15; From 60b55619e1035e5a10509e22055af079a76ac946 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Fri, 22 Aug 2025 01:05:09 +1000 Subject: [PATCH 021/260] [PR] [Feature] 652 Allow override range measurement settings (#1030) * Look for rangeMeasurementSettingsOverride on the scene to switch off DH global range measurement settings. * Part progress on adding config tab to scene config * Hard coded template; no value applied/saved * Flag fix * Use the flags setting * Clean up * Remove import * Better initialisation of PARTS and TABS * Fix localisation --------- Co-authored-by: Chris Ryan Co-authored-by: WBHarry --- daggerheart.mjs | 5 ++++ lang/en.json | 11 +++++++ module/applications/_module.mjs | 1 + module/applications/scene/_module.mjs | 1 + .../scene/sceneConfigSettings.mjs | 25 ++++++++++++++++ module/canvas/placeables/measuredTemplate.mjs | 30 +++++++++++++------ module/canvas/placeables/ruler.mjs | 6 ++-- module/canvas/placeables/tokenRuler.mjs | 6 ++-- module/systemRegistration/handlebars.mjs | 3 ++ templates/scene/dh-config.hbs | 9 ++++++ 10 files changed, 82 insertions(+), 15 deletions(-) create mode 100644 module/applications/scene/_module.mjs create mode 100644 module/applications/scene/sceneConfigSettings.mjs create mode 100644 templates/scene/dh-config.hbs diff --git a/daggerheart.mjs b/daggerheart.mjs index 795764cc..9ed5feb1 100644 --- a/daggerheart.mjs +++ b/daggerheart.mjs @@ -145,6 +145,11 @@ Hooks.once('init', () => { // Make Compendium Dialog resizable foundry.applications.sidebar.apps.Compendium.DEFAULT_OPTIONS.window.resizable = true; + DocumentSheetConfig.registerSheet(foundry.documents.Scene, SYSTEM.id, applications.scene.DhSceneConfigSettings, { + makeDefault: true, + label: 'Daggerheart' + }); + settingsRegistration.registerDHSettings(); RegisterHandlebarsHelpers.registerHelpers(); diff --git a/lang/en.json b/lang/en.json index a7a615f5..d8a4b08f 100755 --- a/lang/en.json +++ b/lang/en.json @@ -26,6 +26,14 @@ "CONTROLS": { "inFront": "In Front" }, + "SCENE": { + "TABS": { + "SHEET": { + "dh": "Daggerheart" + } + } + }, + "DAGGERHEART": { "ACTIONS": { "TYPES": { @@ -2283,6 +2291,9 @@ "ResetSettings": { "resetConfirmationTitle": "Reset Settings", "resetConfirmationText": "Are you sure you want to reset the {settings}?" + }, + "Scene": { + "rangeMeasurementOverride": "Override Global Range Measurement Settings" } }, "UI": { diff --git a/module/applications/_module.mjs b/module/applications/_module.mjs index d4ceb229..3dd0c78f 100644 --- a/module/applications/_module.mjs +++ b/module/applications/_module.mjs @@ -2,6 +2,7 @@ export * as characterCreation from './characterCreation/_module.mjs'; export * as dialogs from './dialogs/_module.mjs'; export * as hud from './hud/_module.mjs'; export * as levelup from './levelup/_module.mjs'; +export * as scene from './scene/_module.mjs'; export * as settings from './settings/_module.mjs'; export * as sheets from './sheets/_module.mjs'; export * as sheetConfigs from './sheets-configs/_module.mjs'; diff --git a/module/applications/scene/_module.mjs b/module/applications/scene/_module.mjs new file mode 100644 index 00000000..6dc59081 --- /dev/null +++ b/module/applications/scene/_module.mjs @@ -0,0 +1 @@ +export { default as DhSceneConfigSettings } from './sceneConfigSettings.mjs'; \ No newline at end of file diff --git a/module/applications/scene/sceneConfigSettings.mjs b/module/applications/scene/sceneConfigSettings.mjs new file mode 100644 index 00000000..2ad7421a --- /dev/null +++ b/module/applications/scene/sceneConfigSettings.mjs @@ -0,0 +1,25 @@ +export default class DhSceneConfigSettings extends foundry.applications.sheets.SceneConfig { + constructor(options, ...args) { + super(options, ...args); + } + + static buildParts() { + const { footer, ...parts } = super.PARTS; + const tmpParts = { + ...parts, + dh: { template: "systems/daggerheart/templates/scene/dh-config.hbs" }, + footer + } + return tmpParts; + } + + static PARTS = DhSceneConfigSettings.buildParts(); + + static buildTabs() { + super.TABS.sheet.tabs.push({ id: "dh", icon: "fa-solid" }); + return super.TABS; + } + + static TABS = DhSceneConfigSettings.buildTabs(); + +} \ No newline at end of file diff --git a/module/canvas/placeables/measuredTemplate.mjs b/module/canvas/placeables/measuredTemplate.mjs index c9950650..49142685 100644 --- a/module/canvas/placeables/measuredTemplate.mjs +++ b/module/canvas/placeables/measuredTemplate.mjs @@ -10,29 +10,41 @@ export default class DhMeasuredTemplate extends foundry.canvas.placeables.Measur const splitRulerText = this.ruler.text.split(' '); if (splitRulerText.length > 0) { const rulerValue = Number(splitRulerText[0]); - const vagueLabel = this.constructor.getDistanceLabel(rulerValue, rangeMeasurementSettings); - this.ruler.text = vagueLabel; + const result = this.constructor.getRangeLabels(rulerValue, rangeMeasurementSettings); + this.ruler.text = result.distance + result.units ? (' ' + result.units) : ''; } } } - static getDistanceLabel(distance, settings) { + static getRangeLabels(distance, settings) { + let result = { distance: '', units: null } + const rangeMeasurementOverride = canvas.scene.flags.daggerheart?.rangeMeasurementOverride; + + if (rangeMeasurementOverride === true) { + result.distance = distance; + result.units = canvas.scene?.grid?.units; + return result + } if (distance <= settings.melee) { - return game.i18n.localize('DAGGERHEART.CONFIG.Range.melee.name'); + result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.melee.name'); + return result; } if (distance <= settings.veryClose) { - return game.i18n.localize('DAGGERHEART.CONFIG.Range.veryClose.name'); + result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.veryClose.name'); + return result; } if (distance <= settings.close) { - return game.i18n.localize('DAGGERHEART.CONFIG.Range.close.name'); + result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.close.name'); + return result; } if (distance <= settings.far) { - return game.i18n.localize('DAGGERHEART.CONFIG.Range.far.name'); + result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.far.name'); + return result; } if (distance > settings.far) { - return game.i18n.localize('DAGGERHEART.CONFIG.Range.veryFar.name'); + result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.veryFar.name'); } - return ''; + return result; } } diff --git a/module/canvas/placeables/ruler.mjs b/module/canvas/placeables/ruler.mjs index 6585a1cd..6e2f220d 100644 --- a/module/canvas/placeables/ruler.mjs +++ b/module/canvas/placeables/ruler.mjs @@ -8,9 +8,9 @@ export default class DhpRuler extends foundry.canvas.interaction.Ruler { const range = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.variantRules).rangeMeasurement; if (range.enabled) { - const distance = DhMeasuredTemplate.getDistanceLabel(waypoint.measurement.distance.toNearest(0.01), range); - context.cost = { total: distance, units: null }; - context.distance = { total: distance, units: null }; + const result = DhMeasuredTemplate.getRangeLabels(waypoint.measurement.distance.toNearest(0.01), range); + context.cost = { total: result.distance, units: result.units }; + context.distance = { total: result.distance, units: result.units }; } return context; diff --git a/module/canvas/placeables/tokenRuler.mjs b/module/canvas/placeables/tokenRuler.mjs index ff8fc0d5..056953f8 100644 --- a/module/canvas/placeables/tokenRuler.mjs +++ b/module/canvas/placeables/tokenRuler.mjs @@ -8,9 +8,9 @@ export default class DhpTokenRuler extends foundry.canvas.placeables.tokens.Toke const range = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.variantRules).rangeMeasurement; if (range.enabled) { - const distance = DhMeasuredTemplate.getDistanceLabel(waypoint.measurement.distance.toNearest(0.01), range); - context.cost = { total: distance, units: null }; - context.distance = { total: distance, units: null }; + const result = DhMeasuredTemplate.getRangeLabels(waypoint.measurement.distance.toNearest(0.01), range); + context.cost = { total: result.distance, units: result.units }; + context.distance = { total: result.distance, units: result.units }; } return context; diff --git a/module/systemRegistration/handlebars.mjs b/module/systemRegistration/handlebars.mjs index ff741b91..cb7be42a 100644 --- a/module/systemRegistration/handlebars.mjs +++ b/module/systemRegistration/handlebars.mjs @@ -35,5 +35,8 @@ export const preloadHandlebarsTemplates = async function () { 'systems/daggerheart/templates/ui/chat/parts/damage-part.hbs', 'systems/daggerheart/templates/ui/chat/parts/target-part.hbs', 'systems/daggerheart/templates/ui/chat/parts/button-part.hbs', + + 'systems/daggerheart/templates/scene/dh-config.hbs', + ]); }; diff --git a/templates/scene/dh-config.hbs b/templates/scene/dh-config.hbs new file mode 100644 index 00000000..0d20c302 --- /dev/null +++ b/templates/scene/dh-config.hbs @@ -0,0 +1,9 @@ +
+
+
+ + +
+
+
\ No newline at end of file From 888cf9172bb69c0d444201527c408c9d6f53a825 Mon Sep 17 00:00:00 2001 From: Luiz HD Costa Date: Thu, 21 Aug 2025 22:35:36 -0300 Subject: [PATCH 022/260] [Community PR] Localize hardcoded text (#1002) * Localize remaining hardcoded user-facing strings * Introduce pluralize helper for localizing strings * Localize missing strings from ItemBrowser --- lang/en.json | 39 +++++- module/applications/ui/itemBrowser.mjs | 15 ++- module/config/itemBrowserConfig.mjs | 128 +++++++++---------- module/data/fields/action/costField.mjs | 2 +- module/data/fields/action/usesField.mjs | 2 +- module/helpers/handlebarsHelper.mjs | 21 ++- templates/sheets/actors/character/header.hbs | 2 +- templates/ui/chat/parts/target-part.hbs | 6 +- templates/ui/itemBrowser/itemBrowser.hbs | 14 +- 9 files changed, 147 insertions(+), 82 deletions(-) diff --git a/lang/en.json b/lang/en.json index 63b18219..1bddbad3 100755 --- a/lang/en.json +++ b/lang/en.json @@ -2347,6 +2347,42 @@ "playerMessage": "{user} rerolled their {name}" } }, + "ItemBrowser": { + "title": "Daggerheart Compendium Browser", + "hint": "Select a Folder in sidebar to start browsing through the compendium", + "searchPlaceholder": "Search...", + "columnName": "Name", + "tooltipFilters": "Filters", + "tooltipErase": "Erase", + "difficultyMin": "Difficulty (Min)", + "difficultyMax": "Difficulty (Max)", + "hitPointsMin": "Hit Points (Min)", + "hitPointsMax": "Hit Points (Max)", + "stressMin": "Stress (Min)", + "stressMax": "Stress (Max)", + "armorScoreMin": "Armor Score (Min)", + "armorScoreMax": "Armor Score (Max)", + "levelMin": "Level (Min)", + "levelMax": "Level (Max)", + "recallCostMin": "Recall Cost (Min)", + "recallCostMax": "Recall Cost (Max)", + "evasionMin": "Evasion (Min)", + "evasionMax": "Evasion (Max)", + "subtype": "Subtype", + "folders": { + "adversaries": "Adversaries", + "ancestries": "Ancestries", + "equipment": "Equipment", + "classes": "Classes", + "subclasses": "Subclasses", + "domainCards": "Domain Cards", + "communities": "Communities", + "environments": "Environments", + "beastforms": "Beastforms", + "features": "Features", + "items": "Items" + } + }, "Notifications": { "adversaryMissing": "The linked adversary doesn't exist in the world.", "beastformInapplicable": "A beastform can only be applied to a Character.", @@ -2406,7 +2442,8 @@ "beastformEquipWeapon": "You cannot use weapons while in a Beastform.", "loadoutMaxReached": "You've reached maximum loadout. Move atleast one domain card to the vault, or increase the limit in homebrew settings if desired.", "domainMaxReached": "You've reached the maximum domains for the class. Increase the limit in homebrew settings if desired.", - "insufficientResources": "You have insufficient resources", + "insufficientResources": "You don't have enough resources to use that action.", + "actionNoUsesRemaining": "That action doesn't have remaining uses.", "multiclassAlreadyPresent": "You already have a class and multiclass", "subclassesAlreadyPresent": "You already have a class and multiclass subclass", "noDiceSystem": "Your selected dice {system} does not have a {faces} dice" diff --git a/module/applications/ui/itemBrowser.mjs b/module/applications/ui/itemBrowser.mjs index f0ad98db..3a31bd4e 100644 --- a/module/applications/ui/itemBrowser.mjs +++ b/module/applications/ui/itemBrowser.mjs @@ -154,7 +154,7 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { Object.values(config).forEach(c => { const folder = { id: c.id, - label: c.label, + label: game.i18n.localize(c.label), selected: (!parent || parent.selected) && this.selectedMenu.path[depth] === c.id }; folder.folders = c.folders @@ -173,11 +173,16 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { folderPath = `${compendium}.folders.${folderId}`, folderData = foundry.utils.getProperty(config, folderPath); + const columns = ItemBrowser.getFolderConfig(folderData).map(col => ({ + ...col, + label: game.i18n.localize(col.label) + })); + this.selectedMenu = { path: folderPath.split('.'), data: { ...folderData, - columns: ItemBrowser.getFolderConfig(folderData) + columns: columns } }; @@ -237,6 +242,12 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { else if (typeof f.choices === 'function') { f.choices = f.choices(); } + + // Clear field label so template uses our custom label parameter + if (f.field && f.label) { + f.field.label = undefined; + } + f.name ??= f.key; f.value = this.presets?.filter?.[f.name]?.value ?? null; }); diff --git a/module/config/itemBrowserConfig.mjs b/module/config/itemBrowserConfig.mjs index 6e3c0dea..0cb42d2c 100644 --- a/module/config/itemBrowserConfig.mjs +++ b/module/config/itemBrowserConfig.mjs @@ -3,63 +3,63 @@ export const typeConfig = { columns: [ { key: "system.tier", - label: "Tier" + label: "DAGGERHEART.GENERAL.Tiers.singular" }, { key: "system.type", - label: "Type" + label: "DAGGERHEART.GENERAL.type" } ], filters: [ { key: "system.tier", - label: "Tier", + label: "DAGGERHEART.GENERAL.Tiers.singular", field: 'system.api.models.actors.DhAdversary.schema.fields.tier' }, { key: "system.type", - label: "Type", + label: "DAGGERHEART.GENERAL.type", field: 'system.api.models.actors.DhAdversary.schema.fields.type' }, { key: "system.difficulty", name: "difficulty.min", - label: "Difficulty (Min)", + label: "DAGGERHEART.UI.ItemBrowser.difficultyMin", field: 'system.api.models.actors.DhAdversary.schema.fields.difficulty', operator: "gte" }, { key: "system.difficulty", name: "difficulty.max", - label: "Difficulty (Max)", + label: "DAGGERHEART.UI.ItemBrowser.difficultyMax", field: 'system.api.models.actors.DhAdversary.schema.fields.difficulty', operator: "lte" }, { key: "system.resources.hitPoints.max", name: "hp.min", - label: "Hit Points (Min)", + label: "DAGGERHEART.UI.ItemBrowser.hitPointsMin", field: 'system.api.models.actors.DhAdversary.schema.fields.resources.fields.hitPoints.fields.max', operator: "gte" }, { key: "system.resources.hitPoints.max", name: "hp.max", - label: "Hit Points (Max)", + label: "DAGGERHEART.UI.ItemBrowser.hitPointsMax", field: 'system.api.models.actors.DhAdversary.schema.fields.resources.fields.hitPoints.fields.max', operator: "lte" }, { key: "system.resources.stress.max", name: "stress.min", - label: "Stress (Min)", + label: "DAGGERHEART.UI.ItemBrowser.stressMin", field: 'system.api.models.actors.DhAdversary.schema.fields.resources.fields.stress.fields.max', operator: "gte" }, { key: "system.resources.stress.max", name: "stress.max", - label: "Stress (Max)", + label: "DAGGERHEART.UI.ItemBrowser.stressMax", field: 'system.api.models.actors.DhAdversary.schema.fields.resources.fields.stress.fields.max', operator: "lte" }, @@ -69,70 +69,70 @@ export const typeConfig = { columns: [ { key: "type", - label: "Type" + label: "DAGGERHEART.GENERAL.type" }, { key: "system.secondary", - label: "Subtype", + label: "DAGGERHEART.UI.ItemBrowser.subtype", format: (isSecondary) => isSecondary ? "secondary" : (isSecondary === false ? "primary" : '-') }, { key: "system.tier", - label: "Tier" + label: "DAGGERHEART.GENERAL.Tiers.singular" } ], filters: [ { key: "type", - label: "Type", + label: "DAGGERHEART.GENERAL.type", choices: () => CONFIG.Item.documentClass.TYPES.filter(t => ["armor", "weapon", "consumable", "loot"].includes(t)).map(t => ({ value: t, label: t })) }, { key: "system.secondary", - label: "Subtype", + label: "DAGGERHEART.UI.ItemBrowser.subtype", choices: [ - { value: false, label: "Primary Weapon"}, - { value: true, label: "Secondary Weapon"} + { value: false, label: "DAGGERHEART.ITEMS.Weapon.primaryWeapon" }, + { value: true, label: "DAGGERHEART.ITEMS.Weapon.secondaryWeapon" } ] }, { key: "system.tier", - label: "Tier", - choices: [{ value: "1", label: "1"}, { value: "2", label: "2"}, { value: "3", label: "3"}, { value: "4", label: "4"}] + label: "DAGGERHEART.GENERAL.Tiers.singular", + choices: [{ value: "1", label: "1" }, { value: "2", label: "2" }, { value: "3", label: "3" }, { value: "4", label: "4" }] }, { key: "system.burden", - label: "Burden", + label: "DAGGERHEART.GENERAL.burden", field: 'system.api.models.items.DHWeapon.schema.fields.burden' }, { key: "system.attack.roll.trait", - label: "Trait", + label: "DAGGERHEART.GENERAL.Trait.single", field: 'system.api.models.actions.actionsTypes.attack.schema.fields.roll.fields.trait' }, { key: "system.attack.range", - label: "Range", + label: "DAGGERHEART.GENERAL.range", field: 'system.api.models.actions.actionsTypes.attack.schema.fields.range' }, { key: "system.baseScore", name: "armor.min", - label: "Armor Score (Min)", + label: "DAGGERHEART.UI.ItemBrowser.armorScoreMin", field: 'system.api.models.items.DHArmor.schema.fields.baseScore', operator: "gte" }, { key: "system.baseScore", name: "armor.max", - label: "Armor Score (Max)", + label: "DAGGERHEART.UI.ItemBrowser.armorScoreMax", field: 'system.api.models.items.DHArmor.schema.fields.baseScore', operator: "lte" }, { key: "system.itemFeatures", - label: "Features", - choices: () => [...Object.entries(CONFIG.DH.ITEM.weaponFeatures), ...Object.entries(CONFIG.DH.ITEM.armorFeatures)].map(([k,v]) => ({ value: k, label: v.label})), + label: "DAGGERHEART.GENERAL.features", + choices: () => [...Object.entries(CONFIG.DH.ITEM.weaponFeatures), ...Object.entries(CONFIG.DH.ITEM.armorFeatures)].map(([k, v]) => ({ value: k, label: v.label })), operator: "contains3" } ] @@ -149,54 +149,54 @@ export const typeConfig = { columns: [ { key: "system.type", - label: "Type" + label: "DAGGERHEART.GENERAL.type" }, { key: "system.domain", - label: "Domain" + label: "DAGGERHEART.GENERAL.Domain.single" }, { key: "system.level", - label: "Level" + label: "DAGGERHEART.GENERAL.level" } ], filters: [ { key: "system.type", - label: "Type", + label: "DAGGERHEART.GENERAL.type", field: 'system.api.models.items.DHDomainCard.schema.fields.type' }, { key: "system.domain", - label: "Domain", + label: "DAGGERHEART.GENERAL.Domain.single", field: 'system.api.models.items.DHDomainCard.schema.fields.domain', operator: "contains2" }, { key: "system.level", name: "level.min", - label: "Level (Min)", + label: "DAGGERHEART.UI.ItemBrowser.levelMin", field: 'system.api.models.items.DHDomainCard.schema.fields.level', operator: "gte" }, { key: "system.level", name: "level.max", - label: "Level (Max)", + label: "DAGGERHEART.UI.ItemBrowser.levelMax", field: 'system.api.models.items.DHDomainCard.schema.fields.level', operator: "lte" }, { key: "system.recallCost", name: "recall.min", - label: "Recall Cost (Min)", + label: "DAGGERHEART.UI.ItemBrowser.recallCostMin", field: 'system.api.models.items.DHDomainCard.schema.fields.recallCost', operator: "gte" }, { key: "system.recallCost", name: "recall.max", - label: "Recall Cost (Max)", + label: "DAGGERHEART.UI.ItemBrowser.recallCostMax", field: 'system.api.models.items.DHDomainCard.schema.fields.recallCost', operator: "lte" } @@ -206,50 +206,50 @@ export const typeConfig = { columns: [ { key: "system.evasion", - label: "Evasion" + label: "DAGGERHEART.GENERAL.evasion" }, { key: "system.hitPoints", - label: "Hit Points" + label: "DAGGERHEART.GENERAL.HitPoints.plural" }, { key: "system.domains", - label: "Domains" + label: "DAGGERHEART.GENERAL.Domain.plural" } ], filters: [ { key: "system.evasion", name: "evasion.min", - label: "Evasion (Min)", + label: "DAGGERHEART.UI.ItemBrowser.evasionMin", field: 'system.api.models.items.DHClass.schema.fields.evasion', operator: "gte" }, { key: "system.evasion", name: "evasion.max", - label: "Evasion (Max)", + label: "DAGGERHEART.UI.ItemBrowser.evasionMax", field: 'system.api.models.items.DHClass.schema.fields.evasion', operator: "lte" }, { key: "system.hitPoints", name: "hp.min", - label: "Hit Points (Min)", + label: "DAGGERHEART.UI.ItemBrowser.hitPointsMin", field: 'system.api.models.items.DHClass.schema.fields.hitPoints', operator: "gte" }, { key: "system.hitPoints", name: "hp.max", - label: "Hit Points (Max)", + label: "DAGGERHEART.UI.ItemBrowser.hitPointsMax", field: 'system.api.models.items.DHClass.schema.fields.hitPoints', operator: "lte" }, { key: "system.domains", - label: "Domains", - choices: () => Object.values(CONFIG.DH.DOMAIN.domains).map(d => ({ value: d.id, label: d.label})), + label: "DAGGERHEART.GENERAL.Domain.plural", + choices: () => Object.values(CONFIG.DH.DOMAIN.domains).map(d => ({ value: d.id, label: d.label })), operator: "contains2" } ] @@ -258,14 +258,14 @@ export const typeConfig = { columns: [ { key: "id", - label: "Class", + label: "TYPES.Item.class", format: (id) => { return ""; } }, { key: "system.spellcastingTrait", - label: "Spellcasting Trait" + label: "DAGGERHEART.ITEMS.Subclass.spellcastingTrait" } ], filters: [] @@ -274,22 +274,22 @@ export const typeConfig = { columns: [ { key: "system.tier", - label: "Tier" + label: "DAGGERHEART.GENERAL.Tiers.singular" }, { key: "system.mainTrait", - label: "Main Trait" + label: "DAGGERHEART.GENERAL.Trait.single" } ], filters: [ { key: "system.tier", - label: "Tier", + label: "DAGGERHEART.GENERAL.Tiers.singular", field: 'system.api.models.items.DHBeastform.schema.fields.tier' }, { key: "system.mainTrait", - label: "Main Trait", + label: "DAGGERHEART.GENERAL.Trait.single", field: 'system.api.models.items.DHBeastform.schema.fields.mainTrait' } ] @@ -304,20 +304,20 @@ export const compendiumConfig = { "adversaries": { id: "adversaries", keys: ["adversaries"], - label: "Adversaries", + label: "DAGGERHEART.UI.ItemBrowser.folders.adversaries", type: ["adversary"], listType: "adversaries" }, "ancestries": { id: "ancestries", keys: ["ancestries"], - label: "Ancestries", + label: "DAGGERHEART.UI.ItemBrowser.folders.ancestries", type: ["ancestry"], folders: { "features": { id: "features", keys: ["ancestries"], - label: "Features", + label: "DAGGERHEART.UI.ItemBrowser.folders.features", type: ["feature"] } } @@ -325,26 +325,26 @@ export const compendiumConfig = { "equipments": { id: "equipments", keys: ["armors", "weapons", "consumables", "loot"], - label: "Equipment", + label: "DAGGERHEART.UI.ItemBrowser.folders.equipment", type: ["armor", "weapon", "consumable", "loot"], listType: "items" }, "classes": { id: "classes", keys: ["classes"], - label: "Classes", + label: "DAGGERHEART.UI.ItemBrowser.folders.classes", type: ["class"], folders: { "features": { id: "features", keys: ["classes"], - label: "Features", + label: "DAGGERHEART.UI.ItemBrowser.folders.features", type: ["feature"] }, "items": { id: "items", keys: ["classes"], - label: "Items", + label: "DAGGERHEART.UI.ItemBrowser.folders.items", type: ["armor", "weapon", "consumable", "loot"], listType: "items" } @@ -354,27 +354,27 @@ export const compendiumConfig = { "subclasses": { id: "subclasses", keys: ["subclasses"], - label: "Subclasses", + label: "DAGGERHEART.UI.ItemBrowser.folders.subclasses", type: ["subclass"], listType: "subclasses" }, "domains": { id: "domains", keys: ["domains"], - label: "Domain Cards", + label: "DAGGERHEART.UI.ItemBrowser.folders.domainCards", type: ["domainCard"], listType: "cards" }, "communities": { id: "communities", keys: ["communities"], - label: "Communities", + label: "DAGGERHEART.UI.ItemBrowser.folders.communities", type: ["community"], folders: { "features": { id: "features", keys: ["communities"], - label: "Features", + label: "DAGGERHEART.UI.ItemBrowser.folders.features", type: ["feature"] } } @@ -382,20 +382,20 @@ export const compendiumConfig = { "environments": { id: "environments", keys: ["environments"], - label: "Environments", + label: "DAGGERHEART.UI.ItemBrowser.folders.environments", type: ["environment"] }, "beastforms": { id: "beastforms", keys: ["beastforms"], - label: "Beastforms", + label: "DAGGERHEART.UI.ItemBrowser.folders.beastforms", type: ["beastform"], listType: "beastforms", folders: { "features": { id: "features", keys: ["beastforms"], - label: "Features", + label: "DAGGERHEART.UI.ItemBrowser.folders.features", type: ["feature"] } } diff --git a/module/data/fields/action/costField.mjs b/module/data/fields/action/costField.mjs index f4d942b1..c224fff0 100644 --- a/module/data/fields/action/costField.mjs +++ b/module/data/fields/action/costField.mjs @@ -25,7 +25,7 @@ export default class CostField extends fields.ArrayField { config.costs = CostField.calcCosts.call(this, costs); const hasCost = CostField.hasCost.call(this, config.costs); if (config.isFastForward && !hasCost) - return ui.notifications.warn("You don't have the resources to use that action."); + return ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.insufficientResources')); return hasCost; } diff --git a/module/data/fields/action/usesField.mjs b/module/data/fields/action/usesField.mjs index 3993ca3b..5c2bfb61 100644 --- a/module/data/fields/action/usesField.mjs +++ b/module/data/fields/action/usesField.mjs @@ -25,7 +25,7 @@ export default class UsesField extends fields.SchemaField { if (uses && !uses.value) uses.value = 0; config.uses = uses; const hasUses = UsesField.hasUses.call(this, config.uses); - if (config.isFastForward && !hasUses) return ui.notifications.warn("That action doesn't have remaining uses."); + if (config.isFastForward && !hasUses) return ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.actionNoUsesRemaining')); return hasUses; } diff --git a/module/helpers/handlebarsHelper.mjs b/module/helpers/handlebarsHelper.mjs index 171255e2..83220307 100644 --- a/module/helpers/handlebarsHelper.mjs +++ b/module/helpers/handlebarsHelper.mjs @@ -13,7 +13,8 @@ export default class RegisterHandlebarsHelpers { hasProperty: foundry.utils.hasProperty, getProperty: foundry.utils.getProperty, setVar: this.setVar, - empty: this.empty + empty: this.empty, + pluralize: this.pluralize }); } static add(a, b) { @@ -64,7 +65,7 @@ export default class RegisterHandlebarsHelpers { return isNumerical ? (!result ? 0 : Number(result)) : result; } - static setVar(name, value, context) { + static setVar(name, value) { this[name] = value; } @@ -72,4 +73,20 @@ export default class RegisterHandlebarsHelpers { if (!(typeof object === 'object')) return true; return Object.keys(object).length === 0; } + + /** + * Pluralize helper that returns the appropriate localized string based on count + * @param {number} count - The number to check for plurality + * @param {string} baseKey - The base localization key (e.g., "DAGGERHEART.GENERAL.Target") + * @returns {string} The localized singular or plural string + * + * Usage: {{pluralize currentTargets.length "DAGGERHEART.GENERAL.Target"}} + * Returns: "Target" if count is exactly 1, "Targets" if count is 0, 2+, or invalid + */ + static pluralize(count, baseKey) { + const numericCount = Number(count); + const isSingular = !isNaN(numericCount) && numericCount === 1; + const key = isSingular ? `${baseKey}.single` : `${baseKey}.plural`; + return game.i18n.localize(key); + } } diff --git a/templates/sheets/actors/character/header.hbs b/templates/sheets/actors/character/header.hbs index 88a72fb8..e19c1dea 100644 --- a/templates/sheets/actors/character/header.hbs +++ b/templates/sheets/actors/character/header.hbs @@ -6,7 +6,7 @@ type='text' name='name' value='{{document.name}}' - placeholder='Actor Name' + placeholder='{{localize "DAGGERHEART.GENERAL.actorName"}}' /> diff --git a/templates/ui/chat/parts/target-part.hbs b/templates/ui/chat/parts/target-part.hbs index 82c71456..af7e93b0 100644 --- a/templates/ui/chat/parts/target-part.hbs +++ b/templates/ui/chat/parts/target-part.hbs @@ -1,11 +1,11 @@
-
Target
+
{{pluralize currentTargets.length "DAGGERHEART.GENERAL.Target"}}
{{#if (or (and targets.length (or (gt targetShort.hit 0) (gt targetShort.miss 0))) (and hasSave pendingSaves))}}
{{#if (or (gt targetShort.hit 0) (gt targetShort.miss 0))}} -
{{targetShort.hit}} {{#if (gt targetShort.hit 1)}}{{localize "DAGGERHEART.GENERAL.hit.single"}}{{else}}{{localize "DAGGERHEART.GENERAL.hit.plural"}}{{/if}}
-
{{targetShort.miss}} {{#if (gt targetShort.miss 1)}}{{localize "DAGGERHEART.GENERAL.miss.single"}}{{else}}{{localize "DAGGERHEART.GENERAL.miss.plural"}}{{/if}}
+
{{targetShort.hit}} {{pluralize targetShort.hit "DAGGERHEART.GENERAL.hit"}}
+
{{targetShort.miss}} {{pluralize targetShort.miss "DAGGERHEART.GENERAL.miss"}}
{{/if}} {{#if (and hasSave pendingSaves)}}
{{/if}}
diff --git a/templates/ui/itemBrowser/itemBrowser.hbs b/templates/ui/itemBrowser/itemBrowser.hbs index 000e4c03..ca0def19 100644 --- a/templates/ui/itemBrowser/itemBrowser.hbs +++ b/templates/ui/itemBrowser/itemBrowser.hbs @@ -17,12 +17,12 @@
- +
{{#if fieldFilter.length}} - + {{/if}} - +
@@ -55,9 +55,9 @@ {{#if menu.data.columns.length}}
-
Name
+
{{localize 'DAGGERHEART.UI.ItemBrowser.columnName'}}
{{#each menu.data.columns}} - {{label}} + {{localize label}} {{/each}}
{{/if}} @@ -82,8 +82,8 @@ {{!--
--}} {{else}}
-

Daggerheart Compendium Browser

- Select a Folder in sidebar to start browsing trought the compendium +

{{localize "DAGGERHEART.UI.ItemBrowser.title"}}

+ {{localize "DAGGERHEART.UI.ItemBrowser.hint"}}
{{/if}}
\ No newline at end of file From ee786544c75a970dc34d2364db600b932f6a72b7 Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Fri, 22 Aug 2025 12:22:47 +0200 Subject: [PATCH 023/260] Fix double damageKeyToNumber (#1044) --- module/documents/actor.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index 0a68e9d1..4ef8b3b0 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -1,7 +1,7 @@ import { emitAsGM, GMUpdateEvent } from '../systemRegistration/socket.mjs'; import { LevelOptionType } from '../data/levelTier.mjs'; import DHFeature from '../data/item/feature.mjs'; -import { createScrollText, damageKeyToNumber, damageKeyToNumber, versionCompare } from '../helpers/utils.mjs'; +import { createScrollText, damageKeyToNumber, versionCompare } from '../helpers/utils.mjs'; import DhCompanionLevelUp from '../applications/levelup/companionLevelup.mjs'; export default class DhpActor extends Actor { From d5f7e17339dd0b24490be12064fe06f4fbebdf1c Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Sat, 23 Aug 2025 02:18:25 +0200 Subject: [PATCH 024/260] Added Custom Adversary Types (#1048) --- lang/en.json | 7 ++- .../settings/homebrewSettings.mjs | 54 +++++++++++++++++-- .../applications/sheets/actors/adversary.mjs | 4 ++ module/config/actorConfig.mjs | 5 ++ module/data/actor/adversary.mjs | 2 +- module/data/settings/Homebrew.mjs | 7 +++ styles/less/ui/index.less | 1 + .../ui/settings/homebrew-settings/types.less | 52 ++++++++++++++++++ .../settings/homebrew-settings/types.hbs | 28 ++++++++++ templates/sheets/actors/adversary/header.hbs | 4 +- templates/ui/tooltip/adversary.hbs | 2 +- 11 files changed, 156 insertions(+), 10 deletions(-) create mode 100644 styles/less/ui/settings/homebrew-settings/types.less create mode 100644 templates/settings/homebrew-settings/types.hbs diff --git a/lang/en.json b/lang/en.json index 1bddbad3..1c614fc2 100755 --- a/lang/en.json +++ b/lang/en.json @@ -1900,7 +1900,8 @@ "tier4": "tier 4", "domains": "Domains", "downtime": "Downtime", - "rules": "Rules" + "rules": "Rules", + "types": "Types" }, "Tiers": { "singular": "Tier", @@ -2230,6 +2231,10 @@ "deleteDomain": "Delete Domain", "deleteDomainText": "Are you sure you want to delete the {name} domain? It will be immediately removed from all Actors in this world where it's currently used. Compendiums are not cleared.", "duplicateDomain": "There is already a domain with this identification." + }, + "adversaryType": { + "title": "Custom Adversary Types", + "newType": "Adversary Type" } }, "Menu": { diff --git a/module/applications/settings/homebrewSettings.mjs b/module/applications/settings/homebrewSettings.mjs index 3fa42afd..c2ac4a89 100644 --- a/module/applications/settings/homebrewSettings.mjs +++ b/module/applications/settings/homebrewSettings.mjs @@ -1,5 +1,6 @@ import { DhHomebrew } from '../../data/settings/_module.mjs'; import { slugify } from '../../helpers/utils.mjs'; + const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; export default class DhHomebrewSettings extends HandlebarsApplicationMixin(ApplicationV2) { @@ -10,11 +11,14 @@ export default class DhHomebrewSettings extends HandlebarsApplicationMixin(Appli game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).toObject() ); - this.selected = { - domain: null - }; + this.selected = this.#getDefaultAdversaryType(); } + #getDefaultAdversaryType = () => ({ + domain: null, + adversaryType: null + }); + get title() { return game.i18n.localize('DAGGERHEART.SETTINGS.Menu.title'); } @@ -35,6 +39,9 @@ export default class DhHomebrewSettings extends HandlebarsApplicationMixin(Appli addDomain: this.addDomain, toggleSelectedDomain: this.toggleSelectedDomain, deleteDomain: this.deleteDomain, + addAdversaryType: this.addAdversaryType, + deleteAdversaryType: this.deleteAdversaryType, + selectAdversaryType: this.selectAdversaryType, save: this.save, reset: this.reset }, @@ -45,6 +52,7 @@ export default class DhHomebrewSettings extends HandlebarsApplicationMixin(Appli tabs: { template: 'systems/daggerheart/templates/sheets/global/tabs/tab-navigation.hbs' }, settings: { template: 'systems/daggerheart/templates/settings/homebrew-settings/settings.hbs' }, domains: { template: 'systems/daggerheart/templates/settings/homebrew-settings/domains.hbs' }, + types: { template: 'systems/daggerheart/templates/settings/homebrew-settings/types.hbs' }, downtime: { template: 'systems/daggerheart/templates/settings/homebrew-settings/downtime.hbs' }, footer: { template: 'systems/daggerheart/templates/settings/homebrew-settings/footer.hbs' } }; @@ -52,12 +60,19 @@ export default class DhHomebrewSettings extends HandlebarsApplicationMixin(Appli /** @inheritdoc */ static TABS = { main: { - tabs: [{ id: 'settings' }, { id: 'domains' }, { id: 'downtime' }], + tabs: [{ id: 'settings' }, { id: 'domains' }, { id: 'types' }, { id: 'downtime' }], initial: 'settings', labelPrefix: 'DAGGERHEART.GENERAL.Tabs' } }; + changeTab(tab, group, options) { + super.changeTab(tab, group, options); + this.selected = this.#getDefaultAdversaryType(); + + this.render(); + } + async _prepareContext(_options) { const context = await super._prepareContext(_options); context.settingFields = this.settings; @@ -79,6 +94,11 @@ export default class DhHomebrewSettings extends HandlebarsApplicationMixin(Appli context.configDomains = CONFIG.DH.DOMAIN.domains; context.homebrewDomains = this.settings.domains; break; + case 'types': + context.selectedAdversaryType = this.selected.adversaryType + ? { id: this.selected.adversaryType, ...this.settings.adversaryTypes[this.selected.adversaryType] } + : null; + break; } return context; @@ -301,6 +321,32 @@ export default class DhHomebrewSettings extends HandlebarsApplicationMixin(Appli this.render(); } + static async addAdversaryType(_, target) { + const newId = foundry.utils.randomID(); + await this.settings.updateSource({ + [`adversaryTypes.${newId}`]: { + id: newId, + label: game.i18n.localize('DAGGERHEART.SETTINGS.Homebrew.adversaryType.newType') + } + }); + + this.selected.adversaryType = newId; + this.render(); + } + + static async deleteAdversaryType(_, target) { + const { key } = target.dataset; + await this.settings.updateSource({ [`adversaryTypes.-=${key}`]: null }); + + this.selected.adversaryType = this.selected.adversaryType === key ? null : this.selected.adversaryType; + this.render(); + } + + static async selectAdversaryType(_, target) { + this.selected.adversaryType = this.selected.adversaryType === target.dataset.type ? null : target.dataset.type; + this.render(); + } + static async save() { await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew, this.settings.toObject()); this.close(); diff --git a/module/applications/sheets/actors/adversary.mjs b/module/applications/sheets/actors/adversary.mjs index b47cb85a..f575a2f2 100644 --- a/module/applications/sheets/actors/adversary.mjs +++ b/module/applications/sheets/actors/adversary.mjs @@ -56,6 +56,7 @@ export default class AdversarySheet extends DHBaseActorSheet { async _prepareContext(options) { const context = await super._prepareContext(options); context.systemFields.attack.fields = this.document.system.attack.schema.fields; + return context; } @@ -65,6 +66,9 @@ export default class AdversarySheet extends DHBaseActorSheet { switch (partId) { case 'header': await this._prepareHeaderContext(context, options); + + const adversaryTypes = CONFIG.DH.ACTOR.allAdversaryTypes(); + context.adversaryType = game.i18n.localize(adversaryTypes[this.document.system.type].label); break; case 'notes': await this._prepareNotesContext(context, options); diff --git a/module/config/actorConfig.mjs b/module/config/actorConfig.mjs index 6453cd78..55f03789 100644 --- a/module/config/actorConfig.mjs +++ b/module/config/actorConfig.mjs @@ -157,6 +157,11 @@ export const adversaryTypes = { } }; +export const allAdversaryTypes = () => ({ + ...adversaryTypes, + ...game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).adversaryTypes +}); + export const environmentTypes = { exploration: { label: 'DAGGERHEART.CONFIG.EnvironmentType.exploration.label', diff --git a/module/data/actor/adversary.mjs b/module/data/actor/adversary.mjs index 80bcb43e..ba0693f7 100644 --- a/module/data/actor/adversary.mjs +++ b/module/data/actor/adversary.mjs @@ -27,7 +27,7 @@ export default class DhpAdversary extends BaseDataActor { }), type: new fields.StringField({ required: true, - choices: CONFIG.DH.ACTOR.adversaryTypes, + choices: CONFIG.DH.ACTOR.allAdversaryTypes, initial: CONFIG.DH.ACTOR.adversaryTypes.standard.id }), motivesAndTactics: new fields.StringField(), diff --git a/module/data/settings/Homebrew.mjs b/module/data/settings/Homebrew.mjs index e18fee39..0719b085 100644 --- a/module/data/settings/Homebrew.mjs +++ b/module/data/settings/Homebrew.mjs @@ -108,6 +108,13 @@ export default class DhHomebrew extends foundry.abstract.DataModel { }), description: new fields.HTMLField() }) + ), + adversaryTypes: new fields.TypedObjectField( + new fields.SchemaField({ + id: new fields.StringField({ required: true }), + label: new fields.StringField({ required: true, label: 'DAGGERHEART.GENERAL.label' }), + description: new fields.StringField() + }) ) }; } diff --git a/styles/less/ui/index.less b/styles/less/ui/index.less index 4a93feb6..49d1e009 100644 --- a/styles/less/ui/index.less +++ b/styles/less/ui/index.less @@ -21,3 +21,4 @@ @import './settings/settings.less'; @import './settings/homebrew-settings/domains.less'; +@import './settings/homebrew-settings/types.less'; diff --git a/styles/less/ui/settings/homebrew-settings/types.less b/styles/less/ui/settings/homebrew-settings/types.less new file mode 100644 index 00000000..d09431f7 --- /dev/null +++ b/styles/less/ui/settings/homebrew-settings/types.less @@ -0,0 +1,52 @@ +.theme-light .daggerheart.dh-style.setting.homebrew-settings .types.tab { + .adversary-types-container .adversary-type-container { + background-image: url('../assets/parchments/dh-parchment-light.png'); + } +} + +.daggerheart.dh-style.setting.homebrew-settings { + .types.tab { + .adversary-types-container { + width: 100%; + display: grid; + grid-template-columns: 1fr 1fr 1fr; + gap: 4px; + + .adversary-type-container { + height: 2em; + display: flex; + align-items: center; + justify-content: space-between; + gap: 8px; + border: 1px solid; + border-radius: 6px; + padding: 0 8px; + border: 1px solid light-dark(@dark-blue, @golden); + color: light-dark(@dark, @beige); + background-image: url('../assets/parchments/dh-parchment-dark.png'); + cursor: pointer; + opacity: 0.6; + + &:hover { + opacity: 1; + } + + &.active { + opacity: 1; + background: var(--color-warm-2); + } + } + } + + .type-edit-container { + width: 100%; + display: flex; + flex-direction: column; + gap: 8px; + + textarea { + width: 100%; + } + } + } +} diff --git a/templates/settings/homebrew-settings/types.hbs b/templates/settings/homebrew-settings/types.hbs new file mode 100644 index 00000000..f9d3bba3 --- /dev/null +++ b/templates/settings/homebrew-settings/types.hbs @@ -0,0 +1,28 @@ +
+
+ + {{localize "DAGGERHEART.SETTINGS.Homebrew.adversaryType.title"}} + + + +
+ {{#each settingFields.adversaryTypes as |type key|}} +
+ {{type.label}} +
+
+ {{/each}} +
+ + {{#if selectedAdversaryType}} +
+ {{formGroup settingFields.schema.fields.adversaryTypes.element.fields.label name=(concat "adversaryTypes." selectedAdversaryType.id ".label") value=selectedAdversaryType.label localize=true }} + +
+ {{/if}} +
+
\ No newline at end of file diff --git a/templates/sheets/actors/adversary/header.hbs b/templates/sheets/actors/adversary/header.hbs index 8411dd93..e6f829b8 100644 --- a/templates/sheets/actors/adversary/header.hbs +++ b/templates/sheets/actors/adversary/header.hbs @@ -13,9 +13,7 @@
- - {{localize (concat 'DAGGERHEART.CONFIG.AdversaryType.' source.system.type '.label')}} - + {{adversaryType}}
{{#if (eq source.system.type 'horde')}}
diff --git a/templates/ui/tooltip/adversary.hbs b/templates/ui/tooltip/adversary.hbs index b400bd29..86c399c5 100644 --- a/templates/ui/tooltip/adversary.hbs +++ b/templates/ui/tooltip/adversary.hbs @@ -12,7 +12,7 @@
- {{#with (lookup config.ACTOR.adversaryTypes item.system.type) as | type |}} + {{#with (lookup adversaryTypes item.system.type) as | type |}}
{{localize type.label}}
{{/with}}
From 471cbd55df7aaf53430846b890848c33ffba84c9 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Sat, 23 Aug 2025 21:24:28 +1000 Subject: [PATCH 025/260] Fixes some measurement issues with templates (#1065) Co-authored-by: Chris Ryan --- module/canvas/placeables/measuredTemplate.mjs | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/module/canvas/placeables/measuredTemplate.mjs b/module/canvas/placeables/measuredTemplate.mjs index 49142685..83cddfe1 100644 --- a/module/canvas/placeables/measuredTemplate.mjs +++ b/module/canvas/placeables/measuredTemplate.mjs @@ -10,38 +10,38 @@ export default class DhMeasuredTemplate extends foundry.canvas.placeables.Measur const splitRulerText = this.ruler.text.split(' '); if (splitRulerText.length > 0) { const rulerValue = Number(splitRulerText[0]); - const result = this.constructor.getRangeLabels(rulerValue, rangeMeasurementSettings); - this.ruler.text = result.distance + result.units ? (' ' + result.units) : ''; + const result = DhMeasuredTemplate.getRangeLabels(rulerValue, rangeMeasurementSettings); + this.ruler.text = result.distance + (result.units ? (' ' + result.units) : ''); } } } - static getRangeLabels(distance, settings) { - let result = { distance: '', units: null } + static getRangeLabels(distanceValue, settings) { + let result = { distance: distanceValue, units: '' } const rangeMeasurementOverride = canvas.scene.flags.daggerheart?.rangeMeasurementOverride; if (rangeMeasurementOverride === true) { - result.distance = distance; + result.distance = distanceValue; result.units = canvas.scene?.grid?.units; return result } - if (distance <= settings.melee) { + if (distanceValue <= settings.melee) { result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.melee.name'); return result; } - if (distance <= settings.veryClose) { + if (distanceValue <= settings.veryClose) { result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.veryClose.name'); return result; } - if (distance <= settings.close) { + if (distanceValue <= settings.close) { result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.close.name'); return result; } - if (distance <= settings.far) { + if (distanceValue <= settings.far) { result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.far.name'); return result; } - if (distance > settings.far) { + if (distanceValue > settings.far) { result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.veryFar.name'); } From a72d4583cd3167c72327f762a11b51bd2b0f0879 Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Sat, 23 Aug 2025 14:54:57 +0200 Subject: [PATCH 026/260] [PR]Add custom formula to weapon base attack (#964) * Add custom formula to weapon base attack * Remove log * Update weapon custom damage formula label + update font-size in px --- lang/en.json | 9 ++++++ module/data/fields/action/damageField.mjs | 12 ++++---- module/data/item/weapon.mjs | 4 +-- styles/less/dialog/beastform/sheet.less | 4 +-- .../selections-container.less | 20 ++++++------- .../damage-reduction-container.less | 4 +-- .../less/dialog/dice-roll/roll-selection.less | 8 ++--- .../dialog/downtime/downtime-container.less | 6 ++-- .../dialog/level-up/selections-container.less | 8 ++--- .../dialog/level-up/summary-container.less | 6 ++-- .../less/dialog/level-up/tiers-container.less | 4 +-- styles/less/dialog/reroll-dialog/sheet.less | 6 ++-- styles/less/global/chat.less | 2 +- styles/less/global/dialog.less | 2 +- styles/less/global/elements.less | 18 ++++++------ styles/less/global/inventory-item.less | 29 ++++++++++--------- styles/less/global/item-header.less | 6 ++-- styles/less/global/prose-mirror.less | 8 ++--- .../character-settings/sheet.less | 2 +- styles/less/sheets-settings/header.less | 2 +- .../less/sheets/actors/adversary/header.less | 6 ++-- .../less/sheets/actors/adversary/sidebar.less | 12 ++++---- .../less/sheets/actors/character/header.less | 16 +++++----- .../sheets/actors/character/inventory.less | 2 +- .../less/sheets/actors/character/loadout.less | 2 +- .../less/sheets/actors/character/sidebar.less | 10 +++---- .../less/sheets/actors/companion/details.less | 6 ++-- .../less/sheets/actors/companion/header.less | 6 ++-- .../sheets/actors/environment/header.less | 8 ++--- styles/less/ui/chat/ability-use.less | 4 +-- styles/less/ui/chat/action.less | 4 +-- styles/less/ui/chat/chat.less | 4 +-- styles/less/ui/chat/downtime.less | 4 +-- .../less/ui/combat-sidebar/token-actions.less | 2 +- styles/less/ui/countdown/sheet.less | 2 +- styles/less/ui/item-browser/item-browser.less | 10 +++---- .../settings/homebrew-settings/domains.less | 4 +-- styles/less/ui/settings/settings.less | 6 ++-- styles/less/utils/mixin.less | 6 ++-- styles/less/ux/autocomplete/autocomplete.less | 4 +-- styles/less/ux/tooltip/tooltip.less | 2 +- templates/sheets/items/weapon/header.hbs | 6 +++- templates/sheets/items/weapon/settings.hbs | 15 +++++++--- 43 files changed, 161 insertions(+), 140 deletions(-) diff --git a/lang/en.json b/lang/en.json index 1c614fc2..beeffd41 100755 --- a/lang/en.json +++ b/lang/en.json @@ -72,6 +72,14 @@ "exactHint": "The Character's Tier is used if empty", "label": "Beastform" }, + "damage": { + "multiplier": "Multiplier", + "flatMultiplier": "Flat Multiplier" + }, + "general": { + "customFormula": "Custom Formula", + "formula": "Formula" + }, "displayInChat": "Display in chat" }, "RollField": { @@ -1929,6 +1937,7 @@ "continue": "Continue", "criticalSuccess": "Critical Success", "criticalShort": "Critical", + "custom": "Custom", "d20Roll": "D20 Roll", "damage": "Damage", "damageRoll": "Damage Roll", diff --git a/module/data/fields/action/damageField.mjs b/module/data/fields/action/damageField.mjs index cf327204..7f1b61e9 100644 --- a/module/data/fields/action/damageField.mjs +++ b/module/data/fields/action/damageField.mjs @@ -23,14 +23,14 @@ export class DHActionDiceData extends foundry.abstract.DataModel { multiplier: new fields.StringField({ choices: CONFIG.DH.GENERAL.multiplierTypes, initial: 'prof', - label: 'Multiplier' + label: "DAGGERHEART.ACTIONS.Config.damage.multiplier" }), - flatMultiplier: new fields.NumberField({ nullable: true, initial: 1, label: 'Flat Multiplier' }), - dice: new fields.StringField({ choices: CONFIG.DH.GENERAL.diceTypes, initial: 'd6', label: 'Dice' }), - bonus: new fields.NumberField({ nullable: true, initial: null, label: 'Bonus' }), + flatMultiplier: new fields.NumberField({ nullable: true, initial: 1, label: "DAGGERHEART.ACTIONS.Config.damage.flatMultiplier" }), + dice: new fields.StringField({ choices: CONFIG.DH.GENERAL.diceTypes, initial: 'd6', label: "DAGGERHEART.GENERAL.Dice.single" }), + bonus: new fields.NumberField({ nullable: true, initial: null, label: "DAGGERHEART.GENERAL.bonus" }), custom: new fields.SchemaField({ - enabled: new fields.BooleanField({ label: 'Custom Formula' }), - formula: new FormulaField({ label: 'Formula', initial: '' }) + enabled: new fields.BooleanField({ label: "DAGGERHEART.ACTIONS.Config.general.customFormula" }), + formula: new FormulaField({ label: "DAGGERHEART.ACTIONS.Config.general.formula", initial: '' }) }) }; } diff --git a/module/data/item/weapon.mjs b/module/data/item/weapon.mjs index 66025cc5..ee4b997c 100644 --- a/module/data/item/weapon.mjs +++ b/module/data/item/weapon.mjs @@ -199,8 +199,8 @@ export default class DHWeapon extends AttachableItem { ]; for (const { value, type } of attack.damage.parts) { - const parts = [value.dice]; - if (value.bonus) parts.push(value.bonus.signedString()); + const parts = value.custom.enabled ? [game.i18n.localize("DAGGERHEART.GENERAL.custom")] : [value.dice]; + if (!value.custom.enabled && value.bonus) parts.push(value.bonus.signedString()); if (type.size > 0) { const typeTags = Array.from(type) diff --git a/styles/less/dialog/beastform/sheet.less b/styles/less/dialog/beastform/sheet.less index c13ee95e..9e87f53b 100644 --- a/styles/less/dialog/beastform/sheet.less +++ b/styles/less/dialog/beastform/sheet.less @@ -41,7 +41,7 @@ display: flex; flex-wrap: wrap; text-align: center; - font-size: 16px; + font-size: var(--font-size-16); margin: 0 4px; border: 1px solid light-dark(@dark-blue, @golden); border-radius: 6px; @@ -135,7 +135,7 @@ align-items: center; i { - font-size: 24px; + font-size: var(--font-size-24); } } diff --git a/styles/less/dialog/character-creation/selections-container.less b/styles/less/dialog/character-creation/selections-container.less index bc7a6987..3b93313a 100644 --- a/styles/less/dialog/character-creation/selections-container.less +++ b/styles/less/dialog/character-creation/selections-container.less @@ -75,7 +75,7 @@ label { position: absolute; - font-size: 18px; + font-size: var(--font-size-18); font-weight: bold; padding: 0 2px; background-image: url(../assets/parchments/dh-parchment-light.png); @@ -141,7 +141,7 @@ .ancestry-preview-feature { flex: 1; - font-size: 14px; + font-size: var(--font-size-14); white-space: wrap; padding: 0 2px; border: 1px solid light-dark(@golden, @dark-blue); @@ -178,7 +178,7 @@ legend { margin-left: auto; margin-right: auto; - font-size: 28px; + font-size: var(--font-size-28); font-weight: bold; padding: 0 8px; } @@ -191,7 +191,7 @@ justify-content: center; legend { - font-size: 20px; + font-size: var(--font-size-20); white-space: nowrap; } @@ -343,7 +343,7 @@ border-radius: 50%; height: 20px; width: 20px; - font-size: 14px; + font-size: var(--font-size-14); display: flex; align-items: center; justify-content: center; @@ -358,7 +358,7 @@ .descriptor { position: absolute; bottom: -8px; - font-size: 12px; + font-size: var(--font-size-12); border-radius: 8px; width: 56px; text-align: center; @@ -400,7 +400,7 @@ legend { margin-left: auto; margin-right: auto; - font-size: 28px; + font-size: var(--font-size-28); font-weight: bold; padding: 0 8px; white-space: nowrap; @@ -444,7 +444,7 @@ label { position: absolute; top: -8px; - font-size: 12px; + font-size: var(--font-size-12); white-space: nowrap; border: 1px solid light-dark(@dark-blue, @golden); border-radius: 6px; @@ -472,7 +472,7 @@ legend { margin-left: auto; margin-right: auto; - font-size: 12px; + font-size: var(--font-size-12); } .suggestion-inner-container { @@ -490,7 +490,7 @@ label { position: absolute; top: -2px; - font-size: 12px; + font-size: var(--font-size-12); } img { diff --git a/styles/less/dialog/damage-reduction/damage-reduction-container.less b/styles/less/dialog/damage-reduction/damage-reduction-container.less index 9e1d1472..2f343fb3 100644 --- a/styles/less/dialog/damage-reduction/damage-reduction-container.less +++ b/styles/less/dialog/damage-reduction/damage-reduction-container.less @@ -76,7 +76,7 @@ border-radius: 6px; height: 26px; padding: 0 1px; - font-size: 18px; + font-size: var(--font-size-18); display: flex; align-items: center; justify-content: center; @@ -108,7 +108,7 @@ border-radius: 6px; height: 26px; padding: 0 4px; - font-size: 18px; + font-size: var(--font-size-18); display: flex; align-items: center; justify-content: center; diff --git a/styles/less/dialog/dice-roll/roll-selection.less b/styles/less/dialog/dice-roll/roll-selection.less index 9113bc03..a0ac42b6 100644 --- a/styles/less/dialog/dice-roll/roll-selection.less +++ b/styles/less/dialog/dice-roll/roll-selection.less @@ -23,7 +23,7 @@ width: auto; opacity: 0.3; border-radius: 50%; - font-size: 18px; + font-size: var(--font-size-18); font-weight: bold; &:hover { @@ -74,7 +74,7 @@ font-family: @font-subtitle; font-style: normal; font-weight: 700; - font-size: 16px; + font-size: var(--font-size-16); line-height: 19px; color: light-dark(@dark, @beige); @@ -102,7 +102,7 @@ .label { font-style: normal; font-weight: 400; - font-size: 14px; + font-size: var(--font-size-14); line-height: 17px; } @@ -127,7 +127,7 @@ .label { font-style: normal; font-weight: 400; - font-size: 14px; + font-size: var(--font-size-14); line-height: 17px; } diff --git a/styles/less/dialog/downtime/downtime-container.less b/styles/less/dialog/downtime/downtime-container.less index f9f8df17..16edd3b0 100644 --- a/styles/less/dialog/downtime/downtime-container.less +++ b/styles/less/dialog/downtime/downtime-container.less @@ -35,7 +35,7 @@ gap: 4px; .activity-marker { - font-size: 8px; + font-size: .5rem; flex: none; color: light-dark(@dark-blue, @golden); margin-right: 4px; @@ -54,7 +54,7 @@ } .activity-selected-marker { - font-size: 14px; + font-size: var(--font-size-14); border: 1px solid light-dark(@dark-blue, @golden); border-radius: 6px; color: light-dark(@dark, @beige); @@ -71,7 +71,7 @@ display: grid; grid-template-columns: 1fr 1fr; gap: 4px; - font-size: 12px; + font-size: var(--font-size-12); &.wide { grid-template-columns: 1fr 1fr 1fr 1fr; diff --git a/styles/less/dialog/level-up/selections-container.less b/styles/less/dialog/level-up/selections-container.less index 96cadd29..6a551865 100644 --- a/styles/less/dialog/level-up/selections-container.less +++ b/styles/less/dialog/level-up/selections-container.less @@ -21,7 +21,7 @@ background: light-dark(@dark-blue-40, @golden-40); border-radius: 3px; padding: 5px; - font-size: 16px; + font-size: var(--font-size-16); gap: 4px; width: 100%; @@ -38,7 +38,7 @@ display: flex; align-items: center; justify-content: center; - font-size: 12px; + font-size: var(--font-size-12); } } } @@ -96,7 +96,7 @@ width: 54px; border-radius: 50%; border: 2px solid; - font-size: 48px; + font-size: var(--font-size-48); display: flex; align-items: center; justify-content: center; @@ -133,7 +133,7 @@ .levelup-selections-title { margin-left: auto; margin-right: auto; - font-size: 22px; + font-size: 1.375rem; font-weight: bold; padding: 0 12px; } diff --git a/styles/less/dialog/level-up/summary-container.less b/styles/less/dialog/level-up/summary-container.less index f192d5ec..d67abff6 100644 --- a/styles/less/dialog/level-up/summary-container.less +++ b/styles/less/dialog/level-up/summary-container.less @@ -41,7 +41,7 @@ display: flex; align-items: center; gap: 4px; - font-size: 14px; + font-size: var(--font-size-14); color: light-dark(@dark, @beige); } @@ -49,7 +49,7 @@ display: flex; align-items: center; gap: 4px; - font-size: 16px; + font-size: var(--font-size-16); color: light-dark(@dark, @beige); margin-bottom: 5px; } @@ -62,7 +62,7 @@ border: 2px solid; border-radius: 3px; padding: 0 4px; - font-size: 14px; + font-size: var(--font-size-14); color: light-dark(@dark, @beige); } } diff --git a/styles/less/dialog/level-up/tiers-container.less b/styles/less/dialog/level-up/tiers-container.less index d4efa46b..270b9b80 100644 --- a/styles/less/dialog/level-up/tiers-container.less +++ b/styles/less/dialog/level-up/tiers-container.less @@ -21,7 +21,7 @@ legend { margin-left: auto; margin-right: auto; - font-size: 22px; + font-size: 1.375rem; font-weight: bold; padding: 0 12px; } @@ -60,7 +60,7 @@ } .checkbox-group-label { - font-size: 12px; + font-size: var(--font-size-12); font-style: italic; } } diff --git a/styles/less/dialog/reroll-dialog/sheet.less b/styles/less/dialog/reroll-dialog/sheet.less index f8687009..71c94d80 100644 --- a/styles/less/dialog/reroll-dialog/sheet.less +++ b/styles/less/dialog/reroll-dialog/sheet.less @@ -37,7 +37,7 @@ display: flex; align-items: center; justify-content: center; - font-size: 22px; + font-size: 1.375rem; opacity: 0.8; &.selected { @@ -99,12 +99,12 @@ &:before, &:after { line-height: 12px; - font-size: 12px; + font-size: var(--font-size-12); } } i { - font-size: 10px; + font-size: var(--font-size-10); } } } diff --git a/styles/less/global/chat.less b/styles/less/global/chat.less index bf29a05c..d2822b1b 100644 --- a/styles/less/global/chat.less +++ b/styles/less/global/chat.less @@ -71,7 +71,7 @@ color: @beige; h4 { - font-size: 16px; + font-size: var(--font-size-16); font-weight: bold; margin-bottom: 0; font-family: @font-subtitle; diff --git a/styles/less/global/dialog.less b/styles/less/global/dialog.less index 42fdb07e..f164b701 100644 --- a/styles/less/global/dialog.less +++ b/styles/less/global/dialog.less @@ -50,7 +50,7 @@ .formula-label { font-style: normal; font-weight: 500; - font-size: 14px; + font-size: var(--font-size-14); line-height: 17px; white-space: nowrap; color: light-dark(@dark, @beige); diff --git a/styles/less/global/elements.less b/styles/less/global/elements.less index 2f4912c5..397420b2 100755 --- a/styles/less/global/elements.less +++ b/styles/less/global/elements.less @@ -165,7 +165,7 @@ z-index: 1; .remove { - font-size: 10px; + font-size: var(--font-size-10); } } } @@ -400,7 +400,7 @@ display: flex; flex-direction: column; white-space: nowrap; - font-size: 14px; + font-size: var(--font-size-14); font-weight: 400; &.modifier-label { @@ -527,7 +527,7 @@ font-family: @font-body; margin-top: 4px; color: light-dark(#14142599, #efe6d850); - font-size: 12px; + font-size: var(--font-size-12); padding-left: 3px; } } @@ -541,7 +541,7 @@ text-align: center; } .title-hint { - font-size: 12px; + font-size: var(--font-size-12); font-variant: small-caps; text-align: center; } @@ -605,7 +605,7 @@ align-items: center; label { - font-size: 16px; + font-size: var(--font-size-16); } .form-fields { @@ -776,7 +776,7 @@ .preview-text-container { padding: 10px 0; text-align: center; - font-size: 16px; + font-size: var(--font-size-16); color: light-dark(@beige, @dark); background-image: url(../assets/parchments/dh-parchment-light.png); border-radius: 0 0 4px 4px; @@ -799,14 +799,14 @@ justify-content: center; .preview-add-icon { - font-size: 40px; + font-size: var(--font-size-40); color: light-dark(@dark-blue-50, @beige-50); } .preview-empty-subtext { position: absolute; bottom: 5%; - font-size: 10px; + font-size: var(--font-size-10); font-variant: small-caps; text-align: center; font-style: italic; @@ -821,7 +821,7 @@ width: 54px; border-radius: 50%; border: 2px solid; - font-size: 48px; + font-size: var(--font-size-48); display: flex; align-items: center; justify-content: center; diff --git a/styles/less/global/inventory-item.less b/styles/less/global/inventory-item.less index d63c658e..e221f4e7 100644 --- a/styles/less/global/inventory-item.less +++ b/styles/less/global/inventory-item.less @@ -105,7 +105,7 @@ align-self: center; .item-name { - font-size: 14px; + font-size: var(--font-size-14); .expanded-icon { display: none; @@ -121,9 +121,10 @@ .label { display: flex; flex-direction: row; - justify-content: center; align-items: center; - font-size: 12px; + font-size: var(--font-size-12); + flex-wrap: wrap; + justify-content: start; } .tag { @@ -179,18 +180,18 @@ overflow: hidden; h1 { - font-size: 32px; + font-size: var(--font-size-32); } h2 { - font-size: 28px; + font-size: var(--font-size-28); font-weight: 600; } h3 { - font-size: 20px; + font-size: var(--font-size-20); font-weight: 600; } h4 { - font-size: 16px; + font-size: var(--font-size-16); color: @beige; font-weight: 600; } @@ -231,7 +232,7 @@ label { color: light-dark(white, black); filter: drop-shadow(0 0 1px light-dark(@dark-blue, @golden)); - font-size: 18px; + font-size: var(--font-size-18); } img { @@ -243,7 +244,7 @@ text-shadow: 0 0 3px white; filter: drop-shadow(0 1px white); color: black; - font-size: 26px; + font-size: 1.625rem; } } } @@ -310,7 +311,7 @@ .card-name { font-style: normal; font-weight: 400; - font-size: 12px; + font-size: var(--font-size-12); line-height: 15px; color: @beige; @@ -351,7 +352,7 @@ gap: 4px; .resource-edit { - font-size: 14px; + font-size: var(--font-size-14); } } @@ -363,7 +364,7 @@ i { flex: none; - font-size: 14px; + font-size: var(--font-size-14); } input { @@ -383,7 +384,7 @@ color: light-dark(white, black); filter: drop-shadow(0 0 1px light-dark(@dark-blue, @golden)); z-index: 2; - font-size: 18px; + font-size: var(--font-size-18); cursor: pointer; } @@ -397,7 +398,7 @@ text-shadow: 0 0 3px white; filter: drop-shadow(0 1px white); color: black; - font-size: 26px; + font-size: 1.625rem; } } } diff --git a/styles/less/global/item-header.less b/styles/less/global/item-header.less index 7b2c907f..073762e0 100755 --- a/styles/less/global/item-header.less +++ b/styles/less/global/item-header.less @@ -35,7 +35,7 @@ width: 80%; .item-name input[type='text'] { - font-size: 32px; + font-size: var(--font-size-32); height: 42px; text-align: center; width: 90%; @@ -103,7 +103,7 @@ transition: all 0.3s ease; .recall-label { - font-size: 14px; + font-size: var(--font-size-14); opacity: 0; margin-right: 0.3rem; transition: all 0.3s ease; @@ -141,7 +141,7 @@ .item-name { input[type='text'] { - font-size: 32px; + font-size: var(--font-size-32); height: 42px; text-align: center; width: 90%; diff --git a/styles/less/global/prose-mirror.less b/styles/less/global/prose-mirror.less index cb7933a4..506fb8b7 100644 --- a/styles/less/global/prose-mirror.less +++ b/styles/less/global/prose-mirror.less @@ -12,18 +12,18 @@ scrollbar-width: thin; scrollbar-color: light-dark(@dark-blue, @golden) transparent; h1 { - font-size: 32px; + font-size: var(--font-size-32); } h2 { - font-size: 28px; + font-size: var(--font-size-28); font-weight: 600; } h3 { - font-size: 20px; + font-size: var(--font-size-20); font-weight: 600; } h4 { - font-size: 16px; + font-size: var(--font-size-16); color: @beige; font-weight: 600; } diff --git a/styles/less/sheets-settings/character-settings/sheet.less b/styles/less/sheets-settings/character-settings/sheet.less index 78bbf9c5..f0c7c94e 100644 --- a/styles/less/sheets-settings/character-settings/sheet.less +++ b/styles/less/sheets-settings/character-settings/sheet.less @@ -33,7 +33,7 @@ div { filter: drop-shadow(0 0 3px black); text-shadow: 0 0 3px black; - font-size: 12px; + font-size: var(--font-size-12); } input { diff --git a/styles/less/sheets-settings/header.less b/styles/less/sheets-settings/header.less index 6ac2663f..82f3c488 100644 --- a/styles/less/sheets-settings/header.less +++ b/styles/less/sheets-settings/header.less @@ -10,7 +10,7 @@ font-family: @font-subtitle; font-style: normal; font-weight: 700; - font-size: 24px; + font-size: var(--font-size-24); margin: 0; text-align: center; color: light-dark(@dark-blue, @golden); diff --git a/styles/less/sheets/actors/adversary/header.less b/styles/less/sheets/actors/adversary/header.less index 22a769ae..d4a7812e 100644 --- a/styles/less/sheets/actors/adversary/header.less +++ b/styles/less/sheets/actors/adversary/header.less @@ -18,7 +18,7 @@ flex: 1; input[type='text'] { - font-size: 32px; + font-size: var(--font-size-32); height: 42px; text-align: start; border: 1px solid transparent; @@ -42,7 +42,7 @@ justify-content: center; align-items: center; padding: 3px 5px; - font-size: 12px; + font-size: var(--font-size-12); font: @font-body; background: light-dark(@dark-15, @beige-15); @@ -55,7 +55,7 @@ flex-direction: row; justify-content: center; align-items: center; - font-size: 12px; + font-size: var(--font-size-12); } } diff --git a/styles/less/sheets/actors/adversary/sidebar.less b/styles/less/sheets/actors/adversary/sidebar.less index 70cd92ed..ab15fa46 100644 --- a/styles/less/sheets/actors/adversary/sidebar.less +++ b/styles/less/sheets/actors/adversary/sidebar.less @@ -74,7 +74,7 @@ height: 30px; h4 { - font-size: 14px; + font-size: var(--font-size-14); font-weight: bold; text-transform: uppercase; color: light-dark(@dark-blue, @golden); @@ -255,7 +255,7 @@ font-weight: bold; text-align: center; line-height: 18px; - font-size: 12px; + font-size: var(--font-size-12); color: light-dark(@beige, @dark-blue); } } @@ -295,7 +295,7 @@ align-items: center; h3 { - font-size: 20px; + font-size: var(--font-size-20); } } .items-list { @@ -315,7 +315,7 @@ align-items: center; h3 { - font-size: 20px; + font-size: var(--font-size-20); } } @@ -337,7 +337,7 @@ .experience-name { width: 180px; text-align: start; - font-size: 14px; + font-size: var(--font-size-14); color: light-dark(@dark, @beige); } } @@ -345,7 +345,7 @@ .experience-value { height: 25px; width: 35px; - font-size: 14px; + font-size: var(--font-size-14); color: light-dark(@dark, @beige); align-content: center; text-align: center; diff --git a/styles/less/sheets/actors/character/header.less b/styles/less/sheets/actors/character/header.less index 2d261a6a..80089cf7 100644 --- a/styles/less/sheets/actors/character/header.less +++ b/styles/less/sheets/actors/character/header.less @@ -41,7 +41,7 @@ flex: 1; input[type='text'] { - font-size: 32px; + font-size: var(--font-size-32); height: 42px; text-align: start; border: 1px solid transparent; @@ -72,7 +72,7 @@ .level-button { color: light-dark(@dark, @beige); - font-size: 18px; + font-size: var(--font-size-18); line-height: 1; min-height: unset; height: min-content; @@ -97,7 +97,7 @@ justify-content: space-between; padding: 5px 0; margin-bottom: 10px; - font-size: 12px; + font-size: var(--font-size-12); color: light-dark(@dark-blue, @golden); .missing-header-feature { @@ -158,7 +158,7 @@ height: 30px; h4 { - font-size: 14px; + font-size: var(--font-size-14); font-weight: bold; text-transform: uppercase; color: light-dark(@dark-blue, @golden); @@ -170,7 +170,7 @@ gap: 5px; .label { - font-size: 14px; + font-size: var(--font-size-14); font-weight: bold; text-transform: uppercase; color: light-dark(@dark-blue, @golden); @@ -205,7 +205,7 @@ align-items: center; padding-top: 5px; color: light-dark(@dark-blue, @golden); - font-size: 14px; + font-size: var(--font-size-14); font-weight: 600; align-items: center; justify-content: center; @@ -213,14 +213,14 @@ i { line-height: 17px; - font-size: 10px; + font-size: var(--font-size-10); } } .trait-value { font-style: normal; font-weight: 400; - font-size: 20px; + font-size: var(--font-size-20); text-align: center; } } diff --git a/styles/less/sheets/actors/character/inventory.less b/styles/less/sheets/actors/character/inventory.less index 0870c0c3..9fd48921 100644 --- a/styles/less/sheets/actors/character/inventory.less +++ b/styles/less/sheets/actors/character/inventory.less @@ -41,7 +41,7 @@ height: 32px; position: absolute; right: 20px; - font-size: 16px; + font-size: var(--font-size-16); z-index: 1; color: light-dark(@dark-blue-50, @beige-50); } diff --git a/styles/less/sheets/actors/character/loadout.less b/styles/less/sheets/actors/character/loadout.less index 35dffb79..08246efb 100644 --- a/styles/less/sheets/actors/character/loadout.less +++ b/styles/less/sheets/actors/character/loadout.less @@ -41,7 +41,7 @@ height: 32px; position: absolute; right: 20px; - font-size: 16px; + font-size: var(--font-size-16); z-index: 1; color: light-dark(@dark-blue-50, @beige-50); } diff --git a/styles/less/sheets/actors/character/sidebar.less b/styles/less/sheets/actors/character/sidebar.less index 3ff8576d..3d244cdd 100644 --- a/styles/less/sheets/actors/character/sidebar.less +++ b/styles/less/sheets/actors/character/sidebar.less @@ -89,7 +89,7 @@ transition: all 0.3s ease; .spellcast-label { - font-size: 14px; + font-size: var(--font-size-14); opacity: 0; margin-right: 0.3rem; transition: all 0.3s ease; @@ -258,7 +258,7 @@ text-align: center; line-height: 18px; color: light-dark(@beige, @dark-blue); - font-size: 12px; + font-size: var(--font-size-12); } } .status-value { @@ -402,7 +402,7 @@ font-weight: bold; text-align: center; line-height: 18px; - font-size: 12px; + font-size: var(--font-size-12); color: light-dark(@beige, @dark-blue); } } @@ -424,7 +424,7 @@ height: 30px; h4 { - font-size: 14px; + font-size: var(--font-size-14); font-weight: bold; text-transform: uppercase; color: light-dark(@dark-blue, @golden); @@ -490,7 +490,7 @@ .experience-value { height: 25px; width: 35px; - font-size: 14px; + font-size: var(--font-size-14); color: light-dark(@dark, @beige); align-content: center; text-align: center; diff --git a/styles/less/sheets/actors/companion/details.less b/styles/less/sheets/actors/companion/details.less index 9823825f..2df14b23 100644 --- a/styles/less/sheets/actors/companion/details.less +++ b/styles/less/sheets/actors/companion/details.less @@ -16,7 +16,7 @@ width: 100%; h3 { - font-size: 20px; + font-size: var(--font-size-20); } } .items-list { @@ -58,7 +58,7 @@ .experience-name { width: 180px; text-align: start; - font-size: 14px; + font-size: var(--font-size-14); color: light-dark(@dark, @beige); } } @@ -66,7 +66,7 @@ .experience-value { height: 25px; width: 35px; - font-size: 14px; + font-size: var(--font-size-14); color: light-dark(@dark, @beige); align-content: center; text-align: center; diff --git a/styles/less/sheets/actors/companion/header.less b/styles/less/sheets/actors/companion/header.less index 240f9df8..b85a1819 100644 --- a/styles/less/sheets/actors/companion/header.less +++ b/styles/less/sheets/actors/companion/header.less @@ -24,7 +24,7 @@ margin-bottom: -30px; input[type='text'] { - font-size: 24px; + font-size: var(--font-size-24); height: 32px; text-align: center; border: 1px solid transparent; @@ -78,7 +78,7 @@ font-weight: bold; text-align: center; line-height: 18px; - font-size: 12px; + font-size: var(--font-size-12); color: light-dark(@beige, @dark-blue); } } @@ -209,7 +209,7 @@ .level-button { color: light-dark(@dark, @beige); - font-size: 18px; + font-size: var(--font-size-18); line-height: 1; min-height: unset; height: min-content; diff --git a/styles/less/sheets/actors/environment/header.less b/styles/less/sheets/actors/environment/header.less index 0ac361a1..670f6c92 100644 --- a/styles/less/sheets/actors/environment/header.less +++ b/styles/less/sheets/actors/environment/header.less @@ -39,7 +39,7 @@ justify-content: center; align-items: center; padding: 3px 5px; - font-size: 12px; + font-size: var(--font-size-12); font: @font-body; background: light-dark(@dark-15, @beige-15); @@ -52,7 +52,7 @@ flex-direction: row; justify-content: center; align-items: center; - font-size: 12px; + font-size: var(--font-size-12); } } @@ -100,7 +100,7 @@ font-weight: bold; text-align: center; line-height: 18px; - font-size: 12px; + font-size: var(--font-size-12); color: light-dark(@beige, @dark-blue); } } @@ -108,7 +108,7 @@ .item-name { input[type='text'] { - font-size: 32px; + font-size: var(--font-size-32); height: 42px; text-align: start; transition: all 0.3s ease; diff --git a/styles/less/ui/chat/ability-use.less b/styles/less/ui/chat/ability-use.less index 58897697..d313638f 100644 --- a/styles/less/ui/chat/ability-use.less +++ b/styles/less/ui/chat/ability-use.less @@ -87,7 +87,7 @@ gap: 5px; .title { - font-size: 20px; + font-size: var(--font-size-20); color: @golden; font-weight: 700; } @@ -103,7 +103,7 @@ justify-content: center; align-items: center; padding: 3px 5px; - font-size: 12px; + font-size: var(--font-size-12); background: @beige-15; border: 1px solid @beige; diff --git a/styles/less/ui/chat/action.less b/styles/less/ui/chat/action.less index 82cc3210..a849315a 100644 --- a/styles/less/ui/chat/action.less +++ b/styles/less/ui/chat/action.less @@ -81,13 +81,13 @@ gap: 5px; .title { - font-size: 20px; + font-size: var(--font-size-20); color: @golden; font-weight: 700; } .label { - font-size: 12px; + font-size: var(--font-size-12); color: @beige; margin: 0; } diff --git a/styles/less/ui/chat/chat.less b/styles/less/ui/chat/chat.less index c6ed95ca..9eb35cd6 100644 --- a/styles/less/ui/chat/chat.less +++ b/styles/less/ui/chat/chat.less @@ -49,7 +49,7 @@ &.resource-roll { .reroll-message { text-align: center; - font-size: 18px; + font-size: var(--font-size-18); margin-bottom: 0; } } @@ -191,7 +191,7 @@ position: absolute; top: 0; right: 0; - font-size: 10px; + font-size: var(--font-size-10); z-index: 2; filter: drop-shadow(0 0 3px black); } diff --git a/styles/less/ui/chat/downtime.less b/styles/less/ui/chat/downtime.less index 8b898c43..ca29e85f 100644 --- a/styles/less/ui/chat/downtime.less +++ b/styles/less/ui/chat/downtime.less @@ -82,12 +82,12 @@ .header-label { padding: 8px; .title { - font-size: 16px; + font-size: var(--font-size-16); color: @golden; font-weight: 700; } .label { - font-size: 12px; + font-size: var(--font-size-12); color: @beige; margin: 0; } diff --git a/styles/less/ui/combat-sidebar/token-actions.less b/styles/less/ui/combat-sidebar/token-actions.less index 6fc84d29..41fb38ab 100644 --- a/styles/less/ui/combat-sidebar/token-actions.less +++ b/styles/less/ui/combat-sidebar/token-actions.less @@ -17,7 +17,7 @@ display: flex; align-items: center; justify-content: center; - font-size: 10px; + font-size: var(--font-size-10); padding: 8px; --button-size: 0; diff --git a/styles/less/ui/countdown/sheet.less b/styles/less/ui/countdown/sheet.less index 1692773e..0ce7c4af 100644 --- a/styles/less/ui/countdown/sheet.less +++ b/styles/less/ui/countdown/sheet.less @@ -47,7 +47,7 @@ position: absolute; top: 8px; right: 8px; - font-size: 18px; + font-size: var(--font-size-18); } .countdown-container { diff --git a/styles/less/ui/item-browser/item-browser.less b/styles/less/ui/item-browser/item-browser.less index 7be45b8c..d891e73d 100644 --- a/styles/less/ui/item-browser/item-browser.less +++ b/styles/less/ui/item-browser/item-browser.less @@ -161,7 +161,7 @@ height: 32px; position: absolute; right: 20px; - font-size: 16px; + font-size: var(--font-size-16); z-index: 1; color: light-dark(@dark-blue-50, @beige-50); } @@ -304,18 +304,18 @@ gap: 5px; h1 { - font-size: 32px; + font-size: var(--font-size-32); } h2 { - font-size: 28px; + font-size: var(--font-size-28); font-weight: 600; } h3 { - font-size: 20px; + font-size: var(--font-size-20); font-weight: 600; } h4 { - font-size: 16px; + font-size: var(--font-size-16); color: @beige; font-weight: 600; } diff --git a/styles/less/ui/settings/homebrew-settings/domains.less b/styles/less/ui/settings/homebrew-settings/domains.less index c2ba3ef7..84e013c2 100644 --- a/styles/less/ui/settings/homebrew-settings/domains.less +++ b/styles/less/ui/settings/homebrew-settings/domains.less @@ -44,7 +44,7 @@ border-radius: 50%; width: 24px; height: 24px; - font-size: 12px; + font-size: var(--font-size-12); } } } @@ -118,7 +118,7 @@ button { border-radius: 50%; - font-size: 12px; + font-size: var(--font-size-12); height: 24px; width: 24px; margin-right: 4px; diff --git a/styles/less/ui/settings/settings.less b/styles/less/ui/settings/settings.less index 8062ff73..cee5475f 100644 --- a/styles/less/ui/settings/settings.less +++ b/styles/less/ui/settings/settings.less @@ -53,7 +53,7 @@ } i { - font-size: 18px; + font-size: var(--font-size-18); } } } @@ -80,7 +80,7 @@ width: 80%; .item-name input[type='text'] { - font-size: 32px; + font-size: var(--font-size-32); height: 42px; text-align: center; width: 90%; @@ -117,7 +117,7 @@ label { position: absolute; top: -7px; - font-size: 12px; + font-size: var(--font-size-12); font-variant: petite-caps; z-index: 2; } diff --git a/styles/less/utils/mixin.less b/styles/less/utils/mixin.less index 2f1aa907..49e97a1f 100644 --- a/styles/less/utils/mixin.less +++ b/styles/less/utils/mixin.less @@ -30,7 +30,7 @@ align-items: center; h3 { - font-size: 20px; + font-size: var(--font-size-20); } } @@ -70,7 +70,7 @@ h4 { font-family: @font-body; - font-size: 14px; + font-size: var(--font-size-14); border: none; font-weight: 700; margin: 0; @@ -80,7 +80,7 @@ h5 { font-family: @font-body; - font-size: 14px; + font-size: var(--font-size-14); margin: 0; font-weight: normal; } diff --git a/styles/less/ux/autocomplete/autocomplete.less b/styles/less/ux/autocomplete/autocomplete.less index 868b4f43..808a8972 100644 --- a/styles/less/ux/autocomplete/autocomplete.less +++ b/styles/less/ux/autocomplete/autocomplete.less @@ -22,12 +22,12 @@ .group { font-weight: bold; - font-size: 14px; + font-size: var(--font-size-14); padding-left: 8px; } li[role='option'] { - font-size: 14px; + font-size: var(--font-size-14); padding-left: 10px; cursor: pointer; diff --git a/styles/less/ux/tooltip/tooltip.less b/styles/less/ux/tooltip/tooltip.less index 43f47da5..1d7079ee 100644 --- a/styles/less/ux/tooltip/tooltip.less +++ b/styles/less/ux/tooltip/tooltip.less @@ -85,7 +85,7 @@ gap: 8px; .tooltip-chip { - font-size: 18px; + font-size: var(--font-size-18); padding: 2px 4px; border: 1px solid light-dark(@dark-blue, @golden); border-radius: 6px; diff --git a/templates/sheets/items/weapon/header.hbs b/templates/sheets/items/weapon/header.hbs index ee0198ba..349a9516 100644 --- a/templates/sheets/items/weapon/header.hbs +++ b/templates/sheets/items/weapon/header.hbs @@ -14,7 +14,11 @@ - {{localize (concat 'DAGGERHEART.CONFIG.Range.' source.system.attack.range '.name')}} - - {{source.system.attack.damage.parts.0.value.dice}}{{#if source.system.attack.damage.parts.0.value.bonus}} + {{source.system.attack.damage.parts.0.value.bonus}}{{/if}} + {{#if source.system.attack.damage.parts.0.value.custom.enabled}} + {{localize "DAGGERHEART.GENERAL.custom"}} + {{else}} + {{source.system.attack.damage.parts.0.value.dice}}{{#if source.system.attack.damage.parts.0.value.bonus}} + {{source.system.attack.damage.parts.0.value.bonus}}{{/if}} + {{/if}} ( {{#each source.system.attack.damage.parts.0.type}} {{localize (concat 'DAGGERHEART.CONFIG.DamageType.' this '.abbreviation')}} diff --git a/templates/sheets/items/weapon/settings.hbs b/templates/sheets/items/weapon/settings.hbs index b2738c75..f9499221 100644 --- a/templates/sheets/items/weapon/settings.hbs +++ b/templates/sheets/items/weapon/settings.hbs @@ -21,10 +21,17 @@ {{#with systemFields.attack.fields.damage.fields.parts.element.fields as | fields | }} {{#with (lookup ../document.system.attack.damage.parts 0) as | source | }} {{localize "DAGGERHEART.GENERAL.damage"}} - {{localize "DAGGERHEART.GENERAL.Dice.single"}} - {{formInput fields.value.fields.dice value=source.value.dice name="system.attack.damage.parts.0.value.dice"}} - {{localize "DAGGERHEART.GENERAL.bonus"}} - {{formInput fields.value.fields.bonus value=source.value.bonus name="system.attack.damage.parts.0.value.bonus" localize=true}} + {{localize "DAGGERHEART.ACTIONS.Config.general.customFormula"}} + {{formInput fields.value.fields.custom.fields.enabled value=source.value.custom.enabled name="system.attack.damage.parts.0.value.custom.enabled"}} + {{#if source.value.custom.enabled}} + {{localize "DAGGERHEART.ACTIONS.Config.general.formula"}} + {{formInput fields.value.fields.custom.fields.formula value=source.value.custom.formula name="system.attack.damage.parts.0.value.custom.formula"}} + {{else}} + {{localize "DAGGERHEART.GENERAL.Dice.single"}} + {{formInput fields.value.fields.dice value=source.value.dice name="system.attack.damage.parts.0.value.dice"}} + {{localize "DAGGERHEART.GENERAL.bonus"}} + {{formInput fields.value.fields.bonus value=source.value.bonus name="system.attack.damage.parts.0.value.bonus" localize=true}} + {{/if}} {{localize "DAGGERHEART.GENERAL.type"}} {{formInput fields.type value=source.type name="system.attack.damage.parts.0.type" localize=true}} {{localize "DAGGERHEART.CONFIG.DamageType.direct.name"}} From 16173363d4450f4e0c9856b2bc58a1317bd85f8e Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Sun, 24 Aug 2025 02:24:57 +0200 Subject: [PATCH 027/260] [Feature] 687 - Companion Improvements (#1049) * Companions can't be put into CombatState anymore. Companions now have a Action Roll button * Added handling for multiselect toggleCombat --- module/applications/hud/tokenHUD.mjs | 25 +++++++++- .../applications/sheets/actors/companion.mjs | 47 +++++++++++++++++++ .../less/sheets/actors/companion/details.less | 13 +++++ templates/sheets/actors/companion/details.hbs | 3 ++ 4 files changed, 87 insertions(+), 1 deletion(-) diff --git a/module/applications/hud/tokenHUD.mjs b/module/applications/hud/tokenHUD.mjs index 5c29260b..48d5ac89 100644 --- a/module/applications/hud/tokenHUD.mjs +++ b/module/applications/hud/tokenHUD.mjs @@ -1,6 +1,9 @@ export default class DHTokenHUD extends foundry.applications.hud.TokenHUD { static DEFAULT_OPTIONS = { - classes: ['daggerheart'] + classes: ['daggerheart'], + actions: { + combat: DHTokenHUD.#onToggleCombat + } }; /** @override */ @@ -11,8 +14,14 @@ export default class DHTokenHUD extends foundry.applications.hud.TokenHUD { } }; + static #nonCombatTypes = ['environment', 'companion']; + async _prepareContext(options) { const context = await super._prepareContext(options); + + context.canToggleCombat = DHTokenHUD.#nonCombatTypes.includes(this.actor.type) + ? false + : context.canToggleCombat; context.systemStatusEffects = Object.keys(context.statusEffects).reduce((acc, key) => { const effect = context.statusEffects[key]; if (effect.systemEffect) acc[key] = effect; @@ -36,6 +45,20 @@ export default class DHTokenHUD extends foundry.applications.hud.TokenHUD { return context; } + static async #onToggleCombat() { + const tokens = canvas.tokens.controlled + .filter(t => !t.actor || !DHTokenHUD.#nonCombatTypes.includes(t.actor.type)) + .map(t => t.document); + if (!this.object.controlled) tokens.push(this.document); + + try { + if (this.document.inCombat) await TokenDocument.implementation.deleteCombatants(tokens); + else await TokenDocument.implementation.createCombatants(tokens); + } catch (err) { + ui.notifications.warn(err.message); + } + } + _getStatusEffectChoices() { // Include all HUD-enabled status effects const choices = {}; diff --git a/module/applications/sheets/actors/companion.mjs b/module/applications/sheets/actors/companion.mjs index 2b82f50a..82aee312 100644 --- a/module/applications/sheets/actors/companion.mjs +++ b/module/applications/sheets/actors/companion.mjs @@ -8,6 +8,7 @@ export default class DhCompanionSheet extends DHBaseActorSheet { classes: ['actor', 'companion'], position: { width: 340 }, actions: { + actionRoll: DhCompanionSheet.#actionRoll, levelManagement: DhCompanionSheet.#levelManagement } }; @@ -45,6 +46,52 @@ export default class DhCompanionSheet extends DHBaseActorSheet { /* Application Clicks Actions */ /* -------------------------------------------- */ + /** + * + */ + static async #actionRoll(event) { + const partner = this.actor.system.partner; + const config = { + event, + title: `${game.i18n.localize('DAGGERHEART.GENERAL.Roll.action')}: ${this.actor.name}`, + headerTitle: `Companion ${game.i18n.localize('DAGGERHEART.GENERAL.Roll.action')}`, + roll: { + trait: partner.system.spellcastModifierTrait?.key + }, + hasRoll: true, + data: partner.getRollData() + }; + + const result = await partner.diceRoll(config); + this.consumeResource(result?.costs); + } + + // Remove when Action Refactor part #2 done + async consumeResource(costs) { + if (!costs?.length) return; + + const partner = this.actor.system.partner; + const usefulResources = { + ...foundry.utils.deepClone(partner.system.resources), + fear: { + value: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), + max: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxFear, + reversed: false + } + }; + const resources = game.system.api.fields.ActionFields.CostField.getRealCosts(costs).map(c => { + const resource = usefulResources[c.key]; + return { + key: c.key, + value: (c.total ?? c.value) * (resource.isReversed ? 1 : -1), + target: resource.target, + keyIsID: resource.keyIsID + }; + }); + + await partner.modifyResource(resources); + } + /** * Opens the companions level management window. * @type {ApplicationClickAction} diff --git a/styles/less/sheets/actors/companion/details.less b/styles/less/sheets/actors/companion/details.less index 2df14b23..cbdc25e6 100644 --- a/styles/less/sheets/actors/companion/details.less +++ b/styles/less/sheets/actors/companion/details.less @@ -77,4 +77,17 @@ } } } + + .action-section { + display: flex; + padding: 0 10px; + margin-top: 20px; + width: 100%; + + button { + height: 40px; + width: 100%; + font-weight: 600; + } + } } diff --git a/templates/sheets/actors/companion/details.hbs b/templates/sheets/actors/companion/details.hbs index dd28e745..eee2122c 100644 --- a/templates/sheets/actors/companion/details.hbs +++ b/templates/sheets/actors/companion/details.hbs @@ -56,4 +56,7 @@
{{/each}}
+
+ +
\ No newline at end of file From 661808b5f153522d3b4374ea99694633b949c86a Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Sun, 24 Aug 2025 02:33:54 +0200 Subject: [PATCH 028/260] Fixed so observer permission doesn't allow using or editing anything (#1073) --- module/applications/sheets/actors/character.mjs | 9 +++++++++ styles/less/sheets/actors/character/sheet.less | 15 +++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/module/applications/sheets/actors/character.mjs b/module/applications/sheets/actors/character.mjs index 0328f0dd..465da28d 100644 --- a/module/applications/sheets/actors/character.mjs +++ b/module/applications/sheets/actors/character.mjs @@ -15,6 +15,8 @@ export default class CharacterSheet extends DHBaseActorSheet { static DEFAULT_OPTIONS = { classes: ['character'], position: { width: 850, height: 800 }, + /* Foundry adds disabled to all buttons and inputs if editPermission is missing. This is not desired. */ + editPermission: CONST.DOCUMENT_OWNERSHIP_LEVELS.OBSERVER, actions: { toggleVault: CharacterSheet.#toggleVault, rollAttribute: CharacterSheet.#rollAttribute, @@ -148,6 +150,13 @@ export default class CharacterSheet extends DHBaseActorSheet { .querySelector('.level-value') ?.addEventListener('change', event => this.document.updateLevel(Number(event.currentTarget.value))); + const observer = this.document.testUserPermission(game.user, CONST.DOCUMENT_OWNERSHIP_LEVELS.OBSERVER, { + exact: true + }); + if (observer) { + this.element.querySelector('.window-content').classList.add('viewMode'); + } + this._createFilterMenus(); this._createSearchFilter(); } diff --git a/styles/less/sheets/actors/character/sheet.less b/styles/less/sheets/actors/character/sheet.less index 68792c99..ee6580fd 100644 --- a/styles/less/sheets/actors/character/sheet.less +++ b/styles/less/sheets/actors/character/sheet.less @@ -11,6 +11,21 @@ padding-bottom: 0; overflow-x: auto; + &.viewMode { + button:not(.btn-toggle-view), + input:not(.search), + .controls, + .character-sidebar-sheet, + .img-portait, + .name-row, + .hope-section, + .downtime-section, + .character-traits, + .card-list { + pointer-events: none; + } + } + .character-sidebar-sheet { grid-row: 1 / span 2; grid-column: 1; From 2a0d748b5ee06133e3bfe9fb976b2ed59a6d46b3 Mon Sep 17 00:00:00 2001 From: Murilo Brito <91566541+moliloo@users.noreply.github.com> Date: Sat, 23 Aug 2025 21:52:18 -0300 Subject: [PATCH 029/260] [Bugfix] Fix light theme to roll messages (#1066) * fix light theme to roll messages * fix light theme issues * finally fix issues --------- Co-authored-by: WBHarry --- lang/en.json | 2 +- module/canvas/placeables/measuredTemplate.mjs | 6 +- module/data/fields/action/damageField.mjs | 20 +- module/data/item/weapon.mjs | 2 +- .../dialog/downtime/downtime-container.less | 2 +- styles/less/ui/chat/ability-use.less | 288 +++++++++--------- styles/less/ui/chat/action.less | 249 +++++++-------- styles/less/ui/chat/chat.less | 137 +++++++-- styles/less/ui/chat/downtime.less | 220 ++++++------- styles/less/ui/chat/sheet.less | 14 +- templates/ui/chat/resource-roll.hbs | 6 +- 11 files changed, 523 insertions(+), 423 deletions(-) diff --git a/lang/en.json b/lang/en.json index beeffd41..26eec167 100755 --- a/lang/en.json +++ b/lang/en.json @@ -2385,7 +2385,7 @@ "subtype": "Subtype", "folders": { "adversaries": "Adversaries", - "ancestries": "Ancestries", + "ancestries": "Ancestries", "equipment": "Equipment", "classes": "Classes", "subclasses": "Subclasses", diff --git a/module/canvas/placeables/measuredTemplate.mjs b/module/canvas/placeables/measuredTemplate.mjs index 83cddfe1..f3691bb8 100644 --- a/module/canvas/placeables/measuredTemplate.mjs +++ b/module/canvas/placeables/measuredTemplate.mjs @@ -11,19 +11,19 @@ export default class DhMeasuredTemplate extends foundry.canvas.placeables.Measur if (splitRulerText.length > 0) { const rulerValue = Number(splitRulerText[0]); const result = DhMeasuredTemplate.getRangeLabels(rulerValue, rangeMeasurementSettings); - this.ruler.text = result.distance + (result.units ? (' ' + result.units) : ''); + this.ruler.text = result.distance + (result.units ? ' ' + result.units : ''); } } } static getRangeLabels(distanceValue, settings) { - let result = { distance: distanceValue, units: '' } + let result = { distance: distanceValue, units: '' }; const rangeMeasurementOverride = canvas.scene.flags.daggerheart?.rangeMeasurementOverride; if (rangeMeasurementOverride === true) { result.distance = distanceValue; result.units = canvas.scene?.grid?.units; - return result + return result; } if (distanceValue <= settings.melee) { result.distance = game.i18n.localize('DAGGERHEART.CONFIG.Range.melee.name'); diff --git a/module/data/fields/action/damageField.mjs b/module/data/fields/action/damageField.mjs index 7f1b61e9..4b4dee7d 100644 --- a/module/data/fields/action/damageField.mjs +++ b/module/data/fields/action/damageField.mjs @@ -23,14 +23,22 @@ export class DHActionDiceData extends foundry.abstract.DataModel { multiplier: new fields.StringField({ choices: CONFIG.DH.GENERAL.multiplierTypes, initial: 'prof', - label: "DAGGERHEART.ACTIONS.Config.damage.multiplier" + label: 'DAGGERHEART.ACTIONS.Config.damage.multiplier' }), - flatMultiplier: new fields.NumberField({ nullable: true, initial: 1, label: "DAGGERHEART.ACTIONS.Config.damage.flatMultiplier" }), - dice: new fields.StringField({ choices: CONFIG.DH.GENERAL.diceTypes, initial: 'd6', label: "DAGGERHEART.GENERAL.Dice.single" }), - bonus: new fields.NumberField({ nullable: true, initial: null, label: "DAGGERHEART.GENERAL.bonus" }), + flatMultiplier: new fields.NumberField({ + nullable: true, + initial: 1, + label: 'DAGGERHEART.ACTIONS.Config.damage.flatMultiplier' + }), + dice: new fields.StringField({ + choices: CONFIG.DH.GENERAL.diceTypes, + initial: 'd6', + label: 'DAGGERHEART.GENERAL.Dice.single' + }), + bonus: new fields.NumberField({ nullable: true, initial: null, label: 'DAGGERHEART.GENERAL.bonus' }), custom: new fields.SchemaField({ - enabled: new fields.BooleanField({ label: "DAGGERHEART.ACTIONS.Config.general.customFormula" }), - formula: new FormulaField({ label: "DAGGERHEART.ACTIONS.Config.general.formula", initial: '' }) + enabled: new fields.BooleanField({ label: 'DAGGERHEART.ACTIONS.Config.general.customFormula' }), + formula: new FormulaField({ label: 'DAGGERHEART.ACTIONS.Config.general.formula', initial: '' }) }) }; } diff --git a/module/data/item/weapon.mjs b/module/data/item/weapon.mjs index ee4b997c..07a5c028 100644 --- a/module/data/item/weapon.mjs +++ b/module/data/item/weapon.mjs @@ -199,7 +199,7 @@ export default class DHWeapon extends AttachableItem { ]; for (const { value, type } of attack.damage.parts) { - const parts = value.custom.enabled ? [game.i18n.localize("DAGGERHEART.GENERAL.custom")] : [value.dice]; + const parts = value.custom.enabled ? [game.i18n.localize('DAGGERHEART.GENERAL.custom')] : [value.dice]; if (!value.custom.enabled && value.bonus) parts.push(value.bonus.signedString()); if (type.size > 0) { diff --git a/styles/less/dialog/downtime/downtime-container.less b/styles/less/dialog/downtime/downtime-container.less index 16edd3b0..eb615ef0 100644 --- a/styles/less/dialog/downtime/downtime-container.less +++ b/styles/less/dialog/downtime/downtime-container.less @@ -35,7 +35,7 @@ gap: 4px; .activity-marker { - font-size: .5rem; + font-size: 0.5rem; flex: none; color: light-dark(@dark-blue, @golden); margin-right: 4px; diff --git a/styles/less/ui/chat/ability-use.less b/styles/less/ui/chat/ability-use.less index d313638f..88302d0d 100644 --- a/styles/less/ui/chat/ability-use.less +++ b/styles/less/ui/chat/ability-use.less @@ -1,144 +1,144 @@ -@import '../../utils/colors.less'; -@import '../../utils/fonts.less'; -@import '../../utils/spacing.less'; - -.theme-light { - .daggerheart.chat.domain-card { - .domain-card-move .domain-card-header { - border-bottom: 1px solid @dark-blue; - - &:hover { - background: @dark-blue-10; - } - - .domain-label { - .title { - color: @dark-blue; - } - - .tags .tag { - background: @dark-15; - border: 1px solid @dark; - color: @dark; - } - } - - .fa-chevron-down { - color: @dark-blue; - } - } - - .description { - color: @dark; - } - } -} - -.daggerheart.chat { - &.domain-card { - display: flex; - flex-direction: column; - align-items: center; - - .card-img { - width: 100%; - height: 200px; - mask-image: linear-gradient(0deg, transparent 0%, black 10%, black 90%, transparent 100%); - object-fit: cover; - } - - details[open] { - .fa-chevron-down { - transform: rotate(180deg); - transition: all 0.3s ease; - } - } - - .domain-card-move { - width: 100%; - - .fa-chevron-down { - transition: all 0.3s ease; - margin-left: auto; - } - - .domain-card-header { - display: flex; - flex-direction: row; - align-items: center; - margin: 8px; - padding-bottom: 5px; - width: -webkit-fill-available; - gap: 5px; - border-bottom: 1px solid @golden; - - &:hover { - background: @golden-10; - cursor: pointer; - transition: all 0.3s ease; - } - - .domain-label { - display: flex; - flex-direction: column; - width: 100%; - padding-bottom: 5px; - width: -webkit-fill-available; - gap: 5px; - - .title { - font-size: var(--font-size-20); - color: @golden; - font-weight: 700; - } - - .tags { - display: flex; - gap: 10px; - flex-wrap: wrap; - - .tag { - display: flex; - flex-direction: row; - justify-content: center; - align-items: center; - padding: 3px 5px; - font-size: var(--font-size-12); - - background: @beige-15; - border: 1px solid @beige; - color: @beige; - border-radius: 3px; - } - } - } - } - } - - .description { - padding: 8px; - } - - .ability-card-footer { - display: flex; - flex-wrap: wrap; - gap: 5px; - width: 100%; - padding: 0 8px; - - button { - height: 40px; - flex: 1 1 calc(50% - 5px); - - &:nth-last-child(1):nth-child(odd) { - flex-basis: 100%; - } - } - - .ability-card-action-cost { - margin: auto; - font-size: 1.5em; - } - } - } -} +@import '../../utils/colors.less'; +@import '../../utils/fonts.less'; +@import '../../utils/spacing.less'; + +#interface.theme-light { + .daggerheart.chat.domain-card { + .domain-card-move .domain-card-header { + border-bottom: 1px solid @dark-blue; + + &:hover { + background: @dark-blue-10; + } + + .domain-label { + .title { + color: @dark-blue; + } + + .tags .tag { + background: @dark-15; + border: 1px solid @dark; + color: @dark; + } + } + + .fa-chevron-down { + color: @dark-blue; + } + } + + .description { + color: @dark; + } + } +} + +.daggerheart.chat { + &.domain-card { + display: flex; + flex-direction: column; + align-items: center; + + .card-img { + width: 100%; + height: 200px; + mask-image: linear-gradient(0deg, transparent 0%, black 10%, black 90%, transparent 100%); + object-fit: cover; + } + + details[open] { + .fa-chevron-down { + transform: rotate(180deg); + transition: all 0.3s ease; + } + } + + .domain-card-move { + width: 100%; + + .fa-chevron-down { + transition: all 0.3s ease; + margin-left: auto; + } + + .domain-card-header { + display: flex; + flex-direction: row; + align-items: center; + margin: 8px; + padding-bottom: 5px; + width: -webkit-fill-available; + gap: 5px; + border-bottom: 1px solid @golden; + + &:hover { + background: @golden-10; + cursor: pointer; + transition: all 0.3s ease; + } + + .domain-label { + display: flex; + flex-direction: column; + width: 100%; + padding-bottom: 5px; + width: -webkit-fill-available; + gap: 5px; + + .title { + font-size: var(--font-size-20); + color: @golden; + font-weight: 700; + } + + .tags { + display: flex; + gap: 10px; + flex-wrap: wrap; + + .tag { + display: flex; + flex-direction: row; + justify-content: center; + align-items: center; + padding: 3px 5px; + font-size: var(--font-size-12); + + background: @beige-15; + border: 1px solid @beige; + color: @beige; + border-radius: 3px; + } + } + } + } + } + + .description { + padding: 8px; + } + + .ability-card-footer { + display: flex; + flex-wrap: wrap; + gap: 5px; + width: 100%; + padding: 0 8px; + + button { + height: 40px; + flex: 1 1 calc(50% - 5px); + + &:nth-last-child(1):nth-child(odd) { + flex-basis: 100%; + } + } + + .ability-card-action-cost { + margin: auto; + font-size: 1.5em; + } + } + } +} diff --git a/styles/less/ui/chat/action.less b/styles/less/ui/chat/action.less index a849315a..817b0acd 100644 --- a/styles/less/ui/chat/action.less +++ b/styles/less/ui/chat/action.less @@ -1,124 +1,125 @@ -@import '../../utils/colors.less'; -@import '../../utils/fonts.less'; -@import '../../utils/spacing.less'; - -.theme-light { - .daggerheart.chat.action { - .action-move .action-section { - border-bottom: 1px solid @dark-blue; - - &:hover { - background: @dark-blue-10; - } - - .action-header { - .title { - color: @dark-blue; - } - .label { - color: @dark; - } - } - - .fa-chevron-down { - color: @dark-blue; - } - } - - .description { - color: @dark; - } - } -} - -.daggerheart.chat { - &.action { - display: flex; - flex-direction: column; - align-items: center; - - details[open] { - .fa-chevron-down { - transform: rotate(180deg); - transition: all 0.3s ease; - } - } - - .action-move { - width: 100%; - - .fa-chevron-down { - transition: all 0.3s ease; - margin-left: auto; - } - - .action-section { - display: flex; - flex-direction: row; - align-items: center; - margin: 8px 8px 0; - padding-bottom: 5px; - width: -webkit-fill-available; - gap: 5px; - border-bottom: 1px solid @golden; - - &:hover { - background: @golden-10; - cursor: pointer; - transition: all 0.3s ease; - } - - .action-img { - width: 40px; - height: 40px; - border-radius: 3px; - object-fit: cover; - } - - .action-header { - display: flex; - flex-direction: column; - gap: 5px; - - .title { - font-size: var(--font-size-20); - color: @golden; - font-weight: 700; - } - - .label { - font-size: var(--font-size-12); - color: @beige; - margin: 0; - } - } - } - } - - .description { - padding: 8px; - } - - .ability-card-footer { - display: flex; - flex-wrap: wrap; - gap: 5px; - width: 100%; - padding: 0 8px; - - button { - height: 40px; - flex: 1 1 calc(50% - 5px); - - &:nth-last-child(1):nth-child(odd) { - flex-basis: 100%; - } - } - - .ability-card-action-cost { - margin: auto; - font-size: 1.5em; - } - } - } -} +@import '../../utils/colors.less'; +@import '../../utils/fonts.less'; +@import '../../utils/spacing.less'; + +#interface.theme-light { + .daggerheart.chat.action { + .action-move .action-section { + border-bottom: 1px solid @dark-blue; + + &:hover { + background: @dark-blue-10; + } + + .action-header { + .title { + color: @dark-blue; + } + .label { + color: @dark; + } + } + + .fa-chevron-down { + color: @dark-blue; + } + } + + .description { + color: @dark; + } + } +} + +.daggerheart.chat { + &.action { + display: flex; + flex-direction: column; + align-items: center; + + details[open] { + .fa-chevron-down { + transform: rotate(180deg); + transition: all 0.3s ease; + } + } + + .action-move { + width: 100%; + + .fa-chevron-down { + transition: all 0.3s ease; + margin-left: auto; + } + + .action-section { + display: flex; + flex-direction: row; + align-items: center; + margin: 8px 8px 0; + padding-bottom: 5px; + width: -webkit-fill-available; + gap: 5px; + border-bottom: 1px solid @golden; + + &:hover { + background: @golden-10; + cursor: pointer; + transition: all 0.3s ease; + } + + .action-img { + width: 40px; + height: 40px; + border-radius: 3px; + object-fit: cover; + } + + .action-header { + display: flex; + flex-direction: column; + gap: 5px; + color: @beige; + + .title { + font-size: var(--font-size-20); + color: @golden; + font-weight: 700; + } + + .label { + font-size: var(--font-size-12); + color: @beige; + margin: 0; + } + } + } + } + + .description { + padding: 8px; + } + + .ability-card-footer { + display: flex; + flex-wrap: wrap; + gap: 5px; + width: 100%; + padding: 0 8px; + + button { + height: 40px; + flex: 1 1 calc(50% - 5px); + + &:nth-last-child(1):nth-child(odd) { + flex-basis: 100%; + } + } + + .ability-card-action-cost { + margin: auto; + font-size: 1.5em; + } + } + } +} diff --git a/styles/less/ui/chat/chat.less b/styles/less/ui/chat/chat.less index 9eb35cd6..828e2774 100644 --- a/styles/less/ui/chat/chat.less +++ b/styles/less/ui/chat/chat.less @@ -2,52 +2,137 @@ @import '../../utils/fonts.less'; @import '../../utils/spacing.less'; -.theme-light { - .daggerheart, - #chat-notifications { +#interface.theme-light { + .daggerheart.chat-sidebar .chat-log, + #chat-notifications .chat-log { --text-color: @dark-blue; --bg-color: @dark-blue-40; - .message-content .chat-roll { - .roll-part-header { - span, - span:before, - span:after { - color: @dark-blue; - } - &:before { - background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, @dark-blue 100%); - color: @dark-blue; + .chat-message { + .roll-formula { + background: @dark-15; + color: @dark; + } + + &.duality { + background-image: url(../assets/parchments/dh-parchment-dark.png); + + .message-content { + color: @beige; } - &:after { - background: linear-gradient(90deg, @dark-blue 0%, rgba(0, 0, 0, 0) 100%); - color: @dark-blue; + .roll-formula { + background: @dark-15; + color: @dark; + } + + .message-header { + .message-sub-header-container { + color: @beige; + h4 { + color: @golden; + } + } + .message-header-metadata { + .message-metadata { + color: @beige; + } + } + } + + &.hope { + --text-color: @golden; + --bg-color: @golden-40; + .message-header, + .message-content { + background-color: @golden-bg; + } + .roll-formula { + background: var(--bg-color); + color: var(--text-color); + } + } + + &.fear { + --text-color: @chat-blue; + --bg-color: @chat-blue-40; + .message-header, + .message-content { + background-color: @chat-blue-bg; + } + .roll-formula { + background: var(--bg-color); + color: var(--text-color); + } + } + + &.critical { + --text-color: @chat-purple; + --bg-color: @chat-purple-40; + .message-header, + .message-content { + background-color: @chat-purple-bg; + } + .roll-formula { + background: var(--bg-color); + color: var(--text-color); + } } } - .roll-section { - .roll-part-content { - .roll-result-value { + + &:not(.duality) { + .font-20 { + color: @dark; + } + + .roll-die { + color: @beige; + } + + fieldset { + color: @dark-blue; + border-color: @dark-blue; + + legend { color: @dark-blue; } + } + .chat-roll { + .roll-part-header { + color: @dark-blue; - .dice-tooltip .wrapper .roll-die { - color: @beige; + span::before, + span::after { + color: @dark-blue; + } + + &:before { + background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, @dark-blue 100%); + } + + &:after { + background: linear-gradient(90deg, @dark-blue 0%, rgba(0, 0, 0, 0) 100%); + } + } + + .roll-part-content { + &.dice-result { + color: @dark; + } + .roll-result-container { + color: @dark-blue; + } } } } } - - .chat-message .roll-formula { - background: @dark-15; - color: @dark; - } } } .daggerheart.chat { &.resource-roll { .reroll-message { + color: @beige; text-align: center; font-size: var(--font-size-18); margin-bottom: 0; diff --git a/styles/less/ui/chat/downtime.less b/styles/less/ui/chat/downtime.less index ca29e85f..5496a2a3 100644 --- a/styles/less/ui/chat/downtime.less +++ b/styles/less/ui/chat/downtime.less @@ -1,110 +1,110 @@ -@import '../../utils/colors.less'; -@import '../../utils/fonts.less'; -@import '../../utils/spacing.less'; - -.theme-light { - .daggerheart.chat.downtime { - .downtime-moves-list .downtime-move { - &:hover { - background: @dark-blue-10; - } - - .downtime-label { - border-bottom: 1px solid @dark-blue; - - .header-label .title { - color: @dark-blue; - } - .header-label .label { - color: @dark; - } - } - - .fa-chevron-down { - color: @dark-blue; - } - } - - .description { - color: @dark; - } - } -} - -.daggerheart.chat { - &.downtime { - display: flex; - flex-direction: column; - align-items: center; - - details[open] { - .fa-chevron-down { - transform: rotate(180deg); - transition: all 0.3s ease; - } - } - - .downtime-moves-list { - display: flex; - flex-direction: column; - gap: 5px; - width: 100%; - - .fa-chevron-down { - transition: all 0.3s ease; - margin-left: auto; - } - - .downtime-move { - width: 100%; - - .downtime-label { - display: flex; - align-items: center; - gap: 5px; - border-bottom: 1px solid @golden; - margin: 0 8px; - padding-bottom: 5px; - width: -webkit-fill-available; - - &:hover { - background: light-dark(@dark-blue-10, @golden-10); - cursor: pointer; - transition: all 0.3s ease; - } - - .downtime-image { - width: 40px; - height: 40px; - border-radius: 3px; - } - - .header-label { - padding: 8px; - .title { - font-size: var(--font-size-16); - color: @golden; - font-weight: 700; - } - .label { - font-size: var(--font-size-12); - color: @beige; - margin: 0; - } - } - } - - .description { - padding: 8px; - } - } - - .action-use-button { - width: -webkit-fill-available; - margin: 0 8px; - font-weight: 600; - height: 40px; - } - } - } -} +@import '../../utils/colors.less'; +@import '../../utils/fonts.less'; +@import '../../utils/spacing.less'; + +#interface.theme-light { + .daggerheart.chat.downtime { + .downtime-moves-list .downtime-move { + &:hover { + background: @dark-blue-10; + } + + .downtime-label { + border-bottom: 1px solid @dark-blue; + + .header-label .title { + color: @dark-blue; + } + .header-label .label { + color: @dark; + } + } + + .fa-chevron-down { + color: @dark-blue; + } + } + + .description { + color: @dark; + } + } +} + +.daggerheart.chat { + &.downtime { + display: flex; + flex-direction: column; + align-items: center; + + details[open] { + .fa-chevron-down { + transform: rotate(180deg); + transition: all 0.3s ease; + } + } + + .downtime-moves-list { + display: flex; + flex-direction: column; + gap: 5px; + width: 100%; + + .fa-chevron-down { + transition: all 0.3s ease; + margin-left: auto; + } + + .downtime-move { + width: 100%; + + .downtime-label { + display: flex; + align-items: center; + gap: 5px; + border-bottom: 1px solid @golden; + margin: 0 8px; + padding-bottom: 5px; + width: -webkit-fill-available; + + &:hover { + background: light-dark(@dark-blue-10, @golden-10); + cursor: pointer; + transition: all 0.3s ease; + } + + .downtime-image { + width: 40px; + height: 40px; + border-radius: 3px; + } + + .header-label { + padding: 8px; + .title { + font-size: var(--font-size-16); + color: @golden; + font-weight: 700; + } + .label { + font-size: var(--font-size-12); + color: @beige; + margin: 0; + } + } + } + + .description { + padding: 8px; + } + } + + .action-use-button { + width: -webkit-fill-available; + margin: 0 8px; + font-weight: 600; + height: 40px; + } + } + } +} diff --git a/styles/less/ui/chat/sheet.less b/styles/less/ui/chat/sheet.less index 59fa39dc..3d47a9b5 100644 --- a/styles/less/ui/chat/sheet.less +++ b/styles/less/ui/chat/sheet.less @@ -1,8 +1,8 @@ @import '../../utils/colors.less'; @import '../../utils/fonts.less'; -.theme-light { - .chat-message .message-content { +#interface.theme-light { + .chat-message:not(.duality) .message-content { color: @dark; blockquote { @@ -58,6 +58,12 @@ font-family: @font-body; font-weight: bold; } + + .dice-roll .dice-formula, + .dice-roll .dice-total { + background: @dark-blue-40; + color: @dark-blue; + } } } @@ -158,8 +164,8 @@ .dice-roll .dice-total { box-shadow: none; border: none; - background: light-dark(@dark-blue-40, @golden-40); - color: light-dark(@dark-blue, @golden); + background: @golden-10; + color: @golden; font-weight: 600; align-content: center; } diff --git a/templates/ui/chat/resource-roll.hbs b/templates/ui/chat/resource-roll.hbs index b6e1f3b0..dc41d18c 100644 --- a/templates/ui/chat/resource-roll.hbs +++ b/templates/ui/chat/resource-roll.hbs @@ -1,3 +1,3 @@ -
-
{{localize "DAGGERHEART.UI.Chat.resourceRoll.playerMessage" user=user name=name }}
-
\ No newline at end of file +
    +
  • {{localize "DAGGERHEART.UI.Chat.resourceRoll.playerMessage" user=user name=name }}
  • +
\ No newline at end of file From afdffb672a660b114fa7f4ecf15e228c83182bf1 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Sun, 24 Aug 2025 11:38:09 +1000 Subject: [PATCH 030/260] [PR] [Fix] Homebrew Settings, Initial Trait Modifiers improvements and clean up (#1035) * Remove old homebrew settings template file * Improve the Initial Trait Modifiers config display * Remove font setting --------- Co-authored-by: Chris Ryan --- styles/less/ui/settings/settings.less | 31 ++----- templates/settings/homebrew-settings.hbs | 90 ------------------- .../settings/homebrew-settings/settings.hbs | 17 ++-- 3 files changed, 19 insertions(+), 119 deletions(-) delete mode 100644 templates/settings/homebrew-settings.hbs diff --git a/styles/less/ui/settings/settings.less b/styles/less/ui/settings/settings.less index cee5475f..5dd203db 100644 --- a/styles/less/ui/settings/settings.less +++ b/styles/less/ui/settings/settings.less @@ -16,6 +16,12 @@ } } + &.six-columns { + display: grid; + grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; + gap: 2px; + } + &.start-align { align-self: flex-start; } @@ -103,28 +109,9 @@ gap: 4px; } - .trait-array-container { - display: flex; - justify-content: space-evenly; - gap: 8px; - margin-bottom: 16px; - - .trait-array-item { - position: relative; - display: flex; - justify-content: center; - - label { - position: absolute; - top: -7px; - font-size: var(--font-size-12); - font-variant: petite-caps; - z-index: 2; - } - - input { - text-align: center; - } + .trait-item { + input { + text-align: center; } } diff --git a/templates/settings/homebrew-settings.hbs b/templates/settings/homebrew-settings.hbs deleted file mode 100644 index 4e2c442f..00000000 --- a/templates/settings/homebrew-settings.hbs +++ /dev/null @@ -1,90 +0,0 @@ -
-
-

{{localize 'DAGGERHEART.SETTINGS.Menu.homebrew.name'}}

-
- {{formGroup settingFields.schema.fields.maxFear value=settingFields._source.maxFear localize=true}} - {{formGroup settingFields.schema.fields.maxDomains value=settingFields._source.maxDomains localize=true}} - {{formGroup settingFields.schema.fields.maxLoadout value=settingFields._source.maxLoadout localize=true}} -
- -

{{localize "DAGGERHEART.SETTINGS.Homebrew.FIELDS.traitArray.label"}}

-
- {{#each settingFields._source.traitArray as |trait index|}} -
- - -
- {{/each}} -
- -
- - {{localize "DAGGERHEART.SETTINGS.Homebrew.currency.title"}} - - {{formGroup settingFields.schema.fields.currency.fields.enabled value=settingFields._source.currency.enabled localize=true}} - {{formGroup settingFields.schema.fields.currency.fields.title value=settingFields._source.currency.title localize=true}} - {{formGroup settingFields.schema.fields.currency.fields.coins value=settingFields._source.currency.coins localize=true}} - {{formGroup settingFields.schema.fields.currency.fields.handfuls value=settingFields._source.currency.handfuls localize=true}} - {{formGroup settingFields.schema.fields.currency.fields.bags value=settingFields._source.currency.bags localize=true}} - {{formGroup settingFields.schema.fields.currency.fields.chests value=settingFields._source.currency.chests localize=true}} - -
- -
- {{localize "DAGGERHEART.SETTINGS.Homebrew.downtimeMoves"}} - -
- - {{localize "DAGGERHEART.APPLICATIONS.Downtime.longRest.title"}} - - - - -
- -
- -
-
- -
- {{#each settingFields._source.restMoves.longRest.moves as |move id|}} - {{> "systems/daggerheart/templates/settings/components/settings-item-line.hbs" this type="longRest" id=id }} - {{/each}} -
-
- -
- - {{localize "DAGGERHEART.APPLICATIONS.Downtime.shortRest.title"}} - - - - -
- -
- -
-
- -
- {{#each settingFields._source.restMoves.shortRest.moves as |move id|}} - {{> "systems/daggerheart/templates/settings/components/settings-item-line.hbs" this type="shortRest" id=id }} - {{/each}} -
-
-
- -
- - -
-
- \ No newline at end of file diff --git a/templates/settings/homebrew-settings/settings.hbs b/templates/settings/homebrew-settings/settings.hbs index 1c7c787d..893e1bc3 100644 --- a/templates/settings/homebrew-settings/settings.hbs +++ b/templates/settings/homebrew-settings/settings.hbs @@ -12,15 +12,18 @@ {{formGroup settingFields.schema.fields.maxLoadout value=settingFields._source.maxLoadout localize=true}}
-

{{localize "DAGGERHEART.SETTINGS.Homebrew.FIELDS.traitArray.label"}}

-
+
+ + {{localize "DAGGERHEART.SETTINGS.Homebrew.FIELDS.traitArray.label"}} + + {{#each settingFields._source.traitArray as |trait index|}} -
- - -
+
+ {{localize "DAGGERHEART.GENERAL.Modifier.single"}} {{add index 1}} + +
{{/each}} -
+
From 3386a9d61d6cb71769852c1f61564f7fd2c08c0a Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Tue, 26 Aug 2025 14:13:31 +0200 Subject: [PATCH 031/260] [Feature] 1031 - Action Names In Chat (#1039) * Fixed so that actions don't print the actor name in chat along with its own name * . --- module/data/action/baseAction.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/data/action/baseAction.mjs b/module/data/action/baseAction.mjs index d46bd776..ea619bcf 100644 --- a/module/data/action/baseAction.mjs +++ b/module/data/action/baseAction.mjs @@ -163,7 +163,7 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel const hasRoll = this.getUseHasRoll(byPass); return { event, - title: `${this.item.name}: ${game.i18n.localize(this.name)}`, + title: `${this.item instanceof CONFIG.Actor.documentClass ? '' : `${this.item.name}: `}${game.i18n.localize(this.name)}`, source: { item: this.item._id, action: this._id, From aaf6c689fc052bf9958470287e0e4ba980b6c1fa Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Tue, 26 Aug 2025 14:22:40 +0200 Subject: [PATCH 032/260] Add hint css (#1059) * Add hint css * Move .hint css class to global --- styles/less/global/elements.less | 19 ++++++++++++++++++- styles/less/global/global.less | 14 ++++++++++++++ styles/less/ui/settings/settings.less | 3 ++- .../settings/automation-settings/general.hbs | 2 +- 4 files changed, 35 insertions(+), 3 deletions(-) diff --git a/styles/less/global/elements.less b/styles/less/global/elements.less index 397420b2..399715ca 100755 --- a/styles/less/global/elements.less +++ b/styles/less/global/elements.less @@ -603,9 +603,12 @@ display: flex; justify-content: space-between; align-items: center; + gap: .25rem .5rem; + flex-wrap: wrap; label { - font-size: var(--font-size-16); + font-size: var(--font-size-14); + font-weight: normal; } .form-fields { @@ -613,6 +616,20 @@ gap: 4px; align-items: center; } + + &.setting-two-values { + display: grid; + grid-template-columns: repeat(3, 1fr); + gap: .25rem .5rem; + + .form-group { + justify-content: end; + } + + .hint { + grid-column: 1 / -1; + } + } } } diff --git a/styles/less/global/global.less b/styles/less/global/global.less index 5bf32746..cf8431b5 100644 --- a/styles/less/global/global.less +++ b/styles/less/global/global.less @@ -10,3 +10,17 @@ color: light-dark(@dark-blue-50, @beige-50); font-family: @font-body; } + +.daggerheart.dh-style { + .hint { + flex: 0 0 100%; + margin: 0; + color: var(--color-form-hint); + } + + &:hover { + .hint { + color: var(--color-form-hint-hover); + } + } +} \ No newline at end of file diff --git a/styles/less/ui/settings/settings.less b/styles/less/ui/settings/settings.less index 5dd203db..2ac8bfb0 100644 --- a/styles/less/ui/settings/settings.less +++ b/styles/less/ui/settings/settings.less @@ -4,7 +4,7 @@ fieldset { display: flex; flex-direction: column; - gap: 4px; + gap: .5rem; &.two-columns { display: grid; @@ -32,6 +32,7 @@ display: flex; align-items: center; gap: 8px; + flex-wrap: nowrap; } .settings-items { diff --git a/templates/settings/automation-settings/general.hbs b/templates/settings/automation-settings/general.hbs index 04d08a9f..211ee68e 100644 --- a/templates/settings/automation-settings/general.hbs +++ b/templates/settings/automation-settings/general.hbs @@ -3,7 +3,7 @@ data-tab="{{tabs.general.id}}" data-group="{{tabs.general.group}}" > -
+
{{formGroup settingFields.schema.fields.hopeFear.fields.gm value=settingFields._source.hopeFear.gm localize=true}} {{formGroup settingFields.schema.fields.hopeFear.fields.players value=settingFields._source.hopeFear.players localize=true}} From 8e5dd2237085cb43fd08b65586e3f21a0b5f94ff Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Wed, 27 Aug 2025 02:12:48 +0200 Subject: [PATCH 033/260] [Fix] 900 - Compendium Self Targetting (#1077) * Fixed classes and subclasses * Went over DomainCards * Everything except de-facto-items * Fixed items * Fixed merge conflicts --- module/config/itemConfig.mjs | 3 + .../feature_Retract_UFR67BUOhNGLFyg9.json | 10 +-- .../feature_Wings_WquAjoOcso8lwySW.json | 10 +-- ...eature_Armored_Shell_nDQZdIF2epKlhauX.json | 10 +-- .../feature_Rampage_8upqfcZvi7b5hRLE.json | 70 +++++++++++++--- .../feature_Takedown_0ey4kM9ssj2otHvb.json | 23 +++--- ...ature_Frontline_Tank_YS1g7YdWwOaS629x.json | 10 +-- ...eature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json | 10 +-- .../feature_No_Mercy_njj2C3tMDeCHHOoh.json | 10 +-- ...ature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json | 60 ++++++++++++-- ...eature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json | 16 ++-- ...feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json | 36 +-------- ...inCard_Bold_Presence_tdsL00yTSLNgZWs6.json | 18 ++--- ...inCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json | 10 +-- ...inCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json | 10 +-- ...nCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json | 8 +- ...inCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json | 8 +- ...nCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json | 10 +-- ...inCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json | 10 +-- ...ainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json | 36 ++++----- ...Card_Force_of_Nature_LzVpMkD5I4QeaIHf.json | 10 +-- .../domainCard_Frenzy_MMl7abdGRLl7TJLO.json | 10 +-- ...omainCard_Full_Surge_SgvjJfMyubZowPxS.json | 18 ++--- ...inCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json | 26 +++--- ...ard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json | 8 +- ...Card_Lead_by_Example_YWCRplmtwpCjpq5i.json | 8 +- ...rd_Overwhelming_Aura_iEBLySZD9z8CLdz7.json | 10 +-- .../domainCard_Rage_Up_GRL0cvs96vrTDckZ.json | 20 ++--- ...nCard_Rain_of_Blades_Ucenef6JpjQxwXni.json | 8 +- ...nCard_Salvation_Beam_4uAFGp3LxiC07woC.json | 8 +- .../domainCard_Smite_U1uWJE94HZVudujz.json | 10 +-- ..._Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json | 10 +-- ...omainCard_Thorn_Skin_oUipGK84E2KjoKqh.json | 10 +-- ...ard_Uncanny_Disguise_TV56wSysbU5xAlOa.json | 10 +-- ...inCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json | 10 +-- ...Card_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json | 8 +- ...inCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json | 10 +-- .../folders_Splendor_TL1TutmbeCVJ06nR.json | 8 +- .../folders_Valor_yPVeShe47ETIqs9q.json | 8 +- ...mable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json | 10 +-- ...umable_Attune_Potion_JGD3M9hBHtVAA8XP.json | 8 +- ...e_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json | 10 +-- ...mable_Bolster_Potion_FOPQNqXbiVO0ilYL.json | 8 +- ...consumable_Death_Tea_xDnJeF1grkmKck8Q.json | 10 +-- ...able_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json | 10 +-- ...nsumable_Featherbone_DpxEMpwfasEBpORU.json | 64 +++++++++++++-- ...onsumable_Gill_Salve_Nvbb9mze6o5D0AEg.json | 64 +++++++++++++-- .../loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json | 68 +++++++++++++--- ...loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json | 8 +- ...loot_Premium_Bedroll_QGYPNBIufpBguwjC.json | 10 +-- ...t_Ring_of_Resistance_aUqRifqR5JXXa1dN.json | 79 +++++++++++++++++-- ...loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json | 43 +++++----- ...ture_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json | 8 +- .../feature_Adrenaline_uByM34yQlw38yf1V.json | 37 +-------- ...eature_Battle_Bonded_hWsKyed1vfILg0I8.json | 54 ++++++++++++- ...feature_Elementalist_dPcqKN5NeDkjB1HW.json | 28 ++++--- ...ure_Elusive_Predator_Cjtc43V3IzAmfIFG.json | 54 ++++++++++++- ...re_Ruthless_Predator_Qny2J3R35bvC0Cey.json | 10 +-- ...ature_Shadow_Stepper_hAwTXjhyphiE3aeW.json | 10 +-- ...eature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json | 18 ++--- 60 files changed, 786 insertions(+), 413 deletions(-) diff --git a/module/config/itemConfig.mjs b/module/config/itemConfig.mjs index cee4bc52..7e9f75ea 100644 --- a/module/config/itemConfig.mjs +++ b/module/config/itemConfig.mjs @@ -865,6 +865,9 @@ export const weaponFeatures = { name: 'DAGGERHEART.CONFIG.WeaponFeature.greedy.name', description: 'DAGGERHEART.CONFIG.WeaponFeature.greedy.description', img: 'icons/commodities/currency/coins-crown-stack-gold.webp', + target: { + type: 'self' + }, // Should cost handful of gold, effects: [ { diff --git a/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json b/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json index 59e33ce4..0e3e6555 100644 --- a/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json +++ b/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json @@ -23,12 +23,12 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Stress", "img": "icons/magic/defensive/shield-barrier-flaming-diamond-teal.webp", - "range": "" + "range": "self" } }, "originItemType": null, @@ -111,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753996513763, - "modifiedTime": 1755394440308, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756040910699, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!UFR67BUOhNGLFyg9" } diff --git a/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json b/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json index 7bc73dc6..87aa36a9 100644 --- a/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json +++ b/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json @@ -31,12 +31,12 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Stress", "img": "icons/creatures/abilities/wing-batlike-white-blue.webp", - "range": "" + "range": "self" } }, "originItemType": null, @@ -113,10 +113,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753994723305, - "modifiedTime": 1755394368487, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756040981649, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!WquAjoOcso8lwySW" } diff --git a/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json b/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json index b4d711a5..26534190 100644 --- a/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json +++ b/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json @@ -24,7 +24,7 @@ ], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, "effects": [ @@ -39,7 +39,7 @@ }, "name": "Retract", "img": "icons/creatures/reptiles/turtle-shell-glowing-green.webp", - "range": "" + "range": "self" } }, "originItemType": null, @@ -149,10 +149,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753580983699, - "modifiedTime": 1755395623887, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756041050697, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "nDQZdIF2epKlhauX", "sort": 2200000, diff --git a/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json b/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json index 3ac9731d..e9b157ba 100644 --- a/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json +++ b/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json @@ -24,22 +24,22 @@ ], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, "effects": [ { - "_id": "5TX0hHFKZHvBeWne", + "_id": "A7l4JEBC1FFQajsN", "onSave": false } ], "target": { - "type": null, + "type": "self", "amount": null }, - "name": "Gain Proficiency", + "name": "Mark Stress", "img": "icons/creatures/abilities/bear-roar-bite-brown.webp", - "range": "" + "range": "self" } }, "originItemType": null, @@ -51,7 +51,59 @@ "artist": "" } }, - "effects": [], + "effects": [ + { + "name": "Rampage", + "img": "icons/creatures/claws/claw-bear-paw-swipe-red.webp", + "origin": "Compendium.daggerheart.beastforms.Item.8upqfcZvi7b5hRLE", + "transfer": false, + "_id": "A7l4JEBC1FFQajsN", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [ + { + "key": "system.proficiency", + "mode": 2, + "value": "1", + "priority": null + } + ], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

Before you make an attack roll, you can mark a Stress to gain a +1 bonus to your Proficiency for that attack.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756041194412, + "modifiedTime": 1756041218646, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!8upqfcZvi7b5hRLE.A7l4JEBC1FFQajsN" + } + ], "folder": "uU8bIoZvXge0rLaU", "ownership": { "default": 0, @@ -64,10 +116,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753582591417, - "modifiedTime": 1755395649724, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756041228102, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "8upqfcZvi7b5hRLE", "sort": 2000000, diff --git a/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json b/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json index a1a14198..f31ed781 100644 --- a/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json +++ b/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json @@ -24,7 +24,7 @@ ], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, "damage": { @@ -58,7 +58,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [], @@ -84,7 +84,7 @@ }, "name": "Attack", "img": "icons/creatures/abilities/paw-print-orange.webp", - "range": "" + "range": "self" } }, "originItemType": null, @@ -101,7 +101,7 @@ "name": "Takedown", "img": "icons/creatures/abilities/paw-print-orange.webp", "origin": "Item.okjlLUwEdNOKeUk3", - "transfer": false, + "transfer": true, "_id": "hE6ciIusvKEtUQ8U", "type": "base", "system": {}, @@ -113,7 +113,7 @@ "priority": null } ], - "disabled": false, + "disabled": true, "duration": { "startTime": null, "combat": null, @@ -123,7 +123,7 @@ "startRound": null, "startTurn": null }, - "description": "", + "description": "

You gain a +2 bonus to your Proficiency for this attack and the target must mark a Stress.

", "tint": "#ffffff", "statuses": [], "sort": 0, @@ -132,10 +132,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", - "lastModifiedBy": null + "lastModifiedBy": "vUIbuan0U50nfKBE", + "modifiedTime": 1756041368153 }, "_key": "!items.effects!0ey4kM9ssj2otHvb.hE6ciIusvKEtUQ8U" } @@ -152,10 +153,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753621786000, - "modifiedTime": 1755395696040, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756041242273, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "0ey4kM9ssj2otHvb", "sort": 600000, diff --git a/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json b/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json index a0b56f5f..701f8eb9 100644 --- a/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json +++ b/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json @@ -60,7 +60,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [], @@ -81,7 +81,7 @@ }, "name": "Spend Hope", "img": "icons/magic/defensive/shield-barrier-flaming-pentagon-orange.webp", - "range": "" + "range": "self" } }, "originItemType": null, @@ -105,10 +105,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754246687097, - "modifiedTime": 1755391259920, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756034159296, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!YS1g7YdWwOaS629x" } diff --git a/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json b/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json index f2e99b8f..3a640f48 100644 --- a/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json +++ b/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json @@ -5,14 +5,14 @@ "_id": "2Cyb9ZeuAesf5Sb3", "img": "icons/magic/defensive/barrier-shield-dome-deflect-teal.webp", "system": { - "description": "

Spend 3 Hope when you succeed on an attack with a weapon to use that same roll against two additional adversaries within range of the attack.

", + "description": "

Spend 3 Hope when you succeed on an attack with a weapon to use that same roll against two additional adversaries within range of the attack.

", "resource": null, "actions": { "yhVUna5biFAN0o2Y": { "type": "effect", "_id": "yhVUna5biFAN0o2Y", "systemPath": "actions", - "description": "

Spend 3 Hope when you succeed on an attack with a weapon to use that same roll against two additional adversaries within range of the attack.

", + "description": "

Spend 3 Hope when you succeed on an attack with a weapon to use that same roll against two additional adversaries within range of the attack.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -60,10 +60,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754268431889, - "modifiedTime": 1755391281371, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756034191317, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!2Cyb9ZeuAesf5Sb3" } diff --git a/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json b/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json index b131fcdf..7d689fe3 100644 --- a/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json +++ b/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json @@ -38,12 +38,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Spend Hope", "img": "icons/magic/holy/barrier-shield-winged-blue.webp", - "range": "" + "range": "self" } }, "originItemType": null, @@ -119,10 +119,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754257270096, - "modifiedTime": 1755391439746, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756034406042, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!njj2C3tMDeCHHOoh" } diff --git a/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json b/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json index 4f798663..d3d10bc0 100644 --- a/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json +++ b/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json @@ -29,7 +29,12 @@ "max": "", "recovery": null }, - "effects": [], + "effects": [ + { + "_id": "SXi2dQWqpwY9fap4", + "onSave": false + } + ], "target": { "type": "any", "amount": null @@ -47,7 +52,52 @@ "artist": "" } }, - "effects": [], + "effects": [ + { + "name": "Ranger's Focus", + "img": "icons/magic/perception/eye-ringed-green.webp", + "origin": "Compendium.daggerheart.classes.Item.ncLx2P8BOUtrAD38", + "transfer": false, + "_id": "SXi2dQWqpwY9fap4", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

Until this feature ends or the ranger makes a different creature their Focus, they gain the following benefits against this adversary:

  • They know precisely what direction they are in.

  • When they deal damage to them, the adverasry must mark a Stress.

  • When they fail an attack against them, they can end their Ranger’s Focus feature to reroll their Duality Dice.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756034238996, + "modifiedTime": 1756034332923, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!ncLx2P8BOUtrAD38.SXi2dQWqpwY9fap4" + } + ], "sort": 0, "ownership": { "default": 0, @@ -60,10 +110,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754268505051, - "modifiedTime": 1755391289388, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756034239047, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!ncLx2P8BOUtrAD38" } diff --git a/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json b/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json index 244f46c5..fcc178d0 100644 --- a/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json +++ b/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json @@ -36,7 +36,7 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Spend Hope", @@ -76,7 +76,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -95,12 +95,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754323997794, - "modifiedTime": 1754351805065, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756034385415, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!hVaaPIjxoextIgSL.hhVjBro2osGDTT5g" } @@ -117,10 +117,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754323951411, - "modifiedTime": 1755391319440, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756034357629, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!hVaaPIjxoextIgSL" } diff --git a/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json b/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json index eb637edd..8984606c 100644 --- a/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json +++ b/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json @@ -7,35 +7,7 @@ "system": { "description": "

When you succeed on an attack while Cloaked or while an ally is within Melee range of your target, add a number of d6s equal to your tier to your damage roll.

  • Level 1 -> Tier 1

  • Levels 2–4 -> Tier 2

  • Levels 5–7 -> Tier 3

  • Levels 8–10 -> Tier 4

", "resource": null, - "actions": { - "SfctrIW5KjH4nq5G": { - "type": "effect", - "_id": "SfctrIW5KjH4nq5G", - "systemPath": "actions", - "description": "

When you succeed on an attack while Cloaked or while an ally is within Melee range of your target, add a number of d6s equal to your tier to your damage roll.

  • Level 1 -> Tier 1

  • Levels 2–4 -> Tier 2

  • Levels 5–7 -> Tier 3

  • Levels 8–10 -> Tier 4

", - "chatDisplay": true, - "actionType": "action", - "cost": [], - "uses": { - "value": null, - "max": "", - "recovery": null - }, - "effects": [ - { - "_id": "380jFzw756qSy5ae", - "onSave": false - } - ], - "target": { - "type": "any", - "amount": null - }, - "name": "Use Sneak Attack", - "img": "icons/skills/melee/strike-dagger-skull-white.webp", - "range": "" - } - }, + "actions": {}, "originItemType": null, "originId": null, "attribution": { @@ -115,10 +87,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754324216454, - "modifiedTime": 1755391313725, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756034698108, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!5QqpEwmwkPfZHpMW" } diff --git a/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json b/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json index 164ffb48..c83c1fde 100644 --- a/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json +++ b/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json @@ -43,7 +43,7 @@ }, "name": "Spend Hope", "img": "icons/magic/holy/barrier-shield-winged-blue.webp", - "range": "" + "range": "self" }, "OdRTXMOXhZFiZHES": { "type": "effect", @@ -81,10 +81,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784418, - "modifiedTime": 1755429846358, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038980509, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "tdsL00yTSLNgZWs6", "sort": 3400000, @@ -93,7 +93,7 @@ "name": "Bold Presence", "img": "icons/magic/holy/barrier-shield-winged-blue.webp", "origin": "Compendium.daggerheart.domains.Item.tdsL00yTSLNgZWs6", - "transfer": true, + "transfer": false, "_id": "2XEYhuAcRGTtqvED", "type": "base", "system": { @@ -112,7 +112,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -131,12 +131,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754241531511, - "modifiedTime": 1754241605959, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756038989398, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!tdsL00yTSLNgZWs6.2XEYhuAcRGTtqvED" } diff --git a/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json b/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json index b6f8bfcc..862d5da9 100644 --- a/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json +++ b/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json @@ -28,7 +28,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [ @@ -59,7 +59,7 @@ }, "name": "Transform", "img": "icons/containers/barrels/barrel-reinforced-cherry-brown.webp", - "range": "" + "range": "self" }, "h7i4ZuDYuYLnjze6": { "type": "attack", @@ -126,10 +126,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784424, - "modifiedTime": 1755429102985, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038121293, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "SZMNR3uGNinJcN4N", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json b/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json index 4ee7c45c..3c60a08d 100644 --- a/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json +++ b/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json @@ -30,12 +30,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Adjust Appearance", "img": "icons/magic/defensive/shield-barrier-blades-teal.webp", - "range": "" + "range": "self" }, "wBQkw3P4Esj6kOx2": { "type": "effect", @@ -132,10 +132,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784424, - "modifiedTime": 1755428993189, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756037990822, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "eq8VNqYMRHhF9xw9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json b/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json index 8cef1c1e..8d91c1ee 100644 --- a/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json +++ b/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json @@ -89,7 +89,7 @@ }, "name": "Magic Immunity", "img": "icons/magic/defensive/barrier-shield-dome-deflect-teal.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -105,10 +105,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784429, - "modifiedTime": 1755429115570, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038143042, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "J1ovx2FpNDvPq1o6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json b/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json index 567d7d57..3781989d 100644 --- a/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json +++ b/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json @@ -41,7 +41,7 @@ ], "target": { "type": "any", - "amount": null + "amount": 1 }, "name": "Mark Stress", "img": "icons/skills/wounds/bone-broken-knee-beam.webp", @@ -61,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784431, - "modifiedTime": 1755428345979, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756037935304, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "8UANBgSdhMZ0sqfO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json b/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json index f19833c5..5314de9e 100644 --- a/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json +++ b/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json @@ -40,12 +40,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Become Cloaked", "img": "icons/magic/perception/shadow-stealth-eyes-purple.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -61,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784435, - "modifiedTime": 1755428020354, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756037373705, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "Zhw7PtK8nMPlsOqD", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json b/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json index 9d243ade..82d68f9c 100644 --- a/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json +++ b/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json @@ -36,7 +36,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [ @@ -67,7 +67,7 @@ }, "name": "Tekaira's Armored Beetles: Stress", "img": "icons/creatures/invertebrates/wasp-swarm-attack.webp", - "range": "" + "range": "self" }, "533qzPIjcccpiMey": { "type": "effect", @@ -195,10 +195,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784438, - "modifiedTime": 1755429481288, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038512929, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "rZPH0BY8Sznc9sFG", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json b/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json index df82f1aa..9246896d 100644 --- a/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json +++ b/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json @@ -26,17 +26,17 @@ }, "effects": [ { - "_id": "6sR46Hd554DiLHy4", + "_id": "TFWiAUDCfGaax5MU", "onSave": false } ], "target": { - "type": "any", - "amount": null + "type": "self", + "amount": 1 }, "name": "Focus", "img": "icons/skills/targeting/crosshair-pointed-orange.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -52,20 +52,20 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784443, - "modifiedTime": 1755428127375, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756037604544, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "xxZOXC4tiZQ6kg1e", "sort": 3400000, "effects": [ { "name": "Deadly Focus", - "img": "systems/daggerheart/assets/icons/domains/domain-card/blade.png", + "img": "icons/skills/targeting/crosshair-pointed-orange.webp", "origin": "Compendium.daggerheart.domains.Item.xxZOXC4tiZQ6kg1e", - "transfer": true, - "_id": "6sR46Hd554DiLHy4", + "transfer": false, + "_id": "TFWiAUDCfGaax5MU", "type": "base", "system": { "rangeDependence": { @@ -83,7 +83,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -93,7 +93,7 @@ "startRound": null, "startTurn": null }, - "description": "", + "description": "

Until you attack another creature, you defeat the target, or the battle ends, gain a +1 bonus to your Proficiency.

", "tint": "#ffffff", "statuses": [], "sort": 0, @@ -102,14 +102,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1754244951545, - "modifiedTime": 1754304242570, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "systemVersion": "1.1.0", + "createdTime": 1756037548255, + "modifiedTime": 1756037588317, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, - "_key": "!items.effects!xxZOXC4tiZQ6kg1e.6sR46Hd554DiLHy4" + "_key": "!items.effects!xxZOXC4tiZQ6kg1e.TFWiAUDCfGaax5MU" } ], "ownership": { diff --git a/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json b/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json index ff9b1ebf..9aefa1bf 100644 --- a/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json +++ b/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json @@ -38,12 +38,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Transform", "img": "icons/magic/nature/elemental-plant-humanoid.webp", - "range": "" + "range": "self" }, "1rLoYS90AZizJujS": { "type": "effect", @@ -89,10 +89,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784456, - "modifiedTime": 1755429633230, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038760003, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "LzVpMkD5I4QeaIHf", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json b/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json index 87dddb15..c6323551 100644 --- a/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json +++ b/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json @@ -31,12 +31,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Frenzy", "img": "icons/magic/fire/projectile-wave-yellow.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -52,10 +52,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784459, - "modifiedTime": 1755428186983, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756037770198, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "MMl7abdGRLl7TJLO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json b/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json index 15ffb49e..b8ac3547 100644 --- a/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json +++ b/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json @@ -43,7 +43,7 @@ }, "name": "Mark Stress", "img": "icons/magic/control/buff-flight-wings-runes-purple.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -59,10 +59,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784460, - "modifiedTime": 1755429931329, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756039042961, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "SgvjJfMyubZowPxS", "sort": 3400000, @@ -71,7 +71,7 @@ "name": "Full Surge", "img": "icons/magic/symbols/ring-circle-smoke-blue.webp", "origin": "Compendium.daggerheart.domains.Item.SgvjJfMyubZowPxS", - "transfer": true, + "transfer": false, "_id": "H5q5iYImr69TfZcp", "type": "base", "system": { @@ -120,7 +120,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -139,12 +139,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754242182511, - "modifiedTime": 1754242229676, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756039048089, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!SgvjJfMyubZowPxS.H5q5iYImr69TfZcp" } diff --git a/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json b/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json index b572243f..6ea5b5c2 100644 --- a/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json +++ b/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json @@ -43,7 +43,7 @@ }, "name": "Spend Hope", "img": "icons/magic/holy/barrier-shield-winged-blue.webp", - "range": "" + "range": "self" }, "SKG6Gu0uJZxtYTnz": { "type": "effect", @@ -87,10 +87,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784468, - "modifiedTime": 1755429945423, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756039072992, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "kdFoLo3KXwn4LqTG", "sort": 3400000, @@ -99,7 +99,7 @@ "name": "Hold the Line", "img": "icons/magic/defensive/shield-barrier-blue.webp", "origin": "Compendium.daggerheart.domains.Item.kdFoLo3KXwn4LqTG", - "transfer": true, + "transfer": false, "_id": "y82y3nUStyL8DIJL", "type": "base", "system": { @@ -111,7 +111,7 @@ } }, "changes": [], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -130,18 +130,18 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754242295342, - "modifiedTime": 1754242434181, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756039077113, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!kdFoLo3KXwn4LqTG.y82y3nUStyL8DIJL" }, { "name": "Hold the Line", - "img": "systems/daggerheart/assets/icons/domains/domain-card/valor.png", + "img": "icons/skills/melee/shield-block-bash-blue.webp", "origin": "Compendium.daggerheart.domains.Item.kdFoLo3KXwn4LqTG", "transfer": false, "_id": "WTYg0b8nE1XbnMiA", @@ -176,12 +176,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754242400483, - "modifiedTime": 1754242409060, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756039151398, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!kdFoLo3KXwn4LqTG.WTYg0b8nE1XbnMiA" } diff --git a/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json b/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json index 7579ac02..d7ad18c6 100644 --- a/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json +++ b/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json @@ -14,7 +14,7 @@ "type": "attack", "_id": "kLMAuyZktmohOSXa", "systemPath": "actions", - "description": "

Make a Spellcast Roll against all adversaries in front of you within Close range. Once per rest on a success, create an illusion of flashing colors and lights that temporarily Stuns targets you succeed against and forces them to mark a Stress. While Stunned, they can’t use reactions and can’t take any other actions until they clear this condition.

", + "description": "

Make a Spellcast Roll against all adversaries in front of you within Close range. Once per rest on a success, create an illusion of flashing colors and lights that temporarily Stuns targets you succeed against and forces them to mark a Stress. While Stunned, they can’t use reactions and can’t take any other actions until they clear this condition.

@Template[type:infront|range:c]

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -102,10 +102,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784471, - "modifiedTime": 1755429167606, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038232979, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "2ZeuCGVatQdPOVC6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json b/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json index fa6f3c10..2566febc 100644 --- a/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json +++ b/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json @@ -39,7 +39,7 @@ ], "target": { "type": "any", - "amount": null + "amount": 1 }, "name": "Mark Stress", "img": "icons/magic/control/buff-flight-wings-runes-purple.webp", @@ -59,10 +59,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784475, - "modifiedTime": 1755429951881, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756039181179, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "YWCRplmtwpCjpq5i", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json b/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json index 72a79735..e3dee02a 100644 --- a/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json +++ b/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json @@ -38,7 +38,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [ @@ -69,7 +69,7 @@ }, "name": "Cast", "img": "icons/magic/holy/angel-winged-humanoid-blue.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -85,10 +85,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784491, - "modifiedTime": 1755429784343, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038903709, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "iEBLySZD9z8CLdz7", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json b/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json index d9d67737..140e570d 100644 --- a/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json +++ b/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json @@ -14,7 +14,7 @@ "type": "effect", "_id": "LmjwPg03xLnoGTHm", "systemPath": "actions", - "description": "", + "description": "

You can mark a Stress to gain a bonus to your damage roll equal to twice your Strength.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -22,8 +22,8 @@ "scalable": false, "key": "stress", "value": 1, - "step": 1, "keyIsID": false, + "step": null, "consumeOnSuccess": false } ], @@ -40,18 +40,18 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark 1 Stress", "img": "icons/magic/control/silhouette-aura-energy.webp", - "range": "" + "range": "self" }, "fKY9NcYBwCFwMsgV": { "type": "effect", "_id": "fKY9NcYBwCFwMsgV", "systemPath": "actions", - "description": "", + "description": "

You can mark a Stress to gain a bonus to your damage roll equal to twice your Strength.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -77,12 +77,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark 2 Stress", "img": "icons/magic/control/silhouette-aura-energy.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -98,10 +98,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784496, - "modifiedTime": 1755428155116, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756037744719, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "GRL0cvs96vrTDckZ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json b/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json index 630960f4..03337fa2 100644 --- a/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json +++ b/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json @@ -14,7 +14,7 @@ "type": "attack", "_id": "WTnjKQs2uI1TuF9r", "systemPath": "actions", - "description": "

Spend a Hope to make a Spellcast Roll and conjure throwing blades that strike out at all targets within Very Close range. Targets you succeed against take d8+2 magic damage using your Proficiency.

", + "description": "

Spend a Hope to make a Spellcast Roll and conjure throwing blades that strike out at all targets within Very Close range. Targets you succeed against take d8+2 magic damage using your Proficiency.

@Template[type:emanation|range:vc]

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -154,10 +154,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784497, - "modifiedTime": 1755429293162, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038335767, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "Ucenef6JpjQxwXni", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json b/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json index baaba0a6..c8efc258 100644 --- a/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json +++ b/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json @@ -14,7 +14,7 @@ "type": "healing", "_id": "dmnB4ZMSk8lsB8Lg", "systemPath": "actions", - "description": "

Make a Spellcast Roll (16). On a success, mark any number of Stress to target a line of allies within Far range. You can clear Hit Points on the targets equal to the number of Stress marked, divided among them however you’d like.

", + "description": "

Make a Spellcast Roll (16). On a success, mark any number of Stress to target a line of allies within Far range. You can clear Hit Points on the targets equal to the number of Stress marked, divided among them however you’d like.

@Template[type:ray|range:f]

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -101,10 +101,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784508, - "modifiedTime": 1755429792958, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038941872, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "4uAFGp3LxiC07woC", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json b/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json index 245db4a2..7b966db2 100644 --- a/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json +++ b/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json @@ -40,12 +40,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Charge Smite", "img": "icons/skills/melee/sword-winged-holy-orange.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -61,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784519, - "modifiedTime": 1755429734196, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038851464, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "U1uWJE94HZVudujz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json b/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json index 02d43c56..a7af630e 100644 --- a/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json +++ b/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json @@ -38,12 +38,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Become Spectral", "img": "icons/magic/unholy/silhouette-light-fire-blue.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -59,10 +59,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784520, - "modifiedTime": 1755429431607, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038467712, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "iQhgqmLwhcSTYnvr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json b/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json index 6c56de38..41103c18 100644 --- a/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json +++ b/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json @@ -33,12 +33,12 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Spend Hope", "img": "icons/magic/nature/thorns-hand-glow-green.webp", - "range": "" + "range": "self" }, "IVAyyVf8gqFWB7bP": { "type": "effect", @@ -92,10 +92,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784531, - "modifiedTime": 1755429528391, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038664007, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "oUipGK84E2KjoKqh", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json b/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json index 1d0456ce..be34704d 100644 --- a/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json +++ b/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json @@ -28,7 +28,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [ @@ -39,7 +39,7 @@ ], "name": "Don Facade", "img": "icons/magic/control/debuff-energy-hold-pink.webp", - "range": "" + "range": "self" }, "OoNND7VcWoBQdtFK": { "type": "effect", @@ -91,10 +91,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784537, - "modifiedTime": 1755429298602, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038348939, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "TV56wSysbU5xAlOa", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json b/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json index 8137b243..757aca62 100644 --- a/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json +++ b/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json @@ -126,12 +126,12 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Replenish Tokens", "img": "icons/commodities/gems/gem-faceted-diamond-blue.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -147,10 +147,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784537, - "modifiedTime": 1755427920648, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756037237479, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "o62i0QdbUDIiAhSq", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json b/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json index 29ba6f90..d5284f5a 100644 --- a/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json +++ b/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json @@ -38,7 +38,7 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Vanish", @@ -59,10 +59,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784539, - "modifiedTime": 1755429382850, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038425727, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "GBMIElIpk4cvk1Bd", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json b/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json index 3e0a4623..ad78023c 100644 --- a/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json +++ b/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json @@ -28,7 +28,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [ @@ -59,7 +59,7 @@ }, "name": "Cast", "img": "icons/magic/unholy/barrier-shield-glowing-pink.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -75,10 +75,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753922784541, - "modifiedTime": 1755429328234, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756038378309, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "gV4L5ZZmfPrEbIDh", "sort": 3400000, diff --git a/src/packs/domains/folders_Splendor_TL1TutmbeCVJ06nR.json b/src/packs/domains/folders_Splendor_TL1TutmbeCVJ06nR.json index c0870ecf..87cc7469 100644 --- a/src/packs/domains/folders_Splendor_TL1TutmbeCVJ06nR.json +++ b/src/packs/domains/folders_Splendor_TL1TutmbeCVJ06nR.json @@ -6,18 +6,18 @@ "sorting": "m", "_id": "TL1TutmbeCVJ06nR", "description": "", - "sort": 800000, + "sort": 900000, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1748717133557, - "modifiedTime": 1752681441081, - "lastModifiedBy": "YNJ4HgHtFrTI89mx" + "modifiedTime": 1756038952388, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!folders!TL1TutmbeCVJ06nR" } diff --git a/src/packs/domains/folders_Valor_yPVeShe47ETIqs9q.json b/src/packs/domains/folders_Valor_yPVeShe47ETIqs9q.json index 0a65d51f..f6361e50 100644 --- a/src/packs/domains/folders_Valor_yPVeShe47ETIqs9q.json +++ b/src/packs/domains/folders_Valor_yPVeShe47ETIqs9q.json @@ -6,18 +6,18 @@ "sorting": "m", "_id": "yPVeShe47ETIqs9q", "description": "", - "sort": 900000, + "sort": 800000, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1748717138700, - "modifiedTime": 1752681443619, - "lastModifiedBy": "YNJ4HgHtFrTI89mx" + "modifiedTime": 1756038952388, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!folders!yPVeShe47ETIqs9q" } diff --git a/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json b/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json index 62049319..4f68e0d7 100644 --- a/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json +++ b/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json @@ -30,12 +30,12 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Stitch", "img": "icons/skills/trades/textiles-stitching-leather-brown.webp", - "range": "" + "range": "self" } }, "consumeOnUse": true, @@ -59,10 +59,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753588973384, - "modifiedTime": 1755432710896, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756041701211, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!VlbsCjvvLNfTzNXb" } diff --git a/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json b/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json index 9e316540..64db5be0 100644 --- a/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json +++ b/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json @@ -32,7 +32,7 @@ }, "name": "Drink", "img": "icons/consumables/potions/bottle-conical-corked-purple.webp", - "range": "" + "range": "self" } }, "consumeOnUse": true, @@ -101,10 +101,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753587033468, - "modifiedTime": 1755432536588, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756041711386, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!JGD3M9hBHtVAA8XP" } diff --git a/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json b/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json index a1b70dc6..7d7596eb 100644 --- a/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json +++ b/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json @@ -22,12 +22,12 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Drink", "img": "icons/consumables/potions/potion-tube-corked-bat-gold-red.webp", - "range": "" + "range": "veryFar" } }, "consumeOnUse": true, @@ -51,10 +51,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753589954973, - "modifiedTime": 1755432804800, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756041739719, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!pDGzmczoTlKGmKgd" } diff --git a/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json b/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json index 7519c7ab..70d93553 100644 --- a/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json +++ b/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json @@ -32,7 +32,7 @@ }, "name": "Drink", "img": "icons/consumables/potions/potion-vial-tube-yellow.webp", - "range": "" + "range": "self" } }, "consumeOnUse": true, @@ -101,10 +101,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753586850134, - "modifiedTime": 1755432522101, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756041748451, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!FOPQNqXbiVO0ilYL" } diff --git a/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json b/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json index e0b8a28c..25f7a45d 100644 --- a/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json +++ b/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json @@ -27,12 +27,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Drink", "img": "icons/consumables/drinks/wine-amphora-clay-gray.webp", - "range": "" + "range": "self" } }, "consumeOnUse": true, @@ -101,10 +101,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753592717630, - "modifiedTime": 1755433085832, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756041829971, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!xDnJeF1grkmKck8Q" } diff --git a/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json b/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json index 9389ca85..ee696b5d 100644 --- a/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json +++ b/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json @@ -11,13 +11,13 @@ "type": "attack", "_id": "rcHEz3ImUDwo6lPC", "systemPath": "actions", - "description": "", + "description": "

You can drink this tea to unleash a fiery breath attack. Make an Instinct Roll against all adversaries in front of you within Close range. Targets you succeed against take d20 physical damage using your Proficiency.

@Template[type:emanation|range:c]

", "chatDisplay": true, "actionType": "action", "cost": [], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, "damage": { @@ -100,10 +100,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753591525829, - "modifiedTime": 1755432974525, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756041882255, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!wM18PWWW2Ami4fBG" } diff --git a/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json b/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json index 31a5b7fd..fbdb9c17 100644 --- a/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json +++ b/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json @@ -20,14 +20,19 @@ "max": "", "recovery": null }, - "effects": [], + "effects": [ + { + "_id": "VfJIJBW96e45xQHY", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Use", "img": "icons/commodities/bones/bones-stack-worn-brown.webp", - "range": "" + "range": "self" } }, "consumeOnUse": true, @@ -37,7 +42,52 @@ "artist": "" } }, - "effects": [], + "effects": [ + { + "name": "Featherbone", + "img": "icons/commodities/bones/bones-stack-worn-brown.webp", + "origin": "Compendium.daggerheart.consumables.Item.DpxEMpwfasEBpORU", + "transfer": false, + "_id": "VfJIJBW96e45xQHY", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

You can use this bone to control your falling speed for a number of minutes equal to your level.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756041997551, + "modifiedTime": 1756042000517, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!DpxEMpwfasEBpORU.VfJIJBW96e45xQHY" + } + ], "folder": null, "sort": 0, "ownership": { @@ -51,10 +101,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753590624634, - "modifiedTime": 1755432889504, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756042004101, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!DpxEMpwfasEBpORU" } diff --git a/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json b/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json index 5e770de0..dd7ce092 100644 --- a/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json +++ b/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json @@ -20,14 +20,19 @@ "max": "", "recovery": null }, - "effects": [], + "effects": [ + { + "_id": "5rL9CY5GO9SJcEZq", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Apply", "img": "icons/commodities/materials/bowl-powder-blue.webp", - "range": "" + "range": "self" } }, "consumeOnUse": true, @@ -37,7 +42,52 @@ "artist": "" } }, - "effects": [], + "effects": [ + { + "name": "Gill Salve", + "img": "icons/commodities/materials/bowl-powder-blue.webp", + "origin": "Compendium.daggerheart.consumables.Item.Nvbb9mze6o5D0AEg", + "transfer": false, + "_id": "5rL9CY5GO9SJcEZq", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

You can apply this salve to your neck to breathe underwater for a number of minutes equal to your level.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756041968799, + "modifiedTime": 1756041978849, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!Nvbb9mze6o5D0AEg.5rL9CY5GO9SJcEZq" + } + ], "folder": null, "sort": 0, "ownership": { @@ -51,10 +101,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753589241094, - "modifiedTime": 1755432719146, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756041983578, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!Nvbb9mze6o5D0AEg" } diff --git a/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json b/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json index 6b233757..fa76826b 100644 --- a/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json +++ b/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json @@ -11,7 +11,7 @@ "type": "effect", "_id": "ATQgH12mufTOQLKs", "systemPath": "actions", - "description": "", + "description": "

Activate this pebble-sized stone to memorize the appearance of someone you can see. Spend a Hope to magically recreate this guise on yourself as an illusion.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -25,17 +25,22 @@ ], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, - "effects": [], + "effects": [ + { + "_id": "K5SB6tfuDkdVaQYe", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Create Illusion", "img": "icons/commodities/treasure/token-engraved-purple-glowing.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -44,7 +49,52 @@ "artist": "" } }, - "effects": [], + "effects": [ + { + "name": "Glamour Stone", + "img": "icons/commodities/treasure/token-engraved-purple-glowing.webp", + "origin": "Compendium.daggerheart.loot.Item.Pj17cvdJ1XG1jv6I", + "transfer": false, + "_id": "K5SB6tfuDkdVaQYe", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

Activate this pebble-sized stone to memorize the appearance of someone you can see. Spend a Hope to magically recreate this guise on yourself as an illusion.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756042876194, + "modifiedTime": 1756042884422, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!Pj17cvdJ1XG1jv6I.K5SB6tfuDkdVaQYe" + } + ], "folder": null, "sort": 0, "ownership": { @@ -58,10 +108,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753625773657, - "modifiedTime": 1755431995057, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756042876216, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!Pj17cvdJ1XG1jv6I" } diff --git a/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json b/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json index 9a056431..26845282 100644 --- a/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json +++ b/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json @@ -11,7 +11,7 @@ "type": "effect", "_id": "DW5AqEM0F8XaUqpn", "systemPath": "actions", - "description": "", + "description": "

Three times per rest when you succeed on an attack with one of these arrows, you can add your Proficiency to the damage roll.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -108,10 +108,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753625947079, - "modifiedTime": 1755432020809, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756042964027, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!I63LTFD6GXHgyGpR" } diff --git a/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json b/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json index f000d904..1a2b7f62 100644 --- a/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json +++ b/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json @@ -17,11 +17,11 @@ "cost": [], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [], @@ -89,10 +89,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753624827945, - "modifiedTime": 1755431895118, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756042976231, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!QGYPNBIufpBguwjC" } diff --git a/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json b/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json index 628fe395..1fa60198 100644 --- a/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json +++ b/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json @@ -11,7 +11,7 @@ "type": "effect", "_id": "4swwe8SZeh2KyPtl", "systemPath": "actions", - "description": "", + "description": "

Once per long rest, you can activate this ring after a successful attack against you to halve the damage.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -20,14 +20,19 @@ "max": 1, "recovery": "longRest" }, - "effects": [], + "effects": [ + { + "_id": "Sj7uGf560T7u4rlX", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Activate", "img": "icons/equipment/finger/ring-shield-silver.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -36,7 +41,65 @@ "artist": "" } }, - "effects": [], + "effects": [ + { + "name": "Ring of Resistance", + "img": "icons/equipment/finger/ring-shield-silver.webp", + "origin": "Compendium.daggerheart.loot.Item.aUqRifqR5JXXa1dN", + "transfer": false, + "_id": "Sj7uGf560T7u4rlX", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [ + { + "key": "system.resistance.magical.resistance", + "mode": 5, + "value": "1", + "priority": null + }, + { + "key": "system.resistance.physical.resistance", + "mode": 5, + "value": "1", + "priority": null + } + ], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

Once per long rest, you can activate this ring after a successful attack against you to halve the damage.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756043003002, + "modifiedTime": 1756043032046, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!aUqRifqR5JXXa1dN.Sj7uGf560T7u4rlX" + } + ], "folder": null, "sort": 0, "ownership": { @@ -50,10 +113,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753638222884, - "modifiedTime": 1755432185583, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756043010729, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!aUqRifqR5JXXa1dN" } diff --git a/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json b/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json index b6de3da5..7d38f5a2 100644 --- a/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json +++ b/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json @@ -11,7 +11,7 @@ "type": "effect", "_id": "Y4mvuJ4tncrKhyjY", "systemPath": "actions", - "description": "", + "description": "

Spend a Hope to activate this ring. Your footsteps are silent until your next rest.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -28,14 +28,19 @@ "max": 1, "recovery": "shortRest" }, - "effects": [], + "effects": [ + { + "_id": "9JSLRu7amQ4iuIO7", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Activate", "img": "icons/equipment/finger/ring-ball-purple.webp", - "range": "" + "range": "self" } }, "attribution": { @@ -47,9 +52,11 @@ "effects": [ { "name": "Ring of Silence", - "type": "base", - "_id": "aCt3QjdeTREZAlEa", "img": "icons/equipment/finger/ring-ball-purple.webp", + "origin": "Compendium.daggerheart.loot.Item.K1ysGnTpNyxPu5Au", + "transfer": false, + "_id": "9JSLRu7amQ4iuIO7", + "type": "base", "system": { "rangeDependence": { "enabled": false, @@ -59,7 +66,7 @@ } }, "changes": [], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -69,10 +76,8 @@ "startRound": null, "startTurn": null }, - "description": "

Your footsteps are silent until your next rest.

", - "origin": null, + "description": "

Your footsteps are silent until your next rest.

", "tint": "#ffffff", - "transfer": true, "statuses": [], "sort": 0, "flags": {}, @@ -80,14 +85,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753990311274, - "modifiedTime": 1753990345889, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "systemVersion": "1.1.0", + "createdTime": 1756043091753, + "modifiedTime": 1756043101742, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, - "_key": "!items.effects!K1ysGnTpNyxPu5Au.aCt3QjdeTREZAlEa" + "_key": "!items.effects!K1ysGnTpNyxPu5Au.9JSLRu7amQ4iuIO7" } ], "folder": null, @@ -103,10 +108,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1753637775628, - "modifiedTime": 1755432151648, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756043091776, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!K1ysGnTpNyxPu5Au" } diff --git a/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json b/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json index 441bf12a..a73eb3d7 100644 --- a/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json +++ b/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json @@ -29,7 +29,7 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Adversary", @@ -98,10 +98,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754243143650, - "modifiedTime": 1755391854504, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756035614382, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!k7vvMJtEcxMWUUrW" } diff --git a/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json b/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json index c1b11484..e15129b0 100644 --- a/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json +++ b/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json @@ -7,36 +7,7 @@ "system": { "description": "

While you're Vulnerable, add your level to your damage rolls.

", "resource": null, - "actions": { - "UgffABhuobRDP7MQ": { - "type": "effect", - "_id": "UgffABhuobRDP7MQ", - "systemPath": "actions", - "description": "

While you're Vulnerable, add your level to your damage rolls.

", - "chatDisplay": true, - "actionType": "action", - "cost": [], - "uses": { - "value": null, - "max": "", - "recovery": null, - "consumeOnSuccess": false - }, - "effects": [ - { - "_id": "HMx9uZ54mvMiH95x", - "onSave": false - } - ], - "target": { - "type": "self", - "amount": null - }, - "name": "Apply", - "img": "icons/magic/unholy/hand-marked-pink.webp", - "range": "" - } - }, + "actions": {}, "originItemType": null, "originId": null, "attribution": { @@ -116,10 +87,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754319984350, - "modifiedTime": 1755392070263, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756035779655, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!uByM34yQlw38yf1V" } diff --git a/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json b/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json index 259a25da..1efb24e2 100644 --- a/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json +++ b/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json @@ -16,7 +16,59 @@ "artist": "" } }, - "effects": [], + "effects": [ + { + "name": "Battle Bonded", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "_id": "IZhakv6EuG8DO4a3", + "img": "icons/creatures/mammals/humanoid-wolf-dog-blue.webp", + "changes": [ + { + "key": "system.evasion", + "mode": 2, + "value": "2", + "priority": null + } + ], + "disabled": true, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

When an adversary attacks you while they’re within your companion’s Melee range, you gain a +2 bonus to your Evasion against the attack.

", + "origin": null, + "tint": "#ffffff", + "transfer": true, + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756035661033, + "modifiedTime": 1756035696385, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!hWsKyed1vfILg0I8.IZhakv6EuG8DO4a3" + } + ], "sort": 0, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json b/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json index dd2d8597..ac661a74 100644 --- a/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json +++ b/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json @@ -38,12 +38,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Bonus to Roll", "img": "icons/sundries/gaming/dice-runed-tan.webp", - "range": "" + "range": "self" }, "S7HvFD3qIR3ifJRL": { "type": "effect", @@ -75,12 +75,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Bonus to Damage", "img": "icons/sundries/gaming/dice-runed-tan.webp", - "range": "" + "range": "self" } }, "originItemType": null, @@ -115,7 +115,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -134,10 +134,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", - "lastModifiedBy": null + "lastModifiedBy": "vUIbuan0U50nfKBE", + "modifiedTime": 1756035533156 }, "_key": "!items.effects!dPcqKN5NeDkjB1HW.EY87mY6ULfIt3XC8" }, @@ -170,7 +171,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -189,10 +190,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", - "lastModifiedBy": null + "lastModifiedBy": "vUIbuan0U50nfKBE", + "modifiedTime": 1756035536128 }, "_key": "!items.effects!dPcqKN5NeDkjB1HW.WwibpgaO6Kkks7aZ" } @@ -209,10 +211,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754349507020, - "modifiedTime": 1755392284524, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756035526712, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!dPcqKN5NeDkjB1HW" } diff --git a/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json b/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json index fed36288..d0787ec3 100644 --- a/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json +++ b/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json @@ -16,7 +16,59 @@ "artist": "" } }, - "effects": [], + "effects": [ + { + "name": "Elusive Predator", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "_id": "X4llFOcAcdJLbear", + "img": "icons/creatures/mammals/beast-horned-scaled-glowing-orange.webp", + "changes": [ + { + "key": "system.evasion", + "mode": 2, + "value": "2", + "priority": null + } + ], + "disabled": true, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

When your Focus makes an attack against you, you gain a +2 bonus to your Evasion against the attack.

", + "origin": null, + "tint": "#ffffff", + "transfer": true, + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756035709943, + "modifiedTime": 1756035734622, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!Cjtc43V3IzAmfIFG.X4llFOcAcdJLbear" + } + ], "sort": 0, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json b/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json index 8ac4675a..c58ad931 100644 --- a/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json +++ b/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json @@ -36,12 +36,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Stress", "img": "icons/creatures/mammals/wolf-shadow-black.webp", - "range": "" + "range": "self" } }, "originItemType": null, @@ -117,10 +117,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754266926055, - "modifiedTime": 1755391927605, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756035422344, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!Qny2J3R35bvC0Cey" } diff --git a/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json b/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json index c46446d0..de0f54b7 100644 --- a/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json +++ b/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json @@ -36,12 +36,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Stress", "img": "icons/magic/unholy/projectile-smoke-trail-pink.webp", - "range": "" + "range": "far" } }, "originItemType": null, @@ -110,10 +110,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754318976447, - "modifiedTime": 1755392035163, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756035450401, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!hAwTXjhyphiE3aeW" } diff --git a/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json b/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json index d56182e9..57ae1815 100644 --- a/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json +++ b/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json @@ -36,12 +36,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Stress", "img": "icons/magic/unholy/strike-hand-glow-pink.webp", - "range": "" + "range": "self" } }, "originItemType": null, @@ -57,7 +57,7 @@ "name": "Vanishing Act: Cloaked", "img": "icons/magic/unholy/strike-hand-glow-pink.webp", "origin": "Compendium.daggerheart.subclasses.Item.iyIg1VLwO8C6jvFZ", - "transfer": true, + "transfer": false, "_id": "czrwqq44sEr0uJ8O", "type": "base", "system": { @@ -88,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754322584884, - "modifiedTime": 1754352062188, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756035920880, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!iyIg1VLwO8C6jvFZ.czrwqq44sEr0uJ8O" } @@ -110,10 +110,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.1.0", "createdTime": 1754321406972, - "modifiedTime": 1755392101482, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756035929726, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!iyIg1VLwO8C6jvFZ" } From 1eb3ff11c090b8d78d0f461cac93ff89fb364a61 Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Wed, 27 Aug 2025 09:00:18 +0200 Subject: [PATCH 034/260] Task/415 action refactor part 2 (#1094) --- lang/en.json | 37 +- module/applications/dialogs/d20RollDialog.mjs | 54 ++- .../settings/automationSettings.mjs | 3 +- .../applications/sheets/actors/adversary.mjs | 4 +- .../applications/sheets/actors/character.mjs | 26 +- .../sheets/api/application-mixin.mjs | 14 +- module/applications/ui/chatLog.mjs | 95 +---- module/applications/ui/fearTracker.mjs | 15 +- module/config/settingsConfig.mjs | 19 + module/data/action/baseAction.mjs | 383 +++++++----------- module/data/action/beastformAction.mjs | 5 +- module/data/action/damageAction.mjs | 60 --- module/data/action/macroAction.mjs | 11 - module/data/chat-message/_modules.mjs | 2 +- .../{adversaryRoll.mjs => actorRoll.mjs} | 2 +- module/data/fields/action/_module.mjs | 1 - module/data/fields/action/beastformField.mjs | 99 +++++ module/data/fields/action/costField.mjs | 104 ++++- module/data/fields/action/damageField.mjs | 142 +++++++ module/data/fields/action/effectsField.mjs | 90 ++++ module/data/fields/action/healingField.mjs | 12 - module/data/fields/action/macroField.mjs | 22 + module/data/fields/action/rangeField.mjs | 11 +- module/data/fields/action/rollField.mjs | 87 ++-- module/data/fields/action/saveField.mjs | 155 +++++++ module/data/fields/action/targetField.mjs | 52 ++- module/data/fields/action/usesField.mjs | 48 ++- module/data/settings/Automation.mjs | 66 +++ module/dice/d20Roll.mjs | 7 +- module/dice/damageRoll.mjs | 4 +- module/dice/dhRoll.mjs | 11 +- module/dice/dualityRoll.mjs | 8 +- module/documents/actor.mjs | 2 +- module/documents/chatMessage.mjs | 134 +++--- module/systemRegistration/socket.mjs | 10 +- styles/less/global/elements.less | 1 + styles/less/global/global.less | 2 +- styles/less/ui/settings/settings.less | 2 +- templates/actionTypes/beastform.hbs | 11 +- templates/actionTypes/damage.hbs | 8 +- templates/actionTypes/save.hbs | 13 +- templates/dialogs/dice-roll/rollSelection.hbs | 18 +- .../settings/automation-settings/roll.hbs | 22 + .../action-settings/effect.hbs | 1 - templates/ui/chat/parts/button-part.hbs | 6 +- templates/ui/chat/parts/damage-part.hbs | 4 +- templates/ui/chat/parts/target-part.hbs | 2 +- 47 files changed, 1244 insertions(+), 641 deletions(-) rename module/data/chat-message/{adversaryRoll.mjs => actorRoll.mjs} (98%) delete mode 100644 module/data/fields/action/healingField.mjs create mode 100644 templates/settings/automation-settings/roll.hbs diff --git a/lang/en.json b/lang/en.json index 36b68ad7..d3d707d6 100755 --- a/lang/en.json +++ b/lang/en.json @@ -96,6 +96,7 @@ "attackName": "Attack Name", "includeBase": { "label": "Include Item Damage" }, "multiplier": "Multiplier", + "saveHint": "Set a default Trait to enable Reaction Roll. It can be changed later in Reaction Roll Dialog.", "resultBased": { "label": "Formula based on Hope/Fear result." }, @@ -310,7 +311,8 @@ "toLoadout": "Send to Loadout", "toVault": "Send to Vault", "unequip": "Unequip", - "useItem": "Use Item" + "useItem": "Use Item", + "cancelBeastform": "Cancel Beastform" }, "Countdown": { "addCountdown": "Add Countdown", @@ -1908,6 +1910,7 @@ "tier4": "tier 4", "domains": "Domains", "downtime": "Downtime", + "roll": "Roll", "rules": "Rules", "types": "Types" }, @@ -1961,6 +1964,7 @@ "fear": "Fear", "features": "Features", "formula": "Formula", + "gm": "GM", "healing": "Healing", "healingRoll": "Healing Roll", "hit": { @@ -1997,6 +2001,10 @@ "none": "None", "noTarget": "No current target", "partner": "Partner", + "player": { + "single": "Player", + "plurial": "Players" + }, "proficiency": "Proficiency", "quantity": "Quantity", "range": "Range", @@ -2022,6 +2030,7 @@ }, "title": "Title", "total": "Total", + "traitModifier": "Trait Modifier", "true": "True", "type": "Type", "unarmed": "Unarmed", @@ -2204,10 +2213,35 @@ "playerCanEditSheet": { "label": "Players Can Manually Edit Character Settings", "hint": "Players are allowed to access the manual Character Settings and change their statistics beyond the rules." + }, + "roll": { + "roll": { + "label": "Roll", + "hint": "Auto behavior for rolls like Attack, Spellcast, etc." + }, + "damage": { + "label": "Damage/Healing Roll", + "hint": "Auto behavior for Damage & Healing rolls after the Attack/Spellcast." + }, + "save": { + "label": "Reaction Roll", + "hint": "Auto behavior if a Reaction Roll is needed. Targets must be selected before the action is made" + }, + "damageApply": { + "label": "Apply Damage/Healing", + "hint": "Automatically apply damages & healings. Targets must be selected before the action is made and Reaction Roll Automation must be different than Never. Bypass users permissions." + }, + "effect": { + "label": "Apply Effects", + "hint": "Automatically apply effects. Targets must be selected before the action is made and Reaction Roll Automation must be different than Never. Bypass users permissions." + } } }, "defeated": { "title": "Defeated Handling" + }, + "roll": { + "title": "Actions" } }, "Homebrew": { @@ -2407,6 +2441,7 @@ "beastformInapplicable": "A beastform can only be applied to a Character.", "beastformAlreadyApplied": "The character already has a beastform applied!", "noTargetsSelected": "No targets are selected.", + "noTargetsSelectedOrPerm": "No targets are selected or with the update permission.", "attackTargetDoesNotExist": "The target token no longer exists", "insufficentAdvancements": "You don't have enough advancements left.", "noAssignedPlayerCharacter": "You have no assigned character.", diff --git a/module/applications/dialogs/d20RollDialog.mjs b/module/applications/dialogs/d20RollDialog.mjs index d445f24c..ed8fd6a1 100644 --- a/module/applications/dialogs/d20RollDialog.mjs +++ b/module/applications/dialogs/d20RollDialog.mjs @@ -1,3 +1,5 @@ +import { abilities } from "../../config/actorConfig.mjs"; + const { ApplicationV2, HandlebarsApplicationMixin } = foundry.applications.api; export default class D20RollDialog extends HandlebarsApplicationMixin(ApplicationV2) { @@ -7,7 +9,7 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio this.roll = roll; this.config = config; this.config.experiences = []; - this.reactionOverride = config.roll?.type === 'reaction'; + this.reactionOverride = config.actionType === 'reaction'; if (config.source?.action) { this.item = config.data.parent.items.get(config.source.item) ?? config.data.parent; @@ -20,7 +22,7 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio static DEFAULT_OPTIONS = { tag: 'form', - id: 'roll-selection', + // id: 'roll-selection', classes: ['daggerheart', 'dialog', 'dh-style', 'views', 'roll-selection'], position: { width: 'auto' @@ -42,7 +44,7 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio }; get title() { - return this.config.title; + return `${this.config.title}${this.actor ? `: ${this.actor.name}` : ''}`; } get actor() { @@ -113,15 +115,21 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio context.isLite = this.config.roll?.lite; context.extraFormula = this.config.extraFormula; context.formula = this.roll.constructFormula(this.config); + if(this.actor.system.traits) context.abilities = this.getTraitModifiers(); - context.showReaction = !context.rollConfig.type && context.rollType === 'DualityRoll'; + context.showReaction = !this.config.roll?.type && context.rollType === 'DualityRoll'; context.reactionOverride = this.reactionOverride; } return context; } + getTraitModifiers() { + return Object.values(abilities).map(a => ({ id: a.id, label: `${game.i18n.localize(a.label)} (${this.actor.system.traits[a.id]?.value.signedString() ?? 0})` })) + } + static updateRollConfiguration(event, _, formData) { const { ...rest } = foundry.utils.expandObject(formData.object); + this.config.selectedRollMode = rest.selectedRollMode; if (this.config.costs) { @@ -133,6 +141,12 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio this.roll[key] = value; }); } + if(rest.hasOwnProperty("trait")) { + this.config.roll.trait = rest.trait; + this.config.title = game.i18n.format('DAGGERHEART.UI.Chat.dualityRoll.abilityCheckTitle', { + ability: game.i18n.localize(abilities[this.config.roll.trait]?.label) + }); + } this.config.extraFormula = rest.extraFormula; this.render(); } @@ -151,31 +165,29 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio this.config.experiences.indexOf(button.dataset.key) > -1 ? this.config.experiences.filter(x => x !== button.dataset.key) : [...this.config.experiences, button.dataset.key]; - if (this.config?.data?.parent?.type === 'character' || this.config?.data?.parent?.type === 'companion') { - this.config.costs = - this.config.costs.indexOf(this.config.costs.find(c => c.extKey === button.dataset.key)) > -1 - ? this.config.costs.filter(x => x.extKey !== button.dataset.key) - : [ - ...this.config.costs, - { - extKey: button.dataset.key, - key: 'hope', - value: 1, - name: this.config.data?.experiences?.[button.dataset.key]?.name - } - ]; - } + this.config.costs = + this.config.costs.indexOf(this.config.costs.find(c => c.extKey === button.dataset.key)) > -1 + ? this.config.costs.filter(x => x.extKey !== button.dataset.key) + : [ + ...this.config.costs, + { + extKey: button.dataset.key, + key: this.config?.data?.parent?.isNPC ? 'fear' : 'hope', + value: 1, + name: this.config.data?.experiences?.[button.dataset.key]?.name + } + ]; this.render(); } static toggleReaction() { if (this.config.roll) { this.reactionOverride = !this.reactionOverride; - this.config.roll.type = this.reactionOverride + this.config.actionType = this.reactionOverride ? CONFIG.DH.ITEM.actionTypes.reaction.id - : this.config.roll.type === CONFIG.DH.ITEM.actionTypes.reaction.id + : this.config.actionType === CONFIG.DH.ITEM.actionTypes.reaction.id ? null - : this.config.roll.type; + : this.config.actionType; this.render(); } } diff --git a/module/applications/settings/automationSettings.mjs b/module/applications/settings/automationSettings.mjs index 0157e016..4407897d 100644 --- a/module/applications/settings/automationSettings.mjs +++ b/module/applications/settings/automationSettings.mjs @@ -35,13 +35,14 @@ export default class DhAutomationSettings extends HandlebarsApplicationMixin(App header: { template: 'systems/daggerheart/templates/settings/automation-settings/header.hbs' }, general: { template: 'systems/daggerheart/templates/settings/automation-settings/general.hbs' }, rules: { template: 'systems/daggerheart/templates/settings/automation-settings/rules.hbs' }, + roll: { template: 'systems/daggerheart/templates/settings/automation-settings/roll.hbs' }, footer: { template: 'systems/daggerheart/templates/settings/automation-settings/footer.hbs' } }; /** @inheritdoc */ static TABS = { main: { - tabs: [{ id: 'general' }, { id: 'rules' }], + tabs: [{ id: 'general' }, { id: 'rules' }, { id: 'roll' }], initial: 'general', labelPrefix: 'DAGGERHEART.GENERAL.Tabs' } diff --git a/module/applications/sheets/actors/adversary.mjs b/module/applications/sheets/actors/adversary.mjs index f575a2f2..64f48d02 100644 --- a/module/applications/sheets/actors/adversary.mjs +++ b/module/applications/sheets/actors/adversary.mjs @@ -146,9 +146,9 @@ export default class AdversarySheet extends DHBaseActorSheet { title: `Reaction Roll: ${this.actor.name}`, headerTitle: 'Adversary Reaction Roll', roll: { - type: 'reaction' + type: 'trait' }, - type: 'trait', + actionType: 'reaction', hasRoll: true, data: this.actor.getRollData() }; diff --git a/module/applications/sheets/actors/character.mjs b/module/applications/sheets/actors/character.mjs index 6c2d7c95..308faee7 100644 --- a/module/applications/sheets/actors/character.mjs +++ b/module/applications/sheets/actors/character.mjs @@ -679,31 +679,7 @@ export default class CharacterSheet extends DHBaseActorSheet { }) }); - this.consumeResource(result?.costs); - } - - // Remove when Action Refactor part #2 done - async consumeResource(costs) { - if (!costs?.length) return; - const usefulResources = { - ...foundry.utils.deepClone(this.actor.system.resources), - fear: { - value: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), - max: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxFear, - reversed: false - } - }; - const resources = game.system.api.fields.ActionFields.CostField.getRealCosts(costs).map(c => { - const resource = usefulResources[c.key]; - return { - key: c.key, - value: (c.total ?? c.value) * (resource.isReversed ? 1 : -1), - target: resource.target, - keyIsID: resource.keyIsID - }; - }); - - await this.actor.modifyResource(resources); + if(result) game.system.api.fields.ActionFields.CostField.execute.call(this, result); } //TODO: redo toggleEquipItem method diff --git a/module/applications/sheets/api/application-mixin.mjs b/module/applications/sheets/api/application-mixin.mjs index de9fe53d..7f338ac1 100644 --- a/module/applications/sheets/api/application-mixin.mjs +++ b/module/applications/sheets/api/application-mixin.mjs @@ -412,6 +412,16 @@ export default function DHApplicationMixin(Base) { ]; if (usable) { + options.unshift({ + name: 'DAGGERHEART.APPLICATIONS.ContextMenu.cancelBeastform', + icon: 'fa-solid fa-ban', + condition: target => { + const doc = getDocFromElementSync(target); + return doc && doc.system?.actions?.some(a => a.type === "beastform"); + }, + callback: async target => game.system.api.fields.ActionFields.BeastformField.handleActiveTransformations.call(await getDocFromElement(target)) + }); + options.unshift({ name: 'DAGGERHEART.GENERAL.damage', icon: 'fa-solid fa-explosion', @@ -422,7 +432,9 @@ export default function DHApplicationMixin(Base) { callback: async (target, event) => { const doc = await getDocFromElement(target), action = doc?.system?.attack ?? doc; - return action && action.use(event, { byPassRoll: true }); + const config = action.prepareConfig(event); + config.hasRoll = false; + return action && action.workflow.get("damage").execute(config, null, true); } }); diff --git a/module/applications/ui/chatLog.mjs b/module/applications/ui/chatLog.mjs index a80974ed..21762818 100644 --- a/module/applications/ui/chatLog.mjs +++ b/module/applications/ui/chatLog.mjs @@ -1,5 +1,3 @@ -import { emitAsGM, GMUpdateEvent } from '../../systemRegistration/socket.mjs'; - export default class DhpChatLog extends foundry.applications.sidebar.tabs.ChatLog { constructor(options) { super(options); @@ -55,21 +53,9 @@ export default class DhpChatLog extends foundry.applications.sidebar.tabs.ChatLo } addChatListeners = async (app, html, data) => { - html.querySelectorAll('.duality-action-damage').forEach(element => - element.addEventListener('click', event => this.onRollDamage(event, data.message)) - ); - html.querySelectorAll('.target-save').forEach(element => - element.addEventListener('click', event => this.onRollSave(event, data.message)) - ); - html.querySelectorAll('.roll-all-save-button').forEach(element => - element.addEventListener('click', event => this.onRollAllSave(event, data.message)) - ); html.querySelectorAll('.simple-roll-button').forEach(element => element.addEventListener('click', event => this.onRollSimple(event, data.message)) ); - html.querySelectorAll('.healing-button').forEach(element => - element.addEventListener('click', event => this.onHealing(event, data.message)) - ); html.querySelectorAll('.ability-use-button').forEach(element => element.addEventListener('click', event => this.abilityUseButton(event, data.message)) ); @@ -90,80 +76,6 @@ export default class DhpChatLog extends foundry.applications.sidebar.tabs.ChatLo super.close(options); } - async getActor(uuid) { - return await foundry.utils.fromUuid(uuid); - } - - getAction(actor, itemId, actionId) { - const item = actor.items.get(itemId), - action = - actor.system.attack?._id === actionId - ? actor.system.attack - : item.system.attack?._id === actionId - ? item.system.attack - : item?.system?.actions?.get(actionId); - return action; - } - - async onRollDamage(event, message) { - event.stopPropagation(); - const actor = await this.getActor(message.system.source.actor); - if(!actor.isOwner) return true; - if (message.system.source.item && message.system.source.action) { - const action = this.getAction(actor, message.system.source.item, message.system.source.action); - if (!action || !action?.rollDamage) return; - await action.rollDamage(event, message); - } - } - - async onRollSave(event, message) { - event.stopPropagation(); - const actor = await this.getActor(message.system.source.actor), - tokenId = event.target.closest('[data-token]')?.dataset.token, - token = game.canvas.tokens.get(tokenId); - if (!token?.actor || !token.isOwner) return true; - if (message.system.source.item && message.system.source.action) { - const action = this.getAction(actor, message.system.source.item, message.system.source.action); - if (!action || !action?.hasSave) return; - action.rollSave(token.actor, event, message).then(result => - emitAsGM( - GMUpdateEvent.UpdateSaveMessage, - action.updateSaveMessage.bind(action, result, message, token.id), - { - action: action.uuid, - message: message._id, - token: token.id, - result - } - ) - ); - } - } - - async onRollAllSave(event, message) { - event.stopPropagation(); - if (!game.user.isGM) return; - const targets = event.target.parentElement.querySelectorAll('[data-token] .target-save'); - const actor = await this.getActor(message.system.source.actor), - action = this.getAction(actor, message.system.source.item, message.system.source.action); - targets.forEach(async el => { - const tokenId = el.closest('[data-token]')?.dataset.token, - token = game.canvas.tokens.get(tokenId); - if (!token.actor) return; - if (game.user === token.actor.owner) el.dispatchEvent(new PointerEvent('click', { shiftKey: true })); - else { - token.actor.owner - .query('reactionRoll', { - actionId: action.uuid, - actorId: token.actor.uuid, - event, - message - }) - .then(result => action.updateSaveMessage(result, message, token.id)); - } - }); - } - async onRollSimple(event, message) { const buttonType = event.target.dataset.type ?? 'damage', total = message.rolls.reduce((a, c) => a + Roll.fromJSON(c).total, 0), @@ -197,8 +109,11 @@ export default class DhpChatLog extends foundry.applications.sidebar.tabs.ChatLo item.system.attack?.id === event.currentTarget.id ? item.system.attack : item.system.actions.get(event.currentTarget.id); - if (event.currentTarget.dataset.directDamage) action.use(event, { byPassRoll: true }); - else action.use(event); + if (event.currentTarget.dataset.directDamage) { + const config = action.prepareConfig(event); + config.hasRoll = false; + action.workflow.get("damage").execute(config, null, true); + } else action.use(event); } async actionUseButton(event, message) { diff --git a/module/applications/ui/fearTracker.mjs b/module/applications/ui/fearTracker.mjs index ace2bbb2..a346aa66 100644 --- a/module/applications/ui/fearTracker.mjs +++ b/module/applications/ui/fearTracker.mjs @@ -78,7 +78,7 @@ export default class FearTracker extends HandlebarsApplicationMixin(ApplicationV /** @override */ async _preRender(context, options) { - if (this.currentFear > this.maxFear) + if (this.currentFear > this.maxFear && game.user.isGM) await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear, this.maxFear); } @@ -107,18 +107,5 @@ export default class FearTracker extends HandlebarsApplicationMixin(ApplicationV async updateFear(value) { return emitAsGM(GMUpdateEvent.UpdateFear, game.settings.set.bind(game.settings, CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), value); - /* if(!game.user.isGM) - await game.socket.emit(`system.${CONFIG.DH.id}`, { - action: socketEvent.GMUpdate, - data: { - action: GMUpdateEvent.UpdateFear, - update: value - } - }); - else - game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear, value); */ - /* if (!game.user.isGM) return; - value = Math.max(0, Math.min(this.maxFear, value)); - await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear, value); */ } } diff --git a/module/config/settingsConfig.mjs b/module/config/settingsConfig.mjs index 76234a97..0f148aeb 100644 --- a/module/config/settingsConfig.mjs +++ b/module/config/settingsConfig.mjs @@ -29,3 +29,22 @@ export const gameSettings = { Countdowns: 'Countdowns', LastMigrationVersion: 'LastMigrationVersion' }; + +export const actionAutomationChoices = { + never: { + id: "never", + label: "Never" + }, + showDialog: { + id: "showDialog", + label: "Show Dialog only" + }, + // npcOnly: { + // id: "npcOnly", + // label: "Always for non-characters" + // }, + always: { + id: "always", + label: "Always" + } +} diff --git a/module/data/action/baseAction.mjs b/module/data/action/baseAction.mjs index ea619bcf..6e522ceb 100644 --- a/module/data/action/baseAction.mjs +++ b/module/data/action/baseAction.mjs @@ -1,14 +1,9 @@ import DhpActor from '../../documents/actor.mjs'; import D20RollDialog from '../../applications/dialogs/d20RollDialog.mjs'; import { ActionMixin } from '../fields/actionField.mjs'; -import { abilities } from '../../config/actorConfig.mjs'; const fields = foundry.data.fields; -/* - !!! I'm currently refactoring the whole Action thing, it's a WIP !!! -*/ - /* ToDo - Target Check / Target Picker @@ -20,6 +15,7 @@ const fields = foundry.data.fields; export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel) { static extraSchemas = ['cost', 'uses', 'range']; + /** @inheritDoc */ static defineSchema() { const schemaFields = { _id: new fields.DocumentIdField({ initial: () => foundry.utils.randomID() }), @@ -37,31 +33,76 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel }; this.extraSchemas.forEach(s => { - let clsField; - if ((clsField = this.getActionField(s))) schemaFields[s] = new clsField(); + let clsField = this.getActionField(s); + if (clsField) + schemaFields[s] = new clsField(); }); return schemaFields; } + /** + * Create a Map containing each Action step based on fields define in schema. Ordered by Fields order property. + * + * Each step can be called individually as long as needed config is provided. + * Ex: .workflow.get("damage").execute(config) + * @returns {Map} + */ + defineWorkflow() { + const workflow = new Map(); + this.constructor.extraSchemas.forEach(s => { + let clsField = this.constructor.getActionField(s); + if (clsField?.execute) { + workflow.set(s, { order: clsField.order, execute: clsField.execute.bind(this) } ); + if( s === "damage" ) workflow.set("applyDamage", { order: 75, execute: clsField.applyDamage.bind(this) } ); + } + }); + return new Map([...workflow.entries()].sort(([aKey, aValue], [bKey, bValue]) => aValue.order - bValue.order)); + } + + /** + * Getter returning the workflow property or creating it the first time the property is called + */ + get workflow() { + if ( this.hasOwnProperty("_workflow") ) return this._workflow; + const workflow = Object.freeze(this.defineWorkflow()); + Object.defineProperty(this, "_workflow", {value: workflow, writable: false}); + return workflow; + } + + /** + * Get the Field class from ActionFields global config + * @param {string} name Field short name, equal to Action property + * @returns Action Field + */ static getActionField(name) { const field = game.system.api.fields.ActionFields[`${name.capitalize()}Field`]; return fields.DataField.isPrototypeOf(field) && field; } + /** @inheritDoc */ prepareData() { this.name = this.name || game.i18n.localize(CONFIG.DH.ACTIONS.actionTypes[this.type].name); this.img = this.img ?? this.parent?.parent?.img; } + /** + * Get Action ID + */ get id() { return this._id; } + /** + * Return Item the action is attached too. + */ get item() { return this.parent.parent; } + /** + * Return the first Actor parent found. + */ get actor() { return this.item instanceof DhpActor ? this.item @@ -74,6 +115,11 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel return 'trait'; } + /** + * Prepare base data based on Action Type & Parent Type + * @param {object} parent + * @returns {object} + */ static getSourceConfig(parent) { const updateSource = {}; if (parent?.parent?.type === 'weapon' && this === game.system.api.models.actions.actionsTypes.attack) { @@ -96,6 +142,11 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel return updateSource; } + /** + * Obtain a data object used to evaluate any dice rolls associated with this particular Action + * @param {object} [data ={}] Optional data object from previous configuration/rolls + * @returns {object} + */ getRollData(data = {}) { if (!this.actor) return null; const actorData = this.actor.getRollData(false); @@ -111,19 +162,30 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel return actorData; } - async use(event, options = {}) { + /** + * Execute each part of the Action workflow in order, calling a specific event before and after each part. + * @param {object} config Config object usually created from prepareConfig method + */ + async executeWorkflow(config) { + for(const [key, part] of this.workflow) { + if (Hooks.call(`${CONFIG.DH.id}.pre${key.capitalize()}Action`, this, config) === false) return; + if(await part.execute(config) === false) return; + if (Hooks.call(`${CONFIG.DH.id}.post${key.capitalize()}Action`, this, config) === false) return; + } + } + + /** + * Main method to use the Action + * @param {Event} event Event from the button used to trigger the Action + * @returns {object} + */ + async use(event) { if (!this.actor) throw new Error("An Action can't be used outside of an Actor context."); if (this.chatDisplay) await this.toChat(); - let { byPassRoll } = options, - config = this.prepareConfig(event, byPassRoll); - for (let i = 0; i < this.constructor.extraSchemas.length; i++) { - let clsField = this.constructor.getActionField(this.constructor.extraSchemas[i]); - if (clsField?.prepareConfig) { - const keep = clsField.prepareConfig.call(this, config); - if (config.isFastForward && !keep) return; - } - } + + let config = this.prepareConfig(event); + if(!config) return; if (Hooks.call(`${CONFIG.DH.id}.preUseAction`, this, config) === false) return; @@ -132,36 +194,22 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel config = await D20RollDialog.configure(null, config); if (!config) return; } - - if (config.hasRoll) { - const rollConfig = this.prepareRoll(config); - config.roll = rollConfig; - config = await this.actor.diceRoll(config); - if (!config) return; - } - - if (this.doFollowUp(config)) { - if (this.rollDamage && this.damage.parts.length) await this.rollDamage(event, config); - else if (this.trigger) await this.trigger(event, config); - else if (this.hasSave || this.hasEffect) { - const roll = new CONFIG.Dice.daggerheart.DHRoll(''); - roll._evaluated = true; - await CONFIG.Dice.daggerheart.DHRoll.toMessage(roll, config); - } - } - - // Consume resources - await this.consume(config); + + // Execute the Action Worflow in order based of schema fields + await this.executeWorkflow(config); if (Hooks.call(`${CONFIG.DH.id}.postUseAction`, this, config) === false) return; return config; } - /* */ - prepareConfig(event, byPass = false) { - const hasRoll = this.getUseHasRoll(byPass); - return { + /** + * Create the basic config common to every action type + * @param {Event} event Event from the button used to trigger the Action + * @returns {object} + */ + prepareBaseConfig(event) { + const config = { event, title: `${this.item instanceof CONFIG.Actor.documentClass ? '' : `${this.item.name}: `}${game.i18n.localize(this.name)}`, source: { @@ -169,238 +217,95 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel action: this._id, actor: this.actor.uuid }, - dialog: { - configure: hasRoll - }, - type: this.roll?.type ?? this.type, - hasRoll: hasRoll, - hasDamage: this.damage?.parts?.length && this.type !== 'healing', - hasHealing: this.damage?.parts?.length && this.type === 'healing', - hasEffect: !!this.effects?.length, - isDirect: !!this.damage?.direct, + dialog: {}, + actionType: this.actionType, + hasRoll: this.hasRoll, + hasDamage: this.hasDamage, + hasHealing: this.hasHealing, + hasEffect: this.hasEffect, hasSave: this.hasSave, + isDirect: !!this.damage?.direct, selectedRollMode: game.settings.get('core', 'rollMode'), - isFastForward: event.shiftKey, data: this.getRollData(), - evaluate: hasRoll + evaluate: this.hasRoll }; + DHBaseAction.applyKeybindings(config); + return config; } + /** + * Create the config for that action used for its workflow + * @param {Event} event Event from the button used to trigger the Action + * @returns {object} + */ + prepareConfig(event) { + const config = this.prepareBaseConfig(event); + for(const clsField of Object.values(this.schema.fields)) { + if (clsField?.prepareConfig) + if(clsField.prepareConfig.call(this, config) === false) return false; + } + return config; + } + + /** + * Method used to know if a configuration dialog must be shown or not when there is no roll. + * @param {*} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + * @returns {boolean} + */ requireConfigurationDialog(config) { return !config.event.shiftKey && !config.hasRoll && (config.costs?.length || config.uses); } - prepareRoll() { - const roll = { - baseModifiers: this.roll.getModifier(), - label: 'Attack', - type: this.actionType, - difficulty: this.roll?.difficulty, - formula: this.roll.getFormula(), - advantage: CONFIG.DH.ACTIONS.advantageState[this.roll.advState].value - }; - if (this.roll?.type === 'diceSet' || !this.hasRoll) roll.lite = true; - - return roll; - } - - doFollowUp(config) { - return !config.hasRoll; - } - + /** + * Consume Action configured resources & uses. + * That method is only used when we want those resources to be consumed outside of the use method workflow. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + * @param {boolean} successCost + */ async consume(config, successCost = false) { - const actor = this.actor.system.partner ?? this.actor, - usefulResources = { - ...foundry.utils.deepClone(actor.system.resources), - fear: { - value: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), - max: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxFear, - reversed: false - } - }; + await this.workflow.get("cost")?.execute(config, successCost); + await this.workflow.get("uses")?.execute(config, successCost); - for (var cost of config.costs) { - if (cost.keyIsID) { - usefulResources[cost.key] = { - value: cost.value, - target: this.parent.parent, - keyIsID: true - }; - } - } - - const resources = game.system.api.fields.ActionFields.CostField.getRealCosts(config.costs) - .filter( - c => - (!successCost && (!c.consumeOnSuccess || config.roll?.success)) || - (successCost && c.consumeOnSuccess) - ) - .reduce((a, c) => { - const resource = usefulResources[c.key]; - if (resource) { - a.push({ - key: c.key, - value: (c.total ?? c.value) * (resource.isReversed ? 1 : -1), - target: resource.target, - keyIsID: resource.keyIsID - }); - return a; - } - }, []); - - await actor.modifyResource(resources); - if ( - config.uses?.enabled && - ((!successCost && (!config.uses?.consumeOnSuccess || config.roll?.success)) || - (successCost && config.uses?.consumeOnSuccess)) - ) - this.update({ 'uses.value': this.uses.value + 1 }); - - if (config.roll?.success || successCost) { + if (config.roll && !config.roll.success && successCost) { setTimeout(() => { (config.message ?? config.parent).update({ 'system.successConsumed': true }); }, 50); } } - /* */ - /* ROLL */ - getUseHasRoll(byPass = false) { - return this.hasRoll && !byPass; + /** + * Set if a configuration dialog must be shown or not if a special keyboard key is pressed. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + */ + static applyKeybindings(config) { + config.dialog.configure ??= !(config.event.shiftKey || config.event.altKey || config.event.ctrlKey); } + /** + * Getters to know which parts the action is composed of. A field can exist but configured to not be used. + * @returns {boolean} If that part is in the action. + */ + get hasRoll() { return !!this.roll?.type; } - get modifiers() { - if (!this.actor) return []; - const modifiers = []; - /** Placeholder for specific bonuses **/ - return modifiers; + get hasDamage() { + return this.damage?.parts?.length && this.type !== 'healing' } - /* ROLL */ - /* SAVE */ + get hasHealing() { + return this.damage?.parts?.length && this.type === 'healing' + } + get hasSave() { return !!this.save?.trait; } - /* SAVE */ - /* EFFECTS */ get hasEffect() { return this.effects?.length > 0; } - async applyEffects(event, data, targets) { - targets ??= data.system.targets; - const force = true; /* Where should this come from? */ - if (!this.effects?.length || !targets.length) return; - let effects = this.effects; - targets.forEach(async token => { - if (!token.hit && !force) return; - if (this.hasSave && token.saved.success === true) { - effects = this.effects.filter(e => e.onSave === true); - } - if (!effects.length) return; - effects.forEach(async e => { - const actor = canvas.tokens.get(token.id)?.actor, - effect = this.item.effects.get(e._id); - if (!actor || !effect) return; - await this.applyEffect(effect, actor); - }); - }); - } - - async applyEffect(effect, actor) { - const existingEffect = actor.effects.find(e => e.origin === effect.uuid); - if (existingEffect) { - return effect.update( - foundry.utils.mergeObject({ - ...effect.constructor.getInitialDuration(), - disabled: false - }) - ); - } - - // Otherwise, create a new effect on the target - const effectData = foundry.utils.mergeObject({ - ...effect.toObject(), - disabled: false, - transfer: false, - origin: effect.uuid - }); - await ActiveEffect.implementation.create(effectData, { parent: actor }); - } - /* EFFECTS */ - - /* SAVE */ - async rollSave(actor, event, message) { - if (!actor) return; - const title = actor.isNPC - ? game.i18n.localize('DAGGERHEART.GENERAL.reactionRoll') - : game.i18n.format('DAGGERHEART.UI.Chat.dualityRoll.abilityCheckTitle', { - ability: game.i18n.localize(abilities[this.save.trait]?.label) - }); - return actor.diceRoll({ - event, - title, - roll: { - trait: this.save.trait, - difficulty: this.save.difficulty ?? this.actor?.baseSaveDifficulty, - type: 'reaction' - }, - type: 'trait', - hasRoll: true, - data: actor.getRollData() - }); - } - - updateSaveMessage(result, message, targetId) { - if (!result) return; - const updateMsg = this.updateChatMessage.bind(this, message, targetId, { - result: result.roll.total, - success: result.roll.success - }); - if (game.modules.get('dice-so-nice')?.active) - game.dice3d.waitFor3DAnimationByMessageID(result.message.id ?? result.message._id).then(() => updateMsg()); - else updateMsg(); - } - - static rollSaveQuery({ actionId, actorId, event, message }) { - return new Promise(async (resolve, reject) => { - const actor = await fromUuid(actorId), - action = await fromUuid(actionId); - if (!actor || !actor?.isOwner) reject(); - action.rollSave(actor, event, message).then(result => resolve(result)); - }); - } - /* SAVE */ - - async updateChatMessage(message, targetId, changes, chain = true) { - setTimeout(async () => { - const chatMessage = ui.chat.collection.get(message._id); - - await chatMessage.update({ - flags: { - [game.system.id]: { - reactionRolls: { - [targetId]: changes - } - } - } - }); - }, 100); - if (chain) { - if (message.system.source.message) - this.updateChatMessage(ui.chat.collection.get(message.system.source.message), targetId, changes, false); - const relatedChatMessages = ui.chat.collection.filter(c => c.system.source?.message === message._id); - relatedChatMessages.forEach(c => { - this.updateChatMessage(c, targetId, changes, false); - }); - } - } - /** * Generates a list of localized tags for this action. * @returns {string[]} An array of localized tag strings. diff --git a/module/data/action/beastformAction.mjs b/module/data/action/beastformAction.mjs index 8c2dd31e..657cfde2 100644 --- a/module/data/action/beastformAction.mjs +++ b/module/data/action/beastformAction.mjs @@ -1,10 +1,9 @@ -import BeastformDialog from '../../applications/dialogs/beastformDialog.mjs'; import DHBaseAction from './baseAction.mjs'; export default class DhBeastformAction extends DHBaseAction { static extraSchemas = [...super.extraSchemas, 'beastform']; - async use(event, options) { + /* async use(event, options) { const beastformConfig = this.prepareBeastformConfig(); const abort = await this.handleActiveTransformations(); @@ -82,5 +81,5 @@ export default class DhBeastformAction extends DHBaseAction { beastformEffects.map(x => x.id) ); return existingEffects; - } + } */ } diff --git a/module/data/action/damageAction.mjs b/module/data/action/damageAction.mjs index 7deeb006..b4b3e17c 100644 --- a/module/data/action/damageAction.mjs +++ b/module/data/action/damageAction.mjs @@ -1,65 +1,5 @@ -import { setsEqual } from '../../helpers/utils.mjs'; import DHBaseAction from './baseAction.mjs'; export default class DHDamageAction extends DHBaseAction { static extraSchemas = [...super.extraSchemas, 'damage', 'target', 'effects']; - - getFormulaValue(part, data) { - let formulaValue = part.value; - - if (data.hasRoll && part.resultBased && data.roll.result.duality === -1) return part.valueAlt; - - const isAdversary = this.actor.type === 'adversary'; - if (isAdversary && this.actor.system.type === CONFIG.DH.ACTOR.adversaryTypes.horde.id) { - const hasHordeDamage = this.actor.effects.find(x => x.type === 'horde'); - if (hasHordeDamage && !hasHordeDamage.disabled) return part.valueAlt; - } - - return formulaValue; - } - - formatFormulas(formulas, systemData) { - const formattedFormulas = []; - formulas.forEach(formula => { - if (isNaN(formula.formula)) - formula.formula = Roll.replaceFormulaData(formula.formula, this.getRollData(systemData)); - const same = formattedFormulas.find( - f => setsEqual(f.damageTypes, formula.damageTypes) && f.applyTo === formula.applyTo - ); - if (same) same.formula += ` + ${formula.formula}`; - else formattedFormulas.push(formula); - }); - return formattedFormulas; - } - - async rollDamage(event, data) { - const systemData = data.system ?? data; - - let formulas = this.damage.parts.map(p => ({ - formula: this.getFormulaValue(p, systemData).getFormula(this.actor), - damageTypes: p.applyTo === 'hitPoints' && !p.type.size ? new Set(['physical']) : p.type, - applyTo: p.applyTo - })); - - if (!formulas.length) return; - - formulas = this.formatFormulas(formulas, systemData); - - delete systemData.evaluate; - const config = { - ...systemData, - roll: formulas, - dialog: {}, - data: this.getRollData() - }; - if (this.hasSave) config.onSave = this.save.damageMod; - if (data.system) { - config.source.message = data._id; - config.directDamage = false; - } else { - config.directDamage = true; - } - - return CONFIG.Dice.daggerheart.DamageRoll.build(config); - } } diff --git a/module/data/action/macroAction.mjs b/module/data/action/macroAction.mjs index 58b8eba5..b8338cd8 100644 --- a/module/data/action/macroAction.mjs +++ b/module/data/action/macroAction.mjs @@ -2,15 +2,4 @@ import DHBaseAction from './baseAction.mjs'; export default class DHMacroAction extends DHBaseAction { static extraSchemas = [...super.extraSchemas, 'macro']; - - async trigger(event, ...args) { - const fixUUID = !this.macro.includes('Macro.') ? `Macro.${this.macro}` : this.macro, - macro = await fromUuid(fixUUID); - try { - if (!macro) throw new Error(`No macro found for the UUID: ${this.macro}.`); - macro.execute(); - } catch (error) { - ui.notifications.error(error); - } - } } diff --git a/module/data/chat-message/_modules.mjs b/module/data/chat-message/_modules.mjs index a4e2c1fd..36c6ee9d 100644 --- a/module/data/chat-message/_modules.mjs +++ b/module/data/chat-message/_modules.mjs @@ -1,5 +1,5 @@ import DHAbilityUse from "./abilityUse.mjs"; -import DHActorRoll from "./adversaryRoll.mjs"; +import DHActorRoll from "./actorRoll.mjs"; export const config = { abilityUse: DHAbilityUse, diff --git a/module/data/chat-message/adversaryRoll.mjs b/module/data/chat-message/actorRoll.mjs similarity index 98% rename from module/data/chat-message/adversaryRoll.mjs rename to module/data/chat-message/actorRoll.mjs index d87bab6a..b6512fbd 100644 --- a/module/data/chat-message/adversaryRoll.mjs +++ b/module/data/chat-message/actorRoll.mjs @@ -95,7 +95,7 @@ export default class DHActorRoll extends foundry.abstract.TypeDataModel { } registerTargetHook() { - if (!this.parent.isAuthor) return; + if (!this.parent.isAuthor || !this.hasTarget) return; if (this.targetMode && this.parent.targetHook !== null) { Hooks.off('targetToken', this.parent.targetHook); return (this.parent.targetHook = null); diff --git a/module/data/fields/action/_module.mjs b/module/data/fields/action/_module.mjs index e6caa963..7a33e147 100644 --- a/module/data/fields/action/_module.mjs +++ b/module/data/fields/action/_module.mjs @@ -6,6 +6,5 @@ export { default as EffectsField } from './effectsField.mjs'; export { default as SaveField } from './saveField.mjs'; export { default as BeastformField } from './beastformField.mjs'; export { default as DamageField } from './damageField.mjs'; -export { default as HealingField } from './healingField.mjs'; export { default as RollField } from './rollField.mjs'; export { default as MacroField } from './macroField.mjs'; diff --git a/module/data/fields/action/beastformField.mjs b/module/data/fields/action/beastformField.mjs index 832bd9f6..62c735d0 100644 --- a/module/data/fields/action/beastformField.mjs +++ b/module/data/fields/action/beastformField.mjs @@ -1,6 +1,13 @@ +import BeastformDialog from "../../../applications/dialogs/beastformDialog.mjs"; + const fields = foundry.data.fields; export default class BeastformField extends fields.SchemaField { + /** + * Action Workflow order + */ + static order = 90; + constructor(options = {}, context = {}) { const beastformFields = { tierAccess: new fields.SchemaField({ @@ -27,4 +34,96 @@ export default class BeastformField extends fields.SchemaField { }; super(beastformFields, options, context); } + + /** + * Beastform Transformation Action Workflow part. + * Must be called within Action context or similar. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + */ + static async execute(config) { + // Should not be useful anymore here + await BeastformField.handleActiveTransformations.call(this); + + const { selected, evolved, hybrid } = await BeastformDialog.configure(config, this.item); + if (!selected) return false; + + return await BeastformField.transform.call(this, selected, evolved, hybrid); + } + + /** + * Update Action Workflow config object. + * Must be called within Action context. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + */ + prepareConfig(config) { + if(this.actor.effects.find(x => x.type === 'beastform')) { + ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.beastformAlreadyApplied')); + return false; + } + + const settingsTiers = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.LevelTiers).tiers; + const actorLevel = this.actor.system.levelData.level.current; + const actorTier = + Object.values(settingsTiers).find( + tier => actorLevel >= tier.levels.start && actorLevel <= tier.levels.end + ) ?? 1; + + config.tierLimit = this.beastform.tierAccess.exact ?? actorTier; + } + + /** + * TODO by Harry + * @param {*} selectedForm + * @param {*} evolvedData + * @param {*} hybridData + * @returns + */ + static async transform(selectedForm, evolvedData, hybridData) { + const formData = evolvedData?.form ? evolvedData.form.toObject() : selectedForm.toObject(); + const beastformEffect = formData.effects.find(x => x.type === 'beastform'); + if (!beastformEffect) { + ui.notifications.error('DAGGERHEART.UI.Notifications.beastformMissingEffect'); + return false; + } + + if (evolvedData?.form) { + const evolvedForm = selectedForm.effects.find(x => x.type === 'beastform'); + if (!evolvedForm) { + ui.notifications.error('DAGGERHEART.UI.Notifications.beastformMissingEffect'); + return false; + } + + beastformEffect.changes = [...beastformEffect.changes, ...evolvedForm.changes]; + formData.system.features = [...formData.system.features, ...selectedForm.system.features.map(x => x.uuid)]; + } + + if (selectedForm.system.beastformType === CONFIG.DH.ITEM.beastformTypes.hybrid.id) { + formData.system.advantageOn = Object.values(hybridData.advantages).reduce((advantages, formCategory) => { + Object.keys(formCategory).forEach(advantageKey => { + advantages[advantageKey] = formCategory[advantageKey]; + }); + return advantages; + }, {}); + formData.system.features = [ + ...formData.system.features, + ...Object.values(hybridData.features).flatMap(x => Object.keys(x)) + ]; + } + + this.actor.createEmbeddedDocuments('Item', [formData]); + } + + /** + * Remove existing beastform effect and return true if there was one + * @returns {boolean} + */ + static async handleActiveTransformations() { + const beastformEffects = this.actor.effects.filter(x => x.type === 'beastform'); + const existingEffects = beastformEffects.length > 0; + await this.actor.deleteEmbeddedDocuments( + 'ActiveEffect', + beastformEffects.map(x => x.id) + ); + return existingEffects; + } } diff --git a/module/data/fields/action/costField.mjs b/module/data/fields/action/costField.mjs index c224fff0..ca942909 100644 --- a/module/data/fields/action/costField.mjs +++ b/module/data/fields/action/costField.mjs @@ -1,6 +1,12 @@ const fields = foundry.data.fields; export default class CostField extends fields.ArrayField { + /** + * Action Workflow order + */ + static order = 150; + + /** @inheritDoc */ constructor(options = {}, context = {}) { const element = new fields.SchemaField({ key: new fields.StringField({ @@ -20,15 +26,80 @@ export default class CostField extends fields.ArrayField { super(element, options, context); } - static prepareConfig(config) { + /** + * Cost Consumption Action Workflow part. + * Consume configured action resources. + * Must be called within Action context or similar. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + * @param {boolean} [successCost=false] Consume only resources configured as "On Success only" if not already consumed. + */ + static async execute(config, successCost = false) { + const actor= this.actor.system.partner ?? this.actor, + usefulResources = { + ...foundry.utils.deepClone(actor.system.resources), + fear: { + value: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), + max: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxFear, + reversed: false + } + }; + + if(this.parent?.parent) { + for (var cost of config.costs) { + if (cost.keyIsID) { + usefulResources[cost.key] = { + value: cost.value, + target: this.parent.parent, + keyIsID: true + }; + } + } + } + + const resources = CostField.getRealCosts(config.costs) + .filter( + c => + (!successCost && (!c.consumeOnSuccess || config.roll?.success)) || + (successCost && c.consumeOnSuccess) + ) + .reduce((a, c) => { + const resource = usefulResources[c.key]; + if (resource) { + a.push({ + key: c.key, + value: (c.total ?? c.value) * (resource.isReversed ? 1 : -1), + target: resource.target, + keyIsID: resource.keyIsID + }); + return a; + } + }, []); + + await actor.modifyResource(resources); + } + + /** + * Update Action Workflow config object. + * Must be called within Action context or similar. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + * @returns {boolean} Return false if fast-forwarded and no more uses. + */ + prepareConfig(config) { const costs = this.cost?.length ? foundry.utils.deepClone(this.cost) : []; config.costs = CostField.calcCosts.call(this, costs); const hasCost = CostField.hasCost.call(this, config.costs); - if (config.isFastForward && !hasCost) - return ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.insufficientResources')); - return hasCost; + if (config.dialog.configure === false && !hasCost) { + ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.insufficientResources')); + return hasCost; + } } + /** + * + * Must be called within Action context. + * @param {*} costs + * @returns + */ static calcCosts(costs) { const resources = CostField.getResources.call(this, costs); return costs.map(c => { @@ -40,13 +111,19 @@ export default class CostField extends fields.ArrayField { c.key === 'fear' ? game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear) : resources[c.key].isReversed - ? resources[c.key].max + ? resources[c.key].max - resources[c.key].value : resources[c.key].value; if (c.scalable) c.maxStep = Math.floor((c.max - c.value) / c.step); return c; }); } + /** + * Check if the current Actor currently has all needed resources. + * Must be called within Action context. + * @param {*} costs + * @returns {boolean} + */ static hasCost(costs) { const realCosts = CostField.getRealCosts.call(this, costs), hasFearCost = realCosts.findIndex(c => c.key === 'fear'); @@ -73,6 +150,12 @@ export default class CostField extends fields.ArrayField { ); } + /** + * Get all Actor resources + parent Item potential one. + * Must be called within Action context. + * @param {*} costs + * @returns + */ static getResources(costs) { const actorResources = foundry.utils.deepClone(this.actor.system.resources); if (this.actor.system.partner) @@ -93,6 +176,11 @@ export default class CostField extends fields.ArrayField { }; } + /** + * + * @param {*} costs + * @returns + */ static getRealCosts(costs) { const realCosts = costs?.length ? costs.filter(c => c.enabled) : []; let mergedCosts = []; @@ -104,6 +192,12 @@ export default class CostField extends fields.ArrayField { return mergedCosts; } + /** + * Format scalable max cost, inject Action datas if it's a formula. + * Must be called within Action context. + * @param {number|string} max Configured maximum for that resource. + * @returns {number} The max cost value. + */ static formatMax(max) { max ??= 0; if (isNaN(max)) { diff --git a/module/data/fields/action/damageField.mjs b/module/data/fields/action/damageField.mjs index 4b4dee7d..db43cfb0 100644 --- a/module/data/fields/action/damageField.mjs +++ b/module/data/fields/action/damageField.mjs @@ -1,8 +1,15 @@ import FormulaField from '../formulaField.mjs'; +import { setsEqual } from '../../../helpers/utils.mjs'; const fields = foundry.data.fields; export default class DamageField extends fields.SchemaField { + /** + * Action Workflow order + */ + static order = 20; + + /** @inheritDoc */ constructor(options, context = {}) { const damageFields = { parts: new fields.ArrayField(new fields.EmbeddedDataField(DHDamageData)), @@ -14,6 +21,141 @@ export default class DamageField extends fields.SchemaField { }; super(damageFields, options, context); } + + /** + * Roll Damage/Healing Action Workflow part. + * Must be called within Action context or similar. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + * @param {string} [messageId=null] ChatMessage Id where the clicked button belong. + * @param {boolean} [force=false] If the method should be executed outside of Action workflow, for ChatMessage button for example. + */ + static async execute(config, messageId = null, force = false) { + if(!this.hasDamage && !this.hasHealing) return; + if((this.hasRoll && DamageField.getAutomation() === CONFIG.DH.SETTINGS.actionAutomationChoices.never.id) && !force) return; + + let formulas = this.damage.parts.map(p => ({ + formula: DamageField.getFormulaValue.call(this, p, config).getFormula(this.actor), + damageTypes: p.applyTo === 'hitPoints' && !p.type.size ? new Set(['physical']) : p.type, + applyTo: p.applyTo + })); + + if (!formulas.length) return false; + + formulas = DamageField.formatFormulas.call(this, formulas, config); + + const damageConfig = { + ...config, + roll: formulas, + dialog: {}, + data: this.getRollData() + }; + delete damageConfig.evaluate; + + if(DamageField.getAutomation() === CONFIG.DH.SETTINGS.actionAutomationChoices.always.id) damageConfig.dialog.configure = false; + if (config.hasSave) config.onSave = damageConfig.onSave = this.save.damageMod; + + damageConfig.source.message = config.message?._id ?? messageId; + damageConfig.directDamage = !!damageConfig.source?.message; + + if(damageConfig.source?.message && game.modules.get('dice-so-nice')?.active) + await game.dice3d.waitFor3DAnimationByMessageID(damageConfig.source.message); + + const damageResult = await CONFIG.Dice.daggerheart.DamageRoll.build(damageConfig); + if(!damageResult) return false; + config.damage = damageResult.damage; + config.message ??= damageConfig.message; + } + + /** + * Apply Damage/Healing Action Worflow part. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + * @param {*[]} targets Arrays of targets to bypass pre-selected ones. + * @param {boolean} force If the method should be executed outside of Action workflow, for ChatMessage button for example. + */ + static async applyDamage(config, targets = null, force = false) { + targets ??= config.targets.filter(target => target.hit); + if(!config.damage || !targets?.length || (!DamageField.getApplyAutomation() && !force)) return; + for (let target of targets) { + const actor = fromUuidSync(target.actorId); + if(!actor) continue; + if ( + !config.hasHealing && + config.onSave && + target.saved?.success === true + ) { + const mod = CONFIG.DH.ACTIONS.damageOnSave[config.onSave]?.mod ?? 1; + Object.entries(config.damage).forEach(([k, v]) => { + v.total = 0; + v.parts.forEach(part => { + part.total = Math.ceil(part.total * mod); + v.total += part.total; + }); + }); + } + + if (config.hasHealing) actor.takeHealing(config.damage); + else actor.takeDamage(config.damage, config.isDirect); + } + } + + /** + * Return value or valueAlt from damage part + * Must be called within Action context or similar. + * @param {object} part Damage Part + * @param {object} data Action getRollData + * @returns Formula value object + */ + static getFormulaValue(part, data) { + let formulaValue = part.value; + + if (data.hasRoll && part.resultBased && data.roll.result.duality === -1) return part.valueAlt; + + const isAdversary = this.actor.type === 'adversary'; + if (isAdversary && this.actor.system.type === CONFIG.DH.ACTOR.adversaryTypes.horde.id) { + const hasHordeDamage = this.actor.effects.find(x => x.type === 'horde'); + if (hasHordeDamage && !hasHordeDamage.disabled) return part.valueAlt; + } + + return formulaValue; + } + + /** + * Prepare formulas for Damage Roll + * Must be called within Action context or similar. + * @param {object[]} formulas Array of formatted formulas object + * @param {object} data Action getRollData + * @returns + */ + static formatFormulas(formulas, data) { + const formattedFormulas = []; + formulas.forEach(formula => { + if (isNaN(formula.formula)) + formula.formula = Roll.replaceFormulaData(formula.formula, this.getRollData(data)); + const same = formattedFormulas.find( + f => setsEqual(f.damageTypes, formula.damageTypes) && f.applyTo === formula.applyTo + ); + if (same) same.formula += ` + ${formula.formula}`; + else formattedFormulas.push(formula); + }); + return formattedFormulas; + } + + /** + * Return the automation setting for execute method for current user role + * @returns {string} Id from settingsConfig.mjs actionAutomationChoices + */ + static getAutomation() { + return (game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damage.gm) || (!game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damage.players) + } + + + /** + * Return the automation setting for applyDamage method for current user role + * @returns {boolean} If applyDamage should be triggered automatically + */ + static getApplyAutomation() { + return (game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damageApply.gm) || (!game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damageApply.players) + } } export class DHActionDiceData extends foundry.abstract.DataModel { diff --git a/module/data/fields/action/effectsField.mjs b/module/data/fields/action/effectsField.mjs index ddc69d2d..3b8c5e43 100644 --- a/module/data/fields/action/effectsField.mjs +++ b/module/data/fields/action/effectsField.mjs @@ -1,6 +1,14 @@ +import { emitAsGM, GMUpdateEvent } from "../../../systemRegistration/socket.mjs"; + const fields = foundry.data.fields; export default class EffectsField extends fields.ArrayField { + /** + * Action Workflow order + */ + static order = 100; + + /** @inheritDoc */ constructor(options = {}, context = {}) { const element = new fields.SchemaField({ _id: new fields.DocumentIdField(), @@ -8,4 +16,86 @@ export default class EffectsField extends fields.ArrayField { }); super(element, options, context); } + + /** + * Apply Effects Action Workflow part. + * Must be called within Action context or similar. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + * @param {object[]} [targets=null] Array of targets to override pre-selected ones. + * @param {boolean} [force=false] If the method should be executed outside of Action workflow, for ChatMessage button for example. + */ + static async execute(config, targets = null, force = false) { + if(!config.hasEffect) return; + let message = config.message ?? ui.chat.collection.get(config.parent?._id); + if(!message) { + const roll = new CONFIG.Dice.daggerheart.DHRoll(''); + roll._evaluated = true; + message = config.message = await CONFIG.Dice.daggerheart.DHRoll.toMessage(roll, config); + } + if(EffectsField.getAutomation() || force) { + targets ??= (message.system?.targets ?? config.targets).filter(t => !config.hasRoll || t.hit); + await emitAsGM( + GMUpdateEvent.UpdateEffect, + EffectsField.applyEffects.bind(this), + targets, + this.uuid + ); + // EffectsField.applyEffects.call(this, config.targets.filter(t => !config.hasRoll || t.hit)); + } + } + + /** + * Apply Action Effects to a list of Targets + * Must be called within Action context or similar. + * @param {object[]} targets Array of formatted targets + */ + static async applyEffects(targets) { + if (!this.effects?.length || !targets?.length) return; + let effects = this.effects; + targets.forEach(async token => { + if (this.hasSave && token.saved.success === true) + effects = this.effects.filter(e => e.onSave === true); + if (!effects.length) return; + effects.forEach(async e => { + const actor = canvas.tokens.get(token.id)?.actor, + effect = this.item.effects.get(e._id); + if (!actor || !effect) return; + await EffectsField.applyEffect(effect, actor); + }); + }); + } + + /** + * Apply an Effect to a target or enable it if already on it + * @param {object} effect Effect object containing ActiveEffect UUID + * @param {object} actor Actor Document + */ + static async applyEffect(effect, actor) { + const existingEffect = actor.effects.find(e => e.origin === effect.uuid); + if (existingEffect) { + return effect.update( + foundry.utils.mergeObject({ + ...effect.constructor.getInitialDuration(), + disabled: false + }) + ); + } + + // Otherwise, create a new effect on the target + const effectData = foundry.utils.mergeObject({ + ...effect.toObject(), + disabled: false, + transfer: false, + origin: effect.uuid + }); + await ActiveEffect.implementation.create(effectData, { parent: actor }); + } + + /** + * Return the automation setting for execute method for current user role + * @returns {boolean} If execute should be triggered automatically + */ + static getAutomation() { + return (game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.effect.gm) || (!game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.effect.players) + } } diff --git a/module/data/fields/action/healingField.mjs b/module/data/fields/action/healingField.mjs deleted file mode 100644 index 98f4f5ea..00000000 --- a/module/data/fields/action/healingField.mjs +++ /dev/null @@ -1,12 +0,0 @@ -import { DHDamageData } from './damageField.mjs'; - -const fields = foundry.data.fields; - -export default class HealingField extends fields.SchemaField { - constructor(options, context = {}) { - const healingFields = { - parts: new fields.ArrayField(new fields.EmbeddedDataField(DHDamageData)) - }; - super(healingFields, options, context); - } -} diff --git a/module/data/fields/action/macroField.mjs b/module/data/fields/action/macroField.mjs index 62da0da0..222feb2a 100644 --- a/module/data/fields/action/macroField.mjs +++ b/module/data/fields/action/macroField.mjs @@ -1,7 +1,29 @@ const fields = foundry.data.fields; export default class MacroField extends fields.DocumentUUIDField { + /** + * Action Workflow order + */ + static order = 70; + + /** @inheritDoc */ constructor(context = {}) { super({ type: "Macro" }, context); } + + /** + * Macro Action Workflow part. + * Must be called within Action context or similar or similar. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. Currently not used. + */ + static async execute(config) { + const fixUUID = !this.macro.includes('Macro.') ? `Macro.${this.macro}` : this.macro, + macro = await fromUuid(fixUUID); + try { + if (!macro) throw new Error(`No macro found for the UUID: ${this.macro}.`); + macro.execute(); + } catch (error) { + ui.notifications.error(error); + } + } } diff --git a/module/data/fields/action/rangeField.mjs b/module/data/fields/action/rangeField.mjs index 221f00af..1237e507 100644 --- a/module/data/fields/action/rangeField.mjs +++ b/module/data/fields/action/rangeField.mjs @@ -1,6 +1,8 @@ const fields = foundry.data.fields; export default class RangeField extends fields.StringField { + + /** @inheritDoc */ constructor(context = {}) { const options = { choices: CONFIG.DH.GENERAL.range, @@ -11,7 +13,12 @@ export default class RangeField extends fields.StringField { super(options, context); } - static prepareConfig(config) { - return true; + /** + * Update Action Workflow config object. + * NOT YET IMPLEMENTED. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + */ + prepareConfig(config) { + return; } } diff --git a/module/data/fields/action/rollField.mjs b/module/data/fields/action/rollField.mjs index a4df2a9e..cfcfb56b 100644 --- a/module/data/fields/action/rollField.mjs +++ b/module/data/fields/action/rollField.mjs @@ -71,29 +71,6 @@ export class DHActionRollData extends foundry.abstract.DataModel { const modifiers = []; if (!this.parent?.actor) return modifiers; switch (this.parent.actor.type) { - case 'character': - const spellcastingTrait = - this.type === 'spellcast' - ? (this.parent.actor?.system?.spellcastModifierTrait?.key ?? 'agility') - : null; - const trait = - this.useDefault || !this.trait - ? (spellcastingTrait ?? this.parent.item.system.attack?.roll?.trait ?? 'agility') - : this.trait; - if ( - this.type === CONFIG.DH.GENERAL.rollTypes.attack.id || - this.type === CONFIG.DH.GENERAL.rollTypes.trait.id - ) - modifiers.push({ - label: `DAGGERHEART.CONFIG.Traits.${trait}.name`, - value: this.parent.actor.system.traits[trait].value - }); - else if (this.type === CONFIG.DH.GENERAL.rollTypes.spellcast.id) - modifiers.push({ - label: `DAGGERHEART.CONFIG.RollTypes.spellcast.name`, - value: this.parent.actor.system.spellcastModifier - }); - break; case 'companion': case 'adversary': if (this.type === CONFIG.DH.GENERAL.rollTypes.attack.id) @@ -107,10 +84,74 @@ export class DHActionRollData extends foundry.abstract.DataModel { } return modifiers; } + + get rollTrait() { + if(this.parent?.actor?.type !== "character") return null; + switch (this.type) { + case CONFIG.DH.GENERAL.rollTypes.spellcast.id: + return this.parent.actor?.system?.spellcastModifierTrait?.key ?? 'agility'; + case CONFIG.DH.GENERAL.rollTypes.attack.id: + case CONFIG.DH.GENERAL.rollTypes.trait.id: + return this.useDefault || !this.trait + ? this.parent.item.system.attack?.roll?.trait ?? 'agility' + : this.trait; + default: + return null; + } + } } export default class RollField extends fields.EmbeddedDataField { + /** + * Action Workflow order + */ + static order = 10; + + /** @inheritDoc */ constructor(options, context = {}) { super(DHActionRollData, options, context); } + + /** + * Roll Action Workflow part. + * Must be called within Action context or similar. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + */ + static async execute(config) { + if(!config.hasRoll) return; + config = await this.actor.diceRoll(config); + if(!config) return false; + } + + /** + * Update Action Workflow config object. + * Must be called within Action context. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + */ + prepareConfig(config) { + if(!config.hasRoll) return; + + config.dialog.configure = RollField.getAutomation() ? !config.dialog.configure : config.dialog.configure; + + const roll = { + baseModifiers: this.roll.getModifier(), + label: 'Attack', + type: this.roll?.type, + trait: this.roll?.rollTrait, + difficulty: this.roll?.difficulty, + formula: this.roll.getFormula(), + advantage: CONFIG.DH.ACTIONS.advantageState[this.roll.advState].value + }; + if (this.roll.type === 'diceSet' || !this.hasRoll) roll.lite = true; + + config.roll = roll; + } + + /** + * Return the automation setting for execute method for current user role + * @returns {boolean} If execute should be triggered automatically + */ + static getAutomation() { + return (game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.roll.gm) || (!game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.roll.players) + } } diff --git a/module/data/fields/action/saveField.mjs b/module/data/fields/action/saveField.mjs index e93a82a9..0003a4d5 100644 --- a/module/data/fields/action/saveField.mjs +++ b/module/data/fields/action/saveField.mjs @@ -1,6 +1,14 @@ +import { abilities } from "../../../config/actorConfig.mjs"; + const fields = foundry.data.fields; export default class SaveField extends fields.SchemaField { + /** + * Action Workflow order + */ + static order = 50; + + /** @inheritDoc */ constructor(options = {}, context = {}) { const saveFields = { trait: new fields.StringField({ @@ -16,4 +24,151 @@ export default class SaveField extends fields.SchemaField { }; super(saveFields, options, context); } + + /** + * Reaction Roll Action Workflow part. + * Must be called within Action context or similar. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + * @param {object[]} [targets=null] Array of targets to override pre-selected ones. + * @param {boolean} [force=false] If the method should be executed outside of Action workflow, for ChatMessage button for example. + */ + static async execute(config, targets = null, force = false) { + if(!config.hasSave) return; + let message = config.message ?? ui.chat.collection.get(config.parent?._id); + + if(!message) { + const roll = new CONFIG.Dice.daggerheart.DHRoll(''); + roll._evaluated = true; + message = config.message = await CONFIG.Dice.daggerheart.DHRoll.toMessage(roll, config); + } + if(SaveField.getAutomation() !== CONFIG.DH.SETTINGS.actionAutomationChoices.never.id || force) { + targets ??= config.targets.filter(t => !config.hasRoll || t.hit); + await SaveField.rollAllSave.call(this, targets, config.event, message); + } else return false; + } + + /** + * Roll a Reaction Roll for all targets. Send a query to the owner if the User is not. + * Must be called within Action context. + * @param {object[]} targets Array of formatted targets. + * @param {Event} event Triggering event + * @param {ChatMessage} message The ChatMessage the triggered button comes from. + */ + static async rollAllSave(targets, event, message) { + if(!targets) return; + return new Promise(resolve => { + const aPromise = []; + targets.forEach(target => { + aPromise.push( + new Promise(async subResolve => { + const actor = fromUuidSync(target.actorId); + if(actor) { + const rollSave = game.user === actor.owner ? + SaveField.rollSave.call(this, actor, event) + : actor.owner + .query('reactionRoll', { + actionId: this.uuid, + actorId: actor.uuid, + event, + message + }); + const result = await rollSave; + await SaveField.updateSaveMessage.call(this, result, message, target.id); + subResolve(); + } else subResolve(); + }) + ) + }); + Promise.all(aPromise).then(result => resolve()); + }) + } + + /** + * Roll a Reaction Roll for the specified Actor against the Action difficulty. + * Must be called within Action context. + * @param {*} actor Actor document + * @param {Event} event Triggering event + * @returns {object} Actor diceRoll config result. + */ + static async rollSave(actor, event) { + if (!actor) return; + const title = actor.isNPC + ? game.i18n.localize('DAGGERHEART.GENERAL.reactionRoll') + : game.i18n.format('DAGGERHEART.UI.Chat.dualityRoll.abilityCheckTitle', { + ability: game.i18n.localize(abilities[this.save.trait]?.label) + }), + rollConfig = { + event, + title, + roll: { + trait: this.save.trait, + difficulty: this.save.difficulty ?? this.actor?.baseSaveDifficulty, + type: 'trait' + }, + actionType: 'reaction', + hasRoll: true, + data: actor.getRollData() + }; + if(SaveField.getAutomation() === CONFIG.DH.SETTINGS.actionAutomationChoices.always.id) rollConfig.dialog = { configure: false }; + return actor.diceRoll(rollConfig); + } + + /** + * Update a Roll ChatMessage for a token according to his Reaction Roll result. + * @param {object} result Result from the Reaction Roll + * @param {object} message ChatMessage to update + * @param {string} targetId Token ID + */ + static async updateSaveMessage(result, message, targetId) { + if (!result) return; + const updateMsg = async function(message, targetId, result) { + // setTimeout(async () => { + const chatMessage = ui.chat.collection.get(message._id), + changes = { + flags: { + [game.system.id]: { + reactionRolls: { + [targetId]: + { + result: result.roll.total, + success: result.roll.success + } + } + } + } + }; + await chatMessage.update(changes); + // }, 100); + }; + if (game.modules.get('dice-so-nice')?.active) + game.dice3d.waitFor3DAnimationByMessageID(result.message.id ?? result.message._id).then(async () => await updateMsg(message, targetId, result)); + else await updateMsg(message, targetId, result); + } + + /** + * Return the automation setting for execute method for current user role + * @returns {string} Id from settingsConfig.mjs actionAutomationChoices + */ + static getAutomation() { + return (game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.save.gm) || (!game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.save.players) + } + + /** + * Send a query to an Actor owner to roll a Reaction Roll then send back the result. + * @param {object} param0 + * @param {string} param0.actionId Action ID + * @param {string} param0.actorId Actor ID + * @param {Event} param0.event Triggering event + * @param {ChatMessage} param0.message Chat Message to update + * @returns + */ + static rollSaveQuery({ actionId, actorId, event, message }) { + return new Promise(async (resolve, reject) => { + const actor = await fromUuid(actorId), + action = await fromUuid(actionId); + if (!actor || !actor?.isOwner) reject(); + SaveField.rollSave.call(action, actor, event, message) + .then(result => resolve(result)); + }); + } } diff --git a/module/data/fields/action/targetField.mjs b/module/data/fields/action/targetField.mjs index bfb01db9..4499dcc8 100644 --- a/module/data/fields/action/targetField.mjs +++ b/module/data/fields/action/targetField.mjs @@ -1,6 +1,8 @@ const fields = foundry.data.fields; export default class TargetField extends fields.SchemaField { + + /** @inheritDoc */ constructor(options = {}, context = {}) { const targetFields = { type: new fields.StringField({ @@ -13,44 +15,70 @@ export default class TargetField extends fields.SchemaField { super(targetFields, options, context); } - static prepareConfig(config) { - if (!this.target?.type) return []; + /** + * Update Action Workflow config object. + * Must be called within Action context. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + */ + prepareConfig(config) { + if (!this.target?.type) return config.targets = []; config.hasTarget = true; let targets; + // If the Action is configured as self-targeted, set targets as the owner. if (this.target?.type === CONFIG.DH.GENERAL.targetTypes.self.id) targets = [this.actor.token ?? this.actor.prototypeToken]; else { targets = Array.from(game.user.targets); if (this.target.type !== CONFIG.DH.GENERAL.targetTypes.any.id) { - targets = targets.filter(t => TargetField.isTargetFriendly.call(this, t)); + targets = targets.filter(target => TargetField.isTargetFriendly(this.actor, target, this.target.type)); if (this.target.amount && targets.length > this.target.amount) targets = []; } } config.targets = targets.map(t => TargetField.formatTarget.call(this, t)); const hasTargets = TargetField.checkTargets.call(this, this.target.amount, config.targets); - if (config.isFastForward && !hasTargets) - return ui.notifications.warn('Too many targets selected for that actions.'); - return hasTargets; + if (config.dialog.configure === false && !hasTargets) { + ui.notifications.warn('Too many targets selected for that actions.'); + return hasTargets; + } } + /** + * Check if the number of selected targets respect the amount set in the Action. + * NOT YET IMPLEMENTED. Will be with Target Picker. + * @param {number} amount Max amount of targets configured in the action. + * @param {*[]} targets Array of targeted tokens. + * @returns {boolean} If the amount of targeted tokens does not exceed action configured one. + */ static checkTargets(amount, targets) { return true; // return !amount || (targets.length > amount); } - static isTargetFriendly(target) { - const actorDisposition = this.actor.token - ? this.actor.token.disposition - : this.actor.prototypeToken.disposition, + /** + * Compare 2 Actors disposition between each other + * @param {*} actor First actor document. + * @param {*} target Second actor document. + * @param {string} type Disposition id to compare (friendly/hostile). + * @returns {boolean} If both actors respect the provided type. + */ + static isTargetFriendly(actor, target, type) { + const actorDisposition = actor.token + ? actor.token.disposition + : actor.prototypeToken.disposition, targetDisposition = target.document.disposition; return ( - (this.target.type === CONFIG.DH.GENERAL.targetTypes.friendly.id && + (type === CONFIG.DH.GENERAL.targetTypes.friendly.id && actorDisposition === targetDisposition) || - (this.target.type === CONFIG.DH.GENERAL.targetTypes.hostile.id && + (type === CONFIG.DH.GENERAL.targetTypes.hostile.id && actorDisposition + targetDisposition === 0) ); } + /** + * Format actor to useful datas for Action roll workflow. + * @param {*} actor Actor object to format. + * @returns {*} Formatted Actor. + */ static formatTarget(actor) { return { id: actor.id, diff --git a/module/data/fields/action/usesField.mjs b/module/data/fields/action/usesField.mjs index 5c2bfb61..d180ddf8 100644 --- a/module/data/fields/action/usesField.mjs +++ b/module/data/fields/action/usesField.mjs @@ -3,6 +3,12 @@ import FormulaField from '../formulaField.mjs'; const fields = foundry.data.fields; export default class UsesField extends fields.SchemaField { + /** + * Action Workflow order + */ + static order = 160; + + /** @inheritDoc */ constructor(options = {}, context = {}) { const usesFields = { value: new fields.NumberField({ nullable: true, initial: null }), @@ -20,15 +26,45 @@ export default class UsesField extends fields.SchemaField { super(usesFields, options, context); } - static prepareConfig(config) { + /** + * Uses Consumption Action Workflow part. + * Increment Action spent uses by 1. + * Must be called within Action context or similar or similar. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + * @param {boolean} [successCost=false] Consume only resources configured as "On Success only" if not already consumed. + */ + static async execute(config, successCost = false) { + if ( + config.uses?.enabled && + ((!successCost && (!config.uses?.consumeOnSuccess || config.roll?.success)) || + (successCost && config.uses?.consumeOnSuccess)) + ) + this.update({ 'uses.value': this.uses.value + 1 }); + } + + /** + * Update Action Workflow config object. + * Must be called within Action context. + * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. + * @returns {boolean} Return false if fast-forwarded and no more uses. + */ + prepareConfig(config) { const uses = this.uses?.max ? foundry.utils.deepClone(this.uses) : null; if (uses && !uses.value) uses.value = 0; config.uses = uses; const hasUses = UsesField.hasUses.call(this, config.uses); - if (config.isFastForward && !hasUses) return ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.actionNoUsesRemaining')); - return hasUses; + if (config.dialog.configure === false && !hasUses) { + ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.actionNoUsesRemaining')); + return hasUses; + } } + /** + * Prepare Uses object for Action Workflow + * Must be called within Action context. + * @param {object} uses + * @returns {object} + */ static calcUses(uses) { if (!uses) return null; return { @@ -38,6 +74,12 @@ export default class UsesField extends fields.SchemaField { }; } + /** + * Check if the Action still get atleast one unspent uses. + * Must be called within Action context. + * @param {*} uses + * @returns {boolean} + */ static hasUses(uses) { if (!uses) return true; let max = uses.max ?? 0; diff --git a/module/data/settings/Automation.mjs b/module/data/settings/Automation.mjs index e1d63669..da71e899 100644 --- a/module/data/settings/Automation.mjs +++ b/module/data/settings/Automation.mjs @@ -80,6 +80,72 @@ export default class DhAutomation extends foundry.abstract.DataModel { initial: CONFIG.DH.GENERAL.defeatedConditions.defeated.id, label: 'DAGGERHEART.SETTINGS.Automation.FIELDS.defeated.companionDefault.label' }) + }), + roll: new fields.SchemaField({ + roll: new fields.SchemaField({ + gm: new fields.BooleanField({ + required: true, + initial: false, + label: 'DAGGERHEART.GENERAL.gm' + }), + players: new fields.BooleanField({ + required: true, + initial: false, + label: 'DAGGERHEART.GENERAL.player.plurial' + }) + }), + damage: new fields.SchemaField({ + gm: new fields.StringField({ + required: true, + initial: "never", + choices: CONFIG.DH.SETTINGS.actionAutomationChoices, + label: 'DAGGERHEART.GENERAL.gm' + }), + players: new fields.StringField({ + required: true, + initial: "never", + choices: CONFIG.DH.SETTINGS.actionAutomationChoices, + label: 'DAGGERHEART.GENERAL.player.plurial' + }) + }), + save: new fields.SchemaField({ + gm: new fields.StringField({ + required: true, + initial: "never", + choices: CONFIG.DH.SETTINGS.actionAutomationChoices, + label: 'DAGGERHEART.GENERAL.gm' + }), + players: new fields.StringField({ + required: true, + initial: "never", + choices: CONFIG.DH.SETTINGS.actionAutomationChoices, + label: 'DAGGERHEART.GENERAL.player.plurial' + }) + }), + damageApply: new fields.SchemaField({ + gm: new fields.BooleanField({ + required: true, + initial: false, + label: 'DAGGERHEART.GENERAL.gm' + }), + players: new fields.BooleanField({ + required: true, + initial: false, + label: 'DAGGERHEART.GENERAL.player.plurial' + }) + }), + effect: new fields.SchemaField({ + gm: new fields.BooleanField({ + required: true, + initial: false, + label: 'DAGGERHEART.GENERAL.gm' + }), + players: new fields.BooleanField({ + required: true, + initial: false, + label: 'DAGGERHEART.GENERAL.player.plurial' + }) + }) }) }; } diff --git a/module/dice/d20Roll.mjs b/module/dice/d20Roll.mjs index 63d84744..f0660106 100644 --- a/module/dice/d20Roll.mjs +++ b/module/dice/d20Roll.mjs @@ -128,7 +128,9 @@ export default class D20Roll extends DHRoll { applyBaseBonus() { const modifiers = foundry.utils.deepClone(this.options.roll.baseModifiers) ?? []; - modifiers.push(...this.getBonus(`roll.${this.options.type}`, `${this.options.type?.capitalize()} Bonus`)); + modifiers.push( + ...this.getBonus(`roll.${this.options.actionType}`, `${this.options.actionType?.capitalize()} Bonus`) + ); modifiers.push( ...this.getBonus(`roll.${this.options.roll.type}`, `${this.options.roll.type?.capitalize()} Bonus`) ); @@ -138,7 +140,7 @@ export default class D20Roll extends DHRoll { static postEvaluate(roll, config = {}) { const data = super.postEvaluate(roll, config); - data.type = config.roll?.type; + data.type = config.actionType; data.difficulty = config.roll.difficulty; if (config.targets?.length) { config.targets.forEach(target => { @@ -147,6 +149,7 @@ export default class D20Roll extends DHRoll { }); data.success = config.targets.some(target => target.hit); } else if (config.roll.difficulty) data.success = roll.isCritical || roll.total >= config.roll.difficulty; + config.successConsumed = data.success; data.advantage = { type: config.roll.advantage, diff --git a/module/dice/damageRoll.mjs b/module/dice/damageRoll.mjs index aa9e1d94..4d293d9d 100644 --- a/module/dice/damageRoll.mjs +++ b/module/dice/damageRoll.mjs @@ -9,6 +9,7 @@ export default class DamageRoll extends DHRoll { static DefaultDialog = DamageDialog; static async buildEvaluate(roll, config = {}, message = {}) { + if (config.dialog.configure === false) roll.constructFormula(config); if (config.evaluate !== false) for (const roll of config.roll) await roll.roll.evaluate(); roll._evaluated = true; @@ -46,9 +47,8 @@ export default class DamageRoll extends DHRoll { ); } await super.buildPost(roll, config, message); - if (config.source?.message) { + if (config.source?.message) chatMessage.update({ 'system.damage': config.damage }); - } } static unifyDamageRoll(rolls) { diff --git a/module/dice/dhRoll.mjs b/module/dice/dhRoll.mjs index ac340c64..0dcdd316 100644 --- a/module/dice/dhRoll.mjs +++ b/module/dice/dhRoll.mjs @@ -28,6 +28,7 @@ export default class DHRoll extends Roll { static async buildConfigure(config = {}, message = {}) { config.hooks = [...this.getHooks(), '']; config.dialog ??= {}; + for (const hook of config.hooks) { if (Hooks.call(`${CONFIG.DH.id}.preRoll${hook.capitalize()}`, config, message) === false) return null; } @@ -45,10 +46,7 @@ export default class DHRoll extends Roll { } for (const hook of config.hooks) { - if ( - Hooks.call(`${CONFIG.DH.id}.post${hook.capitalize()}RollConfiguration`, roll, config, message) === false - ) - return []; + if (Hooks.call(`${CONFIG.DH.id}.post${hook.capitalize()}RollConfiguration`, roll, config, message) === false) return []; } return roll; } @@ -88,11 +86,12 @@ export default class DHRoll extends Roll { type: this.messageType, user: game.user.id, title: roll.title, - speaker: cls.getSpeaker(), + speaker: cls.getSpeaker({ actor: roll.data?.parent }), sound: config.mute ? null : CONFIG.sounds.dice, system: config, rolls: [roll] }; + config.selectedRollMode ??= game.settings.get('core', 'rollMode'); if (roll._evaluated) { @@ -226,7 +225,7 @@ export const registerRollDiceHooks = () => { if ( !config.source?.actor || (game.user.isGM ? !hopeFearAutomation.gm : !hopeFearAutomation.players) || - config.roll.type === 'reaction' + config.actionType === 'reaction' ) return; diff --git a/module/dice/dualityRoll.mjs b/module/dice/dualityRoll.mjs index ac1047ab..93ac231e 100644 --- a/module/dice/dualityRoll.mjs +++ b/module/dice/dualityRoll.mjs @@ -19,7 +19,7 @@ export default class DualityRoll extends D20Roll { get title() { return game.i18n.localize( - `DAGGERHEART.GENERAL.${this.options?.roll?.type === CONFIG.DH.ITEM.actionTypes.reaction.id ? 'reactionRoll' : 'dualityRoll'}` + `DAGGERHEART.GENERAL.${this.options?.actionType === CONFIG.DH.ITEM.actionTypes.reaction.id ? 'reactionRoll' : 'dualityRoll'}` ); } @@ -153,10 +153,10 @@ export default class DualityRoll extends D20Roll { applyBaseBonus() { const modifiers = super.applyBaseBonus(); - - if (this.options.roll.trait && this.data.traits[this.options.roll.trait]) + + if (this.options.roll.trait && this.data.traits?.[this.options.roll.trait]) modifiers.unshift({ - label: `DAGGERHEART.CONFIG.Traits.${this.options.roll.trait}.name`, + label: this.options.roll.type === CONFIG.DH.GENERAL.rollTypes.spellcast.id ? "DAGGERHEART.CONFIG.RollTypes.spellcast.name" : `DAGGERHEART.CONFIG.Traits.${this.options.roll.trait}.name`, value: this.data.traits[this.options.roll.trait].value }); diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index 08735a45..950ed621 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -14,7 +14,7 @@ export default class DhpActor extends Actor { get owner() { const user = this.hasPlayerOwner && game.users.players.find(u => this.testUserPermission(u, 'OWNER') && u.active); - if (!user) return game.user.isGM ? game.user : null; + if (!user) return game.users.activeGM; return user; } diff --git a/module/documents/chatMessage.mjs b/module/documents/chatMessage.mjs index c7f30e48..1a619a9c 100644 --- a/module/documents/chatMessage.mjs +++ b/module/documents/chatMessage.mjs @@ -1,3 +1,5 @@ +import { emitAsGM, GMUpdateEvent } from "../systemRegistration/socket.mjs"; + export default class DhpChatMessage extends foundry.documents.ChatMessage { targetHook = null; @@ -102,20 +104,30 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { }); if (itemDesc && autoExpandRoll.desc) itemDesc.setAttribute('open', ''); } - - if (!game.user.isGM) { - const applyButtons = html.querySelector('.apply-buttons'); + + if(!this.isAuthor && !this.speakerActor?.isOwner) { + const applyButtons = html.querySelector(".apply-buttons"); applyButtons?.remove(); - if (!this.isAuthor && !this.speakerActor?.isOwner) { - const buttons = html.querySelectorAll('.ability-card-footer > .ability-use-button'); - buttons.forEach(b => b.remove()); - } + const buttons = html.querySelectorAll(".ability-card-footer > .ability-use-button"); + buttons.forEach(b => b.remove()); } } addChatListeners(html) { + html.querySelectorAll('.duality-action-damage').forEach(element => + element.addEventListener('click', this.onRollDamage.bind(this)) + ); + html.querySelectorAll('.damage-button').forEach(element => - element.addEventListener('click', this.onDamage.bind(this)) + element.addEventListener('click', this.onApplyDamage.bind(this)) + ); + + html.querySelectorAll('.target-save').forEach(element => + element.addEventListener('click', this.onRollSave.bind(this)) + ); + + html.querySelectorAll('.roll-all-save-button').forEach(element => + element.addEventListener('click', this.onRollAllSave.bind(this)) ); html.querySelectorAll('.duality-action-effect').forEach(element => @@ -133,17 +145,21 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { }); } - getTargetList() { - const targets = this.system.hitTargets ?? []; - return targets.map(target => game.canvas.tokens.documentCollection.find(t => t.actor?.uuid === target.actorId)); + async onRollDamage(event) { + event.stopPropagation(); + const config = foundry.utils.deepClone(this.system); + config.event = event; + this.system.action?.workflow.get("damage")?.execute(config, this._id, true); } - async onDamage(event) { + async onApplyDamage(event) { event.stopPropagation(); - const targets = this.getTargetList(); + const targets = this.filterPermTargets(this.system.hitTargets), + config = foundry.utils.deepClone(this.system); + config.event = event; if (this.system.onSave) { - const pendingingSaves = this.system.hitTargets.filter(t => t.saved.success === null); + const pendingingSaves = targets.filter(t => t.saved.success === null); if (pendingingSaves.length) { const confirm = await foundry.applications.api.DialogV2.confirm({ window: { title: 'Pending Reaction Rolls found' }, @@ -154,62 +170,62 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { } if (targets.length === 0) - return ui.notifications.info(game.i18n.localize('DAGGERHEART.UI.Notifications.noTargetsSelected')); + return ui.notifications.info(game.i18n.localize('DAGGERHEART.UI.Notifications.noTargetsSelectedOrPerm')); + + this.consumeOnSuccess(); + this.system.action?.workflow.get("applyDamage")?.execute(config, targets, true); + } - for (let target of targets) { - let damages = foundry.utils.deepClone(this.system.damage); - if ( - !this.system.hasHealing && - this.system.onSave && - this.system.hitTargets.find(t => t.id === target.id)?.saved?.success === true - ) { - const mod = CONFIG.DH.ACTIONS.damageOnSave[this.system.onSave]?.mod ?? 1; - Object.entries(damages).forEach(([k, v]) => { - v.total = 0; - v.parts.forEach(part => { - part.total = Math.ceil(part.total * mod); - v.total += part.total; - }); - }); - } - - this.consumeOnSuccess(); - if (this.system.hasHealing) target.actor.takeHealing(damages); - else target.actor.takeDamage(damages, this.system.isDirect); + async onRollSave(event) { + event.stopPropagation(); + const tokenId = event.target.closest('[data-token]')?.dataset.token, + token = game.canvas.tokens.get(tokenId); + if (!token?.actor || !token.isOwner) return true; + if (this.system.source.item && this.system.source.action) { + const action = this.system.action; + if (!action || !action?.hasSave) return; + game.system.api.fields.ActionFields.SaveField.rollSave.call(action, token.actor, event).then(result => + emitAsGM( + GMUpdateEvent.UpdateSaveMessage, + game.system.api.fields.ActionFields.SaveField.updateSaveMessage.bind(action, result, this, token.id), + { + action: action.uuid, + message: this._id, + token: token.id, + result + } + ) + ); } } - getAction(actor, itemId, actionId) { - const item = actor.items.get(itemId), - action = - actor.system.attack?._id === actionId - ? actor.system.attack - : item.system.attack?._id === actionId - ? item.system.attack - : item?.system?.actions?.get(actionId); - return action; + async onRollAllSave(event) { + event.stopPropagation(); + if (!game.user.isGM) return; + const targets = this.system.hitTargets, + config = foundry.utils.deepClone(this.system); + config.event = event; + this.system.action?.workflow.get("save")?.execute(config, targets, true); } async onApplyEffect(event) { event.stopPropagation(); - const actor = await foundry.utils.fromUuid(this.system.source.actor); - if (!actor || !game.user.isGM) return true; - if (this.system.source.item && this.system.source.action) { - const action = this.getAction(actor, this.system.source.item, this.system.source.action); - if (!action || !action?.applyEffects) return; - const targets = this.getTargetList(); - if (targets.length === 0) - ui.notifications.info(game.i18n.localize('DAGGERHEART.UI.Notifications.noTargetsSelected')); - this.consumeOnSuccess(); - await action.applyEffects(event, this, targets); - } + const targets = this.filterPermTargets(this.system.hitTargets), + config = foundry.utils.deepClone(this.system); + config.event = event; + if (targets.length === 0) + ui.notifications.info(game.i18n.localize('DAGGERHEART.UI.Notifications.noTargetsSelectedOrPerm')); + this.consumeOnSuccess(); + this.system.action?.workflow.get("effects")?.execute(config, targets, true); + } + + filterPermTargets(targets) { + return targets.filter(t => fromUuidSync(t.actorId)?.canUserModify(game.user, "update")) } consumeOnSuccess() { - if (!this.system.successConsumed && !this.targetSelection) { - const action = this.system.action; - if (action) action.consume(this.system, true); - } + if (!this.system.successConsumed && !this.targetSelection) + this.system.action?.consume(this.system, true); } hoverTarget(event) { diff --git a/module/systemRegistration/socket.mjs b/module/systemRegistration/socket.mjs index b47fee85..f3f9629b 100644 --- a/module/systemRegistration/socket.mjs +++ b/module/systemRegistration/socket.mjs @@ -22,6 +22,7 @@ export const socketEvent = { export const GMUpdateEvent = { UpdateDocument: 'DhGMUpdateDocument', + UpdateEffect: 'DhGMUpdateEffect', UpdateSetting: 'DhGMUpdateSetting', UpdateFear: 'DhGMUpdateFear', UpdateSaveMessage: 'DhGMUpdateSaveMessage' @@ -37,9 +38,12 @@ export const registerSocketHooks = () => { const document = data.uuid ? await fromUuid(data.uuid) : null; switch (data.action) { case GMUpdateEvent.UpdateDocument: - if (document && data.update) { + if (document && data.update) await document.update(data.update); - } + break; + case GMUpdateEvent.UpdateEffect: + if (document && data.update) + await game.system.api.fields.ActionFields.EffectsField.applyEffects.call(document, data.update); break; case GMUpdateEvent.UpdateSetting: await game.settings.set(CONFIG.DH.id, data.uuid, data.update); @@ -78,7 +82,7 @@ export const registerSocketHooks = () => { export const registerUserQueries = () => { CONFIG.queries.armorSlot = DamageReductionDialog.armorSlotQuery; - CONFIG.queries.reactionRoll = game.system.api.models.actions.actionsTypes.base.rollSaveQuery; + CONFIG.queries.reactionRoll = game.system.api.fields.ActionFields.SaveField.rollSaveQuery; }; export const emitAsGM = async (eventName, callback, update, uuid = null) => { diff --git a/styles/less/global/elements.less b/styles/less/global/elements.less index 399715ca..e4a2128c 100755 --- a/styles/less/global/elements.less +++ b/styles/less/global/elements.less @@ -624,6 +624,7 @@ .form-group { justify-content: end; + flex-wrap: nowrap; } .hint { diff --git a/styles/less/global/global.less b/styles/less/global/global.less index cf8431b5..e135846f 100644 --- a/styles/less/global/global.less +++ b/styles/less/global/global.less @@ -18,7 +18,7 @@ color: var(--color-form-hint); } - &:hover { + .form-group:hover { .hint { color: var(--color-form-hint-hover); } diff --git a/styles/less/ui/settings/settings.less b/styles/less/ui/settings/settings.less index 2ac8bfb0..67fe7718 100644 --- a/styles/less/ui/settings/settings.less +++ b/styles/less/ui/settings/settings.less @@ -127,4 +127,4 @@ text-align: center; } } -} +} \ No newline at end of file diff --git a/templates/actionTypes/beastform.hbs b/templates/actionTypes/beastform.hbs index b2710208..b9bea445 100644 --- a/templates/actionTypes/beastform.hbs +++ b/templates/actionTypes/beastform.hbs @@ -1,9 +1,4 @@ -
- -
{{localize "DAGGERHEART.ACTIONS.Config.beastform.label"}}
-
- -
- {{formGroup fields.tierAccess.fields.exact value=beastform.tierAccess.exact labelAttr="label" valueAttr="key" localize=true blank=""}} -
+
+ {{localize "DAGGERHEART.ACTIONS.Config.beastform.label"}} + {{formGroup fields.tierAccess.fields.exact value=source.tierAccess.exact name="beastform.tierAccess.exact" labelAttr="label" valueAttr="key" localize=true blank=""}}
\ No newline at end of file diff --git a/templates/actionTypes/damage.hbs b/templates/actionTypes/damage.hbs index 6a94752b..96bb361c 100644 --- a/templates/actionTypes/damage.hbs +++ b/templates/actionTypes/damage.hbs @@ -56,7 +56,7 @@
{{formField ../fields.valueAlt.fields.flatMultiplier value=dmg.valueAlt.flatMultiplier name=(concat ../path "damage.parts." realIndex ".valueAlt.flatMultiplier") label="DAGGERHEART.ACTIONS.Settings.multiplier" classes="inline-child" localize=true }} - {{formField ../fields.valueAlt.fields.dice value=dmg.valueAlt.dice name=(concat ../path "damage.parts." realIndex ".valueAlt.dice") classes="inline-child"}} + {{formField ../fields.valueAlt.fields.dice value=dmg.valueAlt.dice name=(concat ../path "damage.parts." realIndex ".valueAlt.dice") classes="inline-child" localize=true}} {{formField ../fields.valueAlt.fields.bonus value=dmg.valueAlt.bonus name=(concat ../path "damage.parts." realIndex ".valueAlt.bonus") localize=true classes="inline-child"}}
@@ -70,7 +70,7 @@ {{#*inline "formula"}} {{#unless dmg.base}} - {{formField fields.custom.fields.enabled value=source.custom.enabled name=(concat path "damage.parts." realIndex "." target ".custom.enabled") classes="checkbox"}} + {{formField fields.custom.fields.enabled value=source.custom.enabled name=(concat path "damage.parts." realIndex "." target ".custom.enabled") classes="checkbox" localize=true}} {{/unless}} {{#if source.custom.enabled}} {{formField fields.custom.fields.formula value=source.custom.formula name=(concat path "damage.parts." realIndex "." target ".custom.formula") localize=true}} @@ -79,8 +79,8 @@ {{#unless @root.isNPC}} {{formField fields.multiplier value=source.multiplier name=(concat path "damage.parts." realIndex "." target ".multiplier") localize=true}} {{/unless}} - {{#if (eq source.multiplier 'flat')}}{{formField fields.flatMultiplier value=source.flatMultiplier name=(concat path "damage.parts." realIndex "." target ".flatMultiplier") }}{{/if}} - {{formField fields.dice value=source.dice name=(concat path "damage.parts." realIndex "." target ".dice")}} + {{#if (eq source.multiplier 'flat')}}{{formField fields.flatMultiplier value=source.flatMultiplier name=(concat path "damage.parts." realIndex "." target ".flatMultiplier") localize=true }}{{/if}} + {{formField fields.dice value=source.dice name=(concat path "damage.parts." realIndex "." target ".dice") localize=true}} {{formField fields.bonus value=source.bonus name=(concat path "damage.parts." realIndex "." target ".bonus") localize=true}}
{{/if}} diff --git a/templates/actionTypes/save.hbs b/templates/actionTypes/save.hbs index 90bc0483..85536c87 100644 --- a/templates/actionTypes/save.hbs +++ b/templates/actionTypes/save.hbs @@ -1,6 +1,9 @@ -
- {{localize "DAGGERHEART.GENERAL.save"}} - {{formField fields.trait label="Trait" name="save.trait" value=source.trait localize=true}} - {{formField fields.difficulty label="Difficulty" name="save.difficulty" value=source.difficulty disabled=(not source.trait) placeholder=@root.baseSaveDifficulty}} - {{formField fields.damageMod label="Damage on Save" name="save.damageMod" value=source.damageMod localize=true disabled=(not source.trait)}} +
+ {{localize "DAGGERHEART.GENERAL.Roll.reaction"}} +

{{localize "DAGGERHEART.ACTIONS.Settings.saveHint"}}

+
+ {{formField fields.trait label="Trait" name="save.trait" value=source.trait localize=true}} + {{formField fields.difficulty label="Difficulty" name="save.difficulty" value=source.difficulty disabled=(not source.trait) placeholder=@root.baseSaveDifficulty}} + {{formField fields.damageMod label="Damage on Save" name="save.damageMod" value=source.damageMod localize=true disabled=(not source.trait)}} +
\ No newline at end of file diff --git a/templates/dialogs/dice-roll/rollSelection.hbs b/templates/dialogs/dice-roll/rollSelection.hbs index b2feaa0b..6a4655d6 100644 --- a/templates/dialogs/dice-roll/rollSelection.hbs +++ b/templates/dialogs/dice-roll/rollSelection.hbs @@ -75,16 +75,8 @@ {{#each experiences}} {{#if name}}
- {{#if (includes ../selectedExperiences id)}} - - {{else}} - - {{/if}} - {{#if (eq @root.rollType 'D20Roll')}} - {{name}} +{{modifier}} - {{else}} - {{name}} +{{value}} - {{/if}} + + {{name}} +{{value}}
{{/if}} {{/each}} @@ -126,6 +118,12 @@ {{selectOptions diceOptions selected=@root.roll.dAdvantage.denomination}}
+ {{#if abilities}} + {{localize "DAGGERHEART.GENERAL.traitModifier"}} + + {{/if}} {{/unless}} {{#if @root.rallyDie.length}} {{localize "DAGGERHEART.CLASS.Feature.rallyDice"}} diff --git a/templates/settings/automation-settings/roll.hbs b/templates/settings/automation-settings/roll.hbs new file mode 100644 index 00000000..5769bf61 --- /dev/null +++ b/templates/settings/automation-settings/roll.hbs @@ -0,0 +1,22 @@ +
+
+ + {{localize "DAGGERHEART.SETTINGS.Automation.roll.title"}} + + {{#each settingFields.schema.fields.roll.fields as | field |}} + {{!-- {{formGroup field value=(lookup @root.settingFields.roll field.name) localize=true rootId="automation-roll"}} --}} +
+ + {{#with (lookup @root.settingFields.roll field.name) as | values |}} + {{formGroup field.fields.gm value=values.gm rootId=(concat "automation-roll-" field.name "-gm") localize=true}} + {{formGroup field.fields.players value=values.players rootId=(concat "automation-roll-" field.name "-players") localize=true}} + {{/with}} +

{{localize (concat "DAGGERHEART.SETTINGS.Automation.FIELDS.roll." field.name ".hint")}}

+
+ {{/each}} +
+
\ No newline at end of file diff --git a/templates/sheets-settings/action-settings/effect.hbs b/templates/sheets-settings/action-settings/effect.hbs index 26a097af..51c15aae 100644 --- a/templates/sheets-settings/action-settings/effect.hbs +++ b/templates/sheets-settings/action-settings/effect.hbs @@ -6,7 +6,6 @@ {{#if fields.roll}}{{> 'systems/daggerheart/templates/actionTypes/roll.hbs' fields=fields.roll.fields source=source.roll}}{{/if}} {{#if fields.save}}{{> 'systems/daggerheart/templates/actionTypes/save.hbs' fields=fields.save.fields source=source.save}}{{/if}} {{#if fields.damage}}{{> 'systems/daggerheart/templates/actionTypes/damage.hbs' fields=fields.damage.fields.parts.element.fields source=source.damage directField=fields.damage.fields.direct }}{{/if}} - {{#if fields.resource}}{{> 'systems/daggerheart/templates/actionTypes/resource.hbs' fields=fields.resource.fields source=source.resource}}{{/if}} {{#if fields.macro}}{{> 'systems/daggerheart/templates/actionTypes/macro.hbs' fields=fields.macro source=source.macro}}{{/if}} {{#if fields.effects}}{{> 'systems/daggerheart/templates/actionTypes/effect.hbs' fields=fields.effects.element.fields source=source.effects}}{{/if}} {{#if fields.beastform}}{{> 'systems/daggerheart/templates/actionTypes/beastform.hbs' fields=fields.beastform.fields source=source.beastform}}{{/if}} diff --git a/templates/ui/chat/parts/button-part.hbs b/templates/ui/chat/parts/button-part.hbs index f83972f7..21317939 100644 --- a/templates/ui/chat/parts/button-part.hbs +++ b/templates/ui/chat/parts/button-part.hbs @@ -1,17 +1,17 @@
{{#if hasDamage}} {{#unless (empty damage)}} - {{#if canButtonApply}}{{/if}} + {{else}} {{/unless}} {{/if}} {{#if hasHealing}} {{#unless (empty damage)}} - {{#if canButtonApply}}{{/if}} + {{else}} {{/unless}} {{/if}} - {{#if (and hasEffect canButtonApply)}}{{/if}} + {{#if (and hasEffect)}}{{/if}}
\ No newline at end of file diff --git a/templates/ui/chat/parts/damage-part.hbs b/templates/ui/chat/parts/damage-part.hbs index 05b6b825..97828bd2 100644 --- a/templates/ui/chat/parts/damage-part.hbs +++ b/templates/ui/chat/parts/damage-part.hbs @@ -13,10 +13,10 @@ {{#each damage as | roll index | }}
- {{localize (concat 'DAGGERHEART.CONFIG.HealingType.' index '.inChatRoll')}}
{{localize "DAGGERHEART.GENERAL.total"}}: {{roll.total}}
{{#if (and (eq index "hitPoints")../isDirect)}}
{{localize "DAGGERHEART.CONFIG.DamageType.direct.short"}}
{{/if}} + {{#if ../hasHealing}}{{localize (concat 'DAGGERHEART.CONFIG.HealingType.' index '.name')}}{{else}}{{localize (concat 'DAGGERHEART.CONFIG.HealingType.' index '.inChatRoll')}}{{/if}}
{{localize "DAGGERHEART.GENERAL.total"}}: {{roll.total}}
{{#if (and (eq index "hitPoints") ../isDirect)}}
{{localize "DAGGERHEART.CONFIG.DamageType.direct.short"}}
{{/if}}
{{#each roll.parts}} - {{#if damageTypes.length}} + {{#if (and (not @root.hasHealing) damageTypes.length)}}
{{/if}} - {{#if (and ../hasSave (or hit (not @root.hasRoll)))}} + {{#if (and ../hasSave (or hit (not @root.hasRoll) (not @root.targetMode)))}}
From 18687b61313531d6001c7d15c33ad5c90c220c23 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Wed, 27 Aug 2025 17:01:15 +1000 Subject: [PATCH 035/260] Fix Avalanche typo (#1098) Co-authored-by: Chris Ryan --- .../adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json | 8 ++++---- .../adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json | 8 ++++---- .../environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json | 8 ++++---- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json b/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json index 760e1c74..0d5bd5eb 100644 --- a/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json +++ b/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json @@ -427,7 +427,7 @@ "_key": "!actors.items!3aAS2Qm3R6cgaYfE.tQgxiSS48TJ3X1Dl" }, { - "name": "Avalance Roar", + "name": "Avalanche Roar", "type": "feature", "system": { "description": "

Spend a Fear to roar while within a cave and cause a cave-in. All targets within Close range must succeed on an Agility Reaction Roll (14) or take 2d10 physical damage. The rubble can be cleared with a Progress Countdown (8).

@Template[type:emanation|range:c]

", @@ -532,12 +532,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754085059319, - "modifiedTime": 1754143365810, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756256613353, + "lastModifiedBy": "CEZZA7TXd7uT8O2c" }, "_key": "!actors.items!3aAS2Qm3R6cgaYfE.9Z0i0uURfBMVIapJ" }, diff --git a/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json b/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json index 48b1cd14..251a1ab7 100644 --- a/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json +++ b/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json @@ -548,7 +548,7 @@ "_key": "!actors.items!UGPiPLJsPvMTSKEF.QV2ytK4b1VWF71OS" }, { - "name": "Avalance", + "name": "Avalanche", "type": "feature", "system": { "description": "

Spend a Fear to have the Dragon unleash a huge downfall of snow and ice, covering all other creatures within Far range. All targets within this area must succeed on an Instinct Reaction Roll or be buried in snow and rocks, becoming Vulnerable until they dig themselves out from the debris. For each PC that fails the reaction roll, you gain a Fear.

@Template[type:emanation|range:f]

", @@ -678,12 +678,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754131703390, - "modifiedTime": 1754131790034, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756256581072, + "lastModifiedBy": "CEZZA7TXd7uT8O2c" }, "_key": "!actors.items!UGPiPLJsPvMTSKEF.CcRTxCDCJskiu3fI" }, diff --git a/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json b/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json index e2a31c41..8b962e9f 100644 --- a/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json +++ b/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json @@ -177,7 +177,7 @@ "_key": "!actors.items!acMu9wJrMZZzLSTJ.cIAMenvMXHPTpOFn" }, { - "name": "Avalance", + "name": "Avalanche", "type": "feature", "system": { "description": "

Spend a Fear to carve the mountain with an icy torrent, causing an avalanche. All PCs in its path must succeed on an Agility or Strength Reaction Roll or be bowled over and carried down the mountain. A PC using rope, pitons, or other climbing gear gains advantage on this roll. Targets who fail are knocked down the mountain to Far range, take 2d20 physical damage, and must mark a Stress. Targets who succeed must mark a Stress.

How do the PCs try to weather the avalanche? What approach do the characters take to fi nd one another when their companions go hurtling down the mountainside?

", @@ -252,12 +252,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754217019442, - "modifiedTime": 1754217102897, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756256534443, + "lastModifiedBy": "CEZZA7TXd7uT8O2c" }, "_key": "!actors.items!acMu9wJrMZZzLSTJ.jkm03DXYYajsRk2j" }, From 9f2c2f1bedaa8bc957d37ae8262405f9eefd2fc2 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Wed, 27 Aug 2025 15:22:29 +0200 Subject: [PATCH 036/260] Changed so the default domaincard view is list (#1102) --- module/applications/sheets/actors/character.mjs | 6 +++--- module/config/flagsConfig.mjs | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/module/applications/sheets/actors/character.mjs b/module/applications/sheets/actors/character.mjs index c860e9e9..a140a7c9 100644 --- a/module/applications/sheets/actors/character.mjs +++ b/module/applications/sheets/actors/character.mjs @@ -210,7 +210,7 @@ export default class CharacterSheet extends DHBaseActorSheet { * @protected */ async _prepareLoadoutContext(context, _options) { - context.cardView = !game.user.getFlag(CONFIG.DH.id, CONFIG.DH.FLAGS.displayDomainCardsAsList); + context.cardView = game.user.getFlag(CONFIG.DH.id, CONFIG.DH.FLAGS.displayDomainCardsAsCard); } /** @@ -718,8 +718,8 @@ export default class CharacterSheet extends DHBaseActorSheet { * @type {ApplicationClickAction} */ static async #toggleLoadoutView(_, button) { - const newAbilityView = button.dataset.value !== 'true'; - await game.user.setFlag(CONFIG.DH.id, CONFIG.DH.FLAGS.displayDomainCardsAsList, newAbilityView); + const newAbilityView = button.dataset.value === 'true'; + await game.user.setFlag(CONFIG.DH.id, CONFIG.DH.FLAGS.displayDomainCardsAsCard, newAbilityView); this.render(); } diff --git a/module/config/flagsConfig.mjs b/module/config/flagsConfig.mjs index 91712288..c2a6dff2 100644 --- a/module/config/flagsConfig.mjs +++ b/module/config/flagsConfig.mjs @@ -1,4 +1,4 @@ -export const displayDomainCardsAsList = 'displayDomainCardsAsList'; +export const displayDomainCardsAsCard = 'displayDomainCardsAsCard'; export const narrativeCountdown = { simple: 'countdown-narrative-simple', position: 'countdown-narrative-position' From 9dd773001daf96db95a7f28a252fa671ec3ae199 Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Thu, 28 Aug 2025 03:29:40 +0200 Subject: [PATCH 037/260] Compendium browser per type (#1103) * Compendium Browser per type * Sort number column * Re-add subclass config * Sidebar buttons * Add Characters folder * Css * Done --- daggerheart.mjs | 6 + lang/en.json | 7 +- .../characterCreation/characterCreation.mjs | 10 +- module/applications/levelup/levelup.mjs | 11 +- .../applications/sheets/actors/character.mjs | 14 +- .../sheets/api/application-mixin.mjs | 28 +- module/applications/ui/_module.mjs | 1 + module/applications/ui/itemBrowser.mjs | 206 +++++++--- module/config/itemBrowserConfig.mjs | 353 ++++++++++++------ module/systemRegistration/handlebars.mjs | 3 +- styles/less/global/global.less | 25 ++ styles/less/ui/item-browser/item-browser.less | 19 +- .../sheets/actors/character/inventory.hbs | 3 - templates/ui/itemBrowser/filterContainer.hbs | 22 ++ templates/ui/itemBrowser/itemBrowser.hbs | 70 +--- templates/ui/itemBrowser/itemContainer.hbs | 16 + templates/ui/itemBrowser/sidebar.hbs | 48 +-- 17 files changed, 542 insertions(+), 300 deletions(-) create mode 100644 templates/ui/itemBrowser/filterContainer.hbs create mode 100644 templates/ui/itemBrowser/itemContainer.hbs diff --git a/daggerheart.mjs b/daggerheart.mjs index c9a6b54e..1c4c2a85 100644 --- a/daggerheart.mjs +++ b/daggerheart.mjs @@ -162,6 +162,9 @@ Hooks.on('ready', async () => { if (game.settings.get(SYSTEM.id, SYSTEM.SETTINGS.gameSettings.appearance).displayFear !== 'hide') ui.resources.render({ force: true }); + if(!(ui.compendiumBrowser instanceof applications.ui.ItemBrowser)) + ui.compendiumBrowser = new applications.ui.ItemBrowser(); + registerCountdownHooks(); socketRegistration.registerSocketHooks(); registerRollDiceHooks(); @@ -305,3 +308,6 @@ Hooks.on('moveToken', async (movedToken, data) => { await effect.value.update({ disabled: effect.disabled }); } }); + +Hooks.on("renderCompendiumDirectory", (app, html) => applications.ui.ItemBrowser.injectSidebarButton(html)); +Hooks.on("renderDocumentDirectory", (app, html) => applications.ui.ItemBrowser.injectSidebarButton(html)); diff --git a/lang/en.json b/lang/en.json index d3d707d6..01221e9a 100755 --- a/lang/en.json +++ b/lang/en.json @@ -2423,6 +2423,7 @@ "evasionMax": "Evasion (Max)", "subtype": "Subtype", "folders": { + "characters": "Characters", "adversaries": "Adversaries", "ancestries": "Ancestries", "equipment": "Equipment", @@ -2433,7 +2434,11 @@ "environments": "Environments", "beastforms": "Beastforms", "features": "Features", - "items": "Items" + "items": "Items", + "weapons": "Weapons", + "armors": "Armors", + "consumables": "Consumables", + "loots": "Loots" } }, "Notifications": { diff --git a/module/applications/characterCreation/characterCreation.mjs b/module/applications/characterCreation/characterCreation.mjs index ba98ef61..490294cd 100644 --- a/module/applications/characterCreation/characterCreation.mjs +++ b/module/applications/characterCreation/characterCreation.mjs @@ -1,6 +1,5 @@ import { abilities } from '../../config/actorConfig.mjs'; import { burden } from '../../config/generalConfig.mjs'; -import { ItemBrowser } from '../ui/itemBrowser.mjs'; import { createEmbeddedItemsWithEffects, createEmbeddedItemWithEffects } from '../../helpers/utils.mjs'; const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; @@ -46,8 +45,6 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl }; this._dragDrop = this._createDragDropHandlers(); - - this.itemBrowser = null; } get title() { @@ -425,8 +422,7 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl equipment = ['armor', 'weapon']; const presets = { - compendium: 'daggerheart', - folder: equipment.includes(type) ? 'equipments' : type, + folder: equipment.includes(type) ? `equipments.folders.${type}s` : type, render: { noFolder: true } @@ -449,7 +445,7 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl 'type': { key: 'type', value: type } }; - return (this.itemBrowser = await new ItemBrowser({ presets }).render({ force: true })); + ui.compendiumBrowser.open(presets); } static async viewItem(_, target) { @@ -567,7 +563,7 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl { overwrite: true } ); - if (this.itemBrowser) this.itemBrowser.close(); + if (ui.compendiumBrowser) ui.compendiumBrowser.close(); this.close(); } diff --git a/module/applications/levelup/levelup.mjs b/module/applications/levelup/levelup.mjs index 0b3f8970..99cc53f6 100644 --- a/module/applications/levelup/levelup.mjs +++ b/module/applications/levelup/levelup.mjs @@ -1,6 +1,5 @@ import { abilities, subclassFeatureLabels } from '../../config/actorConfig.mjs'; import { getDeleteKeys, tagifyElement } from '../../helpers/utils.mjs'; -import { ItemBrowser } from '../ui/itemBrowser.mjs'; const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; @@ -12,8 +11,6 @@ export default class DhlevelUp extends HandlebarsApplicationMixin(ApplicationV2) this._dragDrop = this._createDragDropHandlers(); this.tabGroups.primary = 'advancements'; - - this.itemBrowser = null; } get title() { @@ -539,8 +536,7 @@ export default class DhlevelUp extends HandlebarsApplicationMixin(ApplicationV2) static async viewCompendium(event, target) { const type = target.dataset.compendium ?? target.dataset.type; - const presets = { - compendium: 'daggerheart', + const presets = { folder: type, render: { noFolder: true @@ -559,7 +555,7 @@ export default class DhlevelUp extends HandlebarsApplicationMixin(ApplicationV2) }; } - return (this.itemBrowser = await new ItemBrowser({ presets }).render({ force: true })); + ui.compendiumBrowser.open(presets); } static async selectPreview(_, button) { @@ -662,7 +658,8 @@ export default class DhlevelUp extends HandlebarsApplicationMixin(ApplicationV2) }, {}); await this.actor.levelUp(levelupData); - if (this.itemBrowser) this.itemBrowser.close(); + + if (ui.compendiumBrowser) ui.compendiumBrowser.close(); this.close(); } } diff --git a/module/applications/sheets/actors/character.mjs b/module/applications/sheets/actors/character.mjs index 308faee7..500141c1 100644 --- a/module/applications/sheets/actors/character.mjs +++ b/module/applications/sheets/actors/character.mjs @@ -5,7 +5,6 @@ import { CharacterLevelup, LevelupViewMode } from '../../levelup/_module.mjs'; import DhCharacterCreation from '../../characterCreation/characterCreation.mjs'; import FilterMenu from '../../ux/filter-menu.mjs'; import { getDocFromElement, getDocFromElementSync } from '../../../helpers/utils.mjs'; -import { ItemBrowser } from '../../ui/itemBrowser.mjs'; /**@typedef {import('@client/applications/_types.mjs').ApplicationClickAction} ApplicationClickAction */ @@ -29,8 +28,7 @@ export default class CharacterSheet extends DHBaseActorSheet { toggleEquipItem: CharacterSheet.#toggleEquipItem, toggleResourceDice: CharacterSheet.#toggleResourceDice, handleResourceDice: CharacterSheet.#handleResourceDice, - useDowntime: this.useDowntime, - tempBrowser: CharacterSheet.#tempBrowser + useDowntime: this.useDowntime }, window: { resizable: true, @@ -635,7 +633,6 @@ export default class CharacterSheet extends DHBaseActorSheet { const { key } = button.dataset; const presets = { - compendium: 'daggerheart', folder: key, filter: key === 'subclasses' @@ -651,7 +648,7 @@ export default class CharacterSheet extends DHBaseActorSheet { } }; - return new ItemBrowser({ presets }).render({ force: true }); + ui.compendiumBrowser.open(presets); } /** @@ -768,13 +765,6 @@ export default class CharacterSheet extends DHBaseActorSheet { }); } - /** - * Temp - */ - static async #tempBrowser(_, target) { - new ItemBrowser().render({ force: true }); - } - /** * Handle the roll values of resource dice. * @type {ApplicationClickAction} diff --git a/module/applications/sheets/api/application-mixin.mjs b/module/applications/sheets/api/application-mixin.mjs index 7f338ac1..2158e48b 100644 --- a/module/applications/sheets/api/application-mixin.mjs +++ b/module/applications/sheets/api/application-mixin.mjs @@ -1,6 +1,5 @@ const { HandlebarsApplicationMixin } = foundry.applications.api; import { getDocFromElement, getDocFromElementSync, tagifyElement } from '../../../helpers/utils.mjs'; -import { ItemBrowser } from '../../ui/itemBrowser.mjs'; const typeSettingsMap = { character: 'extendCharacterDescriptions', @@ -589,28 +588,27 @@ export default function DHApplicationMixin(Base) { static async #browseItem(event, target) { const type = target.dataset.compendium ?? target.dataset.type; - const presets = {}; + const presets = { + render: { + noFolder: true + } + }; switch (type) { case 'loot': + presets.folder = 'equipments.folders.loots'; + break; case 'consumable': + presets.folder = 'equipments.folders.consumables'; + break; case 'armor': + presets.folder = 'equipments.folders.armors'; + break; case 'weapon': - presets.compendium = 'daggerheart'; - presets.folder = 'equipments'; - presets.render = { - noFolder: true - }; - presets.filter = { - type: { key: 'type', value: type, forced: true } - }; + presets.folder = 'equipments.folders.weapons'; break; case 'domainCard': - presets.compendium = 'daggerheart'; presets.folder = 'domains'; - presets.render = { - noFolder: true - }; presets.filter = { 'level.max': { key: 'level.max', value: this.document.system.levelData.level.current }, 'system.domain': { key: 'system.domain', value: this.document.system.domains } @@ -620,7 +618,7 @@ export default function DHApplicationMixin(Base) { return; } - return new ItemBrowser({ presets }).render({ force: true }); + ui.compendiumBrowser.open(presets); } /** diff --git a/module/applications/ui/_module.mjs b/module/applications/ui/_module.mjs index 6a17a61e..815fc4e7 100644 --- a/module/applications/ui/_module.mjs +++ b/module/applications/ui/_module.mjs @@ -3,3 +3,4 @@ export { default as DhCombatTracker } from './combatTracker.mjs'; export * as DhCountdowns from './countdowns.mjs'; export { default as DhFearTracker } from './fearTracker.mjs'; export { default as DhHotbar } from './hotbar.mjs'; +export { ItemBrowser } from './itemBrowser.mjs'; diff --git a/module/applications/ui/itemBrowser.mjs b/module/applications/ui/itemBrowser.mjs index 8eefd9cd..40884817 100644 --- a/module/applications/ui/itemBrowser.mjs +++ b/module/applications/ui/itemBrowser.mjs @@ -15,16 +15,13 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { this.fieldFilter = []; this.selectedMenu = { path: [], data: null }; this.config = CONFIG.DH.ITEMBROWSER.compendiumConfig; - this.presets = options.presets; - - if (this.presets?.compendium && this.presets?.folder) - ItemBrowser.selectFolder.call(this, null, null, this.presets.compendium, this.presets.folder); + this.presets = {}; } /** @inheritDoc */ static DEFAULT_OPTIONS = { id: 'itemBrowser', - classes: ['daggerheart', 'dh-style', 'dialog', 'compendium-browser'], + classes: ['daggerheart', 'dh-style', 'dialog', 'compendium-browser', 'loader'], tag: 'div', window: { frame: true, @@ -84,17 +81,15 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { } }; - /** @inheritDoc */ - async _preFirstRender(context, options) { - if (context.presets?.render?.noFolder || context.presets?.render?.lite) options.position.width = 600; - - await super._preFirstRender(context, options); - } - /** @inheritDoc */ async _preRender(context, options) { - if (context.presets?.render?.noFolder || context.presets?.render?.lite) - options.parts.splice(options.parts.indexOf('sidebar'), 1); + this.presets = options.presets ?? {}; + + const width = this.presets?.render?.noFolder === true || this.presets?.render?.lite === true ? 600 : 850; + if(this.rendered) + this.setPosition({ width }); + else + options.position.width = width; await super._preRender(context, options); } @@ -103,22 +98,18 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { async _onRender(context, options) { await super._onRender(context, options); + this.element + .querySelectorAll('[data-action="selectFolder"]') + .forEach(element => element.classList.toggle('is-selected', element.dataset.folderId === this.selectedMenu.path.join('.'))); + this._createSearchFilter(); - this._createFilterInputs(); - this._createDragProcess(); - - if (context.presets?.render?.lite) this.element.classList.add('lite'); - - if (context.presets?.render?.noFolder) this.element.classList.add('no-folder'); - - if (context.presets?.render?.noFilter) this.element.classList.add('no-filter'); - - if (this.presets?.filter) { - Object.entries(this.presets.filter).forEach( - ([k, v]) => (this.fieldFilter.find(c => c.name === k).value = v.value) - ); - await this._onInputFilterBrowser(); - } + + this.element.classList.toggle('lite', this.presets?.render?.lite === true); + this.element.classList.toggle('no-folder', this.presets?.render?.noFolder === true); + this.element.classList.toggle('no-filter', this.presets?.render?.noFilter === true); + this.element.querySelectorAll('.folder-list > [data-action="selectFolder"]').forEach(element => { + element.hidden = this.presets.render?.folders?.length && !this.presets.render.folders.includes(element.dataset.folderId); + }); } _attachPartListeners(partId, htmlElement, options) { @@ -139,19 +130,23 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { async _prepareContext(options) { const context = await super._prepareContext(options); context.compendiums = this.getCompendiumFolders(foundry.utils.deepClone(this.config)); - // context.pathTitle = this.pathTile; context.menu = this.selectedMenu; context.formatLabel = this.formatLabel; context.formatChoices = this.formatChoices; - context.fieldFilter = this.fieldFilter = this._createFieldFilter(); context.items = this.items; context.presets = this.presets; return context; } + open(presets = {}) { + this.presets = presets; + ItemBrowser.selectFolder.call(this); + } + getCompendiumFolders(config, parent = null, depth = 0) { let folders = []; Object.values(config).forEach(c => { + // if(this.presets.render?.folders?.length && !this.presets.render.folders.includes(c.id)) return; const folder = { id: c.id, label: game.i18n.localize(c.label), @@ -162,16 +157,14 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { : []; folders.push(folder); }); + folders.sort((a, b) => a.label.localeCompare(b.label)) return folders; } - static async selectFolder(_, target, compend, folder) { - const config = foundry.utils.deepClone(this.config), - compendium = compend ?? target.closest('[data-compendium-id]').dataset.compendiumId, - folderId = folder ?? target.dataset.folderId, - folderPath = `${compendium}.folders.${folderId}`, - folderData = foundry.utils.getProperty(config, folderPath); + static async selectFolder(_, target) { + const folderId = target?.dataset?.folderId ?? this.presets.folder, + folderData = foundry.utils.getProperty(this.config, folderId) ?? {}; const columns = ItemBrowser.getFolderConfig(folderData).map(col => ({ ...col, @@ -179,31 +172,17 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { })); this.selectedMenu = { - path: folderPath.split('.'), + path: folderId?.split('.') ?? [], data: { ...folderData, columns: columns } }; - let items = []; - for (const key of folderData.keys) { - const comp = game.packs.get(`${compendium}.${key}`); - if (!comp) return; - items = items.concat(await comp.getDocuments({ type__in: folderData.type })); - } + await this.render({ force: true, presets: this.presets }); - this.items = ItemBrowser.sortBy(items, 'name'); - - if (target) { - target - .closest('.compendium-sidebar') - .querySelectorAll('[data-action="selectFolder"]') - .forEach(element => element.classList.remove('is-selected')); - target.classList.add('is-selected'); - } - - this.render({ force: true }); + if(this.selectedMenu?.data?.type?.length) + this.loadItems(); } _replaceHTML(result, content, options) { @@ -211,6 +190,75 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { super._replaceHTML(result, content, options); } + loadItems() { + let loadTimeout = this.toggleLoader(true); + + const promises = []; + + game.packs.forEach(pack => { + promises.push( + new Promise(async resolve => { + const items = await pack.getDocuments({ type__in: this.selectedMenu?.data?.type }); + resolve(items); + }) + ) + }); + + Promise.all(promises).then(async result => { + this.items = ItemBrowser.sortBy(result.flatMap(r => r), 'name'); + this.fieldFilter = this._createFieldFilter(); + + if (this.presets?.filter) { + Object.entries(this.presets.filter).forEach( + ([k, v]) => { + const filter = this.fieldFilter.find(c => c.name === k) + if(filter) filter.value = v.value; + } + ); + // await this._onInputFilterBrowser(); + } + + const filterList = await foundry.applications.handlebars.renderTemplate('systems/daggerheart/templates/ui/itemBrowser/filterContainer.hbs', + { + fieldFilter: this.fieldFilter, + presets: this.presets, + formatChoices: this.formatChoices + } + ); + + this.element.querySelector('.filter-content .wrapper').innerHTML = filterList; + const filterContainer = this.element.querySelector('.filter-header > [data-action="expandContent"]'); + if(this.fieldFilter.length === 0) + filterContainer.setAttribute('disabled', ''); + else + filterContainer.removeAttribute('disabled'); + + const itemList = await foundry.applications.handlebars.renderTemplate('systems/daggerheart/templates/ui/itemBrowser/itemContainer.hbs', + { + items: this.items, + menu: this.selectedMenu, + formatLabel: this.formatLabel + } + ); + + this.element.querySelector('.item-list').innerHTML = itemList; + + this._createFilterInputs(); + await this._onInputFilterBrowser(); + this._createDragProcess(); + + clearTimeout(loadTimeout); + this.toggleLoader(false); + }); + } + + toggleLoader(state) { + const container = this.element.querySelector('.item-list'); + return setTimeout(() => { + container.classList.toggle("loader", state); + }, 100); + } + static expandContent(_, target) { const parent = target.parentElement; parent.classList.toggle('expanded'); @@ -328,6 +376,7 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { for (const li of html.querySelectorAll('.item-container')) { const itemUUID = li.dataset.itemUuid, item = this.items.find(i => i.uuid === itemUUID); + if(!item) continue; const matchesSearch = !query || foundry.applications.ux.SearchFilter.testQuery(rgx, item.name); if (matchesSearch) this.#filteredItems.browser.search.add(item.id); const { input } = this.#filteredItems.browser; @@ -350,7 +399,7 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { item = this.items.find(i => i.uuid === itemUUID); if (!item) continue; - + const matchesMenu = this.fieldFilter.length === 0 || this.fieldFilter.every( @@ -419,11 +468,13 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { const newOrder = [...itemList].reverse().sort((a, b) => { const aProp = a.querySelector(`[data-item-key="${key}"]`), - bProp = b.querySelector(`[data-item-key="${key}"]`); + bProp = b.querySelector(`[data-item-key="${key}"]`), + aValue = isNaN(aProp.innerText) ? aProp.innerText : Number(aProp.innerText), + bValue = isNaN(bProp.innerText) ? bProp.innerText : Number(bProp.innerText); if (type === 'DESC') { - return aProp.innerText < bProp.innerText ? 1 : -1; + return aValue < bValue ? 1 : -1; } else { - return aProp.innerText > bProp.innerText ? 1 : -1; + return aValue > bValue ? 1 : -1; } }); @@ -452,4 +503,41 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { _canDragStart() { return true; } + + static injectSidebarButton(html) { + if(!game.user.isGM) return; + const sectionId = html.dataset.tab, + menus = { + actors: { + folder: "adversaries", + render: { + folders: ["adversaries", "characters", "environments"] + } + }, + items: { + folder: "equipments", + render: { + noFolder: true + } + }, + compendium: {} + }; + + if(Object.keys(menus).includes(sectionId)) { + const headerActions = html.querySelector(".header-actions"); + + const button = document.createElement("button"); + button.type = "button"; + button.classList.add("open-compendium-browser"); + button.innerHTML = ` + + ${game.i18n.localize("DAGGERHEART.UI.Tooltip.compendiumBrowser")} + `; + button.addEventListener("click", event => { + ui.compendiumBrowser.open(menus[sectionId]); + }); + + headerActions.append(button); + } + } } diff --git a/module/config/itemBrowserConfig.mjs b/module/config/itemBrowserConfig.mjs index d5afe72e..046efd8b 100644 --- a/module/config/itemBrowserConfig.mjs +++ b/module/config/itemBrowserConfig.mjs @@ -149,6 +149,104 @@ export const typeConfig = { } ] }, + weapons: { + columns: [ + { + key: 'system.secondary', + label: 'DAGGERHEART.UI.ItemBrowser.subtype', + format: isSecondary => (isSecondary ? 'secondary' : isSecondary === false ? 'primary' : '-') + }, + { + key: 'system.tier', + label: 'DAGGERHEART.GENERAL.Tiers.singular' + } + ], + filters: [ + { + key: 'system.secondary', + label: 'DAGGERHEART.UI.ItemBrowser.subtype', + choices: [ + { value: false, label: 'DAGGERHEART.ITEMS.Weapon.primaryWeapon' }, + { value: true, label: 'DAGGERHEART.ITEMS.Weapon.secondaryWeapon' } + ] + }, + { + key: 'system.tier', + label: 'DAGGERHEART.GENERAL.Tiers.singular', + choices: [ + { value: '1', label: '1' }, + { value: '2', label: '2' }, + { value: '3', label: '3' }, + { value: '4', label: '4' } + ] + }, + { + key: 'system.burden', + label: 'DAGGERHEART.GENERAL.burden', + field: 'system.api.models.items.DHWeapon.schema.fields.burden' + }, + { + key: 'system.attack.roll.trait', + label: 'DAGGERHEART.GENERAL.Trait.single', + field: 'system.api.models.actions.actionsTypes.attack.schema.fields.roll.fields.trait' + }, + { + key: 'system.attack.range', + label: 'DAGGERHEART.GENERAL.range', + field: 'system.api.models.actions.actionsTypes.attack.schema.fields.range' + }, + { + key: 'system.itemFeatures', + label: 'DAGGERHEART.GENERAL.features', + choices: () => + Object.entries(CONFIG.DH.ITEM.weaponFeatures) + .map(([k, v]) => ({ value: k, label: v.label })), + operator: 'contains3' + } + ] + }, + armors: { + columns: [ + { + key: 'system.tier', + label: 'DAGGERHEART.GENERAL.Tiers.singular' + } + ], + filters: [ + { + key: 'system.tier', + label: 'DAGGERHEART.GENERAL.Tiers.singular', + choices: [ + { value: '1', label: '1' }, + { value: '2', label: '2' }, + { value: '3', label: '3' }, + { value: '4', label: '4' } + ] + }, + { + key: 'system.baseScore', + name: 'armor.min', + label: 'DAGGERHEART.UI.ItemBrowser.armorScoreMin', + field: 'system.api.models.items.DHArmor.schema.fields.baseScore', + operator: 'gte' + }, + { + key: 'system.baseScore', + name: 'armor.max', + label: 'DAGGERHEART.UI.ItemBrowser.armorScoreMax', + field: 'system.api.models.items.DHArmor.schema.fields.baseScore', + operator: 'lte' + }, + { + key: 'system.itemFeatures', + label: 'DAGGERHEART.GENERAL.features', + choices: () => + Object.entries(CONFIG.DH.ITEM.armorFeatures) + .map(([k, v]) => ({ value: k, label: v.label })), + operator: 'contains3' + } + ] + }, features: { columns: [], filters: [] @@ -257,7 +355,7 @@ export const typeConfig = { { key: 'system.domains', label: 'DAGGERHEART.GENERAL.Domain.plural', - choices: () => Object.values(CONFIG.DH.DOMAIN.domains).map(d => ({ value: d.id, label: d.label })), + choices: () => Object.values(CONFIG.DH.DOMAIN.allDomains()).map(d => ({ value: d.id, label: d.label })), operator: 'contains2' } ] @@ -265,18 +363,28 @@ export const typeConfig = { subclasses: { columns: [ { - key: 'id', - label: 'TYPES.Item.class', - format: id => { - return ''; - } + key: 'system.linkedClass', + label: 'Class', + format: linkedClass => linkedClass.name }, { key: 'system.spellcastingTrait', label: 'DAGGERHEART.ITEMS.Subclass.spellcastingTrait' } ], - filters: [] + filters: [ + { + key: 'system.linkedClass.uuid', + label: 'Class', + choices: (items) => { + const list = items.map(item => ({ value: item.system.linkedClass.uuid, label: item.system.linkedClass.name })); + return list.reduce((a,c) => { + if(!(a.find(i => i.value === c.value))) a.push(c); + return a; + }, []); + } + } + ] }, beastforms: { columns: [ @@ -305,109 +413,144 @@ export const typeConfig = { }; export const compendiumConfig = { - daggerheart: { - id: 'daggerheart', - label: 'DAGGERHEART', - folders: { - adversaries: { - id: 'adversaries', - keys: ['adversaries'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.adversaries', - type: ['adversary'], - listType: 'adversaries' - }, - ancestries: { - id: 'ancestries', + characters: { + id: 'characters', + keys: ['characters'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.characters', + type: ['character'], + // listType: 'characters' + }, + adversaries: { + id: 'adversaries', + keys: ['adversaries'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.adversaries', + type: ['adversary'], + listType: 'adversaries' + }, + ancestries: { + id: 'ancestries', + keys: ['ancestries'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.ancestries', + type: ['ancestry'], + /* folders: { + features: { + id: 'features', keys: ['ancestries'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.ancestries', - type: ['ancestry'], - folders: { - features: { - id: 'features', - keys: ['ancestries'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.features', - type: ['feature'] - } - } + label: 'DAGGERHEART.UI.ItemBrowser.folders.features', + type: ['feature'] + } + } */ + }, + equipments: { + id: 'equipments', + keys: ['armors', 'weapons', 'consumables', 'loot'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.equipment', + type: ['armor', 'weapon', 'consumable', 'loot'], + listType: 'items', + folders: { + weapons: { + id: 'weapons', + keys: ['weapons'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.weapons', + type: ['weapon'], + listType: 'weapons' }, - equipments: { - id: 'equipments', - keys: ['armors', 'weapons', 'consumables', 'loot'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.equipment', - type: ['armor', 'weapon', 'consumable', 'loot'], - listType: 'items' + armors: { + id: 'armors', + keys: ['armors'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.armors', + type: ['armor'], + listType: 'armors' }, - classes: { - id: 'classes', - keys: ['classes'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.classes', - type: ['class'], - folders: { - features: { - id: 'features', - keys: ['classes'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.features', - type: ['feature'] - }, - items: { - id: 'items', - keys: ['classes'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.items', - type: ['armor', 'weapon', 'consumable', 'loot'], - listType: 'items' - } - }, - listType: 'classes' + consumables: { + id: 'consumables', + keys: ['consumables'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.consumables', + type: ['consumable'] }, - subclasses: { - id: 'subclasses', - keys: ['subclasses'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.subclasses', - type: ['subclass'], - listType: 'subclasses' - }, - domains: { - id: 'domains', - keys: ['domains'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.domainCards', - type: ['domainCard'], - listType: 'cards' - }, - communities: { - id: 'communities', - keys: ['communities'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.communities', - type: ['community'], - folders: { - features: { - id: 'features', - keys: ['communities'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.features', - type: ['feature'] - } - } - }, - environments: { - id: 'environments', - keys: ['environments'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.environments', - type: ['environment'] - }, - beastforms: { - id: 'beastforms', - keys: ['beastforms'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.beastforms', - type: ['beastform'], - listType: 'beastforms', - folders: { - features: { - id: 'features', - keys: ['beastforms'], - label: 'DAGGERHEART.UI.ItemBrowser.folders.features', - type: ['feature'] - } - } + loots: { + id: 'loots', + keys: ['loots'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.loots', + type: ['loot'] } } + }, + classes: { + id: 'classes', + keys: ['classes'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.classes', + type: ['class'], + /* folders: { + features: { + id: 'features', + keys: ['classes'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.features', + type: ['feature'] + }, + items: { + id: 'items', + keys: ['classes'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.items', + type: ['armor', 'weapon', 'consumable', 'loot'], + listType: 'items' + } + }, */ + listType: 'classes' + }, + subclasses: { + id: 'subclasses', + keys: ['subclasses'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.subclasses', + type: ['subclass'], + listType: 'subclasses' + }, + domains: { + id: 'domains', + keys: ['domains'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.domainCards', + type: ['domainCard'], + listType: 'cards' + }, + communities: { + id: 'communities', + keys: ['communities'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.communities', + type: ['community'], + /* folders: { + features: { + id: 'features', + keys: ['communities'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.features', + type: ['feature'] + } + } */ + }, + environments: { + id: 'environments', + keys: ['environments'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.environments', + type: ['environment'] + }, + beastforms: { + id: 'beastforms', + keys: ['beastforms'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.beastforms', + type: ['beastform'], + listType: 'beastforms', + /* folders: { + features: { + id: 'features', + keys: ['beastforms'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.features', + type: ['feature'] + } + } */ + }, + features: { + id: 'features', + keys: ['features'], + label: 'DAGGERHEART.UI.ItemBrowser.folders.features', + type: ['feature'] } }; diff --git a/module/systemRegistration/handlebars.mjs b/module/systemRegistration/handlebars.mjs index cb7be42a..fd569499 100644 --- a/module/systemRegistration/handlebars.mjs +++ b/module/systemRegistration/handlebars.mjs @@ -30,12 +30,13 @@ export const preloadHandlebarsTemplates = async function () { 'systems/daggerheart/templates/dialogs/downtime/activities.hbs', 'systems/daggerheart/templates/dialogs/dice-roll/costSelection.hbs', - 'systems/daggerheart/templates/ui/chat/parts/roll-part.hbs', 'systems/daggerheart/templates/ui/chat/parts/damage-part.hbs', 'systems/daggerheart/templates/ui/chat/parts/target-part.hbs', 'systems/daggerheart/templates/ui/chat/parts/button-part.hbs', + 'systems/daggerheart/templates/ui/itemBrowser/itemContainer.hbs', + 'systems/daggerheart/templates/scene/dh-config.hbs', ]); diff --git a/styles/less/global/global.less b/styles/less/global/global.less index e135846f..4c06d42b 100644 --- a/styles/less/global/global.less +++ b/styles/less/global/global.less @@ -23,4 +23,29 @@ color: var(--color-form-hint-hover); } } + + .loader { + position: relative; + overflow: hidden !important; + + div { + opacity: .5; + } + + &:before { + font-family: "Font Awesome 6 Pro"; + content: '\f110'; + position: absolute; + height: 100%; + width: 100%; + display: flex; + align-items: center; + justify-content: center; + animation: spinner 1.5s linear infinite; + } + } + + @keyframes spinner { + to { transform: rotate(360deg); } + } } \ No newline at end of file diff --git a/styles/less/ui/item-browser/item-browser.less b/styles/less/ui/item-browser/item-browser.less index ab9db27c..70a64d89 100644 --- a/styles/less/ui/item-browser/item-browser.less +++ b/styles/less/ui/item-browser/item-browser.less @@ -71,6 +71,7 @@ } .compendium-results { + position: relative; padding: 16px; } @@ -101,10 +102,14 @@ .folder-list, .item-list-header, .item-header > div { - gap: 10px; cursor: pointer; } + .item-list-header, + .item-header > div { + gap: 10px; + } + .item-filter { display: flex; align-items: center; @@ -228,7 +233,8 @@ } .item-list-header, - .item-list { + .item-list, + .compendium-sidebar > .folder-list { overflow-y: auto; scrollbar-gutter: stable; scrollbar-width: thin; @@ -286,6 +292,7 @@ display: flex; flex-direction: column; gap: 5px; + flex: 1; .item-container { &:hover { @@ -385,8 +392,12 @@ margin: 0; .title { - margin: 0; text-align: center; + font-weight: bold; + } + + .hint { + flex: unset; } } @@ -398,7 +409,7 @@ &.lite, &.no-folder { - .menu-path { + .compendium-sidebar, .menu-path { display: none; } } diff --git a/templates/sheets/actors/character/inventory.hbs b/templates/sheets/actors/character/inventory.hbs index ee5b6034..017d37d9 100644 --- a/templates/sheets/actors/character/inventory.hbs +++ b/templates/sheets/actors/character/inventory.hbs @@ -10,9 +10,6 @@ - - -
diff --git a/templates/ui/itemBrowser/filterContainer.hbs b/templates/ui/itemBrowser/filterContainer.hbs new file mode 100644 index 00000000..da8e8cfe --- /dev/null +++ b/templates/ui/itemBrowser/filterContainer.hbs @@ -0,0 +1,22 @@ +{{#each fieldFilter}} + {{#if choices }} +
+ +
+ +
+
+ {{else}} + {{#if filtered }} + {{formField field localize=true blank="" name=name choices=(@root.formatChoices this) valueAttr="value" dataset=(object key=key) value=value}} + {{else}} + {{#if field.label}} + {{formField field localize=true blank="" name=name dataset=(object key=key) value=value}} + {{else}} + {{formField field localize=true blank="" name=name dataset=(object key=key) label=label value=value}} + {{/if}} + {{/if}} + {{/if}} +{{/each}} \ No newline at end of file diff --git a/templates/ui/itemBrowser/itemBrowser.hbs b/templates/ui/itemBrowser/itemBrowser.hbs index ca0def19..137693fc 100644 --- a/templates/ui/itemBrowser/itemBrowser.hbs +++ b/templates/ui/itemBrowser/itemBrowser.hbs @@ -1,5 +1,5 @@
- {{#if menu.data }} + {{#if menu.path.length }}
- {{#if fieldFilter.length}} - - {{/if}} +
-
- {{#each fieldFilter}} - {{#if choices }} -
- -
- -
-
- {{else}} - {{#if filtered }} - {{formField field localize=true blank="" name=name choices=(@root.formatChoices this) valueAttr="value" dataset=(object key=key) value=value}} - {{else}} - {{#if field.label}} - {{formField field localize=true blank="" name=name dataset=(object key=key) value=value}} - {{else}} - {{formField field localize=true blank="" name=name dataset=(object key=key) label=label value=value}} - {{/if}} - {{/if}} - {{/if}} - {{/each}} -
+
- {{!--
--}} - {{#if menu.data.columns.length}} -
-
-
{{localize 'DAGGERHEART.UI.ItemBrowser.columnName'}}
- {{#each menu.data.columns}} - {{localize label}} - {{/each}} -
- {{/if}} -
- {{#each items}} -
-
-
- - {{name}} - {{#each ../menu.data.columns}} - {{#with (@root.formatLabel ../this this) as | label |}}{{{label}}}{{/with}} - {{/each}} -
-
-
- {{{system.description}}} -
-
- {{/each}} -
- {{!--
--}} + {{#if menu.data.columns.length}} +
+
+
{{localize 'DAGGERHEART.UI.ItemBrowser.columnName'}}
+ {{#each menu.data.columns}} +
{{localize label}}
+ {{/each}} +
+ {{/if}} +
{{else}}

{{localize "DAGGERHEART.UI.ItemBrowser.title"}}

diff --git a/templates/ui/itemBrowser/itemContainer.hbs b/templates/ui/itemBrowser/itemContainer.hbs new file mode 100644 index 00000000..f6aefa6b --- /dev/null +++ b/templates/ui/itemBrowser/itemContainer.hbs @@ -0,0 +1,16 @@ +{{#each items}} +
+
+
+ + {{name}} + {{#each ../menu.data.columns}} + {{#with (@root.formatLabel ../this this) as | label |}}{{{label}}}{{/with}} + {{/each}} +
+
+
+ {{{system.description}}} +
+
+{{/each}} \ No newline at end of file diff --git a/templates/ui/itemBrowser/sidebar.hbs b/templates/ui/itemBrowser/sidebar.hbs index 8df0aed3..28a34a22 100644 --- a/templates/ui/itemBrowser/sidebar.hbs +++ b/templates/ui/itemBrowser/sidebar.hbs @@ -1,32 +1,22 @@
- {{#each compendiums}} -
- - {{label}} - - -
- {{#each folders}} -
{{label}}
- {{!--
{{label}}
--}} - {{#if folders.length}} -
-
- {{#each folders}} -
- • {{label}} -
- {{/each}} -
+
+ {{#each compendiums}} +
{{label}}
+ {{#if folders.length}} +
+
+ {{#each folders}} +
+ • {{label}} +
+ {{/each}}
- {{/if}} - {{/each}} -
- -
- {{/each}} +
+ {{/if}} + {{/each}} +
From 8fd63d5963aad66e95ee76e360f5a0424051723b Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Thu, 28 Aug 2025 18:29:17 +0200 Subject: [PATCH 038/260] [Feature] 1033 - Consume Quantity On Use (#1106) * Initial migration * Updated compendium YML * Added Quantity as a possible cost * Added quantity consumption to all Compendium Consumables * . * Added DestroyOnEmpty property --- lang/en.json | 4 +- module/applications/dialogs/d20RollDialog.mjs | 31 +++--- .../sheets-configs/action-config.mjs | 14 ++- .../applications/sheets/actors/character.mjs | 3 +- .../applications/sheets/actors/companion.mjs | 3 +- module/config/generalConfig.mjs | 16 +++- module/data/fields/action/costField.mjs | 96 +++++++++++++------ module/data/item/consumable.mjs | 5 +- module/documents/actor.mjs | 23 +++-- module/systemRegistration/migrations.mjs | 55 +++++++++++ ...ersary_Acid_Burrower_89yAh30vaNQOALlz.json | 1 - ...ary_Adult_Flickerfly_G7jiltRjgvVhZewm.json | 3 - ..._Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json | 1 - ...ary_Arch_Necromancer_WPEOIGfclNJxWb87.json | 4 - ...sary_Archer_Squadron_0ts6CGd93lLqGZI5.json | 1 - ...adversary_Battle_Box_dgH3fW9FTYLaIDvS.json | 2 - .../adversary_Bear_71qKDLKO3CsrNkdy.json | 1 - ...ersary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json | 1 - .../adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json | 2 - ...dversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json | 1 - .../adversary_Conscript_99TqczuQipBmaB8i.json | 1 - .../adversary_Construct_uOP5oT9QzXPlnf3p.json | 2 - .../adversary_Courtesan_ZxWaWPdzFIUPNC62.json | 1 - .../adversary_Courtier_CBBuEXAlLKFMJdjg.json | 2 - ...adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json | 3 - .../adversary_Cult_Fang_tyBOpLfigAhI9bU3.json | 2 - ...ersary_Cult_Initiate_zx99sOGTXicP4SSD.json | 1 - ...ary_Demon_of_Despair_kE4dfhqmIQpNd44e.json | 2 - ...sary_Demon_of_Hubris_2VN3BftageoTTIzu.json | 3 - ...ry_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json | 1 - ...rsary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json | 2 - .../adversary_Dire_Bat_tBWHW00epmMnkawe.json | 1 - .../adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json | 1 - .../adversary_Dryad_wR7cFKrHvRzbzhBT.json | 3 - ...ersary_Electric_Eels_TLzY1nDw0Bu9Ud40.json | 1 - ...sary_Elemental_Spark_P7h54ZePFPHpYwvB.json | 1 - ...ersary_Elite_Soldier_bfhVWMBUh61b9J6n.json | 2 - ...ry_Failed_Experiment_ChwwVqowFw8hJQwT.json | 1 - ...y_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json | 1 - ...sary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json | 1 - ...rlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json | 1 - ..._Undefeated_Champion_RXkZTwBRi4dJ3JE5.json | 1 - ...ersary_Giant_Brawler_YnObCleGjPT7yqEc.json | 1 - ...dversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json | 1 - ...ary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json | 1 - .../adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json | 1 - ...ersary_Giant_Recruit_5s8wSvpyC5rxY5aD.json | 1 - ...rsary_Giant_Scorpion_fmfntuJ8mHRCAktP.json | 1 - ...dversary_Glass_Snake_8KWVLWXFhlY2kYx0.json | 2 - .../adversary_Gorgon_8mJYMpbLTb8qIOrr.json | 1 - ...ater_Earth_Elemental_dsfB3YhoL5SudvS2.json | 1 - ...ater_Water_Elemental_xIICT6tEdnA7dKDV.json | 3 - ...adversary_Green_Ooze_SHXedd9zZPVfUgUa.json | 1 - ...sary_Hallowed_Archer_kabueAo6BALApWqp.json | 1 - ...ary_Hallowed_Soldier_VENwg7xEFcYObjmT.json | 2 - .../adversary_Harrier_uRtghKE9mHlII4rs.json | 1 - ...adversary_Head_Guard_mK3A5FTx6k8iPU3F.json | 1 - ...versary_Head_Vampire_i2UNbRvgyoSs07M6.json | 1 - ...dversary_High_Seraph_r1mbfSSwKWdcFdAU.json | 3 - ...sary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json | 1 - .../adversary_Hydra_MI126iMOOobQ1Obn.json | 1 - ..._Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json | 1 - ...ged_Knife_Lieutenant_aTljstqteGoLpCBq.json | 2 - ..._Knight_of_the_Realm_7ai2opemrclQe3VF.json | 1 - ...sary_Master_Assassin_dNta0cUzr96xcFhf.json | 2 - ...rsary_Merchant_Baron_Vy02IhGhkJLuezu4.json | 1 - ...inor_Chaos_Elemental_sRn4bqerfARvhgSV.json | 2 - ...dversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json | 2 - ...Minor_Fire_Elemental_DscWkNVoHak6P4hh.json | 2 - ...versary_Minor_Treant_G62k4oSkhkoXEs2D.json | 1 - ...ary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json | 2 - .../adversary_Monarch_yx0vK2yfNVZKWUUi.json | 2 - ...ersary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json | 2 - ...rsary_Oracle_of_Doom_befIqd5IYKg6eUz2.json | 3 - ..._Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json | 1 - ...atchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json | 1 - ...ary_Perfected_Zombie_CP6iRfHdyFWniTHY.json | 1 - ...dversary_Petty_Noble_wycLpvebWdUqRhpP.json | 2 - ...rsary_Pirate_Captain_OROJbjsqagVh7ECV.json | 2 - .../adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json | 1 - ...ersary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json | 1 - ...ersary_Royal_Advisor_EtLJiTsilPPZvLUX.json | 2 - ...ersary_Secret_Keeper_sLAccjvCWfeedbpI.json | 3 - .../adversary_Sellsword_bgreCaQ6ap2DVpCr.json | 1 - .../adversary_Shark_YmVAkdNsyuXWTtYp.json | 1 - .../adversary_Siren_BK4jwyXSRx7IOQiO.json | 1 - ...sary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json | 1 - ...sary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json | 1 - ...sary_Spectral_Archer_5tCkhnBByUIN5UdG.json | 1 - ...ary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json | 3 - ...ry_Spectral_Guardian_UFVGl1osOsJTneLf.json | 2 - ...adversary_Spellblade_ldbWEL7uZs84vyrR.json | 2 - .../adversary_Spy_8zlynOhnVA59KpKT.json | 2 - ...dversary_Stag_Knight_KGVwnLq85ywP9xvB.json | 2 - ...dversary_Stonewraith_3aAS2Qm3R6cgaYfE.json | 2 - ...rsary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json | 2 - ...Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json | 1 - ...rsary_Tangle_Bramble_XcAGOSmtCFLT1unN.json | 1 - ...rsary_Treant_Sapling_o63nS0k3wHu6EgKP.json | 1 - .../adversary_Vampire_WWyUp6Mxl1S3KYUG.json | 1 - ...ault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json | 1 - ...lt_Guardian_Sentinel_FVgYb28fhxlVcGwA.json | 2 - ...ault_Guardian_Turret_c5hGdvY5UnSjlHws.json | 2 - ...Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json | 2 - ...agon__Molten_Scourge_eArAPuB38CNR0ZIM.json | 2 - ...adversary_War_Wizard_noDdT0tsN6FXSmC8.json | 4 - ...versary_Weaponmaster_ZNbQ2jg35LG4t9eH.json | 16 ++-- ...dversary_Young_Dryad_8yUj2Mzvnifhxegm.json | 2 - ...ary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json | 2 - ...ersary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json | 1 - ...dversary_Zombie_Pack_Nf0v43rtflV56V2T.json | 1 - ...feature_Adaptability_BNofV1UC4ZbdFTkb.json | 1 - .../feature_Charge_AA2CZlJSWW8GPhrR.json | 1 - ...feature_Danger_Sense_AXqcoxnRoWBbbKpK.json | 1 - ...ure_Death_Connection_WuwXH2r2uM9sDJtj.json | 1 - .../feature_Fearless_IlWvn5kCqCBMuUJn.json | 1 - ...ure_Feline_Instincts_lNgbbYnCKgrdvA85.json | 1 - ..._Increased_Fortitude_0RN0baBxh95GT1cm.json | 1 - .../feature_Long_Tongue_oWbdlh51ajn1Q5kL.json | 1 - .../feature_Luckbender_U6iFjZgLYawlOlQZ.json | 1 - ...ture_Quick_Reactions_0NSPSuB8KSEYTJIP.json | 1 - .../feature_Tusks_YhxD1ujZpftPu19w.json | 1 - .../feature_Wings_WquAjoOcso8lwySW.json | 1 - .../feature_Agile_xLS5YT1B6yeCiNTg.json | 1 - ...eature_Armored_Shell_nDQZdIF2epKlhauX.json | 1 - .../feature_Cannonball_jp5KpPRBFBOIs46Q.json | 1 - .../feature_Demolish_DfBXO8jTchwFG8dZ.json | 1 - ..._Devastating_Strikes_HJbQcKWcFZ9NoFxs.json | 1 - ...feature_Elusive_Prey_a7Qvmm14nx9BCysA.json | 1 - .../feature_Fleet_GhHsSHOa509cwCvr.json | 1 - ...ture_Hobbling_Strike_8u0HkK3WgtU9lWYs.json | 1 - .../feature_Rampage_8upqfcZvi7b5hRLE.json | 1 - ...ture_Snapping_Strike_Ky3rZD3sJMXYZOBC.json | 1 - .../feature_Takedown_0ey4kM9ssj2otHvb.json | 1 - .../feature_Trample_A0lgd6eVEfX6oqSB.json | 1 - ...feature_Vicious_Maul_jYUBi7yLHap5ljpa.json | 1 - ...feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json | 1 - .../feature_Beastform_P1K0jcnH2RiS6TLd.json | 1 - ...re_Channel_Raw_Power_P02cbN50LIoD662z.json | 1 - .../feature_Evolution_6rlxhrRwFaVgq9fe.json | 1 - ...ature_Frontline_Tank_YS1g7YdWwOaS629x.json | 1 - ...eature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json | 1 - ...feature_Life_Support_lSlvSUHbOoX36q2j.json | 1 - ...feature_Make_a_Scene_N9E5skDDK2VgvohR.json | 1 - .../feature_No_Mercy_njj2C3tMDeCHHOoh.json | 1 - ...eature_Not_This_Time_h3VE0jhcM5xHKBs4.json | 1 - ...ature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json | 1 - ...eature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json | 1 - ...ature_Volatile_Magic_ieiQlD0joWSqt53D.json | 1 - ...feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json | 1 - ...nCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json | 1 - ...nCard_Arcana_Touched_5PvMQKCjrgSxzstn.json | 12 +-- ...rd_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json | 1 - ...rd_Astral_Projection_YNOCNmZ96sCp9NEr.json | 1 - ...nCard_Battle_Monster_P0ezScyQ5t8ruByf.json | 1 - ...domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json | 1 - ...inCard_Bold_Presence_tdsL00yTSLNgZWs6.json | 1 - ...mainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json | 1 - ...ainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json | 1 - ...mainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json | 1 - ...inCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json | 1 - ...inCard_Book_of_Grynn_R0LNheiZycZlZzV3.json | 1 - ...nCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json | 4 +- ...nCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json | 2 - ...inCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json | 1 - ...nCard_Book_of_Vagras_aknDDYtN7EObv94t.json | 1 - ...inCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json | 1 - ...nCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json | 1 - .../domainCard_Boost_VKAHS6eWz28ukcDs.json | 1 - ...inCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json | 1 - ...Card_Chain_Lightning_0kAVO6rordCfZqYP.json | 1 - ...Card_Champion_s_Edge_rnejRbUQsNGX1GMC.json | 3 - ...domainCard_Chokehold_R5GYUalYXLLFRlNl.json | 2 - ...nCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json | 1 - ...inCard_Codex_Touched_7Pu83ABdMukTxu3e.json | 1 - ...nCard_Confusing_Aura_R8NDiJXJWmC48WSr.json | 1 - ...inCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json | 3 - ...Card_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json | 3 +- ...Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json | 3 +- ...inCard_Dark_Whispers_yL2qrSWmTwXVOySH.json | 1 - .../domainCard_Deathrun_xFOSn8IVVNizgHFq.json | 1 - ...inCard_Deft_Deceiver_38znCh6kHTkaPwYi.json | 1 - ...nCard_Deft_Maneuvers_dc4rAXlv95srZUct.json | 1 - ...omainCard_Divination_K8oFepK24UVsAX8B.json | 1 - ...omainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json | 16 ++-- ...ard_Endless_Charisma_tNzFNlVHghloKsFi.json | 1 - ...domainCard_Enrapture_a8lFiKX1o8T924ze.json | 1 - ...mainCard_Falling_Sky_hZJp9mdkMnqKDROe.json | 3 +- .../domainCard_Flight_54GUjNuBEy7xdzMz.json | 12 +-- ...Card_Force_of_Nature_LzVpMkD5I4QeaIHf.json | 2 - ...inCard_Forceful_Push_z8FFPhDh2SdFkFfS.json | 1 - ...nCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json | 3 +- ...omainCard_Full_Surge_SgvjJfMyubZowPxS.json | 1 - ...nCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json | 3 +- ...inCard_Glancing_Blow_nCNCqSH7UgW4O3To.json | 1 - ...d_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json | 1 - ...inCard_Grace_Touched_KAuNb51AwhD8KEXk.json | 1 - ...ainCard_Ground_Pound_WnGldYhJPDhx8v9X.json | 1 - ...inCard_Healing_Field_GlRm1Dxlc0Z1b04o.json | 31 +++--- ...inCard_Healing_Hands_WTlhnQMajc1r8i50.json | 4 - ...nCard_Healing_Strike_XtSc0jIJLOoMTMYS.json | 1 - ...inCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json | 1 - .../domainCard_Hush_gwmYasmfgXZ7tFS6.json | 1 - ...ard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json | 1 - ...Card_I_See_It_Coming_Kp6RejHGimnuoBom.json | 1 - ..._Inspirational_Words_cWu1o82ZF7GvnbXc.json | 31 +++--- ...ainCard_Invigoration_X8OfkEoI5gLTRf1B.json | 1 - ...ainCard_Invisibility_KHkzA4Zrw8EWN1CH.json | 1 - ...nCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json | 2 - ...Card_Lead_by_Example_YWCRplmtwpCjpq5i.json | 1 - ...domainCard_Life_Ward_OszbCj0jTqq2ADx9.json | 1 - ...inCard_Manifest_Wall_TtGOtWkbr23VhHfH.json | 1 - ...nCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json | 1 - ...inCard_Mending_Touch_TGjR4vJVNbQRV8zr.json | 28 +++--- ...Card_Midnight_Spirit_FXLsB3QbQvTtqX5B.json | 2 - ...ard_Midnight_Touched_uSyGKVxOJcnp28po.json | 1 - ...ard_Natural_Familiar_Tag303LoRNC5zGgl.json | 2 - ...Card_Nature_s_Tongue_atWLorlCOxcrq8WB.json | 1 - ...nCard_Never_Upstaged_McdncxmO9K1YNP7Y.json | 70 ++++++++------ ...ainCard_Night_Terror_zcldCuqOg3dphUVI.json | 13 +-- ...domainCard_Notorious_IqxzvvjZiYbgx21A.json | 1 - ...domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json | 1 - ...rd_Overwhelming_Aura_iEBLySZD9z8CLdz7.json | 1 - ...Card_Phantom_Retreat_0vdpIn06ifF3xxqZ.json | 2 - ...mainCard_Premonition_aC43NiFQLpOADyjO.json | 12 +-- .../domainCard_Rage_Up_GRL0cvs96vrTDckZ.json | 2 - ...nCard_Rain_of_Blades_Ucenef6JpjQxwXni.json | 1 - ...inCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json | 1 - ...Card_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json | 1 - .../domainCard_Reckless_2ooUo2yoilGifY81.json | 1 - .../domainCard_Redirect_faU0XkJCbar69PiN.json | 1 - ...mainCard_Restoration_wUQFsRtww18naYaq.json | 24 ++--- ...domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json | 1 - ...omainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json | 1 - ...ainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json | 24 ++--- ...nCard_Salvation_Beam_4uAFGp3LxiC07woC.json | 3 +- ...mainCard_Second_Wind_ffPbSEvLuFrFsMxl.json | 18 ++-- ...nCard_Shape_Material_db4xV3YErHRslbVE.json | 1 - ...mainCard_Shield_Aura_rfIv6lln40Fh6EIl.json | 1 - ...ainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json | 1 - .../domainCard_Smite_U1uWJE94HZVudujz.json | 1 - ..._Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json | 1 - ...mainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json | 15 +-- ...d_Splintering_Strike_TYKfM3H9vBXyWiH4.json | 1 - ...rd_Stealth_Expertise_NIUhmuQGwbb3UClZ.json | 1 - ...d_Strategic_Approach_5b1awkgTmMp3FVrm.json | 12 +-- ...rd_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json | 3 +- ...ainCard_Support_Tank_stId5syX7YpP2JGz.json | 1 - ...omainCard_Thorn_Skin_oUipGK84E2KjoKqh.json | 14 +-- ...nCard_Thought_Delver_B4choj481tqajWb9.json | 1 - ...nCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json | 23 ++--- ...d_Transcendent_Union_kVkoCLBXLAIifqpz.json | 1 - ...inCard_Twilight_Toll_SDjjV61TC1NceV1m.json | 13 +-- ...ard_Uncanny_Disguise_TV56wSysbU5xAlOa.json | 15 +-- ...inCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json | 13 ++- ...Card_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json | 1 - ...rd_Versatile_Fighter_wQ53ImDswEHv5SGQ.json | 1 - ...ard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json | 1 - ...domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json | 1 - ...domainCard_Whirlwind_anO0arioUy7I5zBg.json | 1 - ...inCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json | 1 - ...omainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json | 1 - ...nvironment_Ambushers_uXZpebPR77YQ1oXI.json | 1 - ...ironment_Chaos_Realm_2Z1mKc65LxNk2PqR.json | 2 - ...ent_Cliffside_Ascent_LPpfdlNKqiZIl04w.json | 1 - ...nt_Divine_Usurpation_4DLYez7VbMCFDAuZ.json | 2 - ...ment_Hallowed_Temple_dsA6j69AnaJhUyqH.json | 1 - ...nment_Imperial_Court_jr1xAoXzVwVblzxI.json | 2 - ...ecromancer_s_Ossuary_h3KyRL7AshhLAmcH.json | 1 - ...ronment_Outpost_Town_YezryR32uo39xRxW.json | 1 - ...nment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json | 1 - ...ronment_Raging_River_t4cdqTfzcqP3H1vJ.json | 2 - ...or_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json | 1 - ...or_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json | 13 +-- ...nes_of_Fortification_P4qAEDJUoNLgVRsA.json | 1 - ...netan_Floating_Armor_tHlBUDQC24YMZqd6.json | 1 - ...consumable_Acidpaste_cfVFmS8vT9dbq9s1.json | 18 +++- ...mable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json | 18 +++- ...umable_Attune_Potion_JGD3M9hBHtVAA8XP.json | 18 +++- ...sumable_Blinding_Orb_eAXHdzA5qNPldOpn.json | 18 +++- ...e_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json | 18 +++- ...mable_Bolster_Potion_FOPQNqXbiVO0ilYL.json | 18 +++- ...umable_Bonding_Honey_PfQvqopXgvroBklL.json | 18 +++- ...nsumable_Bridge_Seed_RrIasiMCt6mqVTps.json | 18 +++- ...sumable_Channelstone_IKMVQ6VwtapwoUim.json | 18 +++- ...sumable_Charm_Potion_CVBbFfOY75YwyQsp.json | 18 +++- ...e_Circle_of_the_Void_elsyP6VhHw1JjGSl.json | 14 +-- ...mable_Control_Potion_eeBhZSGLjuNZuJuI.json | 18 +++- ...consumable_Death_Tea_xDnJeF1grkmKck8Q.json | 18 +++- ...able_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json | 18 +++- ...able_Dripfang_Poison_eU8VpbWB2NHIL47n.json | 18 +++- ...ble_Enlighten_Potion_aWHSO2AqDufi7nL4.json | 18 +++- ...mable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json | 18 +++- ...nsumable_Featherbone_DpxEMpwfasEBpORU.json | 18 +++- ...onsumable_Gill_Salve_Nvbb9mze6o5D0AEg.json | 18 +++- ...e_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json | 18 +++- ...mable_Growing_Potion_fl2f3ees8RFMze9t.json | 18 +++- ...umable_Health_Potion_Aruc2NLutWuVIjP1.json | 18 +++- ...omet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json | 18 +++- ...mable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json | 18 +++- ...mproved_Arcane_Shard_nQTo6mNoPTEVBtkm.json | 18 +++- ...d_Grindletooth_Venom_BqBWXXe9T07AMV4u.json | 18 +++- ...e_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json | 18 +++- ...sumable_Jumping_Root_c2putn9apuurJhWX.json | 18 +++- ...able_Knowledge_Stone_nL9IALzm9BNi5oSt.json | 18 +++- ...e_Major_Arcane_Shard_AA7bmiwv00lshPrC.json | 18 +++- ..._Major_Attune_Potion_CCPFm5iXXwvyYYwR.json | 18 +++- ...Major_Bolster_Potion_mnyQDRtngWWQeRXF.json | 18 +++- ...e_Major_Charm_Potion_IJLAUlQymbSjzsri.json | 18 +++- ...Major_Control_Potion_80s1FLmTLtohZ5GH.json | 18 +++- ...jor_Enlighten_Potion_SDdv1G2veMLKrxcJ.json | 18 +++- ..._Major_Health_Potion_cM7pHe8bBAxSZ2xR.json | 18 +++- ...Major_Stamina_Potion_I4cQ03xbxnc81EGa.json | 18 +++- ..._Major_Stride_Potion_yK6eEDUrsPbZA8G0.json | 18 +++- ..._Minor_Health_Potion_tPfKtKRRjv8qdSqy.json | 18 +++- ...Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json | 18 +++- ...e_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json | 16 ++-- ...umable_Morphing_Clay_f1NHVSIHJJCIOaBl.json | 16 ++-- ...nsumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json | 18 +++- ...consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json | 18 +++- ..._Potion_of_Stability_dvL8oaxpEF6jKvYN.json | 18 +++- ...able_Redthorn_Saliva_s2Exl2XFuoOhtIov.json | 18 +++- ...eplication_Parchment_yJkwz4AP6yhGo8Vj.json | 18 +++- ...ble_Shrinking_Potion_HGixKenQwhyRAYNk.json | 18 +++- ...sumable_Sleeping_Sap_XZavUVlHEvE2srEt.json | 18 +++- ...nsumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json | 14 +-- ...mable_Stamina_Potion_hf3k1POoVSooJyN2.json | 18 +++- .../consumable_Stardrop_y4c1jrlHrf0wBWOq.json | 18 +++- ...umable_Stride_Potion_lNtcrkgFGOJNaroE.json | 18 +++- ...sumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json | 18 +++- ...onsumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json | 29 +++++- ...nstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json | 18 +++- ...sumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json | 18 +++- ...le_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json | 18 +++- ...ble_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json | 18 +++- ...onsumable_Wingsprout_n10vozlmosVR6lo4.json | 18 +++- .../loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json | 1 - .../loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json | 1 - .../loot/loot_Glider_CiXwelozmBDcPY48.json | 1 - ...ot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json | 1 - ...loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json | 1 - ...loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json | 1 - ..._Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json | 1 - ...loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json | 1 - ...ght_Frame_Wheelchair_BuMfupnCzHbziQ8o.json | 1 - ...apon_Advanced_Rapier_KxFne76d7cak15dO.json | 1 - ...weapon_Advanced_Whip_01izMUSJcAUo79IX.json | 1 - ...apon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json | 1 - .../weapon_Bladed_Whip_5faflfNz20cFW1EM.json | 1 - .../weapon_Bloodstaff_IoMVDz92WVvfGGdc.json | 1 - .../weapon_Buckler_EmFTp9wzT6MHSaNz.json | 13 +-- ...pon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json | 1 - ...apon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json | 1 - ...apon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json | 1 - ...ght_Frame_Wheelchair_ZJsetdHKV77ygtCE.json | 1 - ...apon_Improved_Rapier_LFPH8nD2f4Blv3AM.json | 1 - ...weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json | 1 - ...ght_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json | 1 - ...pon_Legendary_Rapier_BakN97v4jTePcXiZ.json | 1 - ...eapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json | 1 - ...ght_Frame_Wheelchair_iaGnlUkShBgdeMo0.json | 1 - ...pon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json | 1 - .../weapon_Rapier_zkAgEW6zMkRZalEm.json | 1 - ...weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json | 3 +- ...n_Runes_of_Ruination_EG6mZhr3ib56r974.json | 1 - ...n_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json | 1 - ...Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json | 1 - .../weapons/weapon_Whip_CmtWqw6DwoePnX7W.json | 1 - .../feature_Adept_v511C6GMShsBblah.json | 1 - ...eature_Apex_Predator_lwH3E0Zyf4gbVOd0.json | 1 - ...re_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json | 15 +-- ..._Contacts_Everywhere_cXbRm744mW6UXGam.json | 1 - .../feature_Defender_Jdktv5p1K2PfgxrT.json | 1 - ...e_Elemental_Dominion_EFUJHrkTuyv8uA9l.json | 1 - ...lemental_Incarnation_f37TTgCc0Q3Ih1A1.json | 4 - ...feature_Elementalist_dPcqKN5NeDkjB1HW.json | 2 - ...ture_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json | 1 - ...ture_Loyal_Protector_hd7UeBPr86Mz21Pe.json | 1 - ...ure_Manipulate_Magic_UNg4eyNfEQrMdD7G.json | 1 - ...ture_Natural_Evasion_TnuLBtHQGbqyzn82.json | 1 - .../feature_Nemesis_DPKmipNRlSAMs2Cg.json | 1 - ...ture_Partner_in_Arms_G54qY96XK62hgoK9.json | 1 - ...feature_Regeneration_KRyrbSLVGreIOTZe.json | 1 - .../feature_Revenge_oNfA5F9cKwNR7joq.json | 1 - ...ature_Rousing_Speech_PCmYTX02JLzBpgml.json | 1 - ...re_Ruthless_Predator_Qny2J3R35bvC0Cey.json | 1 - ...ature_Shadow_Stepper_hAwTXjhyphiE3aeW.json | 1 - ...eature_Sparing_Touch_GfOSgVJW8bS1OjNq.json | 18 ++-- ...eature_Spirit_Weapon_McoS0RxNLOg3SfSt.json | 1 - ...ture_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json | 1 - ...eature_Transcendence_th6HZwEFnVBjUtqm.json | 1 - ...eature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json | 1 - ...re_Weapon_Specialist_HAqtoKUTrk8Mip1n.json | 1 - ...ature_Wings_of_Light_KkQH0tYhagIqe2MT.json | 1 - system.json | 2 +- .../global/partials/inventory-item-V2.hbs | 2 +- .../sheets/items/consumable/settings.hbs | 3 + 397 files changed, 1276 insertions(+), 930 deletions(-) diff --git a/lang/en.json b/lang/en.json index 01221e9a..6068d48e 100755 --- a/lang/en.json +++ b/lang/en.json @@ -1983,6 +1983,7 @@ "inactiveEffects": "Inactive Effects", "inventory": "Inventory", "itemResource": "Item Resource", + "itemQuantity": "Item Quantity", "items": "Items", "label": "Label", "level": "Level", @@ -2124,7 +2125,8 @@ } }, "Consumable": { - "consumeOnUse": "Consume On Use" + "consumeOnUse": "Consume On Use", + "destroyOnEmpty": "Destroy On Empty" }, "DomainCard": { "type": "Type", diff --git a/module/applications/dialogs/d20RollDialog.mjs b/module/applications/dialogs/d20RollDialog.mjs index ed8fd6a1..6c227152 100644 --- a/module/applications/dialogs/d20RollDialog.mjs +++ b/module/applications/dialogs/d20RollDialog.mjs @@ -1,4 +1,4 @@ -import { abilities } from "../../config/actorConfig.mjs"; +import { abilities } from '../../config/actorConfig.mjs'; const { ApplicationV2, HandlebarsApplicationMixin } = foundry.applications.api; @@ -83,7 +83,7 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio ); context.costs = updatedCosts.map(x => ({ ...x, - label: x.keyIsID + label: x.itemId ? this.action.parent.parent.name : game.i18n.localize(CONFIG.DH.GENERAL.abilityCosts[x.key].label) })); @@ -115,7 +115,7 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio context.isLite = this.config.roll?.lite; context.extraFormula = this.config.extraFormula; context.formula = this.roll.constructFormula(this.config); - if(this.actor.system.traits) context.abilities = this.getTraitModifiers(); + if (this.actor.system.traits) context.abilities = this.getTraitModifiers(); context.showReaction = !this.config.roll?.type && context.rollType === 'DualityRoll'; context.reactionOverride = this.reactionOverride; @@ -124,12 +124,15 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio } getTraitModifiers() { - return Object.values(abilities).map(a => ({ id: a.id, label: `${game.i18n.localize(a.label)} (${this.actor.system.traits[a.id]?.value.signedString() ?? 0})` })) + return Object.values(abilities).map(a => ({ + id: a.id, + label: `${game.i18n.localize(a.label)} (${this.actor.system.traits[a.id]?.value.signedString() ?? 0})` + })); } static updateRollConfiguration(event, _, formData) { const { ...rest } = foundry.utils.expandObject(formData.object); - + this.config.selectedRollMode = rest.selectedRollMode; if (this.config.costs) { @@ -141,7 +144,7 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio this.roll[key] = value; }); } - if(rest.hasOwnProperty("trait")) { + if (rest.hasOwnProperty('trait')) { this.config.roll.trait = rest.trait; this.config.title = game.i18n.format('DAGGERHEART.UI.Chat.dualityRoll.abilityCheckTitle', { ability: game.i18n.localize(abilities[this.config.roll.trait]?.label) @@ -169,14 +172,14 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio this.config.costs.indexOf(this.config.costs.find(c => c.extKey === button.dataset.key)) > -1 ? this.config.costs.filter(x => x.extKey !== button.dataset.key) : [ - ...this.config.costs, - { - extKey: button.dataset.key, - key: this.config?.data?.parent?.isNPC ? 'fear' : 'hope', - value: 1, - name: this.config.data?.experiences?.[button.dataset.key]?.name - } - ]; + ...this.config.costs, + { + extKey: button.dataset.key, + key: this.config?.data?.parent?.isNPC ? 'fear' : 'hope', + value: 1, + name: this.config.data?.experiences?.[button.dataset.key]?.name + } + ]; this.render(); } diff --git a/module/applications/sheets-configs/action-config.mjs b/module/applications/sheets-configs/action-config.mjs index ea3c6f31..96b6cc48 100644 --- a/module/applications/sheets-configs/action-config.mjs +++ b/module/applications/sheets-configs/action-config.mjs @@ -132,12 +132,19 @@ export default class DHActionConfig extends DaggerheartSheet(ApplicationV2) { const options = foundry.utils.deepClone(CONFIG.DH.GENERAL.abilityCosts); const resource = this.action.parent.resource; if (resource) { - options[this.action.parent.parent.id] = { + options.resource = { label: 'DAGGERHEART.GENERAL.itemResource', group: 'Global' }; } + if (this.action.parent.metadata.isQuantifiable) { + options.quantity = { + label: 'DAGGERHEART.GENERAL.itemQuantity', + group: 'Global' + }; + } + return options; } @@ -164,13 +171,14 @@ export default class DHActionConfig extends DaggerheartSheet(ApplicationV2) { _prepareSubmitData(_event, formData) { const submitData = foundry.utils.expandObject(formData.object); + + const itemAbilityCostKeys = Object.keys(CONFIG.DH.GENERAL.itemAbilityCosts); for (const keyPath of this.constructor.CLEAN_ARRAYS) { const data = foundry.utils.getProperty(submitData, keyPath); const dataValues = data ? Object.values(data) : []; if (keyPath === 'cost') { for (var value of dataValues) { - const item = this.action.parent.parent.id === value.key; - value.keyIsID = Boolean(item); + value.itemId = itemAbilityCostKeys.includes(value.key) ? this.action.parent.parent.id : null; } } diff --git a/module/applications/sheets/actors/character.mjs b/module/applications/sheets/actors/character.mjs index 500141c1..5bc6828b 100644 --- a/module/applications/sheets/actors/character.mjs +++ b/module/applications/sheets/actors/character.mjs @@ -132,6 +132,7 @@ export default class CharacterSheet extends DHBaseActorSheet { }); htmlElement.querySelectorAll('.inventory-item-quantity').forEach(element => { element.addEventListener('change', this.updateItemQuantity.bind(this)); + element.addEventListener('click', e => e.stopPropagation()); }); // Add listener for armor marks input @@ -676,7 +677,7 @@ export default class CharacterSheet extends DHBaseActorSheet { }) }); - if(result) game.system.api.fields.ActionFields.CostField.execute.call(this, result); + if (result) game.system.api.fields.ActionFields.CostField.execute.call(this, result); } //TODO: redo toggleEquipItem method diff --git a/module/applications/sheets/actors/companion.mjs b/module/applications/sheets/actors/companion.mjs index 82aee312..b353adbb 100644 --- a/module/applications/sheets/actors/companion.mjs +++ b/module/applications/sheets/actors/companion.mjs @@ -84,8 +84,7 @@ export default class DhCompanionSheet extends DHBaseActorSheet { return { key: c.key, value: (c.total ?? c.value) * (resource.isReversed ? 1 : -1), - target: resource.target, - keyIsID: resource.keyIsID + target: resource.target }; }); diff --git a/module/config/generalConfig.mjs b/module/config/generalConfig.mjs index e99c6ff1..d4e6318e 100644 --- a/module/config/generalConfig.mjs +++ b/module/config/generalConfig.mjs @@ -561,6 +561,19 @@ export const refreshTypes = { } }; +export const itemAbilityCosts = { + resource: { + id: 'resource', + label: 'DAGGERHEART.GENERAL.resource', + group: 'Global' + }, + quantity: { + id: 'quantity', + label: 'DAGGERHEART.GENERAL.quantity', + group: 'Global' + } +}; + export const abilityCosts = { hitPoints: { id: 'hitPoints', @@ -586,7 +599,8 @@ export const abilityCosts = { id: 'fear', label: 'Fear', group: 'TYPES.Actor.adversary' - } + }, + resource: itemAbilityCosts.resource }; export const countdownTypes = { diff --git a/module/data/fields/action/costField.mjs b/module/data/fields/action/costField.mjs index ca942909..e8ecf79b 100644 --- a/module/data/fields/action/costField.mjs +++ b/module/data/fields/action/costField.mjs @@ -5,7 +5,7 @@ export default class CostField extends fields.ArrayField { * Action Workflow order */ static order = 150; - + /** @inheritDoc */ constructor(options = {}, context = {}) { const element = new fields.SchemaField({ @@ -14,7 +14,7 @@ export default class CostField extends fields.ArrayField { required: true, initial: 'hope' }), - keyIsID: new fields.BooleanField(), + itemId: new fields.StringField({ nullable: true, initial: null }), value: new fields.NumberField({ nullable: true, initial: 1, min: 0 }), scalable: new fields.BooleanField({ initial: false }), step: new fields.NumberField({ nullable: true, initial: null }), @@ -34,23 +34,23 @@ export default class CostField extends fields.ArrayField { * @param {boolean} [successCost=false] Consume only resources configured as "On Success only" if not already consumed. */ static async execute(config, successCost = false) { - const actor= this.actor.system.partner ?? this.actor, + const actor = this.actor.system.partner ?? this.actor, usefulResources = { - ...foundry.utils.deepClone(actor.system.resources), - fear: { - value: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), - max: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxFear, - reversed: false - } - }; + ...foundry.utils.deepClone(actor.system.resources), + fear: { + value: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), + max: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).maxFear, + reversed: false + } + }; - if(this.parent?.parent) { + if (this.parent?.parent) { for (var cost of config.costs) { - if (cost.keyIsID) { + if (cost.itemId) { usefulResources[cost.key] = { value: cost.value, target: this.parent.parent, - keyIsID: true + itemId: cost.itemId }; } } @@ -69,12 +69,12 @@ export default class CostField extends fields.ArrayField { key: c.key, value: (c.total ?? c.value) * (resource.isReversed ? 1 : -1), target: resource.target, - keyIsID: resource.keyIsID + itemId: resource.itemId }); return a; } }, []); - + await actor.modifyResource(resources); } @@ -95,14 +95,19 @@ export default class CostField extends fields.ArrayField { } /** - * + * * Must be called within Action context. - * @param {*} costs - * @returns + * @param {*} costs + * @returns */ static calcCosts(costs) { const resources = CostField.getResources.call(this, costs); - return costs.map(c => { + let filteredCosts = costs; + if (this.parent.metadata.isQuantifiable && this.parent.consumeOnUse === false) { + filteredCosts = filteredCosts.filter(c => c.key !== 'quantity'); + } + + return filteredCosts.map(c => { c.scale = c.scale ?? 0; c.step = c.step ?? 1; c.total = c.value + c.scale * c.step; @@ -121,7 +126,7 @@ export default class CostField extends fields.ArrayField { /** * Check if the current Actor currently has all needed resources. * Must be called within Action context. - * @param {*} costs + * @param {*} costs * @returns {boolean} */ static hasCost(costs) { @@ -153,8 +158,8 @@ export default class CostField extends fields.ArrayField { /** * Get all Actor resources + parent Item potential one. * Must be called within Action context. - * @param {*} costs - * @returns + * @param {*} costs + * @returns */ static getResources(costs) { const actorResources = foundry.utils.deepClone(this.actor.system.resources); @@ -162,11 +167,8 @@ export default class CostField extends fields.ArrayField { actorResources.hope = foundry.utils.deepClone(this.actor.system.partner.system.resources.hope); const itemResources = {}; for (let itemResource of costs) { - if (itemResource.keyIsID) { - itemResources[itemResource.key] = { - value: this.parent.resource.value ?? 0, - max: CostField.formatMax.call(this, this.parent?.resource?.max) - }; + if (itemResource.itemId) { + itemResources[itemResource.key] = CostField.getItemIdCostResource.bind(this)(itemResource); } } @@ -176,10 +178,44 @@ export default class CostField extends fields.ArrayField { }; } + static getItemIdCostResource(itemResource) { + switch (itemResource.key) { + case CONFIG.DH.GENERAL.itemAbilityCosts.resource.id: + return { + value: this.parent.resource.value ?? 0, + max: CostField.formatMax.call(this, this.parent?.resource?.max) + }; + case CONFIG.DH.GENERAL.itemAbilityCosts.quantity.id: + return { + value: this.parent.quantity ?? 0, + max: this.parent.quantity ?? 0 + }; + default: + return { value: 0, max: 0 }; + } + } + + static getItemIdCostUpdate(r) { + switch (r.key) { + case CONFIG.DH.GENERAL.itemAbilityCosts.resource.id: + return { + path: 'system.resource.value', + value: r.target.system.resource.value + r.value + }; + case CONFIG.DH.GENERAL.itemAbilityCosts.quantity.id: + return { + path: 'system.quantity', + value: r.target.system.quantity + r.value + }; + default: + return { path: '', value: undefined }; + } + } + /** - * - * @param {*} costs - * @returns + * + * @param {*} costs + * @returns */ static getRealCosts(costs) { const realCosts = costs?.length ? costs.filter(c => c.enabled) : []; diff --git a/module/data/item/consumable.mjs b/module/data/item/consumable.mjs index dad6a95c..5a50525a 100644 --- a/module/data/item/consumable.mjs +++ b/module/data/item/consumable.mjs @@ -1,5 +1,4 @@ import BaseDataItem from './base.mjs'; -import { ActionField } from '../fields/actionField.mjs'; export default class DHConsumable extends BaseDataItem { /** @inheritDoc */ @@ -19,7 +18,8 @@ export default class DHConsumable extends BaseDataItem { const fields = foundry.data.fields; return { ...super.defineSchema(), - consumeOnUse: new fields.BooleanField({ initial: false }) + consumeOnUse: new fields.BooleanField({ initial: true }), + destroyOnEmpty: new fields.BooleanField({ initial: true }) }; } @@ -27,5 +27,4 @@ export default class DHConsumable extends BaseDataItem { /**@override */ static DEFAULT_ICON = 'systems/daggerheart/assets/icons/documents/items/round-potion.svg'; - } diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index 950ed621..79e71549 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -659,13 +659,22 @@ export default class DhpActor extends Actor { }; resources.forEach(r => { - if (r.keyIsID) { - updates.items[r.key] = { - target: r.target, - resources: { - 'system.resource.value': r.target.system.resource.value + r.value - } - }; + if (r.itemId) { + const { path, value } = game.system.api.fields.ActionFields.CostField.getItemIdCostUpdate(r); + + if ( + r.key === 'quantity' && + r.target.type === 'consumable' && + value === 0 && + r.target.system.destroyOnEmpty + ) { + r.target.delete(); + } else { + updates.items[r.key] = { + target: r.target, + resources: { [path]: value } + }; + } } else { switch (r.key) { case 'fear': diff --git a/module/systemRegistration/migrations.mjs b/module/systemRegistration/migrations.mjs index 134c8714..015c19cb 100644 --- a/module/systemRegistration/migrations.mjs +++ b/module/systemRegistration/migrations.mjs @@ -96,5 +96,60 @@ export async function runMigrations() { lastMigrationVersion = '1.1.1'; } + if (foundry.utils.isNewerVersion('1.2.0', lastMigrationVersion)) { + const lockedPacks = []; + const compendiumItems = []; + for (let pack of game.packs) { + if (pack.locked) { + lockedPacks.push(pack.collection); + await pack.configure({ locked: false }); + } + const documents = await pack.getDocuments(); + + compendiumItems.push(...documents.filter(x => x.system?.metadata?.hasActions)); + compendiumItems.push( + ...documents + .filter(x => x.items) + .flatMap(actor => actor.items.filter(x => x.system?.metadata?.hasActions)) + ); + } + + const worldItems = game.items.filter(x => x.system.metadata.hasActions); + const worldActorItems = Array.from(game.actors).flatMap(actor => + actor.items.filter(x => x.system.metadata.hasActions) + ); + + const validCostKeys = Object.keys(CONFIG.DH.GENERAL.abilityCosts); + for (let item of [...worldItems, ...worldActorItems, ...compendiumItems]) { + for (let action of item.system.actions) { + const resourceCostIndexes = Object.keys(action.cost).reduce( + (acc, index) => (!validCostKeys.includes(action.cost[index].key) ? [...acc, Number(index)] : acc), + [] + ); + if (resourceCostIndexes.length === 0) continue; + + await action.update({ + cost: action.cost.map((cost, index) => { + const { keyIsID, ...rest } = cost; + if (!resourceCostIndexes.includes(index)) return { ...rest }; + + return { + ...rest, + key: 'resource', + itemId: cost.key + }; + }) + }); + } + } + + for (let packId of lockedPacks) { + const pack = game.packs.get(packId); + await pack.configure({ locked: true }); + } + + lastMigrationVersion = '1.2.0'; + } + await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.LastMigrationVersion, lastMigrationVersion); } diff --git a/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json b/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json index 0bc8d39d..d5ae1c67 100644 --- a/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json +++ b/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json @@ -316,7 +316,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json b/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json index c8079e49..2dde1b60 100644 --- a/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json +++ b/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json @@ -392,7 +392,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -507,7 +506,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -727,7 +725,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json b/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json index ad630902..663aa8a3 100644 --- a/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json +++ b/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json @@ -278,7 +278,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json b/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json index 720dd90b..c8f0b0d1 100644 --- a/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json +++ b/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json @@ -257,7 +257,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -345,7 +344,6 @@ "scalable": false, "key": "stress", "value": 2, - "keyIsID": false, "step": null } ], @@ -579,7 +577,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -643,7 +640,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json b/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json index 6f43714d..18906dbd 100644 --- a/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json +++ b/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json @@ -279,7 +279,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json b/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json index 5765ca72..acb1b601 100644 --- a/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json +++ b/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json @@ -285,7 +285,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -1091,7 +1090,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json b/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json index a1c06c52..e9f2c499 100644 --- a/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json +++ b/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json @@ -293,7 +293,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json b/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json index 052f5c1e..9d59323c 100644 --- a/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json +++ b/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json @@ -404,7 +404,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json b/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json index ca46acc2..e64e5c6f 100644 --- a/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json +++ b/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json @@ -253,7 +253,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -352,7 +351,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json b/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json index ff9b1215..9be9c300 100644 --- a/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json +++ b/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json @@ -364,7 +364,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json b/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json index 51d3f73d..b30bdc84 100644 --- a/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json +++ b/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json @@ -272,7 +272,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json b/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json index ed0d9abd..2f292c8f 100644 --- a/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json +++ b/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json @@ -316,7 +316,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -432,7 +431,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json b/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json index 6432afab..95a29d0b 100644 --- a/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json +++ b/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json @@ -257,7 +257,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json b/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json index 90f7bd6c..75bff568 100644 --- a/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json +++ b/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json @@ -254,7 +254,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -421,7 +420,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json b/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json index d83ce510..091b862c 100644 --- a/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json +++ b/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json @@ -257,7 +257,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -397,7 +396,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -524,7 +522,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json b/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json index 236402ea..47626209 100644 --- a/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json +++ b/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json @@ -246,7 +246,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -310,7 +309,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json b/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json index 6fc8ac9b..12f715c5 100644 --- a/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json +++ b/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json @@ -272,7 +272,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json b/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json index b5313df2..34f27f93 100644 --- a/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json +++ b/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json @@ -285,7 +285,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -399,7 +398,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json b/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json index 61427aab..4144b8c3 100644 --- a/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json +++ b/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json @@ -252,7 +252,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -432,7 +431,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -527,7 +525,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json b/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json index 718f4a9a..ba8d1592 100644 --- a/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json +++ b/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json @@ -318,7 +318,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json b/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json index 5bdeddf9..027383e2 100644 --- a/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json +++ b/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json @@ -285,7 +285,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -349,7 +348,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json b/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json index fde75123..22408c0e 100644 --- a/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json +++ b/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json @@ -421,7 +421,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json b/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json index 7104b09f..0e501248 100644 --- a/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json +++ b/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json @@ -360,7 +360,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json b/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json index 7fb7a97d..7bc91293 100644 --- a/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json +++ b/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json @@ -252,7 +252,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -393,7 +392,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -457,7 +455,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json b/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json index 77a84dcf..0412ba4b 100644 --- a/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json +++ b/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json @@ -279,7 +279,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json b/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json index 2e08edfd..618323ce 100644 --- a/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json +++ b/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json @@ -272,7 +272,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json b/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json index a9e26e65..145b2534 100644 --- a/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json +++ b/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json @@ -277,7 +277,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -391,7 +390,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json b/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json index 6546153e..96efe6c6 100644 --- a/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json +++ b/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json @@ -370,7 +370,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json b/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json index b87fb26a..f1652c33 100644 --- a/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json +++ b/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json @@ -358,7 +358,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json b/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json index 91530e2e..a49ac9e1 100644 --- a/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json +++ b/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json @@ -252,7 +252,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json b/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json index 73ae6429..4d4e9847 100644 --- a/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json +++ b/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json @@ -389,7 +389,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json b/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json index d49889b8..d0a50e2c 100644 --- a/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json +++ b/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json @@ -497,7 +497,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json b/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json index bfcbbba2..81f7ad37 100644 --- a/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json +++ b/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json @@ -252,7 +252,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json b/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json index b342864e..f400054b 100644 --- a/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json +++ b/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json @@ -359,7 +359,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json b/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json index a16fab7d..8de3035a 100644 --- a/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json +++ b/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json @@ -374,7 +374,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json b/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json index 9046d679..4234430c 100644 --- a/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json +++ b/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json @@ -281,7 +281,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json b/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json index 3365533c..2e697015 100644 --- a/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json +++ b/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json @@ -272,7 +272,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json b/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json index 32dee4b9..caebb002 100644 --- a/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json +++ b/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json @@ -254,7 +254,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json b/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json index a79154e5..31b3721c 100644 --- a/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json +++ b/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json @@ -335,7 +335,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -449,7 +448,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json b/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json index e68bc6f4..740fb7c9 100644 --- a/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json +++ b/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json @@ -523,7 +523,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json b/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json index 59b08577..3325eee8 100644 --- a/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json +++ b/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json @@ -455,7 +455,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json b/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json index b1da3ec3..e8fcd0ce 100644 --- a/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json +++ b/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json @@ -246,7 +246,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -418,7 +417,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -559,7 +557,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json b/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json index ca663abf..c359782a 100644 --- a/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json +++ b/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json @@ -563,7 +563,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json b/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json index aea1a4eb..4cf17ff5 100644 --- a/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json +++ b/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json @@ -279,7 +279,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json b/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json index 69b1d11d..82d74b93 100644 --- a/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json +++ b/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json @@ -272,7 +272,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -336,7 +335,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json b/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json index 52289d7b..c4f94d8e 100644 --- a/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json +++ b/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json @@ -287,7 +287,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json b/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json index 467ce106..59e35d06 100644 --- a/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json +++ b/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json @@ -259,7 +259,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json b/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json index 8ac5ecdb..c6a3c141 100644 --- a/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json +++ b/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json @@ -519,7 +519,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json b/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json index e2cdfbef..ca62b98f 100644 --- a/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json +++ b/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json @@ -285,7 +285,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -455,7 +454,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -570,7 +568,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json b/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json index 5982e496..d9efc9fb 100644 --- a/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json +++ b/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json @@ -532,7 +532,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json b/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json index d2d4fd83..002efede 100644 --- a/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json +++ b/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json @@ -317,7 +317,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json b/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json index fbfd0a66..edf8f3ea 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json @@ -281,7 +281,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json b/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json index 22d89d60..48430ae0 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json @@ -253,7 +253,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -352,7 +351,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json b/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json index 3fe4bac0..31fa44f3 100644 --- a/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json +++ b/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json @@ -562,7 +562,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json b/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json index 2b16ec95..15766df4 100644 --- a/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json +++ b/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json @@ -290,7 +290,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -354,7 +353,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json b/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json index 5b06271d..315f6039 100644 --- a/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json +++ b/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json @@ -363,7 +363,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json b/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json index 9761b071..8344cc1e 100644 --- a/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json +++ b/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json @@ -334,7 +334,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null } ], @@ -481,7 +480,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json b/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json index da22947a..58b0b8e4 100644 --- a/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json +++ b/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json @@ -368,7 +368,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -484,7 +483,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json b/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json index 34727ef0..b57a7ddc 100644 --- a/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json +++ b/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json @@ -282,7 +282,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -398,7 +397,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json b/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json index fd0e6a51..b5ca05c9 100644 --- a/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json +++ b/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json @@ -275,7 +275,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json b/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json index b98e3640..ac3766d3 100644 --- a/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json +++ b/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json @@ -246,7 +246,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -310,7 +309,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json b/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json index 4f88edeb..b4868595 100644 --- a/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json +++ b/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json @@ -290,7 +290,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -354,7 +353,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json b/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json index 6681a8f2..8c2332aa 100644 --- a/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json +++ b/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json @@ -338,7 +338,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -452,7 +451,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json b/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json index 3546a587..4ada4bf1 100644 --- a/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json +++ b/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json @@ -424,7 +424,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -539,7 +538,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -660,7 +658,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json b/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json index 94634439..4eb8ba4b 100644 --- a/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json +++ b/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json @@ -272,7 +272,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json b/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json index 5509e2ff..75c438d2 100644 --- a/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json +++ b/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json @@ -452,7 +452,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json b/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json index e428a33f..97fd5789 100644 --- a/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json +++ b/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json @@ -365,7 +365,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json b/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json index 0f7b07a2..d0f8ec58 100644 --- a/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json +++ b/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json @@ -288,7 +288,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -377,7 +376,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json b/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json index 343eed99..8893201c 100644 --- a/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json +++ b/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json @@ -346,7 +346,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -411,7 +410,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json b/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json index 55dccaa4..54340160 100644 --- a/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json +++ b/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json @@ -499,7 +499,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json b/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json index 4a168cac..f9f0c5d0 100644 --- a/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json +++ b/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json @@ -275,7 +275,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json b/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json index 58e52937..93453c35 100644 --- a/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json +++ b/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json @@ -343,7 +343,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -407,7 +406,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json b/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json index ffba4d54..ac2dc316 100644 --- a/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json +++ b/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json @@ -257,7 +257,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -345,7 +344,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -532,7 +530,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json b/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json index 50bfa399..d281b974 100644 --- a/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json +++ b/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json @@ -275,7 +275,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json b/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json index d8437156..1e1b422a 100644 --- a/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json +++ b/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json @@ -464,7 +464,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json b/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json index cfa42eac..06f3c4a8 100644 --- a/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json +++ b/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json @@ -359,7 +359,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json b/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json index f444fb51..5f32df25 100644 --- a/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json +++ b/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json @@ -275,7 +275,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json b/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json index 4696285a..eb13eed0 100644 --- a/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json +++ b/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json @@ -335,7 +335,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json b/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json index 9a0e8aaf..a4ce7e26 100644 --- a/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json +++ b/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json @@ -252,7 +252,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json b/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json index bd13b3e1..86d197b2 100644 --- a/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json +++ b/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json @@ -252,7 +252,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -368,7 +367,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -432,7 +430,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json b/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json index 84a4a49a..38545446 100644 --- a/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json +++ b/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json @@ -252,7 +252,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -368,7 +367,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json b/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json index 80130503..fcce5c20 100644 --- a/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json +++ b/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json @@ -289,7 +289,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -405,7 +404,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json b/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json index 9349713e..b4a5fbb7 100644 --- a/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json +++ b/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json @@ -252,7 +252,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -316,7 +315,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json b/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json index f448bdf0..91b83239 100644 --- a/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json +++ b/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json @@ -339,7 +339,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -427,7 +426,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json b/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json index e60fe4cc..f6957805 100644 --- a/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json +++ b/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json @@ -285,7 +285,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -450,7 +449,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json b/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json index dc35d8b9..12b26a15 100644 --- a/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json +++ b/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json @@ -362,7 +362,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -478,7 +477,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json b/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json index 1a8f1087..c54afb36 100644 --- a/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json +++ b/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json @@ -316,7 +316,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json b/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json index 6a5b19d5..f3fde38b 100644 --- a/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json +++ b/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json @@ -312,7 +312,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json b/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json index b081ca1f..139212b5 100644 --- a/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json +++ b/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json @@ -271,7 +271,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json b/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json index 5617570b..285feb7b 100644 --- a/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json +++ b/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json @@ -407,7 +407,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json b/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json index 5402a6cd..e28a4227 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json @@ -279,7 +279,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json b/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json index 34e698e5..3afcd1f7 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json @@ -279,7 +279,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -400,7 +399,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json b/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json index b16a2f85..05b0908b 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json @@ -284,7 +284,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -405,7 +404,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json b/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json index 9b65ed36..f3e4f280 100644 --- a/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json +++ b/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json @@ -299,7 +299,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -666,7 +665,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json b/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json index 8ea0f54e..350da61a 100644 --- a/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json +++ b/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json @@ -332,7 +332,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -554,7 +553,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json b/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json index b77c51a9..37d0328a 100644 --- a/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json +++ b/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json @@ -257,7 +257,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -321,7 +320,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -385,7 +383,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -500,7 +497,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json b/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json index c35018ba..e82fe2f6 100644 --- a/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json +++ b/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json @@ -408,18 +408,18 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "fear", + "itemId": null, "value": 1, - "keyIsID": false, + "scalable": false, "step": null, "consumeOnSuccess": false }, { - "scalable": false, - "key": "UsC0vtOBbf9Kut4v", + "key": "resource", + "itemId": "UsC0vtOBbf9Kut4v", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -527,10 +527,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.2.0", "createdTime": 1754055703816, - "modifiedTime": 1755264604190, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325576007, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_key": "!actors.items!ZNbQ2jg35LG4t9eH.UsC0vtOBbf9Kut4v" }, diff --git a/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json b/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json index 3fa1cb51..bda226f0 100644 --- a/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json +++ b/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json @@ -254,7 +254,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -343,7 +342,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json b/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json index b30f12c6..388301f3 100644 --- a/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json +++ b/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json @@ -404,7 +404,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -571,7 +570,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json b/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json index 4d63e66a..c97721a2 100644 --- a/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json +++ b/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json @@ -397,7 +397,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json b/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json index a2f6c836..a51ce6a0 100644 --- a/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json +++ b/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json @@ -282,7 +282,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json b/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json index 854e377c..8f3353d0 100644 --- a/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json +++ b/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json b/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json index 291785f2..7cba9e0c 100644 --- a/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json +++ b/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json b/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json index 595a2a6b..93cdabd5 100644 --- a/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json +++ b/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json b/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json index 3fffc763..b0d9cc7b 100644 --- a/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json +++ b/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json b/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json index 13cf7f84..ca954014 100644 --- a/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json +++ b/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json b/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json index 09d5dbbe..27e03f8b 100644 --- a/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json +++ b/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json b/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json index 8ecbfb61..2de5bbaf 100644 --- a/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json +++ b/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json b/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json index d474f7ca..0a569130 100644 --- a/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json +++ b/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json b/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json index 6059aa88..70dcaa51 100644 --- a/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json +++ b/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json b/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json index 522faf75..4384e554 100644 --- a/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json +++ b/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json b/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json index 746be465..09e749a3 100644 --- a/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json +++ b/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json b/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json index 87aa36a9..ee14bca6 100644 --- a/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json +++ b/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json b/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json index 4c54bebb..bbc22d34 100644 --- a/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json +++ b/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json @@ -15,7 +15,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json b/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json index 26534190..4d6a5627 100644 --- a/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json +++ b/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json @@ -18,7 +18,6 @@ "scalable": false, "key": "armor", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json b/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json index 49f5f88d..c73cc803 100644 --- a/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json +++ b/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json @@ -37,7 +37,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json b/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json index 45ceee81..026db6c4 100644 --- a/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json +++ b/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json @@ -15,7 +15,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json b/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json index 9b24e84e..a2ffb88d 100644 --- a/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json +++ b/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json b/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json index 27b3eb9c..582d3c4e 100644 --- a/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json +++ b/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json b/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json index 554cba68..dd13a8cc 100644 --- a/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json +++ b/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json @@ -15,7 +15,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json b/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json index 95477418..fa90cf04 100644 --- a/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json +++ b/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json b/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json index e9b157ba..eedab4d6 100644 --- a/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json +++ b/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json b/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json index e49f6b47..0ab50abe 100644 --- a/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json +++ b/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json @@ -15,7 +15,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json b/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json index f31ed781..5392665b 100644 --- a/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json +++ b/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json b/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json index b55d8f6e..0db60d14 100644 --- a/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json +++ b/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json b/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json index 06706094..8083ec69 100644 --- a/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json +++ b/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json @@ -15,7 +15,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json b/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json index 39b4a777..639966e6 100644 --- a/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json +++ b/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json b/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json index a0aab233..327e611f 100644 --- a/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json +++ b/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json b/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json index d0b792cc..a371bfea 100644 --- a/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json +++ b/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json b/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json index 8194c296..cd011361 100644 --- a/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json +++ b/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json b/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json index 701f8eb9..b2e30707 100644 --- a/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json +++ b/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json b/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json index 3a640f48..0c831a14 100644 --- a/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json +++ b/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json b/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json index 64256829..2ee5cba8 100644 --- a/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json +++ b/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json b/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json index 3d92768d..1627a77a 100644 --- a/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json +++ b/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json b/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json index 7d689fe3..caa2462c 100644 --- a/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json +++ b/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json b/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json index fe59bd63..b8053ed2 100644 --- a/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json +++ b/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json b/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json index d3d10bc0..2060a2e1 100644 --- a/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json +++ b/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json b/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json index fcc178d0..c96fe2fc 100644 --- a/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json +++ b/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json b/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json index 08c89b32..65e4c0c8 100644 --- a/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json +++ b/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json b/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json index 2e4c3507..b2f8eeb3 100644 --- a/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json +++ b/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json b/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json index e816526d..051e27f0 100644 --- a/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json +++ b/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 5, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json b/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json index 1f7f2aad..da201cbe 100644 --- a/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json +++ b/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json @@ -26,10 +26,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "5PvMQKCjrgSxzstn", + "key": "resource", + "itemId": "5PvMQKCjrgSxzstn", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -63,10 +63,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784408, - "modifiedTime": 1755428012661, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575261, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "5PvMQKCjrgSxzstn", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json b/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json index 2a6789be..d9f887c6 100644 --- a/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json +++ b/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json @@ -23,7 +23,6 @@ "key": "hope", "value": 1, "step": 1, - "keyIsID": false, "consumeOnSuccess": false } ], diff --git a/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json b/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json index 1927078e..619ab731 100644 --- a/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json +++ b/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json b/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json index 7c2f5e54..13178c37 100644 --- a/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json +++ b/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 4, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json b/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json index d211ab8f..c069362d 100644 --- a/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json +++ b/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json @@ -23,7 +23,6 @@ "scalable": true, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json b/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json index c83c1fde..2c80d1d5 100644 --- a/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json +++ b/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json b/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json index 89fac249..5363b3d8 100644 --- a/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json +++ b/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json b/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json index d398e708..922a77d9 100644 --- a/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json +++ b/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json b/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json index 3fa7e50c..0c460a1d 100644 --- a/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json +++ b/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json @@ -92,7 +92,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json b/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json index 1073b715..611c71cb 100644 --- a/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json +++ b/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json @@ -66,7 +66,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json b/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json index c7f334db..83974d28 100644 --- a/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json +++ b/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json b/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json index 35bfe6b9..1d4084d6 100644 --- a/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json +++ b/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json @@ -73,8 +73,7 @@ "scalable": true, "key": "hope", "value": 1, - "step": 1, - "keyIsID": false + "step": 1 } ], "uses": { @@ -129,7 +128,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json b/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json index be949650..d2e80c21 100644 --- a/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json +++ b/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json @@ -65,7 +65,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -122,7 +121,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json b/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json index 3c60a08d..1002b85c 100644 --- a/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json +++ b/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json @@ -49,7 +49,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json b/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json index 28e768a2..1e3b3bf4 100644 --- a/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json +++ b/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json @@ -70,7 +70,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json b/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json index b001346c..9ecf339a 100644 --- a/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json +++ b/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json @@ -65,7 +65,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json b/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json index 8d91c1ee..2896a467 100644 --- a/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json +++ b/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json @@ -68,7 +68,6 @@ "scalable": false, "key": "hope", "value": 5, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json b/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json index ebc99d4e..f4d69fcd 100644 --- a/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json +++ b/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json b/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json index 3781989d..a660200b 100644 --- a/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json +++ b/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json b/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json index 5c1132f9..9193247f 100644 --- a/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json +++ b/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 2, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json b/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json index 80176175..48c35a57 100644 --- a/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json +++ b/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -96,7 +95,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -173,7 +171,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json b/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json index 1785da8e..0036cad9 100644 --- a/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json +++ b/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -57,7 +56,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json b/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json index 5314de9e..a853cbcf 100644 --- a/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json +++ b/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json @@ -22,7 +22,6 @@ "scalable": true, "key": "hope", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json b/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json index 69c40e15..e06b2cff 100644 --- a/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json +++ b/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json b/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json index b4f0d1b5..47ab3b32 100644 --- a/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json +++ b/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json @@ -70,7 +70,6 @@ "key": "stress", "value": 1, "step": 1, - "keyIsID": false, "consumeOnSuccess": false } ], diff --git a/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json b/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json index 82d68f9c..43bc16e1 100644 --- a/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json +++ b/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -78,7 +77,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -112,7 +110,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json b/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json index a4361133..28cb6834 100644 --- a/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json +++ b/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json @@ -22,8 +22,7 @@ "scalable": true, "key": "hope", "value": 1, - "step": 1, - "keyIsID": false + "step": 1 } ], "uses": { diff --git a/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json b/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json index ef1cd258..5bd95b01 100644 --- a/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json +++ b/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json @@ -93,8 +93,7 @@ "scalable": true, "key": "stress", "value": 0, - "step": 2, - "keyIsID": false + "step": 2 } ], "uses": { diff --git a/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json b/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json index b92f15cd..019e4d51 100644 --- a/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json +++ b/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json b/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json index a4e50ac7..8d6ea214 100644 --- a/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json +++ b/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json b/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json index c55fc136..3daad187 100644 --- a/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json +++ b/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json b/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json index 1880da2e..ae4932bf 100644 --- a/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json +++ b/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json b/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json index 5c97f2dc..4c0a599d 100644 --- a/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json +++ b/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json b/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json index 83ebfad4..e69e928c 100644 --- a/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json +++ b/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json @@ -19,12 +19,12 @@ "actionType": "action", "cost": [ { - "consumeOnSuccess": true, - "scalable": false, - "key": "C0qLOwSSvZ6PG3Ws", + "key": "resource", + "itemId": "C0qLOwSSvZ6PG3Ws", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": true } ], "uses": { @@ -113,10 +113,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784449, - "modifiedTime": 1755428045130, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575299, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "C0qLOwSSvZ6PG3Ws", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json b/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json index 6c11b1b2..0277175a 100644 --- a/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json +++ b/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json b/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json index 5aca5a59..a933e609 100644 --- a/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json +++ b/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json @@ -73,7 +73,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json b/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json index 60018023..f827cd09 100644 --- a/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json +++ b/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json @@ -23,8 +23,7 @@ "scalable": true, "key": "stress", "value": 1, - "step": 1, - "keyIsID": false + "step": 1 } ], "uses": { diff --git a/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json b/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json index 97a3fcf7..d3ba4c1d 100644 --- a/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json +++ b/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json @@ -71,10 +71,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "54GUjNuBEy7xdzMz", + "key": "resource", + "itemId": "54GUjNuBEy7xdzMz", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -114,10 +114,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784454, - "modifiedTime": 1755427958620, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575249, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "54GUjNuBEy7xdzMz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json b/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json index 9aefa1bf..517c42f6 100644 --- a/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json +++ b/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -54,7 +53,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json b/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json index 3212a11c..7f7cb2b5 100644 --- a/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json +++ b/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json b/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json index a881ec6c..ecfaba75 100644 --- a/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json +++ b/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json @@ -23,8 +23,7 @@ "scalable": true, "key": "hope", "value": 1, - "step": 1, - "keyIsID": false + "step": 1 } ], "uses": { diff --git a/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json b/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json index b8ac3547..61ee12e0 100644 --- a/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json +++ b/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json b/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json index f4cc79de..de38e408 100644 --- a/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json +++ b/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json @@ -22,8 +22,7 @@ "scalable": true, "key": "hope", "value": 1, - "step": 1, - "keyIsID": false + "step": 1 } ], "uses": { diff --git a/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json b/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json index 71e1a34a..cde0c6f0 100644 --- a/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json +++ b/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json b/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json index d630e5f7..d24686a8 100644 --- a/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json +++ b/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json b/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json index 2a59fb30..11a9c47a 100644 --- a/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json +++ b/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json @@ -22,7 +22,6 @@ "scalable": false, "key": "armor", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json b/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json index 02091c6c..2b27f9d6 100644 --- a/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json +++ b/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json b/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json index d97dea73..49001e24 100644 --- a/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json +++ b/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json @@ -19,11 +19,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "GlRm1Dxlc0Z1b04o", + "key": "resource", + "itemId": "GlRm1Dxlc0Z1b04o", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -94,18 +95,20 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "hope", + "itemId": null, "value": 2, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, - "key": "GlRm1Dxlc0Z1b04o", + "key": "resource", + "itemId": "GlRm1Dxlc0Z1b04o", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -189,10 +192,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784466, - "modifiedTime": 1755429518847, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575341, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "GlRm1Dxlc0Z1b04o", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json b/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json index 2f626025..5fbe8470 100644 --- a/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json +++ b/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json @@ -75,7 +75,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -151,7 +150,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -228,7 +226,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -305,7 +302,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json b/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json index 76af7794..68c2143b 100644 --- a/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json +++ b/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json b/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json index 6ea5b5c2..cbca693c 100644 --- a/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json +++ b/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json b/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json index f60aaf26..c82cb6a1 100644 --- a/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json +++ b/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json b/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json index 866589a1..258499a7 100644 --- a/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json +++ b/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json b/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json index 0633f0e3..d44ae867 100644 --- a/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json +++ b/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json @@ -23,7 +23,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json b/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json index ceb386d3..5b24a20e 100644 --- a/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json +++ b/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json @@ -27,11 +27,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "cWu1o82ZF7GvnbXc", + "key": "resource", + "itemId": "cWu1o82ZF7GvnbXc", "value": 1, + "scalable": false, "step": null, - "keyIsID": true + "consumeOnSuccess": false } ], "uses": { @@ -102,11 +103,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "cWu1o82ZF7GvnbXc", + "key": "resource", + "itemId": "cWu1o82ZF7GvnbXc", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -177,11 +179,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "cWu1o82ZF7GvnbXc", + "key": "resource", + "itemId": "cWu1o82ZF7GvnbXc", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -257,10 +260,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784473, - "modifiedTime": 1755429148644, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575659, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "cWu1o82ZF7GvnbXc", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json b/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json index e655d21b..fe5da256 100644 --- a/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json +++ b/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json @@ -23,7 +23,6 @@ "key": "hope", "value": 1, "step": 1, - "keyIsID": false, "consumeOnSuccess": false } ], diff --git a/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json b/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json index ac5337f1..000711a8 100644 --- a/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json +++ b/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json @@ -23,7 +23,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json b/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json index 2a86115c..75b94c59 100644 --- a/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json +++ b/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], @@ -78,7 +77,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json b/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json index 2566febc..86e8b1ca 100644 --- a/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json +++ b/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json b/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json index 1c680cd4..12884992 100644 --- a/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json +++ b/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json b/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json index 077ea5d0..c938aca6 100644 --- a/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json +++ b/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json b/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json index 29da4453..60f93510 100644 --- a/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json +++ b/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json @@ -73,7 +73,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json b/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json index 12940038..84278082 100644 --- a/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json +++ b/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -99,7 +98,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -173,18 +171,18 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "hope", + "itemId": null, "value": 2, - "keyIsID": false, + "scalable": false, "step": null, "consumeOnSuccess": false }, { - "scalable": false, - "key": "TGjR4vJVNbQRV8zr", + "key": "resource", + "itemId": "TGjR4vJVNbQRV8zr", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -258,18 +256,18 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "hope", + "itemId": null, "value": 2, - "keyIsID": false, + "scalable": false, "step": null, "consumeOnSuccess": false }, { - "scalable": false, - "key": "TGjR4vJVNbQRV8zr", + "key": "resource", + "itemId": "TGjR4vJVNbQRV8zr", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -356,10 +354,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784482, - "modifiedTime": 1755429662900, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575507, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "TGjR4vJVNbQRV8zr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json b/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json index 7809506f..8cb485e4 100644 --- a/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json +++ b/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -49,7 +48,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json b/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json index ac120ef6..39c82f3a 100644 --- a/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json +++ b/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json @@ -89,7 +89,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json b/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json index 974ea647..1e2c783d 100644 --- a/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json +++ b/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json @@ -22,7 +22,6 @@ "scalable": true, "key": "hope", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -104,7 +103,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json b/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json index d290126d..4ede0a27 100644 --- a/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json +++ b/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json @@ -65,7 +65,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json b/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json index 5549707f..7d8ec8bc 100644 --- a/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json +++ b/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json @@ -25,18 +25,20 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "McdncxmO9K1YNP7Y", + "key": "resource", + "itemId": "McdncxmO9K1YNP7Y", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, "key": "stress", + "itemId": null, "value": 1, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -67,18 +69,20 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "stress", + "itemId": null, "value": 1, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, - "key": "McdncxmO9K1YNP7Y", + "key": "resource", + "itemId": "McdncxmO9K1YNP7Y", "value": 2, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -109,18 +113,20 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "stress", + "itemId": null, "value": 1, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, - "key": "McdncxmO9K1YNP7Y", + "key": "resource", + "itemId": "McdncxmO9K1YNP7Y", "value": 3, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -151,18 +157,20 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "McdncxmO9K1YNP7Y", + "key": "resource", + "itemId": "McdncxmO9K1YNP7Y", "value": 4, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, "key": "stress", + "itemId": null, "value": 1, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -198,10 +206,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784486, - "modifiedTime": 1755429215057, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575431, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "McdncxmO9K1YNP7Y", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json b/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json index c2abcab4..f2f9a556 100644 --- a/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json +++ b/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json @@ -70,11 +70,12 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "zcldCuqOg3dphUVI", + "key": "resource", + "itemId": "zcldCuqOg3dphUVI", "value": 1, + "scalable": true, "step": 1, - "keyIsID": true + "consumeOnSuccess": false } ], "uses": { @@ -135,10 +136,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784487, - "modifiedTime": 1755429413469, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575872, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "zcldCuqOg3dphUVI", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json b/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json index 7f9244dc..4f9e09e2 100644 --- a/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json +++ b/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json b/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json index 79fe6211..20a677d0 100644 --- a/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json +++ b/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json b/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json index e3dee02a..20bf8aeb 100644 --- a/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json +++ b/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json b/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json index 43c2d220..3ee2198a 100644 --- a/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json +++ b/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -49,7 +48,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json b/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json index 5ec9f9b8..8678a0f8 100644 --- a/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json +++ b/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json @@ -19,10 +19,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "aC43NiFQLpOADyjO", + "key": "resource", + "itemId": "aC43NiFQLpOADyjO", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -63,10 +63,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784494, - "modifiedTime": 1755427986895, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575616, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "aC43NiFQLpOADyjO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json b/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json index 140e570d..f7e72b9f 100644 --- a/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json +++ b/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -59,7 +58,6 @@ "scalable": false, "key": "stress", "value": 2, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json b/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json index 03337fa2..a15778c3 100644 --- a/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json +++ b/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json b/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json index 6da00db8..2f3bb3a0 100644 --- a/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json +++ b/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json b/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json index 0bc016be..df98b899 100644 --- a/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json +++ b/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json b/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json index 28847ad5..3784874b 100644 --- a/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json +++ b/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json b/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json index c30bfb3c..86c765a2 100644 --- a/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json +++ b/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json b/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json index 89ebb736..1d64e639 100644 --- a/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json +++ b/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json @@ -27,11 +27,11 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "wUQFsRtww18naYaq", + "key": "resource", + "itemId": "wUQFsRtww18naYaq", "value": 1, + "scalable": true, "step": null, - "keyIsID": true, "consumeOnSuccess": false } ], @@ -104,11 +104,11 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "wUQFsRtww18naYaq", + "key": "resource", + "itemId": "wUQFsRtww18naYaq", "value": 1, + "scalable": true, "step": 1, - "keyIsID": true, "consumeOnSuccess": false } ], @@ -181,11 +181,11 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "wUQFsRtww18naYaq", + "key": "resource", + "itemId": "wUQFsRtww18naYaq", "value": 1, + "scalable": true, "step": null, - "keyIsID": true, "consumeOnSuccess": false } ], @@ -218,10 +218,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784502, - "modifiedTime": 1755429742185, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575854, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "wUQFsRtww18naYaq", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json b/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json index 5e45f832..8a1d15d4 100644 --- a/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json +++ b/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json b/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json index 2ab645bd..7f542794 100644 --- a/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json +++ b/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json b/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json index 625ed0d0..9d2ccec7 100644 --- a/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json +++ b/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json @@ -19,11 +19,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "VOSFaQHZbmhMyXwi", + "key": "resource", + "itemId": "VOSFaQHZbmhMyXwi", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -54,11 +55,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "VOSFaQHZbmhMyXwi", + "key": "resource", + "itemId": "VOSFaQHZbmhMyXwi", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -101,10 +103,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784507, - "modifiedTime": 1755429585605, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575562, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "VOSFaQHZbmhMyXwi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json b/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json index c8efc258..7009df65 100644 --- a/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json +++ b/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json @@ -23,8 +23,7 @@ "scalable": true, "key": "stress", "value": 1, - "step": null, - "keyIsID": false + "step": null } ], "uses": { diff --git a/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json b/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json index 90756d98..671ffcfb 100644 --- a/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json +++ b/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json @@ -19,10 +19,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "ffPbSEvLuFrFsMxl", + "key": "resource", + "itemId": "ffPbSEvLuFrFsMxl", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -96,10 +96,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "ffPbSEvLuFrFsMxl", + "key": "resource", + "itemId": "ffPbSEvLuFrFsMxl", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -185,10 +185,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784509, - "modifiedTime": 1755429692907, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575706, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "ffPbSEvLuFrFsMxl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json b/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json index 87f8bb7a..e3b3569c 100644 --- a/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json +++ b/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json b/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json index e03eaf12..8abd548c 100644 --- a/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json +++ b/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json b/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json index d61473c9..cded950d 100644 --- a/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json +++ b/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json @@ -23,7 +23,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json b/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json index 7b966db2..1b707341 100644 --- a/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json +++ b/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json b/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json index a7af630e..94720b86 100644 --- a/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json +++ b/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json b/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json index c0b78538..64382b12 100644 --- a/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json +++ b/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json @@ -25,11 +25,12 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "ewhIzXQ2h9fS9I8c", + "key": "resource", + "itemId": "ewhIzXQ2h9fS9I8c", "value": 1, - "keyIsID": true, - "step": null + "scalable": true, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -60,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784521, - "modifiedTime": 1755429406322, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575684, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "ewhIzXQ2h9fS9I8c", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json b/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json index 20f8deca..24a0433f 100644 --- a/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json +++ b/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json b/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json index f5a140d6..bb2d4eaa 100644 --- a/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json +++ b/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json b/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json index b984da10..697f29cd 100644 --- a/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json +++ b/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json @@ -27,10 +27,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "5b1awkgTmMp3FVrm", + "key": "resource", + "itemId": "5b1awkgTmMp3FVrm", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -64,10 +64,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784523, - "modifiedTime": 1755428265451, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575271, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "5b1awkgTmMp3FVrm", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json b/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json index 103765e3..df23f8c0 100644 --- a/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json +++ b/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json @@ -23,8 +23,7 @@ "scalable": true, "key": "hope", "value": 1, - "step": null, - "keyIsID": false + "step": null } ], "uses": { diff --git a/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json b/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json index 1d5f2cf7..7e0dcf37 100644 --- a/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json +++ b/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json b/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json index 41103c18..eba9736d 100644 --- a/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json +++ b/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -49,11 +48,12 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "oUipGK84E2KjoKqh", + "key": "resource", + "itemId": "oUipGK84E2KjoKqh", "value": 1, + "scalable": true, "step": 1, - "keyIsID": true + "consumeOnSuccess": false } ], "uses": { @@ -92,10 +92,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753922784531, - "modifiedTime": 1756038664007, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756325575772, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "oUipGK84E2KjoKqh", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json b/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json index ed0e7184..9dbbd376 100644 --- a/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json +++ b/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json b/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json index a4ab4541..3b5a5f97 100644 --- a/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json +++ b/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json @@ -19,18 +19,20 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "stress", + "itemId": null, "value": 1, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, - "key": "n0P3VS1WfxvmXbB6", + "key": "resource", + "itemId": "n0P3VS1WfxvmXbB6", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -110,7 +112,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -144,10 +145,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784534, - "modifiedTime": 1755429505289, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575741, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "n0P3VS1WfxvmXbB6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json b/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json index 91539c93..ecee943e 100644 --- a/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json +++ b/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 5, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json b/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json index 620e0558..0f64514f 100644 --- a/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json +++ b/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json @@ -26,11 +26,12 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "SDjjV61TC1NceV1m", + "key": "resource", + "itemId": "SDjjV61TC1NceV1m", "value": 1, + "scalable": true, "step": 1, - "keyIsID": true + "consumeOnSuccess": false } ], "uses": { @@ -90,10 +91,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753922784535, - "modifiedTime": 1755429419135, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575478, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "SDjjV61TC1NceV1m", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json b/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json index be34704d..687a4312 100644 --- a/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json +++ b/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json @@ -50,11 +50,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "TV56wSysbU5xAlOa", + "key": "resource", + "itemId": "TV56wSysbU5xAlOa", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -91,10 +92,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753922784537, - "modifiedTime": 1756038348939, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756325575516, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "TV56wSysbU5xAlOa", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json b/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json index 757aca62..066501dc 100644 --- a/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json +++ b/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json @@ -27,11 +27,11 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "o62i0QdbUDIiAhSq", + "key": "resource", + "itemId": "o62i0QdbUDIiAhSq", "value": 1, + "scalable": true, "step": 1, - "keyIsID": true, "consumeOnSuccess": false } ], @@ -113,7 +113,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -147,10 +146,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753922784537, - "modifiedTime": 1756037237479, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756325575757, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "o62i0QdbUDIiAhSq", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json b/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json index d5284f5a..660e3c7a 100644 --- a/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json +++ b/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json b/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json index 6d4db3d1..21f92663 100644 --- a/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json +++ b/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json b/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json index 042cb330..c78bebca 100644 --- a/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json +++ b/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json @@ -97,7 +97,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json b/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json index 0b32e34d..f57206be 100644 --- a/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json +++ b/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json b/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json index a4614046..14dc5fc9 100644 --- a/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json +++ b/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json b/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json index 57c0fd94..cfe14983 100644 --- a/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json +++ b/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json b/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json index 06eb5b84..11fcf48e 100644 --- a/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json +++ b/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json @@ -28,7 +28,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json b/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json index 6510bc5c..4efb6b52 100644 --- a/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json +++ b/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json @@ -183,7 +183,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json b/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json index d31300b5..0c566991 100644 --- a/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json +++ b/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json @@ -371,7 +371,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -486,7 +485,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json b/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json index 43a0f61f..ab8daf7d 100644 --- a/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json +++ b/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json @@ -455,7 +455,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json b/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json index b924328f..38821a59 100644 --- a/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json +++ b/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json @@ -272,7 +272,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -336,7 +335,6 @@ "scalable": false, "key": "fear", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json b/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json index 8eed0247..8ae4134d 100644 --- a/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json +++ b/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json @@ -379,7 +379,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json b/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json index 1a9888f1..bbf23666 100644 --- a/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json +++ b/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json @@ -227,7 +227,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -420,7 +419,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json b/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json index dc76c382..fc14d738 100644 --- a/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json +++ b/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json @@ -462,7 +462,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json b/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json index ef961283..82bf42e3 100644 --- a/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json +++ b/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json @@ -301,7 +301,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json b/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json index abd838dd..9c86d63d 100644 --- a/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json +++ b/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json @@ -235,7 +235,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json b/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json index 47ec74e2..79c89611 100644 --- a/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json +++ b/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json @@ -225,7 +225,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -392,7 +391,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json b/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json index 33924bf9..1e690af7 100644 --- a/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json +++ b/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json @@ -23,7 +23,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json b/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json index 4b08aa31..c90ff961 100644 --- a/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json +++ b/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json @@ -16,11 +16,12 @@ "img": "icons/magic/time/hourglass-brown-orange.webp", "cost": [ { - "key": "armorSlot", + "key": "resource", + "itemId": "armorSlot", "value": 1, - "keyIsID": false, "scalable": false, - "step": null + "step": null, + "consumeOnSuccess": false } ], "roll": { @@ -100,10 +101,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753809264956, - "modifiedTime": 1755431812730, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575974, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_key": "!items!hAY6UgdGT7dj22Pr" } diff --git a/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json b/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json index ab892847..0de3a7f9 100644 --- a/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json +++ b/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json b/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json index 1edf8517..52aa1978 100644 --- a/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json +++ b/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json b/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json index e092929a..9bbca941 100644 --- a/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json +++ b/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json @@ -14,7 +14,16 @@ "description": "

This paste eats away walls and other surfaces in bright flashes.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "cfVFmS8vT9dbq9s1", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -31,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -51,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753590344700, - "modifiedTime": 1755432861888, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336051101, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!cfVFmS8vT9dbq9s1" } diff --git a/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json b/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json index 4f68e0d7..b06f1634 100644 --- a/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json +++ b/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json @@ -20,7 +20,16 @@ "key": "hope", "value": 1, "step": 1, - "keyIsID": false + "itemId": null, + "consumeOnSuccess": false + }, + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "VlbsCjvvLNfTzNXb", + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -39,6 +48,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -59,10 +69,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753588973384, - "modifiedTime": 1756041701211, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756336337676, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!VlbsCjvvLNfTzNXb" } diff --git a/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json b/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json index 64db5be0..ad6dea85 100644 --- a/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json +++ b/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Instinct Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "JGD3M9hBHtVAA8XP", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753587033468, - "modifiedTime": 1756041711386, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756336352911, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!JGD3M9hBHtVAA8XP" } diff --git a/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json b/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json index e0e2eb55..1e875f98 100644 --- a/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json +++ b/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json @@ -14,7 +14,16 @@ "description": "

You can activate this orb to create a flash of bright light. All targets within Close range become Vulnerable until they mark HP.

@Template[type:emanation|range:c]

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "eAXHdzA5qNPldOpn", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -96,10 +106,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753592512731, - "modifiedTime": 1755433077981, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336362549, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!eAXHdzA5qNPldOpn" } diff --git a/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json b/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json index 7d7596eb..545ce424 100644 --- a/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json +++ b/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json @@ -14,7 +14,16 @@ "description": "

You can drink this blood to disappear from where you are and immediately reappear at a point you can see within Very Far range.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "pDGzmczoTlKGmKgd", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -31,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -51,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753589954973, - "modifiedTime": 1756041739719, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756336370750, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!pDGzmczoTlKGmKgd" } diff --git a/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json b/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json index 70d93553..56bd6696 100644 --- a/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json +++ b/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Strength Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "FOPQNqXbiVO0ilYL", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753586850134, - "modifiedTime": 1756041748451, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756336378610, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!FOPQNqXbiVO0ilYL" } diff --git a/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json b/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json index 64984603..73dcfc1f 100644 --- a/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json +++ b/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json @@ -14,7 +14,16 @@ "description": "

This honey can be used to glue two objects together permanently.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "PfQvqopXgvroBklL", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -31,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -51,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753592033119, - "modifiedTime": 1755433017227, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336387437, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!PfQvqopXgvroBklL" } diff --git a/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json b/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json index 6a199792..777adc08 100644 --- a/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json +++ b/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json @@ -14,7 +14,16 @@ "description": "

Thick vines grow from your location to a point of your choice within Far range, allowing you to climb up or across them. The vines dissipate on your next short rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "RrIasiMCt6mqVTps", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -31,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -51,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753591685990, - "modifiedTime": 1755432982976, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336396404, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!RrIasiMCt6mqVTps" } diff --git a/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json b/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json index 76e8833a..85e8ed29 100644 --- a/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json +++ b/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json @@ -14,7 +14,16 @@ "description": "

You can use this stone to take a spell or grimoire from your vault, use it once, and return it to your vault.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "IKMVQ6VwtapwoUim", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -31,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -51,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753590192533, - "modifiedTime": 1755432844735, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336406347, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!IKMVQ6VwtapwoUim" } diff --git a/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json b/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json index 46e8f8e6..ae60104a 100644 --- a/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json +++ b/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Presence Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "CVBbFfOY75YwyQsp", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753587097370, - "modifiedTime": 1755432545153, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336420032, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!CVBbFfOY75YwyQsp" } diff --git a/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json b/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json index aa4917eb..a6ca40ba 100644 --- a/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json +++ b/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json @@ -17,10 +17,11 @@ "cost": [ { "scalable": false, - "key": "stress", + "key": "quantity", "value": 1, - "keyIsID": false, - "step": null + "itemId": "elsyP6VhHw1JjGSl", + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -39,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -59,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753590692159, - "modifiedTime": 1755432898488, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336427253, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!elsyP6VhHw1JjGSl" } diff --git a/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json b/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json index 17fc697d..3c58799a 100644 --- a/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json +++ b/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Finesse Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "eeBhZSGLjuNZuJuI", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753586944889, - "modifiedTime": 1755432529169, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336435661, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!eeBhZSGLjuNZuJuI" } diff --git a/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json b/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json index 25f7a45d..fe22618c 100644 --- a/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json +++ b/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json @@ -14,7 +14,16 @@ "description": "

After you drink this tea, you instantly kill your target when you critically succeed on an attack. If you don’t critically succeed on an attack before your next long rest, you die.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "xDnJeF1grkmKck8Q", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753592717630, - "modifiedTime": 1756041829971, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756336445925, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!xDnJeF1grkmKck8Q" } diff --git a/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json b/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json index ee696b5d..3bb5766f 100644 --- a/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json +++ b/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json @@ -14,7 +14,16 @@ "description": "

You can drink this tea to unleash a fiery breath attack. Make an Instinct Roll against all adversaries in front of you within Close range. Targets you succeed against take d20 physical damage using your Proficiency.

@Template[type:emanation|range:c]

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "consumeOnSuccess": false, + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "wM18PWWW2Ami4fBG", + "step": null + } + ], "uses": { "value": null, "max": "", @@ -80,6 +89,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -100,10 +110,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753591525829, - "modifiedTime": 1756041882255, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756336455635, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!wM18PWWW2Ami4fBG" } diff --git a/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json b/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json index 81c57691..73f1b3c2 100644 --- a/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json +++ b/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json @@ -14,7 +14,16 @@ "description": "

A creature who consumes this poison takes 8d10 direct magic damage.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "eU8VpbWB2NHIL47n", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -62,6 +71,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -82,10 +92,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753590938047, - "modifiedTime": 1755432918239, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336465398, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!eU8VpbWB2NHIL47n" } diff --git a/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json b/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json index 87be77e4..dc8260d0 100644 --- a/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json +++ b/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Knowledge Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "aWHSO2AqDufi7nL4", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753587185754, - "modifiedTime": 1755432555520, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336472979, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!aWHSO2AqDufi7nL4" } diff --git a/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json b/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json index e463d5c3..4b4c8236 100644 --- a/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json +++ b/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json @@ -14,7 +14,16 @@ "description": "

You can eat this meal to clear all HP and Stress and gain 1d4 Hope.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "aX6NyxkNzu0LcJpt", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -125,6 +134,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -145,10 +155,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753591925502, - "modifiedTime": 1755433009779, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336480162, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!aX6NyxkNzu0LcJpt" } diff --git a/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json b/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json index fbdb9c17..023edb88 100644 --- a/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json +++ b/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json @@ -14,7 +14,16 @@ "description": "

You can use this bone to control your falling speed for a number of minutes equal to your level.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "DpxEMpwfasEBpORU", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753590624634, - "modifiedTime": 1756042004101, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756336487822, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!DpxEMpwfasEBpORU" } diff --git a/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json b/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json index dd7ce092..b76ff1f9 100644 --- a/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json +++ b/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json @@ -14,7 +14,16 @@ "description": "

You can apply this salve to your neck to breathe underwater for a number of minutes equal to your level.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "Nvbb9mze6o5D0AEg", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.2.0", "createdTime": 1753589241094, - "modifiedTime": 1756041983578, - "lastModifiedBy": "vUIbuan0U50nfKBE" + "modifiedTime": 1756336496390, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!Nvbb9mze6o5D0AEg" } diff --git a/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json b/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json index e2150bed..b208c3ac 100644 --- a/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json +++ b/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json @@ -14,7 +14,16 @@ "description": "

You can apply this venom to a weapon that deals physical damage to add a d6 to your next damage roll with that weapon.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "8WkhvSzeOmLdnoLJ", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -108,10 +118,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753587386639, - "modifiedTime": 1755432584688, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336506199, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!8WkhvSzeOmLdnoLJ" } diff --git a/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json b/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json index 055fd275..5563b561 100644 --- a/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json +++ b/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json @@ -14,7 +14,16 @@ "description": "

You can drink this potion to double your size until you choose to drop this form or your next rest. While in this form, you have a +2 bonus to Strength and a +1 bonus to your Proficiency.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "fl2f3ees8RFMze9t", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -107,10 +117,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753592174440, - "modifiedTime": 1755433036930, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336513568, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!fl2f3ees8RFMze9t" } diff --git a/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json b/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json index 22afde4d..c600d102 100644 --- a/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json +++ b/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4+1 HP.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "Aruc2NLutWuVIjP1", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -75,6 +84,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -95,10 +105,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753588839527, - "modifiedTime": 1755432692443, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336520901, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!Aruc2NLutWuVIjP1" } diff --git a/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json b/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json index 9f814705..8488df03 100644 --- a/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json +++ b/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json @@ -14,7 +14,16 @@ "description": "

After drinking this potion, the next successful attack you make critically succeeds.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "VSwa1LpQ9PjZKsWF", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753589998065, - "modifiedTime": 1755432817234, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336528677, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!VSwa1LpQ9PjZKsWF" } diff --git a/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json b/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json index 75c96d1b..6cb963a8 100644 --- a/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json +++ b/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json @@ -14,7 +14,16 @@ "description": "

When you use this flare, allies within Close range roll a d6 when they spend a Hope. On a result of 6, they gain the effect of that Hope without spending it. The flare lasts until the end of the scene.

@Template[type:emanation|range:c]

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "EhaQCPJ8oiqpRIwB", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -31,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -51,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753590388618, - "modifiedTime": 1755432869271, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336535700, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!EhaQCPJ8oiqpRIwB" } diff --git a/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json b/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json index 2319ae44..09ba52dc 100644 --- a/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json +++ b/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json @@ -14,7 +14,16 @@ "description": "

You can make a Finesse Roll to throw this shard at a group of adversaries within Far range. Targets you succeed against take 2d20 magic damage.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "consumeOnSuccess": false, + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "nQTo6mNoPTEVBtkm", + "step": null + } + ], "uses": { "value": null, "max": "", @@ -82,6 +91,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -102,10 +112,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753589403341, - "modifiedTime": 1755432739380, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336543336, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!nQTo6mNoPTEVBtkm" } diff --git a/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json b/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json index 1ad9bdb4..240e2bd3 100644 --- a/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json +++ b/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json @@ -14,7 +14,16 @@ "description": "

You can apply this venom to a weapon that deals physical damage to add a d8 to your next damage roll with that weapon.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "BqBWXXe9T07AMV4u", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -108,10 +118,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753588170670, - "modifiedTime": 1755432643893, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336563205, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!BqBWXXe9T07AMV4u" } diff --git a/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json b/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json index cff7849b..7a9a8193 100644 --- a/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json +++ b/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json @@ -14,7 +14,16 @@ "description": "

You can open this jar to release a deafening echo of voices for a number of minutes equal to your Instinct. Creatures within Far range unprepared for the sound take 6d8 magic damage.

@Template[type:emanation|range:f]

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "yUol6M5b8jsbk9za", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -62,6 +71,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -82,10 +92,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753591372075, - "modifiedTime": 1755432964594, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336570894, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!yUol6M5b8jsbk9za" } diff --git a/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json b/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json index 352c229d..9f9939a8 100644 --- a/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json +++ b/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json @@ -14,7 +14,16 @@ "description": "

Eat this root to leap up to Far range once without needing to roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "c2putn9apuurJhWX", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -31,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -51,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753588566489, - "modifiedTime": 1755432674260, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336580501, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!c2putn9apuurJhWX" } diff --git a/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json b/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json index 17a2992e..398d12f5 100644 --- a/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json +++ b/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json @@ -14,7 +14,16 @@ "description": "

If you die while holding this stone, an ally can take a card from your loadout to place in their loadout or vault. After they take this knowledge, the stone crumbles.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "nL9IALzm9BNi5oSt", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -31,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -51,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753592240392, - "modifiedTime": 1755433061047, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336587702, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!nL9IALzm9BNi5oSt" } diff --git a/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json b/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json index 002bd46d..1cc164a2 100644 --- a/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json +++ b/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json @@ -14,7 +14,16 @@ "description": "

You can make a Finesse Roll to throw this shard at a group of adversaries within Far range. Targets you succeed against take 4d20 magic damage.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "consumeOnSuccess": false, + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "AA7bmiwv00lshPrC", + "step": null + } + ], "uses": { "value": null, "max": "", @@ -80,6 +89,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -100,10 +110,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753590515261, - "modifiedTime": 1755432877237, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336596900, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!AA7bmiwv00lshPrC" } diff --git a/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json b/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json index 127bcd72..05e4fe5d 100644 --- a/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json +++ b/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Instinct until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "CCPFm5iXXwvyYYwR", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753589747286, - "modifiedTime": 1755432778983, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336603508, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!CCPFm5iXXwvyYYwR" } diff --git a/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json b/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json index 90d28bc8..12f5bf1d 100644 --- a/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json +++ b/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Strength until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "mnyQDRtngWWQeRXF", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753589623872, - "modifiedTime": 1755432764001, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336610323, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!mnyQDRtngWWQeRXF" } diff --git a/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json b/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json index 8d5d83c6..84a18028 100644 --- a/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json +++ b/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Presence until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "IJLAUlQymbSjzsri", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753589816684, - "modifiedTime": 1755432785816, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336617341, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!IJLAUlQymbSjzsri" } diff --git a/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json b/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json index dfab73ea..782e543c 100644 --- a/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json +++ b/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Finesse until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "80s1FLmTLtohZ5GH", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753589675185, - "modifiedTime": 1755432772014, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336639693, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!80s1FLmTLtohZ5GH" } diff --git a/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json b/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json index c51237fc..a827a738 100644 --- a/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json +++ b/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Knowledge until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "SDdv1G2veMLKrxcJ", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753589874661, - "modifiedTime": 1755432794986, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336647833, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!SDdv1G2veMLKrxcJ" } diff --git a/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json b/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json index 49d0f6f7..3e83a73c 100644 --- a/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json +++ b/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4+2 HP.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "cM7pHe8bBAxSZ2xR", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -75,6 +84,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -95,10 +105,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753591046168, - "modifiedTime": 1755432927907, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336654766, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!cM7pHe8bBAxSZ2xR" } diff --git a/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json b/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json index f28faa25..a7cd987e 100644 --- a/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json +++ b/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4+2 Stress.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "I4cQ03xbxnc81EGa", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -75,6 +84,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -95,10 +105,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753591113317, - "modifiedTime": 1755432935058, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336661213, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!I4cQ03xbxnc81EGa" } diff --git a/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json b/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json index 80dcead1..60cd96b2 100644 --- a/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json +++ b/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Agility until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "yK6eEDUrsPbZA8G0", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753589545730, - "modifiedTime": 1755432751630, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336667559, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!yK6eEDUrsPbZA8G0" } diff --git a/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json b/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json index bc7bb074..5dc8ca28 100644 --- a/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json +++ b/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4 HP.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "tPfKtKRRjv8qdSqy", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -75,6 +84,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -95,10 +105,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753587253431, - "modifiedTime": 1755432566654, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336675059, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!tPfKtKRRjv8qdSqy" } diff --git a/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json b/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json index b4bd2a2c..81b000f7 100644 --- a/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json +++ b/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4 Stress.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "b6vGSPFWOlzZZDLO", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -75,6 +84,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -95,10 +105,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753587324465, - "modifiedTime": 1755432574155, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336685650, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!b6vGSPFWOlzZZDLO" } diff --git a/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json b/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json index 1415d195..7c80bc78 100644 --- a/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json +++ b/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json @@ -16,11 +16,12 @@ "actionType": "action", "cost": [ { - "keyIsID": false, - "key": "hope", - "value": 1, "scalable": false, - "step": null + "key": "quantity", + "value": 1, + "itemId": "UFQVwgYOUZ88UxcH", + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -39,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -59,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753592792213, - "modifiedTime": 1755433095534, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336692719, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!UFQVwgYOUZ88UxcH" } diff --git a/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json b/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json index ce16c984..4afc72ba 100644 --- a/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json +++ b/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json @@ -16,11 +16,12 @@ "actionType": "action", "cost": [ { - "keyIsID": false, - "key": "hope", - "value": 1, "scalable": false, - "step": null + "key": "quantity", + "value": 1, + "itemId": "f1NHVSIHJJCIOaBl", + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -44,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -109,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753588254032, - "modifiedTime": 1755432657276, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336699132, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!f1NHVSIHJJCIOaBl" } diff --git a/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json b/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json index f720881e..5c5f4325 100644 --- a/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json +++ b/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json @@ -14,7 +14,16 @@ "description": "

You can apply this dust to a weapon that deals magic damage to add a d12 to your next damage roll with that weapon.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "Zsh2AvZr8EkGtLyw", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -108,10 +118,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753590241722, - "modifiedTime": 1755432854453, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336705787, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!Zsh2AvZr8EkGtLyw" } diff --git a/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json b/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json index 38ef8357..be940eab 100644 --- a/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json +++ b/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json @@ -14,7 +14,16 @@ "description": "

You can use this musk to prevent anyone from tracking you by mundane or magical means until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "qr1bosjFcUfuwq4B", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753591168468, - "modifiedTime": 1755432944044, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336713230, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!qr1bosjFcUfuwq4B" } diff --git a/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json b/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json index 41b29bdf..c7fa2bbb 100644 --- a/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json +++ b/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json @@ -14,7 +14,16 @@ "description": "

You can drink this potion to choose one additional downtime move.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "dvL8oaxpEF6jKvYN", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -107,10 +117,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753588038000, - "modifiedTime": 1755432626825, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336720970, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!dvL8oaxpEF6jKvYN" } diff --git a/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json b/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json index e14b5524..82e4d4b9 100644 --- a/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json +++ b/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json @@ -14,7 +14,16 @@ "description": "

You can apply this saliva to a weapon that deals physical damage to add a d12 to your next damage roll with that weapon.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "s2Exl2XFuoOhtIov", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -108,10 +118,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753590061810, - "modifiedTime": 1755432828838, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336727954, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!s2Exl2XFuoOhtIov" } diff --git a/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json b/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json index 68681ddd..7e07b702 100644 --- a/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json +++ b/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json @@ -14,7 +14,16 @@ "description": "

By touching this piece of parchment to another, you can perfectly copy the second parchment’s contents. Once used, this parchment becomes mundane paper.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "yJkwz4AP6yhGo8Vj", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -31,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -51,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753589306667, - "modifiedTime": 1755432726696, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336734771, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!yJkwz4AP6yhGo8Vj" } diff --git a/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json b/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json index f2336545..08af29cc 100644 --- a/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json +++ b/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json @@ -14,7 +14,16 @@ "description": "

You can drink this potion to halve your size until you choose to drop this form or your next rest. While in this form, you have a +2 bonus to Agility and a −1 penalty to your Proficiency.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "HGixKenQwhyRAYNk", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -107,10 +117,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753592077792, - "modifiedTime": 1755433027028, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336741086, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!HGixKenQwhyRAYNk" } diff --git a/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json b/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json index a397074b..b627695a 100644 --- a/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json +++ b/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json @@ -14,7 +14,16 @@ "description": "

You can drink this potion to fall asleep for a full night’s rest. You clear all Stress upon waking.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "XZavUVlHEvE2srEt", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -76,6 +85,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -96,10 +106,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753591837472, - "modifiedTime": 1755432997515, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336748248, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!XZavUVlHEvE2srEt" } diff --git a/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json b/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json index 86879588..cdc760ff 100644 --- a/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json +++ b/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json @@ -17,10 +17,11 @@ "cost": [ { "scalable": false, - "key": "stress", + "key": "quantity", "value": 1, - "keyIsID": false, - "step": null + "itemId": "cg6VtQ0eVZjDdcK0", + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -84,6 +85,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -104,10 +106,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753588752841, - "modifiedTime": 1755432682259, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336754402, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!cg6VtQ0eVZjDdcK0" } diff --git a/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json b/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json index 8837f815..d278c6fe 100644 --- a/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json +++ b/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4+1 Stress.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "hf3k1POoVSooJyN2", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -75,6 +84,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -95,10 +105,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753588904835, - "modifiedTime": 1755432700497, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336761163, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!hf3k1POoVSooJyN2" } diff --git a/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json b/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json index 7d6bf0cd..b4c16c8d 100644 --- a/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json +++ b/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json @@ -14,7 +14,16 @@ "description": "

You can use this stardrop to summon a hailstorm of comets that deals 8d20 physical damage to all targets within Very Far range.

@Template[type:emanation|range:vf]

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "y4c1jrlHrf0wBWOq", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -62,6 +71,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -82,10 +92,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753592933782, - "modifiedTime": 1755433102382, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336777144, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!y4c1jrlHrf0wBWOq" } diff --git a/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json b/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json index 3849ac0d..dd8a354b 100644 --- a/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json +++ b/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Agility Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "lNtcrkgFGOJNaroE", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753585993187, - "modifiedTime": 1755432512018, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336784139, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!lNtcrkgFGOJNaroE" } diff --git a/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json b/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json index 3ee1ec60..f79704f4 100644 --- a/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json +++ b/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json @@ -14,7 +14,16 @@ "description": "

Consume this sap to roll a [[/r d6]]. On a result of 5–6, clear 2 HP. On a result of 2–4, clear 3 Stress. On a result of 1, see through the veil of death and return changed, gaining one scar.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "consumeOnSuccess": false, + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "kwexUzdM9wm1Qums", + "step": null + } + ], "uses": { "value": null, "max": "", @@ -55,6 +64,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -75,10 +85,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753590791260, - "modifiedTime": 1755432908523, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336791229, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!kwexUzdM9wm1Qums" } diff --git a/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json b/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json index 8dac2f79..e366ddbe 100644 --- a/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json +++ b/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json @@ -14,7 +14,16 @@ "description": "

You can consume this moss during a rest to clear 1d10 HP.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "GrDrRqWgv7gvl9vn", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -80,7 +89,16 @@ "description": "

You can consume this moss during a rest to clear 1d10 Stress.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "GrDrRqWgv7gvl9vn", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -141,6 +159,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 62, @@ -161,10 +180,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753592391195, - "modifiedTime": 1755433069335, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336804065, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!GrDrRqWgv7gvl9vn" } diff --git a/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json b/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json index ab941d10..8194d7b2 100644 --- a/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json +++ b/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json @@ -14,7 +14,16 @@ "description": "

You can make a Finesse Roll to throw this shard at a group of adversaries within Far range. Targets you succeed against take 1d20 magic damage.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "consumeOnSuccess": false, + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "mUepnLbkvFk0ha4Z", + "step": null + } + ], "uses": { "value": null, "max": "", @@ -82,6 +91,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -102,10 +112,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753587732694, - "modifiedTime": 1755432611972, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336811267, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!mUepnLbkvFk0ha4Z" } diff --git a/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json b/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json index aef91404..cec9395e 100644 --- a/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json +++ b/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json @@ -14,7 +14,16 @@ "description": "

You can eat these paired leaves to immediately gain 2 Hope.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "hvy5BkG3F6iOIXTx", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -76,6 +85,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -96,10 +106,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753587484164, - "modifiedTime": 1755432594538, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336817973, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!hvy5BkG3F6iOIXTx" } diff --git a/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json b/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json index 56957a44..4959dc10 100644 --- a/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json +++ b/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json @@ -14,7 +14,16 @@ "description": "

When an adversary attacks you, use this vial and roll a number of d6s equal to your Agility. Add the highest result to your Evasion against the attack.

", "chatDisplay": true, "actionType": "reaction", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "Nwv5ydGf0MWnzq1n", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -31,6 +40,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -51,10 +61,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753588345314, - "modifiedTime": 1755432665859, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336825474, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!Nwv5ydGf0MWnzq1n" } diff --git a/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json b/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json index 26dc7ede..b849d989 100644 --- a/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json +++ b/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json @@ -14,7 +14,16 @@ "description": "

When you drink the contents of this vial, you can see in total darkness until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "VqEX5YwK5oL3r1t6", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 60, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753587590537, - "modifiedTime": 1755432602190, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336832961, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!VqEX5YwK5oL3r1t6" } diff --git a/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json b/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json index 32552f86..eb3aeb5c 100644 --- a/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json +++ b/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json @@ -14,7 +14,16 @@ "description": "

You gain magic wings that allow you to fly for a number of minutes equal to your level.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "n10vozlmosVR6lo4", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -36,6 +45,7 @@ } }, "consumeOnUse": true, + "destroyOnEmpty": true, "attribution": { "source": "Daggerheart SRD", "page": 61, @@ -101,10 +111,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753591283853, - "modifiedTime": 1755432952411, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756336840548, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!n10vozlmosVR6lo4" } diff --git a/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json b/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json index acd9ffee..eaa9def5 100644 --- a/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json +++ b/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hope", "value": 5, - "keyIsID": false, "step": null } ], diff --git a/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json b/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json index fa76826b..98714741 100644 --- a/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json +++ b/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json @@ -16,7 +16,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json b/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json index 2457d2e2..2dfce26c 100644 --- a/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json +++ b/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json @@ -19,7 +19,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json b/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json index 83356cb6..f1eac926 100644 --- a/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json +++ b/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json @@ -16,7 +16,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json b/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json index ab2f2cc3..59260e5d 100644 --- a/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json +++ b/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json @@ -16,7 +16,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json b/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json index 7d38f5a2..d6e15140 100644 --- a/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json +++ b/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json @@ -16,7 +16,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json b/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json index e4a4511f..99f856da 100644 --- a/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json +++ b/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hope", "value": 4, - "keyIsID": false, "step": null } ], diff --git a/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json b/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json index f6d004e4..efc12e63 100644 --- a/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json +++ b/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json b/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json index 9321abf8..03b69488 100644 --- a/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json +++ b/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json @@ -17,7 +17,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json b/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json index 9352e5de..7e7226d2 100644 --- a/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json +++ b/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json b/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json index 99cae67f..dfbb4906 100644 --- a/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json +++ b/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json b/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json index eb5c8e2b..f7f748ae 100644 --- a/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json +++ b/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json b/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json index c7a74b26..dba962aa 100644 --- a/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json +++ b/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json b/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json index 1273d9a8..fb41b73f 100644 --- a/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json +++ b/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json b/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json index 8e6ef6ca..2a7e0db6 100644 --- a/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json +++ b/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json @@ -20,11 +20,12 @@ }, "cost": [ { - "key": "armorSlot", + "key": "resource", + "itemId": "armorSlot", "value": 1, - "keyIsID": false, "scalable": false, - "step": null + "step": null, + "consumeOnSuccess": false } ], "effects": [ @@ -196,10 +197,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1753795181779, - "modifiedTime": 1755430450631, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575921, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_key": "!items!EmFTp9wzT6MHSaNz" } diff --git a/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json b/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json index 1c4f75ce..9b43770c 100644 --- a/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json +++ b/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json b/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json index 0a1d9dab..bf29dc34 100644 --- a/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json +++ b/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json b/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json index b817a332..ca842d59 100644 --- a/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json +++ b/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json @@ -22,7 +22,6 @@ { "key": "hope", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json b/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json index e774d93d..8922d621 100644 --- a/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json +++ b/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json @@ -17,7 +17,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json b/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json index 7c79855b..229d1682 100644 --- a/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json +++ b/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json b/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json index 9f44f5bc..b52bf465 100644 --- a/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json +++ b/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json b/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json index 7d9fc299..a9b35948 100644 --- a/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json +++ b/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json @@ -17,7 +17,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json b/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json index eaa6768c..b4df7c8c 100644 --- a/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json +++ b/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json b/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json index 603f8fae..736db796 100644 --- a/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json +++ b/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json b/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json index 62090883..72aa2931 100644 --- a/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json +++ b/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json b/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json index 2e88d91c..f75537d3 100644 --- a/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json +++ b/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json @@ -22,7 +22,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json b/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json index 45f5d8e7..7b6129ce 100644 --- a/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json +++ b/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json b/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json index 9c0f0eae..c00a90b6 100644 --- a/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json +++ b/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json @@ -19,8 +19,7 @@ "key": "stress", "value": 1, "scalable": true, - "step": 1, - "keyIsID": false + "step": 1 } ], "_id": "x9cz8u1utQ6DtoKA", diff --git a/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json b/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json index b062a33a..533f7ca9 100644 --- a/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json +++ b/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json b/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json index 03e4053f..141d92c1 100644 --- a/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json +++ b/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json @@ -18,7 +18,6 @@ { "key": "hope", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json b/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json index 88522c0b..425c9ea1 100644 --- a/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json +++ b/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json @@ -22,7 +22,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json b/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json index dd75905f..36490a5d 100644 --- a/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json +++ b/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } diff --git a/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json b/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json index 4e5b9d0b..3cfe1052 100644 --- a/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json +++ b/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json b/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json index 31d79e90..545f2116 100644 --- a/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json +++ b/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json b/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json index a0c614a5..ff56a435 100644 --- a/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json +++ b/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json @@ -17,11 +17,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "etaQ01yGJhBLDUqZ", + "key": "resource", + "itemId": "etaQ01yGJhBLDUqZ", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -105,10 +106,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1754179740310, - "modifiedTime": 1755391695859, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575203, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_key": "!items!etaQ01yGJhBLDUqZ" } diff --git a/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json b/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json index 2b69d05e..75a5f905 100644 --- a/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json +++ b/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json b/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json index 515f12da..017a0752 100644 --- a/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json +++ b/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json b/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json index 11317c54..5cad10d1 100644 --- a/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json +++ b/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json @@ -74,7 +74,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json b/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json index 56387284..02af8c17 100644 --- a/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json +++ b/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -106,7 +105,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -141,7 +139,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -206,7 +203,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json b/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json index ac661a74..bfb4df2c 100644 --- a/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json +++ b/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -54,7 +53,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json b/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json index f0088f38..0b5b61f5 100644 --- a/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json +++ b/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json @@ -16,7 +16,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json b/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json index 667fefd8..e7f060d5 100644 --- a/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json +++ b/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json b/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json index 6981cd57..46ac1a9d 100644 --- a/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json +++ b/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json b/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json index 41c12fe9..33804ae4 100644 --- a/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json +++ b/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json b/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json index aa7a3458..1d8f3b8f 100644 --- a/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json +++ b/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json b/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json index 1dab1e94..b0b37c6d 100644 --- a/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json +++ b/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json @@ -20,7 +20,6 @@ "scalable": false, "key": "armor", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json b/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json index a0349e7c..9947cc38 100644 --- a/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json +++ b/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json b/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json index ad653f1e..83113e14 100644 --- a/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json +++ b/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json b/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json index be204300..a2708a8c 100644 --- a/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json +++ b/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json b/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json index c58ad931..f53d7b4a 100644 --- a/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json +++ b/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json b/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json index de0f54b7..fe624444 100644 --- a/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json +++ b/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json b/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json index 311cb456..6b1bc11a 100644 --- a/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json +++ b/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json @@ -24,10 +24,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "GfOSgVJW8bS1OjNq", + "key": "resource", + "itemId": "GfOSgVJW8bS1OjNq", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -101,10 +101,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "GfOSgVJW8bS1OjNq", + "key": "resource", + "itemId": "GfOSgVJW8bS1OjNq", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -191,10 +191,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.5", + "systemVersion": "1.2.0", "createdTime": 1754353243691, - "modifiedTime": 1755392184339, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325575182, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_key": "!items!GfOSgVJW8bS1OjNq" } diff --git a/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json b/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json index 54a8303a..d7b2c877 100644 --- a/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json +++ b/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json b/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json index a8952599..953802de 100644 --- a/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json +++ b/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json b/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json index b0cc2c4f..da7da282 100644 --- a/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json +++ b/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } diff --git a/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json b/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json index 57ae1815..c8065dbb 100644 --- a/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json +++ b/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json b/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json index 886f2e21..4773af61 100644 --- a/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json +++ b/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json b/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json index 9580889b..c46a1ecf 100644 --- a/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json +++ b/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json @@ -40,7 +40,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, diff --git a/system.json b/system.json index 8e5a7610..4eeeff1a 100644 --- a/system.json +++ b/system.json @@ -2,7 +2,7 @@ "id": "daggerheart", "title": "Daggerheart", "description": "An unofficial implementation of the Daggerheart system", - "version": "1.1.2", + "version": "1.2.0", "compatibility": { "minimum": "13", "verified": "13.347", diff --git a/templates/sheets/global/partials/inventory-item-V2.hbs b/templates/sheets/global/partials/inventory-item-V2.hbs index b456c17d..a4ecec3a 100644 --- a/templates/sheets/global/partials/inventory-item-V2.hbs +++ b/templates/sheets/global/partials/inventory-item-V2.hbs @@ -65,7 +65,7 @@ Parameters: {{#if (and (not hideResources) (eq item.system.resource.type 'simple'))}} {{> "systems/daggerheart/templates/sheets/global/partials/item-resource.hbs"}} {{/if}} - {{#if (and (not hideResources) item.system.quantity)}} + {{#if (and (not hideResources) (gte item.system.quantity 0))}}
diff --git a/templates/sheets/items/consumable/settings.hbs b/templates/sheets/items/consumable/settings.hbs index 71bb2a83..7cc75f6f 100644 --- a/templates/sheets/items/consumable/settings.hbs +++ b/templates/sheets/items/consumable/settings.hbs @@ -10,5 +10,8 @@ {{localize "DAGGERHEART.ITEMS.Consumable.consumeOnUse"}} {{formField systemFields.consumeOnUse value=source.system.consumeOnUse}} + + {{localize "DAGGERHEART.ITEMS.Consumable.destroyOnEmpty"}} + {{formField systemFields.destroyOnEmpty value=source.system.destroyOnEmpty}} \ No newline at end of file From c6741b1c7a17b2730363921e9ab4a851e71bf242 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Fri, 29 Aug 2025 01:26:22 +0200 Subject: [PATCH 039/260] Added background and connection questions (#1109) --- lang/en.json | 9 +++++-- module/applications/sheets/items/class.mjs | 12 ++++++++- module/data/item/class.mjs | 16 +++++++++++ .../classes/class_Bard_vegl3bFOq3pcFTWT.json | 18 ++++++++++--- .../classes/class_Druid_ZNwUTCyGCEcidZFv.json | 18 ++++++++++--- .../class_Guardian_nRAyoC0fOzXPDa4z.json | 18 ++++++++++--- .../class_Ranger_BTyfve69LKqoOi9S.json | 18 ++++++++++--- .../classes/class_Rogue_CvHlkHZfpMiCz5uT.json | 18 ++++++++++--- .../class_Seraph_5ZnlJ5bEoyOTkUJv.json | 18 ++++++++++--- .../class_Sorcerer_DchOzHcWIJE9FKcR.json | 18 ++++++++++--- .../class_Warrior_xCUWwJz4WSthvLfy.json | 18 ++++++++++--- .../class_Wizard_5LwX4m8ziY3F1ZGC.json | 18 ++++++++++--- styles/less/sheets/items/class.less | 14 ++++++++++ templates/sheets/items/class/questions.hbs | 27 +++++++++++++++++++ 14 files changed, 201 insertions(+), 39 deletions(-) create mode 100644 templates/sheets/items/class/questions.hbs diff --git a/lang/en.json b/lang/en.json index 6068d48e..82ffac7a 100755 --- a/lang/en.json +++ b/lang/en.json @@ -170,7 +170,9 @@ "hint": "Add single words or short text as reminders and hints of what a character has advantage on." }, "age": "Age", + "backgroundQuestions": "Backgrounds", "companionFeatures": "Companion Features", + "connections": "Connections", "contextMenu": { "consume": "Consume Item", "equip": "Equip", @@ -267,7 +269,8 @@ "experience": "Experience", "traits": "Traits", "domainCards": "Domain Cards", - "equipment": "Equipment" + "equipment": "Equipment", + "story": "Story" }, "ancestryNamePlaceholder": "Your ancestry's name", "buttonTitle": "Character Setup", @@ -288,6 +291,7 @@ "selectSubclass": "Select Subclass", "startingItems": "Starting Items", "story": "Story", + "storyExplanation": "Select which background and connection prompts you want to copy into your character's background.", "suggestedArmor": "Suggested Armor", "suggestedPrimaryWeapon": "Suggested Primary Weapon", "suggestedSecondaryWeapon": "Suggested Secondary Weapon", @@ -1912,7 +1916,8 @@ "downtime": "Downtime", "roll": "Roll", "rules": "Rules", - "types": "Types" + "types": "Types", + "questions": "Questions" }, "Tiers": { "singular": "Tier", diff --git a/module/applications/sheets/items/class.mjs b/module/applications/sheets/items/class.mjs index 033c63e6..b88e6ca3 100644 --- a/module/applications/sheets/items/class.mjs +++ b/module/applications/sheets/items/class.mjs @@ -46,6 +46,10 @@ export default class ClassSheet extends DHBaseItemSheet { template: 'systems/daggerheart/templates/sheets/items/class/settings.hbs', scrollable: ['.settings'] }, + questions: { + template: 'systems/daggerheart/templates/sheets/items/class/questions.hbs', + scrollable: ['.questions'] + }, effects: { template: 'systems/daggerheart/templates/sheets/global/tabs/tab-effects.hbs', scrollable: ['.effects'] @@ -55,7 +59,13 @@ export default class ClassSheet extends DHBaseItemSheet { /** @inheritdoc */ static TABS = { primary: { - tabs: [{ id: 'description' }, { id: 'features' }, { id: 'settings' }, { id: 'effects' }], + tabs: [ + { id: 'description' }, + { id: 'features' }, + { id: 'settings' }, + { id: 'questions' }, + { id: 'effects' } + ], initial: 'description', labelPrefix: 'DAGGERHEART.GENERAL.Tabs' } diff --git a/module/data/item/class.mjs b/module/data/item/class.mjs index 5e92d2fc..c233a31b 100644 --- a/module/data/item/class.mjs +++ b/module/data/item/class.mjs @@ -49,6 +49,8 @@ export default class DHClass extends BaseDataItem { suggestedSecondaryWeapon: new ForeignDocumentUUIDField({ type: 'Item' }), suggestedArmor: new ForeignDocumentUUIDField({ type: 'Item' }) }), + backgroundQuestions: new fields.ArrayField(new fields.StringField(), { initial: ['', '', ''] }), + connections: new fields.ArrayField(new fields.StringField(), { initial: ['', '', ''] }), isMulticlass: new fields.BooleanField({ initial: false }) }; } @@ -96,6 +98,20 @@ export default class DHClass extends BaseDataItem { } } } + + if (!data.system.isMulticlass) { + const addQuestions = (base, questions) => { + return `${base}${questions.map(q => `

${q}

`).join('
')}`; + }; + const backgroundQuestions = data.system.backgroundQuestions.filter(x => x); + const connections = data.system.connections.filter(x => x); + await this.actor.update({ + 'system.biography': { + background: addQuestions(this.actor.system.biography.background, backgroundQuestions), + connections: addQuestions(this.actor.system.biography.connections, connections) + } + }); + } } const allowed = await super._preCreate(data, options, user); diff --git a/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json b/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json index 4a7a697e..dfa5f29c 100644 --- a/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json +++ b/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json @@ -63,7 +63,17 @@ "source": "Daggerheart SRD", "page": 9, "artist": "" - } + }, + "backgroundQuestions": [ + "Who from your community taught you to have such confidence in yourself?", + "You were in love once. Who did you adore, and how did they hurt you?", + "You’ve always looked up to another bard. Who are they, and why do you idolize them?" + ], + "connections": [ + "What made you realize we were going to be such good friends?", + "What do I do that annoys you?", + "Why do you grab my hand at night?" + ] }, "effects": [], "ownership": { @@ -77,10 +87,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.1.2", "createdTime": 1754174600538, - "modifiedTime": 1755943467705, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1756399046200, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_id": "vegl3bFOq3pcFTWT", "sort": 300000, diff --git a/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json b/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json index 6fae5522..5e30b889 100644 --- a/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json +++ b/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json @@ -63,7 +63,17 @@ "source": "Daggerheart SRD", "page": 10, "artist": "" - } + }, + "backgroundQuestions": [ + "Why was the community you grew up in so reliant on nature and its creatures?", + "Who was the first wild animal you bonded with? Why did your bond end?", + "Who has been trying to hunt you down? What do they want from you?" + ], + "connections": [ + "What did you confide in me that makes me leap into danger for you every time?", + "What animal do I say you remind me of?", + "What affectionate nickname have you given me?" + ] }, "effects": [], "folder": null, @@ -79,10 +89,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.1.2", "createdTime": 1754222247012, - "modifiedTime": 1755943479440, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1756399003725, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!ZNwUTCyGCEcidZFv" } diff --git a/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json b/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json index 81f9c18f..c412abba 100644 --- a/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json +++ b/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json @@ -59,7 +59,17 @@ "source": "Daggerheart SRD", "page": 15, "artist": "" - } + }, + "backgroundQuestions": [ + "Who from your community did you fail to protect, and why do you still think of them?", + "You’ve been tasked with protecting something important and delivering\nit somewhere dangerous. What is it, and where does it need to go?", + "You consider an aspect of yourself to be a weakness. What is it, and how has it affected you?" + ], + "connections": [ + "How did I save your life the first time we met?", + "What small gift did you give me that you notice I always carry with me?", + "What lie have you told me about yourself that I absolutely believe?" + ] }, "effects": [], "folder": null, @@ -75,10 +85,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.1.2", "createdTime": 1754246931974, - "modifiedTime": 1755943488697, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1756398951257, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!nRAyoC0fOzXPDa4z" } diff --git a/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json b/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json index 3c15afec..f85f6d59 100644 --- a/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json +++ b/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json @@ -59,7 +59,17 @@ "source": "Daggerheart SRD", "page": 16, "artist": "" - } + }, + "backgroundQuestions": [ + "A terrible creature hurt your community, and you’ve vowed to hunt them down. What are they, and what unique trail or sign do they leave behind?", + "Your first kill almost killed you, too. What was it, and what part of you was never the same after that event?", + "You’ve traveled many dangerous lands, but what is the one place you refuse to go?" + ], + "connections": [ + "What friendly competition do we have?", + "Why do you act differently when we’re alone than when others are around?", + "What threat have you asked me to watch for, and why are you worried about it?" + ] }, "effects": [], "folder": null, @@ -75,10 +85,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.1.2", "createdTime": 1754268869310, - "modifiedTime": 1755943505024, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1756398897309, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!BTyfve69LKqoOi9S" } diff --git a/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json b/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json index e2d1728d..a0a59613 100644 --- a/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json +++ b/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json @@ -63,7 +63,17 @@ "source": "Daggerheart SRD", "page": 19, "artist": "" - } + }, + "backgroundQuestions": [ + "What did you get caught doing that got you exiled from your home community?", + "You used to have a different life, but you’ve tried to leave it behind. Who from your past is still chasing you?", + "Who from your past were you most sad to say goodbye to?" + ], + "connections": [ + "What did I recently convince you to do that got us both in trouble?", + "What have I discovered about your past that I hold secret from the others?", + "Who do you know from my past, and how have they influenced your feelings about me?" + ] }, "effects": [], "folder": null, @@ -79,10 +89,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.1.2", "createdTime": 1754325275832, - "modifiedTime": 1755943515533, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1756398839983, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!CvHlkHZfpMiCz5uT" } diff --git a/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json b/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json index 4dbf7efb..fa11b261 100644 --- a/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json +++ b/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json @@ -59,7 +59,17 @@ "source": "Daggerheart SRD", "page": 20, "artist": "" - } + }, + "backgroundQuestions": [ + "Which god did you devote yourself to? What incredible feat did they perform for you in a moment of desperation?", + "How did your appearance change after taking your oath?", + "In what strange or unique way do you communicate with your god?" + ], + "connections": [ + "What promise did you make me agree to, should you die on the battlefield?", + "Why do you ask me so many questions about my god?", + "You’ve told me to protect one member of our party above all others, even yourself. Who are they and why?" + ] }, "effects": [], "folder": null, @@ -75,10 +85,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.1.2", "createdTime": 1754351482530, - "modifiedTime": 1755943523935, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1756398795596, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!5ZnlJ5bEoyOTkUJv" } diff --git a/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json b/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json index 10f4a31c..a096f177 100644 --- a/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json +++ b/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json @@ -67,7 +67,17 @@ "source": "Daggerheart SRD", "page": 22, "artist": "" - } + }, + "backgroundQuestions": [ + "What did you do that made the people in your community wary of you?", + "What mentor taught you to control your untamed magic, and why are they no longer able to guide you?", + "You have a deep fear you hide from everyone. What is it, and why does it scare you?" + ], + "connections": [ + "Why do you trust me so deeply?", + "What did I do that makes you cautious around me?", + "Why do we keep our shared past a secret?" + ] }, "effects": [], "folder": null, @@ -83,10 +93,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.1.2", "createdTime": 1754349743129, - "modifiedTime": 1755943536635, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1756398741027, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!DchOzHcWIJE9FKcR" } diff --git a/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json b/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json index fd068f16..3ecb2b72 100644 --- a/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json +++ b/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json @@ -63,7 +63,17 @@ "source": "Daggerheart SRD", "page": 23, "artist": "" - } + }, + "backgroundQuestions": [ + "Who taught you to fight, and why did they stay behind when you left home?", + "Somebody defeated you in battle years ago and left you to die. Who was it, and how did they betray you?", + "What legendary place have you always wanted to visit, and why is it so special?" + ], + "connections": [ + "We knew each other long before this party came together. How?", + "What mundane task do you usually help me with off the battlefield?", + "What fear am I helping you overcome?" + ] }, "effects": [], "folder": null, @@ -79,10 +89,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.1.2", "createdTime": 1754255776706, - "modifiedTime": 1755943545980, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1756398696324, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!xCUWwJz4WSthvLfy" } diff --git a/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json b/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json index 56383931..d5cc53ca 100644 --- a/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json +++ b/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json @@ -63,7 +63,17 @@ "source": "Daggerheart SRD", "page": 25, "artist": "" - } + }, + "backgroundQuestions": [ + "What responsibilities did your community once count on you for?\nHow did you let them down?", + "You’ve spent your life searching for a book or object of great\nsignificance. What is it, and why is it so important to you?", + "You have a powerful rival. Who are they, and why are you so determined to defeat them?" + ], + "connections": [ + "What favor have I asked of you that you’re not sure you can fulfill?", + "What weird hobby or strange fascination do we both share?", + "What secret about yourself have you entrusted only to me?" + ] }, "effects": [], "folder": null, @@ -79,10 +89,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.0", + "systemVersion": "1.1.2", "createdTime": 1754253505323, - "modifiedTime": 1755943555087, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1756391897762, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!5LwX4m8ziY3F1ZGC" } diff --git a/styles/less/sheets/items/class.less b/styles/less/sheets/items/class.less index 686715c6..526aa77f 100644 --- a/styles/less/sheets/items/class.less +++ b/styles/less/sheets/items/class.less @@ -43,4 +43,18 @@ } } } + + .tab.questions { + .questions-container { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 8px; + + .questions-section { + display: flex; + flex-direction: column; + gap: 4px; + } + } + } } diff --git a/templates/sheets/items/class/questions.hbs b/templates/sheets/items/class/questions.hbs new file mode 100644 index 00000000..590881b3 --- /dev/null +++ b/templates/sheets/items/class/questions.hbs @@ -0,0 +1,27 @@ +
+
+
+ {{localize "DAGGERHEART.ACTORS.Character.backgroundQuestions"}} + +
+ {{#each source.system.backgroundQuestions as | question index |}} + + {{/each}} +
+
+ +
+ {{localize "DAGGERHEART.ACTORS.Character.connections"}} + +
+ {{#each source.system.connections as | connection index |}} + + {{/each}} +
+
+
+
\ No newline at end of file From 3f1e7f4f4ab5af28e1e6c9eca2c5b71c15213b1c Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Fri, 29 Aug 2025 23:49:33 +1000 Subject: [PATCH 040/260] Added some protection for no data supplied (#1115) Co-authored-by: Chris Ryan --- module/enrichers/DualityRollEnricher.mjs | 30 ++++++++++++------------ 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/module/enrichers/DualityRollEnricher.mjs b/module/enrichers/DualityRollEnricher.mjs index 73d4f25a..1d6404ff 100644 --- a/module/enrichers/DualityRollEnricher.mjs +++ b/module/enrichers/DualityRollEnricher.mjs @@ -9,12 +9,12 @@ export default function DhDualityRollEnricher(match, _options) { } function getDualityMessage(roll, flavor) { - const trait = roll.trait && abilities[roll.trait] ? game.i18n.localize(abilities[roll.trait].label) : null; + const trait = roll?.trait && abilities[roll.trait] ? game.i18n.localize(abilities[roll.trait].label) : null; const label = flavor ?? - (roll.trait + (roll?.trait ? game.i18n.format('DAGGERHEART.GENERAL.rollWith', { roll: trait }) - : roll.reaction + : roll?.reaction ? game.i18n.localize('DAGGERHEART.GENERAL.reactionRoll') : game.i18n.localize('DAGGERHEART.GENERAL.duality')); @@ -22,9 +22,9 @@ function getDualityMessage(roll, flavor) { ? game.i18n.localize(abilities[roll.trait].label) : game.i18n.localize('DAGGERHEART.GENERAL.duality'); - const advantage = roll.advantage + const advantage = roll?.advantage ? CONFIG.DH.ACTIONS.advantageState.advantage.value - : roll.disadvantage + : roll?.disadvantage ? CONFIG.DH.ACTIONS.advantageState.disadvantage.value : undefined; const advantageLabel = @@ -36,21 +36,21 @@ function getDualityMessage(roll, flavor) { const dualityElement = document.createElement('span'); dualityElement.innerHTML = ` - `; From ef4d37d72508ecb9e0f66f23882becfdb42401cf Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Sat, 30 Aug 2025 11:47:08 +1000 Subject: [PATCH 041/260] typo fixes (#1121) Co-authored-by: Chris Ryan --- .../adversary_Acid_Burrower_89yAh30vaNQOALlz.json | 12 ++++++------ ...ary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json | 12 ++++++------ .../adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json | 12 ++++++------ .../adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json | 12 ++++++------ 4 files changed, 24 insertions(+), 24 deletions(-) diff --git a/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json b/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json index e226f013..90c5950e 100644 --- a/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json +++ b/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json @@ -434,14 +434,14 @@ "_id": "UpFsnlbZkyvM2Ftv", "img": "icons/magic/acid/projectile-smoke-glowing.webp", "system": { - "description": "

Make an attack against all targets in front of the Burrower within Close range. Targets the Burrower succeeds against take 2d6 physical damage and must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP and you gain a Fear.

@Template[type:inFront|range:c]

", + "description": "

Make an attack against all targets in front of the Burrower within Close range. Targets the Burrower succeeds against take 2d6 physical damage and must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP and you gain a Fear.

@Template[type:inFront|range:c]

", "resource": null, "actions": { "yd10HwK6Wa3OEvv2": { "type": "attack", "_id": "yd10HwK6Wa3OEvv2", "systemPath": "actions", - "description": "

Make an attack against all targets in front of the Burrower within Close range. Targets the Burrower succeeds against take 2d6 physical damage and must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP and you gain a Fear.

@Template[type:inFront|range:c]

", + "description": "

Make an attack against all targets in front of the Burrower within Close range. Targets the Burrower succeeds against take 2d6 physical damage and must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP and you gain a Fear.

@Template[type:inFront|range:c]

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -553,11 +553,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "lastModifiedBy": "MQSznptE5yLT7kj8", - "modifiedTime": 1754143653876 + "systemVersion": "1.1.2", + "lastModifiedBy": "mdk78Q6pOyHh6aBg", + "modifiedTime": 1756510879809 }, "_key": "!actors.items!89yAh30vaNQOALlz.UpFsnlbZkyvM2Ftv" }, diff --git a/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json b/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json index e519b193..d4554bf9 100644 --- a/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json +++ b/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json @@ -264,14 +264,14 @@ "name": "Crushing Blows", "type": "feature", "system": { - "description": "

When the Elemental makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Elemental makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "resource": null, "actions": { "0sXciTiPc30v8czv": { "type": "damage", "_id": "0sXciTiPc30v8czv", "systemPath": "actions", - "description": "

When the Elemental makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Elemental makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -337,12 +337,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754127683751, - "modifiedTime": 1754127795809, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756511006257, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_key": "!actors.items!dsfB3YhoL5SudvS2.NnCkXIuATO0s3tSR" }, diff --git a/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json b/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json index af630cdd..6a986acd 100644 --- a/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json +++ b/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json @@ -270,14 +270,14 @@ "name": "Acidic Form", "type": "feature", "system": { - "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "resource": null, "actions": { "gtT2oHSyZg9OHHJD": { "type": "damage", "_id": "gtT2oHSyZg9OHHJD", "systemPath": "actions", - "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -343,12 +343,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754129153649, - "modifiedTime": 1754129204931, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756510982337, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_key": "!actors.items!6hbqmxDXFOzZJDk4.BQsVuuwFYByKwesR" }, diff --git a/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json b/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json index be94d1bd..06227cd5 100644 --- a/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json +++ b/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json @@ -224,14 +224,14 @@ "_id": "WpOh5kHHx7lcTvEY", "img": "icons/magic/acid/dissolve-drip-droplet-smoke.webp", "system": { - "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "resource": null, "actions": { "HfK0u0c7NRppuF1Q": { "type": "damage", "_id": "HfK0u0c7NRppuF1Q", "systemPath": "actions", - "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -296,12 +296,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754055148507, - "modifiedTime": 1754145130460, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756510967769, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_key": "!actors.items!aLkLFuVoKz2NLoBK.WpOh5kHHx7lcTvEY" } From 31238113c994c5c0aa81af25aa8de6333db3ad6b Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Sat, 30 Aug 2025 17:44:16 +0200 Subject: [PATCH 042/260] Fix/1116 fix action nullable fields (#1117) * Temp ActionField attack type missing * Move missing attack type to getModel * Damage/Healing fields nullable fix * Fix TargetField null value * Other fixes * Fix Action type to be not nullable --- module/data/action/baseAction.mjs | 3 ++- module/data/fields/action/damageField.mjs | 12 ++++++++++-- module/data/fields/action/rollField.mjs | 12 +++++++++--- module/data/fields/action/saveField.mjs | 4 +++- module/data/fields/action/targetField.mjs | 3 ++- 5 files changed, 26 insertions(+), 8 deletions(-) diff --git a/module/data/action/baseAction.mjs b/module/data/action/baseAction.mjs index 2f5935da..7ea7331a 100644 --- a/module/data/action/baseAction.mjs +++ b/module/data/action/baseAction.mjs @@ -32,7 +32,8 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel actionType: new fields.StringField({ choices: CONFIG.DH.ITEM.actionTypes, initial: 'action', - nullable: true + nullable: false, + required: true }) }; diff --git a/module/data/fields/action/damageField.mjs b/module/data/fields/action/damageField.mjs index 810b6e76..e870e229 100644 --- a/module/data/fields/action/damageField.mjs +++ b/module/data/fields/action/damageField.mjs @@ -22,10 +22,18 @@ export class DHActionDiceData extends foundry.abstract.DataModel { multiplier: new fields.StringField({ choices: CONFIG.DH.GENERAL.multiplierTypes, initial: 'prof', - label: 'Multiplier' + label: 'Multiplier', + nullable: false, + required: true }), flatMultiplier: new fields.NumberField({ nullable: true, initial: 1, label: 'Flat Multiplier' }), - dice: new fields.StringField({ choices: CONFIG.DH.GENERAL.diceTypes, initial: 'd6', label: 'Dice' }), + dice: new fields.StringField({ + choices: CONFIG.DH.GENERAL.diceTypes, + initial: 'd6', + label: 'Dice', + nullable: false, + required: true + }), bonus: new fields.NumberField({ nullable: true, initial: null, label: 'Bonus' }), custom: new fields.SchemaField({ enabled: new fields.BooleanField({ label: 'Custom Formula' }), diff --git a/module/data/fields/action/rollField.mjs b/module/data/fields/action/rollField.mjs index a4df2a9e..07a113d3 100644 --- a/module/data/fields/action/rollField.mjs +++ b/module/data/fields/action/rollField.mjs @@ -10,13 +10,17 @@ export class DHActionRollData extends foundry.abstract.DataModel { bonus: new fields.NumberField({ nullable: true, initial: null, integer: true }), advState: new fields.StringField({ choices: CONFIG.DH.ACTIONS.advantageState, - initial: 'neutral' + initial: 'neutral', + nullable: false, + required: true }), diceRolling: new fields.SchemaField({ multiplier: new fields.StringField({ choices: CONFIG.DH.GENERAL.diceSetNumbers, initial: 'prof', - label: 'DAGGERHEART.ACTIONS.RollField.diceRolling.multiplier' + label: 'DAGGERHEART.ACTIONS.RollField.diceRolling.multiplier', + nullable: false, + required: true }), flatMultiplier: new fields.NumberField({ nullable: true, @@ -26,7 +30,9 @@ export class DHActionRollData extends foundry.abstract.DataModel { dice: new fields.StringField({ choices: CONFIG.DH.GENERAL.diceTypes, initial: CONFIG.DH.GENERAL.diceTypes.d6, - label: 'DAGGERHEART.ACTIONS.RollField.diceRolling.dice' + label: 'DAGGERHEART.ACTIONS.RollField.diceRolling.dice', + nullable: false, + required: true }), compare: new fields.StringField({ choices: CONFIG.DH.ACTIONS.diceCompare, diff --git a/module/data/fields/action/saveField.mjs b/module/data/fields/action/saveField.mjs index e93a82a9..23378e05 100644 --- a/module/data/fields/action/saveField.mjs +++ b/module/data/fields/action/saveField.mjs @@ -11,7 +11,9 @@ export default class SaveField extends fields.SchemaField { difficulty: new fields.NumberField({ nullable: true, initial: null, integer: true, min: 0 }), damageMod: new fields.StringField({ initial: CONFIG.DH.ACTIONS.damageOnSave.none.id, - choices: CONFIG.DH.ACTIONS.damageOnSave + choices: CONFIG.DH.ACTIONS.damageOnSave, + nullable: false, + required: true }) }; super(saveFields, options, context); diff --git a/module/data/fields/action/targetField.mjs b/module/data/fields/action/targetField.mjs index bfb01db9..9dbf1ed9 100644 --- a/module/data/fields/action/targetField.mjs +++ b/module/data/fields/action/targetField.mjs @@ -6,7 +6,8 @@ export default class TargetField extends fields.SchemaField { type: new fields.StringField({ choices: CONFIG.DH.GENERAL.targetTypes, initial: CONFIG.DH.GENERAL.targetTypes.any.id, - nullable: true + nullable: true, + blank: true }), amount: new fields.NumberField({ nullable: true, initial: null, integer: true, min: 0 }) }; From 179dd3e6c32452049d284837aefa9aa92b418f6c Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Tue, 2 Sep 2025 10:50:48 +1000 Subject: [PATCH 043/260] Fix the typos related to the Protective feature on Round Shields (#1131) Co-authored-by: Chris Ryan --- ...Advanced_Round_Shield_hiEOGF2reabGLUoi.json | 18 ++++++++++++------ ...Improved_Round_Shield_DlinEBGZfIlvreO3.json | 18 ++++++++++++------ ...egendary_Round_Shield_A28WL9E2lJ3iLZHW.json | 18 ++++++++++++------ .../weapon_Round_Shield_mxwWKDujgsRcZWPT.json | 18 ++++++++++++------ 4 files changed, 48 insertions(+), 24 deletions(-) diff --git a/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json b/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json index 9240fbaf..efcd890b 100644 --- a/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json +++ b/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json @@ -105,13 +105,14 @@ "effects": [ { "name": "Protective", - "description": "Add your character's Tier to your Armor Score", + "description": "

Add the item's Tier to your Armor Score

", "img": "icons/skills/melee/shield-block-gray-orange.webp", "changes": [ { "key": "system.armorScore", "mode": 2, - "value": "ITEM.@system.tier" + "value": "ITEM.@system.tier", + "priority": null } ], "_id": "i5HfkF5aKQuUCTEG", @@ -120,7 +121,12 @@ "disabled": false, "duration": { "startTime": null, - "combat": null + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null }, "origin": null, "tint": "#ffffff", @@ -132,12 +138,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753794875150, - "modifiedTime": 1753794875150, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1756682958806, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_key": "!items.effects!hiEOGF2reabGLUoi.i5HfkF5aKQuUCTEG" } diff --git a/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json b/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json index 49be7813..41a85d9f 100644 --- a/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json +++ b/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json @@ -105,13 +105,14 @@ "effects": [ { "name": "Protective", - "description": "Add your character's Tier to your Armor Score", + "description": "

Add the item's Tier to your Armor Score

", "img": "icons/skills/melee/shield-block-gray-orange.webp", "changes": [ { "key": "system.armorScore", "mode": 2, - "value": "ITEM.@system.tier" + "value": "ITEM.@system.tier", + "priority": null } ], "_id": "cXWSV50apzaNQkdA", @@ -120,7 +121,12 @@ "disabled": false, "duration": { "startTime": null, - "combat": null + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null }, "origin": null, "tint": "#ffffff", @@ -132,12 +138,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753794098464, - "modifiedTime": 1753794098464, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1756682973559, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_key": "!items.effects!DlinEBGZfIlvreO3.cXWSV50apzaNQkdA" } diff --git a/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json b/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json index 421df201..5b768985 100644 --- a/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json +++ b/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json @@ -105,13 +105,14 @@ "effects": [ { "name": "Protective", - "description": "Add your character's Tier to your Armor Score", + "description": "

Add the item's Tier to your Armor Score

", "img": "icons/skills/melee/shield-block-gray-orange.webp", "changes": [ { "key": "system.armorScore", "mode": 2, - "value": "ITEM.@system.tier" + "value": "ITEM.@system.tier", + "priority": null } ], "_id": "Z2p00q5h6x6seXys", @@ -120,7 +121,12 @@ "disabled": false, "duration": { "startTime": null, - "combat": null + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null }, "origin": null, "tint": "#ffffff", @@ -132,12 +138,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753796983285, - "modifiedTime": 1753796983285, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1756682777682, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_key": "!items.effects!A28WL9E2lJ3iLZHW.Z2p00q5h6x6seXys" } diff --git a/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json b/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json index c49aa7dd..5ba5de2b 100644 --- a/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json +++ b/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json @@ -105,13 +105,14 @@ "effects": [ { "name": "Protective", - "description": "Add your character's Tier to your Armor Score", + "description": "

Add the item's Tier to your Armor Score.

", "img": "icons/skills/melee/shield-block-gray-orange.webp", "changes": [ { "key": "system.armorScore", "mode": 2, - "value": "ITEM.@system.tier" + "value": "ITEM.@system.tier", + "priority": null } ], "_id": "M70a81e0Mg66jHRL", @@ -120,7 +121,12 @@ "disabled": false, "duration": { "startTime": null, - "combat": null + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null }, "origin": null, "tint": "#ffffff", @@ -132,12 +138,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753794114980, - "modifiedTime": 1753794114980, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1756682994216, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_key": "!items.effects!mxwWKDujgsRcZWPT.M70a81e0Mg66jHRL" } From 1b9defe4ad960afef9d38695df8de1d0ad8c2a1e Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Tue, 2 Sep 2025 23:00:46 +1000 Subject: [PATCH 044/260] The uuid is expected, not id (#1132) Co-authored-by: Chris Ryan --- module/applications/sheets/api/application-mixin.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/applications/sheets/api/application-mixin.mjs b/module/applications/sheets/api/application-mixin.mjs index bdcee27a..fc158ace 100644 --- a/module/applications/sheets/api/application-mixin.mjs +++ b/module/applications/sheets/api/application-mixin.mjs @@ -401,7 +401,7 @@ export default function DHApplicationMixin(Base) { options.push({ name: 'DAGGERHEART.APPLICATIONS.ContextMenu.sendToChat', icon: 'fa-solid fa-message', - callback: async target => (await getDocFromElement(target)).toChat(this.document.id) + callback: async target => (await getDocFromElement(target)).toChat(this.document.uuid) }); if (deletable) From 3c893df175e463538a5d6bc079fede4ef7ea8d61 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Tue, 2 Sep 2025 23:26:32 +1000 Subject: [PATCH 045/260] Fix the missing translation keys (#1133) Co-authored-by: Chris Ryan --- module/config/generalConfig.mjs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/module/config/generalConfig.mjs b/module/config/generalConfig.mjs index 34ca6009..60b3a2f1 100644 --- a/module/config/generalConfig.mjs +++ b/module/config/generalConfig.mjs @@ -574,17 +574,17 @@ export const abilityCosts = { }, hope: { id: 'hope', - label: 'Hope', + label: 'DAGGERHEART.CONFIG.HealingType.hope.name', group: 'TYPES.Actor.character' }, armor: { id: 'armor', - label: 'Armor Slot', + label: 'DAGGERHEART.CONFIG.HealingType.armor.name', group: 'TYPES.Actor.character' }, fear: { id: 'fear', - label: 'Fear', + label: 'DAGGERHEART.CONFIG.HealingType.fear.name', group: 'TYPES.Actor.adversary' } }; From 3f08741a34a0c065657067e7e9bebe2e69efcfd2 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Wed, 3 Sep 2025 13:54:41 +1000 Subject: [PATCH 046/260] Use less ambiguous sort direction symbols (#1108) * Use less ambiguous sort direction symbols * Up arrow for ascending, small bar at top, large bar at bottom; Down arrow for descending, large bar at top, small bar at bottom * Using matching icons * Switch the order --------- Co-authored-by: Chris Ryan --- styles/less/ui/item-browser/item-browser.less | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/styles/less/ui/item-browser/item-browser.less b/styles/less/ui/item-browser/item-browser.less index 70a64d89..5df0482a 100644 --- a/styles/less/ui/item-browser/item-browser.less +++ b/styles/less/ui/item-browser/item-browser.less @@ -279,11 +279,11 @@ } &[data-sort-type='ASC']:after { - content: '\f0d7'; + content: '\f884'; } &[data-sort-type='DESC']:after { - content: '\f0d8'; + content: '\f885'; } } } From 0bd423ef5274d02c7cfd6d250bbe255d3d998df1 Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Wed, 3 Sep 2025 13:42:18 +0200 Subject: [PATCH 047/260] fix (#1143) --- module/data/chat-message/actorRoll.mjs | 11 ++++++++--- module/data/fields/action/damageField.mjs | 4 ++-- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/module/data/chat-message/actorRoll.mjs b/module/data/chat-message/actorRoll.mjs index b6512fbd..91f44edc 100644 --- a/module/data/chat-message/actorRoll.mjs +++ b/module/data/chat-message/actorRoll.mjs @@ -55,9 +55,14 @@ export default class DHActorRoll extends foundry.abstract.TypeDataModel { } get action() { - const actionItem = this.actionItem; - if (!actionItem || !this.source.action) return null; - return actionItem.system.actionsList?.find(a => a.id === this.source.action); + const actionActor = this.actionActor, + actionItem = this.actionItem; + if (!this.source.action) return null; + if(actionItem) + return actionItem.system.actionsList?.find(a => a.id === this.source.action); + else if(actionActor?.system.attack?._id === this.source.action) + return actionActor.system.attack + return null; } get targetMode() { diff --git a/module/data/fields/action/damageField.mjs b/module/data/fields/action/damageField.mjs index db43cfb0..816d9cbc 100644 --- a/module/data/fields/action/damageField.mjs +++ b/module/data/fields/action/damageField.mjs @@ -57,8 +57,8 @@ export default class DamageField extends fields.SchemaField { damageConfig.source.message = config.message?._id ?? messageId; damageConfig.directDamage = !!damageConfig.source?.message; - if(damageConfig.source?.message && game.modules.get('dice-so-nice')?.active) - await game.dice3d.waitFor3DAnimationByMessageID(damageConfig.source.message); + // if(damageConfig.source?.message && game.modules.get('dice-so-nice')?.active) + // await game.dice3d.waitFor3DAnimationByMessageID(damageConfig.source.message); const damageResult = await CONFIG.Dice.daggerheart.DamageRoll.build(damageConfig); if(!damageResult) return false; From f04619f73b169b03df0fd1e6b27721512f9bfe13 Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Fri, 5 Sep 2025 02:45:05 +0200 Subject: [PATCH 048/260] Fix/1144 fix experiences roll use costs (#1150) * Temp ActionField attack type missing * Move missing attack type to getModel * Fix costs object being updated during getRealCosts --- module/data/fields/action/costField.mjs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/module/data/fields/action/costField.mjs b/module/data/fields/action/costField.mjs index f4d942b1..4c8fad88 100644 --- a/module/data/fields/action/costField.mjs +++ b/module/data/fields/action/costField.mjs @@ -94,7 +94,8 @@ export default class CostField extends fields.ArrayField { } static getRealCosts(costs) { - const realCosts = costs?.length ? costs.filter(c => c.enabled) : []; + const cloneCosts = foundry.utils.deepClone(costs), + realCosts = cloneCosts?.length ? cloneCosts.filter(c => c.enabled) : []; let mergedCosts = []; realCosts.forEach(c => { const getCost = Object.values(mergedCosts).find(gc => gc.key === c.key); From 2d92576121115f55ec42953890ad97db5130d66e Mon Sep 17 00:00:00 2001 From: Dapoulp <74197441+Dapoulp@users.noreply.github.com> Date: Fri, 5 Sep 2025 02:56:38 +0200 Subject: [PATCH 049/260] Fix/1149 fix targets apply effects (#1151) * Temp ActionField attack type missing * Move missing attack type to getModel * Fix targets apply effects --- module/documents/chatMessage.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/documents/chatMessage.mjs b/module/documents/chatMessage.mjs index b8667384..3567cb90 100644 --- a/module/documents/chatMessage.mjs +++ b/module/documents/chatMessage.mjs @@ -169,7 +169,7 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { if (this.system.source.item && this.system.source.action) { const action = this.getAction(actor, this.system.source.item, this.system.source.action); if (!action || !action?.applyEffects) return; - const targets = this.getTargetList(); + const targets = this.system.hitTargets; if (targets.length === 0) ui.notifications.info(game.i18n.localize('DAGGERHEART.UI.Notifications.noTargetsSelected')); this.consumeOnSuccess(); From eefb28c312155d347656ac0dabb594166f63050e Mon Sep 17 00:00:00 2001 From: joaquinpereyra98 <24190917+joaquinpereyra98@users.noreply.github.com> Date: Thu, 4 Sep 2025 22:09:47 -0300 Subject: [PATCH 050/260] [REFACTOR] Simplify the DHAppearanceSettings (#1057) Co-authored-by: Joaquin Pereyra --- lang/en.json | 51 +++-- .../settings/appearanceSettings.mjs | 215 +++++++++++------- module/data/settings/Appearance.mjs | 125 +++------- module/systemRegistration/settings.mjs | 2 +- templates/settings/appearance-settings.hbs | 116 ---------- .../appearance-settings/diceSoNice.hbs | 67 ++++++ .../settings/appearance-settings/header.hbs | 3 + .../settings/appearance-settings/main.hbs | 46 ++++ 8 files changed, 327 insertions(+), 298 deletions(-) delete mode 100644 templates/settings/appearance-settings.hbs create mode 100644 templates/settings/appearance-settings/diceSoNice.hbs create mode 100644 templates/settings/appearance-settings/header.hbs create mode 100644 templates/settings/appearance-settings/main.hbs diff --git a/lang/en.json b/lang/en.json index 82ffac7a..d5c4f037 100755 --- a/lang/en.json +++ b/lang/en.json @@ -2152,20 +2152,43 @@ "SETTINGS": { "Appearance": { "FIELDS": { - "displayFear": { "label": "Fear Display" }, - "dualityColorScheme": { "label": "Chat Style" }, - "hideAttribution": { "label": "Hide Attribution" }, + "displayFear": { + "label": "Display Fear" + }, + "showGenericStatusEffects": { + "label": "Show Foundry Status Effects" + }, + "hideAttribution": { + "label": "Hide Attribution" + }, "expandedTitle": "Auto-expand Descriptions", - "extendCharacterDescriptions": { "label": "Characters" }, - "extendAdversaryDescriptions": { "label": "Adversaries" }, - "extendEnvironmentDescriptions": { "label": "Environments" }, - "extendItemDescriptions": { "label": "Items" }, - "expandRollMessage": "Auto-expand Message Sections", - "expandRollMessageDesc": { "label": "Description" }, - "expandRollMessageRoll": { "label": "Formula" }, - "expandRollMessageDamage": { "label": "Damage/Healing" }, - "expandRollMessageTarget": { "label": "Target" }, - "showGenericStatusEffects": { "label": "Show Foundry Status Effects" } + "extendCharacterDescriptions": { + "label": "Characters" + }, + "extendAdversaryDescriptions": { + "label": "Adversaries" + }, + "extendEnvironmentDescriptions": { + "label": "Environments" + }, + "extendItemDescriptions": { + "label": "Items" + }, + "expandRollMessage": { + "title": "Auto-expand Message Sections", + "desc": { + "label": "Description" + }, + "roll": { + "label": "Formula" + }, + "damage": { + "label": "Damage/Healing" + }, + "target": { + "label": "Target" + } + } }, "fearDisplay": { "token": "Tokens", @@ -2310,10 +2333,8 @@ "hint": "System ruler setup for displaying ranges in Daggerheart" }, "appearance": { - "title": "Appearance Settings", "label": "Appearance Settings", "hint": "Modify the look of various parts of the system", - "name": "Appearance Settings", "duality": "Duality Rolls", "diceSoNice": { "title": "Dice So Nice", diff --git a/module/applications/settings/appearanceSettings.mjs b/module/applications/settings/appearanceSettings.mjs index f0310477..bbc27a79 100644 --- a/module/applications/settings/appearanceSettings.mjs +++ b/module/applications/settings/appearanceSettings.mjs @@ -3,43 +3,48 @@ import { getDiceSoNicePreset } from '../../config/generalConfig.mjs'; const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; +/** + * @import {ApplicationClickAction} from "@client/applications/_types.mjs" + */ + export default class DHAppearanceSettings extends HandlebarsApplicationMixin(ApplicationV2) { - constructor() { - super({}); - - this.settings = new DhAppearance( - game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance).toObject() - ); - } - - get title() { - return game.i18n.localize('DAGGERHEART.SETTINGS.Menu.title'); - } - + /**@inheritdoc */ static DEFAULT_OPTIONS = { tag: 'form', id: 'daggerheart-appearance-settings', classes: ['daggerheart', 'dialog', 'dh-style', 'setting'], position: { width: '600', height: 'auto' }, window: { + title: 'DAGGERHEART.SETTINGS.Menu.title', icon: 'fa-solid fa-gears' }, actions: { - reset: this.reset, - save: this.save, - preview: this.preview + reset: DHAppearanceSettings.#onReset, + preview: DHAppearanceSettings.#onPreview }, - form: { handler: this.updateData, submitOnChange: true } + form: { + closeOnSubmit: true, + handler: DHAppearanceSettings.#onSubmit + } }; static PARTS = { - main: { - template: 'systems/daggerheart/templates/settings/appearance-settings.hbs' - } + header: { template: 'systems/daggerheart/templates/settings/appearance-settings/header.hbs' }, + tabs: { template: 'systems/daggerheart/templates/sheets/global/tabs/tab-navigation.hbs' }, + main: { template: 'systems/daggerheart/templates/settings/appearance-settings/main.hbs' }, + diceSoNice: { template: 'systems/daggerheart/templates/settings/appearance-settings/diceSoNice.hbs' }, + footer: { template: "templates/generic/form-footer.hbs" } }; /** @inheritdoc */ static TABS = { + general: { + tabs: [ + { id: 'main', label: 'DAGGERHEART.GENERAL.Tabs.general' }, + { id: 'diceSoNice', label: 'DAGGERHEART.SETTINGS.Menu.appearance.diceSoNice.title' }, + ], + initial: 'main' + }, diceSoNice: { tabs: [ { id: 'hope', label: 'DAGGERHEART.GENERAL.hope' }, @@ -51,79 +56,137 @@ export default class DHAppearanceSettings extends HandlebarsApplicationMixin(App } }; - changeTab(tab, group, options) { - super.changeTab(tab, group, options); + /**@type {DhAppearance}*/ + setting; - this.render(); + static #localized = false; + + /** @inheritDoc */ + async _preFirstRender(_context, _options) { + await super._preFirstRender(_context, _options); + if (!DHAppearanceSettings.#localized) { + foundry.helpers.Localization.localizeDataModel(this.setting.constructor); + DHAppearanceSettings.#localized = true; + } } - async _prepareContext(_options) { - const context = await super._prepareContext(_options); - context.settingFields = this.settings; - - context.showDiceSoNice = game.modules.get('dice-so-nice')?.active; - if (game.dice3d) { - context.diceSoNiceTextures = game.dice3d.exports.TEXTURELIST; - context.diceSoNiceColorsets = game.dice3d.exports.COLORSETS; - context.diceSoNiceMaterials = Object.keys(game.dice3d.DiceFactory.material_options).map(key => ({ - key: key, - name: `DICESONICE.Material${key.capitalize()}` - })); - context.diceSoNiceSystems = []; - for (const [key, system] of game.dice3d.DiceFactory.systems.entries()) { - context.diceSoNiceSystems.push({ key, name: system.name }); - } + /** @inheritdoc */ + _configureRenderParts(options) { + const parts = super._configureRenderParts(options); + if (!game.modules.get('dice-so-nice')?.active){ + delete parts.diceSoNice; + delete parts.tabs; } + return parts; + } - context.diceTab = { - key: this.tabGroups.diceSoNice, - source: this.settings._source.diceSoNice[this.tabGroups.diceSoNice], - fields: this.settings.schema.fields.diceSoNice.fields[this.tabGroups.diceSoNice].fields - }; + /**@inheritdoc */ + async _prepareContext(options) { + const context = await super._prepareContext(options); + if (options.isFirstRender) this.setting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance); + + context.setting = this.setting; + context.fields = this.setting.schema.fields; + + context.tabs = this._prepareTabs('general'); + context.dsnTabs = this._prepareTabs('diceSoNice'); return context; } - static async updateData(event, element, formData) { - const updatedSettings = foundry.utils.expandObject(formData.object); + /**@inheritdoc */ + async _preparePartContext(partId, context, options) { + const partContext = await super._preparePartContext(partId, context, options); + if (partId in context.tabs) partContext.tab = partContext.tabs[partId]; + switch (partId) { + case "diceSoNice": + await this.prepareDiceSoNiceContext(partContext); + break; + case "footer": + partContext.buttons = [ + { type: "button", action: "reset", icon: "fa-solid fa-arrow-rotate-left", label: "Reset" }, + { type: "submit", icon: "fa-solid fa-floppy-disk", label: "Save Changes" } + ]; + break; + } + return partContext; - await this.settings.updateSource(updatedSettings); - this.render(); } - static async preview() { - const source = this.settings._source.diceSoNice[this.tabGroups.diceSoNice]; - let faces = 'd12'; - switch (this.tabGroups.diceSoNice) { - case 'advantage': - case 'disadvantage': - faces = 'd6'; - } - const preset = await getDiceSoNicePreset(source, faces); - const diceSoNiceRoll = await new Roll(`1${faces}`).evaluate(); + /** + * Prepare render context for the DSN part. + * @param {ApplicationRenderContext} context + * @returns {Promise} + * @protected + */ + async prepareDiceSoNiceContext(context) { + context.diceSoNiceTextures = Object.entries(game.dice3d.exports.TEXTURELIST).reduce((acc, [k, v]) => ({ + ...acc, + [k]: v.name + }), {}); + context.diceSoNiceColorsets = Object.values(game.dice3d.exports.COLORSETS).reduce((acc, v) => ({ + ...acc, + [v.id]: v.description + }), {}); + context.diceSoNiceMaterials = Object.keys(game.dice3d.DiceFactory.material_options).reduce((acc, key) => ({ + ...acc, + [key]: `DICESONICE.Material${key.capitalize()}` + }), {}); + context.diceSoNiceSystems = Object.fromEntries([...game.dice3d.DiceFactory.systems].map(([k, v]) => [k, v.name])); + + foundry.utils.mergeObject(context.dsnTabs, [ + "hope", + "fear", + "advantage", + "disadvantage", + ].reduce((acc, key) => ({ + ...acc, + [key]: { + values: this.setting.diceSoNice[key], + fields: this.setting.schema.getField(`diceSoNice.${key}`).fields, + } + }), {})); + } + + /** + * Submit the configuration form. + * @this {DHAppearanceSettings} + * @param {SubmitEvent} event + * @param {HTMLFormElement} form + * @param {foundry.applications.ux.FormDataExtended} formData + * @returns {Promise} + */ + static async #onSubmit(event, form, formData) { + const data = this.setting.schema.clean(foundry.utils.expandObject(formData.object)); + await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance, data); + } + + /* -------------------------------------------- */ + + /** + * Submit the configuration form. + * @this {DHAppearanceSettings} + * @type {ApplicationClickAction} + */ + static async #onPreview(_, target) { + const formData = new foundry.applications.ux.FormDataExtended(target.closest("form")); + const { diceSoNice } = foundry.utils.expandObject(formData.object); + const { key } = target.dataset; + const faces = ['advantage', 'disadvantage'].includes(key) ? 'd6' : 'd12'; + const preset = await getDiceSoNicePreset(diceSoNice[key], faces); + const diceSoNiceRoll = await new foundry.dice.Roll(`1${faces}`).evaluate(); diceSoNiceRoll.dice[0].options.appearance = preset.appearance; diceSoNiceRoll.dice[0].options.modelFile = preset.modelFile; - await game.dice3d.showForRoll(diceSoNiceRoll, game.user, false); } - static async reset() { - this.settings = new DhAppearance(); - this.render(); - } - - static async save() { - await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance, this.settings.toObject()); - - this.close(); - } - - _getTabs(tabs) { - for (const v of Object.values(tabs)) { - v.active = this.tabGroups[v.group] ? this.tabGroups[v.group] === v.id : v.active; - v.cssClass = v.active ? 'active' : ''; - } - - return tabs; + /** + * Reset the form back to default values. + * @this {DHAppearanceSettings} + * @type {ApplicationClickAction} + */ + static async #onReset() { + this.setting = new this.setting.constructor(); + this.render({ force: false }); } } diff --git a/module/data/settings/Appearance.mjs b/module/data/settings/Appearance.mjs index 36f6bb5a..4c6e01ea 100644 --- a/module/data/settings/Appearance.mjs +++ b/module/data/settings/Appearance.mjs @@ -1,100 +1,45 @@ -import { fearDisplay } from '../../config/generalConfig.mjs'; - export default class DhAppearance extends foundry.abstract.DataModel { + static LOCALIZATION_PREFIXES = ["DAGGERHEART.SETTINGS.Appearance"]; + static defineSchema() { - const fields = foundry.data.fields; + const { StringField, ColorField, BooleanField, SchemaField } = foundry.data.fields; + + // helper to create dice style schema + const diceStyle = ({ fg, bg, outline, edge }) => new SchemaField({ + foreground: new ColorField({ required: true, initial: fg }), + background: new ColorField({ required: true, initial: bg }), + outline: new ColorField({ required: true, initial: outline }), + edge: new ColorField({ required: true, initial: edge }), + texture: new StringField({ initial: 'astralsea', required: true, blank: false }), + colorset: new StringField({ initial: 'inspired', required: true, blank: false }), + material: new StringField({ initial: 'metal', required: true, blank: false }), + system: new StringField({ initial: 'standard', required: true, blank: false }) + }); + return { - displayFear: new fields.StringField({ + displayFear: new StringField({ required: true, - choices: fearDisplay, - initial: fearDisplay.token.value, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.displayFear.label' + choices: CONFIG.DH.GENERAL.fearDisplay, + initial: CONFIG.DH.GENERAL.fearDisplay.token.value, }), - diceSoNice: new fields.SchemaField({ - hope: new fields.SchemaField({ - foreground: new fields.ColorField({ required: true, initial: '#ffffff' }), - background: new fields.ColorField({ required: true, initial: '#ffe760' }), - outline: new fields.ColorField({ required: true, initial: '#000000' }), - edge: new fields.ColorField({ required: true, initial: '#ffffff' }), - texture: new fields.StringField({ initial: 'astralsea' }), - colorset: new fields.StringField({ initial: 'inspired' }), - material: new fields.StringField({ initial: 'metal' }), - system: new fields.StringField({ initial: 'standard' }) - }), - fear: new fields.SchemaField({ - foreground: new fields.ColorField({ required: true, initial: '#000000' }), - background: new fields.ColorField({ required: true, initial: '#0032b1' }), - outline: new fields.ColorField({ required: true, initial: '#ffffff' }), - edge: new fields.ColorField({ required: true, initial: '#000000' }), - texture: new fields.StringField({ initial: 'astralsea' }), - colorset: new fields.StringField({ initial: 'inspired' }), - material: new fields.StringField({ initial: 'metal' }), - system: new fields.StringField({ initial: 'standard' }) - }), - advantage: new fields.SchemaField({ - foreground: new fields.ColorField({ required: true, initial: '#ffffff' }), - background: new fields.ColorField({ required: true, initial: '#008000' }), - outline: new fields.ColorField({ required: true, initial: '#000000' }), - edge: new fields.ColorField({ required: true, initial: '#ffffff' }), - texture: new fields.StringField({ initial: 'astralsea' }), - colorset: new fields.StringField({ initial: 'inspired' }), - material: new fields.StringField({ initial: 'metal' }), - system: new fields.StringField({ initial: 'standard' }) - }), - disadvantage: new fields.SchemaField({ - foreground: new fields.ColorField({ required: true, initial: '#000000' }), - background: new fields.ColorField({ required: true, initial: '#b30000' }), - outline: new fields.ColorField({ required: true, initial: '#ffffff' }), - edge: new fields.ColorField({ required: true, initial: '#000000' }), - texture: new fields.StringField({ initial: 'astralsea' }), - colorset: new fields.StringField({ initial: 'inspired' }), - material: new fields.StringField({ initial: 'metal' }), - system: new fields.StringField({ initial: 'standard' }) - }) + diceSoNice: new SchemaField({ + hope: diceStyle({ fg: '#ffffff', bg: '#ffe760', outline: '#000000', edge: '#ffffff' }), + fear: diceStyle({ fg: '#000000', bg: '#0032b1', outline: '#ffffff', edge: '#000000' }), + advantage: diceStyle({ fg: '#ffffff', bg: '#008000', outline: '#000000', edge: '#ffffff' }), + disadvantage: diceStyle({ fg: '#000000', bg: '#b30000', outline: '#ffffff', edge: '#000000' }) }), - showGenericStatusEffects: new fields.BooleanField({ - initial: true, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.showGenericStatusEffects.label' + extendCharacterDescriptions: new BooleanField(), + extendAdversaryDescriptions: new BooleanField(), + extendEnvironmentDescriptions: new BooleanField(), + extendItemDescriptions: new BooleanField(), + expandRollMessage: new SchemaField({ + desc: new BooleanField(), + roll: new BooleanField(), + damage: new BooleanField(), + target: new BooleanField() }), - extendCharacterDescriptions: new fields.BooleanField({ - initial: false, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.extendCharacterDescriptions.label' - }), - extendAdversaryDescriptions: new fields.BooleanField({ - initial: false, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.extendAdversaryDescriptions.label' - }), - extendEnvironmentDescriptions: new fields.BooleanField({ - initial: false, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.extendEnvironmentDescriptions.label' - }), - extendItemDescriptions: new fields.BooleanField({ - initial: false, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.extendItemDescriptions.label' - }), - expandRollMessage: new fields.SchemaField({ - desc: new fields.BooleanField({ - initial: false, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageDesc.label' - }), - roll: new fields.BooleanField({ - initial: false, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageRoll.label' - }), - damage: new fields.BooleanField({ - initial: false, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageDamage.label' - }), - target: new fields.BooleanField({ - initial: false, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessageTarget.label' - }) - }), - hideAttribution: new fields.BooleanField({ - required: true, - initial: false, - label: 'DAGGERHEART.SETTINGS.Appearance.FIELDS.hideAttribution.label' - }) + hideAttribution: new BooleanField(), + showGenericStatusEffects: new BooleanField({ initial: true }), }; } } diff --git a/module/systemRegistration/settings.mjs b/module/systemRegistration/settings.mjs index 4828ebb0..565a7740 100644 --- a/module/systemRegistration/settings.mjs +++ b/module/systemRegistration/settings.mjs @@ -72,7 +72,7 @@ const registerMenus = () => { }); game.settings.registerMenu(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance, { - name: game.i18n.localize('DAGGERHEART.SETTINGS.Menu.appearance.title'), + name: game.i18n.localize('DAGGERHEART.SETTINGS.Menu.appearance.label'), label: game.i18n.localize('DAGGERHEART.SETTINGS.Menu.appearance.label'), hint: game.i18n.localize('DAGGERHEART.SETTINGS.Menu.appearance.hint'), icon: 'fa-solid fa-palette', diff --git a/templates/settings/appearance-settings.hbs b/templates/settings/appearance-settings.hbs deleted file mode 100644 index aa094d69..00000000 --- a/templates/settings/appearance-settings.hbs +++ /dev/null @@ -1,116 +0,0 @@ -
-
-

{{localize 'DAGGERHEART.SETTINGS.Menu.appearance.name'}}

-
- - {{formGroup settingFields.schema.fields.hideAttribution value=settingFields._source.hideAttribution localize=true}} - -
- {{localize 'DAGGERHEART.GENERAL.fear'}} - {{formGroup settingFields.schema.fields.displayFear value=settingFields._source.displayFear localize=true}} - {{formGroup settingFields.schema.fields.showGenericStatusEffects value=settingFields._source.showGenericStatusEffects localize=true}} -
- -
- {{localize 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandedTitle'}} - {{formGroup settingFields.schema.fields.extendCharacterDescriptions value=settingFields._source.extendCharacterDescriptions localize=true}} - {{formGroup settingFields.schema.fields.extendAdversaryDescriptions value=settingFields._source.extendAdversaryDescriptions localize=true}} - {{formGroup settingFields.schema.fields.extendEnvironmentDescriptions value=settingFields._source.extendEnvironmentDescriptions localize=true}} - {{formGroup settingFields.schema.fields.extendItemDescriptions value=settingFields._source.extendItemDescriptions localize=true}} -
- -
- {{localize 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessage'}} - {{formGroup settingFields.schema.fields.expandRollMessage.fields.desc value=settingFields.expandRollMessage.desc localize=true}} - {{formGroup settingFields.schema.fields.expandRollMessage.fields.roll value=settingFields.expandRollMessage.roll localize=true}} - {{formGroup settingFields.schema.fields.expandRollMessage.fields.damage value=settingFields.expandRollMessage.damage localize=true}} - {{formGroup settingFields.schema.fields.expandRollMessage.fields.target value=settingFields.expandRollMessage.target localize=true}} -
- - {{#if showDiceSoNice}} -
- {{localize "DAGGERHEART.SETTINGS.Menu.appearance.diceSoNice.title"}} -
{{localize "DAGGERHEART.SETTINGS.Menu.appearance.diceSoNice.hint"}}
- -
- -
- -
-
- - -
- -
-
- - {{formInput diceTab.fields.foreground value=diceTab.source.foreground localize=true}} -
-
- - {{formInput diceTab.fields.background value=diceTab.source.background localize=true}} -
-
- - {{formInput diceTab.fields.outline value=diceTab.source.outline localize=true}} -
-
- - {{formInput diceTab.fields.edge value=diceTab.source.edge localize=true}} -
-
- - -
-
- - -
-
- - -
-
- -
-
-
-
- {{/if}} - -
- - -
-
- \ No newline at end of file diff --git a/templates/settings/appearance-settings/diceSoNice.hbs b/templates/settings/appearance-settings/diceSoNice.hbs new file mode 100644 index 00000000..6321332d --- /dev/null +++ b/templates/settings/appearance-settings/diceSoNice.hbs @@ -0,0 +1,67 @@ +
+
+
{{localize "DAGGERHEART.SETTINGS.Menu.appearance.diceSoNice.hint"}}
+ +
+ +
+ {{#each dsnTabs as |dsnTab|}} +
+
+
+ + {{formInput fields.system value=values.system localize=true choices=@root.diceSoNiceSystems}} +
+
+
+ + {{formInput fields.foreground value=values.foreground localize=true}} +
+
+ + {{formInput fields.background value=values.background localize=true}} +
+
+ + {{formInput fields.outline value=values.outline localize=true}} +
+
+ + {{formInput fields.edge value=values.edge localize=true}} +
+
+ + {{formInput fields.colorset value=values.colorset choices=@root.diceSoNiceColorsets localize=true}} +
+
+ + {{formInput fields.texture value=values.texture choices=@root.diceSoNiceTextures localize=true}} +
+
+ + {{formInput fields.material value=values.material choices=@root.diceSoNiceMaterials localize=true}} +
+
+ +
+
+
+
+ {{/each}} +
+
\ No newline at end of file diff --git a/templates/settings/appearance-settings/header.hbs b/templates/settings/appearance-settings/header.hbs new file mode 100644 index 00000000..110fd2b0 --- /dev/null +++ b/templates/settings/appearance-settings/header.hbs @@ -0,0 +1,3 @@ +
+

{{localize 'DAGGERHEART.SETTINGS.Menu.appearance.label'}}

+
\ No newline at end of file diff --git a/templates/settings/appearance-settings/main.hbs b/templates/settings/appearance-settings/main.hbs new file mode 100644 index 00000000..9cab271a --- /dev/null +++ b/templates/settings/appearance-settings/main.hbs @@ -0,0 +1,46 @@ +
+ {{formGroup + fields.displayFear + value=setting.displayFear + localize=true}} + {{formGroup + fields.showGenericStatusEffects + value=setting.showGenericStatusEffects + localize=true}} + {{formGroup + fields.hideAttribution + value=setting.hideAttribution + localize=true}} + +
+ {{localize 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandedTitle'}} + {{formGroup + fields.extendCharacterDescriptions + value=setting.extendCharacterDescriptions + localize=true}} + {{formGroup + fields.extendAdversaryDescriptions + value=setting.extendAdversaryDescriptions + localize=true}} + {{formGroup + fields.extendEnvironmentDescriptions + value=setting.extendEnvironmentDescriptions + localize=true}} + {{formGroup + fields.extendItemDescriptions + value=setting.extendItemDescriptions + localize=true}} +
+ +
+ {{localize 'DAGGERHEART.SETTINGS.Appearance.FIELDS.expandRollMessage.title'}} + {{formGroup fields.expandRollMessage.fields.desc value=setting.expandRollMessage.desc + localize=true}} + {{formGroup fields.expandRollMessage.fields.roll value=setting.expandRollMessage.roll + localize=true}} + {{formGroup fields.expandRollMessage.fields.damage + value=setting.expandRollMessage.damage localize=true}} + {{formGroup fields.expandRollMessage.fields.target + value=setting.expandRollMessage.target localize=true}} +
+
\ No newline at end of file From ec54da4e23847b4dfea82a3ab71ad9cacddba2c0 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Fri, 5 Sep 2025 23:47:12 +1000 Subject: [PATCH 051/260] Add and fix Tier names in level up (#1142) Co-authored-by: Chris Ryan --- lang/en.json | 3 +++ module/data/levelTier.mjs | 6 +++--- module/data/levelup.mjs | 2 +- 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/lang/en.json b/lang/en.json index 7efca151..f1164232 100755 --- a/lang/en.json +++ b/lang/en.json @@ -475,18 +475,21 @@ }, "takeLevelUp": "Finish Level Up", "tier2": { + "name": "Tier 2", "label": "Levels 2-4", "infoLabel": "At Level 2, gain an additional Experience at +2 and gain a +1 bonus to your Proficiency.", "pretext": "Choose two options from the list below", "posttext": "Take an additional domain card of your level or lower from a domain you have access to." }, "tier3": { + "name": "Tier 3", "label": "Levels 5-7", "infoLabel": "At Level 5, take an additional Experience and clear all marks on Character Traits.", "pretext": "When you level up, record it on your character sheet, then choose two from the list below or any unmarked from the previous tier.", "posttext": "Take an additional domain card of your level or lower from a domain you have access to." }, "tier4": { + "name": "Tier 4", "label": "Levels 8-10", "infoLabel": "At Level 8, take an additional Experience and clear all marks on Character Traits.", "pretext": "When you level up, record it on your character sheet, then choose two from the list below or any unmarked from the previous tier.", diff --git a/module/data/levelTier.mjs b/module/data/levelTier.mjs index e42cfc54..2252e4da 100644 --- a/module/data/levelTier.mjs +++ b/module/data/levelTier.mjs @@ -169,7 +169,7 @@ export const defaultLevelTiers = { tiers: { 2: { tier: 2, - name: 'Tier 2', + name: 'DAGGERHEART.APPLICATIONS.Levelup.tier2.name', levels: { start: 2, end: 4 @@ -232,7 +232,7 @@ export const defaultLevelTiers = { }, 3: { tier: 3, - name: 'Tier 3', + name: 'DAGGERHEART.APPLICATIONS.Levelup.tier3.name', levels: { start: 5, end: 7 @@ -313,7 +313,7 @@ export const defaultLevelTiers = { }, 4: { tier: 4, - name: 'Tier 4', + name: 'DAGGERHEART.APPLICATIONS.Levelup.tier4.name', levels: { start: 8, end: 10 diff --git a/module/data/levelup.mjs b/module/data/levelup.mjs index 665b3264..4dc1c058 100644 --- a/module/data/levelup.mjs +++ b/module/data/levelup.mjs @@ -234,7 +234,7 @@ export class DhLevelup extends foundry.abstract.DataModel { const subclassInTier = subclasses.some(x => x.tier === Number(tierKey)); return { - name: tier.name, + name: game.i18n.localize(tier.name), active: this.currentLevel >= Math.min(...tier.belongingLevels), groups: Object.keys(tier.options).map(optionKey => { const option = tier.options[optionKey]; From d4a98d3f662e0668057fee13e1d827d1812d2645 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Sun, 7 Sep 2025 03:53:21 +1000 Subject: [PATCH 052/260] Add motives and tactics for Oak Treant (#1158) Co-authored-by: Chris Ryan --- .../adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json b/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json index f32a9894..22cbc3d3 100644 --- a/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json +++ b/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json @@ -105,19 +105,20 @@ "img": "icons/skills/melee/blood-slash-foam-red.webp", "type": "attack", "chatDisplay": false - } + }, + "motivesAndTactics": "Hide in plain sight, preserve the forest, root down, swing branches" }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.348", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753922784314, - "modifiedTime": 1755259462770, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1757057641714, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_id": "XK78QUfY8c8Go8Uv", "sort": 3400000, From e258d9c5f66d0e42ea820ec7654ef13f053269ee Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Sun, 7 Sep 2025 06:05:24 +1000 Subject: [PATCH 053/260] Fixed typo in button class (#1159) Co-authored-by: Chris Ryan --- templates/dialogs/dice-roll/rollSelection.hbs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/templates/dialogs/dice-roll/rollSelection.hbs b/templates/dialogs/dice-roll/rollSelection.hbs index 3aac0321..a2ca5a01 100644 --- a/templates/dialogs/dice-roll/rollSelection.hbs +++ b/templates/dialogs/dice-roll/rollSelection.hbs @@ -148,7 +148,7 @@ - From fd925407925e4d91c4f96bfb7689cf0d043af9a8 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Sun, 7 Sep 2025 06:06:17 +1000 Subject: [PATCH 054/260] Add keys, update usage for translations (#1156) Co-authored-by: Chris Ryan --- lang/en.json | 12 +++++++++++- module/applications/sheets-configs/action-config.mjs | 6 +++--- module/config/generalConfig.mjs | 8 ++++---- templates/actionTypes/cost.hbs | 10 +++++----- templates/actionTypes/range-target.hbs | 6 +++--- templates/actionTypes/uses.hbs | 6 +++--- 6 files changed, 29 insertions(+), 19 deletions(-) diff --git a/lang/en.json b/lang/en.json index f1164232..37e6cfff 100755 --- a/lang/en.json +++ b/lang/en.json @@ -992,6 +992,12 @@ "selectType": "Select Action Type", "selectAction": "Action Selection" }, + "TargetTypes": { + "any": "Any", + "friendly": "Friendly", + "hostile": "Hostile", + "self": "Self" + }, "TemplateTypes": { "circle": "Circle", "cone": "Cone", @@ -1880,7 +1886,9 @@ "tier4": "tier 4", "domains": "Domains", "downtime": "Downtime", - "rules": "Rules" + "rules": "Rules", + "configuration": "Configuration", + "base": "Base" }, "Tiers": { "singular": "Tier", @@ -1981,6 +1989,8 @@ "save": "Save", "scalable": "Scalable", "situationalBonus": "Situational Bonus", + "spent": "Spent", + "step": "Step", "stress": "Stress", "subclasses": "Subclasses", "success": "Success", diff --git a/module/applications/sheets-configs/action-config.mjs b/module/applications/sheets-configs/action-config.mjs index ea3c6f31..f673fc66 100644 --- a/module/applications/sheets-configs/action-config.mjs +++ b/module/applications/sheets-configs/action-config.mjs @@ -66,7 +66,7 @@ export default class DHActionConfig extends DaggerheartSheet(ApplicationV2) { group: 'primary', id: 'base', icon: null, - label: 'Base' + label: 'DAGGERHEART.GENERAL.Tabs.base' }, config: { active: false, @@ -74,7 +74,7 @@ export default class DHActionConfig extends DaggerheartSheet(ApplicationV2) { group: 'primary', id: 'config', icon: null, - label: 'Configuration' + label: 'DAGGERHEART.GENERAL.Tabs.configuration' }, effect: { active: false, @@ -82,7 +82,7 @@ export default class DHActionConfig extends DaggerheartSheet(ApplicationV2) { group: 'primary', id: 'effect', icon: null, - label: 'Effect' + label: 'DAGGERHEART.GENERAL.Tabs.effects' } }; diff --git a/module/config/generalConfig.mjs b/module/config/generalConfig.mjs index 60b3a2f1..8714d44b 100644 --- a/module/config/generalConfig.mjs +++ b/module/config/generalConfig.mjs @@ -90,22 +90,22 @@ export const rangeInclusion = { export const otherTargetTypes = { friendly: { id: 'friendly', - label: 'Friendly' + label: 'DAGGERHEART.CONFIG.TargetTypes.friendly' }, hostile: { id: 'hostile', - label: 'Hostile' + label: 'DAGGERHEART.CONFIG.TargetTypes.hostile' }, any: { id: 'any', - label: 'Any' + label: 'DAGGERHEART.CONFIG.TargetTypes.any' } }; export const targetTypes = { self: { id: 'self', - label: 'Self' + label: 'DAGGERHEART.CONFIG.TargetTypes.self' }, ...otherTargetTypes }; diff --git a/templates/actionTypes/cost.hbs b/templates/actionTypes/cost.hbs index a1b7de48..7a9f33d9 100644 --- a/templates/actionTypes/cost.hbs +++ b/templates/actionTypes/cost.hbs @@ -1,6 +1,6 @@
- Cost + {{localize "DAGGERHEART.GENERAL.Cost.single"}} {{#each source as |cost index|}} @@ -8,10 +8,10 @@ {{formField ../fields.consumeOnSuccess value=cost.consumeOnSuccess name=(concat "cost." index ".consumeOnSuccess") classes="checkbox" rootId=partId localize=true}} {{/if}}
- {{formField ../fields.scalable label="Scalable" value=cost.scalable name=(concat "cost." index ".scalable") classes="checkbox"}} - {{formField ../fields.key choices=(@root.disableOption index @root.costOptions ../source) label="Resource" value=cost.key name=(concat "cost." index ".key") localize=true blank=false}} - {{formField ../fields.value label="Amount" value=cost.value name=(concat "cost." index ".value")}} - {{formField ../fields.step label="Step" value=cost.step name=(concat "cost." index ".step") disabled=(not cost.scalable)}} + {{formField ../fields.scalable label="DAGGERHEART.GENERAL.scalable" value=cost.scalable name=(concat "cost." index ".scalable") classes="checkbox" localize=true}} + {{formField ../fields.key choices=(@root.disableOption index @root.costOptions ../source) label="DAGGERHEART.GENERAL.resource" value=cost.key name=(concat "cost." index ".key") localize=true blank=false}} + {{formField ../fields.value label="DAGGERHEART.GENERAL.amount" value=cost.value name=(concat "cost." index ".value") localize=true}} + {{formField ../fields.step label="DAGGERHEART.GENERAL.step" value=cost.step name=(concat "cost." index ".step") disabled=(not cost.scalable) localize=true}}
{{/each}} diff --git a/templates/actionTypes/range-target.hbs b/templates/actionTypes/range-target.hbs index 3776f0c1..143acdf8 100644 --- a/templates/actionTypes/range-target.hbs +++ b/templates/actionTypes/range-target.hbs @@ -1,12 +1,12 @@
{{localize "DAGGERHEART.GENERAL.range"}}{{#if fields.target}} & {{localize "DAGGERHEART.GENERAL.Target.single"}}{{/if}} - {{formField fields.range value=source.range label="Range" name=(concat path "range") localize=true}} + {{formField fields.range value=source.range label="DAGGERHEART.GENERAL.range" name=(concat path "range") localize=true}} {{#if fields.target}}
{{#if (and source.target.type (not (eq source.target.type 'self')))}} - {{ formField fields.target.amount value=source.target.amount label="Amount" name=(concat path "target.amount") }} + {{ formField fields.target.amount value=source.target.amount label="DAGGERHEART.GENERAL.amount" name=(concat path "target.amount") localize=true}} {{/if}} - {{ formField fields.target.type value=source.target.type label="Target" name=(concat path "target.type") localize=true }} + {{ formField fields.target.type value=source.target.type label="DAGGERHEART.GENERAL.Target.single" name=(concat path "target.type") localize=true }}
{{/if}}
\ No newline at end of file diff --git a/templates/actionTypes/uses.hbs b/templates/actionTypes/uses.hbs index 2c1c3cd4..7304f810 100644 --- a/templates/actionTypes/uses.hbs +++ b/templates/actionTypes/uses.hbs @@ -4,8 +4,8 @@ {{formField fields.consumeOnSuccess value=source.consumeOnSuccess name="uses.consumeOnSuccess" classes="checkbox" rootId=partId localize=true}} {{/if}}
- {{formField fields.value label="Spent" value=source.value name="uses.value" rootId=partId}} - {{formField fields.max label="Max" value=source.max name="uses.max" rootId=partId}} + {{formField fields.value label="DAGGERHEART.GENERAL.spent" value=source.value name="uses.value" rootId=partId localize=true}} + {{formField fields.max label="DAGGERHEART.GENERAL.max" value=source.max name="uses.max" rootId=partId localize=true}}
- {{formField fields.recovery label="Recovery" value=source.recovery name="uses.recovery" rootId=partId localize=true}} + {{formField fields.recovery label="DAGGERHEART.GENERAL.recovery" value=source.recovery name="uses.recovery" rootId=partId localize=true}}
\ No newline at end of file From f1b6d3851dbed1559d88ecebc71d1bb537fd8b8b Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Sun, 7 Sep 2025 00:30:29 +0200 Subject: [PATCH 055/260] [PR] [Feature] 590 - Daggerheart Menu (#1007) * Added menu with refresh tools * Replaced menu icon --- CONTRIBUTING.md | 4 +- daggerheart.mjs | 8 +- lang/en.json | 12 ++ module/applications/_module.mjs | 1 + module/applications/levelup/levelup.mjs | 2 +- module/applications/scene/_module.mjs | 2 +- .../scene/sceneConfigSettings.mjs | 37 ++-- .../settings/appearanceSettings.mjs | 90 +++++----- .../sheets/api/application-mixin.mjs | 11 +- module/applications/sidebar/_module.mjs | 2 + module/applications/sidebar/sidebar.mjs | 33 ++++ .../sidebar/tabs/daggerheartMenu.mjs | 160 ++++++++++++++++++ module/applications/ui/chatLog.mjs | 2 +- module/applications/ui/fearTracker.mjs | 8 +- module/applications/ui/itemBrowser.mjs | 97 +++++------ module/config/itemBrowserConfig.mjs | 38 +++-- module/config/settingsConfig.mjs | 20 +-- module/data/action/baseAction.mjs | 45 +++-- module/data/chat-message/_modules.mjs | 12 +- module/data/chat-message/actorRoll.mjs | 6 +- module/data/fields/action/beastformField.mjs | 14 +- module/data/fields/action/damageField.mjs | 53 +++--- module/data/fields/action/effectsField.mjs | 25 ++- module/data/fields/action/macroField.mjs | 2 +- module/data/fields/action/rangeField.mjs | 3 +- module/data/fields/action/rollField.mjs | 28 ++- module/data/fields/action/saveField.mjs | 102 +++++------ module/data/fields/action/targetField.mjs | 13 +- module/data/fields/action/usesField.mjs | 6 +- module/data/settings/Appearance.mjs | 27 +-- module/data/settings/Automation.mjs | 8 +- module/dice/damageRoll.mjs | 3 +- module/dice/dhRoll.mjs | 9 +- module/dice/dualityRoll.mjs | 7 +- module/documents/chatMessage.mjs | 34 ++-- module/documents/item.mjs | 2 +- module/helpers/handlebarsHelper.mjs | 4 +- module/systemRegistration/handlebars.mjs | 5 +- module/systemRegistration/socket.mjs | 3 +- pull_request_template.md | 3 +- styles/less/global/elements.less | 4 +- styles/less/global/global.less | 12 +- styles/less/global/sheet.less | 2 +- .../environment/potentialAdversaries.less | 2 +- styles/less/ui/chat/refresh-message.less | 13 ++ styles/less/ui/index.less | 5 +- styles/less/ui/item-browser/item-browser.less | 5 +- styles/less/ui/settings/settings.less | 4 +- styles/less/ui/sidebar/daggerheartMenu.less | 38 +++++ styles/less/ui/sidebar/tabs.less | 8 + templates/sidebar/daggerheart-menu/main.hbs | 22 +++ templates/sidebar/tabs.hbs | 18 ++ templates/ui/chat/refreshMessage.hbs | 6 + 53 files changed, 730 insertions(+), 350 deletions(-) create mode 100644 module/applications/sidebar/_module.mjs create mode 100644 module/applications/sidebar/sidebar.mjs create mode 100644 module/applications/sidebar/tabs/daggerheartMenu.mjs create mode 100644 styles/less/ui/chat/refresh-message.less create mode 100644 styles/less/ui/sidebar/daggerheartMenu.less create mode 100644 styles/less/ui/sidebar/tabs.less create mode 100644 templates/sidebar/daggerheart-menu/main.hbs create mode 100644 templates/sidebar/tabs.hbs create mode 100644 templates/ui/chat/refreshMessage.hbs diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 80c01bce..b9099005 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -44,12 +44,14 @@ We encourage contributors to leave comments or open Discussions when proposing s ## 🧾 Issue & PR Best Practices **For Issues:** + - Use clear, descriptive titles - Provide a concise explanation of the problem or idea - Include reproduction steps or example scenarios if it's a bug - Add screenshots or logs if helpful **For Pull Requests:** + - Use a clear title summarizing the change - Provide a brief description of what your code does and why - Link to any related Issues @@ -71,6 +73,6 @@ Discussions are currently happening on GitHub — in Issues, PRs, and [GitHub Di ## 🤗 Thank You! -Whether you're fixing a typo or designing entire mechanics — every contribution matters. Thank you for helping bring *Daggerheart* to life in FoundryVTT through **Foundryborne**! +Whether you're fixing a typo or designing entire mechanics — every contribution matters. Thank you for helping bring _Daggerheart_ to life in FoundryVTT through **Foundryborne**! 🐸🛠️ diff --git a/daggerheart.mjs b/daggerheart.mjs index 1c4c2a85..f5f5e303 100644 --- a/daggerheart.mjs +++ b/daggerheart.mjs @@ -133,6 +133,8 @@ Hooks.once('init', () => { CONFIG.ui.combat = applications.ui.DhCombatTracker; CONFIG.ui.chat = applications.ui.DhChatLog; CONFIG.ui.hotbar = applications.ui.DhHotbar; + CONFIG.ui.sidebar = applications.sidebar.DhSidebar; + CONFIG.ui.daggerheartMenu = applications.sidebar.DaggerheartMenu; CONFIG.Token.rulerClass = placeables.DhTokenRuler; CONFIG.ui.resources = applications.ui.DhFearTracker; @@ -162,7 +164,7 @@ Hooks.on('ready', async () => { if (game.settings.get(SYSTEM.id, SYSTEM.SETTINGS.gameSettings.appearance).displayFear !== 'hide') ui.resources.render({ force: true }); - if(!(ui.compendiumBrowser instanceof applications.ui.ItemBrowser)) + if (!(ui.compendiumBrowser instanceof applications.ui.ItemBrowser)) ui.compendiumBrowser = new applications.ui.ItemBrowser(); registerCountdownHooks(); @@ -309,5 +311,5 @@ Hooks.on('moveToken', async (movedToken, data) => { } }); -Hooks.on("renderCompendiumDirectory", (app, html) => applications.ui.ItemBrowser.injectSidebarButton(html)); -Hooks.on("renderDocumentDirectory", (app, html) => applications.ui.ItemBrowser.injectSidebarButton(html)); +Hooks.on('renderCompendiumDirectory', (app, html) => applications.ui.ItemBrowser.injectSidebarButton(html)); +Hooks.on('renderDocumentDirectory', (app, html) => applications.ui.ItemBrowser.injectSidebarButton(html)); diff --git a/lang/en.json b/lang/en.json index d5c4f037..8de962bd 100755 --- a/lang/en.json +++ b/lang/en.json @@ -2420,6 +2420,10 @@ "heal": "Heal", "applyHealing": "Apply Healing" }, + "refreshMessage": { + "title": "Feature Refresh", + "header": "Refreshed" + }, "reroll": { "confirmTitle": "Reroll Dice", "confirmText": "Are you sure you want to reroll?" @@ -2534,8 +2538,16 @@ "multiclassAlreadyPresent": "You already have a class and multiclass", "subclassesAlreadyPresent": "You already have a class and multiclass subclass", "noDiceSystem": "Your selected dice {system} does not have a {faces} dice", + "gmMenuRefresh": "You refreshed all actions and resources {types}", "subclassAlreadyLinked": "{name} is already a subclass in the class {class}. Remove it from there if you want it to be a subclass to this class." }, + "Sidebar": { + "daggerheartMenu": { + "title": "Daggerheart Menu", + "startSession": "Start Session", + "startScene": "Start Scene" + } + }, "Tooltip": { "disableEffect": "Disable Effect", "enableEffect": "Enable Effect", diff --git a/module/applications/_module.mjs b/module/applications/_module.mjs index 3dd0c78f..b2d3001a 100644 --- a/module/applications/_module.mjs +++ b/module/applications/_module.mjs @@ -6,5 +6,6 @@ export * as scene from './scene/_module.mjs'; export * as settings from './settings/_module.mjs'; export * as sheets from './sheets/_module.mjs'; export * as sheetConfigs from './sheets-configs/_module.mjs'; +export * as sidebar from './sidebar/_module.mjs'; export * as ui from './ui/_module.mjs'; export * as ux from './ux/_module.mjs'; diff --git a/module/applications/levelup/levelup.mjs b/module/applications/levelup/levelup.mjs index 99cc53f6..c3cc6e81 100644 --- a/module/applications/levelup/levelup.mjs +++ b/module/applications/levelup/levelup.mjs @@ -536,7 +536,7 @@ export default class DhlevelUp extends HandlebarsApplicationMixin(ApplicationV2) static async viewCompendium(event, target) { const type = target.dataset.compendium ?? target.dataset.type; - const presets = { + const presets = { folder: type, render: { noFolder: true diff --git a/module/applications/scene/_module.mjs b/module/applications/scene/_module.mjs index 6dc59081..7cefd268 100644 --- a/module/applications/scene/_module.mjs +++ b/module/applications/scene/_module.mjs @@ -1 +1 @@ -export { default as DhSceneConfigSettings } from './sceneConfigSettings.mjs'; \ No newline at end of file +export { default as DhSceneConfigSettings } from './sceneConfigSettings.mjs'; diff --git a/module/applications/scene/sceneConfigSettings.mjs b/module/applications/scene/sceneConfigSettings.mjs index 2ad7421a..40f66ae2 100644 --- a/module/applications/scene/sceneConfigSettings.mjs +++ b/module/applications/scene/sceneConfigSettings.mjs @@ -1,25 +1,24 @@ export default class DhSceneConfigSettings extends foundry.applications.sheets.SceneConfig { - constructor(options, ...args) { - super(options, ...args); - } - - static buildParts() { - const { footer, ...parts } = super.PARTS; - const tmpParts = { - ...parts, - dh: { template: "systems/daggerheart/templates/scene/dh-config.hbs" }, - footer + constructor(options, ...args) { + super(options, ...args); } - return tmpParts; - } - static PARTS = DhSceneConfigSettings.buildParts(); + static buildParts() { + const { footer, ...parts } = super.PARTS; + const tmpParts = { + ...parts, + dh: { template: 'systems/daggerheart/templates/scene/dh-config.hbs' }, + footer + }; + return tmpParts; + } - static buildTabs() { - super.TABS.sheet.tabs.push({ id: "dh", icon: "fa-solid" }); - return super.TABS; - } + static PARTS = DhSceneConfigSettings.buildParts(); - static TABS = DhSceneConfigSettings.buildTabs(); + static buildTabs() { + super.TABS.sheet.tabs.push({ id: 'dh', icon: 'fa-solid' }); + return super.TABS; + } -} \ No newline at end of file + static TABS = DhSceneConfigSettings.buildTabs(); +} diff --git a/module/applications/settings/appearanceSettings.mjs b/module/applications/settings/appearanceSettings.mjs index bbc27a79..5950f961 100644 --- a/module/applications/settings/appearanceSettings.mjs +++ b/module/applications/settings/appearanceSettings.mjs @@ -33,7 +33,7 @@ export default class DHAppearanceSettings extends HandlebarsApplicationMixin(App tabs: { template: 'systems/daggerheart/templates/sheets/global/tabs/tab-navigation.hbs' }, main: { template: 'systems/daggerheart/templates/settings/appearance-settings/main.hbs' }, diceSoNice: { template: 'systems/daggerheart/templates/settings/appearance-settings/diceSoNice.hbs' }, - footer: { template: "templates/generic/form-footer.hbs" } + footer: { template: 'templates/generic/form-footer.hbs' } }; /** @inheritdoc */ @@ -41,7 +41,7 @@ export default class DHAppearanceSettings extends HandlebarsApplicationMixin(App general: { tabs: [ { id: 'main', label: 'DAGGERHEART.GENERAL.Tabs.general' }, - { id: 'diceSoNice', label: 'DAGGERHEART.SETTINGS.Menu.appearance.diceSoNice.title' }, + { id: 'diceSoNice', label: 'DAGGERHEART.SETTINGS.Menu.appearance.diceSoNice.title' } ], initial: 'main' }, @@ -73,7 +73,7 @@ export default class DHAppearanceSettings extends HandlebarsApplicationMixin(App /** @inheritdoc */ _configureRenderParts(options) { const parts = super._configureRenderParts(options); - if (!game.modules.get('dice-so-nice')?.active){ + if (!game.modules.get('dice-so-nice')?.active) { delete parts.diceSoNice; delete parts.tabs; } @@ -83,7 +83,8 @@ export default class DHAppearanceSettings extends HandlebarsApplicationMixin(App /**@inheritdoc */ async _prepareContext(options) { const context = await super._prepareContext(options); - if (options.isFirstRender) this.setting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance); + if (options.isFirstRender) + this.setting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance); context.setting = this.setting; context.fields = this.setting.schema.fields; @@ -99,18 +100,17 @@ export default class DHAppearanceSettings extends HandlebarsApplicationMixin(App const partContext = await super._preparePartContext(partId, context, options); if (partId in context.tabs) partContext.tab = partContext.tabs[partId]; switch (partId) { - case "diceSoNice": + case 'diceSoNice': await this.prepareDiceSoNiceContext(partContext); break; - case "footer": + case 'footer': partContext.buttons = [ - { type: "button", action: "reset", icon: "fa-solid fa-arrow-rotate-left", label: "Reset" }, - { type: "submit", icon: "fa-solid fa-floppy-disk", label: "Save Changes" } + { type: 'button', action: 'reset', icon: 'fa-solid fa-arrow-rotate-left', label: 'Reset' }, + { type: 'submit', icon: 'fa-solid fa-floppy-disk', label: 'Save Changes' } ]; break; } return partContext; - } /** @@ -120,32 +120,44 @@ export default class DHAppearanceSettings extends HandlebarsApplicationMixin(App * @protected */ async prepareDiceSoNiceContext(context) { - context.diceSoNiceTextures = Object.entries(game.dice3d.exports.TEXTURELIST).reduce((acc, [k, v]) => ({ - ...acc, - [k]: v.name - }), {}); - context.diceSoNiceColorsets = Object.values(game.dice3d.exports.COLORSETS).reduce((acc, v) => ({ - ...acc, - [v.id]: v.description - }), {}); - context.diceSoNiceMaterials = Object.keys(game.dice3d.DiceFactory.material_options).reduce((acc, key) => ({ - ...acc, - [key]: `DICESONICE.Material${key.capitalize()}` - }), {}); - context.diceSoNiceSystems = Object.fromEntries([...game.dice3d.DiceFactory.systems].map(([k, v]) => [k, v.name])); + context.diceSoNiceTextures = Object.entries(game.dice3d.exports.TEXTURELIST).reduce( + (acc, [k, v]) => ({ + ...acc, + [k]: v.name + }), + {} + ); + context.diceSoNiceColorsets = Object.values(game.dice3d.exports.COLORSETS).reduce( + (acc, v) => ({ + ...acc, + [v.id]: v.description + }), + {} + ); + context.diceSoNiceMaterials = Object.keys(game.dice3d.DiceFactory.material_options).reduce( + (acc, key) => ({ + ...acc, + [key]: `DICESONICE.Material${key.capitalize()}` + }), + {} + ); + context.diceSoNiceSystems = Object.fromEntries( + [...game.dice3d.DiceFactory.systems].map(([k, v]) => [k, v.name]) + ); - foundry.utils.mergeObject(context.dsnTabs, [ - "hope", - "fear", - "advantage", - "disadvantage", - ].reduce((acc, key) => ({ - ...acc, - [key]: { - values: this.setting.diceSoNice[key], - fields: this.setting.schema.getField(`diceSoNice.${key}`).fields, - } - }), {})); + foundry.utils.mergeObject( + context.dsnTabs, + ['hope', 'fear', 'advantage', 'disadvantage'].reduce( + (acc, key) => ({ + ...acc, + [key]: { + values: this.setting.diceSoNice[key], + fields: this.setting.schema.getField(`diceSoNice.${key}`).fields + } + }), + {} + ) + ); } /** @@ -169,7 +181,7 @@ export default class DHAppearanceSettings extends HandlebarsApplicationMixin(App * @type {ApplicationClickAction} */ static async #onPreview(_, target) { - const formData = new foundry.applications.ux.FormDataExtended(target.closest("form")); + const formData = new foundry.applications.ux.FormDataExtended(target.closest('form')); const { diceSoNice } = foundry.utils.expandObject(formData.object); const { key } = target.dataset; const faces = ['advantage', 'disadvantage'].includes(key) ? 'd6' : 'd12'; @@ -181,10 +193,10 @@ export default class DHAppearanceSettings extends HandlebarsApplicationMixin(App } /** - * Reset the form back to default values. - * @this {DHAppearanceSettings} - * @type {ApplicationClickAction} - */ + * Reset the form back to default values. + * @this {DHAppearanceSettings} + * @type {ApplicationClickAction} + */ static async #onReset() { this.setting = new this.setting.constructor(); this.render({ force: false }); diff --git a/module/applications/sheets/api/application-mixin.mjs b/module/applications/sheets/api/application-mixin.mjs index 2158e48b..1a508131 100644 --- a/module/applications/sheets/api/application-mixin.mjs +++ b/module/applications/sheets/api/application-mixin.mjs @@ -416,11 +416,14 @@ export default function DHApplicationMixin(Base) { icon: 'fa-solid fa-ban', condition: target => { const doc = getDocFromElementSync(target); - return doc && doc.system?.actions?.some(a => a.type === "beastform"); + return doc && doc.system?.actions?.some(a => a.type === 'beastform'); }, - callback: async target => game.system.api.fields.ActionFields.BeastformField.handleActiveTransformations.call(await getDocFromElement(target)) + callback: async target => + game.system.api.fields.ActionFields.BeastformField.handleActiveTransformations.call( + await getDocFromElement(target) + ) }); - + options.unshift({ name: 'DAGGERHEART.GENERAL.damage', icon: 'fa-solid fa-explosion', @@ -433,7 +436,7 @@ export default function DHApplicationMixin(Base) { action = doc?.system?.attack ?? doc; const config = action.prepareConfig(event); config.hasRoll = false; - return action && action.workflow.get("damage").execute(config, null, true); + return action && action.workflow.get('damage').execute(config, null, true); } }); diff --git a/module/applications/sidebar/_module.mjs b/module/applications/sidebar/_module.mjs new file mode 100644 index 00000000..f19f697c --- /dev/null +++ b/module/applications/sidebar/_module.mjs @@ -0,0 +1,2 @@ +export { default as DaggerheartMenu } from './tabs/daggerheartMenu.mjs'; +export { default as DhSidebar } from './sidebar.mjs'; diff --git a/module/applications/sidebar/sidebar.mjs b/module/applications/sidebar/sidebar.mjs new file mode 100644 index 00000000..fad39ac5 --- /dev/null +++ b/module/applications/sidebar/sidebar.mjs @@ -0,0 +1,33 @@ +export default class DhSidebar extends Sidebar { + /** @override */ + static TABS = { + ...super.TABS, + daggerheartMenu: { + tooltip: 'DAGGERHEART.UI.Sidebar.daggerheartMenu.title', + img: 'systems/daggerheart/assets/logos/FoundryBorneLogoWhite.svg' + } + }; + + /** @override */ + static PARTS = { + tabs: { + id: 'tabs', + template: 'systems/daggerheart/templates/sidebar/tabs.hbs' + } + }; + + /** @override */ + async _prepareTabContext(context, options) { + context.tabs = Object.entries(this.constructor.TABS).reduce((obj, [k, v]) => { + let { documentName, gmOnly, tooltip, icon, img } = v; + if (gmOnly && !game.user.isGM) return obj; + if (documentName) { + tooltip ??= getDocumentClass(documentName).metadata.labelPlural; + icon ??= CONFIG[documentName]?.sidebarIcon; + } + obj[k] = { tooltip, icon, img }; + obj[k].active = this.tabGroups.primary === k; + return obj; + }, {}); + } +} diff --git a/module/applications/sidebar/tabs/daggerheartMenu.mjs b/module/applications/sidebar/tabs/daggerheartMenu.mjs new file mode 100644 index 00000000..cf7aeae3 --- /dev/null +++ b/module/applications/sidebar/tabs/daggerheartMenu.mjs @@ -0,0 +1,160 @@ +const { HandlebarsApplicationMixin } = foundry.applications.api; +const { AbstractSidebarTab } = foundry.applications.sidebar; +/** + * The daggerheart menu tab. + * @extends {AbstractSidebarTab} + * @mixes HandlebarsApplication + */ +export default class DaggerheartMenu extends HandlebarsApplicationMixin(AbstractSidebarTab) { + constructor(options) { + super(options); + + this.refreshSelections = DaggerheartMenu.#defaultRefreshSelections(); + } + + static #defaultRefreshSelections() { + return { + session: { selected: false, label: game.i18n.localize('DAGGERHEART.GENERAL.RefreshType.session') }, + scene: { selected: false, label: game.i18n.localize('DAGGERHEART.GENERAL.RefreshType.scene') }, + longRest: { selected: false, label: game.i18n.localize('DAGGERHEART.GENERAL.RefreshType.longrest') }, + shortRest: { selected: false, label: game.i18n.localize('DAGGERHEART.GENERAL.RefreshType.shortrest') } + }; + } + + /** @override */ + static DEFAULT_OPTIONS = { + classes: ['dh-style'], + window: { + title: 'SIDEBAR.TabSettings' + }, + actions: { + selectRefreshable: DaggerheartMenu.#selectRefreshable, + refreshActors: DaggerheartMenu.#refreshActors + } + }; + + /** @override */ + static tabName = 'daggerheartMenu'; + + /** @override */ + static PARTS = { + main: { template: 'systems/daggerheart/templates/sidebar/daggerheart-menu/main.hbs' } + }; + + /* -------------------------------------------- */ + + /** @inheritDoc */ + async _prepareContext(options) { + const context = await super._prepareContext(options); + context.refreshables = this.refreshSelections; + context.disableRefresh = Object.values(this.refreshSelections).every(x => !x.selected); + + return context; + } + + async getRefreshables(types) { + const refreshedActors = {}; + for (let actor of game.actors) { + if (['character', 'adversary'].includes(actor.type) && actor.prototypeToken.actorLink) { + const updates = {}; + for (let item of actor.items) { + if (item.system.metadata.hasResource && types.includes(item.system.resource?.recovery)) { + if (!refreshedActors[actor.id]) + refreshedActors[actor.id] = { name: actor.name, img: actor.img, refreshed: new Set() }; + refreshedActors[actor.id].refreshed.add( + game.i18n.localize(CONFIG.DH.GENERAL.refreshTypes[item.system.resource.recovery].label) + ); + + if (!updates[item.id]?.system) updates[item.id] = { system: {} }; + + const increasing = + item.system.resource.progression === CONFIG.DH.ITEM.itemResourceProgression.increasing.id; + updates[item.id].system = { + ...updates[item.id].system, + 'resource.value': increasing + ? 0 + : Roll.replaceFormulaData(item.system.resource.max, actor.getRollData()) + }; + } + if (item.system.metadata.hasActions) { + const refreshTypes = new Set(); + const actions = item.system.actions.filter(action => { + if (types.includes(action.uses.recovery)) { + refreshTypes.add(action.uses.recovery); + return true; + } + + return false; + }); + if (actions.length === 0) continue; + + if (!refreshedActors[actor.id]) + refreshedActors[actor.id] = { name: actor.name, img: actor.img, refreshed: new Set() }; + refreshedActors[actor.id].refreshed.add( + ...refreshTypes.map(type => game.i18n.localize(CONFIG.DH.GENERAL.refreshTypes[type].label)) + ); + + if (!updates[item.id]?.system) updates[item.id] = { system: {} }; + + updates[item.id].system = { + ...updates[item.id].system, + ...actions.reduce( + (acc, action) => { + acc.actions[action.id] = { 'uses.value': 0 }; + return acc; + }, + { actions: updates[item.id].system.actions ?? {} } + ) + }; + } + } + + for (let key in updates) { + const update = updates[key]; + await actor.items.get(key).update(update); + } + } + } + + return refreshedActors; + } + + /* -------------------------------------------- */ + /* Application Clicks Actions */ + /* -------------------------------------------- */ + + static async #selectRefreshable(_event, button) { + const { type } = button.dataset; + this.refreshSelections[type].selected = !this.refreshSelections[type].selected; + this.render(); + } + + static async #refreshActors() { + const refreshKeys = Object.keys(this.refreshSelections).filter(key => this.refreshSelections[key].selected); + await this.getRefreshables(refreshKeys); + const types = refreshKeys.map(x => this.refreshSelections[x].label).join(', '); + ui.notifications.info( + game.i18n.format('DAGGERHEART.UI.Notifications.gmMenuRefresh', { + types: `[${types}]` + }) + ); + this.refreshSelections = DaggerheartMenu.#defaultRefreshSelections(); + + const cls = getDocumentClass('ChatMessage'); + const msg = { + user: game.user.id, + content: await foundry.applications.handlebars.renderTemplate( + 'systems/daggerheart/templates/ui/chat/refreshMessage.hbs', + { + types: types + } + ), + title: game.i18n.localize('DAGGERHEART.UI.Chat.refreshMessage.title'), + speaker: cls.getSpeaker() + }; + + cls.create(msg); + + this.render(); + } +} diff --git a/module/applications/ui/chatLog.mjs b/module/applications/ui/chatLog.mjs index 21762818..b95e50e1 100644 --- a/module/applications/ui/chatLog.mjs +++ b/module/applications/ui/chatLog.mjs @@ -112,7 +112,7 @@ export default class DhpChatLog extends foundry.applications.sidebar.tabs.ChatLo if (event.currentTarget.dataset.directDamage) { const config = action.prepareConfig(event); config.hasRoll = false; - action.workflow.get("damage").execute(config, null, true); + action.workflow.get('damage').execute(config, null, true); } else action.use(event); } diff --git a/module/applications/ui/fearTracker.mjs b/module/applications/ui/fearTracker.mjs index a346aa66..2b7c4dac 100644 --- a/module/applications/ui/fearTracker.mjs +++ b/module/applications/ui/fearTracker.mjs @@ -1,4 +1,4 @@ -import { emitAsGM, GMUpdateEvent, socketEvent } from "../../systemRegistration/socket.mjs"; +import { emitAsGM, GMUpdateEvent, socketEvent } from '../../systemRegistration/socket.mjs'; const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; @@ -106,6 +106,10 @@ export default class FearTracker extends HandlebarsApplicationMixin(ApplicationV } async updateFear(value) { - return emitAsGM(GMUpdateEvent.UpdateFear, game.settings.set.bind(game.settings, CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), value); + return emitAsGM( + GMUpdateEvent.UpdateFear, + game.settings.set.bind(game.settings, CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Resources.Fear), + value + ); } } diff --git a/module/applications/ui/itemBrowser.mjs b/module/applications/ui/itemBrowser.mjs index 40884817..a00f8edc 100644 --- a/module/applications/ui/itemBrowser.mjs +++ b/module/applications/ui/itemBrowser.mjs @@ -84,12 +84,10 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { /** @inheritDoc */ async _preRender(context, options) { this.presets = options.presets ?? {}; - + const width = this.presets?.render?.noFolder === true || this.presets?.render?.lite === true ? 600 : 850; - if(this.rendered) - this.setPosition({ width }); - else - options.position.width = width; + if (this.rendered) this.setPosition({ width }); + else options.position.width = width; await super._preRender(context, options); } @@ -100,15 +98,18 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { this.element .querySelectorAll('[data-action="selectFolder"]') - .forEach(element => element.classList.toggle('is-selected', element.dataset.folderId === this.selectedMenu.path.join('.'))); + .forEach(element => + element.classList.toggle('is-selected', element.dataset.folderId === this.selectedMenu.path.join('.')) + ); this._createSearchFilter(); - + this.element.classList.toggle('lite', this.presets?.render?.lite === true); this.element.classList.toggle('no-folder', this.presets?.render?.noFolder === true); this.element.classList.toggle('no-filter', this.presets?.render?.noFilter === true); this.element.querySelectorAll('.folder-list > [data-action="selectFolder"]').forEach(element => { - element.hidden = this.presets.render?.folders?.length && !this.presets.render.folders.includes(element.dataset.folderId); + element.hidden = + this.presets.render?.folders?.length && !this.presets.render.folders.includes(element.dataset.folderId); }); } @@ -157,7 +158,7 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { : []; folders.push(folder); }); - folders.sort((a, b) => a.label.localeCompare(b.label)) + folders.sort((a, b) => a.label.localeCompare(b.label)); return folders; } @@ -181,8 +182,7 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { await this.render({ force: true, presets: this.presets }); - if(this.selectedMenu?.data?.type?.length) - this.loadItems(); + if (this.selectedMenu?.data?.type?.length) this.loadItems(); } _replaceHTML(result, content, options) { @@ -194,53 +194,54 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { let loadTimeout = this.toggleLoader(true); const promises = []; - + game.packs.forEach(pack => { promises.push( new Promise(async resolve => { const items = await pack.getDocuments({ type__in: this.selectedMenu?.data?.type }); resolve(items); }) - ) + ); }); - + Promise.all(promises).then(async result => { - this.items = ItemBrowser.sortBy(result.flatMap(r => r), 'name'); + this.items = ItemBrowser.sortBy( + result.flatMap(r => r), + 'name' + ); this.fieldFilter = this._createFieldFilter(); if (this.presets?.filter) { - Object.entries(this.presets.filter).forEach( - ([k, v]) => { - const filter = this.fieldFilter.find(c => c.name === k) - if(filter) filter.value = v.value; - } - ); + Object.entries(this.presets.filter).forEach(([k, v]) => { + const filter = this.fieldFilter.find(c => c.name === k); + if (filter) filter.value = v.value; + }); // await this._onInputFilterBrowser(); } - - const filterList = await foundry.applications.handlebars.renderTemplate('systems/daggerheart/templates/ui/itemBrowser/filterContainer.hbs', + + const filterList = await foundry.applications.handlebars.renderTemplate( + 'systems/daggerheart/templates/ui/itemBrowser/filterContainer.hbs', { fieldFilter: this.fieldFilter, presets: this.presets, formatChoices: this.formatChoices } ); - + this.element.querySelector('.filter-content .wrapper').innerHTML = filterList; const filterContainer = this.element.querySelector('.filter-header > [data-action="expandContent"]'); - if(this.fieldFilter.length === 0) - filterContainer.setAttribute('disabled', ''); - else - filterContainer.removeAttribute('disabled'); - - const itemList = await foundry.applications.handlebars.renderTemplate('systems/daggerheart/templates/ui/itemBrowser/itemContainer.hbs', + if (this.fieldFilter.length === 0) filterContainer.setAttribute('disabled', ''); + else filterContainer.removeAttribute('disabled'); + + const itemList = await foundry.applications.handlebars.renderTemplate( + 'systems/daggerheart/templates/ui/itemBrowser/itemContainer.hbs', { items: this.items, menu: this.selectedMenu, formatLabel: this.formatLabel } ); - + this.element.querySelector('.item-list').innerHTML = itemList; this._createFilterInputs(); @@ -255,7 +256,7 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { toggleLoader(state) { const container = this.element.querySelector('.item-list'); return setTimeout(() => { - container.classList.toggle("loader", state); + container.classList.toggle('loader', state); }, 100); } @@ -376,7 +377,7 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { for (const li of html.querySelectorAll('.item-container')) { const itemUUID = li.dataset.itemUuid, item = this.items.find(i => i.uuid === itemUUID); - if(!item) continue; + if (!item) continue; const matchesSearch = !query || foundry.applications.ux.SearchFilter.testQuery(rgx, item.name); if (matchesSearch) this.#filteredItems.browser.search.add(item.id); const { input } = this.#filteredItems.browser; @@ -399,7 +400,7 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { item = this.items.find(i => i.uuid === itemUUID); if (!item) continue; - + const matchesMenu = this.fieldFilter.length === 0 || this.fieldFilter.every( @@ -503,19 +504,19 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { _canDragStart() { return true; } - + static injectSidebarButton(html) { - if(!game.user.isGM) return; + if (!game.user.isGM) return; const sectionId = html.dataset.tab, - menus = { + menus = { actors: { - folder: "adversaries", + folder: 'adversaries', render: { - folders: ["adversaries", "characters", "environments"] + folders: ['adversaries', 'characters', 'environments'] } }, items: { - folder: "equipments", + folder: 'equipments', render: { noFolder: true } @@ -523,20 +524,20 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { compendium: {} }; - if(Object.keys(menus).includes(sectionId)) { - const headerActions = html.querySelector(".header-actions"); + if (Object.keys(menus).includes(sectionId)) { + const headerActions = html.querySelector('.header-actions'); - const button = document.createElement("button"); - button.type = "button"; - button.classList.add("open-compendium-browser"); + const button = document.createElement('button'); + button.type = 'button'; + button.classList.add('open-compendium-browser'); button.innerHTML = ` - ${game.i18n.localize("DAGGERHEART.UI.Tooltip.compendiumBrowser")} + ${game.i18n.localize('DAGGERHEART.UI.Tooltip.compendiumBrowser')} `; - button.addEventListener("click", event => { + button.addEventListener('click', event => { ui.compendiumBrowser.open(menus[sectionId]); }); - + headerActions.append(button); } } diff --git a/module/config/itemBrowserConfig.mjs b/module/config/itemBrowserConfig.mjs index 046efd8b..e870172f 100644 --- a/module/config/itemBrowserConfig.mjs +++ b/module/config/itemBrowserConfig.mjs @@ -199,8 +199,7 @@ export const typeConfig = { key: 'system.itemFeatures', label: 'DAGGERHEART.GENERAL.features', choices: () => - Object.entries(CONFIG.DH.ITEM.weaponFeatures) - .map(([k, v]) => ({ value: k, label: v.label })), + Object.entries(CONFIG.DH.ITEM.weaponFeatures).map(([k, v]) => ({ value: k, label: v.label })), operator: 'contains3' } ] @@ -241,8 +240,7 @@ export const typeConfig = { key: 'system.itemFeatures', label: 'DAGGERHEART.GENERAL.features', choices: () => - Object.entries(CONFIG.DH.ITEM.armorFeatures) - .map(([k, v]) => ({ value: k, label: v.label })), + Object.entries(CONFIG.DH.ITEM.armorFeatures).map(([k, v]) => ({ value: k, label: v.label })), operator: 'contains3' } ] @@ -372,14 +370,30 @@ export const typeConfig = { label: 'DAGGERHEART.ITEMS.Subclass.spellcastingTrait' } ], + filters: [] + }, + beastforms: { + columns: [ + { + key: 'system.tier', + label: 'DAGGERHEART.GENERAL.Tiers.singular' + }, + { + key: 'system.mainTrait', + label: 'DAGGERHEART.GENERAL.Trait.single' + } + ], filters: [ { key: 'system.linkedClass.uuid', label: 'Class', - choices: (items) => { - const list = items.map(item => ({ value: item.system.linkedClass.uuid, label: item.system.linkedClass.name })); - return list.reduce((a,c) => { - if(!(a.find(i => i.value === c.value))) a.push(c); + choices: items => { + const list = items.map(item => ({ + value: item.system.linkedClass.uuid, + label: item.system.linkedClass.name + })); + return list.reduce((a, c) => { + if (!a.find(i => i.value === c.value)) a.push(c); return a; }, []); } @@ -417,7 +431,7 @@ export const compendiumConfig = { id: 'characters', keys: ['characters'], label: 'DAGGERHEART.UI.ItemBrowser.folders.characters', - type: ['character'], + type: ['character'] // listType: 'characters' }, adversaries: { @@ -431,7 +445,7 @@ export const compendiumConfig = { id: 'ancestries', keys: ['ancestries'], label: 'DAGGERHEART.UI.ItemBrowser.folders.ancestries', - type: ['ancestry'], + type: ['ancestry'] /* folders: { features: { id: 'features', @@ -516,7 +530,7 @@ export const compendiumConfig = { id: 'communities', keys: ['communities'], label: 'DAGGERHEART.UI.ItemBrowser.folders.communities', - type: ['community'], + type: ['community'] /* folders: { features: { id: 'features', @@ -537,7 +551,7 @@ export const compendiumConfig = { keys: ['beastforms'], label: 'DAGGERHEART.UI.ItemBrowser.folders.beastforms', type: ['beastform'], - listType: 'beastforms', + listType: 'beastforms' /* folders: { features: { id: 'features', diff --git a/module/config/settingsConfig.mjs b/module/config/settingsConfig.mjs index 0f148aeb..5232cbd9 100644 --- a/module/config/settingsConfig.mjs +++ b/module/config/settingsConfig.mjs @@ -31,20 +31,20 @@ export const gameSettings = { }; export const actionAutomationChoices = { - never: { - id: "never", - label: "Never" + never: { + id: 'never', + label: 'Never' }, showDialog: { - id: "showDialog", - label: "Show Dialog only" + id: 'showDialog', + label: 'Show Dialog only' }, // npcOnly: { - // id: "npcOnly", - // label: "Always for non-characters" + // id: "npcOnly", + // label: "Always for non-characters" // }, always: { - id: "always", - label: "Always" + id: 'always', + label: 'Always' } -} +}; diff --git a/module/data/action/baseAction.mjs b/module/data/action/baseAction.mjs index 6e522ceb..93d34700 100644 --- a/module/data/action/baseAction.mjs +++ b/module/data/action/baseAction.mjs @@ -34,8 +34,7 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel this.extraSchemas.forEach(s => { let clsField = this.getActionField(s); - if (clsField) - schemaFields[s] = new clsField(); + if (clsField) schemaFields[s] = new clsField(); }); return schemaFields; @@ -43,7 +42,7 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel /** * Create a Map containing each Action step based on fields define in schema. Ordered by Fields order property. - * + * * Each step can be called individually as long as needed config is provided. * Ex: .workflow.get("damage").execute(config) * @returns {Map} @@ -53,8 +52,9 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel this.constructor.extraSchemas.forEach(s => { let clsField = this.constructor.getActionField(s); if (clsField?.execute) { - workflow.set(s, { order: clsField.order, execute: clsField.execute.bind(this) } ); - if( s === "damage" ) workflow.set("applyDamage", { order: 75, execute: clsField.applyDamage.bind(this) } ); + workflow.set(s, { order: clsField.order, execute: clsField.execute.bind(this) }); + if (s === 'damage') + workflow.set('applyDamage', { order: 75, execute: clsField.applyDamage.bind(this) }); } }); return new Map([...workflow.entries()].sort(([aKey, aValue], [bKey, bValue]) => aValue.order - bValue.order)); @@ -64,9 +64,9 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel * Getter returning the workflow property or creating it the first time the property is called */ get workflow() { - if ( this.hasOwnProperty("_workflow") ) return this._workflow; + if (this.hasOwnProperty('_workflow')) return this._workflow; const workflow = Object.freeze(this.defineWorkflow()); - Object.defineProperty(this, "_workflow", {value: workflow, writable: false}); + Object.defineProperty(this, '_workflow', { value: workflow, writable: false }); return workflow; } @@ -117,7 +117,7 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel /** * Prepare base data based on Action Type & Parent Type - * @param {object} parent + * @param {object} parent * @returns {object} */ static getSourceConfig(parent) { @@ -167,9 +167,9 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel * @param {object} config Config object usually created from prepareConfig method */ async executeWorkflow(config) { - for(const [key, part] of this.workflow) { + for (const [key, part] of this.workflow) { if (Hooks.call(`${CONFIG.DH.id}.pre${key.capitalize()}Action`, this, config) === false) return; - if(await part.execute(config) === false) return; + if ((await part.execute(config)) === false) return; if (Hooks.call(`${CONFIG.DH.id}.post${key.capitalize()}Action`, this, config) === false) return; } } @@ -185,7 +185,7 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel if (this.chatDisplay) await this.toChat(); let config = this.prepareConfig(event); - if(!config) return; + if (!config) return; if (Hooks.call(`${CONFIG.DH.id}.preUseAction`, this, config) === false) return; @@ -194,7 +194,7 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel config = await D20RollDialog.configure(null, config); if (!config) return; } - + // Execute the Action Worflow in order based of schema fields await this.executeWorkflow(config); @@ -206,7 +206,7 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel /** * Create the basic config common to every action type * @param {Event} event Event from the button used to trigger the Action - * @returns {object} + * @returns {object} */ prepareBaseConfig(event) { const config = { @@ -236,13 +236,12 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel /** * Create the config for that action used for its workflow * @param {Event} event Event from the button used to trigger the Action - * @returns {object} + * @returns {object} */ prepareConfig(event) { const config = this.prepareBaseConfig(event); - for(const clsField of Object.values(this.schema.fields)) { - if (clsField?.prepareConfig) - if(clsField.prepareConfig.call(this, config) === false) return false; + for (const clsField of Object.values(this.schema.fields)) { + if (clsField?.prepareConfig) if (clsField.prepareConfig.call(this, config) === false) return false; } return config; } @@ -260,11 +259,11 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel * Consume Action configured resources & uses. * That method is only used when we want those resources to be consumed outside of the use method workflow. * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. - * @param {boolean} successCost + * @param {boolean} successCost */ async consume(config, successCost = false) { - await this.workflow.get("cost")?.execute(config, successCost); - await this.workflow.get("uses")?.execute(config, successCost); + await this.workflow.get('cost')?.execute(config, successCost); + await this.workflow.get('uses')?.execute(config, successCost); if (config.roll && !config.roll.success && successCost) { setTimeout(() => { @@ -291,13 +290,13 @@ export default class DHBaseAction extends ActionMixin(foundry.abstract.DataModel } get hasDamage() { - return this.damage?.parts?.length && this.type !== 'healing' + return this.damage?.parts?.length && this.type !== 'healing'; } get hasHealing() { - return this.damage?.parts?.length && this.type === 'healing' + return this.damage?.parts?.length && this.type === 'healing'; } - + get hasSave() { return !!this.save?.trait; } diff --git a/module/data/chat-message/_modules.mjs b/module/data/chat-message/_modules.mjs index 36c6ee9d..7e301906 100644 --- a/module/data/chat-message/_modules.mjs +++ b/module/data/chat-message/_modules.mjs @@ -1,9 +1,9 @@ -import DHAbilityUse from "./abilityUse.mjs"; -import DHActorRoll from "./actorRoll.mjs"; +import DHAbilityUse from './abilityUse.mjs'; +import DHActorRoll from './actorRoll.mjs'; export const config = { - abilityUse: DHAbilityUse, - adversaryRoll: DHActorRoll, - damageRoll: DHActorRoll, - dualityRoll: DHActorRoll + abilityUse: DHAbilityUse, + adversaryRoll: DHActorRoll, + damageRoll: DHActorRoll, + dualityRoll: DHActorRoll }; diff --git a/module/data/chat-message/actorRoll.mjs b/module/data/chat-message/actorRoll.mjs index 91f44edc..a2cb03f9 100644 --- a/module/data/chat-message/actorRoll.mjs +++ b/module/data/chat-message/actorRoll.mjs @@ -58,10 +58,8 @@ export default class DHActorRoll extends foundry.abstract.TypeDataModel { const actionActor = this.actionActor, actionItem = this.actionItem; if (!this.source.action) return null; - if(actionItem) - return actionItem.system.actionsList?.find(a => a.id === this.source.action); - else if(actionActor?.system.attack?._id === this.source.action) - return actionActor.system.attack + if (actionItem) return actionItem.system.actionsList?.find(a => a.id === this.source.action); + else if (actionActor?.system.attack?._id === this.source.action) return actionActor.system.attack; return null; } diff --git a/module/data/fields/action/beastformField.mjs b/module/data/fields/action/beastformField.mjs index 62c735d0..0a1caea9 100644 --- a/module/data/fields/action/beastformField.mjs +++ b/module/data/fields/action/beastformField.mjs @@ -1,4 +1,4 @@ -import BeastformDialog from "../../../applications/dialogs/beastformDialog.mjs"; +import BeastformDialog from '../../../applications/dialogs/beastformDialog.mjs'; const fields = foundry.data.fields; @@ -49,14 +49,14 @@ export default class BeastformField extends fields.SchemaField { return await BeastformField.transform.call(this, selected, evolved, hybrid); } - + /** * Update Action Workflow config object. * Must be called within Action context. * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. */ prepareConfig(config) { - if(this.actor.effects.find(x => x.type === 'beastform')) { + if (this.actor.effects.find(x => x.type === 'beastform')) { ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.beastformAlreadyApplied')); return false; } @@ -73,10 +73,10 @@ export default class BeastformField extends fields.SchemaField { /** * TODO by Harry - * @param {*} selectedForm - * @param {*} evolvedData - * @param {*} hybridData - * @returns + * @param {*} selectedForm + * @param {*} evolvedData + * @param {*} hybridData + * @returns */ static async transform(selectedForm, evolvedData, hybridData) { const formData = evolvedData?.form ? evolvedData.form.toObject() : selectedForm.toObject(); diff --git a/module/data/fields/action/damageField.mjs b/module/data/fields/action/damageField.mjs index 816d9cbc..bab46d52 100644 --- a/module/data/fields/action/damageField.mjs +++ b/module/data/fields/action/damageField.mjs @@ -30,8 +30,13 @@ export default class DamageField extends fields.SchemaField { * @param {boolean} [force=false] If the method should be executed outside of Action workflow, for ChatMessage button for example. */ static async execute(config, messageId = null, force = false) { - if(!this.hasDamage && !this.hasHealing) return; - if((this.hasRoll && DamageField.getAutomation() === CONFIG.DH.SETTINGS.actionAutomationChoices.never.id) && !force) return; + if (!this.hasDamage && !this.hasHealing) return; + if ( + this.hasRoll && + DamageField.getAutomation() === CONFIG.DH.SETTINGS.actionAutomationChoices.never.id && + !force + ) + return; let formulas = this.damage.parts.map(p => ({ formula: DamageField.getFormulaValue.call(this, p, config).getFormula(this.actor), @@ -51,9 +56,10 @@ export default class DamageField extends fields.SchemaField { }; delete damageConfig.evaluate; - if(DamageField.getAutomation() === CONFIG.DH.SETTINGS.actionAutomationChoices.always.id) damageConfig.dialog.configure = false; + if (DamageField.getAutomation() === CONFIG.DH.SETTINGS.actionAutomationChoices.always.id) + damageConfig.dialog.configure = false; if (config.hasSave) config.onSave = damageConfig.onSave = this.save.damageMod; - + damageConfig.source.message = config.message?._id ?? messageId; damageConfig.directDamage = !!damageConfig.source?.message; @@ -61,7 +67,7 @@ export default class DamageField extends fields.SchemaField { // await game.dice3d.waitFor3DAnimationByMessageID(damageConfig.source.message); const damageResult = await CONFIG.Dice.daggerheart.DamageRoll.build(damageConfig); - if(!damageResult) return false; + if (!damageResult) return false; config.damage = damageResult.damage; config.message ??= damageConfig.message; } @@ -70,19 +76,15 @@ export default class DamageField extends fields.SchemaField { * Apply Damage/Healing Action Worflow part. * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. * @param {*[]} targets Arrays of targets to bypass pre-selected ones. - * @param {boolean} force If the method should be executed outside of Action workflow, for ChatMessage button for example. + * @param {boolean} force If the method should be executed outside of Action workflow, for ChatMessage button for example. */ static async applyDamage(config, targets = null, force = false) { targets ??= config.targets.filter(target => target.hit); - if(!config.damage || !targets?.length || (!DamageField.getApplyAutomation() && !force)) return; + if (!config.damage || !targets?.length || (!DamageField.getApplyAutomation() && !force)) return; for (let target of targets) { const actor = fromUuidSync(target.actorId); - if(!actor) continue; - if ( - !config.hasHealing && - config.onSave && - target.saved?.success === true - ) { + if (!actor) continue; + if (!config.hasHealing && config.onSave && target.saved?.success === true) { const mod = CONFIG.DH.ACTIONS.damageOnSave[config.onSave]?.mod ?? 1; Object.entries(config.damage).forEach(([k, v]) => { v.total = 0; @@ -97,17 +99,17 @@ export default class DamageField extends fields.SchemaField { else actor.takeDamage(config.damage, config.isDirect); } } - + /** * Return value or valueAlt from damage part * Must be called within Action context or similar. - * @param {object} part Damage Part + * @param {object} part Damage Part * @param {object} data Action getRollData * @returns Formula value object */ static getFormulaValue(part, data) { let formulaValue = part.value; - + if (data.hasRoll && part.resultBased && data.roll.result.duality === -1) return part.valueAlt; const isAdversary = this.actor.type === 'adversary'; @@ -123,8 +125,8 @@ export default class DamageField extends fields.SchemaField { * Prepare formulas for Damage Roll * Must be called within Action context or similar. * @param {object[]} formulas Array of formatted formulas object - * @param {object} data Action getRollData - * @returns + * @param {object} data Action getRollData + * @returns */ static formatFormulas(formulas, data) { const formattedFormulas = []; @@ -145,16 +147,25 @@ export default class DamageField extends fields.SchemaField { * @returns {string} Id from settingsConfig.mjs actionAutomationChoices */ static getAutomation() { - return (game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damage.gm) || (!game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damage.players) + return ( + (game.user.isGM && + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damage.gm) || + (!game.user.isGM && + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damage.players) + ); } - /** * Return the automation setting for applyDamage method for current user role * @returns {boolean} If applyDamage should be triggered automatically */ static getApplyAutomation() { - return (game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damageApply.gm) || (!game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damageApply.players) + return ( + (game.user.isGM && + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damageApply.gm) || + (!game.user.isGM && + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.damageApply.players) + ); } } diff --git a/module/data/fields/action/effectsField.mjs b/module/data/fields/action/effectsField.mjs index 3b8c5e43..0f205d72 100644 --- a/module/data/fields/action/effectsField.mjs +++ b/module/data/fields/action/effectsField.mjs @@ -1,4 +1,4 @@ -import { emitAsGM, GMUpdateEvent } from "../../../systemRegistration/socket.mjs"; +import { emitAsGM, GMUpdateEvent } from '../../../systemRegistration/socket.mjs'; const fields = foundry.data.fields; @@ -25,21 +25,16 @@ export default class EffectsField extends fields.ArrayField { * @param {boolean} [force=false] If the method should be executed outside of Action workflow, for ChatMessage button for example. */ static async execute(config, targets = null, force = false) { - if(!config.hasEffect) return; + if (!config.hasEffect) return; let message = config.message ?? ui.chat.collection.get(config.parent?._id); - if(!message) { + if (!message) { const roll = new CONFIG.Dice.daggerheart.DHRoll(''); roll._evaluated = true; message = config.message = await CONFIG.Dice.daggerheart.DHRoll.toMessage(roll, config); } - if(EffectsField.getAutomation() || force) { + if (EffectsField.getAutomation() || force) { targets ??= (message.system?.targets ?? config.targets).filter(t => !config.hasRoll || t.hit); - await emitAsGM( - GMUpdateEvent.UpdateEffect, - EffectsField.applyEffects.bind(this), - targets, - this.uuid - ); + await emitAsGM(GMUpdateEvent.UpdateEffect, EffectsField.applyEffects.bind(this), targets, this.uuid); // EffectsField.applyEffects.call(this, config.targets.filter(t => !config.hasRoll || t.hit)); } } @@ -53,8 +48,7 @@ export default class EffectsField extends fields.ArrayField { if (!this.effects?.length || !targets?.length) return; let effects = this.effects; targets.forEach(async token => { - if (this.hasSave && token.saved.success === true) - effects = this.effects.filter(e => e.onSave === true); + if (this.hasSave && token.saved.success === true) effects = this.effects.filter(e => e.onSave === true); if (!effects.length) return; effects.forEach(async e => { const actor = canvas.tokens.get(token.id)?.actor, @@ -96,6 +90,11 @@ export default class EffectsField extends fields.ArrayField { * @returns {boolean} If execute should be triggered automatically */ static getAutomation() { - return (game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.effect.gm) || (!game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.effect.players) + return ( + (game.user.isGM && + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.effect.gm) || + (!game.user.isGM && + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.effect.players) + ); } } diff --git a/module/data/fields/action/macroField.mjs b/module/data/fields/action/macroField.mjs index 222feb2a..e37a2852 100644 --- a/module/data/fields/action/macroField.mjs +++ b/module/data/fields/action/macroField.mjs @@ -8,7 +8,7 @@ export default class MacroField extends fields.DocumentUUIDField { /** @inheritDoc */ constructor(context = {}) { - super({ type: "Macro" }, context); + super({ type: 'Macro' }, context); } /** diff --git a/module/data/fields/action/rangeField.mjs b/module/data/fields/action/rangeField.mjs index 1237e507..d0bceada 100644 --- a/module/data/fields/action/rangeField.mjs +++ b/module/data/fields/action/rangeField.mjs @@ -1,14 +1,13 @@ const fields = foundry.data.fields; export default class RangeField extends fields.StringField { - /** @inheritDoc */ constructor(context = {}) { const options = { choices: CONFIG.DH.GENERAL.range, required: false, blank: true, - label: "DAGGERHEART.GENERAL.range" + label: 'DAGGERHEART.GENERAL.range' }; super(options, context); } diff --git a/module/data/fields/action/rollField.mjs b/module/data/fields/action/rollField.mjs index cfcfb56b..98a1d5ed 100644 --- a/module/data/fields/action/rollField.mjs +++ b/module/data/fields/action/rollField.mjs @@ -5,7 +5,12 @@ export class DHActionRollData extends foundry.abstract.DataModel { static defineSchema() { return { type: new fields.StringField({ nullable: true, initial: null, choices: CONFIG.DH.GENERAL.rollTypes }), - trait: new fields.StringField({ nullable: true, initial: null, choices: CONFIG.DH.ACTOR.abilities, label: "DAGGERHEART.GENERAL.Trait.single" }), + trait: new fields.StringField({ + nullable: true, + initial: null, + choices: CONFIG.DH.ACTOR.abilities, + label: 'DAGGERHEART.GENERAL.Trait.single' + }), difficulty: new fields.NumberField({ nullable: true, initial: null, integer: true, min: 0 }), bonus: new fields.NumberField({ nullable: true, initial: null, integer: true }), advState: new fields.StringField({ @@ -86,14 +91,14 @@ export class DHActionRollData extends foundry.abstract.DataModel { } get rollTrait() { - if(this.parent?.actor?.type !== "character") return null; + if (this.parent?.actor?.type !== 'character') return null; switch (this.type) { case CONFIG.DH.GENERAL.rollTypes.spellcast.id: return this.parent.actor?.system?.spellcastModifierTrait?.key ?? 'agility'; case CONFIG.DH.GENERAL.rollTypes.attack.id: case CONFIG.DH.GENERAL.rollTypes.trait.id: return this.useDefault || !this.trait - ? this.parent.item.system.attack?.roll?.trait ?? 'agility' + ? (this.parent.item.system.attack?.roll?.trait ?? 'agility') : this.trait; default: return null; @@ -118,21 +123,21 @@ export default class RollField extends fields.EmbeddedDataField { * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. */ static async execute(config) { - if(!config.hasRoll) return; + if (!config.hasRoll) return; config = await this.actor.diceRoll(config); - if(!config) return false; + if (!config) return false; } - + /** * Update Action Workflow config object. * Must be called within Action context. * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. */ prepareConfig(config) { - if(!config.hasRoll) return; + if (!config.hasRoll) return; config.dialog.configure = RollField.getAutomation() ? !config.dialog.configure : config.dialog.configure; - + const roll = { baseModifiers: this.roll.getModifier(), label: 'Attack', @@ -152,6 +157,11 @@ export default class RollField extends fields.EmbeddedDataField { * @returns {boolean} If execute should be triggered automatically */ static getAutomation() { - return (game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.roll.gm) || (!game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.roll.players) + return ( + (game.user.isGM && + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.roll.gm) || + (!game.user.isGM && + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.roll.players) + ); } } diff --git a/module/data/fields/action/saveField.mjs b/module/data/fields/action/saveField.mjs index 0003a4d5..b7021135 100644 --- a/module/data/fields/action/saveField.mjs +++ b/module/data/fields/action/saveField.mjs @@ -1,4 +1,4 @@ -import { abilities } from "../../../config/actorConfig.mjs"; +import { abilities } from '../../../config/actorConfig.mjs'; const fields = foundry.data.fields; @@ -33,15 +33,15 @@ export default class SaveField extends fields.SchemaField { * @param {boolean} [force=false] If the method should be executed outside of Action workflow, for ChatMessage button for example. */ static async execute(config, targets = null, force = false) { - if(!config.hasSave) return; + if (!config.hasSave) return; let message = config.message ?? ui.chat.collection.get(config.parent?._id); - - if(!message) { + + if (!message) { const roll = new CONFIG.Dice.daggerheart.DHRoll(''); roll._evaluated = true; message = config.message = await CONFIG.Dice.daggerheart.DHRoll.toMessage(roll, config); } - if(SaveField.getAutomation() !== CONFIG.DH.SETTINGS.actionAutomationChoices.never.id || force) { + if (SaveField.getAutomation() !== CONFIG.DH.SETTINGS.actionAutomationChoices.never.id || force) { targets ??= config.targets.filter(t => !config.hasRoll || t.hit); await SaveField.rollAllSave.call(this, targets, config.event, message); } else return false; @@ -52,35 +52,35 @@ export default class SaveField extends fields.SchemaField { * Must be called within Action context. * @param {object[]} targets Array of formatted targets. * @param {Event} event Triggering event - * @param {ChatMessage} message The ChatMessage the triggered button comes from. + * @param {ChatMessage} message The ChatMessage the triggered button comes from. */ static async rollAllSave(targets, event, message) { - if(!targets) return; + if (!targets) return; return new Promise(resolve => { const aPromise = []; targets.forEach(target => { aPromise.push( new Promise(async subResolve => { const actor = fromUuidSync(target.actorId); - if(actor) { - const rollSave = game.user === actor.owner ? - SaveField.rollSave.call(this, actor, event) - : actor.owner - .query('reactionRoll', { - actionId: this.uuid, - actorId: actor.uuid, - event, - message - }); + if (actor) { + const rollSave = + game.user === actor.owner + ? SaveField.rollSave.call(this, actor, event) + : actor.owner.query('reactionRoll', { + actionId: this.uuid, + actorId: actor.uuid, + event, + message + }); const result = await rollSave; await SaveField.updateSaveMessage.call(this, result, message, target.id); subResolve(); } else subResolve(); }) - ) + ); }); Promise.all(aPromise).then(result => resolve()); - }) + }); } /** @@ -93,10 +93,10 @@ export default class SaveField extends fields.SchemaField { static async rollSave(actor, event) { if (!actor) return; const title = actor.isNPC - ? game.i18n.localize('DAGGERHEART.GENERAL.reactionRoll') - : game.i18n.format('DAGGERHEART.UI.Chat.dualityRoll.abilityCheckTitle', { - ability: game.i18n.localize(abilities[this.save.trait]?.label) - }), + ? game.i18n.localize('DAGGERHEART.GENERAL.reactionRoll') + : game.i18n.format('DAGGERHEART.UI.Chat.dualityRoll.abilityCheckTitle', { + ability: game.i18n.localize(abilities[this.save.trait]?.label) + }), rollConfig = { event, title, @@ -109,7 +109,8 @@ export default class SaveField extends fields.SchemaField { hasRoll: true, data: actor.getRollData() }; - if(SaveField.getAutomation() === CONFIG.DH.SETTINGS.actionAutomationChoices.always.id) rollConfig.dialog = { configure: false }; + if (SaveField.getAutomation() === CONFIG.DH.SETTINGS.actionAutomationChoices.always.id) + rollConfig.dialog = { configure: false }; return actor.diceRoll(rollConfig); } @@ -117,31 +118,32 @@ export default class SaveField extends fields.SchemaField { * Update a Roll ChatMessage for a token according to his Reaction Roll result. * @param {object} result Result from the Reaction Roll * @param {object} message ChatMessage to update - * @param {string} targetId Token ID + * @param {string} targetId Token ID */ static async updateSaveMessage(result, message, targetId) { if (!result) return; - const updateMsg = async function(message, targetId, result) { + const updateMsg = async function (message, targetId, result) { // setTimeout(async () => { - const chatMessage = ui.chat.collection.get(message._id), - changes = { - flags: { - [game.system.id]: { - reactionRolls: { - [targetId]: - { - result: result.roll.total, - success: result.roll.success - } + const chatMessage = ui.chat.collection.get(message._id), + changes = { + flags: { + [game.system.id]: { + reactionRolls: { + [targetId]: { + result: result.roll.total, + success: result.roll.success } } } - }; - await chatMessage.update(changes); + } + }; + await chatMessage.update(changes); // }, 100); }; if (game.modules.get('dice-so-nice')?.active) - game.dice3d.waitFor3DAnimationByMessageID(result.message.id ?? result.message._id).then(async () => await updateMsg(message, targetId, result)); + game.dice3d + .waitFor3DAnimationByMessageID(result.message.id ?? result.message._id) + .then(async () => await updateMsg(message, targetId, result)); else await updateMsg(message, targetId, result); } @@ -150,25 +152,29 @@ export default class SaveField extends fields.SchemaField { * @returns {string} Id from settingsConfig.mjs actionAutomationChoices */ static getAutomation() { - return (game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.save.gm) || (!game.user.isGM && game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.save.players) + return ( + (game.user.isGM && + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.save.gm) || + (!game.user.isGM && + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).roll.save.players) + ); } /** * Send a query to an Actor owner to roll a Reaction Roll then send back the result. - * @param {object} param0 - * @param {string} param0.actionId Action ID - * @param {string} param0.actorId Actor ID - * @param {Event} param0.event Triggering event - * @param {ChatMessage} param0.message Chat Message to update - * @returns + * @param {object} param0 + * @param {string} param0.actionId Action ID + * @param {string} param0.actorId Actor ID + * @param {Event} param0.event Triggering event + * @param {ChatMessage} param0.message Chat Message to update + * @returns */ static rollSaveQuery({ actionId, actorId, event, message }) { return new Promise(async (resolve, reject) => { const actor = await fromUuid(actorId), action = await fromUuid(actionId); if (!actor || !actor?.isOwner) reject(); - SaveField.rollSave.call(action, actor, event, message) - .then(result => resolve(result)); + SaveField.rollSave.call(action, actor, event, message).then(result => resolve(result)); }); } } diff --git a/module/data/fields/action/targetField.mjs b/module/data/fields/action/targetField.mjs index 4499dcc8..486a81f1 100644 --- a/module/data/fields/action/targetField.mjs +++ b/module/data/fields/action/targetField.mjs @@ -1,7 +1,6 @@ const fields = foundry.data.fields; export default class TargetField extends fields.SchemaField { - /** @inheritDoc */ constructor(options = {}, context = {}) { const targetFields = { @@ -21,7 +20,7 @@ export default class TargetField extends fields.SchemaField { * @param {object} config Object that contains workflow datas. Usually made from Action Fields prepareConfig methods. */ prepareConfig(config) { - if (!this.target?.type) return config.targets = []; + if (!this.target?.type) return (config.targets = []); config.hasTarget = true; let targets; // If the Action is configured as self-targeted, set targets as the owner. @@ -62,15 +61,11 @@ export default class TargetField extends fields.SchemaField { * @returns {boolean} If both actors respect the provided type. */ static isTargetFriendly(actor, target, type) { - const actorDisposition = actor.token - ? actor.token.disposition - : actor.prototypeToken.disposition, + const actorDisposition = actor.token ? actor.token.disposition : actor.prototypeToken.disposition, targetDisposition = target.document.disposition; return ( - (type === CONFIG.DH.GENERAL.targetTypes.friendly.id && - actorDisposition === targetDisposition) || - (type === CONFIG.DH.GENERAL.targetTypes.hostile.id && - actorDisposition + targetDisposition === 0) + (type === CONFIG.DH.GENERAL.targetTypes.friendly.id && actorDisposition === targetDisposition) || + (type === CONFIG.DH.GENERAL.targetTypes.hostile.id && actorDisposition + targetDisposition === 0) ); } diff --git a/module/data/fields/action/usesField.mjs b/module/data/fields/action/usesField.mjs index d180ddf8..d1f3ebff 100644 --- a/module/data/fields/action/usesField.mjs +++ b/module/data/fields/action/usesField.mjs @@ -7,7 +7,7 @@ export default class UsesField extends fields.SchemaField { * Action Workflow order */ static order = 160; - + /** @inheritDoc */ constructor(options = {}, context = {}) { const usesFields = { @@ -62,7 +62,7 @@ export default class UsesField extends fields.SchemaField { /** * Prepare Uses object for Action Workflow * Must be called within Action context. - * @param {object} uses + * @param {object} uses * @returns {object} */ static calcUses(uses) { @@ -77,7 +77,7 @@ export default class UsesField extends fields.SchemaField { /** * Check if the Action still get atleast one unspent uses. * Must be called within Action context. - * @param {*} uses + * @param {*} uses * @returns {boolean} */ static hasUses(uses) { diff --git a/module/data/settings/Appearance.mjs b/module/data/settings/Appearance.mjs index 4c6e01ea..dfdd17e2 100644 --- a/module/data/settings/Appearance.mjs +++ b/module/data/settings/Appearance.mjs @@ -1,26 +1,27 @@ export default class DhAppearance extends foundry.abstract.DataModel { - static LOCALIZATION_PREFIXES = ["DAGGERHEART.SETTINGS.Appearance"]; + static LOCALIZATION_PREFIXES = ['DAGGERHEART.SETTINGS.Appearance']; static defineSchema() { const { StringField, ColorField, BooleanField, SchemaField } = foundry.data.fields; // helper to create dice style schema - const diceStyle = ({ fg, bg, outline, edge }) => new SchemaField({ - foreground: new ColorField({ required: true, initial: fg }), - background: new ColorField({ required: true, initial: bg }), - outline: new ColorField({ required: true, initial: outline }), - edge: new ColorField({ required: true, initial: edge }), - texture: new StringField({ initial: 'astralsea', required: true, blank: false }), - colorset: new StringField({ initial: 'inspired', required: true, blank: false }), - material: new StringField({ initial: 'metal', required: true, blank: false }), - system: new StringField({ initial: 'standard', required: true, blank: false }) - }); + const diceStyle = ({ fg, bg, outline, edge }) => + new SchemaField({ + foreground: new ColorField({ required: true, initial: fg }), + background: new ColorField({ required: true, initial: bg }), + outline: new ColorField({ required: true, initial: outline }), + edge: new ColorField({ required: true, initial: edge }), + texture: new StringField({ initial: 'astralsea', required: true, blank: false }), + colorset: new StringField({ initial: 'inspired', required: true, blank: false }), + material: new StringField({ initial: 'metal', required: true, blank: false }), + system: new StringField({ initial: 'standard', required: true, blank: false }) + }); return { displayFear: new StringField({ required: true, choices: CONFIG.DH.GENERAL.fearDisplay, - initial: CONFIG.DH.GENERAL.fearDisplay.token.value, + initial: CONFIG.DH.GENERAL.fearDisplay.token.value }), diceSoNice: new SchemaField({ hope: diceStyle({ fg: '#ffffff', bg: '#ffe760', outline: '#000000', edge: '#ffffff' }), @@ -39,7 +40,7 @@ export default class DhAppearance extends foundry.abstract.DataModel { target: new BooleanField() }), hideAttribution: new BooleanField(), - showGenericStatusEffects: new BooleanField({ initial: true }), + showGenericStatusEffects: new BooleanField({ initial: true }) }; } } diff --git a/module/data/settings/Automation.mjs b/module/data/settings/Automation.mjs index da71e899..beefac0b 100644 --- a/module/data/settings/Automation.mjs +++ b/module/data/settings/Automation.mjs @@ -97,13 +97,13 @@ export default class DhAutomation extends foundry.abstract.DataModel { damage: new fields.SchemaField({ gm: new fields.StringField({ required: true, - initial: "never", + initial: 'never', choices: CONFIG.DH.SETTINGS.actionAutomationChoices, label: 'DAGGERHEART.GENERAL.gm' }), players: new fields.StringField({ required: true, - initial: "never", + initial: 'never', choices: CONFIG.DH.SETTINGS.actionAutomationChoices, label: 'DAGGERHEART.GENERAL.player.plurial' }) @@ -111,13 +111,13 @@ export default class DhAutomation extends foundry.abstract.DataModel { save: new fields.SchemaField({ gm: new fields.StringField({ required: true, - initial: "never", + initial: 'never', choices: CONFIG.DH.SETTINGS.actionAutomationChoices, label: 'DAGGERHEART.GENERAL.gm' }), players: new fields.StringField({ required: true, - initial: "never", + initial: 'never', choices: CONFIG.DH.SETTINGS.actionAutomationChoices, label: 'DAGGERHEART.GENERAL.player.plurial' }) diff --git a/module/dice/damageRoll.mjs b/module/dice/damageRoll.mjs index 4d293d9d..534867f8 100644 --- a/module/dice/damageRoll.mjs +++ b/module/dice/damageRoll.mjs @@ -47,8 +47,7 @@ export default class DamageRoll extends DHRoll { ); } await super.buildPost(roll, config, message); - if (config.source?.message) - chatMessage.update({ 'system.damage': config.damage }); + if (config.source?.message) chatMessage.update({ 'system.damage': config.damage }); } static unifyDamageRoll(rolls) { diff --git a/module/dice/dhRoll.mjs b/module/dice/dhRoll.mjs index 0dcdd316..3865710a 100644 --- a/module/dice/dhRoll.mjs +++ b/module/dice/dhRoll.mjs @@ -28,7 +28,7 @@ export default class DHRoll extends Roll { static async buildConfigure(config = {}, message = {}) { config.hooks = [...this.getHooks(), '']; config.dialog ??= {}; - + for (const hook of config.hooks) { if (Hooks.call(`${CONFIG.DH.id}.preRoll${hook.capitalize()}`, config, message) === false) return null; } @@ -46,7 +46,10 @@ export default class DHRoll extends Roll { } for (const hook of config.hooks) { - if (Hooks.call(`${CONFIG.DH.id}.post${hook.capitalize()}RollConfiguration`, roll, config, message) === false) return []; + if ( + Hooks.call(`${CONFIG.DH.id}.post${hook.capitalize()}RollConfiguration`, roll, config, message) === false + ) + return []; } return roll; } @@ -91,7 +94,7 @@ export default class DHRoll extends Roll { system: config, rolls: [roll] }; - + config.selectedRollMode ??= game.settings.get('core', 'rollMode'); if (roll._evaluated) { diff --git a/module/dice/dualityRoll.mjs b/module/dice/dualityRoll.mjs index 93ac231e..8fedc368 100644 --- a/module/dice/dualityRoll.mjs +++ b/module/dice/dualityRoll.mjs @@ -153,10 +153,13 @@ export default class DualityRoll extends D20Roll { applyBaseBonus() { const modifiers = super.applyBaseBonus(); - + if (this.options.roll.trait && this.data.traits?.[this.options.roll.trait]) modifiers.unshift({ - label: this.options.roll.type === CONFIG.DH.GENERAL.rollTypes.spellcast.id ? "DAGGERHEART.CONFIG.RollTypes.spellcast.name" : `DAGGERHEART.CONFIG.Traits.${this.options.roll.trait}.name`, + label: + this.options.roll.type === CONFIG.DH.GENERAL.rollTypes.spellcast.id + ? 'DAGGERHEART.CONFIG.RollTypes.spellcast.name' + : `DAGGERHEART.CONFIG.Traits.${this.options.roll.trait}.name`, value: this.data.traits[this.options.roll.trait].value }); diff --git a/module/documents/chatMessage.mjs b/module/documents/chatMessage.mjs index 1a619a9c..d7476395 100644 --- a/module/documents/chatMessage.mjs +++ b/module/documents/chatMessage.mjs @@ -1,4 +1,4 @@ -import { emitAsGM, GMUpdateEvent } from "../systemRegistration/socket.mjs"; +import { emitAsGM, GMUpdateEvent } from '../systemRegistration/socket.mjs'; export default class DhpChatMessage extends foundry.documents.ChatMessage { targetHook = null; @@ -104,11 +104,11 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { }); if (itemDesc && autoExpandRoll.desc) itemDesc.setAttribute('open', ''); } - - if(!this.isAuthor && !this.speakerActor?.isOwner) { - const applyButtons = html.querySelector(".apply-buttons"); + + if (!this.isAuthor && !this.speakerActor?.isOwner) { + const applyButtons = html.querySelector('.apply-buttons'); applyButtons?.remove(); - const buttons = html.querySelectorAll(".ability-card-footer > .ability-use-button"); + const buttons = html.querySelectorAll('.ability-card-footer > .ability-use-button'); buttons.forEach(b => b.remove()); } } @@ -125,7 +125,7 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { html.querySelectorAll('.target-save').forEach(element => element.addEventListener('click', this.onRollSave.bind(this)) ); - + html.querySelectorAll('.roll-all-save-button').forEach(element => element.addEventListener('click', this.onRollAllSave.bind(this)) ); @@ -149,7 +149,7 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { event.stopPropagation(); const config = foundry.utils.deepClone(this.system); config.event = event; - this.system.action?.workflow.get("damage")?.execute(config, this._id, true); + this.system.action?.workflow.get('damage')?.execute(config, this._id, true); } async onApplyDamage(event) { @@ -171,9 +171,9 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { if (targets.length === 0) return ui.notifications.info(game.i18n.localize('DAGGERHEART.UI.Notifications.noTargetsSelectedOrPerm')); - + this.consumeOnSuccess(); - this.system.action?.workflow.get("applyDamage")?.execute(config, targets, true); + this.system.action?.workflow.get('applyDamage')?.execute(config, targets, true); } async onRollSave(event) { @@ -187,7 +187,12 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { game.system.api.fields.ActionFields.SaveField.rollSave.call(action, token.actor, event).then(result => emitAsGM( GMUpdateEvent.UpdateSaveMessage, - game.system.api.fields.ActionFields.SaveField.updateSaveMessage.bind(action, result, this, token.id), + game.system.api.fields.ActionFields.SaveField.updateSaveMessage.bind( + action, + result, + this, + token.id + ), { action: action.uuid, message: this._id, @@ -205,7 +210,7 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { const targets = this.system.hitTargets, config = foundry.utils.deepClone(this.system); config.event = event; - this.system.action?.workflow.get("save")?.execute(config, targets, true); + this.system.action?.workflow.get('save')?.execute(config, targets, true); } async onApplyEffect(event) { @@ -216,16 +221,15 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { if (targets.length === 0) ui.notifications.info(game.i18n.localize('DAGGERHEART.UI.Notifications.noTargetsSelectedOrPerm')); this.consumeOnSuccess(); - this.system.action?.workflow.get("effects")?.execute(config, targets, true); + this.system.action?.workflow.get('effects')?.execute(config, targets, true); } filterPermTargets(targets) { - return targets.filter(t => fromUuidSync(t.actorId)?.canUserModify(game.user, "update")) + return targets.filter(t => fromUuidSync(t.actorId)?.canUserModify(game.user, 'update')); } consumeOnSuccess() { - if (!this.system.successConsumed && !this.targetSelection) - this.system.action?.consume(this.system, true); + if (!this.system.successConsumed && !this.targetSelection) this.system.action?.consume(this.system, true); } hoverTarget(event) { diff --git a/module/documents/item.mjs b/module/documents/item.mjs index 8492f068..33daf52a 100644 --- a/module/documents/item.mjs +++ b/module/documents/item.mjs @@ -32,7 +32,7 @@ export default class DHItem extends foundry.documents.Item { /** @inheritDoc */ static migrateData(source) { - if(source.system?.attack && !source.system.attack.type) source.system.attack.type = "attack"; + if (source.system?.attack && !source.system.attack.type) source.system.attack.type = 'attack'; return super.migrateData(source); } diff --git a/module/helpers/handlebarsHelper.mjs b/module/helpers/handlebarsHelper.mjs index 83220307..e6c1a2f0 100644 --- a/module/helpers/handlebarsHelper.mjs +++ b/module/helpers/handlebarsHelper.mjs @@ -76,10 +76,10 @@ export default class RegisterHandlebarsHelpers { /** * Pluralize helper that returns the appropriate localized string based on count - * @param {number} count - The number to check for plurality + * @param {number} count - The number to check for plurality * @param {string} baseKey - The base localization key (e.g., "DAGGERHEART.GENERAL.Target") * @returns {string} The localized singular or plural string - * + * * Usage: {{pluralize currentTargets.length "DAGGERHEART.GENERAL.Target"}} * Returns: "Target" if count is exactly 1, "Targets" if count is 0, 2+, or invalid */ diff --git a/module/systemRegistration/handlebars.mjs b/module/systemRegistration/handlebars.mjs index fd569499..24047827 100644 --- a/module/systemRegistration/handlebars.mjs +++ b/module/systemRegistration/handlebars.mjs @@ -34,10 +34,7 @@ export const preloadHandlebarsTemplates = async function () { 'systems/daggerheart/templates/ui/chat/parts/damage-part.hbs', 'systems/daggerheart/templates/ui/chat/parts/target-part.hbs', 'systems/daggerheart/templates/ui/chat/parts/button-part.hbs', - 'systems/daggerheart/templates/ui/itemBrowser/itemContainer.hbs', - - 'systems/daggerheart/templates/scene/dh-config.hbs', - + 'systems/daggerheart/templates/scene/dh-config.hbs' ]); }; diff --git a/module/systemRegistration/socket.mjs b/module/systemRegistration/socket.mjs index f3f9629b..f75c7b36 100644 --- a/module/systemRegistration/socket.mjs +++ b/module/systemRegistration/socket.mjs @@ -38,8 +38,7 @@ export const registerSocketHooks = () => { const document = data.uuid ? await fromUuid(data.uuid) : null; switch (data.action) { case GMUpdateEvent.UpdateDocument: - if (document && data.update) - await document.update(data.update); + if (document && data.update) await document.update(data.update); break; case GMUpdateEvent.UpdateEffect: if (document && data.update) diff --git a/pull_request_template.md b/pull_request_template.md index c1b8cbfa..263eb5b8 100644 --- a/pull_request_template.md +++ b/pull_request_template.md @@ -1,10 +1,11 @@ --- name: Pull Request about: Create a new pull request -title: "[PR] " +title: '[PR] ' labels: pr assignees: '' --- + Is this a community PR? Please go to preview tab and click [here](?expand=1&template=community_pull_request_template.md). If not, delete this line. ## Description diff --git a/styles/less/global/elements.less b/styles/less/global/elements.less index e4a2128c..65e825a9 100755 --- a/styles/less/global/elements.less +++ b/styles/less/global/elements.less @@ -603,7 +603,7 @@ display: flex; justify-content: space-between; align-items: center; - gap: .25rem .5rem; + gap: 0.25rem 0.5rem; flex-wrap: wrap; label { @@ -620,7 +620,7 @@ &.setting-two-values { display: grid; grid-template-columns: repeat(3, 1fr); - gap: .25rem .5rem; + gap: 0.25rem 0.5rem; .form-group { justify-content: end; diff --git a/styles/less/global/global.less b/styles/less/global/global.less index 4c06d42b..7e60dffc 100644 --- a/styles/less/global/global.less +++ b/styles/less/global/global.less @@ -29,11 +29,11 @@ overflow: hidden !important; div { - opacity: .5; + opacity: 0.5; } &:before { - font-family: "Font Awesome 6 Pro"; + font-family: 'Font Awesome 6 Pro'; content: '\f110'; position: absolute; height: 100%; @@ -41,11 +41,13 @@ display: flex; align-items: center; justify-content: center; - animation: spinner 1.5s linear infinite; + animation: spinner 1.5s linear infinite; } } @keyframes spinner { - to { transform: rotate(360deg); } + to { + transform: rotate(360deg); + } } -} \ No newline at end of file +} diff --git a/styles/less/global/sheet.less b/styles/less/global/sheet.less index 08e2668f..6f77a481 100755 --- a/styles/less/global/sheet.less +++ b/styles/less/global/sheet.less @@ -15,7 +15,7 @@ body.game:is(.performance-low, .noblur) { .themed.theme-dark.application.daggerheart.sheet.dh-style, &.theme-dark .application.daggerheart { background: @dark-blue; - }; + } } .application.sheet.dh-style { diff --git a/styles/less/sheets/actors/environment/potentialAdversaries.less b/styles/less/sheets/actors/environment/potentialAdversaries.less index 6fd7af65..274362a5 100644 --- a/styles/less/sheets/actors/environment/potentialAdversaries.less +++ b/styles/less/sheets/actors/environment/potentialAdversaries.less @@ -14,4 +14,4 @@ scrollbar-color: light-dark(@dark-blue, @golden) transparent; } } -} \ No newline at end of file +} diff --git a/styles/less/ui/chat/refresh-message.less b/styles/less/ui/chat/refresh-message.less new file mode 100644 index 00000000..2fce189b --- /dev/null +++ b/styles/less/ui/chat/refresh-message.less @@ -0,0 +1,13 @@ +.daggerheart.chat.refresh-message { + header { + display: flex; + flex-direction: column; + align-items: center; + gap: 2px; + + .subtitle { + font-size: 18; + font-weight: bold; + } + } +} diff --git a/styles/less/ui/index.less b/styles/less/ui/index.less index 49d1e009..8b0c53f6 100644 --- a/styles/less/ui/index.less +++ b/styles/less/ui/index.less @@ -2,6 +2,7 @@ @import './chat/action.less'; @import './chat/chat.less'; @import './chat/downtime.less'; +@import './chat/refresh-message.less'; @import './chat/sheet.less'; @import './combat-sidebar/combat-sidebar.less'; @@ -19,6 +20,8 @@ @import './resources/resources.less'; @import './settings/settings.less'; - @import './settings/homebrew-settings/domains.less'; @import './settings/homebrew-settings/types.less'; + +@import './sidebar/tabs.less'; +@import './sidebar/daggerheartMenu.less'; diff --git a/styles/less/ui/item-browser/item-browser.less b/styles/less/ui/item-browser/item-browser.less index 5df0482a..23844128 100644 --- a/styles/less/ui/item-browser/item-browser.less +++ b/styles/less/ui/item-browser/item-browser.less @@ -395,7 +395,7 @@ text-align: center; font-weight: bold; } - + .hint { flex: unset; } @@ -409,7 +409,8 @@ &.lite, &.no-folder { - .compendium-sidebar, .menu-path { + .compendium-sidebar, + .menu-path { display: none; } } diff --git a/styles/less/ui/settings/settings.less b/styles/less/ui/settings/settings.less index 67fe7718..788db394 100644 --- a/styles/less/ui/settings/settings.less +++ b/styles/less/ui/settings/settings.less @@ -4,7 +4,7 @@ fieldset { display: flex; flex-direction: column; - gap: .5rem; + gap: 0.5rem; &.two-columns { display: grid; @@ -127,4 +127,4 @@ text-align: center; } } -} \ No newline at end of file +} diff --git a/styles/less/ui/sidebar/daggerheartMenu.less b/styles/less/ui/sidebar/daggerheartMenu.less new file mode 100644 index 00000000..e975954c --- /dev/null +++ b/styles/less/ui/sidebar/daggerheartMenu.less @@ -0,0 +1,38 @@ +.tab.sidebar-tab.daggerheartMenu-sidebar { + padding: 0 4px; + + .menu-refresh-container { + display: flex; + flex-direction: column; + gap: 8px; + + .menu-refresh-inner-container { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 8px; + + .experience-chip { + display: flex; + align-items: center; + border-radius: 5px; + width: fit-content; + gap: 5px; + cursor: pointer; + padding: 5px; + background: light-dark(@dark-blue-10, @golden-10); + color: light-dark(@dark-blue, @golden); + + .label { + font-style: normal; + font-weight: 400; + font-size: 14px; + line-height: 17px; + } + + &.selected { + background: light-dark(@dark-blue-40, @golden-40); + } + } + } + } +} diff --git a/styles/less/ui/sidebar/tabs.less b/styles/less/ui/sidebar/tabs.less new file mode 100644 index 00000000..073d3ef3 --- /dev/null +++ b/styles/less/ui/sidebar/tabs.less @@ -0,0 +1,8 @@ +#interface #ui-right #sidebar { + menu li button { + img { + width: 22px; + max-width: unset; + } + } +} diff --git a/templates/sidebar/daggerheart-menu/main.hbs b/templates/sidebar/daggerheart-menu/main.hbs new file mode 100644 index 00000000..6f31f165 --- /dev/null +++ b/templates/sidebar/daggerheart-menu/main.hbs @@ -0,0 +1,22 @@ +
+
+ {{localize "Refresh Features"}} + + +
+
\ No newline at end of file diff --git a/templates/sidebar/tabs.hbs b/templates/sidebar/tabs.hbs new file mode 100644 index 00000000..9063ac5d --- /dev/null +++ b/templates/sidebar/tabs.hbs @@ -0,0 +1,18 @@ + diff --git a/templates/ui/chat/refreshMessage.hbs b/templates/ui/chat/refreshMessage.hbs new file mode 100644 index 00000000..a29baa20 --- /dev/null +++ b/templates/ui/chat/refreshMessage.hbs @@ -0,0 +1,6 @@ +
+
+
{{localize "DAGGERHEART.UI.Chat.refreshMessage.header"}}
+
{{types}}
+
+
\ No newline at end of file From 2176038ec6a9939f52eef2dfe5c1a7395d684dc6 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Sun, 7 Sep 2025 00:47:21 +0200 Subject: [PATCH 056/260] Added homebrew for armor and weapon fatures (#1166) Co-authored-by: Chris Ryan --- daggerheart.mjs | 2 + lang/en.json | 5 + .../settings/homebrewSettings.mjs | 65 +++-- .../applications/sheets-configs/_module.mjs | 3 +- .../sheets-configs/action-config.mjs | 2 +- .../sheets-configs/activeEffectConfig.mjs | 7 + .../setting-active-effect-config.mjs | 227 ++++++++++++++++++ ...eConfig.mjs => setting-feature-config.mjs} | 68 +++++- module/applications/sheets/items/armor.mjs | 2 +- module/applications/sheets/items/weapon.mjs | 2 +- module/config/itemConfig.mjs | 56 +++++ module/data/activeEffect/baseEffect.mjs | 20 ++ module/data/item/armor.mjs | 26 +- module/data/item/weapon.mjs | 18 +- module/data/settings/Homebrew.mjs | 30 ++- .../settings/downtime-config/effects.hbs | 15 ++ templates/settings/downtime-config/main.hbs | 10 +- .../homebrew-settings/itemFeatures.hbs | 35 +++ templates/sheets/activeEffect/changes.hbs | 36 +-- templates/sheets/activeEffect/settings.hbs | 8 +- 20 files changed, 560 insertions(+), 77 deletions(-) create mode 100644 module/applications/sheets-configs/setting-active-effect-config.mjs rename module/applications/sheets-configs/{downtimeConfig.mjs => setting-feature-config.mjs} (66%) create mode 100644 templates/settings/downtime-config/effects.hbs create mode 100644 templates/settings/homebrew-settings/itemFeatures.hbs diff --git a/daggerheart.mjs b/daggerheart.mjs index f5f5e303..d7aba401 100644 --- a/daggerheart.mjs +++ b/daggerheart.mjs @@ -1,5 +1,6 @@ import { SYSTEM } from './module/config/system.mjs'; import * as applications from './module/applications/_module.mjs'; +import * as data from './module/data/_module.mjs'; import * as models from './module/data/_module.mjs'; import * as documents from './module/documents/_module.mjs'; import * as dice from './module/dice/_module.mjs'; @@ -26,6 +27,7 @@ Hooks.once('init', () => { CONFIG.DH = SYSTEM; game.system.api = { applications, + data, models, documents, dice, diff --git a/lang/en.json b/lang/en.json index 8de962bd..85e941dc 100755 --- a/lang/en.json +++ b/lang/en.json @@ -1917,6 +1917,7 @@ "roll": "Roll", "rules": "Rules", "types": "Types", + "itemFeatures": "Item Features", "questions": "Questions" }, "Tiers": { @@ -1934,6 +1935,7 @@ "amount": "Amount", "any": "Any", "armor": "Armor", + "armorFeatures": "Armor Features", "armors": "Armors", "armorScore": "Armor Score", "activeEffects": "Active Effects", @@ -2046,6 +2048,7 @@ "used": "Used", "uses": "Uses", "value": "Value", + "weaponFeatures": "Weapon Features", "weapons": "Weapons", "withThing": "With {thing}" }, @@ -2276,7 +2279,9 @@ }, "Homebrew": { "newDowntimeMove": "Downtime Move", + "newFeature": "New ItemFeature", "downtimeMoves": "Downtime Moves", + "itemFeatures": "Item Features", "nrChoices": "# Moves Per Rest", "resetMovesTitle": "Reset {type} Downtime Moves", "resetMovesText": "Are you sure you want to reset?", diff --git a/module/applications/settings/homebrewSettings.mjs b/module/applications/settings/homebrewSettings.mjs index c2ac4a89..e880f7ee 100644 --- a/module/applications/settings/homebrewSettings.mjs +++ b/module/applications/settings/homebrewSettings.mjs @@ -53,6 +53,7 @@ export default class DhHomebrewSettings extends HandlebarsApplicationMixin(Appli settings: { template: 'systems/daggerheart/templates/settings/homebrew-settings/settings.hbs' }, domains: { template: 'systems/daggerheart/templates/settings/homebrew-settings/domains.hbs' }, types: { template: 'systems/daggerheart/templates/settings/homebrew-settings/types.hbs' }, + itemTypes: { template: 'systems/daggerheart/templates/settings/homebrew-settings/itemFeatures.hbs' }, downtime: { template: 'systems/daggerheart/templates/settings/homebrew-settings/downtime.hbs' }, footer: { template: 'systems/daggerheart/templates/settings/homebrew-settings/footer.hbs' } }; @@ -60,7 +61,7 @@ export default class DhHomebrewSettings extends HandlebarsApplicationMixin(Appli /** @inheritdoc */ static TABS = { main: { - tabs: [{ id: 'settings' }, { id: 'domains' }, { id: 'types' }, { id: 'downtime' }], + tabs: [{ id: 'settings' }, { id: 'domains' }, { id: 'types' }, { id: 'itemFeatures' }, { id: 'downtime' }], initial: 'settings', labelPrefix: 'DAGGERHEART.GENERAL.Tabs' } @@ -115,33 +116,53 @@ export default class DhHomebrewSettings extends HandlebarsApplicationMixin(Appli } static async addItem(_, target) { - await this.settings.updateSource({ - [`restMoves.${target.dataset.type}.moves.${foundry.utils.randomID()}`]: { - name: game.i18n.localize('DAGGERHEART.SETTINGS.Homebrew.newDowntimeMove'), - img: 'icons/magic/life/cross-worn-green.webp', - description: '', - actions: [] - } - }); + const { type } = target.dataset; + if (['shortRest', 'longRest'].includes(type)) { + await this.settings.updateSource({ + [`restMoves.${type}.moves.${foundry.utils.randomID()}`]: { + name: game.i18n.localize('DAGGERHEART.SETTINGS.Homebrew.newDowntimeMove'), + img: 'icons/magic/life/cross-worn-green.webp', + description: '', + actions: [] + } + }); + } else if (['armorFeatures', 'weaponFeatures'].includes(type)) { + await this.settings.updateSource({ + [`itemFeatures.${type}.${foundry.utils.randomID()}`]: { + name: game.i18n.localize('DAGGERHEART.SETTINGS.Homebrew.newFeature'), + img: 'icons/magic/life/cross-worn-green.webp', + description: '', + actions: [], + effects: [] + } + }); + } + this.render(); } static async editItem(_, target) { - const move = this.settings.restMoves[target.dataset.type].moves[target.dataset.id]; - const path = `restMoves.${target.dataset.type}.moves.${target.dataset.id}`; - const editedMove = await game.system.api.applications.sheetConfigs.DowntimeConfig.configure( - move, - path, - this.settings - ); - if (!editedMove) return; + const { type, id } = target.dataset; + const isDowntime = ['shortRest', 'longRest'].includes(type); + const path = isDowntime ? `restMoves.${type}.moves.${id}` : `itemFeatures.${type}.${id}`; + const featureBase = isDowntime ? this.settings.restMoves[type].moves[id] : this.settings.itemFeatures[type][id]; - await this.updateAction.bind(this)(editedMove, target.dataset.type, target.dataset.id); + const editedBase = await game.system.api.applications.sheetConfigs.SettingFeatureConfig.configure( + featureBase, + path, + this.settings, + { hasIcon: isDowntime, hasEffects: !isDowntime } + ); + if (!editedBase) return; + + await this.updateAction.bind(this)(editedBase, target.dataset.type, target.dataset.id); } async updateAction(data, type, id) { + const isDowntime = ['shortRest', 'longRest'].includes(type); + const path = isDowntime ? `restMoves.${type}.moves` : `itemFeatures.${type}`; await this.settings.updateSource({ - [`restMoves.${type}.moves.${id}`]: { + [`${path}.${id}`]: { actions: data.actions, name: data.name, icon: data.icon, @@ -149,12 +170,16 @@ export default class DhHomebrewSettings extends HandlebarsApplicationMixin(Appli description: data.description } }); + this.render(); } static async removeItem(_, target) { + const { type, id } = target.dataset; + const isDowntime = ['shortRest', 'longRest'].includes(type); + const path = isDowntime ? `restMoves.${type}.moves` : `itemFeatures.${type}`; await this.settings.updateSource({ - [`restMoves.${target.dataset.type}.moves.-=${target.dataset.id}`]: null + [`${path}.-=${id}`]: null }); this.render(); } diff --git a/module/applications/sheets-configs/_module.mjs b/module/applications/sheets-configs/_module.mjs index ed062163..a8a625d0 100644 --- a/module/applications/sheets-configs/_module.mjs +++ b/module/applications/sheets-configs/_module.mjs @@ -2,7 +2,8 @@ export { default as ActionConfig } from './action-config.mjs'; export { default as CharacterSettings } from './character-settings.mjs'; export { default as AdversarySettings } from './adversary-settings.mjs'; export { default as CompanionSettings } from './companion-settings.mjs'; -export { default as DowntimeConfig } from './downtimeConfig.mjs'; +export { default as SettingActiveEffectConfig } from './setting-active-effect-config.mjs'; +export { default as SettingFeatureConfig } from './setting-feature-config.mjs'; export { default as EnvironmentSettings } from './environment-settings.mjs'; export { default as ActiveEffectConfig } from './activeEffectConfig.mjs'; export { default as DhTokenConfig } from './token-config.mjs'; diff --git a/module/applications/sheets-configs/action-config.mjs b/module/applications/sheets-configs/action-config.mjs index 96b6cc48..0f92baa1 100644 --- a/module/applications/sheets-configs/action-config.mjs +++ b/module/applications/sheets-configs/action-config.mjs @@ -138,7 +138,7 @@ export default class DHActionConfig extends DaggerheartSheet(ApplicationV2) { }; } - if (this.action.parent.metadata.isQuantifiable) { + if (this.action.parent.metadata?.isQuantifiable) { options.quantity = { label: 'DAGGERHEART.GENERAL.itemQuantity', group: 'Global' diff --git a/module/applications/sheets-configs/activeEffectConfig.mjs b/module/applications/sheets-configs/activeEffectConfig.mjs index 25f7d2b5..6a466c55 100644 --- a/module/applications/sheets-configs/activeEffectConfig.mjs +++ b/module/applications/sheets-configs/activeEffectConfig.mjs @@ -96,6 +96,13 @@ export default class DhActiveEffectConfig extends foundry.applications.sheets.Ac }); } + async _prepareContext(options) { + const context = await super._prepareContext(options); + context.systemFields = context.document.system.schema.fields; + + return context; + } + async _preparePartContext(partId, context) { const partContext = await super._preparePartContext(partId, context); switch (partId) { diff --git a/module/applications/sheets-configs/setting-active-effect-config.mjs b/module/applications/sheets-configs/setting-active-effect-config.mjs new file mode 100644 index 00000000..9b57b47a --- /dev/null +++ b/module/applications/sheets-configs/setting-active-effect-config.mjs @@ -0,0 +1,227 @@ +import autocomplete from 'autocompleter'; + +const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; + +export default class SettingActiveEffectConfig extends HandlebarsApplicationMixin(ApplicationV2) { + constructor(effect) { + super({}); + + this.effect = foundry.utils.deepClone(effect); + const ignoredActorKeys = ['config', 'DhEnvironment']; + this.changeChoices = Object.keys(game.system.api.models.actors).reduce((acc, key) => { + if (!ignoredActorKeys.includes(key)) { + const model = game.system.api.models.actors[key]; + const attributes = CONFIG.Token.documentClass.getTrackedAttributes(model); + const group = game.i18n.localize(model.metadata.label); + const choices = CONFIG.Token.documentClass + .getTrackedAttributeChoices(attributes, model) + .map(x => ({ ...x, group: group })); + acc.push(...choices); + } + return acc; + }, []); + } + + static DEFAULT_OPTIONS = { + classes: ['daggerheart', 'sheet', 'dh-style', 'active-effect-config'], + tag: 'form', + position: { + width: 560 + }, + form: { + submitOnChange: false, + closeOnSubmit: false, + handler: SettingActiveEffectConfig.#onSubmit + }, + actions: { + editImage: SettingActiveEffectConfig.#editImage, + addChange: SettingActiveEffectConfig.#addChange, + deleteChange: SettingActiveEffectConfig.#deleteChange + } + }; + + static PARTS = { + header: { template: 'systems/daggerheart/templates/sheets/activeEffect/header.hbs' }, + tabs: { template: 'templates/generic/tab-navigation.hbs' }, + details: { template: 'systems/daggerheart/templates/sheets/activeEffect/details.hbs', scrollable: [''] }, + settings: { template: 'systems/daggerheart/templates/sheets/activeEffect/settings.hbs' }, + changes: { + template: 'systems/daggerheart/templates/sheets/activeEffect/changes.hbs', + scrollable: ['ol[data-changes]'] + }, + footer: { template: 'systems/daggerheart/templates/sheets/global/tabs/tab-form-footer.hbs' } + }; + + static TABS = { + sheet: { + tabs: [ + { id: 'details', icon: 'fa-solid fa-book' }, + { id: 'settings', icon: 'fa-solid fa-bars', label: 'DAGGERHEART.GENERAL.Tabs.settings' }, + { id: 'changes', icon: 'fa-solid fa-gears' } + ], + initial: 'details', + labelPrefix: 'EFFECT.TABS' + } + }; + + /**@inheritdoc */ + async _onFirstRender(context, options) { + await super._onFirstRender(context, options); + } + + async _prepareContext(_options) { + const context = await super._prepareContext(_options); + context.source = this.effect; + context.fields = game.system.api.documents.DhActiveEffect.schema.fields; + context.systemFields = game.system.api.data.activeEffects.BaseEffect._schema.fields; + + return context; + } + + _attachPartListeners(partId, htmlElement, options) { + super._attachPartListeners(partId, htmlElement, options); + const changeChoices = this.changeChoices; + + htmlElement.querySelectorAll('.effect-change-input').forEach(element => { + autocomplete({ + input: element, + fetch: function (text, update) { + if (!text) { + update(changeChoices); + } else { + text = text.toLowerCase(); + var suggestions = changeChoices.filter(n => n.label.toLowerCase().includes(text)); + update(suggestions); + } + }, + render: function (item, search) { + const label = game.i18n.localize(item.label); + const matchIndex = label.toLowerCase().indexOf(search); + + const beforeText = label.slice(0, matchIndex); + const matchText = label.slice(matchIndex, matchIndex + search.length); + const after = label.slice(matchIndex + search.length, label.length); + + const element = document.createElement('li'); + element.innerHTML = `${beforeText}${matchText ? `${matchText}` : ''}${after}`; + if (item.hint) { + element.dataset.tooltip = game.i18n.localize(item.hint); + } + + return element; + }, + renderGroup: function (label) { + const itemElement = document.createElement('div'); + itemElement.textContent = game.i18n.localize(label); + return itemElement; + }, + onSelect: function (item) { + element.value = `system.${item.value}`; + }, + click: e => e.fetch(), + customize: function (_input, _inputRect, container) { + container.style.zIndex = foundry.applications.api.ApplicationV2._maxZ; + }, + minLength: 0 + }); + }); + } + + async _preparePartContext(partId, context) { + if (partId in context.tabs) context.tab = context.tabs[partId]; + switch (partId) { + case 'details': + context.isActorEffect = false; + context.isItemEffect = true; + const useGeneric = game.settings.get( + CONFIG.DH.id, + CONFIG.DH.SETTINGS.gameSettings.appearance + ).showGenericStatusEffects; + if (!useGeneric) { + context.statuses = Object.values(CONFIG.DH.GENERAL.conditions).map(status => ({ + value: status.id, + label: game.i18n.localize(status.name) + })); + } + break; + case 'changes': + context.modes = Object.entries(CONST.ACTIVE_EFFECT_MODES).reduce((modes, [key, value]) => { + modes[value] = game.i18n.localize(`EFFECT.MODE_${key}`); + return modes; + }, {}); + + context.priorities = ActiveEffectConfig.DEFAULT_PRIORITIES; + break; + } + + return context; + } + + static async #onSubmit(event, form, formData) { + this.data = foundry.utils.expandObject(formData.object); + this.close(); + } + + /** + * Edit a Document image. + * @this {DocumentSheetV2} + * @type {ApplicationClickAction} + */ + static async #editImage(_event, target) { + if (target.nodeName !== 'IMG') { + throw new Error('The editImage action is available only for IMG elements.'); + } + + const attr = target.dataset.edit; + const current = foundry.utils.getProperty(this.effect, attr); + const fp = new FilePicker.implementation({ + current, + type: 'image', + callback: path => (target.src = path), + position: { + top: this.position.top + 40, + left: this.position.left + 10 + } + }); + + await fp.browse(); + } + + /** + * Add a new change to the effect's changes array. + * @this {ActiveEffectConfig} + * @type {ApplicationClickAction} + */ + static async #addChange() { + const submitData = foundry.utils.expandObject(new FormDataExtended(this.form).object); + const changes = Object.values(submitData.changes ?? {}); + changes.push({}); + + this.effect.changes = changes; + this.render(); + } + + /** + * Delete a change from the effect's changes array. + * @this {ActiveEffectConfig} + * @type {ApplicationClickAction} + */ + static async #deleteChange(event) { + const submitData = foundry.utils.expandObject(new FormDataExtended(this.form).object); + const changes = Object.values(submitData.changes); + const row = event.target.closest('li'); + const index = Number(row.dataset.index) || 0; + changes.splice(index, 1); + + this.effect.changes = changes; + this.render(); + } + + static async configure(effect, options = {}) { + return new Promise(resolve => { + const app = new this(effect, options); + app.addEventListener('close', () => resolve(app.data), { once: true }); + app.render({ force: true }); + }); + } +} diff --git a/module/applications/sheets-configs/downtimeConfig.mjs b/module/applications/sheets-configs/setting-feature-config.mjs similarity index 66% rename from module/applications/sheets-configs/downtimeConfig.mjs rename to module/applications/sheets-configs/setting-feature-config.mjs index 80aab900..e775f93d 100644 --- a/module/applications/sheets-configs/downtimeConfig.mjs +++ b/module/applications/sheets-configs/setting-feature-config.mjs @@ -3,8 +3,8 @@ import DHActionConfig from './action-config.mjs'; const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; -export default class DowntimeConfig extends HandlebarsApplicationMixin(ApplicationV2) { - constructor(move, movePath, settings, options) { +export default class SettingFeatureConfig extends HandlebarsApplicationMixin(ApplicationV2) { + constructor(move, movePath, settings, optionalParts, options) { super(options); this.move = move; @@ -12,6 +12,10 @@ export default class DowntimeConfig extends HandlebarsApplicationMixin(Applicati this.movePath = movePath; this.actionsPath = `${movePath}.actions`; this.settings = settings; + + const { hasIcon, hasEffects } = optionalParts; + this.hasIcon = hasIcon; + this.hasEffects = hasEffects; } get title() { @@ -30,6 +34,7 @@ export default class DowntimeConfig extends HandlebarsApplicationMixin(Applicati addItem: this.addItem, editItem: this.editItem, removeItem: this.removeItem, + addEffect: this.addEffect, resetMoves: this.resetMoves, saveForm: this.saveForm }, @@ -41,13 +46,14 @@ export default class DowntimeConfig extends HandlebarsApplicationMixin(Applicati tabs: { template: 'systems/daggerheart/templates/sheets/global/tabs/tab-navigation.hbs' }, main: { template: 'systems/daggerheart/templates/settings/downtime-config/main.hbs' }, actions: { template: 'systems/daggerheart/templates/settings/downtime-config/actions.hbs' }, + effects: { template: 'systems/daggerheart/templates/settings/downtime-config/effects.hbs' }, footer: { template: 'systems/daggerheart/templates/settings/downtime-config/footer.hbs' } }; /** @inheritdoc */ static TABS = { primary: { - tabs: [{ id: 'main' }, { id: 'actions' }], + tabs: [{ id: 'main' }, { id: 'actions' }, { id: 'effects' }], initial: 'main', labelPrefix: 'DAGGERHEART.GENERAL.Tabs' } @@ -55,6 +61,9 @@ export default class DowntimeConfig extends HandlebarsApplicationMixin(Applicati async _prepareContext(_options) { const context = await super._prepareContext(_options); + context.tabs = this._filterTabs(context.tabs); + context.hasIcon = this.hasIcon; + context.hasEffects = this.hasEffects; context.move = this.move; context.move.enrichedDescription = await foundry.applications.ux.TextEditor.enrichHTML( context.move.description @@ -130,13 +139,30 @@ export default class DowntimeConfig extends HandlebarsApplicationMixin(Applicati } static async editItem(_, target) { - const actionId = target.dataset.id; - const action = this.move.actions.get(actionId); - await new DHActionConfig(action, async updatedMove => { - await this.settings.updateSource({ [`${this.actionsPath}.${actionId}`]: updatedMove }); + const { type, id } = target.dataset; + if (type === 'effect') { + const effectIndex = this.move.effects.findIndex(x => x.id === id); + const effect = this.move.effects[effectIndex]; + const updatedEffect = + await game.system.api.applications.sheetConfigs.SettingActiveEffectConfig.configure(effect); + if (!updatedEffect) return; + + await this.settings.updateSource({ + [`${this.movePath}.effects`]: this.move.effects.reduce((acc, effect, index) => { + acc.push(index === effectIndex ? { ...updatedEffect, id: effect.id } : effect); + return acc; + }, []) + }); this.move = foundry.utils.getProperty(this.settings, this.movePath); this.render(); - }).render(true); + } else { + const action = this.move.actions.get(id); + await new DHActionConfig(action, async updatedMove => { + await this.settings.updateSource({ [`${this.actionsPath}.${id}`]: updatedMove }); + this.move = foundry.utils.getProperty(this.settings, this.movePath); + this.render(); + }).render(true); + } } static async removeItem(_, target) { @@ -145,16 +171,38 @@ export default class DowntimeConfig extends HandlebarsApplicationMixin(Applicati this.render(); } + static async addEffect(_, target) { + const currentEffects = foundry.utils.getProperty(this.settings, `${this.movePath}.effects`); + await this.settings.updateSource({ + [`${this.movePath}.effects`]: [ + ...currentEffects, + game.system.api.data.activeEffects.BaseEffect.getDefaultObject() + ] + }); + + this.move = foundry.utils.getProperty(this.settings, this.movePath); + this.render(); + } + static resetMoves() {} + _filterTabs(tabs) { + return this.hasEffects + ? tabs + : Object.keys(tabs).reduce((acc, key) => { + if (key !== 'effects') acc[key] = tabs[key]; + return acc; + }, {}); + } + /** @override */ _onClose(options = {}) { if (!options.submitted) this.move = null; } - static async configure(move, movePath, settings, options = {}) { + static async configure(move, movePath, settings, optionalParts, options = {}) { return new Promise(resolve => { - const app = new this(move, movePath, settings, options); + const app = new this(move, movePath, settings, optionalParts, options); app.addEventListener('close', () => resolve(app.move), { once: true }); app.render({ force: true }); }); diff --git a/module/applications/sheets/items/armor.mjs b/module/applications/sheets/items/armor.mjs index bdc482c3..2550b415 100644 --- a/module/applications/sheets/items/armor.mjs +++ b/module/applications/sheets/items/armor.mjs @@ -8,7 +8,7 @@ export default class ArmorSheet extends ItemAttachmentSheet(DHBaseItemSheet) { tagifyConfigs: [ { selector: '.features-input', - options: () => CONFIG.DH.ITEM.armorFeatures, + options: () => CONFIG.DH.ITEM.orderedArmorFeatures(), callback: ArmorSheet.#onFeatureSelect } ] diff --git a/module/applications/sheets/items/weapon.mjs b/module/applications/sheets/items/weapon.mjs index 2533287b..f5c7dddf 100644 --- a/module/applications/sheets/items/weapon.mjs +++ b/module/applications/sheets/items/weapon.mjs @@ -8,7 +8,7 @@ export default class WeaponSheet extends ItemAttachmentSheet(DHBaseItemSheet) { tagifyConfigs: [ { selector: '.features-input', - options: () => CONFIG.DH.ITEM.weaponFeatures, + options: () => CONFIG.DH.ITEM.orderedWeaponFeatures(), callback: WeaponSheet.#onFeatureSelect } ] diff --git a/module/config/itemConfig.mjs b/module/config/itemConfig.mjs index 7e9f75ea..d815181b 100644 --- a/module/config/itemConfig.mjs +++ b/module/config/itemConfig.mjs @@ -452,6 +452,34 @@ export const armorFeatures = { } }; +export const allArmorFeatures = () => { + const homebrewFeatures = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).itemFeatures + .armorFeatures; + return { + ...armorFeatures, + ...Object.keys(homebrewFeatures).reduce((acc, key) => { + const feature = homebrewFeatures[key]; + acc[key] = { ...feature, label: feature.name }; + return acc; + }, {}) + }; +}; + +export const orderedArmorFeatures = () => { + const homebrewFeatures = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).itemFeatures + .armorFeatures; + const allFeatures = { ...armorFeatures, ...homebrewFeatures }; + const all = Object.keys(allFeatures).map(key => { + const feature = allFeatures[key]; + return { + ...feature, + id: key, + label: feature.label ?? feature.name + }; + }); + return Object.values(all).sort((a, b) => game.i18n.localize(a.label).localeCompare(game.i18n.localize(b.label))); +}; + export const weaponFeatures = { barrier: { label: 'DAGGERHEART.CONFIG.WeaponFeature.barrier.name', @@ -1383,6 +1411,34 @@ export const weaponFeatures = { } }; +export const allWeaponFeatures = () => { + const homebrewFeatures = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).itemFeatures + .weaponFeatures; + return { + ...weaponFeatures, + ...Object.keys(homebrewFeatures).reduce((acc, key) => { + const feature = homebrewFeatures[key]; + acc[key] = { ...feature, label: feature.name }; + return acc; + }, {}) + }; +}; + +export const orderedWeaponFeatures = () => { + const homebrewFeatures = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Homebrew).itemFeatures + .weaponFeatures; + const allFeatures = { ...weaponFeatures, ...homebrewFeatures }; + const all = Object.keys(allFeatures).map(key => { + const feature = allFeatures[key]; + return { + ...feature, + id: key, + label: feature.label ?? feature.name + }; + }); + return Object.values(all).sort((a, b) => game.i18n.localize(a.label).localeCompare(game.i18n.localize(b.label))); +}; + export const featureTypes = { ancestry: { id: 'ancestry', diff --git a/module/data/activeEffect/baseEffect.mjs b/module/data/activeEffect/baseEffect.mjs index 0ac87de0..770e3462 100644 --- a/module/data/activeEffect/baseEffect.mjs +++ b/module/data/activeEffect/baseEffect.mjs @@ -30,4 +30,24 @@ export default class BaseEffect extends foundry.abstract.TypeDataModel { }) }; } + + static getDefaultObject() { + return { + name: 'New Effect', + id: foundry.utils.randomID(), + disabled: false, + img: 'icons/magic/life/heart-cross-blue.webp', + description: '', + statuses: [], + changes: [], + system: { + rangeDependence: { + enabled: false, + type: CONFIG.DH.GENERAL.rangeInclusion.withinRange.id, + target: CONFIG.DH.GENERAL.otherTargetTypes.hostile.id, + range: CONFIG.DH.GENERAL.range.melee.id + } + } + }; + } } diff --git a/module/data/item/armor.mjs b/module/data/item/armor.mjs index 7f70d3f7..ca1ca004 100644 --- a/module/data/item/armor.mjs +++ b/module/data/item/armor.mjs @@ -1,5 +1,4 @@ import AttachableItem from './attachableItem.mjs'; -import { armorFeatures } from '../../config/itemConfig.mjs'; export default class DHArmor extends AttachableItem { /** @inheritDoc */ @@ -25,7 +24,7 @@ export default class DHArmor extends AttachableItem { new fields.SchemaField({ value: new fields.StringField({ required: true, - choices: CONFIG.DH.ITEM.armorFeatures, + choices: CONFIG.DH.ITEM.allArmorFeatures, blank: true }), effectIds: new fields.ArrayField(new fields.StringField({ required: true })), @@ -60,13 +59,14 @@ export default class DHArmor extends AttachableItem { const allowed = await super._preUpdate(changes, options, user); if (allowed === false) return false; + const changedArmorFeatures = changes.system?.armorFeatures ?? []; + const removedFeatures = this.armorFeatures.filter(x => changedArmorFeatures.every(y => y.value !== x.value)); if (changes.system?.armorFeatures) { - const removed = this.armorFeatures.filter(x => !changes.system.armorFeatures.includes(x)); - const added = changes.system.armorFeatures.filter(x => !this.armorFeatures.includes(x)); + const added = changedArmorFeatures.filter(x => this.armorFeatures.every(y => y.value !== x.value)); const effectIds = []; const actionIds = []; - for (var feature of removed) { + for (var feature of removedFeatures) { effectIds.push(...feature.effectIds); actionIds.push(...feature.actionIds); } @@ -76,8 +76,9 @@ export default class DHArmor extends AttachableItem { return acc; }, {}); + const allFeatures = CONFIG.DH.ITEM.allArmorFeatures(); for (const feature of added) { - const featureData = armorFeatures[feature.value]; + const featureData = allFeatures[feature.value]; if (featureData.effects?.length > 0) { const embeddedItems = await this.parent.createEmbeddedDocuments( 'ActiveEffect', @@ -91,7 +92,7 @@ export default class DHArmor extends AttachableItem { } const newActions = {}; - if (featureData.actions?.length > 0) { + if (featureData.actions?.length > 0 || featureData.actions?.size > 0) { for (let action of featureData.actions) { const embeddedEffects = await this.parent.createEmbeddedDocuments( 'ActiveEffect', @@ -110,10 +111,12 @@ export default class DHArmor extends AttachableItem { { ...cls.getSourceConfig(this), ...action, + type: action.type, _id: actionId, name: game.i18n.localize(action.name), description: game.i18n.localize(action.description), - effects: embeddedEffects.map(x => ({ _id: x.id })) + effects: embeddedEffects.map(x => ({ _id: x.id })), + systemPath: 'actions' }, { parent: this } ); @@ -126,6 +129,10 @@ export default class DHArmor extends AttachableItem { } } + _onUpdate(a, b, c) { + super._onUpdate(a, b, c); + } + /** * Generates a list of localized tags based on this item's type-specific properties. * @returns {string[]} An array of localized tag strings. @@ -145,7 +152,8 @@ export default class DHArmor extends AttachableItem { */ _getLabels() { const labels = []; - if(this.baseScore) labels.push(`${game.i18n.localize('DAGGERHEART.ITEMS.Armor.baseScore')}: ${this.baseScore}`) + if (this.baseScore) + labels.push(`${game.i18n.localize('DAGGERHEART.ITEMS.Armor.baseScore')}: ${this.baseScore}`); return labels; } diff --git a/module/data/item/weapon.mjs b/module/data/item/weapon.mjs index 07a5c028..b2d937b5 100644 --- a/module/data/item/weapon.mjs +++ b/module/data/item/weapon.mjs @@ -39,7 +39,7 @@ export default class DHWeapon extends AttachableItem { new fields.SchemaField({ value: new fields.StringField({ required: true, - choices: CONFIG.DH.ITEM.weaponFeatures, + choices: CONFIG.DH.ITEM.allWeaponFeatures, blank: true }), effectIds: new fields.ArrayField(new fields.StringField({ required: true })), @@ -116,13 +116,14 @@ export default class DHWeapon extends AttachableItem { const allowed = await super._preUpdate(changes, options, user); if (allowed === false) return false; + const changedWeaponFeatures = changes.system?.weaponFeatures ?? []; + const removedFeatures = this.weaponFeatures.filter(x => changedWeaponFeatures.every(y => y.value !== x.value)); if (changes.system?.weaponFeatures) { - const removed = this.weaponFeatures.filter(x => !changes.system.weaponFeatures.includes(x)); - const added = changes.system.weaponFeatures.filter(x => !this.weaponFeatures.includes(x)); + const added = changedWeaponFeatures.filter(x => this.weaponFeatures.every(y => y.value !== x.value)); const removedEffectsUpdate = []; const removedActionsUpdate = []; - for (let weaponFeature of removed) { + for (let weaponFeature of removedFeatures) { removedEffectsUpdate.push(...weaponFeature.effectIds); removedActionsUpdate.push(...weaponFeature.actionIds); } @@ -133,8 +134,9 @@ export default class DHWeapon extends AttachableItem { return acc; }, {}); + const allFeatures = CONFIG.DH.ITEM.allWeaponFeatures(); for (let weaponFeature of added) { - const featureData = CONFIG.DH.ITEM.weaponFeatures[weaponFeature.value]; + const featureData = allFeatures[weaponFeature.value]; if (featureData.effects?.length > 0) { const embeddedItems = await this.parent.createEmbeddedDocuments( 'ActiveEffect', @@ -148,7 +150,7 @@ export default class DHWeapon extends AttachableItem { } const newActions = {}; - if (featureData.actions?.length > 0) { + if (featureData.actions?.length > 0 || featureData.actions?.size > 0) { for (let action of featureData.actions) { const embeddedEffects = await this.parent.createEmbeddedDocuments( 'ActiveEffect', @@ -170,10 +172,12 @@ export default class DHWeapon extends AttachableItem { { ...cls.getSourceConfig(this), ...action, + type: action.type, _id: actionId, name: game.i18n.localize(action.name), description: game.i18n.localize(action.description), - effects: embeddedEffects.map(x => ({ _id: x.id })) + effects: embeddedEffects.map(x => ({ _id: x.id })), + systemPath: 'actions' }, { parent: this } ); diff --git a/module/data/settings/Homebrew.mjs b/module/data/settings/Homebrew.mjs index 0719b085..ca44a3ed 100644 --- a/module/data/settings/Homebrew.mjs +++ b/module/data/settings/Homebrew.mjs @@ -115,7 +115,35 @@ export default class DhHomebrew extends foundry.abstract.DataModel { label: new fields.StringField({ required: true, label: 'DAGGERHEART.GENERAL.label' }), description: new fields.StringField() }) - ) + ), + itemFeatures: new fields.SchemaField({ + weaponFeatures: new fields.TypedObjectField( + new fields.SchemaField({ + name: new fields.StringField({ required: true }), + img: new fields.FilePathField({ + initial: 'icons/magic/life/cross-worn-green.webp', + categories: ['IMAGE'], + base64: false + }), + description: new fields.HTMLField(), + actions: new ActionsField(), + effects: new fields.ArrayField(new fields.ObjectField()) + }) + ), + armorFeatures: new fields.TypedObjectField( + new fields.SchemaField({ + name: new fields.StringField({ required: true }), + img: new fields.FilePathField({ + initial: 'icons/magic/life/cross-worn-green.webp', + categories: ['IMAGE'], + base64: false + }), + description: new fields.HTMLField(), + actions: new ActionsField(), + effects: new fields.ArrayField(new fields.ObjectField()) + }) + ) + }) }; } } diff --git a/templates/settings/downtime-config/effects.hbs b/templates/settings/downtime-config/effects.hbs new file mode 100644 index 00000000..f09fdb05 --- /dev/null +++ b/templates/settings/downtime-config/effects.hbs @@ -0,0 +1,15 @@ +
+
+ {{localize "DAGGERHEART.GENERAL.Effect.plural"}} + +
+ {{#each move.effects}} + {{> "systems/daggerheart/templates/settings/components/settings-item-line.hbs" id=this.id type="effect" }} + {{/each}} +
+
+
\ No newline at end of file diff --git a/templates/settings/downtime-config/main.hbs b/templates/settings/downtime-config/main.hbs index f8a972c7..7f681368 100644 --- a/templates/settings/downtime-config/main.hbs +++ b/templates/settings/downtime-config/main.hbs @@ -3,11 +3,13 @@ data-tab='{{tabs.main.id}}' data-group='{{tabs.main.group}}' > -
- {{localize "Icon"}} + {{#if hasIcon}} +
+ {{localize "Icon"}} - -
+ +
+ {{/if}}
{{localize "Description"}} diff --git a/templates/settings/homebrew-settings/itemFeatures.hbs b/templates/settings/homebrew-settings/itemFeatures.hbs new file mode 100644 index 00000000..1f8595de --- /dev/null +++ b/templates/settings/homebrew-settings/itemFeatures.hbs @@ -0,0 +1,35 @@ +
+
+
+ + {{localize "DAGGERHEART.GENERAL.weaponFeatures"}} + + + + +
+ {{#each settingFields._source.itemFeatures.weaponFeatures as |feature id|}} + {{> "systems/daggerheart/templates/settings/components/settings-item-line.hbs" this type="weaponFeatures" id=id }} + {{/each}} +
+
+ +
+ + {{localize "DAGGERHEART.GENERAL.armorFeatures"}} + + + + +
+ {{#each settingFields._source.itemFeatures.armorFeatures as |feature id|}} + {{> "systems/daggerheart/templates/settings/components/settings-item-line.hbs" this type="armorFeatures" id=id }} + {{/each}} +
+
+
+
\ No newline at end of file diff --git a/templates/sheets/activeEffect/changes.hbs b/templates/sheets/activeEffect/changes.hbs index 9cf137f0..75f49e4a 100644 --- a/templates/sheets/activeEffect/changes.hbs +++ b/templates/sheets/activeEffect/changes.hbs @@ -8,24 +8,24 @@
    {{#each source.changes as |change i|}} - {{#with ../fields.changes.element.fields as |changeFields|}} -
  1. -
    - -
    -
    - {{formInput changeFields.mode name=(concat "changes." i ".mode") value=change.mode choices=@root.modes}} -
    -
    - {{formInput changeFields.value name=(concat "changes." i ".value") value=change.value}} -
    -
    - {{formInput changeFields.priority name=(concat "changes." i ".priority") value=change.priority - placeholder=(lookup ../../priorities change.mode)}} -
    -
    -
  2. - {{/with}} + {{#with ../fields.changes.element.fields as |changeFields|}} +
  3. +
    + +
    +
    + {{formInput changeFields.mode name=(concat "changes." i ".mode") value=change.mode choices=@root.modes}} +
    +
    + {{formInput changeFields.value name=(concat "changes." i ".value") value=change.value}} +
    +
    + {{formInput changeFields.priority name=(concat "changes." i ".priority") value=change.priority + placeholder=(lookup ../../priorities change.mode)}} +
    +
    +
  4. + {{/with}} {{/each}}
\ No newline at end of file diff --git a/templates/sheets/activeEffect/settings.hbs b/templates/sheets/activeEffect/settings.hbs index 33e1d1b9..cf98c786 100644 --- a/templates/sheets/activeEffect/settings.hbs +++ b/templates/sheets/activeEffect/settings.hbs @@ -2,10 +2,10 @@
{{localize "DAGGERHEART.ACTIVEEFFECT.Config.rangeDependence.title"}} - {{formGroup document.system.schema.fields.rangeDependence.fields.enabled value=source.system.rangeDependence.enabled localize=true }} - {{formGroup document.system.schema.fields.rangeDependence.fields.type value=source.system.rangeDependence.type localize=true }} - {{formGroup document.system.schema.fields.rangeDependence.fields.target value=source.system.rangeDependence.target localize=true }} - {{formGroup document.system.schema.fields.rangeDependence.fields.range value=source.system.rangeDependence.range localize=true }} + {{formGroup systemFields.rangeDependence.fields.enabled value=source.system.rangeDependence.enabled localize=true }} + {{formGroup systemFields.rangeDependence.fields.type value=source.system.rangeDependence.type localize=true }} + {{formGroup systemFields.rangeDependence.fields.target value=source.system.rangeDependence.target localize=true }} + {{formGroup systemFields.rangeDependence.fields.range value=source.system.rangeDependence.range localize=true }}
From 58f039ce969d5b2c63919b3ff5dca16d785b6c83 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Sun, 7 Sep 2025 09:27:46 +1000 Subject: [PATCH 057/260] Add extra features to the Temple Enricher and fix the mousewheel issues with the Template Manager (#1147) Co-authored-by: Chris Ryan --- module/documents/templateManager.mjs | 16 ++++--- module/enrichers/TemplateEnricher.mjs | 65 +++++++++++++++++++++------ 2 files changed, 63 insertions(+), 18 deletions(-) diff --git a/module/documents/templateManager.mjs b/module/documents/templateManager.mjs index c31b1baa..cf15c2e3 100644 --- a/module/documents/templateManager.mjs +++ b/module/documents/templateManager.mjs @@ -57,7 +57,10 @@ export default class DhTemplateManager { * @param {wheel Event} event */ #onMouseWheel(event) { - if (!event.shiftKey) return; + if (!this.#activePreview) { + return; + } + if (!event.shiftKey && !event.ctrlKey) return; event.stopPropagation(); event.preventDefault(); const { moveTime, object } = this.#activePreview; @@ -66,8 +69,10 @@ export default class DhTemplateManager { if (now - (moveTime || 0) <= 16) return; this.#activePreview.moveTime = now; + const multiplier = event.shiftKey ? 0.2 : 0.1; + object.document.updateSource({ - direction: object.document.direction + event.deltaY * 0.2 + direction: object.document.direction + event.deltaY * multiplier }); object.renderFlags.set({ refresh: true }); } @@ -77,12 +82,13 @@ export default class DhTemplateManager { * @param {contextmenu Event} event */ #cancelTemplate(event) { - const { mousemove, mousedown, contextmenu } = this.#activePreview.events; + const { mousemove, mousedown, contextmenu, wheel } = this.#activePreview.events; canvas.templates._onDragLeftCancel(event); canvas.stage.off('mousemove', mousemove); canvas.stage.off('mousedown', mousedown); canvas.app.view.removeEventListener('contextmenu', contextmenu); + canvas.app.view.removeEventListener('wheel', wheel); } /** @@ -91,9 +97,9 @@ export default class DhTemplateManager { */ #confirmTemplate(event) { event.stopPropagation(); + this.#cancelTemplate(event); canvas.scene.createEmbeddedDocuments('MeasuredTemplate', [this.#activePreview.document.toObject()]); - - this.#cancelTemplate(event); + this.#activePreview = undefined; } } diff --git a/module/enrichers/TemplateEnricher.mjs b/module/enrichers/TemplateEnricher.mjs index 35a3e231..15936b29 100644 --- a/module/enrichers/TemplateEnricher.mjs +++ b/module/enrichers/TemplateEnricher.mjs @@ -3,6 +3,8 @@ export default function DhTemplateEnricher(match, _options) { let type = null, range = null, + angle = CONFIG.MeasuredTemplate.defaults.angle, + direction = 0, inline = false; parts.forEach(part => { @@ -16,14 +18,24 @@ export default function DhTemplateEnricher(match, _options) { type = matchedType; break; case 'range': - const matchedRange = Object.values(CONFIG.DH.GENERAL.templateRanges).find( - x => x.id.toLowerCase() === split[1] || x.short === split[1] - ); - range = matchedRange?.id; + if (Number.isNaN(Number(split[1]))) { + const matchedRange = Object.values(CONFIG.DH.GENERAL.templateRanges).find( + x => x.id.toLowerCase() === split[1] || x.short === split[1] + ); + range = matchedRange?.id; + } else { + range = split[1]; + } break; case 'inline': inline = true; break; + case 'angle': + angle = split[1]; + break; + case 'direction': + direction = split[1]; + break; } } }); @@ -32,10 +44,32 @@ export default function DhTemplateEnricher(match, _options) { const label = game.i18n.localize(`DAGGERHEART.CONFIG.TemplateTypes.${type}`); + const rangeDisplay = Number.isNaN(Number(range)) ? game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.name`) : range; + + let angleDisplay = ''; + if (angle != CONFIG.MeasuredTemplate.defaults.angle) { + angleDisplay = 'angle:' + angle; + + } + let directionDisplay = ''; + if (direction != 0) { + directionDisplay = 'direction:' + direction; + } + + let extraDisplay = ''; + if (angleDisplay != '' && directionDisplay != '') { + extraDisplay = ' (' + angleDisplay + '|' + directionDisplay + ')'; + } else if (angleDisplay != '') { + extraDisplay = ' (' + angleDisplay + ')'; + } else if (directionDisplay != '') { + extraDisplay = ' (' + directionDisplay + ')'; + } + const templateElement = document.createElement('span'); templateElement.innerHTML = ` - `; @@ -45,21 +79,25 @@ export default function DhTemplateEnricher(match, _options) { export const renderMeasuredTemplate = async event => { const button = event.currentTarget, type = button.dataset.type, - range = button.dataset.range; + range = button.dataset.range, + angle = button.dataset.angle, + direction = button.dataset.direction; if (!type || !range || !game.canvas.scene) return; const usedType = type === 'inFront' ? 'cone' : type === 'emanation' ? 'circle' : type; - const angle = + const usedAngle = type === CONST.MEASURED_TEMPLATE_TYPES.CONE - ? CONFIG.MeasuredTemplate.defaults.angle + ? (angle ?? CONFIG.MeasuredTemplate.defaults.angle) : type === CONFIG.DH.GENERAL.templateTypes.INFRONT ? '180' : undefined; - const baseDistance = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.variantRules).rangeMeasurement[ - range - ]; + let baseDistance = range; + if (Number.isNaN(Number(range))) { + baseDistance = + game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.variantRules).rangeMeasurement[range]; + } const distance = type === CONFIG.DH.GENERAL.templateTypes.EMANATION ? baseDistance + 2.5 : baseDistance; const { width, height } = game.canvas.scene.dimensions; @@ -69,7 +107,8 @@ export const renderMeasuredTemplate = async event => { t: usedType, distance: distance, width: type === CONST.MEASURED_TEMPLATE_TYPES.RAY ? 5 : undefined, - angle: angle + angle: usedAngle, + direction: direction }; CONFIG.ux.TemplateManager.createPreview(data); From a57d154d45cba43775025896f6beb656845cb7d3 Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Tue, 9 Sep 2025 22:03:13 -0400 Subject: [PATCH 058/260] Add space between paragraphs (#1172) --- styles/less/global/elements.less | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/styles/less/global/elements.less b/styles/less/global/elements.less index 65e825a9..5d6e97d1 100755 --- a/styles/less/global/elements.less +++ b/styles/less/global/elements.less @@ -210,7 +210,13 @@ } p { - margin: 0; + &:first-child { + margin-top: 0; + } + + &:last-child { + margin-bottom: 0; + } } ul { From 513464b01b6acdfcf23966dce09b4cb01a1f94ea Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Thu, 11 Sep 2025 00:11:24 +1000 Subject: [PATCH 059/260] Fixed typo of defi ant to defiant (#1175) Co-authored-by: Chris Ryan --- ..._Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json b/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json index 45a59c7e..920f78f1 100644 --- a/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json +++ b/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json @@ -156,7 +156,7 @@ }, "chatDisplay": false }, - "motivesAndTactics": "Dispatch merciless death, punish the defi ant, secure victory at any cost" + "motivesAndTactics": "Dispatch merciless death, punish the defiant, secure victory at any cost" }, "prototypeToken": { "name": "Fallen Warlord: Undefeated Champion", @@ -798,12 +798,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.348", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753929476879, - "modifiedTime": 1755259462720, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1757391211587, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_key": "!actors!RXkZTwBRi4dJ3JE5" } From a76486a86c17f0c7c6328c97653036d013f08294 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Fri, 19 Sep 2025 06:07:35 +1000 Subject: [PATCH 060/260] Add dice value support to Advesaries and Environments (#1186) Co-authored-by: Chris Ryan --- .../applications/sheets/actors/adversary.mjs | 38 ++++++++++++++- .../sheets/actors/environment.mjs | 46 ++++++++++++++++++- 2 files changed, 82 insertions(+), 2 deletions(-) diff --git a/module/applications/sheets/actors/adversary.mjs b/module/applications/sheets/actors/adversary.mjs index b0fc5fb4..cf009b4f 100644 --- a/module/applications/sheets/actors/adversary.mjs +++ b/module/applications/sheets/actors/adversary.mjs @@ -9,7 +9,9 @@ export default class AdversarySheet extends DHBaseActorSheet { position: { width: 660, height: 766 }, window: { resizable: true }, actions: { - reactionRoll: AdversarySheet.#reactionRoll + reactionRoll: AdversarySheet.#reactionRoll, + toggleResourceDice: AdversarySheet.#toggleResourceDice, + handleResourceDice: AdversarySheet.#handleResourceDice }, window: { resizable: true @@ -133,6 +135,40 @@ export default class AdversarySheet extends DHBaseActorSheet { this.actor.diceRoll(config); } + /** + * Toggle the used state of a resource dice. + * @type {ApplicationClickAction} + */ + static async #toggleResourceDice(event, target) { + const item = await getDocFromElement(target); + + const { dice } = event.target.closest('.item-resource').dataset; + const diceState = item.system.resource.diceStates[dice]; + + await item.update({ + [`system.resource.diceStates.${dice}.used`]: diceState ? !diceState.used : true + }); + } + + /** + * Handle the roll values of resource dice. + * @type {ApplicationClickAction} + */ + static async #handleResourceDice(_, target) { + const item = await getDocFromElement(target); + if (!item) return; + + const rollValues = await game.system.api.applications.dialogs.ResourceDiceDialog.create(item, this.document); + if (!rollValues) return; + + await item.update({ + 'system.resource.diceStates': rollValues.reduce((acc, state, index) => { + acc[index] = { value: state.value, used: state.used }; + return acc; + }, {}) + }); + } + /* -------------------------------------------- */ /* Application Listener Actions */ /* -------------------------------------------- */ diff --git a/module/applications/sheets/actors/environment.mjs b/module/applications/sheets/actors/environment.mjs index aa2759a2..560e5ed2 100644 --- a/module/applications/sheets/actors/environment.mjs +++ b/module/applications/sheets/actors/environment.mjs @@ -1,3 +1,4 @@ +import { getDocFromElement } from '../../../helpers/utils.mjs'; import DHBaseActorSheet from '../api/base-actor.mjs'; /**@typedef {import('@client/applications/_types.mjs').ApplicationClickAction} ApplicationClickAction */ @@ -13,7 +14,10 @@ export default class DhpEnvironment extends DHBaseActorSheet { window: { resizable: true }, - actions: {}, + actions: { + toggleResourceDice: DhpEnvironment.#toggleResourceDice, + handleResourceDice: DhpEnvironment.#handleResourceDice + }, dragDrop: [{ dragSelector: '.action-section .inventory-item', dropSelector: null }] }; @@ -106,4 +110,44 @@ export default class DhpEnvironment extends DHBaseActorSheet { event.dataTransfer.setDragImage(item, 60, 0); } } + + /* -------------------------------------------- */ + /* Application Clicks Actions */ + /* -------------------------------------------- */ + + + /** + * Toggle the used state of a resource dice. + * @type {ApplicationClickAction} + */ + static async #toggleResourceDice(event, target) { + const item = await getDocFromElement(target); + + const { dice } = event.target.closest('.item-resource').dataset; + const diceState = item.system.resource.diceStates[dice]; + + await item.update({ + [`system.resource.diceStates.${dice}.used`]: diceState ? !diceState.used : true + }); + } + + /** + * Handle the roll values of resource dice. + * @type {ApplicationClickAction} + */ + static async #handleResourceDice(_, target) { + const item = await getDocFromElement(target); + if (!item) return; + + const rollValues = await game.system.api.applications.dialogs.ResourceDiceDialog.create(item, this.document); + if (!rollValues) return; + + await item.update({ + 'system.resource.diceStates': rollValues.reduce((acc, state, index) => { + acc[index] = { value: state.value, used: state.used }; + return acc; + }, {}) + }); + } + } From 2748e91aa62c748b2107b28e40e9b3e17b626ccd Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Fri, 19 Sep 2025 06:08:12 +1000 Subject: [PATCH 061/260] Update Powerful Beast for Errata changes (#1185) Co-authored-by: Chris Ryan --- .../beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json b/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json index 17d55206..5a1f20e5 100644 --- a/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json +++ b/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json @@ -57,13 +57,13 @@ { "key": "system.traits.strength.value", "mode": 2, - "value": "1", + "value": "3", "priority": null }, { "key": "system.evasion", "mode": 2, - "value": "3", + "value": "1", "priority": null }, { @@ -106,11 +106,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", "systemVersion": "0.0.1", - "lastModifiedBy": "FecEtPuoQh6MpjQ0", - "modifiedTime": 1753636973034 + "lastModifiedBy": "mdk78Q6pOyHh6aBg", + "modifiedTime": 1757931628001 }, "_key": "!items.effects!m8BVTuJI1wCvzTcf.AZGTvqzFVHa4wS1a" } From a477c9b8528eed10a085cf56b288933be0838b3d Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Fri, 19 Sep 2025 06:25:08 +1000 Subject: [PATCH 062/260] Fixed a merge? error in the itemBrowserConfig (#1174) Co-authored-by: Chris Ryan --- module/config/itemBrowserConfig.mjs | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/module/config/itemBrowserConfig.mjs b/module/config/itemBrowserConfig.mjs index e870172f..2c3e1dfb 100644 --- a/module/config/itemBrowserConfig.mjs +++ b/module/config/itemBrowserConfig.mjs @@ -370,19 +370,6 @@ export const typeConfig = { label: 'DAGGERHEART.ITEMS.Subclass.spellcastingTrait' } ], - filters: [] - }, - beastforms: { - columns: [ - { - key: 'system.tier', - label: 'DAGGERHEART.GENERAL.Tiers.singular' - }, - { - key: 'system.mainTrait', - label: 'DAGGERHEART.GENERAL.Trait.single' - } - ], filters: [ { key: 'system.linkedClass.uuid', From f25387e964367e3c733c3fd9180a184709898775 Mon Sep 17 00:00:00 2001 From: UsernameIsInUse <49582925+UsernameIsInUse@users.noreply.github.com> Date: Thu, 18 Sep 2025 16:26:08 -0400 Subject: [PATCH 063/260] Remove unnecessary chatDisplay (#1171) --- ...y_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json b/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json index 920f78f1..c32e7f1d 100644 --- a/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json +++ b/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json @@ -153,8 +153,7 @@ "bonus": 0, "dice": [] } - }, - "chatDisplay": false + } }, "motivesAndTactics": "Dispatch merciless death, punish the defiant, secure victory at any cost" }, From 55586c93c837662124ebc95b8d4193215a9c0b1d Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Fri, 19 Sep 2025 06:27:04 +1000 Subject: [PATCH 064/260] Move Foundryborne menu location; fix localisation; fix deprecation (#1169) Co-authored-by: Chris Ryan --- lang/en.json | 1 + module/applications/sidebar/sidebar.mjs | 43 ++++++++++++++++++++- templates/sidebar/daggerheart-menu/main.hbs | 4 +- 3 files changed, 44 insertions(+), 4 deletions(-) diff --git a/lang/en.json b/lang/en.json index 685f1266..e40b035c 100755 --- a/lang/en.json +++ b/lang/en.json @@ -2029,6 +2029,7 @@ "range": "Range", "reactionRoll": "Reaction Roll", "recovery": "Recovery", + "refresh": "Refresh", "reroll": "Reroll", "rerollThing": "Reroll {thing}", "resource": "Resource", diff --git a/module/applications/sidebar/sidebar.mjs b/module/applications/sidebar/sidebar.mjs index fad39ac5..ae28d56c 100644 --- a/module/applications/sidebar/sidebar.mjs +++ b/module/applications/sidebar/sidebar.mjs @@ -1,10 +1,49 @@ -export default class DhSidebar extends Sidebar { +export default class DhSidebar extends foundry.applications.sidebar.Sidebar { /** @override */ static TABS = { - ...super.TABS, + chat: { + documentName: 'ChatMessage' + }, + combat: { + documentName: 'Combat' + }, + scenes: { + documentName: 'Scene', + gmOnly: true + }, + actors: { + documentName: 'Actor' + }, + items: { + documentName: 'Item' + }, + journal: { + documentName: 'JournalEntry', + tooltip: 'SIDEBAR.TabJournal' + }, + tables: { + documentName: 'RollTable' + }, + cards: { + documentName: 'Cards' + }, + macros: { + documentName: 'Macro' + }, + playlists: { + documentName: 'Playlist' + }, + compendium: { + tooltip: 'SIDEBAR.TabCompendium', + icon: 'fa-solid fa-book-atlas' + }, daggerheartMenu: { tooltip: 'DAGGERHEART.UI.Sidebar.daggerheartMenu.title', img: 'systems/daggerheart/assets/logos/FoundryBorneLogoWhite.svg' + }, + settings: { + tooltip: 'SIDEBAR.TabSettings', + icon: 'fa-solid fa-gears' } }; diff --git a/templates/sidebar/daggerheart-menu/main.hbs b/templates/sidebar/daggerheart-menu/main.hbs index 6f31f165..b00001eb 100644 --- a/templates/sidebar/daggerheart-menu/main.hbs +++ b/templates/sidebar/daggerheart-menu/main.hbs @@ -16,7 +16,7 @@ {{/each}} - +
- \ No newline at end of file + From 437974168163c122ed386f5bb25ccaea912e2c5a Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Fri, 19 Sep 2025 06:27:26 +1000 Subject: [PATCH 065/260] Remove dupe weapon (#1167) Co-authored-by: Chris Ryan --- ...lack_Powder_Revolver_NUbvkPLS71XO073r.json | 31 ------------------- 1 file changed, 31 deletions(-) delete mode 100644 src/packs/items/weapons/loot_Black_Powder_Revolver_NUbvkPLS71XO073r.json diff --git a/src/packs/items/weapons/loot_Black_Powder_Revolver_NUbvkPLS71XO073r.json b/src/packs/items/weapons/loot_Black_Powder_Revolver_NUbvkPLS71XO073r.json deleted file mode 100644 index a51a5c14..00000000 --- a/src/packs/items/weapons/loot_Black_Powder_Revolver_NUbvkPLS71XO073r.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "folder": "OKJC8cHvPuseBHWq", - "name": "Black Powder Revolver", - "type": "loot", - "_id": "NUbvkPLS71XO073r", - "img": "icons/weapons/guns/gun-pistol-brass.webp", - "system": { - "description": "", - "quantity": 1, - "actions": {} - }, - "effects": [], - "sort": 0, - "ownership": { - "default": 0, - "FecEtPuoQh6MpjQ0": 3 - }, - "flags": {}, - "_stats": { - "compendiumSource": null, - "duplicateSource": null, - "exportSource": null, - "coreVersion": "13.346", - "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753832431607, - "modifiedTime": 1753832439003, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" - }, - "_key": "!items!NUbvkPLS71XO073r" -} From f1b5c80a53c124845d3ee8a5d3e8c6a7ea45f414 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Fri, 19 Sep 2025 06:28:25 +1000 Subject: [PATCH 066/260] Null check metadata (#1145) * Null check metadata * Fix d20RollDialog action find --------- Co-authored-by: Chris Ryan Co-authored-by: Dapoolp --- module/applications/dialogs/d20RollDialog.mjs | 2 +- module/data/fields/action/costField.mjs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/module/applications/dialogs/d20RollDialog.mjs b/module/applications/dialogs/d20RollDialog.mjs index 6c227152..c57dda12 100644 --- a/module/applications/dialogs/d20RollDialog.mjs +++ b/module/applications/dialogs/d20RollDialog.mjs @@ -16,7 +16,7 @@ export default class D20RollDialog extends HandlebarsApplicationMixin(Applicatio this.action = config.data.attack?._id == config.source.action ? config.data.attack - : this.item.system.actions.get(config.source.action); + : this.item.system.actionsList?.find(a => a.id === config.source.action); } } diff --git a/module/data/fields/action/costField.mjs b/module/data/fields/action/costField.mjs index 2d2a38df..656edee3 100644 --- a/module/data/fields/action/costField.mjs +++ b/module/data/fields/action/costField.mjs @@ -103,7 +103,7 @@ export default class CostField extends fields.ArrayField { static calcCosts(costs) { const resources = CostField.getResources.call(this, costs); let filteredCosts = costs; - if (this.parent.metadata.isQuantifiable && this.parent.consumeOnUse === false) { + if (this.parent?.metadata.isQuantifiable && this.parent.consumeOnUse === false) { filteredCosts = filteredCosts.filter(c => c.key !== 'quantity'); } From e6559548902a2c68ec3f5b15d66e3f1c422f0ec2 Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Thu, 18 Sep 2025 21:33:56 -0400 Subject: [PATCH 067/260] Fix item summary animation replaying on every rerender (#1176) --- .../sheets/api/application-mixin.mjs | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/module/applications/sheets/api/application-mixin.mjs b/module/applications/sheets/api/application-mixin.mjs index bdd9fa68..5e186c86 100644 --- a/module/applications/sheets/api/application-mixin.mjs +++ b/module/applications/sheets/api/application-mixin.mjs @@ -203,11 +203,19 @@ export default function DHApplicationMixin(Base) { this.relatedDocs.filter(doc => doc).map(doc => delete doc.apps[this.id]); } + /** @inheritdoc */ + async _renderHTML(context, options) { + const rendered = await super._renderHTML(context, options); + for (const result of Object.values(rendered)) { + await this.#prepareInventoryDescription(result); + } + return rendered; + } + /**@inheritdoc */ async _onRender(context, options) { await super._onRender(context, options); this._createTagifyElements(this.options.tagifyConfigs); - await this.#prepareInventoryDescription(context); } /* -------------------------------------------- */ @@ -215,8 +223,8 @@ export default function DHApplicationMixin(Base) { /* -------------------------------------------- */ /**@inheritdoc */ - _syncPartState(partId, newElement, priorElement, state) { - super._syncPartState(partId, newElement, priorElement, state); + _preSyncPartState(partId, newElement, priorElement, state) { + super._preSyncPartState(partId, newElement, priorElement, state); for (const el of priorElement.querySelectorAll('.extensible.extended')) { const { actionId, itemUuid } = el.parentElement.dataset; const selector = `${actionId ? `[data-action-id="${actionId}"]` : `[data-item-uuid="${itemUuid}"]`} .extensible`; @@ -496,11 +504,12 @@ export default function DHApplicationMixin(Base) { /** * Prepares and enriches an inventory item or action description for display. + * @param {HTMLElement} element the element to enrich the inventory items of * @returns {Promise} */ - async #prepareInventoryDescription(context) { + async #prepareInventoryDescription(element) { // Get all inventory item elements with a data-item-uuid attribute - const inventoryItems = this.element.querySelectorAll('.inventory-item[data-item-uuid]'); + const inventoryItems = element.querySelectorAll('.inventory-item[data-item-uuid]'); for (const el of inventoryItems) { // Get the doc uuid from the element const { itemUuid } = el?.dataset || {}; From b406ec6c963397efc05cedec941ef907f560c8a6 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Sun, 21 Sep 2025 01:04:20 +1000 Subject: [PATCH 068/260] Rune Ward reduces damage with flat 1d8 (#1191) Co-authored-by: Chris Ryan --- .../domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json b/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json index ea33cfcb..91f7205b 100644 --- a/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json +++ b/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json @@ -47,7 +47,7 @@ "bonus": null, "advState": "neutral", "diceRolling": { - "multiplier": "prof", + "multiplier": "flat", "flatMultiplier": 1, "dice": "d8", "compare": null, @@ -71,12 +71,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753922784506, - "modifiedTime": 1754253212120, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1758364595206, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_id": "GEhBUmv9Bj7oJfHk", "sort": 3400000, From cc6ef0b7bfb213f36adc0a338c1f0e5ab55b01df Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Mon, 29 Sep 2025 10:10:13 -0400 Subject: [PATCH 069/260] Anchor chat message image crop to top (#1193) --- styles/less/global/chat.less | 1 + 1 file changed, 1 insertion(+) diff --git a/styles/less/global/chat.less b/styles/less/global/chat.less index 95ea956f..3f83294a 100644 --- a/styles/less/global/chat.less +++ b/styles/less/global/chat.less @@ -61,6 +61,7 @@ width: 40px; height: 40px; object-fit: cover; + object-position: top center; } .message-sub-header-container { From 952779000d97c8d1cc9301674c91c04c4b6f9512 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Tue, 30 Sep 2025 04:15:02 +1000 Subject: [PATCH 070/260] [PR] [Feature] Remember the position and size of the compendium browser (#1123) * Remember the position and size of the compendium browser * Save position, size details for the 3 types of compendium browser --------- Co-authored-by: Chris Ryan --- module/applications/ui/itemBrowser.mjs | 28 ++++++++++++++++++++++---- module/config/flagsConfig.mjs | 12 +++++++++++ 2 files changed, 36 insertions(+), 4 deletions(-) diff --git a/module/applications/ui/itemBrowser.mjs b/module/applications/ui/itemBrowser.mjs index a00f8edc..4f3053bb 100644 --- a/module/applications/ui/itemBrowser.mjs +++ b/module/applications/ui/itemBrowser.mjs @@ -16,6 +16,7 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { this.selectedMenu = { path: [], data: null }; this.config = CONFIG.DH.ITEMBROWSER.compendiumConfig; this.presets = {}; + this.compendiumBrowserTypeKey = 'compendiumBrowserDefault'; } /** @inheritDoc */ @@ -84,10 +85,25 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { /** @inheritDoc */ async _preRender(context, options) { this.presets = options.presets ?? {}; - - const width = this.presets?.render?.noFolder === true || this.presets?.render?.lite === true ? 600 : 850; - if (this.rendered) this.setPosition({ width }); - else options.position.width = width; + const noFolder = this.presets?.render?.noFolder; + if (noFolder === true) { + this.compendiumBrowserTypeKey = 'compendiumBrowserNoFolder'; + } + const lite = this.presets?.render?.lite; + if (lite === true) { + this.compendiumBrowserTypeKey = 'compendiumBrowserLite'; + } + const userPresetPosition = game.user.getFlag(CONFIG.DH.id, CONFIG.DH.FLAGS[`${this.compendiumBrowserTypeKey}`].position) ; + + options.position = userPresetPosition ?? ItemBrowser.DEFAULT_OPTIONS.position; + + if (!userPresetPosition) { + const width = noFolder === true || lite === true ? 600 : 850; + if (this.rendered) + this.setPosition({ width }); + else + options.position.width = width; + } await super._preRender(context, options); } @@ -113,6 +129,10 @@ export class ItemBrowser extends HandlebarsApplicationMixin(ApplicationV2) { }); } + _onPosition(position) { + game.user.setFlag(CONFIG.DH.id, CONFIG.DH.FLAGS[`${this.compendiumBrowserTypeKey}`].position, position); + } + _attachPartListeners(partId, htmlElement, options) { super._attachPartListeners(partId, htmlElement, options); diff --git a/module/config/flagsConfig.mjs b/module/config/flagsConfig.mjs index c2a6dff2..32088bc1 100644 --- a/module/config/flagsConfig.mjs +++ b/module/config/flagsConfig.mjs @@ -8,6 +8,18 @@ export const encounterCountdown = { position: 'countdown-encounter-position' }; +export const compendiumBrowserDefault = { + position: 'compendium-browser-default-position' +}; + +export const compendiumBrowserNoFolder = { + position: 'compendium-browser-no-folder-position' +}; + +export const compendiumBrowserLite = { + position: 'compendium-browser-lite-position' +}; + export const itemAttachmentSource = 'attachmentSource'; export const userFlags = { From 86eeba06483a811b783dbeb852b69f0b379dd553 Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Sat, 4 Oct 2025 07:10:39 -0400 Subject: [PATCH 071/260] Implement @Lookup enricher (#1196) --- module/documents/actor.mjs | 1 + module/enrichers/DamageEnricher.mjs | 29 ++------------ module/enrichers/LookupEnricher.mjs | 8 ++++ module/enrichers/TemplateEnricher.mjs | 55 ++++++--------------------- module/enrichers/_module.mjs | 5 +++ module/enrichers/parser.mjs | 20 ++++++++++ 6 files changed, 50 insertions(+), 68 deletions(-) create mode 100644 module/enrichers/LookupEnricher.mjs create mode 100644 module/enrichers/parser.mjs diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index 79e71549..3601e09d 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -501,6 +501,7 @@ export default class DhpActor extends Actor { /**@inheritdoc */ getRollData() { const rollData = super.getRollData(); + rollData.name = this.name; rollData.system = this.system.getRollData(); rollData.prof = this.system.proficiency ?? 1; rollData.cast = this.system.spellcastModifier ?? 1; diff --git a/module/enrichers/DamageEnricher.mjs b/module/enrichers/DamageEnricher.mjs index a52c4b31..e3f9c42a 100644 --- a/module/enrichers/DamageEnricher.mjs +++ b/module/enrichers/DamageEnricher.mjs @@ -1,29 +1,8 @@ +import { parseInlineParams } from './parser.mjs'; + export default function DhDamageEnricher(match, _options) { - const parts = match[1].split('|').map(x => x.trim()); - - let value = null, - type = null, - inline = false; - - parts.forEach(part => { - const split = part.split(':').map(x => x.toLowerCase().trim()); - if (split.length === 2) { - switch (split[0]) { - case 'value': - value = split[1]; - break; - case 'type': - type = split[1]; - break; - case 'inline': - inline = true; - break; - } - } - }); - - if (!value || !value) return match[0]; - + const { value, type, inline } = parseInlineParams(match[1]); + if (!value || !type) return match[0]; return getDamageMessage(value, type, inline, match[0]); } diff --git a/module/enrichers/LookupEnricher.mjs b/module/enrichers/LookupEnricher.mjs new file mode 100644 index 00000000..7836311e --- /dev/null +++ b/module/enrichers/LookupEnricher.mjs @@ -0,0 +1,8 @@ +import { parseInlineParams } from './parser.mjs'; + +export default function DhLookupEnricher(match, { rollData }) { + const results = parseInlineParams(match[1], { first: 'formula'}); + const element = document.createElement('span'); + element.textContent = Roll.replaceFormulaData(String(results.formula), rollData); + return element; +} diff --git a/module/enrichers/TemplateEnricher.mjs b/module/enrichers/TemplateEnricher.mjs index 15936b29..f1e9298d 100644 --- a/module/enrichers/TemplateEnricher.mjs +++ b/module/enrichers/TemplateEnricher.mjs @@ -1,49 +1,18 @@ +import { parseInlineParams } from './parser.mjs'; + export default function DhTemplateEnricher(match, _options) { - const parts = match[1].split('|').map(x => x.trim()); - - let type = null, - range = null, - angle = CONFIG.MeasuredTemplate.defaults.angle, - direction = 0, - inline = false; - - parts.forEach(part => { - const split = part.split(':').map(x => x.toLowerCase().trim()); - if (split.length === 2) { - switch (split[0]) { - case 'type': - const matchedType = Object.values(CONFIG.DH.GENERAL.templateTypes).find( - x => x.toLowerCase() === split[1] - ); - type = matchedType; - break; - case 'range': - if (Number.isNaN(Number(split[1]))) { - const matchedRange = Object.values(CONFIG.DH.GENERAL.templateRanges).find( - x => x.id.toLowerCase() === split[1] || x.short === split[1] - ); - range = matchedRange?.id; - } else { - range = split[1]; - } - break; - case 'inline': - inline = true; - break; - case 'angle': - angle = split[1]; - break; - case 'direction': - direction = split[1]; - break; - } - } - }); - - if (!type || !range) return match[0]; + const params = parseInlineParams(match[1]); + const { type, angle = CONFIG.MeasuredTemplate.defaults.angle, inline = false } = params; + const direction = Number(params.direction) || 0; + const range = + params.range && Number.isNaN(params.range) + ? Object.values(CONFIG.DH.GENERAL.templateRanges).find( + x => x.id.toLowerCase() === split[1] || x.short === split[1] + )?.id + : params.range; + if (!(type in CONFIG.MeasuredTemplate.types) || !range) return match[0]; const label = game.i18n.localize(`DAGGERHEART.CONFIG.TemplateTypes.${type}`); - const rangeDisplay = Number.isNaN(Number(range)) ? game.i18n.localize(`DAGGERHEART.CONFIG.Range.${range}.name`) : range; let angleDisplay = ''; diff --git a/module/enrichers/_module.mjs b/module/enrichers/_module.mjs index deec4250..794756f4 100644 --- a/module/enrichers/_module.mjs +++ b/module/enrichers/_module.mjs @@ -2,6 +2,7 @@ import { default as DhDamageEnricher, renderDamageButton } from './DamageEnriche import { default as DhDualityRollEnricher, renderDualityButton } from './DualityRollEnricher.mjs'; import { default as DhEffectEnricher } from './EffectEnricher.mjs'; import { default as DhTemplateEnricher, renderMeasuredTemplate } from './TemplateEnricher.mjs'; +import { default as DhLookupEnricher } from './LookupEnricher.mjs'; export { DhDamageEnricher, DhDualityRollEnricher, DhEffectEnricher, DhTemplateEnricher }; @@ -21,6 +22,10 @@ export const enricherConfig = [ { pattern: /@Template\[(.*)\]({.*})?/g, enricher: DhTemplateEnricher + }, + { + pattern: /@Lookup\[(.*)\]({.*})?/g, + enricher: DhLookupEnricher } ]; diff --git a/module/enrichers/parser.mjs b/module/enrichers/parser.mjs new file mode 100644 index 00000000..9fcc4af1 --- /dev/null +++ b/module/enrichers/parser.mjs @@ -0,0 +1,20 @@ +/** + * @param {string} paramString The parameter inside the brackets of something like @Template[] to parse + * @param {Object} options + * @param {string} options.first If set, the first parameter is treated as a value with this as its key + * @returns {Record | null} + */ +export function parseInlineParams(paramString, { first } = {}) { + const parts = paramString.split('|').map(x => x.trim()); + const params = {}; + for (const [idx, param] of parts.entries()) { + if (first && idx === 0) { + params[first] = param; + } else { + const parts = param.split(':'); + params[parts[0]] = parts.length > 1 ? parts[1] : true; + } + } + + return params; +} From b3a72d6b1dffee883c0c86c836f9a2857cedd777 Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Wed, 8 Oct 2025 12:18:19 -0400 Subject: [PATCH 072/260] [Community PR] Use 2d12 as hover icon for PCs and omit when feature has no uses (#1202) * Use 2d12 as hover icon for player rolls * SVG test files added Try to manipulate the fills and stroke of the SVG files as needed. I have made hope and fear based vectors to easily identify between them. * Updated SVG path Fear path fixed * Use b&w duality and only show roll img if there are usable actions * Switch to SVG and change colors --------- Co-authored-by: Nikhil Nagarajan --- assets/icons/dice/duality/DualityBW.png | Bin 0 -> 5841 bytes assets/icons/dice/duality/DualityBW.svg | 59 ++++++++++++++++++ styles/less/global/inventory-item.less | 4 +- .../global/partials/inventory-item-V2.hbs | 8 ++- 4 files changed, 69 insertions(+), 2 deletions(-) create mode 100644 assets/icons/dice/duality/DualityBW.png create mode 100644 assets/icons/dice/duality/DualityBW.svg diff --git a/assets/icons/dice/duality/DualityBW.png b/assets/icons/dice/duality/DualityBW.png new file mode 100644 index 0000000000000000000000000000000000000000..5f94e99f582daeb7f38e52e2f341e4fb482a55dd GIT binary patch literal 5841 zcmV;?7B1z@;j|==^1poj5AY({UO#lFTCIA3{ga82g0001h=l}q9FaQARU;qF* zm;eA5aGbhPJOBUy24YJ`L;wH)0002_L%V+f000SaNLh0L01m?d01m?e$8V@)00007 zbV*G`2k8kO5Hc0q!m-@|02UQVL_t(|+U=crlwC!g$3NBG*+UX!6G#Y46x3jVOkf0& zC=3J$5HJx@2qH6xibfQT0s8zMe)SAy4A%AZd=ICnXI}Ba)B@>BdMpPtsaRt0nD{MkS%;`#MQyNLr!S za6%fHgjSMngrrj>y{y;cmS#`52?;*Z4VN@q(m(V@{9V#!X_OMOCfzVevn0Ks-q9uL zz%)_`S(0v~q!Zn$7Q*+_XeDGtx{V~ACTWps<55XN(x@dgOS-X=&X%-X^SQzh*f+lf%pBuQ5~9bF^%M4I_xCd^2hDCw(`9_le6ZGly#8;d1f zC+TEKhe&#>r1qTK-!AF>lI~F7aD(qd%L*pZ>~#}15ZD8l1{?^C?&W9g#+a^N{&oy7 zFYx$Pz@J=sw8y{C_V&Cc`miZ*1aK^{RUaQSADCc_c`1>v#V0;siX+^easNIG%s0j?uA>h_T-%Rwed%aoNVh5-{?>8-6Rfdy_gdJ$L&EOjgC`oQ+Uw!q+whUd&Yh}W-HK1o{x2LLmG zU7P5;Z{^$65v0txAK29xvpSELbyS#a?ZCT$sZOMB+u~Ptm3+vS10T+dc$Fic+xzV0 z2zMax<~(0t^5Hwq81rPFFYKrQ;WhyFcZAy)D9XvP%q!pj8DlQa`=uQvC0zIZZK^vk z#L$njlJBp;$BKAyM@h)m2JGTarw0MsMcB+Tl5Z_=m@#HiBH!x?HyC)gTj8byvHOyh zanE;A;@d_iKv!R~kR<{XM17#xL$BZ%07Tt)VR=%$SU!Ynj%bxE-W6aet zG$i*upQPP@-vaF=C7Ex}HwbHYjTv)+os2O{V`xlU&cquATwG$}m3ie`0~{V8-Y%6U zAMib39MweZd%hEmG52`trT}+fZQ<1uyDs$Z+6s`&CwAMhO4}Im8(>e5)9Qx6BUn55 zJYWZ4aUP9o%ZYd!0Y9YLh;`+A3G1!mYv1|2=76yUaBkJa?zzAwRc4+sCdNIVfTN8u zK0m{cV%^Pp;!xn|N{C%a|LMN2s-WGsib(1tu7sQC7-K%=soM&8klw9G%YjM2Xvtr6fo5%^_+ZJh5;x4sql zzZ)bT*znBDDT7r?(pjn={vc`F2F759C&6MX(J5)KK(ltoD#6vqa!TyP+ubFNt_r$b zR;Ph|7>i9M{UXPRR5b>Uqv_}TxGE>r$7Ps}j8Xw4| zO%kuW{1wv);a=6s`*tV{7Y_^p2>lU?jsie0AUVm^##Op3Ujg5HIDnhzf zBpqHyehvs*KQ0f%$R(_X26PqcpFPvSOMbQRcj@41ezsj z)jEHBwWLvXj@MR_ZqKOA*VIs>UEc!Y$yq%n6iqxM>H3nBZjH-N++N2=c0=Gf&q#V# zgR9`OCfYsEUB2hTCt5_j?(!Hgv`F$DTXNz(E@`Ja`njj1`3(@ctl{vTt;D6ytv}Sq4o9ZW2A}<_dM`|o)aFF_$_AbvGLLltzt4eq z-Q}>niPs_N?vj#jp`-)q=;K&PcQ)~!7bWf2z?i;W(!F&&_l_D{gi~`Qp0F{%Tjfc< zFPD^fH@PH^wfZ;RCH2l#N$o!B*@0DXv7{{nkJt%Voiq95?8O7~Al{C>oc3bJt4_3; z8hsn$$kGZW@LL)f0&%Qw?tTo53ZL)@xwQ|4q`*6~5W~ zKiuT2;PN7^$R_604P8~T%SzfXXXAgvI>9Ld*o(rmvwzPDDu8E>bUwor{Gn@<)?imo^eXq zSn(%GJJzWl`ay|K>Gw1shQ|VTM^3;`_Jw@MmDw)q`mmj(2TP`xd{{Oadc7Fn6ue!L zl5Yhz`mJu_jZ^kckGa`pd$_MJD;e>YNeW%_Fep%W2sX?yMgl%f?b|&6rCI-diS4o@ zBwbNb+w)O@u1$C5vk*DA0Pc#EfY(whPTXzaOJ|qu;od&Cq{Iv5NgmVVWcv#CUb&D< z)oIvhv)Bmunb71-l(f2pc3Gc$ds*;j`2&_ZfIHWj#I@LTB%u%T0N@{yk#BXc`aelS zB|T9#wS%mC`;96u*3>YyeJwDVS79%U4y~ATA|v2DY&O)_O=2wSh`QrtCGDm9+}mTu z>_8XytV4W0;8ZT5)9|+&(3-%7Hr1a1XpITK)0w%xI^VSd+1T2Yi;He>hp81}RwedX~@O#T(X zkepA$i-4_|*-Dvz16&YVj#u*-Hw^}kvn;w`J8x4byx{nsjLUt!;ly@;{Xj?KM2YxCKNfD$+_ zpS-`(+S?@uxdX^~*hsc;duoucCziWaah9Yp851v7_x3EXTGGDZPLz;!RWB?(NOu^MUT~U7+{Ld2ZG13x@O{+>$=Gp$YQ! z#7pj!J5zOpE%tD4KU>wt%>nb-CIy+hdX}3TAlyjc!@$q5*FrS?{*H{6-VJ~mu5?Pe z3ws~M4aS&90s%0ern*=N9O=2Y!vGgh{7sy-ZcG~GdwK(-N^dw2>+@F`@_`L%uBzz$Gw>---2iuTjOoVp zYXfSQX?ZmwPx4h&^saIHyd|FcZ_rwMYL+5*D79ljN=d$*ByCec(fcK1%srmEDTD&0 zi#rtE9%%2-Dw3~?r{0@^Z+q%C0WQizWzmN=uk_R%lxIWoCSR3A?~A}kJXgxM0hdwR zf367lR4g69epM#lq(G!vnM7|FaJVt%1yB8KY=-#Q&S^NwkWCStz|y@ zAM(5eFT4HTL~L%q%9GDfUWN0q#+au(bw^`8L1M)dz*Dh^+@i==R?&O0G3E+S-CKa~ zM80Yl?nn>|`F0HiA;lLe9_03U>qSmJ-$y+T7~h}BXG(PHT?HI!j9KbC`4U_D zh&SRN*zn9ov=5afA9$=C5sKa~8e@DOAo~$^MUQFK>x^l?S2X$F9mr1?i|D-xo8qB2 zYz|yPeCD%8MD8ZQyZR&f+9DUd3xT5o=Ce!4*&@)yw&B*ms@K*Z$rtmfw+lETU_Ltu zo8PVs_!Y1;Hjx_x`Q9V{#V$pP-fslVXFCI5rabU{#KW<%)BTowZGo?^DAD@|{I=Oq zShdQ4k`PbW;CflgUu>ecp6IhJOSJ0U2R!eon^tt=Vj$n-K<>W0MeoOqF;DyI zfDckG_&(kN*xY&jo_y_*h~5j0F;{x(-j3g6IcE4wYVUJfh<;DL7)0+}{IM2;u~`O& zmW+7wfQMrhxiOLNeUdgTNc64(J`gaUeH)li!d1@~9%-;yrxN)bI`CiP*=o`I1!K$u zp1Om9k5f+gB*re-n}`zm3KqRL;?E>78aThC#9IRVHfE6<8~OH<^rjp|Z!PoLrP#bB zWyFox+0w+pM!Tj;4j1$!?=S>Ze7z75zmk*`?M`*mZ?ZJxT_fs;#2 zytQuSi+a_Ik$igx5{hRfdhZ3k;;CC78|>X)V)FeiASDv{0vL!*Jl!hM`wH+uW6T;) z{e@(A$5?Eq+|95t#ff|ciQbPJW1jKUeKNL{p^vyeu=jm=adOyLnL`Sz2vUPhw#1Y^vDp1K*pe^rEd3*AY+HyjjUd%I#K-(dW? z;%)_AZa@tEz*9E{_+P4n>#)l6-nKDQB5dy&NZLKpJ8r!zoTN+Y`1|Jro-!TS%a2u| za$rE@#@5z*=?+DZbb5s3TP|sshkR3O{B5VCP;kuY6(ioO`27tph^(zkvAJ#jHJKff z?u?Lt(>>%HC}~mP@4gZs-X2&JRF%kgZD3EoAhNc8xVH%%Q)5Dlz*T(^z4u7+MVD=e zz3N>RD@S|!yL)8qyqLg*&WKR-4sAg6E|#>Vr+bFiynCxuI`JnSKQp3s&ILvUk06pR zij05m^(9Z1w-I!5f;t78s`&eh~D6(x` z_`@RVBH+f77DPb4SA3#3fUTVwuFB+lZ^VbI?>23KleCYdt_TRYe*?|#aHqg36K^s8 zY+1i9xNVP6hl^Uxji52+X8fsP^ThN9etS9vrhCl^zr^14yDm0x%H^W45_=!XikjT2 zbM+g9&1PO?*7cWxO#a`A%t}JNPTP$gG;#Ux3u-R4f zUh&rEvd@$>O42h0knhmMt-5en0pvR^x86zGP12eiiTC5gsfLiJ1L+*6+9FQ^o|+T! z=1bb39}#CbHf=|(5=v`31b8SXU1Og!JeVfP*M_}dq}AD+rW#{>>HNn77uD!TJGK1C z{1`^xLJpgGXCrt&@KaCSTd~>bTX`Gip}^IJe4>&@OM0n=tKJU-uO9?FNVTmPwaOyG zH-vwnh3~$ga2X-#kQNc|nLz9=*o>k|h2Id)s&!5a-uX1K+%GKYhZz&EQ_|$XE2mJr z*G5bwZ0+1DiRpe}NrNRloFVzn3cPM(;)}?N!A*VVz?f|Typ++qJ`>#$P11Nt zuVz5J$0ZF39FVS0Wb=x`;h}?D2GZgtV!dBj(yS(lw?Y?nxKaEu5bQk|dzDinSMBn5 z!f_L$-ESIs=9#5Y(My`_POSA}rKIfxk32V#s-bcVVUMLfsXt}N{Y04CuNDEn*#P-I z7kJcuNv+bS^4S_wR8O*`Wx#f&Gf+wzAnEQph&M-)Pf5C2A4Ehduj%7<2ux8MHrHY3 z8Ap}YLM~|=7kTExGD+hCgY&CIqNd7Ygadir9MG9wMcE-~W`KMl&(|*`@?=teP-BWF z_p<++hxMGH3Ix2o7vkL_$)~W~37g0}k*Bp;OS|#q9=}}!>`GN2X}F}P)^Uj+BSNo|rwda5@kJI{+${OXqpB)nnIaa$rs6zZ3LhZ7SiaxLGBVbVJyXv5Cr z8TZ-0@hUdK(C^YvSm(zl(@NCRvI2WG)=XlFyNCprByuFe6@lrAB#CfEU<@|qG?69| zE_b!c?TI*<5N<@GQ)4(a5hxL^D7DJ!M5aWzyfG5^OCnWG^H(BV3vhWNS0Y>yI3khE zOSqB!l@xiTKG+&~AcL=ZF>nty=iF1kGfs?m-}f*Sn>KA-QQtF!u%j21#3*bM?ftQy zHLb!bY)IoZz%PJT(wfv-bYSoA=iz*G+b8b~d<}c!&PS+9m|;cmlNzME+imbo8mfdW@zDV3o^yMlM7o5` zv5jYQz6hAziz*}`ArlM${;&?|)&Sp0d!mF^lipr=}81y*e`FbzvW ztFZz0uGQ{S?6@=}33=fsSX0#5luKWiP;wlD&E>Xx8j6HGF%Gx^*dz@_LY^1|9Gk>! bLNoX$GM&ZGmtsNM00000NkvXXu0mjfMx9^J literal 0 HcmV?d00001 diff --git a/assets/icons/dice/duality/DualityBW.svg b/assets/icons/dice/duality/DualityBW.svg new file mode 100644 index 00000000..9e716fd6 --- /dev/null +++ b/assets/icons/dice/duality/DualityBW.svg @@ -0,0 +1,59 @@ + + + + + + + diff --git a/styles/less/global/inventory-item.less b/styles/less/global/inventory-item.less index e221f4e7..fc79cdc4 100644 --- a/styles/less/global/inventory-item.less +++ b/styles/less/global/inventory-item.less @@ -26,7 +26,7 @@ &:not(.single-img) { .inventory-item-header:hover { - .img-portait { + .img-portait:has(.roll-img) { .roll-img { opacity: 1; } @@ -96,7 +96,9 @@ } .roll-img { + object-fit: contain; opacity: 0; + padding: 2px; } } diff --git a/templates/sheets/global/partials/inventory-item-V2.hbs b/templates/sheets/global/partials/inventory-item-V2.hbs index a4ecec3a..8758c77d 100644 --- a/templates/sheets/global/partials/inventory-item-V2.hbs +++ b/templates/sheets/global/partials/inventory-item-V2.hbs @@ -23,7 +23,13 @@ Parameters: (hasProperty item "toChat" ) "toChat" "editDoc" ) }}' {{#unless hideTooltip}} {{#if (eq type 'attack' )}} data-tooltip="#attack#{{item.actor.uuid}}" {{else}} data-tooltip="#item#{{item.uuid}}" {{/if}} {{/unless}}> - d20 + {{#if (or item.system.actionsList.size item.system.actionsList.length item.actionType)}} + {{#if @root.isNPC}} + d20 + {{else}} + 2d12 + {{/if}} + {{/if}} {{!-- Name & Tags --}} From 6f2ffaf2f83cbd2b2910ab69696abfc327ba4ff9 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Thu, 9 Oct 2025 03:24:09 +1000 Subject: [PATCH 073/260] Fix adv hand crossbow to d6 damage, not d4 (#1208) Co-authored-by: Chris Ryan --- ..._Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json b/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json index ef1eb127..46c13033 100644 --- a/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json +++ b/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json @@ -43,12 +43,13 @@ "parts": [ { "value": { - "dice": "d4", + "dice": "d6", "bonus": 5, "multiplier": "prof", "flatMultiplier": 1, "custom": { - "enabled": false + "enabled": false, + "formula": "" } }, "type": [ @@ -62,7 +63,8 @@ "dice": "d6", "bonus": null, "custom": { - "enabled": false + "enabled": false, + "formula": "" } }, "base": false @@ -105,12 +107,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753795089792, - "modifiedTime": 1753795117775, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1759575214347, + "lastModifiedBy": "mdk78Q6pOyHh6aBg" }, "_key": "!items!Lsvocst8aGqkBj7g" } From e15d210e207448bf19e7f30637e1589f73d66734 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Thu, 9 Oct 2025 04:12:53 +1000 Subject: [PATCH 074/260] Fix advantages for Armored Sentry (#1210) Co-authored-by: Chris Ryan --- ...tform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json b/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json index 553fa9e9..8a6ec9fb 100644 --- a/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json +++ b/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json @@ -13,14 +13,14 @@ }, "mainTrait": "strength", "advantageOn": { - "mX0DbTDuWAIpAGYq": { - "value": "Armadillo" + "ePKq6o90hDkt6KZa": { + "value": "Dig" }, - "0VGGQOhVOoNpZfdJ": { - "value": "Pangolin" + "SOesy6zClSPFKtar": { + "value": "Locate" }, - "6v6bkfKevJrn3YHf": { - "value": "Turtle" + "y5lYgsGkG4bu4O1g": { + "value": "Protect" } }, "features": [ @@ -125,12 +125,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753580987168, - "modifiedTime": 1753617739186, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1759665623244, + "lastModifiedBy": "9HOfUKAXuCu7hUPY" }, "_id": "8pUHJv3BYdjA4Qdf", "sort": 100000, From a80789f1f1db6c399f9144ae1b3e5cc44d282188 Mon Sep 17 00:00:00 2001 From: Chris Ryan <73275196+chrisryan10@users.noreply.github.com> Date: Thu, 9 Oct 2025 04:14:23 +1000 Subject: [PATCH 075/260] Change the damage to use d8 instead of d6 (#1211) Co-authored-by: Chris Ryan --- ...omainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json b/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json index 87226a85..33e4371e 100644 --- a/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json +++ b/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json @@ -127,11 +127,12 @@ "resultBased": false, "value": { "custom": { - "enabled": false + "enabled": false, + "formula": "" }, "multiplier": "flat", "flatMultiplier": 2, - "dice": "d6", + "dice": "d8", "bonus": 3 }, "applyTo": "hitPoints", @@ -145,7 +146,8 @@ "dice": "d6", "bonus": null, "custom": { - "enabled": false + "enabled": false, + "formula": "" } } } @@ -188,12 +190,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.348", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753922784438, - "modifiedTime": 1754338003443, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1759666111504, + "lastModifiedBy": "9HOfUKAXuCu7hUPY" }, "_id": "rZPH0BY8Sznc9sFG", "sort": 3400000, From 25fb2ee570bfc35f19e50c0a03559934512f39f5 Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Tue, 14 Oct 2025 11:00:16 -0400 Subject: [PATCH 076/260] [Community PR] Remove item description fieldset (#1214) * Remove item description fieldset * Move styling to tab description and reduce tab specific overrides * Move artist attribution style back to tab description * Roll back editor menu changes --- module/applications/sheets/api/base-item.mjs | 2 +- styles/less/global/tab-description.less | 9 ++++++--- templates/sheets/global/tabs/tab-description.hbs | 5 +---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/module/applications/sheets/api/base-item.mjs b/module/applications/sheets/api/base-item.mjs index f719b6d1..21ccbbf1 100644 --- a/module/applications/sheets/api/base-item.mjs +++ b/module/applications/sheets/api/base-item.mjs @@ -66,7 +66,7 @@ export default class DHBaseItemSheet extends DHApplicationMixin(ItemSheetV2) { /**@inheritdoc */ async _prepareContext(options) { - const context = super._prepareContext(options); + const context = await super._prepareContext(options); context.showAttribution = !game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.appearance) .hideAttribution; diff --git a/styles/less/global/tab-description.less b/styles/less/global/tab-description.less index 4d81f2f2..04a9d82a 100644 --- a/styles/less/global/tab-description.less +++ b/styles/less/global/tab-description.less @@ -3,11 +3,14 @@ .daggerheart.dh-style { .tab.active.description { - overflow-y: hidden !important; + display: flex; + flex-direction: column; height: -webkit-fill-available !important; + overflow-y: hidden !important; + padding-top: 10px; - fieldset { - height: -webkit-fill-available; + prose-mirror.active + .artist-attribution { + display: none; } } } diff --git a/templates/sheets/global/tabs/tab-description.hbs b/templates/sheets/global/tabs/tab-description.hbs index 6d0669e0..71995a51 100755 --- a/templates/sheets/global/tabs/tab-description.hbs +++ b/templates/sheets/global/tabs/tab-description.hbs @@ -3,10 +3,7 @@ data-tab='{{tabs.description.id}}' data-group='{{tabs.description.group}}' > -
- {{localize "DAGGERHEART.GENERAL.description"}} - {{formInput systemFields.description value=document.system.description enriched=enrichedDescription toggled=true}} -
+ {{formInput systemFields.description value=document.system.description enriched=enrichedDescription toggled=true}} {{#if (and showAttribution document.system.attribution.artist)}} From dc073aa9cc965ee6d9c178b490c0f6153530a0b2 Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Tue, 14 Oct 2025 11:01:54 -0400 Subject: [PATCH 077/260] Clean up loadout tab card name visual styling (#1216) --- styles/less/global/inventory-item.less | 2 ++ 1 file changed, 2 insertions(+) diff --git a/styles/less/global/inventory-item.less b/styles/less/global/inventory-item.less index fc79cdc4..1f5840af 100644 --- a/styles/less/global/inventory-item.less +++ b/styles/less/global/inventory-item.less @@ -309,12 +309,14 @@ background-color: @dark-blue; bottom: 0; mask-image: linear-gradient(180deg, transparent 0%, black 20%); + border-radius: 0 0 6px 6px; .card-name { font-style: normal; font-weight: 400; font-size: var(--font-size-12); line-height: 15px; + text-align: center; color: @beige; } From 45b9b5231400afe8851d78355324339fb9846515 Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Wed, 15 Oct 2025 09:01:41 -0400 Subject: [PATCH 078/260] Allow viewing domain card item sheet by clicking the name in grid view (#1215) --- .../applications/sheets/api/application-mixin.mjs | 14 ++++++++++++-- .../sheets/global/partials/domain-card-item.hbs | 2 +- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/module/applications/sheets/api/application-mixin.mjs b/module/applications/sheets/api/application-mixin.mjs index 5e186c86..dd845d34 100644 --- a/module/applications/sheets/api/application-mixin.mjs +++ b/module/applications/sheets/api/application-mixin.mjs @@ -99,6 +99,7 @@ export default function DHApplicationMixin(Base) { deleteDoc: DHSheetV2.#deleteDoc, toChat: DHSheetV2.#toChat, useItem: DHSheetV2.#useItem, + viewItem: DHSheetV2.#viewItem, toggleEffect: DHSheetV2.#toggleEffect, toggleExtended: DHSheetV2.#toggleExtended, addNewItem: DHSheetV2.#addNewItem, @@ -710,7 +711,7 @@ export default function DHApplicationMixin(Base) { * @type {ApplicationClickAction} */ static async #toChat(_event, target) { - let doc = await getDocFromElement(target); + const doc = await getDocFromElement(target); return doc.toChat(doc.uuid); } @@ -719,10 +720,19 @@ export default function DHApplicationMixin(Base) { * @type {ApplicationClickAction} */ static async #useItem(event, target) { - let doc = await getDocFromElement(target); + const doc = await getDocFromElement(target); await doc.use(event); } + /** + * View an item by opening its sheet + * @type {ApplicationClickAction} + */ + static async #viewItem(_, target) { + const doc = await getDocFromElement(target); + await doc.sheet.render({ force: true }); + } + /** * Toggle a ActiveEffect * @type {ApplicationClickAction} diff --git a/templates/sheets/global/partials/domain-card-item.hbs b/templates/sheets/global/partials/domain-card-item.hbs index 1dd92128..ae95b7af 100644 --- a/templates/sheets/global/partials/domain-card-item.hbs +++ b/templates/sheets/global/partials/domain-card-item.hbs @@ -19,6 +19,6 @@ - {{item.name}} + {{item.name}} \ No newline at end of file From d4f80b6fa1cabb8d659a1f361dd1f304425523d4 Mon Sep 17 00:00:00 2001 From: IrkTheImp <41175833+IrkTheImp@users.noreply.github.com> Date: Sat, 25 Oct 2025 11:59:25 -0500 Subject: [PATCH 079/260] [Feature] 789 - spotlight order (#1222) * order spotlight requests * add spotlight requests section to combat tracker --- lang/en.json | 4 ++++ module/applications/ui/combatTracker.mjs | 22 +++++++++++++++++--- module/data/combatant.mjs | 3 ++- templates/ui/combatTracker/combatTracker.hbs | 3 +++ 4 files changed, 28 insertions(+), 4 deletions(-) diff --git a/lang/en.json b/lang/en.json index e40b035c..38a498fe 100755 --- a/lang/en.json +++ b/lang/en.json @@ -1884,6 +1884,10 @@ } } }, + "SpotlightRequests": { + "singular": "Spotlight Request", + "plural": "Spotlight Requests" + }, "Tabs": { "details": "Details", "attack": "Attack", diff --git a/module/applications/ui/combatTracker.mjs b/module/applications/ui/combatTracker.mjs index 85c77cd3..101e20d6 100644 --- a/module/applications/ui/combatTracker.mjs +++ b/module/applications/ui/combatTracker.mjs @@ -36,10 +36,21 @@ export default class DhCombatTracker extends foundry.applications.sidebar.tabs.C const adversaries = context.turns?.filter(x => x.isNPC) ?? []; const characters = context.turns?.filter(x => !x.isNPC) ?? []; + const spotlightRequests = characters + ?.filter(x => !x.isNPC) + .filter(x => x.system.spotlight.requestOrderIndex > 0) + .sort((a, b) => { + const valueA = a.system.spotlight.requestOrderIndex; + const valueB = b.system.spotlight.requestOrderIndex; + + return valueA - valueB; + }); + Object.assign(context, { actionTokens: game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.variantRules).actionTokens, adversaries, - characters + characters: characters?.filter(x => !x.isNPC).filter(x => x.system.spotlight.requestOrderIndex == 0), + spotlightRequests }); } @@ -114,7 +125,8 @@ export default class DhCombatTracker extends foundry.applications.sidebar.tabs.C async setCombatantSpotlight(combatantId) { const update = { system: { - 'spotlight.requesting': false + 'spotlight.requesting': false, + 'spotlight.requestOrderIndex': 0 } }; const combatant = this.viewed.combatants.get(combatantId); @@ -142,11 +154,15 @@ export default class DhCombatTracker extends foundry.applications.sidebar.tabs.C } static async requestSpotlight(_, target) { + const characters = this.viewed.turns?.filter(x => !x.isNPC) ?? []; + const orderValues = characters.map(character => character.system.spotlight.requestOrderIndex); + const maxRequestIndex = Math.max(...orderValues); const { combatantId } = target.closest('[data-combatant-id]')?.dataset ?? {}; const combatant = this.viewed.combatants.get(combatantId); await combatant.update({ 'system.spotlight': { - requesting: !combatant.system.spotlight.requesting + requesting: !combatant.system.spotlight.requesting, + requestOrderIndex: !combatant.system.spotlight.requesting ? maxRequestIndex + 1 : 0 } }); diff --git a/module/data/combatant.mjs b/module/data/combatant.mjs index bb54c798..6deade9f 100644 --- a/module/data/combatant.mjs +++ b/module/data/combatant.mjs @@ -3,7 +3,8 @@ export default class DhCombatant extends foundry.abstract.TypeDataModel { const fields = foundry.data.fields; return { spotlight: new fields.SchemaField({ - requesting: new fields.BooleanField({ required: true, initial: false }) + requesting: new fields.BooleanField({ required: true, initial: false }), + requestOrderIndex: new fields.NumberField({ required: true, integer: true, initial: 0 }) }), actionTokens: new fields.NumberField({ required: true, integer: true, initial: 3 }) }; diff --git a/templates/ui/combatTracker/combatTracker.hbs b/templates/ui/combatTracker/combatTracker.hbs index 8ad4f7d5..91f7786b 100644 --- a/templates/ui/combatTracker/combatTracker.hbs +++ b/templates/ui/combatTracker/combatTracker.hbs @@ -1,4 +1,7 @@
+ {{#if (gt this.spotlightRequests.length 0)}} + {{> 'systems/daggerheart/templates/ui/combatTracker/combatTrackerSection.hbs' this title=(localize "DAGGERHEART.GENERAL.SpotlightRequests.plural") turns=this.spotlightRequests}} + {{/if}} {{#if (gt this.characters.length 0)}} {{> 'systems/daggerheart/templates/ui/combatTracker/combatTrackerSection.hbs' this title=(localize "DAGGERHEART.GENERAL.Character.plural") turns=this.characters}} {{/if}} From 07cdcf2d78452536c56164068d84faf71608556e Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Sun, 26 Oct 2025 12:57:46 +0100 Subject: [PATCH 080/260] Improved order of steps (#1232) --- .../characterCreation/characterCreation.mjs | 38 +++++++++---------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/module/applications/characterCreation/characterCreation.mjs b/module/applications/characterCreation/characterCreation.mjs index 490294cd..aa764c56 100644 --- a/module/applications/characterCreation/characterCreation.mjs +++ b/module/applications/characterCreation/characterCreation.mjs @@ -83,9 +83,9 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl static PARTS = { tabs: { template: 'systems/daggerheart/templates/characterCreation/tabs.hbs' }, + class: { template: 'systems/daggerheart/templates/characterCreation/tabs/class.hbs' }, ancestry: { template: 'systems/daggerheart/templates/characterCreation/tabs/ancestry.hbs' }, community: { template: 'systems/daggerheart/templates/characterCreation/tabs/community.hbs' }, - class: { template: 'systems/daggerheart/templates/characterCreation/tabs/class.hbs' }, traits: { template: 'systems/daggerheart/templates/characterCreation/tabs/traits.hbs' }, experience: { template: 'systems/daggerheart/templates/characterCreation/tabs/experience.hbs' }, domainCards: { template: 'systems/daggerheart/templates/characterCreation/tabs/domainCards.hbs' }, @@ -95,6 +95,13 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl }; static TABS = { + class: { + active: false, + cssClass: '', + group: 'setup', + id: 'class', + label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.tabs.class' + }, ancestry: { active: true, cssClass: '', @@ -109,13 +116,6 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl id: 'community', label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.tabs.community' }, - class: { - active: false, - cssClass: '', - group: 'setup', - id: 'class', - label: 'DAGGERHEART.APPLICATIONS.CharacterCreation.tabs.class' - }, traits: { active: false, cssClass: '', @@ -156,10 +156,10 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl v.cssClass = v.active ? 'active' : ''; switch (v.id) { - case 'community': + case 'ancestry': v.disabled = this.setup.visibility < 2; break; - case 'class': + case 'community': v.disabled = this.setup.visibility < 3; break; case 'traits': @@ -192,7 +192,7 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl } async _prepareContext(_options) { - this.tabGroups.setup = this.tabGroups.setup ?? 'ancestry'; + this.tabGroups.setup = this.tabGroups.setup ?? 'class'; const context = await super._prepareContext(_options); context.tabs = this._getTabs(this.constructor.TABS); @@ -266,13 +266,13 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl context.isLastTab = this.tabGroups.setup === 'equipment'; switch (this.tabGroups.setup) { case null: - case 'ancestry': + case 'class': context.nextDisabled = this.setup.visibility === 1; break; - case 'community': + case 'ancestry': context.nextDisabled = this.setup.visibility === 2; break; - case 'class': + case 'community': context.nextDisabled = this.setup.visibility === 3; break; case 'traits': @@ -363,11 +363,11 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl case 4: return this.getNrSelectedTrait() === 6 ? 5 : 4; case 3: - return this.setup.class.uuid && this.setup.subclass.uuid ? 4 : 3; + return this.setup.community.uuid ? 4 : 3; case 2: - return this.setup.community.uuid ? 3 : 2; + return this.setup.primaryAncestry.uuid ? 3 : 2; case 1: - return this.setup.primaryAncestry.uuid ? 2 : 1; + return this.setup.class.uuid && this.setup.subclass.uuid ? 2 : 1; } } @@ -473,10 +473,10 @@ export default class DhCharacterCreation extends HandlebarsApplicationMixin(Appl static setupGoNext() { switch (this.setup.visibility) { case 2: - this.tabGroups.setup = 'community'; + this.tabGroups.setup = 'ancestry'; break; case 3: - this.tabGroups.setup = 'class'; + this.tabGroups.setup = 'community'; break; case 4: this.tabGroups.setup = 'traits'; From 906c7ac853ece6470e3a59d24ac42427f92099a0 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Mon, 27 Oct 2025 22:24:38 +0100 Subject: [PATCH 081/260] [Feature] 613 - Countdown Improvements (#1184) * Added CountdownEdit view * Added countdowns UI element * . * Fixed migration of countdowns * . * . * style countdown interface, application and ownership dialog * fix buttons height in ownsership selection * . * Added coloured pips to UI cooldowns to signify player visibility if not every player has it * . * Added max-height and overflow * Sync countdown current with max when equal (#1221) * Update module/applications/ui/countdownEdit.mjs Co-authored-by: Carlos Fernandez * . --------- Co-authored-by: moliloo Co-authored-by: Carlos Fernandez --- daggerheart.mjs | 30 +- lang/en.json | 31 +- .../dialogs/ownershipSelection.mjs | 67 +-- .../sidebar/tabs/daggerheartMenu.mjs | 7 +- module/applications/ui/_module.mjs | 3 +- module/applications/ui/combatTracker.mjs | 6 - module/applications/ui/countdownEdit.mjs | 199 ++++++++ module/applications/ui/countdowns.mjs | 459 ++++++------------ module/config/flagsConfig.mjs | 3 +- module/config/generalConfig.mjs | 27 ++ module/data/countdowns.mjs | 119 ++++- module/systemRegistration/migrations.mjs | 31 ++ module/systemRegistration/socket.mjs | 10 +- styles/less/ui/countdown/countdown-edit.less | 142 ++++++ styles/less/ui/countdown/countdown.less | 176 +++++-- styles/less/ui/index.less | 1 + .../ownership-selection.less | 22 +- styles/less/ui/sidebar/daggerheartMenu.less | 14 +- templates/dialogs/ownershipSelection.hbs | 24 +- templates/levelup/tabs/viewMode.hbs | 2 +- templates/sidebar/daggerheart-menu/main.hbs | 4 + .../ui/combatTracker/combatTrackerHeader.hbs | 1 - templates/ui/countdown-edit.hbs | 76 +++ templates/ui/countdowns.hbs | 68 ++- 24 files changed, 1024 insertions(+), 498 deletions(-) create mode 100644 module/applications/ui/countdownEdit.mjs create mode 100644 styles/less/ui/countdown/countdown-edit.less create mode 100644 templates/ui/countdown-edit.hbs diff --git a/daggerheart.mjs b/daggerheart.mjs index d7aba401..e079703a 100644 --- a/daggerheart.mjs +++ b/daggerheart.mjs @@ -8,10 +8,8 @@ import * as fields from './module/data/fields/_module.mjs'; import RegisterHandlebarsHelpers from './module/helpers/handlebarsHelper.mjs'; import { enricherConfig, enricherRenderSetup } from './module/enrichers/_module.mjs'; import { getCommandTarget, rollCommandToJSON } from './module/helpers/utils.mjs'; -import { NarrativeCountdowns } from './module/applications/ui/countdowns.mjs'; import { BaseRoll, DHRoll, DualityRoll, D20Roll, DamageRoll } from './module/dice/_module.mjs'; import { enrichedDualityRoll } from './module/enrichers/DualityRollEnricher.mjs'; -import { registerCountdownHooks } from './module/data/countdowns.mjs'; import { handlebarsRegistration, runMigrations, @@ -140,6 +138,7 @@ Hooks.once('init', () => { CONFIG.Token.rulerClass = placeables.DhTokenRuler; CONFIG.ui.resources = applications.ui.DhFearTracker; + CONFIG.ui.countdowns = applications.ui.DhCountdowns; CONFIG.ux.ContextMenu = applications.ux.DHContextMenu; CONFIG.ux.TooltipManager = documents.DhTooltipManager; @@ -166,10 +165,12 @@ Hooks.on('ready', async () => { if (game.settings.get(SYSTEM.id, SYSTEM.SETTINGS.gameSettings.appearance).displayFear !== 'hide') ui.resources.render({ force: true }); + ui.countdowns = new CONFIG.ui.countdowns(); + ui.countdowns.render({ force: true }); + if (!(ui.compendiumBrowser instanceof applications.ui.ItemBrowser)) ui.compendiumBrowser = new applications.ui.ItemBrowser(); - registerCountdownHooks(); socketRegistration.registerSocketHooks(); registerRollDiceHooks(); socketRegistration.registerUserQueries(); @@ -242,29 +243,6 @@ Hooks.on('chatMessage', (_, message) => { } }); -Hooks.on('renderJournalDirectory', async (tab, html, _, options) => { - if (tab.id === 'journal') { - if (options.parts && !options.parts.includes('footer')) return; - - const buttons = tab.element.querySelector('.directory-footer.action-buttons'); - const title = game.i18n.format('DAGGERHEART.APPLICATIONS.Countdown.title', { - type: game.i18n.localize('DAGGERHEART.APPLICATIONS.Countdown.types.narrative') - }); - buttons.insertAdjacentHTML( - 'afterbegin', - ` - ` - ); - - buttons.querySelector('#narrative-countdown-button').onclick = async () => { - new NarrativeCountdowns().open(); - }; - } -}); - Hooks.on('moveToken', async (movedToken, data) => { const effectsAutomation = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).effects; if (!effectsAutomation.rangeDependent) return; diff --git a/lang/en.json b/lang/en.json index 38a498fe..c21c1d5b 100755 --- a/lang/en.json +++ b/lang/en.json @@ -331,7 +331,8 @@ "label": { "label": "Label", "hint": "Used for custom" }, "value": { "label": "Value" } } - } + }, + "type": { "label": "Countdown Type" } } } }, @@ -346,6 +347,26 @@ "encounter": "Encounter" } }, + "CountdownEdit": { + "title": "Countdown Edit", + "viewTitle": "Countdowns", + "editTitle": "Edit Countdowns", + "newCountdown": "New Countdown", + "removeCountdownTitle": "Remove Countdown", + "removeCountdownText": "Are you sure you want to remove the countdown: {name}?", + "current": "Current", + "max": "Max", + "currentCountdownValue": "Current: {value}", + "currentCountdownMax": "Max: {value}", + "category": "Category", + "type": "Type", + "defaultOwnershipTooltip": "The default player ownership of countdowns", + "hideNewCountdowns": "Hide New Countdowns" + }, + "DaggerheartMenu": { + "title": "GM Tools", + "countdowns": "Edit Countdowns" + }, "DeleteConfirmation": { "title": "Delete {type} - {name}", "text": "Are you sure you want to delete {name}?" @@ -2455,6 +2476,11 @@ "playerMessage": "{user} rerolled their {name}" } }, + "Countdowns": { + "title": "Countdowns", + "toggleIconMode": "Toggle Icon Only", + "noPlayerAccess": "This countdown isn't visible to any players" + }, "ItemBrowser": { "title": "Daggerheart Compendium Browser", "hint": "Select a Folder in sidebar to start browsing through the compendium", @@ -2562,7 +2588,8 @@ "subclassesAlreadyPresent": "You already have a class and multiclass subclass", "noDiceSystem": "Your selected dice {system} does not have a {faces} dice", "gmMenuRefresh": "You refreshed all actions and resources {types}", - "subclassAlreadyLinked": "{name} is already a subclass in the class {class}. Remove it from there if you want it to be a subclass to this class." + "subclassAlreadyLinked": "{name} is already a subclass in the class {class}. Remove it from there if you want it to be a subclass to this class.", + "gmRequired": "This action requires an online GM" }, "Sidebar": { "daggerheartMenu": { diff --git a/module/applications/dialogs/ownershipSelection.mjs b/module/applications/dialogs/ownershipSelection.mjs index e4a7e628..049f4d99 100644 --- a/module/applications/dialogs/ownershipSelection.mjs +++ b/module/applications/dialogs/ownershipSelection.mjs @@ -1,18 +1,20 @@ const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; export default class OwnershipSelection extends HandlebarsApplicationMixin(ApplicationV2) { - constructor(resolve, reject, name, ownership) { + constructor(name, ownership, defaultOwnership) { super({}); - this.resolve = resolve; - this.reject = reject; this.name = name; - this.ownership = ownership; + this.ownership = foundry.utils.deepClone(ownership); + this.defaultOwnership = defaultOwnership; } static DEFAULT_OPTIONS = { tag: 'form', - classes: ['daggerheart', 'views', 'ownership-selection'], + classes: ['daggerheart', 'views', 'dialog', 'dh-style', 'ownership-selection'], + window: { + icon: 'fa-solid fa-users' + }, position: { width: 600, height: 'auto' @@ -30,43 +32,48 @@ export default class OwnershipSelection extends HandlebarsApplicationMixin(Appli return game.i18n.format('DAGGERHEART.APPLICATIONS.OwnershipSelection.title', { name: this.name }); } + getOwnershipData(id) { + return this.ownership[id] ?? CONST.DOCUMENT_OWNERSHIP_LEVELS.INHERIT; + } + async _prepareContext(_options) { const context = await super._prepareContext(_options); - context.ownershipOptions = Object.keys(CONST.DOCUMENT_OWNERSHIP_LEVELS).map(level => ({ - value: CONST.DOCUMENT_OWNERSHIP_LEVELS[level], - label: game.i18n.localize(`OWNERSHIP.${level}`) - })); - context.ownership = { - default: this.ownership.default, - players: Object.keys(this.ownership.players).reduce((acc, x) => { - const user = game.users.get(x); - if (!user.isGM) { - acc[x] = { - img: user.character?.img ?? 'icons/svg/cowled.svg', - name: user.name, - ownership: this.ownership.players[x].value - }; - } + context.ownershipDefaultOptions = CONFIG.DH.GENERAL.basicOwnershiplevels; + context.ownershipOptions = CONFIG.DH.GENERAL.simpleOwnershiplevels; + context.defaultOwnership = this.defaultOwnership; + context.ownership = game.users.reduce((acc, user) => { + if (!user.isGM) { + acc[user.id] = { + ...user, + img: user.character?.img ?? 'icons/svg/cowled.svg', + ownership: this.getOwnershipData(user.id) + }; + } - return acc; - }, {}) - }; + return acc; + }, {}); return context; } static async updateData(event, _, formData) { - const { ownership } = foundry.utils.expandObject(formData.object); - - this.resolve(ownership); - this.close(true); + const data = foundry.utils.expandObject(formData.object); + this.close(data); } - async close(fromSave) { - if (!fromSave) { - this.reject(); + async close(data) { + if (data) { + this.saveData = data; } await super.close(); } + + static async configure(name, ownership, defaultOwnership) { + return new Promise(resolve => { + const app = new this(name, ownership, defaultOwnership); + app.addEventListener('close', () => resolve(app.saveData), { once: true }); + app.render({ force: true }); + }); + } } diff --git a/module/applications/sidebar/tabs/daggerheartMenu.mjs b/module/applications/sidebar/tabs/daggerheartMenu.mjs index cf7aeae3..1fb5d09f 100644 --- a/module/applications/sidebar/tabs/daggerheartMenu.mjs +++ b/module/applications/sidebar/tabs/daggerheartMenu.mjs @@ -29,7 +29,8 @@ export default class DaggerheartMenu extends HandlebarsApplicationMixin(Abstract }, actions: { selectRefreshable: DaggerheartMenu.#selectRefreshable, - refreshActors: DaggerheartMenu.#refreshActors + refreshActors: DaggerheartMenu.#refreshActors, + editCountdowns: DaggerheartMenu.#editCountdowns } }; @@ -157,4 +158,8 @@ export default class DaggerheartMenu extends HandlebarsApplicationMixin(Abstract this.render(); } + + static async #editCountdowns() { + new game.system.api.applications.ui.CountdownEdit().render(true); + } } diff --git a/module/applications/ui/_module.mjs b/module/applications/ui/_module.mjs index 815fc4e7..35a58566 100644 --- a/module/applications/ui/_module.mjs +++ b/module/applications/ui/_module.mjs @@ -1,6 +1,7 @@ +export { default as CountdownEdit } from './countdownEdit.mjs'; +export { default as DhCountdowns } from './countdowns.mjs'; export { default as DhChatLog } from './chatLog.mjs'; export { default as DhCombatTracker } from './combatTracker.mjs'; -export * as DhCountdowns from './countdowns.mjs'; export { default as DhFearTracker } from './fearTracker.mjs'; export { default as DhHotbar } from './hotbar.mjs'; export { ItemBrowser } from './itemBrowser.mjs'; diff --git a/module/applications/ui/combatTracker.mjs b/module/applications/ui/combatTracker.mjs index 101e20d6..b70f8c71 100644 --- a/module/applications/ui/combatTracker.mjs +++ b/module/applications/ui/combatTracker.mjs @@ -1,5 +1,3 @@ -import { EncounterCountdowns } from '../ui/countdowns.mjs'; - export default class DhCombatTracker extends foundry.applications.sidebar.tabs.CombatTracker { static DEFAULT_OPTIONS = { actions: { @@ -184,8 +182,4 @@ export default class DhCombatTracker extends foundry.applications.sidebar.tabs.C await combatant.update({ 'system.actionTokens': newIndex }); this.render(); } - - static openCountdowns() { - new EncounterCountdowns().open(); - } } diff --git a/module/applications/ui/countdownEdit.mjs b/module/applications/ui/countdownEdit.mjs new file mode 100644 index 00000000..2098fb10 --- /dev/null +++ b/module/applications/ui/countdownEdit.mjs @@ -0,0 +1,199 @@ +import { DhCountdown } from '../../data/countdowns.mjs'; +import { emitAsGM, GMUpdateEvent, RefreshType, socketEvent } from '../../systemRegistration/socket.mjs'; + +const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; + +export default class CountdownEdit extends HandlebarsApplicationMixin(ApplicationV2) { + constructor() { + super(); + + this.data = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); + this.editingCountdowns = new Set(); + this.currentEditCountdown = null; + this.hideNewCountdowns = false; + } + + static DEFAULT_OPTIONS = { + classes: ['daggerheart', 'dialog', 'dh-style', 'countdown-edit'], + tag: 'form', + position: { width: 600 }, + window: { + title: 'DAGGERHEART.APPLICATIONS.CountdownEdit.title', + icon: 'fa-solid fa-clock-rotate-left' + }, + actions: { + addCountdown: CountdownEdit.#addCountdown, + toggleCountdownEdit: CountdownEdit.#toggleCountdownEdit, + editCountdownImage: CountdownEdit.#editCountdownImage, + editCountdownOwnership: CountdownEdit.#editCountdownOwnership, + removeCountdown: CountdownEdit.#removeCountdown + }, + form: { handler: this.updateData, submitOnChange: true } + }; + + static PARTS = { + countdowns: { + template: 'systems/daggerheart/templates/ui/countdown-edit.hbs', + scrollable: ['.expanded-view', '.edit-content'] + } + }; + + async _prepareContext(_options) { + const context = await super._prepareContext(_options); + context.isGM = game.user.isGM; + context.ownershipDefaultOptions = CONFIG.DH.GENERAL.basicOwnershiplevels; + context.defaultOwnership = this.data.defaultOwnership; + context.countdownBaseTypes = CONFIG.DH.GENERAL.countdownBaseTypes; + context.countdownTypes = CONFIG.DH.GENERAL.countdownTypes; + context.hideNewCountdowns = this.hideNewCountdowns; + context.countdowns = Object.keys(this.data.countdowns).reduce((acc, key) => { + const countdown = this.data.countdowns[key]; + acc[key] = { + ...countdown, + typeName: game.i18n.localize(CONFIG.DH.GENERAL.countdownBaseTypes[countdown.type].name), + progress: { + ...countdown.progress, + typeName: game.i18n.localize(CONFIG.DH.GENERAL.countdownTypes[countdown.progress.type].label) + }, + editing: this.editingCountdowns.has(key) + }; + + return acc; + }, {}); + + return context; + } + + /** @override */ + async _postRender(_context, _options) { + if (this.currentEditCountdown) { + setTimeout(() => { + const input = this.element.querySelector( + `.countdown-edit-container[data-id="${this.currentEditCountdown}"] input` + ); + if (input) { + input.select(); + this.currentEditCountdown = null; + } + }, 100); + } + } + + canPerformEdit() { + if (game.user.isGM) return true; + + if (!game.users.activeGM) { + ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.gmRequired')); + return false; + } + + return true; + } + + async updateSetting(update) { + const noGM = !game.users.find(x => x.isGM && x.active); + if (noGM) { + ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.gmRequired')); + return; + } + + await this.data.updateSource(update); + await emitAsGM(GMUpdateEvent.UpdateCountdowns, this.gmSetSetting.bind(this.data), this.data, null, { + refreshType: RefreshType.Countdown + }); + + this.render(); + } + + static async updateData(_event, _, formData) { + const { hideNewCountdowns, ...settingsData } = foundry.utils.expandObject(formData.object); + + // Sync current and max if max is changing and they were equal before + for (const [id, countdown] of Object.entries(settingsData.countdowns ?? {})) { + const existing = this.data.countdowns[id]; + const wasEqual = existing && existing.progress.current === existing.progress.max; + if (wasEqual && countdown.progress.max !== existing.progress.max) { + countdown.progress.current = countdown.progress.max; + } else { + countdown.progress.current = Math.min(countdown.progress.current, countdown.progress.max); + } + } + + this.hideNewCountdowns = hideNewCountdowns; + this.updateSetting(settingsData); + } + + async gmSetSetting(data) { + await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns, data), + game.socket.emit(`system.${CONFIG.DH.id}`, { + action: socketEvent.Refresh, + data: { refreshType: RefreshType.Countdown } + }); + Hooks.callAll(socketEvent.Refresh, { refreshType: RefreshType.Countdown }); + } + + static #addCountdown() { + const id = foundry.utils.randomID(); + this.editingCountdowns.add(id); + this.currentEditCountdown = id; + this.updateSetting({ + [`countdowns.${id}`]: DhCountdown.defaultCountdown(null, this.hideNewCountdowns) + }); + } + + static #editCountdownImage(_, target) { + const countdown = this.data.countdowns[target.id]; + const fp = new foundry.applications.apps.FilePicker.implementation({ + current: countdown.img, + type: 'image', + callback: async path => this.updateSetting({ [`countdowns.${target.id}.img`]: path }), + top: this.position.top + 40, + left: this.position.left + 10 + }); + return fp.browse(); + } + + static #toggleCountdownEdit(_, button) { + const { countdownId } = button.dataset; + + const isEditing = this.editingCountdowns.has(countdownId); + if (isEditing) this.editingCountdowns.delete(countdownId); + else { + this.editingCountdowns.add(countdownId); + this.currentEditCountdown = countdownId; + } + + this.render(); + } + + static async #editCountdownOwnership(_, button) { + const countdown = this.data.countdowns[button.dataset.countdownId]; + const data = await game.system.api.applications.dialogs.OwnershipSelection.configure( + countdown.name, + countdown.ownership, + this.data.defaultOwnership + ); + if (!data) return; + + this.updateSetting({ [`countdowns.${button.dataset.countdownId}`]: data }); + } + + static async #removeCountdown(event, button) { + const { countdownId } = button.dataset; + + if (!event.shiftKey) { + const confirmed = await foundry.applications.api.DialogV2.confirm({ + window: { + title: game.i18n.localize('DAGGERHEART.APPLICATIONS.CountdownEdit.removeCountdownTitle') + }, + content: game.i18n.format('DAGGERHEART.APPLICATIONS.CountdownEdit.removeCountdownText', { + name: this.data.countdowns[countdownId].name + }) + }); + if (!confirmed) return; + } + + if (this.editingCountdowns.has(countdownId)) this.editingCountdowns.delete(countdownId); + this.updateSetting({ [`countdowns.-=${countdownId}`]: null }); + } +} diff --git a/module/applications/ui/countdowns.mjs b/module/applications/ui/countdowns.mjs index 5e3ad1ab..07eac74b 100644 --- a/module/applications/ui/countdowns.mjs +++ b/module/applications/ui/countdowns.mjs @@ -1,355 +1,218 @@ -import { GMUpdateEvent, RefreshType, socketEvent } from '../../systemRegistration/socket.mjs'; -import constructHTMLButton from '../../helpers/utils.mjs'; -import OwnershipSelection from '../dialogs/ownershipSelection.mjs'; +import { emitAsGM, GMUpdateEvent, RefreshType, socketEvent } from '../../systemRegistration/socket.mjs'; const { HandlebarsApplicationMixin, ApplicationV2 } = foundry.applications.api; -class Countdowns extends HandlebarsApplicationMixin(ApplicationV2) { - constructor(basePath) { - super({}); +/** + * A UI element which displays the countdowns in this world. + * + * @extends ApplicationV2 + * @mixes HandlebarsApplication + */ - this.basePath = basePath; - } - - get title() { - return game.i18n.format('DAGGERHEART.APPLICATIONS.Countdown.title', { - type: game.i18n.localize(`DAGGERHEART.APPLICATIONS.Countdown.types.${this.basePath}`) - }); +export default class DhCountdowns extends HandlebarsApplicationMixin(ApplicationV2) { + constructor(options = {}) { + super(options); + + this.sidebarCollapsed = true; + this.setupHooks(); } + /** @inheritDoc */ static DEFAULT_OPTIONS = { - classes: ['daggerheart', 'dh-style', 'countdown'], - tag: 'form', - position: { width: 740, height: 700 }, + id: 'countdowns', + tag: 'div', + classes: ['daggerheart', 'dh-style', 'countdowns', 'faded-ui'], window: { + icon: 'fa-solid fa-clock-rotate-left', frame: true, - title: 'Countdowns', - resizable: true, + title: 'DAGGERHEART.UI.Countdowns.title', + positioned: false, + resizable: false, minimizable: false }, actions: { - addCountdown: this.addCountdown, - removeCountdown: this.removeCountdown, - editImage: this.onEditImage, - openOwnership: this.openOwnership, - openCountdownOwnership: this.openCountdownOwnership, - toggleSimpleView: this.toggleSimpleView + toggleViewMode: DhCountdowns.#toggleViewMode, + decreaseCountdown: (_, target) => this.editCountdown(false, target), + increaseCountdown: (_, target) => this.editCountdown(true, target) }, - form: { handler: this.updateData, submitOnChange: true } - }; - - static PARTS = { - countdowns: { - template: 'systems/daggerheart/templates/ui/countdowns.hbs', - scrollable: ['.expanded-view'] + position: { + width: 400, + height: 222, + top: 50 } }; - _attachPartListeners(partId, htmlElement, options) { - super._attachPartListeners(partId, htmlElement, options); + /** @override */ + static PARTS = { + resources: { + root: true, + template: 'systems/daggerheart/templates/ui/countdowns.hbs' + } + }; - htmlElement.querySelectorAll('.mini-countdown-container').forEach(element => { - element.addEventListener('click', event => this.updateCountdownValue.bind(this)(event, false)); - element.addEventListener('contextmenu', event => this.updateCountdownValue.bind(this)(event, true)); - }); - } - - async _preFirstRender(context, options) { - options.position = - game.user.getFlag(CONFIG.DH.id, CONFIG.DH.FLAGS[`${this.basePath}Countdown`].position) ?? - Countdowns.DEFAULT_OPTIONS.position; - - const viewSetting = - game.user.getFlag(CONFIG.DH.id, CONFIG.DH.FLAGS[`${this.basePath}Countdown`].simple) ?? !game.user.isGM; - this.simpleView = - game.user.isGM || !this.testUserPermission(CONST.DOCUMENT_OWNERSHIP_LEVELS.OBSERVER) ? viewSetting : true; - context.simple = this.simpleView; - } - - _onPosition(position) { - game.user.setFlag(CONFIG.DH.id, CONFIG.DH.FLAGS[`${this.basePath}Countdown`].position, position); + get element() { + return document.body.querySelector('.daggerheart.dh-style.countdowns'); } + /**@inheritdoc */ async _renderFrame(options) { const frame = await super._renderFrame(options); - if (this.testUserPermission(CONST.DOCUMENT_OWNERSHIP_LEVELS.OBSERVER)) { - const button = constructHTMLButton({ - label: '', - classes: ['header-control', 'icon', 'fa-solid', 'fa-wrench'], - dataset: { action: 'toggleSimpleView', tooltip: 'DAGGERHEART.APPLICATIONS.Countdown.toggleSimple' } - }); - this.window.controls.after(button); - } + const iconOnly = + game.user.getFlag(CONFIG.DH.id, CONFIG.DH.FLAGS.userFlags.countdownMode) === + CONFIG.DH.GENERAL.countdownAppMode.iconOnly; + if (iconOnly) frame.classList.add('icon-only'); + else frame.classList.remove('icon-only'); + + const header = frame.querySelector('.window-header'); + header.querySelector('button[data-action="close"]').remove(); + + const minimizeTooltip = game.i18n.localize('DAGGERHEART.UI.Countdowns.toggleIconMode'); + const minimizeButton = ``; + header.insertAdjacentHTML('beforeEnd', minimizeButton); return frame; } - testUserPermission(level, exact, altSettings) { - if (game.user.isGM) return true; - - const settings = - altSettings ?? game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns)[this.basePath]; - const defaultAllowed = exact ? settings.ownership.default === level : settings.ownership.default >= level; - const userAllowed = exact - ? settings.playerOwnership[game.user.id]?.value === level - : settings.playerOwnership[game.user.id]?.value >= level; - return defaultAllowed || userAllowed; - } - - async _prepareContext(_options) { - const context = await super._prepareContext(_options); - const countdownData = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns)[ - this.basePath - ]; - + /** @override */ + async _prepareContext(options) { + const context = await super._prepareContext(options); context.isGM = game.user.isGM; - context.base = this.basePath; + context.sidebarCollapsed = this.sidebarCollapsed; + context.iconOnly = + game.user.getFlag(CONFIG.DH.id, CONFIG.DH.FLAGS.userFlags.countdownMode) === + CONFIG.DH.GENERAL.countdownAppMode.iconOnly; - context.canCreate = this.testUserPermission(CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER, true); - context.source = { - ...countdownData, - countdowns: Object.keys(countdownData.countdowns).reduce((acc, key) => { - const countdown = countdownData.countdowns[key]; + const setting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); + context.countdowns = Object.keys(setting.countdowns).reduce((acc, key) => { + const countdown = setting.countdowns[key]; + const ownership = DhCountdowns.#getPlayerOwnership(game.user, setting, countdown); + if (ownership === CONST.DOCUMENT_OWNERSHIP_LEVELS.NONE) return acc; - if (this.testUserPermission(CONST.DOCUMENT_OWNERSHIP_LEVELS.LIMITED, false, countdown)) { - acc[key] = { - ...countdown, - canEdit: this.testUserPermission(CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER, true, countdown) - }; + const playersWithAccess = game.users.reduce((acc, user) => { + const ownership = DhCountdowns.#getPlayerOwnership(user, setting, countdown); + if (!user.isGM && ownership && ownership !== CONST.DOCUMENT_OWNERSHIP_LEVELS.NONE) { + acc.push(user); } - return acc; - }, {}) - }; - context.systemFields = countdownData.schema.fields; - context.countdownFields = context.systemFields.countdowns.element.fields; - context.simple = this.simpleView; + }, []); + const nonGmPlayers = game.users.filter(x => !x.isGM); + acc[key] = { + ...countdown, + editable: game.user.isGM || ownership === CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER, + playerAccess: playersWithAccess.length !== nonGmPlayers.length ? playersWithAccess : [], + noPlayerAccess: nonGmPlayers.length && playersWithAccess.length === 0 + }; + return acc; + }, {}); return context; } - static async updateData(event, _, formData) { - const data = foundry.utils.expandObject(formData.object); - const newSetting = foundry.utils.mergeObject( - game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns).toObject(), - data - ); + static #getPlayerOwnership(user, setting, countdown) { + const playerOwnership = countdown.ownership[user.id]; + return playerOwnership === undefined || playerOwnership === CONST.DOCUMENT_OWNERSHIP_LEVELS.INHERIT + ? setting.defaultOwnership + : playerOwnership; + } - if (game.user.isGM) { - await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns, newSetting); - this.render(); - } else { - await game.socket.emit(`system.${CONFIG.DH.id}`, { - action: socketEvent.GMUpdate, - data: { - action: GMUpdateEvent.UpdateSetting, - uuid: CONFIG.DH.SETTINGS.gameSettings.Countdowns, - update: newSetting - } - }); + toggleCollapsedPosition = async (_, collapsed) => { + this.sidebarCollapsed = collapsed; + if (!collapsed) this.element.classList.add('expanded'); + else this.element.classList.remove('expanded'); + }; + + cooldownRefresh = ({ refreshType }) => { + if (refreshType === RefreshType.Countdown) this.render(); + }; + + static canPerformEdit() { + if (game.user.isGM) return true; + + const noGM = !game.users.find(x => x.isGM && x.active); + if (noGM) { + ui.notifications.warn(game.i18n.localize('DAGGERHEART.UI.Notifications.gmRequired')); + return false; } + + return true; } - async updateSetting(update) { - if (game.user.isGM) { - await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns, update); - await game.socket.emit(`system.${CONFIG.DH.id}`, { - action: socketEvent.Refresh, - data: { - refreshType: RefreshType.Countdown, - application: `${this.basePath}-countdowns` - } - }); + static async #toggleViewMode() { + const currentMode = game.user.getFlag(CONFIG.DH.id, CONFIG.DH.FLAGS.userFlags.countdownMode); + const appMode = CONFIG.DH.GENERAL.countdownAppMode; + const newMode = currentMode === appMode.textIcon ? appMode.iconOnly : appMode.textIcon; + await game.user.setFlag(CONFIG.DH.id, CONFIG.DH.FLAGS.userFlags.countdownMode, newMode); - this.render(); - } else { - await game.socket.emit(`system.${CONFIG.DH.id}`, { - action: socketEvent.GMUpdate, - data: { - action: GMUpdateEvent.UpdateSetting, - uuid: CONFIG.DH.SETTINGS.gameSettings.Countdowns, - update: update, - refresh: { refreshType: RefreshType.Countdown, application: `${this.basePath}-countdowns` } - } - }); - } - } - - static onEditImage(_, target) { - const setting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns)[this.basePath]; - const current = setting.countdowns[target.dataset.countdown].img; - const fp = new foundry.applications.apps.FilePicker.implementation({ - current, - type: 'image', - callback: async path => this.updateImage.bind(this)(path, target.dataset.countdown), - top: this.position.top + 40, - left: this.position.left + 10 - }); - return fp.browse(); - } - - async updateImage(path, countdown) { - const setting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); - await setting.updateSource({ - [`${this.basePath}.countdowns.${countdown}.img`]: path - }); - - await this.updateSetting(setting); - } - - static openOwnership(_, target) { - new Promise((resolve, reject) => { - const setting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns)[this.basePath]; - const ownership = { default: setting.ownership.default, players: setting.playerOwnership }; - new OwnershipSelection(resolve, reject, this.title, ownership).render(true); - }).then(async ownership => { - const setting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); - await setting.updateSource({ - [`${this.basePath}.ownership`]: ownership - }); - - await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns, setting.toObject()); - this.render(); - }); - } - - static openCountdownOwnership(_, target) { - const countdownId = target.dataset.countdown; - new Promise((resolve, reject) => { - const countdown = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns)[this.basePath] - .countdowns[countdownId]; - const ownership = { default: countdown.ownership.default, players: countdown.playerOwnership }; - new OwnershipSelection(resolve, reject, countdown.name, ownership).render(true); - }).then(async ownership => { - const setting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); - await setting.updateSource({ - [`${this.basePath}.countdowns.${countdownId}.ownership`]: ownership - }); - - await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns, setting); - this.render(); - }); - } - - static async toggleSimpleView() { - this.simpleView = !this.simpleView; - await game.user.setFlag(CONFIG.DH.id, CONFIG.DH.FLAGS[`${this.basePath}Countdown`].simple, this.simpleView); + if (newMode === appMode.iconOnly) this.element.classList.add('icon-only'); + else this.element.classList.remove('icon-only'); this.render(); } - async updateCountdownValue(event, increase) { - const countdownSetting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); - const countdown = countdownSetting[this.basePath].countdowns[event.currentTarget.dataset.countdown]; + static async editCountdown(increase, target) { + if (!DhCountdowns.canPerformEdit()) return; - if (!this.testUserPermission(CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER)) { - return; - } - - const currentValue = countdown.progress.current; - - if (increase && currentValue === countdown.progress.max) return; - if (!increase && currentValue === 0) return; - - await countdownSetting.updateSource({ - [`${this.basePath}.countdowns.${event.currentTarget.dataset.countdown}.progress.current`]: increase - ? currentValue + 1 - : currentValue - 1 + const settings = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); + const countdown = settings.countdowns[target.id]; + const newCurrent = increase + ? Math.min(countdown.progress.current + 1, countdown.progress.max) + : Math.max(countdown.progress.current - 1, 0); + await settings.updateSource({ [`countdowns.${target.id}.progress.current`]: newCurrent }); + await emitAsGM(GMUpdateEvent.UpdateCountdowns, DhCountdowns.gmSetSetting.bind(settings), settings, null, { + refreshType: RefreshType.Countdown }); - - await this.updateSetting(countdownSetting.toObject()); } - static async addCountdown() { + static async gmSetSetting(data) { + await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns, data), + game.socket.emit(`system.${CONFIG.DH.id}`, { + action: socketEvent.Refresh, + data: { refreshType: RefreshType.Countdown } + }); + Hooks.callAll(socketEvent.Refresh, { refreshType: RefreshType.Countdown }); + } + + setupHooks() { + Hooks.on('collapseSidebar', this.toggleCollapsedPosition.bind()); + Hooks.on(socketEvent.Refresh, this.cooldownRefresh.bind()); + } + + close(options) { + Hooks.off('collapseSidebar', this.toggleCollapsedPosition); + Hooks.off(socketEvent.Refresh, this.cooldownRefresh); + super.close(options); + } + + static async updateCountdowns(progressType) { const countdownSetting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); - await countdownSetting.updateSource({ - [`${this.basePath}.countdowns.${foundry.utils.randomID()}`]: { - name: game.i18n.localize('DAGGERHEART.APPLICATIONS.Countdown.newCountdown'), - ownership: game.user.isGM - ? {} - : { - players: { - [game.user.id]: { type: CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER } - } - } + const updatedCountdowns = Object.keys(countdownSetting.countdowns).reduce((acc, key) => { + const countdown = countdownSetting.countdowns[key]; + if (countdown.progress.type === progressType && countdown.progress.current > 0) { + acc.push(key); } - }); - await this.updateSetting(countdownSetting.toObject()); - } + return acc; + }, []); - static async removeCountdown(_, target) { - const countdownSetting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); - const countdownName = countdownSetting[this.basePath].countdowns[target.dataset.countdown].name; - - const confirmed = await foundry.applications.api.DialogV2.confirm({ - window: { - title: game.i18n.localize('DAGGERHEART.APPLICATIONS.Countdown.removeCountdownTitle') - }, - content: game.i18n.format('DAGGERHEART.APPLICATIONS.Countdown.removeCountdownText', { name: countdownName }) - }); - if (!confirmed) return; - - await countdownSetting.updateSource({ [`${this.basePath}.countdowns.-=${target.dataset.countdown}`]: null }); - - await this.updateSetting(countdownSetting.toObject()); - } - - async open() { - await this.render(true); - if ( - Object.keys( - game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns)[this.basePath].countdowns - ).length > 0 - ) { - this.minimize(); - } - } -} - -export class NarrativeCountdowns extends Countdowns { - constructor() { - super('narrative'); - } - - static DEFAULT_OPTIONS = { - id: 'narrative-countdowns' - }; -} - -export class EncounterCountdowns extends Countdowns { - constructor() { - super('encounter'); - } - - static DEFAULT_OPTIONS = { - id: 'encounter-countdowns' - }; -} - -export async function updateCountdowns(progressType) { - const countdownSetting = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); - const update = Object.keys(countdownSetting).reduce((update, typeKey) => { - return foundry.utils.mergeObject( - update, - Object.keys(countdownSetting[typeKey].countdowns).reduce((acc, countdownKey) => { - const countdown = countdownSetting[typeKey].countdowns[countdownKey]; - if (countdown.progress.current > 0 && countdown.progress.type.value === progressType) { - acc[`${typeKey}.countdowns.${countdownKey}.progress.current`] = countdown.progress.current - 1; + const countdownData = countdownSetting.toObject(); + await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns, { + ...countdownData, + countdowns: Object.keys(countdownData.countdowns).reduce((acc, key) => { + const countdown = foundry.utils.deepClone(countdownData.countdowns[key]); + if (updatedCountdowns.includes(key)) { + countdown.progress.current -= 1; } + acc[key] = countdown; return acc; }, {}) - ); - }, {}); + }); - await countdownSetting.updateSource(update); - await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns, countdownSetting); - - const data = { refreshType: RefreshType.Countdown }; - await game.socket.emit(`system.${CONFIG.DH.id}`, { - action: socketEvent.Refresh, - data - }); - Hooks.callAll(socketEvent.Refresh, data); + const data = { refreshType: RefreshType.Countdown }; + await game.socket.emit(`system.${CONFIG.DH.id}`, { + action: socketEvent.Refresh, + data + }); + Hooks.callAll(socketEvent.Refresh, data); + } } diff --git a/module/config/flagsConfig.mjs b/module/config/flagsConfig.mjs index 32088bc1..12ab3ee1 100644 --- a/module/config/flagsConfig.mjs +++ b/module/config/flagsConfig.mjs @@ -23,5 +23,6 @@ export const compendiumBrowserLite = { export const itemAttachmentSource = 'attachmentSource'; export const userFlags = { - welcomeMessage: 'welcome-message' + welcomeMessage: 'welcome-message', + countdownMode: 'countdown-mode' }; diff --git a/module/config/generalConfig.mjs b/module/config/generalConfig.mjs index 7afcbdea..900dcfbc 100644 --- a/module/config/generalConfig.mjs +++ b/module/config/generalConfig.mjs @@ -650,3 +650,30 @@ export const fearDisplay = { bar: { value: 'bar', label: 'DAGGERHEART.SETTINGS.Appearance.fearDisplay.bar' }, hide: { value: 'hide', label: 'DAGGERHEART.SETTINGS.Appearance.fearDisplay.hide' } }; + +export const basicOwnershiplevels = { + 0: { value: 0, label: 'OWNERSHIP.NONE' }, + 2: { value: 2, label: 'OWNERSHIP.OBSERVER' }, + 3: { value: 3, label: 'OWNERSHIP.OWNER' } +}; + +export const simpleOwnershiplevels = { + [-1]: { value: -1, label: 'OWNERSHIP.INHERIT' }, + ...basicOwnershiplevels +}; + +export const countdownBaseTypes = { + narrative: { + id: 'narrative', + name: 'DAGGERHEART.APPLICATIONS.Countdown.types.narrative' + }, + encounter: { + id: 'encounter', + name: 'DAGGERHEART.APPLICATIONS.Countdown.types.encounter' + } +}; + +export const countdownAppMode = { + textIcon: 'text-icon', + iconOnly: 'icon-only' +}; diff --git a/module/data/countdowns.mjs b/module/data/countdowns.mjs index 62036c38..6db4cbeb 100644 --- a/module/data/countdowns.mjs +++ b/module/data/countdowns.mjs @@ -1,25 +1,28 @@ -import { RefreshType, socketEvent } from '../systemRegistration/socket.mjs'; - export default class DhCountdowns extends foundry.abstract.DataModel { static defineSchema() { const fields = foundry.data.fields; return { + /* Outdated and unused. Needed for migration. Remove in next minor version. (1.3) */ narrative: new fields.EmbeddedDataField(DhCountdownData), - encounter: new fields.EmbeddedDataField(DhCountdownData) + encounter: new fields.EmbeddedDataField(DhCountdownData), + /**/ + countdowns: new fields.TypedObjectField(new fields.EmbeddedDataField(DhCountdown)), + defaultOwnership: new fields.NumberField({ + required: true, + choices: CONFIG.DH.GENERAL.basicOwnershiplevels, + initial: CONST.DOCUMENT_OWNERSHIP_LEVELS.OBSERVER + }) }; } - - static CountdownCategories = { narrative: 'narrative', combat: 'combat' }; } +/* Outdated and unused. Needed for migration. Remove in next minor version. (1.3) */ class DhCountdownData extends foundry.abstract.DataModel { - static LOCALIZATION_PREFIXES = ['DAGGERHEART.APPLICATIONS.Countdown']; // Nots ure why this won't work. Setting labels manually for now - static defineSchema() { const fields = foundry.data.fields; return { - countdowns: new fields.TypedObjectField(new fields.EmbeddedDataField(DhCountdown)), + countdowns: new fields.TypedObjectField(new fields.EmbeddedDataField(DhOldCountdown)), ownership: new fields.SchemaField({ default: new fields.NumberField({ required: true, @@ -56,7 +59,8 @@ class DhCountdownData extends foundry.abstract.DataModel { } } -class DhCountdown extends foundry.abstract.DataModel { +/* Outdated and unused. Needed for migration. Remove in next minor version. (1.3) */ +class DhOldCountdown extends foundry.abstract.DataModel { static defineSchema() { const fields = foundry.data.fields; return { @@ -129,17 +133,88 @@ class DhCountdown extends foundry.abstract.DataModel { } } -export const registerCountdownHooks = () => { - Hooks.on(socketEvent.Refresh, ({ refreshType, application }) => { - if (refreshType === RefreshType.Countdown) { - if (application) { - foundry.applications.instances.get(application)?.render(); - } else { - foundry.applications.instances.get('narrative-countdowns')?.render(); - foundry.applications.instances.get('encounter-countdowns')?.render(); - } +export class DhCountdown extends foundry.abstract.DataModel { + static defineSchema() { + const fields = foundry.data.fields; + return { + type: new fields.StringField({ + required: true, + choices: CONFIG.DH.GENERAL.countdownBaseTypes, + label: 'DAGGERHEART.GENERAL.type' + }), + name: new fields.StringField({ + required: true, + label: 'DAGGERHEART.APPLICATIONS.Countdown.FIELDS.countdowns.element.name.label' + }), + img: new fields.FilePathField({ + categories: ['IMAGE'], + base64: false, + initial: 'icons/magic/time/hourglass-yellow-green.webp' + }), + ownership: new fields.TypedObjectField( + new fields.NumberField({ + required: true, + choices: CONFIG.DH.GENERAL.simpleOwnershiplevels, + initial: CONST.DOCUMENT_OWNERSHIP_LEVELS.INHERIT + }) + ), + progress: new fields.SchemaField({ + current: new fields.NumberField({ + required: true, + integer: true, + initial: 1, + label: 'DAGGERHEART.APPLICATIONS.Countdown.FIELDS.countdowns.element.progress.current.label' + }), + max: new fields.NumberField({ + required: true, + integer: true, + initial: 1, + label: 'DAGGERHEART.APPLICATIONS.Countdown.FIELDS.countdowns.element.progress.max.label' + }), + type: new fields.StringField({ + required: true, + choices: CONFIG.DH.GENERAL.countdownTypes, + initial: CONFIG.DH.GENERAL.countdownTypes.custom.id, + label: 'DAGGERHEART.APPLICATIONS.Countdown.FIELDS.countdowns.element.type.label' + }) + }) + }; + } - return false; - } - }); -}; + static defaultCountdown(type, playerHidden) { + const ownership = playerHidden + ? game.users.reduce((acc, user) => { + if (!user.isGM) { + acc[user.id] = CONST.DOCUMENT_OWNERSHIP_LEVELS.NONE; + } + return acc; + }, {}) + : undefined; + + return { + type: type ?? CONFIG.DH.GENERAL.countdownBaseTypes.narrative.id, + name: game.i18n.localize('DAGGERHEART.APPLICATIONS.Countdown.newCountdown'), + img: 'icons/magic/time/hourglass-yellow-green.webp', + ownership: ownership, + progress: { + current: 1, + max: 1 + } + }; + } + + get playerOwnership() { + return Array.from(game.users).reduce((acc, user) => { + acc[user.id] = { + value: user.isGM + ? CONST.DOCUMENT_OWNERSHIP_LEVELS.OWNER + : this.ownership.players[user.id] && this.ownership.players[user.id].type !== -1 + ? this.ownership.players[user.id].type + : this.ownership.default, + isGM: user.isGM + }; + + return acc; + }, {}); + } +} diff --git a/module/systemRegistration/migrations.mjs b/module/systemRegistration/migrations.mjs index 015c19cb..e27fa3bd 100644 --- a/module/systemRegistration/migrations.mjs +++ b/module/systemRegistration/migrations.mjs @@ -97,6 +97,7 @@ export async function runMigrations() { } if (foundry.utils.isNewerVersion('1.2.0', lastMigrationVersion)) { + /* Migrate old action costs */ const lockedPacks = []; const compendiumItems = []; for (let pack of game.packs) { @@ -148,6 +149,36 @@ export async function runMigrations() { await pack.configure({ locked: true }); } + /* Migrate old countdown structure */ + const countdownSettings = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns); + const getCountdowns = (data, type) => { + return Object.keys(data.countdowns).reduce((acc, key) => { + const countdown = data.countdowns[key]; + acc[key] = { + ...countdown, + type: type, + ownership: Object.keys(countdown.ownership.players).reduce((acc, key) => { + acc[key] = countdown.ownership.players[key].type; + return acc; + }, {}), + progress: { + ...countdown.progress, + type: countdown.progress.type.value + } + }; + + return acc; + }, {}); + }; + + await countdownSettings.updateSource({ + countdowns: { + ...getCountdowns(countdownSettings.narrative, CONFIG.DH.GENERAL.countdownBaseTypes.narrative.id), + ...getCountdowns(countdownSettings.encounter, CONFIG.DH.GENERAL.countdownBaseTypes.encounter.id) + } + }); + await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns, countdownSettings); + lastMigrationVersion = '1.2.0'; } diff --git a/module/systemRegistration/socket.mjs b/module/systemRegistration/socket.mjs index f75c7b36..14b4cec1 100644 --- a/module/systemRegistration/socket.mjs +++ b/module/systemRegistration/socket.mjs @@ -25,6 +25,7 @@ export const GMUpdateEvent = { UpdateEffect: 'DhGMUpdateEffect', UpdateSetting: 'DhGMUpdateSetting', UpdateFear: 'DhGMUpdateFear', + UpdateCountdowns: 'DhGMUpdateCountdowns', UpdateSaveMessage: 'DhGMUpdateSaveMessage' }; @@ -60,6 +61,10 @@ export const registerSocketHooks = () => { ) ); break; + case GMUpdateEvent.UpdateCountdowns: + await game.settings.set(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Countdowns, data.update); + Hooks.callAll(socketEvent.Refresh, { refreshType: RefreshType.Countdown }); + break; case GMUpdateEvent.UpdateSaveMessage: const action = await fromUuid(data.update.action), message = game.messages.get(data.update.message); @@ -84,14 +89,15 @@ export const registerUserQueries = () => { CONFIG.queries.reactionRoll = game.system.api.fields.ActionFields.SaveField.rollSaveQuery; }; -export const emitAsGM = async (eventName, callback, update, uuid = null) => { +export const emitAsGM = async (eventName, callback, update, uuid = null, refresh = null) => { if (!game.user.isGM) { return await game.socket.emit(`system.${CONFIG.DH.id}`, { action: socketEvent.GMUpdate, data: { action: eventName, uuid, - update + update, + refresh } }); } else return callback(update); diff --git a/styles/less/ui/countdown/countdown-edit.less b/styles/less/ui/countdown/countdown-edit.less new file mode 100644 index 00000000..1460c6ef --- /dev/null +++ b/styles/less/ui/countdown/countdown-edit.less @@ -0,0 +1,142 @@ +@import '../../utils/colors.less'; +@import '../../utils/fonts.less'; + +.theme-light .daggerheart.application.dh-style.countdown-edit { + background-image: url('../assets/parchments/dh-parchment-light.png'); +} + +.daggerheart.application.dh-style.countdown-edit { + color: light-dark(@dark, @beige); + background-image: url('../assets/parchments/dh-parchment-dark.png'); + + .edit-container { + display: flex; + flex-direction: column; + gap: 8px; + + h2 { + text-align: center; + color: light-dark(@dark, @golden); + } + + .header-tools { + display: grid; + grid-template-columns: 2fr 1fr 144px; + gap: 8px; + + .hide-tools { + white-space: nowrap; + flex-wrap: nowrap; + display: flex; + align-items: center; + + input { + position: relative; + top: 2px; + } + } + + .header-main-button { + height: 32px; + flex: 1; + } + + .default-ownership-tools { + display: flex; + align-items: center; + gap: 8px; + + select { + flex: 1; + background: light-dark(@beige, @dark-blue); + } + } + } + + .edit-content { + display: flex; + flex-direction: column; + gap: 8px; + overflow-y: auto; + overflow-x: hidden; + max-height: 500px; + scrollbar-width: thin; + scrollbar-color: light-dark(@dark-blue, @golden) transparent; + + .countdown-edit-container { + display: grid; + grid-template-columns: 48px 1fr 64px; + align-items: center; + gap: 8px; + + img { + width: 52px; + height: 52px; + border-radius: 6px; + } + + .countdown-edit-text { + display: flex; + flex-direction: column; + justify-content: center; + gap: 8px; + + .countdown-edit-subtext { + display: flex; + gap: 10px; + + .countdown-edit-sub-tag { + padding: 3px 5px; + font-size: var(--font-size-12); + font: @font-body; + + background: light-dark(@dark-15, @beige-15); + border: 1px solid light-dark(@dark, @beige); + border-radius: 3px; + } + } + } + + .countdown-edit-tools { + display: flex; + gap: 8px; + + &.same-row { + margin-top: 17.5px; + } + + a { + font-size: 16px; + } + } + } + + .countdown-edit-subrow { + display: flex; + gap: 16px; + margin: 0 72px 0 56px; + } + + .countdown-edit-input { + flex: 1; + display: flex; + flex-direction: column; + align-items: flex-start; + gap: 2px; + + &.tiny { + flex: 0; + input { + min-width: 2.5rem; + } + } + + input, + select { + background: light-dark(@beige, @dark-blue); + color: light-dark(@dark, @beige); + } + } + } + } +} diff --git a/styles/less/ui/countdown/countdown.less b/styles/less/ui/countdown/countdown.less index 5e46989a..9fa42ec7 100644 --- a/styles/less/ui/countdown/countdown.less +++ b/styles/less/ui/countdown/countdown.less @@ -1,60 +1,130 @@ @import '../../utils/colors.less'; @import '../../utils/fonts.less'; -.daggerheart.dh-style.countdown { - fieldset { - align-items: center; - margin-top: 5px; - border-radius: 6px; - border-color: light-dark(@dark-blue, @golden); +.theme-dark { + .daggerheart.dh-style.countdowns { + background-image: url(../assets/parchments/dh-parchment-dark.png); - legend { - font-weight: bold; - color: light-dark(@dark-blue, @golden); - - a { - text-shadow: none; - } + .window-header { + background-image: url(../assets/parchments/dh-parchment-dark.png); + } + } +} + +.daggerheart.dh-style.countdowns { + z-index: var(--z-index-ui) !important; + border: 0; + border-radius: 4px; + box-shadow: none; + width: 300px; + top: 16px; + right: 64px; + transition: + right ease 250ms, + opacity var(--ui-fade-duration) ease, + opacity var(--ui-fade-duration); + + .window-title { + font-family: @font-body; + } + + &.expanded { + right: 364px; + } + + &.icon-only { + width: 180px; + min-width: 180px; + } + + .window-header { + cursor: default; + border-bottom: 0; + } + + .window-content { + padding-top: 4px; + padding-bottom: 16px; + overflow: auto; + max-height: 312px; + + .countdowns-container { + display: flex; + flex-direction: column; + gap: 8px; + + .countdown-container { + display: flex; + justify-content: space-between; + + &.icon-only { + gap: 8px; + + .countdown-main-container { + .countdown-content { + justify-content: center; + + .countdown-tools { + gap: 8px; + } + } + } + } + + .countdown-main-container { + display: flex; + align-items: center; + gap: 16px; + + img { + width: 44px; + height: 44px; + border-radius: 6px; + } + + .countdown-content { + display: flex; + flex-direction: column; + justify-content: space-between; + + .countdown-tools { + display: flex; + align-items: center; + gap: 16px; + + .progress-tag { + border: 1px solid; + border-radius: 4px; + padding: 2px 4px; + background-color: light-dark(@beige, @dark-blue); + } + } + } + } + + .countdown-access-container { + display: grid; + grid-template-columns: 1fr 1fr 1fr; + grid-auto-rows: min-content; + width: 38px; + gap: 4px; + + .countdown-access { + height: 10px; + width: 10px; + border-radius: 50%; + border: 1px solid light-dark(@dark-blue, @beige-80); + content: ''; + } + } + + .countdown-no-access-container { + width: 38px; + display: flex; + align-items: center; + justify-content: center; + } + } } } - - .minimized-view { - display: flex; - gap: 8px; - flex-wrap: wrap; - - .mini-countdown-container { - width: fit-content; - display: flex; - align-items: center; - gap: 8px; - border: 2px solid light-dark(@dark-blue, @golden); - border-radius: 6px; - padding: 0 4px 0 0; - background-image: url('../assets/parchments/dh-parchment-light.png'); - color: light-dark(@beige, @dark); - cursor: pointer; - - &.disabled { - cursor: initial; - } - - img { - width: 30px; - height: 30px; - border-radius: 6px 0 0 6px; - } - - .mini-countdown-name { - white-space: nowrap; - } - - .mini-countdown-value { - } - } - } - - .hidden { - display: none; - } } diff --git a/styles/less/ui/index.less b/styles/less/ui/index.less index 8b0c53f6..0a89afc3 100644 --- a/styles/less/ui/index.less +++ b/styles/less/ui/index.less @@ -13,6 +13,7 @@ @import './item-browser/item-browser.less'; @import './countdown/countdown.less'; +@import './countdown/countdown-edit.less'; @import './countdown/sheet.less'; @import './ownership-selection/ownership-selection.less'; diff --git a/styles/less/ui/ownership-selection/ownership-selection.less b/styles/less/ui/ownership-selection/ownership-selection.less index 56fddd4f..76ae0930 100644 --- a/styles/less/ui/ownership-selection/ownership-selection.less +++ b/styles/less/ui/ownership-selection/ownership-selection.less @@ -6,9 +6,15 @@ flex-direction: column; gap: 8px; + .ownership-list { + display: flex; + flex-direction: column; + gap: 10px; + margin-top: 10px; + } + .ownership-container { display: flex; - border: 2px solid light-dark(@dark-blue, @golden); border-radius: 6px; padding: 0 4px 0 0; align-items: center; @@ -17,12 +23,24 @@ img { height: 40px; width: 40px; - border-radius: 6px 0 0 6px; + border-radius: 50%; + } + + span { + flex: 3; } select { + flex: 1; margin: 4px 0; } } + + footer { + margin-top: 10px; + button { + height: 32px; + } + } } } diff --git a/styles/less/ui/sidebar/daggerheartMenu.less b/styles/less/ui/sidebar/daggerheartMenu.less index e975954c..80eda9a1 100644 --- a/styles/less/ui/sidebar/daggerheartMenu.less +++ b/styles/less/ui/sidebar/daggerheartMenu.less @@ -1,5 +1,17 @@ .tab.sidebar-tab.daggerheartMenu-sidebar { - padding: 0 4px; + padding: 4px; + + div[data-application-part] { + display: flex; + flex-direction: column; + gap: 8px; + } + + h2 { + margin-top: 8px; + text-align: center; + font-weight: bold; + } .menu-refresh-container { display: flex; diff --git a/templates/dialogs/ownershipSelection.hbs b/templates/dialogs/ownershipSelection.hbs index 43711c07..b16e5d75 100644 --- a/templates/dialogs/ownershipSelection.hbs +++ b/templates/dialogs/ownershipSelection.hbs @@ -2,20 +2,22 @@
- + {{selectOptions ownershipDefaultOptions selected=defaultOwnership labelAttr="label" valueAttr="value" localize=true }}
- {{#each ownership.players as |player id|}} -
- -
{{player.name}}
- -
- {{/each}} +
    + {{#each ownership as |player id|}} +
  • + + {{player.name}} + +
  • + {{/each}} +
diff --git a/templates/levelup/tabs/viewMode.hbs b/templates/levelup/tabs/viewMode.hbs index 12e7cbcd..b41623d7 100644 --- a/templates/levelup/tabs/viewMode.hbs +++ b/templates/levelup/tabs/viewMode.hbs @@ -2,7 +2,7 @@
{{#each this.tiers as |tier key|}}
- {{tier.name}} + {{localize tier.name}} {{#each tier.groups}}
diff --git a/templates/sidebar/daggerheart-menu/main.hbs b/templates/sidebar/daggerheart-menu/main.hbs index b00001eb..137f2e3d 100644 --- a/templates/sidebar/daggerheart-menu/main.hbs +++ b/templates/sidebar/daggerheart-menu/main.hbs @@ -1,4 +1,6 @@
+

{{localize "DAGGERHEART.APPLICATIONS.DaggerheartMenu.title"}}

+
{{localize "Refresh Features"}} @@ -19,4 +21,6 @@
+ +
diff --git a/templates/ui/combatTracker/combatTrackerHeader.hbs b/templates/ui/combatTracker/combatTrackerHeader.hbs index 9ecff9e6..fe7d33a0 100644 --- a/templates/ui/combatTracker/combatTrackerHeader.hbs +++ b/templates/ui/combatTracker/combatTrackerHeader.hbs @@ -67,7 +67,6 @@ {{!-- Combat Controls --}}
{{#if hasCombat}} -
+
+ + +
+ {{#if isGM}} +
+ + +
+ {{/if}} +
+ +
+ {{#each countdowns as | countdown id | }} +
+ + {{#unless countdown.editing}} +
+

{{countdown.name}}

+
+
{{localize "DAGGERHEART.APPLICATIONS.CountdownEdit.currentCountdownValue" value=countdown.progress.current}}
+
{{localize "DAGGERHEART.APPLICATIONS.CountdownEdit.currentCountdownMax" value=countdown.progress.max}}
+
{{countdown.typeName}}
+
{{countdown.progress.typeName}}
+
+
+ {{else}} +
+ + +
+ {{/unless}} +
+ + + +
+
+ {{#if countdown.editing}} +
+
+ + +
+
+ + +
+
+ + +
+
+ + +
+
+ {{/if}} + {{/each}} +
+
+
\ No newline at end of file diff --git a/templates/ui/countdowns.hbs b/templates/ui/countdowns.hbs index 11a112ae..122b36e6 100644 --- a/templates/ui/countdowns.hbs +++ b/templates/ui/countdowns.hbs @@ -1,45 +1,33 @@
- {{#if simple}} - - {{else}} -
-
- {{#if canCreate}}{{/if}} - {{#if isGM}}{{/if}} -
- -
- {{#each source.countdowns}} -
- - {{this.name}} - {{#if this.canEdit}}{{/if}} - {{#if @root.isGM}}{{/if}} - - - -
- -
- {{formGroup @root.countdownFields.name name=(concat @root.base ".countdowns." @key ".name") value=this.name localize=true disabled=(not this.canEdit)}} -
- {{formGroup @root.countdownFields.progress.fields.current name=(concat @root.base ".countdowns." @key ".progress.current") value=this.progress.current localize=true disabled=(not this.canEdit)}} - {{formGroup @root.countdownFields.progress.fields.max name=(concat @root.base ".countdowns." @key ".progress.max") value=this.progress.max localize=true disabled=(not this.canEdit)}} -
- {{formGroup @root.countdownFields.progress.fields.type.fields.value name=(concat @root.base ".countdowns." @key ".progress.type.value") value=this.progress.type.value localize=true localize=true disabled=(not this.canEdit)}} +
+ {{#each countdowns as | countdown id |}} +
+
+ +
+ {{#unless ../iconOnly}}{{/unless}} +
+ {{#if countdown.editable}}{{/if}} +
+ {{countdown.progress.current}}/{{countdown.progress.max}}
+ {{#if countdown.editable}}{{/if}}
-
- {{/each}} +
+
+ {{#if (and @root.isGM (not ../iconOnly))}} + {{#if (gt countdown.playerAccess.length 0)}} +
+ {{#each countdown.playerAccess as |player|}} +
+ {{/each}} +
+ {{/if}} + {{#if countdown.noPlayerAccess}} +
+ {{/if}} + {{/if}}
- - {{/if}} + {{/each}} + \ No newline at end of file From e2508501a5fb06a0e5c699117e50b65428fdd64c Mon Sep 17 00:00:00 2001 From: Nikhil Nagarajan Date: Wed, 29 Oct 2025 13:17:09 -0400 Subject: [PATCH 082/260] [PR] Compendium fixes and Typo checks - 26 Oct (#1233) * PR fixes and Typo checks - 26 Oct * removed dwarf tough skin action as it was unecessary --- ...ersary_Acid_Burrower_89yAh30vaNQOALlz.json | 60 +++- ...ary_Adult_Flickerfly_G7jiltRjgvVhZewm.json | 108 +++++-- ..._Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json | 10 +- ...ary_Arch_Necromancer_WPEOIGfclNJxWb87.json | 13 +- ...versary_Archer_Guard_JRhrrEg5UroURiAD.json | 9 +- ...sary_Archer_Squadron_0ts6CGd93lLqGZI5.json | 10 +- ...ry_Assassin_Poisoner_h5RuhzGL17dW5FBT.json | 9 +- ...adversary_Battle_Box_dgH3fW9FTYLaIDvS.json | 54 +++- .../adversary_Bear_71qKDLKO3CsrNkdy.json | 90 +++++- ...versary_Bladed_Guard_B4LZcGuBAHzyVdzy.json | 19 +- ...ersary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json | 10 +- .../adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json | 11 +- ...dversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json | 10 +- .../adversary_Conscript_99TqczuQipBmaB8i.json | 10 +- .../adversary_Construct_uOP5oT9QzXPlnf3p.json | 54 +++- .../adversary_Courtesan_ZxWaWPdzFIUPNC62.json | 10 +- .../adversary_Courtier_CBBuEXAlLKFMJdjg.json | 21 +- ...adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json | 12 +- .../adversary_Cult_Fang_tyBOpLfigAhI9bU3.json | 11 +- ...ersary_Cult_Initiate_zx99sOGTXicP4SSD.json | 10 +- ...ry_Deeproot_Defender_9x2xY9zwc3xzbXo5.json | 9 +- ...ary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json | 9 +- ...ary_Demon_of_Despair_kE4dfhqmIQpNd44e.json | 91 +++++- ...sary_Demon_of_Hubris_2VN3BftageoTTIzu.json | 12 +- ...ry_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json | 16 +- ...rsary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json | 11 +- ...y_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json | 89 +++++- .../adversary_Dire_Bat_tBWHW00epmMnkawe.json | 10 +- .../adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json | 23 +- .../adversary_Dryad_wR7cFKrHvRzbzhBT.json | 12 +- ...ersary_Electric_Eels_TLzY1nDw0Bu9Ud40.json | 10 +- ...sary_Elemental_Spark_P7h54ZePFPHpYwvB.json | 10 +- ...ersary_Elite_Soldier_bfhVWMBUh61b9J6n.json | 11 +- ...ry_Failed_Experiment_ChwwVqowFw8hJQwT.json | 10 +- ...y_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json | 10 +- ...sary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json | 10 +- ...rlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json | 61 +++- ..._Undefeated_Champion_RXkZTwBRi4dJ3JE5.json | 142 +++++++-- ...ry_Giant_Beastmaster_8VZIgU12cB3cvlyH.json | 9 +- ...ersary_Giant_Brawler_YnObCleGjPT7yqEc.json | 90 +++++- ...dversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json | 10 +- ...ary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json | 18 +- .../adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json | 10 +- ...ersary_Giant_Recruit_5s8wSvpyC5rxY5aD.json | 24 +- ...rsary_Giant_Scorpion_fmfntuJ8mHRCAktP.json | 90 +++++- ...dversary_Glass_Snake_8KWVLWXFhlY2kYx0.json | 11 +- .../adversary_Gorgon_8mJYMpbLTb8qIOrr.json | 133 ++++++++- ...ater_Earth_Elemental_dsfB3YhoL5SudvS2.json | 102 ++++++- ...ater_Water_Elemental_xIICT6tEdnA7dKDV.json | 12 +- ...adversary_Green_Ooze_SHXedd9zZPVfUgUa.json | 10 +- ...sary_Hallowed_Archer_kabueAo6BALApWqp.json | 10 +- ...ary_Hallowed_Soldier_VENwg7xEFcYObjmT.json | 11 +- .../adversary_Harrier_uRtghKE9mHlII4rs.json | 10 +- ...adversary_Head_Guard_mK3A5FTx6k8iPU3F.json | 100 ++++++- ...versary_Head_Vampire_i2UNbRvgyoSs07M6.json | 10 +- ...dversary_High_Seraph_r1mbfSSwKWdcFdAU.json | 55 +++- ...sary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json | 22 +- .../adversary_Hydra_MI126iMOOobQ1Obn.json | 20 +- ..._Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json | 9 +- ...y_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json | 9 +- ...ed_Knife_Kneebreaker_CBKixLH3yhivZZuL.json | 9 +- ..._Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json | 10 +- ...ged_Knife_Lieutenant_aTljstqteGoLpCBq.json | 101 ++++++- ..._Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json | 9 +- ..._Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json | 18 +- ..._Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json | 52 +++- ..._Knight_of_the_Realm_7ai2opemrclQe3VF.json | 10 +- .../adversary_Kraken_4nqv3ZwJGjnmic8j.json | 134 ++++++++- ...versary_Masked_Thief_niBpVU7yeo5ccskE.json | 9 +- ...sary_Master_Assassin_dNta0cUzr96xcFhf.json | 91 +++++- .../adversary_Merchant_Al3w2CgjfdT3p9ma.json | 9 +- ...rsary_Merchant_Baron_Vy02IhGhkJLuezu4.json | 10 +- ...inor_Chaos_Elemental_sRn4bqerfARvhgSV.json | 91 +++++- ...dversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json | 134 ++++++++- ...Minor_Fire_Elemental_DscWkNVoHak6P4hh.json | 125 +++++++- ...versary_Minor_Treant_G62k4oSkhkoXEs2D.json | 10 +- ...ary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json | 11 +- .../adversary_Monarch_yx0vK2yfNVZKWUUi.json | 11 +- ...ersary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json | 11 +- ...adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json | 269 +++++++++++++++++- ...rsary_Oracle_of_Doom_befIqd5IYKg6eUz2.json | 12 +- ...r_Realms_Abomination_A0SeeDzwjvqOsyof.json | 9 +- ...ter_Realms_Corrupter_ms6nuOl3NFkhPj1k.json | 9 +- ..._Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json | 10 +- ...atchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json | 77 ++++- ...ary_Perfected_Zombie_CP6iRfHdyFWniTHY.json | 10 +- ...dversary_Petty_Noble_wycLpvebWdUqRhpP.json | 11 +- ...rsary_Pirate_Captain_OROJbjsqagVh7ECV.json | 91 +++++- ...rsary_Pirate_Raiders_5YgEajn0wa4i85kC.json | 17 +- ...versary_Pirate_Tough_mhcVkVFrzIJ18FDm.json | 11 +- .../adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json | 10 +- ...ersary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json | 10 +- ...ersary_Royal_Advisor_EtLJiTsilPPZvLUX.json | 11 +- ...ersary_Secret_Keeper_sLAccjvCWfeedbpI.json | 12 +- .../adversary_Sellsword_bgreCaQ6ap2DVpCr.json | 10 +- ...ary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json | 9 +- .../adversary_Shark_YmVAkdNsyuXWTtYp.json | 10 +- .../adversary_Siren_BK4jwyXSRx7IOQiO.json | 10 +- ...sary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json | 9 +- ...sary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json | 10 +- ...sary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json | 10 +- ...ary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json | 9 +- ...sary_Spectral_Archer_5tCkhnBByUIN5UdG.json | 10 +- ...ary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json | 92 +++++- ...ry_Spectral_Guardian_UFVGl1osOsJTneLf.json | 11 +- ...adversary_Spellblade_ldbWEL7uZs84vyrR.json | 91 +++++- .../adversary_Spy_8zlynOhnVA59KpKT.json | 11 +- ...dversary_Stag_Knight_KGVwnLq85ywP9xvB.json | 11 +- ...dversary_Stonewraith_3aAS2Qm3R6cgaYfE.json | 97 ++++++- ...ersary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json | 9 +- ...rsary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json | 11 +- ...Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json | 10 +- ...rsary_Tangle_Bramble_XcAGOSmtCFLT1unN.json | 10 +- ...sary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json | 21 +- ...ersary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json | 9 +- ...rsary_Treant_Sapling_o63nS0k3wHu6EgKP.json | 10 +- .../adversary_Vampire_WWyUp6Mxl1S3KYUG.json | 10 +- ...ault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json | 10 +- ...lt_Guardian_Sentinel_FVgYb28fhxlVcGwA.json | 91 +++++- ...ault_Guardian_Turret_c5hGdvY5UnSjlHws.json | 11 +- ...Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json | 56 +++- ...agon__Molten_Scourge_eArAPuB38CNR0ZIM.json | 56 +++- ...n__Obsidian_Predator_ladm7wykhZczYzrQ.json | 56 +++- ...adversary_War_Wizard_noDdT0tsN6FXSmC8.json | 13 +- ...versary_Weaponmaster_ZNbQ2jg35LG4t9eH.json | 111 ++++++-- ...dversary_Young_Dryad_8yUj2Mzvnifhxegm.json | 91 +++++- ...ary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json | 140 +++++++-- ...ersary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json | 53 +++- ...dversary_Zombie_Pack_Nf0v43rtflV56V2T.json | 10 +- .../ancestry_Clank_ed8BoLR4SHOpeV00.json | 15 +- .../ancestry_Drakona_VLeOEqkLS0RbF0tB.json | 15 +- .../ancestry_Dwarf_pDt6fI6otv2E2odf.json | 15 +- .../ancestry_Elf_q2l6g3Ssa04K84GO.json | 15 +- .../ancestry_Faerie_XzJVbb5NT9k79ykR.json | 15 +- .../ancestry_Faun_HaYhe6WqoXW5EbRl.json | 15 +- .../ancestry_Firbolg_hzKmydI8sR3uk4CO.json | 15 +- .../ancestry_Fungril_J1hX7nBBc5jQiHli.json | 15 +- .../ancestry_Galapa_eZNG5Iv0yfbHs5CO.json | 15 +- .../ancestry_Giant_3U8CncG92a7ERIJ0.json | 15 +- .../ancestry_Goblin_EKPEdIz9lA9grPqH.json | 15 +- .../ancestry_Halfling_CtL2jDjvPOJxNJKm.json | 15 +- .../ancestry_Human_wtJ5V5qRppLQn61n.json | 15 +- .../ancestry_Infernis_hyxcuF2I0xcZSGkm.json | 15 +- .../ancestry_Katari_yyW0UM8srD9WuwW7.json | 15 +- .../ancestry_Orc_D1RbUsRV9HpTrPuF.json | 15 +- .../ancestry_Ribbet_HwOoBKXOL9Tf5j85.json | 15 +- .../ancestry_Simiah_2yMLxxn7CHEvmShj.json | 15 +- ...feature_Adaptability_BNofV1UC4ZbdFTkb.json | 18 +- .../feature_Amphibious_GVhmLouGq9GWCsN8.json | 15 +- ...feature_Caprine_Leap_nLL2zuDDDbbyxlrQ.json | 15 +- ...ure_Celestial_Trance_TfolXWFG2W2hx6sK.json | 23 +- .../feature_Charge_AA2CZlJSWW8GPhrR.json | 20 +- ...feature_Danger_Sense_AXqcoxnRoWBbbKpK.json | 18 +- ...ure_Death_Connection_WuwXH2r2uM9sDJtj.json | 18 +- ...feature_Dread_Visage_i92lYjDhVB0LyPid.json | 23 +- .../feature_Efficient_2xlqKOkDxWHbuj4t.json | 23 +- ...ure_Elemental_Breath_sRaE3CgkgjBF1UpV.json | 7 +- .../feature_Endurance_tXWEMdLXafUSZTbK.json | 23 +- .../feature_Fearless_IlWvn5kCqCBMuUJn.json | 18 +- ...ure_Feline_Instincts_lNgbbYnCKgrdvA85.json | 18 +- ...ture_Fungril_Network_9tmeXm623hl4Qnws.json | 17 +- ...feature_High_Stamina_HMXNJZ7ynzajR2KT.json | 15 +- ..._Increased_Fortitude_0RN0baBxh95GT1cm.json | 18 +- ...ure_Internal_Compass_e2Cu6exxtvfQzc1e.json | 15 +- .../feature_Kick_gpW19TfJk0WWFh1S.json | 41 ++- .../feature_Long_Tongue_oWbdlh51ajn1Q5kL.json | 20 +- .../feature_Luckbender_U6iFjZgLYawlOlQZ.json | 20 +- .../feature_Luckbringer_8O6SQQMxKWr430QA.json | 17 +- ...ture_Natural_Climber_soQvPL0MrTLLcc31.json | 15 +- .../feature_Nimble_3lNqft3LmOlEIEkw.json | 15 +- ...re_Purposeful_Design_g6I4tRUQNgL4vZ6H.json | 17 +- ...ture_Quick_Reactions_0NSPSuB8KSEYTJIP.json | 18 +- .../feature_Reach_WRs2jvwM0STmkWIW.json | 15 +- .../feature_Retract_UFR67BUOhNGLFyg9.json | 67 +++-- ...ure_Retracting_Claws_Zj69cAeb3NjIa8Hn.json | 17 +- .../feature_Scales_u8ZhV962rNmUlzkp.json | 25 +- .../feature_Shell_A6a87OWA3tx16g9V.json | 15 +- .../feature_Sturdy_60o3cKUZzxO9EDQF.json | 15 +- .../feature_Surefooted_YsJticxv8OFndd4D.json | 15 +- .../feature_Thick_Skin_S0Ww7pYOSREt8qKg.json | 23 +- .../feature_Tusks_YhxD1ujZpftPu19w.json | 70 +++-- .../feature_Unshakeable_G5pE8FW94V1W9jJx.json | 15 +- .../feature_Wings_WquAjoOcso8lwySW.json | 22 +- ...eastform_Agile_Scout_a9UoCwtrbgKk02mK.json | 15 +- ...orm_Aquatic_Predator_ItBVeCl2u5uetgy7.json | 15 +- ...stform_Aquatic_Scout_qqzdFCxyYupWZK23.json | 15 +- ...tform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json | 19 +- ...m_Epic_Aquatic_Beast_wT4xbF99I55yjKZV.json | 15 +- ...tform_Great_Predator_afbMt4Ld6nY3mw0N.json | 15 +- ...m_Great_Winged_Beast_b4BMnTbJ3iPPidSb.json | 15 +- ...orm_Household_Friend_iDmOtiHJJ80AIAVT.json | 15 +- ...form_Legendary_Beast_mqP6z4Wg4K3oDAom.json | 15 +- ...orm_Legendary_Hybrid_rRUtgcUjimlpPhnn.json | 15 +- ...orm_Massive_Behemoth_qjwMzPn33aKZACkv.json | 15 +- ...stform_Mighty_Lizard_94tvcC3D5Kp4lzuN.json | 15 +- ...tform_Mighty_Strider_zRLjqKx4Rn2TjivL.json | 15 +- ...Mythic_Aerial_Hunter_jV6EuEacyQlHW4SN.json | 15 +- ...astform_Mythic_Beast_kObobka52JdpWBSu.json | 15 +- ...stform_Mythic_Hybrid_WAbxCf2An8qmxyJ1.json | 15 +- ...stform_Nimble_Grazer_CItO8yX6amQaqyk7.json | 15 +- ...stform_Pack_Predator_YLisKYYhAGca50WM.json | 15 +- ...rm_Pouncing_Predator_33oFSZ1PwFqInHPe.json | 15 +- ...tform_Powerful_Beast_m8BVTuJI1wCvzTcf.json | 21 +- ...rm_Stalking_Arachnid_A4TVRY0D5r9EiVwA.json | 15 +- ...orm_Striking_Serpent_1XrZWGDttBAAUxR1.json | 15 +- ...form_Terrible_Lizard_5BABxRe2XVrYTj8N.json | 15 +- ...astform_Winged_Beast_mZ4Wlqtss2FlNNvL.json | 15 +- .../feature_Agile_xLS5YT1B6yeCiNTg.json | 16 +- .../feature_Aquatic_kQWWx9P3fCyGSVOI.json | 15 +- ...eature_Armored_Shell_nDQZdIF2epKlhauX.json | 20 +- ...ture_Bird_s_Eye_View_FNKQlWQcArSorMPK.json | 15 +- .../feature_Cannonball_jp5KpPRBFBOIs46Q.json | 16 +- .../feature_Carrier_EVOJTskJYf4rpuga.json | 15 +- .../feature_Companion_jhWSC5bNZyYUAA5Q.json | 15 +- ...eature_Deadly_Raptor_QQtQ77tos8ijTHag.json | 15 +- .../feature_Demolish_DfBXO8jTchwFG8dZ.json | 16 +- ..._Devastating_Strikes_HJbQcKWcFZ9NoFxs.json | 16 +- ...feature_Elusive_Prey_a7Qvmm14nx9BCysA.json | 16 +- .../feature_Fleet_GhHsSHOa509cwCvr.json | 16 +- .../feature_Fragile_QFg1hNCEoKVDd9Zo.json | 15 +- ...ture_Hobbling_Strike_8u0HkK3WgtU9lWYs.json | 16 +- ...feature_Hollow_Bones_xVgmXhj2YgeqS1KK.json | 15 +- ...ature_Massive_Stride_9QkZSeuEKgXtlpHc.json | 15 +- ...feature_Ocean_Master_tGDdEH40wyOCsFmH.json | 15 +- ...feature_Pack_Hunting_d3q8lfeiEMyTjusT.json | 15 +- ...ure_Physical_Defense_StabkQ3BzWRZa8Tz.json | 15 +- .../feature_Rampage_8upqfcZvi7b5hRLE.json | 80 +++++- ...ture_Snapping_Strike_Ky3rZD3sJMXYZOBC.json | 16 +- .../feature_Takedown_0ey4kM9ssj2otHvb.json | 33 ++- .../feature_Thick_Hide_ZYbdXaWVj2zdcmaK.json | 15 +- .../feature_Trample_A0lgd6eVEfX6oqSB.json | 16 +- .../feature_Undaunted_ODudjX88Te4vDP57.json | 15 +- .../feature_Unyielding_vEAQ4cfsoPmOv2Gg.json | 15 +- ...eature_Venomous_Bite_2KlTnfzO03vneVS8.json | 15 +- ...ture_Venomous_Strike_uW3853pViM9VAfHb.json | 15 +- ...feature_Vicious_Maul_jYUBi7yLHap5ljpa.json | 16 +- ...feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json | 16 +- .../feature_Webslinger_D73fS1iM4SZPFimu.json | 15 +- .../classes/class_Bard_vegl3bFOq3pcFTWT.json | 7 +- .../classes/class_Druid_ZNwUTCyGCEcidZFv.json | 7 +- .../class_Guardian_nRAyoC0fOzXPDa4z.json | 7 +- .../class_Ranger_BTyfve69LKqoOi9S.json | 7 +- .../classes/class_Rogue_CvHlkHZfpMiCz5uT.json | 7 +- .../class_Seraph_5ZnlJ5bEoyOTkUJv.json | 15 +- .../class_Sorcerer_DchOzHcWIJE9FKcR.json | 15 +- .../class_Warrior_xCUWwJz4WSthvLfy.json | 7 +- .../class_Wizard_5LwX4m8ziY3F1ZGC.json | 7 +- ...feature_Arcane_Sense_CHK32dfCTTyuxV1A.json | 15 +- ...ttack_Of_Opportunity_3hNVqD1c0VIw2Nj5.json | 15 +- .../feature_Beastform_P1K0jcnH2RiS6TLd.json | 16 +- ...re_Channel_Raw_Power_P02cbN50LIoD662z.json | 16 +- .../feature_Cloaked_5IT8wYa0m1EFw8Zp.json | 15 +- ...ture_Combat_Training_eoSmuAJmgHUyULtp.json | 15 +- .../feature_Evolution_6rlxhrRwFaVgq9fe.json | 16 +- ...ature_Frontline_Tank_YS1g7YdWwOaS629x.json | 20 +- ...eature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json | 20 +- ...feature_Life_Support_lSlvSUHbOoX36q2j.json | 16 +- ...feature_Make_a_Scene_N9E5skDDK2VgvohR.json | 16 +- ...ature_Minor_Illusion_cshTYdtz9yoXYYB3.json | 15 +- .../feature_No_Mercy_njj2C3tMDeCHHOoh.json | 20 +- ...eature_Not_This_Time_h3VE0jhcM5xHKBs4.json | 16 +- .../feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json | 13 +- ...ure_Prestidigitation_SG2uw8h5YuwDviCn.json | 15 +- .../feature_Rally_PydiMnNCKpd44SGS.json | 15 +- ...ture_Rally__Level_5__TVeEyqmPPiRa2r3i.json | 15 +- ...ature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json | 70 ++++- ...eature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json | 26 +- ...feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json | 45 +-- ...ure_Strange_Patterns_6YsfFjmCGuFYVhT4.json | 15 +- .../feature_Unstoppable_PnD2UCgzIlwX6cY3.json | 15 +- ...ature_Volatile_Magic_ieiQlD0joWSqt53D.json | 16 +- .../feature_Wildtouch_fqSdfUYUK9QUcVE4.json | 15 +- .../community_Highborne_DVw2mOCHB8i0XeBz.json | 15 +- .../community_Loreborne_YsvlyqYoi8QQ8kwm.json | 15 +- ...community_Orderborne_TY2TejenASXtS484.json | 15 +- ...community_Ridgeborne_WHLA4qrdszXQHOuo.json | 15 +- .../community_Seaborne_o5AA5J05N7EvH1rN.json | 15 +- .../community_Slyborne_rGwCPMqZtky7SE6d.json | 15 +- ...community_Underborne_eX0I1ZNMyD3nfaL1.json | 15 +- ...ommunity_Wanderborne_82mDY2EIBfLkNwQj.json | 15 +- .../community_Wildborne_CRJ5pzJj4FjCtIlx.json | 15 +- .../feature_Dedicated_7aXWdH3gzaYREK0X.json | 7 +- ...eature_Know_the_Tide_07x6Qe6qMzDw2xN4.json | 15 +- .../feature_Lightfoot_TQ1AIQjndC4mYmmU.json | 15 +- ...ure_Low_Light_Living_aMla3xQuCHEwORGD.json | 15 +- ...feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json | 16 +- .../feature_Privilege_C7NR6qRatawZusmg.json | 15 +- .../feature_Scoundrel_ZmEuBdL0JrvuA8le.json | 15 +- .../feature_Steady_DYmmr5CknLtHnwuj.json | 15 +- .../feature_Well_Read_JBZJmywisJg5X3tH.json | 15 +- ...ard_A_Soldier_s_Bond_Y08dLFuPXsgeRrHi.json | 13 +- ...nCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json | 14 +- ...nCard_Arcana_Touched_5PvMQKCjrgSxzstn.json | 19 +- ...rd_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json | 14 +- .../domainCard_Armorer_cy8GjBPGc9w9RaGO.json | 13 +- ...rd_Astral_Projection_YNOCNmZ96sCp9NEr.json | 14 +- .../domainCard_Banish_AIbHfryMA2Rvs1ut.json | 13 +- ...omainCard_Bare_Bones_l5D9kq901JDESaXw.json | 15 +- ...omainCard_Battle_Cry_Ef1JsUG50LIoKx2F.json | 13 +- ...Card_Battle_Hardened_NeEOghgfyDUBTwBG.json | 13 +- ...nCard_Battle_Monster_P0ezScyQ5t8ruByf.json | 14 +- ...inCard_Blade_Touched_Gb5bqpFSBiuBxUix.json | 15 +- ...domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json | 14 +- ...mainCard_Body_Basher_aQz8jKkCd8M9aKMA.json | 15 +- ...inCard_Bold_Presence_tdsL00yTSLNgZWs6.json | 26 +- ...mainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json | 14 +- ...ainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json | 14 +- ...mainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json | 14 +- ...inCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json | 14 +- ...inCard_Book_of_Grynn_R0LNheiZycZlZzV3.json | 14 +- ...inCard_Book_of_Homet_gFMx08ogQ8hS2Obi.json | 15 +- ...nCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json | 17 +- ...nCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json | 15 +- ...inCard_Book_of_Norai_WtwSWXTRZa7QVvmo.json | 13 +- ...inCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json | 17 +- ...inCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json | 18 +- ...inCard_Book_of_Tyfar_1VXzwRbvbBj5bd5V.json | 13 +- ...nCard_Book_of_Vagras_aknDDYtN7EObv94t.json | 14 +- ...inCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json | 14 +- ...nCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json | 16 +- .../domainCard_Boost_VKAHS6eWz28ukcDs.json | 14 +- .../domainCard_Brace_QXs4vssSqNGQu5b8.json | 15 +- ...inCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json | 16 +- ...Card_Chain_Lightning_0kAVO6rordCfZqYP.json | 14 +- ...Card_Champion_s_Edge_rnejRbUQsNGX1GMC.json | 16 +- ...domainCard_Chokehold_R5GYUalYXLLFRlNl.json | 15 +- ...ainCard_Cinder_Grasp_5EP2Lgf7ojfrc0Is.json | 13 +- ...nCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json | 18 +- ...inCard_Codex_Touched_7Pu83ABdMukTxu3e.json | 14 +- ...nCard_Confusing_Aura_R8NDiJXJWmC48WSr.json | 14 +- ...inCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json | 18 +- ...Card_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json | 16 +- .../domainCard_Copycat_3A7LZ1xmDEMGa165.json | 13 +- ...Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json | 16 +- ...ainCard_Counterspell_6dhqo1kzGxejCjHa.json | 13 +- ...Critical_Inspiration_ABp9pUfBS69NomTD.json | 13 +- ...Card_Cruel_Precision_bap1eCWryPNowbyo.json | 15 +- ...inCard_Dark_Whispers_yL2qrSWmTwXVOySH.json | 14 +- ...ainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json | 43 +-- ...omainCard_Death_Grip_x0FVGE1YbfXalJiw.json | 13 +- .../domainCard_Deathrun_xFOSn8IVVNizgHFq.json | 14 +- ...inCard_Deft_Deceiver_38znCh6kHTkaPwYi.json | 14 +- ...nCard_Deft_Maneuvers_dc4rAXlv95srZUct.json | 14 +- ..._Disintegration_Wave_kja5qvh4rdeDBB96.json | 15 +- ...omainCard_Divination_K8oFepK24UVsAX8B.json | 14 +- ...omainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json | 25 +- .../domainCard_Eclipse_62Sj67PdPFzwWVe3.json | 13 +- .../domainCard_Encore_klahWDFwihqqEhXP.json | 13 +- ...ard_Endless_Charisma_tNzFNlVHghloKsFi.json | 14 +- ...domainCard_Enrapture_a8lFiKX1o8T924ze.json | 14 +- ...mainCard_Falling_Sky_hZJp9mdkMnqKDROe.json | 16 +- ...rd_Fane_of_the_Wilds_F2m9wvZ3v5c3yCtv.json | 13 +- .../domainCard_Ferocity_jSQsSP61CX4MhSN7.json | 13 +- ...mainCard_Final_Words_Nbw6Jnh1vRZzwHQI.json | 13 +- .../domainCard_Flight_54GUjNuBEy7xdzMz.json | 19 +- ...ainCard_Floating_Eye_wOQLu7nLMQ7v6Ogw.json | 13 +- .../domainCard_Forager_06UapZuaA5S6fAKl.json | 13 +- ...Card_Force_of_Nature_LzVpMkD5I4QeaIHf.json | 19 +- ...inCard_Forceful_Push_z8FFPhDh2SdFkFfS.json | 16 +- ...nCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json | 16 +- ...Card_Fortified_Armor_oVa49lI107eZILZr.json | 15 +- .../domainCard_Frenzy_MMl7abdGRLl7TJLO.json | 17 +- ...omainCard_Full_Surge_SgvjJfMyubZowPxS.json | 26 +- ...mainCard_Get_Back_Up_BFWN2cObMdlk9uVz.json | 15 +- ...nCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json | 16 +- ...inCard_Glancing_Blow_nCNCqSH7UgW4O3To.json | 14 +- ...d_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json | 14 +- ...ainCard_Goad_Them_On_HufF5KzuNfEb9RTi.json | 13 +- ...nCard_Gore_and_Glory_3zvjgZ5Od343wHzx.json | 13 +- ...inCard_Grace_Touched_KAuNb51AwhD8KEXk.json | 14 +- ...ainCard_Ground_Pound_WnGldYhJPDhx8v9X.json | 14 +- ...inCard_Healing_Field_GlRm1Dxlc0Z1b04o.json | 38 ++- ...inCard_Healing_Hands_WTlhnQMajc1r8i50.json | 17 +- ...nCard_Healing_Strike_XtSc0jIJLOoMTMYS.json | 14 +- ...inCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json | 34 ++- .../domainCard_Hush_gwmYasmfgXZ7tFS6.json | 14 +- ...ard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json | 15 +- ...ard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json | 16 +- ...Card_I_See_It_Coming_Kp6RejHGimnuoBom.json | 14 +- ...omainCard_Inevitable_XTT8c8uJ4D7fvtbL.json | 15 +- ..._Inspirational_Words_cWu1o82ZF7GvnbXc.json | 38 ++- ...ainCard_Invigoration_X8OfkEoI5gLTRf1B.json | 14 +- ...ainCard_Invisibility_KHkzA4Zrw8EWN1CH.json | 14 +- ...nCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json | 15 +- ...Card_Lead_by_Example_YWCRplmtwpCjpq5i.json | 16 +- ...omainCard_Lean_on_Me_BdePs1ZWpZTZvY1Z.json | 13 +- ...domainCard_Life_Ward_OszbCj0jTqq2ADx9.json | 14 +- ...inCard_Manifest_Wall_TtGOtWkbr23VhHfH.json | 14 +- ...inCard_Mass_Disguise_dT95m0Jam8sWbeuC.json | 13 +- ...nCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json | 14 +- ..._Master_of_the_Craft_yAGTwXHUC3qxpTeK.json | 15 +- ...inCard_Mending_Touch_TGjR4vJVNbQRV8zr.json | 35 +-- ...Card_Midnight_Spirit_FXLsB3QbQvTtqX5B.json | 15 +- ...ard_Midnight_Touched_uSyGKVxOJcnp28po.json | 14 +- ...ard_Natural_Familiar_Tag303LoRNC5zGgl.json | 15 +- ...Card_Nature_s_Tongue_atWLorlCOxcrq8WB.json | 14 +- ...nCard_Never_Upstaged_McdncxmO9K1YNP7Y.json | 77 ++--- ...ainCard_Night_Terror_zcldCuqOg3dphUVI.json | 22 +- ...Card_Not_Good_Enough_xheQZOIYp0ERQhT9.json | 15 +- ...domainCard_Notorious_IqxzvvjZiYbgx21A.json | 14 +- ...ainCard_On_the_Brink_zbxPl81kbWEegKQN.json | 15 +- ...domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json | 14 +- ...rd_Overwhelming_Aura_iEBLySZD9z8CLdz7.json | 18 +- ...Card_Phantom_Retreat_0vdpIn06ifF3xxqZ.json | 15 +- ...inCard_Pick_and_Pull_HdgZUfWd7Hyj7nBW.json | 15 +- ...nCard_Plant_Dominion_9a6xP5pxhVvdugk9.json | 13 +- ...mainCard_Premonition_aC43NiFQLpOADyjO.json | 19 +- ...d_Preservation_Blast_1p1cOmbnRd5CoKBp.json | 13 +- .../domainCard_Rage_Up_GRL0cvs96vrTDckZ.json | 29 +- ...nCard_Rain_of_Blades_Ucenef6JpjQxwXni.json | 16 +- ...inCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json | 14 +- ...Card_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json | 14 +- ...mainCard_Reassurance_iYNVTB7uAD1FTCZu.json | 13 +- .../domainCard_Reckless_2ooUo2yoilGifY81.json | 14 +- .../domainCard_Recovery_gsiQFT6q3WOgqerJ.json | 13 +- .../domainCard_Redirect_faU0XkJCbar69PiN.json | 14 +- ...Rejuvenation_Barrier_HtWx5IIemCoorMj2.json | 13 +- ...mainCard_Restoration_wUQFsRtww18naYaq.json | 31 +- ...ainCard_Resurrection_z30ciOwQI7g3tHla.json | 13 +- ...mainCard_Rift_Walker_vd5STqX29RpYbGxa.json | 13 +- .../domainCard_Rise_Up_oDIZoC4l19Nli0Fj.json | 13 +- ...nCard_Rousing_Strike_pcbYD33rBBdAo5f9.json | 13 +- ...domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json | 12 +- ...omainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json | 14 +- ...ainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json | 31 +- ...nCard_Salvation_Beam_4uAFGp3LxiC07woC.json | 18 +- .../domainCard_Scramble_5bBU9jWHOuOY12lR.json | 13 +- ...mainCard_Second_Wind_ffPbSEvLuFrFsMxl.json | 25 +- ...d_Sensory_Projection_gZOMzskSOfeiXn54.json | 13 +- ...omainCard_Shadowbind_kguhWlidhxe2GbT0.json | 13 +- ...ainCard_Shadowhunter_A0XzD6MmBXYdk7Ps.json | 15 +- ...nCard_Shape_Material_db4xV3YErHRslbVE.json | 14 +- ...ard_Share_the_Burden_8nRle10pw1HO8QVu.json | 13 +- ...mainCard_Shield_Aura_rfIv6lln40Fh6EIl.json | 14 +- ...ainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json | 14 +- ...Sigil_of_Retribution_RiuN0lMlfoTAhLJz.json | 13 +- ...nCard_Signature_Move_LWRkhNY968Cu2Zl5.json | 15 +- .../domainCard_Smite_U1uWJE94HZVudujz.json | 18 +- ...Card_Soothing_Speech_QED2PDYePOSTbLtC.json | 13 +- ..._Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json | 18 +- ...mainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json | 22 +- ...ard_Splendor_Touched_JT5dM3gVL6chDBYU.json | 15 +- ...d_Splintering_Strike_TYKfM3H9vBXyWiH4.json | 14 +- ...rd_Stealth_Expertise_NIUhmuQGwbb3UClZ.json | 14 +- ...d_Strategic_Approach_5b1awkgTmMp3FVrm.json | 19 +- ...rd_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json | 16 +- ...ainCard_Support_Tank_stId5syX7YpP2JGz.json | 14 +- ...omainCard_Swift_Step_H6TqCJBaa1eWEQ1z.json | 13 +- ...domainCard_Tactician_WChWEH36lUpXAC0K.json | 15 +- ...mainCard_Telekinesis_FgzBppvLjXr0UbUI.json | 13 +- .../domainCard_Teleport_HnPwVrWblYa9hwSt.json | 13 +- ...ainCard_Tell_No_Lies_HTv9QEPS466WsstP.json | 13 +- .../domainCard_Tempest_X7YaZgFieBlqaPdZ.json | 13 +- ...omainCard_Thorn_Skin_oUipGK84E2KjoKqh.json | 25 +- ...nCard_Thought_Delver_B4choj481tqajWb9.json | 14 +- ...rd_Through_Your_Eyes_7b0mzV5QMPjVPT4o.json | 13 +- ...nCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json | 32 ++- ...d_Transcendent_Union_kVkoCLBXLAIifqpz.json | 14 +- ...ainCard_Troublemaker_JrdZedm1BFKeV7Yb.json | 13 +- ...inCard_Twilight_Toll_SDjjV61TC1NceV1m.json | 20 +- ...mainCard_Unbreakable_CUIQmrPjf9VCHmwJ.json | 13 +- ...ard_Uncanny_Disguise_TV56wSysbU5xAlOa.json | 26 +- ...inCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json | 24 +- ...mainCard_Untouchable_9QElncQUDSakuSdR.json | 15 +- ...ard_Unyielding_Armor_s3zRsOMeUkuDwgd8.json | 15 +- ...inCard_Valor_Touched_k1AtYd3lSchIymBr.json | 13 +- ...Card_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json | 16 +- ...inCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json | 17 +- ...rd_Versatile_Fighter_wQ53ImDswEHv5SGQ.json | 14 +- ...ard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json | 14 +- .../domainCard_Vitality_sWUlSPOJEaXyQLCj.json | 29 +- ...Card_Voice_of_Reason_t3RRGH6mMYYJJCcF.json | 15 +- ...domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json | 14 +- ...domainCard_Whirlwind_anO0arioUy7I5zBg.json | 14 +- ...inCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json | 14 +- ...omainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json | 14 +- ...ard_Words_of_Discord_ZjAdi1FSNCDDHI3X.json | 13 +- .../domainCard_Wrangle_9DwSxHoUwl8Kxj3n.json | 13 +- ...d_Zone_of_Protection_lOZaRb4fCVgQsWB5.json | 15 +- .../folders_Splendor_TL1TutmbeCVJ06nR.json | 8 +- .../folders_Valor_yPVeShe47ETIqs9q.json | 8 +- ...ment_Abandoned_Grove_pGEdzdLkqYtBhxnG.json | 19 +- ...environment_Ambushed_uGEdNYERCTJBEjc5.json | 19 +- ...nvironment_Ambushers_uXZpebPR77YQ1oXI.json | 20 +- ...g_Heart_of_the_Woods_oY69NN4rYxoRE4hl.json | 19 +- ...Bustling_Marketplace_HZKA7hkej7JJY503.json | 19 +- ...ronment_Castle_Siege_1eZ32Esq7rfZOjlu.json | 19 +- ...ironment_Chaos_Realm_2Z1mKc65LxNk2PqR.json | 21 +- ...ent_Cliffside_Ascent_LPpfdlNKqiZIl04w.json | 20 +- ...ironment_Cult_Ritual_QAXXiOKBDmCTauHD.json | 19 +- ...nt_Divine_Usurpation_4DLYez7VbMCFDAuZ.json | 21 +- ...ment_Hallowed_Temple_dsA6j69AnaJhUyqH.json | 20 +- ...ronment_Haunted_City_OzYbizKraK92FDiI.json | 19 +- ...nment_Imperial_Court_jr1xAoXzVwVblzxI.json | 21 +- ...ronment_Local_Tavern_cM4X81DOyvxNIi52.json | 19 +- ...onment_Mountain_Pass_acMu9wJrMZZzLSTJ.json | 25 +- ...ecromancer_s_Ossuary_h3KyRL7AshhLAmcH.json | 20 +- ...ronment_Outpost_Town_YezryR32uo39xRxW.json | 20 +- ...nment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json | 20 +- ...ronment_Raging_River_t4cdqTfzcqP3H1vJ.json | 21 +- ...nced_Chainmail_Armor_LzLOJ9EVaHWAjoq9.json | 13 +- ...ced_Full_Plate_Armor_crIbCb9NZ4K0VpoU.json | 13 +- ...anced_Gambeson_Armor_epkAmlZVk7HOfUUT.json | 13 +- ...vanced_Leather_Armor_itSOp2GCyem0f7oM.json | 13 +- ..._Bellamoi_Fine_Armor_WuoVwZA53XRAIt6d.json | 13 +- ...rmor_Bladefare_Armor_mNN6pvcsS10ChrWF.json | 13 +- ...rmor_Chainmail_Armor_haULhuEg37zUUvhb.json | 13 +- ...mor_Channeling_Armor_vMJxEWz1srfwMsoj.json | 13 +- ...or_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json | 14 +- ...or_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json | 20 +- ...Elundrian_Chain_Mail_Q6LxmtFetDDkoZVZ.json | 13 +- ...mor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json | 11 +- ...Full_Fortified_Armor_7emTSt6nhZuTlvt5.json | 13 +- ...mor_Full_Plate_Armor_UdUJNa31WxFW2noa.json | 13 +- ...armor_Gambeson_Armor_yJFp1bfpecDcStVK.json | 13 +- ...mor_Harrowbone_Armor_dvyQeUVRLc9y6rnt.json | 13 +- ...oved_Chainmail_Armor_K5WkjS0NGqHYmhU3.json | 13 +- ...ved_Full_Plate_Armor_9f7RozpPTqrzJS1m.json | 13 +- ...roved_Gambeson_Armor_jphnMZjnS2FkOH3s.json | 13 +- ...proved_Leather_Armor_t91M61pSCMKStTNt.json | 13 +- ...ee_Breastplate_Armor_tzZntboNtHL5C6VM.json | 13 +- .../armor_Leather_Armor_nibfdNtp2PtxvbVz.json | 13 +- ...dary_Chainmail_Armor_EsIN5OLKe9ZYFNXZ.json | 13 +- ...ary_Full_Plate_Armor_SXWjUR2aUR6bYvdl.json | 13 +- ...ndary_Gambeson_Armor_c6tMXz4rPf9ioQrf.json | 13 +- ...endary_Leather_Armor_Tptgl5WOj76TyFn7.json | 13 +- ...armor_Monett_s_Cloak_AQzU2RsqS5V5bd1v.json | 13 +- ...armor_Rosewild_Armor_tN8kAeBvNKM3EBFo.json | 13 +- ...nes_of_Fortification_P4qAEDJUoNLgVRsA.json | 14 +- ...netan_Floating_Armor_tHlBUDQC24YMZqd6.json | 14 +- ...mor_Savior_Chainmail_8X16lJQ3xltTwynm.json | 13 +- ...r_Spiked_Plate_Armor_QjwsIhXKqnlvRBMv.json | 13 +- ...mor_Tyris_Soft_Armor_PSW3BxCGmtLeWOxM.json | 13 +- ...r_Veritas_Opal_Armor_OvzgUTYy2RCN85vV.json | 13 +- ...consumable_Acidpaste_cfVFmS8vT9dbq9s1.json | 27 +- ...mable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json | 31 +- ...umable_Attune_Potion_JGD3M9hBHtVAA8XP.json | 29 +- ...sumable_Blinding_Orb_eAXHdzA5qNPldOpn.json | 27 +- ...e_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json | 31 +- ...mable_Bolster_Potion_FOPQNqXbiVO0ilYL.json | 29 +- ...umable_Bonding_Honey_PfQvqopXgvroBklL.json | 27 +- ...nsumable_Bridge_Seed_RrIasiMCt6mqVTps.json | 27 +- ...sumable_Channelstone_IKMVQ6VwtapwoUim.json | 27 +- ...sumable_Charm_Potion_CVBbFfOY75YwyQsp.json | 27 +- ...e_Circle_of_the_Void_elsyP6VhHw1JjGSl.json | 23 +- ...mable_Control_Potion_eeBhZSGLjuNZuJuI.json | 27 +- ...consumable_Death_Tea_xDnJeF1grkmKck8Q.json | 31 +- ...able_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json | 31 +- ...able_Dripfang_Poison_eU8VpbWB2NHIL47n.json | 27 +- ...ble_Enlighten_Potion_aWHSO2AqDufi7nL4.json | 27 +- ...mable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json | 27 +- ...nsumable_Featherbone_DpxEMpwfasEBpORU.json | 85 +++++- ...onsumable_Gill_Salve_Nvbb9mze6o5D0AEg.json | 85 +++++- ...e_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json | 27 +- ...mable_Growing_Potion_fl2f3ees8RFMze9t.json | 27 +- ...umable_Health_Potion_Aruc2NLutWuVIjP1.json | 27 +- ...omet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json | 27 +- ...mable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json | 27 +- ...mproved_Arcane_Shard_nQTo6mNoPTEVBtkm.json | 27 +- ...d_Grindletooth_Venom_BqBWXXe9T07AMV4u.json | 27 +- ...e_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json | 27 +- ...sumable_Jumping_Root_c2putn9apuurJhWX.json | 27 +- ...able_Knowledge_Stone_nL9IALzm9BNi5oSt.json | 27 +- ...e_Major_Arcane_Shard_AA7bmiwv00lshPrC.json | 27 +- ..._Major_Attune_Potion_CCPFm5iXXwvyYYwR.json | 27 +- ...Major_Bolster_Potion_mnyQDRtngWWQeRXF.json | 27 +- ...e_Major_Charm_Potion_IJLAUlQymbSjzsri.json | 27 +- ...Major_Control_Potion_80s1FLmTLtohZ5GH.json | 27 +- ...jor_Enlighten_Potion_SDdv1G2veMLKrxcJ.json | 27 +- ..._Major_Health_Potion_cM7pHe8bBAxSZ2xR.json | 27 +- ...Major_Stamina_Potion_I4cQ03xbxnc81EGa.json | 27 +- ..._Major_Stride_Potion_yK6eEDUrsPbZA8G0.json | 27 +- ..._Minor_Health_Potion_tPfKtKRRjv8qdSqy.json | 27 +- ...Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json | 27 +- ...e_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json | 25 +- ...umable_Morphing_Clay_f1NHVSIHJJCIOaBl.json | 25 +- ...nsumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json | 27 +- ...consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json | 27 +- ..._Potion_of_Stability_dvL8oaxpEF6jKvYN.json | 27 +- ...able_Redthorn_Saliva_s2Exl2XFuoOhtIov.json | 27 +- ...eplication_Parchment_yJkwz4AP6yhGo8Vj.json | 27 +- ...ble_Shrinking_Potion_HGixKenQwhyRAYNk.json | 27 +- ...sumable_Sleeping_Sap_XZavUVlHEvE2srEt.json | 27 +- ...nsumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json | 23 +- ...mable_Stamina_Potion_hf3k1POoVSooJyN2.json | 27 +- .../consumable_Stardrop_y4c1jrlHrf0wBWOq.json | 27 +- ...umable_Stride_Potion_lNtcrkgFGOJNaroE.json | 27 +- ...sumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json | 27 +- ...onsumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json | 38 ++- ...nstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json | 27 +- ...sumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json | 27 +- ...le_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json | 27 +- ...ble_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json | 27 +- ...onsumable_Wingsprout_n10vozlmosVR6lo4.json | 27 +- .../loot_Airblade_Charm_cTYvyaSKBxosM9Y9.json | 13 +- ...oot_Alistair_s_Torch_MeEg57T6MKpw3sme.json | 15 +- .../loot_Arcane_Cloak_4STt98biZwjFoKOe.json | 15 +- .../loot_Arcane_Prism_Mn1eo2Mdtu1kzyxB.json | 13 +- .../loot_Attune_Relic_vK6bKyQTT3m8WvMh.json | 15 +- ...ot_Bag_of_Ficklesand_v758j4FwNVAurhYK.json | 13 +- .../loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json | 14 +- .../loot_Bloodstone_oMd78vhL2x2NO8Mg.json | 15 +- .../loot_Bolster_Relic_m3EpxlDgxn2tCDDR.json | 15 +- ...ot_Box_of_Many_Goods_bZyT7Qw7iafswlTY.json | 13 +- ...loot_Calming_Pendant_tgFFMxpuRSiRrrEB.json | 13 +- ...loot_Charging_Quiver_gsUDP90d4SRtLEUn.json | 15 +- .../loot_Charm_Relic_9P9jqGSlxVCbTdLe.json | 15 +- .../loot_Clay_Companion_lGIk9vBNz0jvskXD.json | 15 +- .../loot_Companion_Case_V25uXkAQvK3hUta4.json | 15 +- .../loot_Control_Relic_QPGBDItjrRhXU6iJ.json | 15 +- ...oot_Corrector_Sprite_G0RktbmtnuAlKCRH.json | 13 +- .../loot_Dual_Flask_HCvcAu3sdHCspGMP.json | 15 +- .../loot_Elusive_Amulet_PkmTZXRMZL022O75.json | 13 +- .../loot_Empty_Chest_p2yy61uKsyIsl8cU.json | 15 +- ...loot_Enlighten_Relic_vSGx1f9SYUiA29L3.json | 15 +- .../loot/loot_Fire_Jar_X6RMkIt89wf7qX2E.json | 13 +- ...t_Flickerfly_Pendant_9VKYSBQxN9XFWlAm.json | 15 +- .../loot_Gecko_Gloves_CGzjBpHJRG8KSt5Y.json | 15 +- ...loot_Gem_of_Alacrity_zecFwBUSWtB3HW8X.json | 15 +- ...loot_Gem_of_Audacity_hMu9It3ThCLCXuCA.json | 15 +- .../loot_Gem_of_Insight_TbgeT9ZxKHqFqJSN.json | 15 +- .../loot_Gem_of_Might_rtSInNPc4B3ChBUZ.json | 15 +- ...oot_Gem_of_Precision_CrvJ7vb4s40YgEcy.json | 15 +- ...loot_Gem_of_Sagacity_ua351S7CsH22X1x2.json | 15 +- .../loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json | 76 ++++- .../loot/loot_Glider_CiXwelozmBDcPY48.json | 14 +- .../loot_Greatstone_y7zABzR0Q2fRskTw.json | 15 +- ...oot_Homing_Compasses_yrAGYlDyoe4OYl7d.json | 15 +- .../loot_Honing_Relic_SAAnEAeXDnhBbLjB.json | 15 +- ...ot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json | 14 +- .../loot_Infinite_Bag_Iedjw1LVWEozVh0J.json | 15 +- ...ot_Lakestrider_Boots_NgvmrJYKpA2PrRSo.json | 15 +- .../loot_Lorekeeper_JsPYzrqpITqGj23I.json | 15 +- .../loot/loot_Manacles_GkmATIuemyFtQX1D.json | 15 +- ...Health_Potion_Recipe_PQxvxAVBbkt0TleC.json | 15 +- ...tamina_Potion_Recipe_1TLpFsp3PLDsqoTw.json | 15 +- ...t_Mythic_Dust_Recipe_5YZls8XH3MB7twNa.json | 15 +- ...loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json | 14 +- ...loot_Phoenix_Feather_QNtzJSVENww63THa.json | 15 +- ...loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json | 15 +- .../loot_Piper_Whistle_v4PIoCCEjeE3acys.json | 15 +- .../loot_Portal_Seed_eRd5Gk7J7hPCqp11.json | 15 +- ...loot_Premium_Bedroll_QGYPNBIufpBguwjC.json | 17 +- ...t_Ring_of_Resistance_aUqRifqR5JXXa1dN.json | 86 +++++- ...loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json | 51 ++-- ..._Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json | 14 +- ...loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json | 14 +- .../loot_Skeleton_Key_edkNgwy4xghZreBa.json | 13 +- .../loot_Speaking_Orbs_LZrG6CFiSjpLA2F1.json | 15 +- .../loot_Stride_Relic_FfJISMzYATaPQPLc.json | 15 +- .../loot_Suspended_Rod_nnj12RiFanq7s5zv.json | 15 +- .../loot_Valorstone_7yywua9TmQ4WP5WH.json | 15 +- ..._of_Darksmoke_Recipe_MhCo8i0cRXzdnXbA.json | 15 +- .../loot/loot_Woven_Net_ARuv48PWUGJGBC4n.json | 13 +- .../weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json | 11 +- ...ane_Frame_Wheelchair_la3sAWgnvadc4NvP.json | 11 +- ...ced_Arcane_Gauntlets_hXR56fTKwZ6s1obs.json | 13 +- ...n_Advanced_Battleaxe_FcbvY1ydbNVMjKvk.json | 13 +- ..._Advanced_Broadsword_WtQAGz0TUgz8Xg70.json | 11 +- ...on_Advanced_Crossbow_3HGs0AgVrdIBTaKG.json | 13 +- ...pon_Advanced_Cutlass_bw9WO9lxkM9bWZxQ.json | 13 +- ...apon_Advanced_Dagger_mrioysDjNQEIE8hN.json | 13 +- ...n_Advanced_Dualstaff_X5x3sC7v2f3L9sjL.json | 13 +- ...vanced_Glowing_Rings_InQoh8mZPnwarQkX.json | 13 +- ...on_Advanced_Grappler_7vvhVl4TDJHtjpFK.json | 13 +- ..._Advanced_Greatstaff_4UzxqfkwF8gDSdu7.json | 13 +- ..._Advanced_Greatsword_MAC6YWTo4lzSotQc.json | 13 +- ...pon_Advanced_Halberd_C8gQn7onAc9wsrCs.json | 13 +- ...dvanced_Hallowed_Axe_BiyXKX2Mo1TQbKgk.json | 13 +- ...vanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json | 11 +- ..._Advanced_Hand_Runes_PQACczSghZIVTdgZ.json | 13 +- ...avy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json | 11 +- ...ght_Frame_Wheelchair_BuMfupnCzHbziQ8o.json | 12 +- ...pon_Advanced_Longbow_M5CywMAyPKGgebsJ.json | 13 +- ...n_Advanced_Longsword_9xkB3MWXahrsVP4N.json | 13 +- ...weapon_Advanced_Mace_WreMYiH5uhVDaoVw.json | 13 +- ...dvanced_Quarterstaff_zJtm2f9ZFKZRtCRg.json | 13 +- ...apon_Advanced_Rapier_KxFne76d7cak15dO.json | 14 +- ...nced_Returning_Blade_sIGXA4KMeYBUjcEO.json | 13 +- ...dvanced_Round_Shield_hiEOGF2reabGLUoi.json | 19 +- ...pon_Advanced_Scepter_2Khzuj768yoWN9QK.json | 13 +- ...on_Advanced_Shortbow_JpSlJvDR0X8VFDns.json | 13 +- ..._Advanced_Shortstaff_T5exRCqOXhrjSYnI.json | 13 +- ..._Advanced_Shortsword_p3nz5CaGUoyuGVg0.json | 9 +- ...dvanced_Small_Dagger_0thN0BpN05KT8Avx.json | 9 +- ...eapon_Advanced_Spear_pK6dsNABKKp1CIGN.json | 54 +--- ...dvanced_Tower_Shield_OfOzQbs4hg6QbfTG.json | 13 +- ...weapon_Advanced_Wand_jU9jWIardjtdAQcs.json | 13 +- ...n_Advanced_Warhammer_8Lipw3RRKDgBVP0p.json | 13 +- ...weapon_Advanced_Whip_01izMUSJcAUo79IX.json | 14 +- ...ane_Frame_Wheelchair_XRChepscgr75Uug7.json | 11 +- ...pon_Arcane_Gauntlets_PC5EyEIq7NWBV0n5.json | 13 +- ...apon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json | 14 +- .../weapon_Battleaxe_fbDYUja3ll9vCtrB.json | 13 +- ...lack_Powder_Revolver_AokqTusPzn0hghkE.json | 13 +- .../weapon_Bladed_Whip_5faflfNz20cFW1EM.json | 14 +- ...eapon_Blessed_Anlace_n1oPTk5czTIGTkVj.json | 13 +- .../weapon_Bloodstaff_IoMVDz92WVvfGGdc.json | 14 +- .../weapon_Blunderbuss_SLFrK0WmldPo0shz.json | 13 +- .../weapon_Braveshield_QEvgVoz9xKBSKsGi.json | 13 +- .../weapon_Bravesword_QZrWAkprA2tL2MOI.json | 13 +- .../weapon_Broadsword_1cwWNt4sqlgA8gCT.json | 11 +- .../weapon_Buckler_EmFTp9wzT6MHSaNz.json | 20 +- ...weapon_Casting_Sword_2Fbf2cxLfbdGkU4I.json | 13 +- .../weapon_Crossbow_cw7HG1Z7hp7OOLD0.json | 13 +- ...weapon_Curved_Dagger_Fk69R40svV0kanZD.json | 13 +- .../weapon_Cutlass_CWrbnethuILXrEpA.json | 13 +- .../weapon_Dagger_iStO0BbeMTTR0rQi.json | 13 +- ...pon_Devouring_Dagger_C5wSGglR8e0euQnY.json | 13 +- .../weapon_Double_Flail_xm1yU7k58fMgXxRR.json | 13 +- ...pon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json | 14 +- .../weapon_Dualstaff_j8cdNeIUYxxzFVji.json | 13 +- .../weapon_Ego_Blade_G7rH31KQ5eEZXcv0.json | 13 +- .../weapon_Elder_Bow_JdWcn9W1edhAEInL.json | 13 +- ...pon_Extended_Polearm_fJHKMxZokVP34MCi.json | 13 +- .../weapon_Finehair_Bow_ykF3jouxHZ6YR8Bg.json | 13 +- .../weapon_Firestaff_BtCm2RhWEfs00g38.json | 13 +- ...pon_Flickerfly_Blade_xLJ5RRpUoTRmAC3G.json | 13 +- ...Floating_Bladeshards_3vti3xfo0wJND7ew.json | 13 +- ...weapon_Fusion_Gloves_uK1RhtYAsDeoPNGx.json | 13 +- .../weapon_Ghostblade_6gFvOFTE97QZ74Zr.json | 13 +- .../weapon_Gilded_Bow_ctTgFfMbM3YtmsYU.json | 13 +- ...apon_Gilded_Falchion_VwcOgqnzjf9LBj2S.json | 13 +- ...weapon_Glowing_Rings_wG9f5NpCwSbaLy8t.json | 13 +- .../weapon_Grappler_iEzPscUc18GuFoB6.json | 13 +- .../weapon_Greatbow_MXBpbqQsZFln4rZk.json | 13 +- .../weapon_Greatstaff_Yk8pTEmyLLi4095S.json | 13 +- .../weapon_Greatsword_70ysaFJDREwTgvZa.json | 13 +- .../weapon_Halberd_qT7FfmauAumOjJoq.json | 13 +- .../weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json | 15 +- ...apon_Hammer_of_Exota_0lAkBEUvbM9Osmqb.json | 13 +- ...apon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json | 14 +- .../weapon_Hand_Cannon_MyGz8nd5sieRQ7zl.json | 13 +- ...weapon_Hand_Crossbow_zxKt6qXe7uZB6ljm.json | 13 +- .../weapon_Hand_Runes_3whiedn0jBMNRdIb.json | 13 +- .../weapon_Hand_Sling_RAIaoMi6iO1PKIlK.json | 13 +- ...avy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json | 11 +- ...eapon_Ilmari_s_Rifle_TMrUzVC3KvcHmdt8.json | 13 +- ...apon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json | 14 +- ...ane_Frame_Wheelchair_N9P695V5KKlJbAY5.json | 11 +- ...ved_Arcane_Gauntlets_kENTDpa1hr5LDhIT.json | 13 +- ...n_Improved_Battleaxe_nxGUpuHLmuKdKsDC.json | 13 +- ..._Improved_Broadsword_OcKeLJxvmdT81VBc.json | 11 +- ...on_Improved_Crossbow_55NwHIIZHUeKSE3M.json | 13 +- ...pon_Improved_Cutlass_ddRjXnp2vbohu7rJ.json | 13 +- ...apon_Improved_Dagger_ScjTkb9qrndhlk9S.json | 13 +- ...n_Improved_Dualstaff_f7hhHlZ5nL3AhYEM.json | 13 +- ...proved_Glowing_Rings_N5amhkxR1xn3B7r2.json | 13 +- ...on_Improved_Grappler_3T3o9zfe61t22L1H.json | 13 +- ..._Improved_Greatstaff_LCuTrYXi4lhg6LqW.json | 13 +- ..._Improved_Greatsword_FPX4ouDrxXiQ5MDf.json | 13 +- ...pon_Improved_Halberd_F9PETfCQGwczBPif.json | 13 +- ...mproved_Hallowed_Axe_wFOXMN2uiX4j6Gd9.json | 13 +- ...proved_Hand_Crossbow_XEDRkuw3BhMoVBn9.json | 13 +- ..._Improved_Hand_Runes_jMEukC3VpNDz5AOD.json | 13 +- ...avy_Frame_Wheelchair_L5KeCtrs768PmYWW.json | 11 +- ...ght_Frame_Wheelchair_ZJsetdHKV77ygtCE.json | 12 +- ...pon_Improved_Longbow_NacNonjbzyoVMNhI.json | 13 +- ...n_Improved_Longsword_QyBZ5NxM8F9nCL9s.json | 13 +- ...weapon_Improved_Mace_zSLx52U4Yltqx8F1.json | 13 +- ...mproved_Quarterstaff_BEmAR60PM3ZaiNXa.json | 13 +- ...apon_Improved_Rapier_LFPH8nD2f4Blv3AM.json | 14 +- ...oved_Returning_Blade_SKNwkW23eVQjN4Zy.json | 13 +- ...mproved_Round_Shield_DlinEBGZfIlvreO3.json | 19 +- ...pon_Improved_Scepter_tj26lbNkwy8bORF4.json | 13 +- ...on_Improved_Shortbow_6ZWl6ARfvYBaAMwY.json | 13 +- ..._Improved_Shortstaff_Mn8ja5Oi1sXvvPSk.json | 13 +- ..._Improved_Shortsword_rSyBNRwemBVuTo3H.json | 9 +- ...mproved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json | 9 +- ...eapon_Improved_Spear_j5Pt1thLfcvopBij.json | 54 +--- ...mproved_Tower_Shield_bxt3NsbMqTSdI5ab.json | 13 +- ...weapon_Improved_Wand_6d9B2b5X2d2U56jt.json | 13 +- ...n_Improved_Warhammer_pxaN4ZK4eqKrjtWj.json | 13 +- ...weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json | 14 +- ...eapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json | 11 +- ...eapon_Knuckle_Blades_U8gfyvxoHm024inM.json | 13 +- ...weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json | 11 +- .../weapon_Labrys_Axe_ijWppQzSOqVCb3rE.json | 13 +- ...ane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json | 11 +- ...ary_Arcane_Gauntlets_umADDPYCaykXDc1v.json | 13 +- ..._Legendary_Battleaxe_1nztpLzoHGfbKf5x.json | 13 +- ...Legendary_Broadsword_y3hfTPfZhMognyaJ.json | 11 +- ...n_Legendary_Crossbow_1G6xX2QL9O0Rsgz7.json | 13 +- ...on_Legendary_Cutlass_Rpyz0jbFJ1SwqfyD.json | 13 +- ...pon_Legendary_Dagger_GmTg3Fdne1UPNs8t.json | 13 +- ..._Legendary_Dualstaff_o3rsLvImcLAx5TvD.json | 13 +- ...endary_Glowing_Rings_PReWrfuPjoNQuieo.json | 13 +- ...n_Legendary_Grappler_IrtUj0UntBMNn49G.json | 13 +- ...Legendary_Greatstaff_jDtvEabkHY1GFgfc.json | 13 +- ...Legendary_Greatsword_zMZ46F9VR7zdTxb9.json | 13 +- ...on_Legendary_Halberd_1AuMNiJz96Ez9fur.json | 13 +- ...gendary_Hallowed_Axe_0HmhnZnv1I6uX69c.json | 13 +- ...endary_Hand_Crossbow_32nYyMaeDWaakSxz.json | 13 +- ...Legendary_Hand_Runes_DWLkswhluXuMy3bB.json | 13 +- ...avy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json | 11 +- ...ght_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json | 12 +- ...on_Legendary_Longbow_Utt1GpoH1fhaTOtN.json | 13 +- ..._Legendary_Longsword_14abPqQcROJfDChR.json | 13 +- ...eapon_Legendary_Mace_RsDsy7tIhrhaAQQc.json | 13 +- ...gendary_Quarterstaff_1ZciqG7vIKLYpKsP.json | 13 +- ...pon_Legendary_Rapier_BakN97v4jTePcXiZ.json | 14 +- ...dary_Returning_Blade_mcj3CPkcSSDdAcBB.json | 13 +- ...gendary_Round_Shield_A28WL9E2lJ3iLZHW.json | 19 +- ...on_Legendary_Scepter_IZ4CWNxfuM46JeCN.json | 13 +- ...n_Legendary_Shortbow_j7kp36jaetfn5jb3.json | 13 +- ...Legendary_Shortstaff_D3SbNvNJZAFuzfhg.json | 13 +- ...Legendary_Shortsword_dEumq3BIZBk5xYTk.json | 9 +- ...gendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json | 9 +- ...apon_Legendary_Spear_4e5pWxi2qohuGsWh.json | 54 +--- ...gendary_Tower_Shield_MaJIROht7A9LxIZx.json | 13 +- ...eapon_Legendary_Wand_wPjg0LufJH9vUfVM.json | 13 +- ..._Legendary_Warhammer_W9ymfEDck2icfvla.json | 13 +- ...eapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json | 14 +- ...ght_Frame_Wheelchair_iaGnlUkShBgdeMo0.json | 12 +- .../weapon_Longbow_YfVs6Se903az4Yet.json | 13 +- .../weapon_Longsword_Iv8BZM1R24QMT72M.json | 13 +- .../weapons/weapon_Mace_cKQCDyM2UopDL9zF.json | 13 +- .../weapon_Mage_Orb_XKBmBUEoGLdLcuqQ.json | 13 +- ...eapon_Magus_Revolver_jGykNGQiKm63tCiE.json | 13 +- ...pon_Meridian_Cutlass_Gi26Zk9VqlAAgx3E.json | 13 +- .../weapon_Midas_Scythe_BdLfy5i488VZgkjP.json | 13 +- ...apon_Parrying_Dagger_taAZDkDCpeNgxhnn.json | 13 +- ...pon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json | 14 +- .../weapon_Primer_Shard_SxcblanBvqaest3A.json | 11 +- .../weapon_Quarterstaff_mlIj88p1wcQNjEDG.json | 13 +- .../weapon_Rapier_zkAgEW6zMkRZalEm.json | 14 +- ...on_Retractable_Saber_i8CqVTzqoRoCewNe.json | 13 +- ...weapon_Returning_Axe_FtsQGwOg3r8uUCST.json | 13 +- ...apon_Returning_Blade_4fQpVfQ3NVwTHStA.json | 13 +- ...weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json | 16 +- .../weapon_Round_Shield_mxwWKDujgsRcZWPT.json | 21 +- ...n_Runes_of_Ruination_EG6mZhr3ib56r974.json | 14 +- .../weapon_Scepter_GZh345N8fmuS4Jeh.json | 13 +- ...pon_Scepter_of_Elias_acPGwIaUhx3R0mTq.json | 13 +- .../weapon_Shortbow_p9tdjQr2AZP19RYm.json | 13 +- .../weapon_Shortstaff_vHDHG3STcxTEfYAM.json | 13 +- .../weapon_Shortsword_cjGZpXCoshEqi1FI.json | 9 +- ..._Siphoning_Gauntlets_1N1jggda5DfdzdMj.json | 13 +- .../weapon_Sledge_Axe_OxsEmffWriiQmqJK.json | 13 +- .../weapon_Small_Dagger_wKklDxs5nkzILNp4.json | 9 +- .../weapon_Spear_TF85tKJetUjLwh54.json | 54 +--- .../weapon_Spiked_Bow_O1w8KPYH85ZS8X64.json | 13 +- ...weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json | 11 +- ..._Steelforged_Halberd_6bkbw4Ap644KZGvJ.json | 13 +- ...n_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json | 14 +- ...ord_of_Light___Flame_TVPCWnSELOVBv6G1.json | 13 +- .../weapon_Talon_Blades_jlLtgK468rO5IssR.json | 13 +- .../weapon_Thistlebow_I1nDGpulg29GpWOW.json | 11 +- .../weapon_Tower_Shield_C9aWpK1shVMWP4m5.json | 13 +- ...apon_Urok_Broadsword_zGm6Wa1fGF6cECY5.json | 13 +- .../weapons/weapon_Wand_ItWisJFNGMNWeaCV.json | 13 +- ...Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json | 14 +- ...weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json | 13 +- .../weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json | 11 +- .../weapon_Warhammer_ZXh1GQahBiODfSTC.json | 13 +- .../weapons/weapon_Whip_CmtWqw6DwoePnX7W.json | 14 +- ...pon_Widogast_Pendant_8Z5QrThfwkYPXNco.json | 13 +- ...apon_Yutari_Bloodbow_0XpSBYXxtywvBFQi.json | 13 +- ...rnal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json | 2 +- ...feature_Accomplished_0wCctRupJAv5hTuE.json | 15 +- ...ture_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json | 17 +- .../feature_Adept_v511C6GMShsBblah.json | 16 +- .../feature_Adrenaline_uByM34yQlw38yf1V.json | 46 +-- ...re_Advanced_Training_uGcs785h94RMtueH.json | 15 +- ...eature_Apex_Predator_lwH3E0Zyf4gbVOd0.json | 16 +- ...eature_Arcane_Charge_yA4MKQ1tbKFiJoDB.json | 15 +- .../feature_Ascendant_fefLgx6kcYWusjBb.json | 15 +- .../feature_At_Ease_xPWFvGvtUjIcqgJq.json | 15 +- ...eature_Battle_Bonded_hWsKyed1vfILg0I8.json | 69 ++++- ...eature_Battle_Ritual_qqb5acyUSl1sCpWW.json | 15 +- .../feature_Battlemage_Y9eGMewnFZgPvX0M.json | 15 +- .../feature_Brilliant_2A0HBDxGc4gEARou.json | 15 +- ...re_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json | 24 +- .../feature_Comaraderie_dArl2cxKIEGTicXU.json | 15 +- .../feature_Companion_MBFXxIEwc0Dl4kJg.json | 15 +- ...ature_Conjure_Shield_oirsCnN66GOlK3Fa.json | 15 +- ..._Contacts_Everywhere_cXbRm744mW6UXGam.json | 16 +- .../feature_Courage_o5j2vjXU8NicYlXx.json | 15 +- .../feature_Dark_Cloud_frBTtNMX9Y2gkuPz.json | 15 +- .../feature_Defender_Jdktv5p1K2PfgxrT.json | 16 +- .../feature_Devout_J3A7ycmj65hlhWnI.json | 15 +- ...ature_Elemental_Aura_2JH9NaOh69yN80Gw.json | 15 +- ...e_Elemental_Dominion_EFUJHrkTuyv8uA9l.json | 16 +- ...lemental_Incarnation_f37TTgCc0Q3Ih1A1.json | 19 +- ...feature_Elementalist_dPcqKN5NeDkjB1HW.json | 51 ++-- .../feature_Eloquent_5bmB1YcxiJVNVXDM.json | 15 +- ...ure_Elusive_Predator_Cjtc43V3IzAmfIFG.json | 69 ++++- ...eature_Enchanted_Aid_4pVBN8cuKePI423V.json | 15 +- .../feature_Epic_Poetry_eCoEWkWuZPMZ9C6a.json | 15 +- ...ture_Ethereal_Visage_tyGB6wRKjYdIBK1i.json | 15 +- ...ture_Expert_Training_iCXtOWBKv1FdKdWz.json | 15 +- ...ature_Face_Your_Fear_D3ffFWSXCza4WGcM.json | 15 +- ...ture_Fleeting_Shadow_EY7Eo6hNGppVL3dR.json | 15 +- ...ature_Fueled_by_Fear_hNqLf3zEfKRzSbvq.json | 15 +- ...ure_Gifted_Performer_99U7YWNCxFZHCiT0.json | 15 +- ...feature_Have_No_Fear_8TH6h6a36h09mf6d.json | 15 +- ...ture_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json | 16 +- ...ture_Honed_Expertise_w1BwNKxbQOSizLmZ.json | 15 +- .../feature_Iron_Will_7AVRNyBcd1Nffjtn.json | 15 +- ...feature_Loyal_Friend_xjZHD5Yo3Tu26rLm.json | 15 +- ...ture_Loyal_Protector_hd7UeBPr86Mz21Pe.json | 16 +- .../feature_Maestro_ZFkCz8XV1EtMoJ1w.json | 15 +- ...ure_Manipulate_Magic_UNg4eyNfEQrMdD7G.json | 16 +- ..._Martial_Preparation_dHgAnbt9m1KsQFmp.json | 15 +- ...ture_Natural_Evasion_TnuLBtHQGbqyzn82.json | 16 +- .../feature_Nemesis_DPKmipNRlSAMs2Cg.json | 16 +- ...ture_Partner_in_Arms_G54qY96XK62hgoK9.json | 16 +- ...feature_Path_Forward_uPPBOpoulUmSLlzr.json | 15 +- ...ature_Perfect_Recall_HzPa5U0EQhDfFTqW.json | 15 +- ...re_Power_of_the_Gods_Yij5sNyP1Ii7BAbc.json | 15 +- .../feature_Prepared_YS52ZGdce605wNVT.json | 15 +- ...feature_Regeneration_KRyrbSLVGreIOTZe.json | 16 +- ...e_Regenerative_Reach_oLO3VjGkMcK1uvB9.json | 15 +- ...ture_Reliable_Backup_QYNGdH37fsGuxS7L.json | 15 +- .../feature_Revenge_oNfA5F9cKwNR7joq.json | 16 +- ...ise_to_the_Challenge_dcutk8RVOJ2sEkO1.json | 15 +- ...ature_Rousing_Speech_PCmYTX02JLzBpgml.json | 16 +- ...re_Ruthless_Predator_Qny2J3R35bvC0Cey.json | 20 +- ...ure_Sacred_Resonance_DxOAkDBfIMpXxAUD.json | 15 +- ...ature_Shadow_Stepper_hAwTXjhyphiE3aeW.json | 20 +- .../feature_Slayer_1hF5KGKQc2VKT5O8.json | 15 +- ...eature_Sparing_Touch_GfOSgVJW8bS1OjNq.json | 27 +- ...eature_Spirit_Weapon_McoS0RxNLOg3SfSt.json | 16 +- ...ture_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json | 16 +- ...eature_Transcendence_th6HZwEFnVBjUtqm.json | 16 +- .../feature_Undaunted_866b2jjyzXP8nPRQ.json | 15 +- .../feature_Unrelenting_4qP7bNyxVHBmr4Rb.json | 15 +- .../feature_Unwavering_WBiFZaYNoQNhysmN.json | 15 +- ...eature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json | 28 +- .../feature_Virtuoso_kn2t409o0FDFQieo.json | 15 +- ..._Warden_s_Protection_2F1bUFY80oce97C9.json | 15 +- ...re_Weapon_Specialist_HAqtoKUTrk8Mip1n.json | 16 +- ...ature_Well_Connected_7KnSOazixXXSnspj.json | 15 +- ...ature_Wings_of_Light_KkQH0tYhagIqe2MT.json | 16 +- .../subclass_Beastbound_TIUsIlTS1WkK5vr2.json | 5 + ...ss_Call_Of_The_Brave_NAFU9roaVG7f3RNJ.json | 5 + ...s_Call_Of_The_Slayer_bcNe5qP3o6CKadhK.json | 5 + ...class_Divine_Wielder_M5mpGoAj8LRkylrY.json | 5 + ...ass_Elemental_Origin_wg1H0hROc2acHwZh.json | 5 + ...subclass_Nightwalker_h161OSIK24Up4qNd.json | 5 + ...bclass_Primal_Origin_GLpRVxnY5E82khxH.json | 5 + ..._School_Of_Knowledge_qqQlgCqhOivUFoQn.json | 5 + ...bclass_School_Of_War_4y9Ph7RsCIAbkwTk.json | 5 + .../subclass_Stalwart_rKRxFBlkbh9cDK8K.json | 5 + .../subclass_Syndicate_95QxNZwgyEm1LqdG.json | 5 + .../subclass_Troubadour_ld8MIvk0xVJydSBz.json | 5 + .../subclass_Vengeance_SUo8NPBPO8aN193u.json | 5 + ...ss_Warden_of_Renewal_xp0XMjYT85Q7E90o.json | 5 + ...rden_of_the_Elements_W9hs5kxOWeY7eA4Q.json | 5 + .../subclass_Wayfinder_zsUglcU4NgZ8tNgZ.json | 5 + ...lass_Winged_Sentinel_y7ERWRIpJsdP9Re4.json | 5 + .../subclass_Wordsmith_XTSODVM8st75Os8M.json | 5 + 952 files changed, 13006 insertions(+), 5258 deletions(-) diff --git a/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json b/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json index 90c5950e..2cc54257 100644 --- a/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json +++ b/src/packs/adversaries/adversary_Acid_Burrower_89yAh30vaNQOALlz.json @@ -143,6 +143,11 @@ "difficulty": null, "damageMod": "none" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 75, + "artist": "" } }, "flags": {}, @@ -152,9 +157,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010222829, - "modifiedTime": 1755259462470, + "modifiedTime": 1755384241210, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { @@ -266,7 +271,40 @@ "system": { "description": "

The Burrower can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "3lGGgkxnzgUwHGIp": { + "type": "effect", + "_id": "3lGGgkxnzgUwHGIp", + "systemPath": "actions", + "description": "

The Burrower can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": false, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "2", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -283,10 +321,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "lastModifiedBy": null + "systemVersion": "1.1.2", + "lastModifiedBy": "fBcTgyTzoARBvohY", + "modifiedTime": 1760033015502 }, "_key": "!actors.items!89yAh30vaNQOALlz.MFmGN6Tbf5GYxrQ9" }, @@ -311,7 +350,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -441,7 +479,7 @@ "type": "attack", "_id": "yd10HwK6Wa3OEvv2", "systemPath": "actions", - "description": "

Make an attack against all targets in front of the Burrower within Close range. Targets the Burrower succeeds against take 2d6 physical damage and must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP and you gain a Fear.

@Template[type:inFront|range:c]

", + "description": "

Make an attack against all targets in front of the Burrower within Close range. Targets the Burrower succeeds against take 2d6 physical damage and must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP and you gain a Fear.

@Template[type:inFront|range:c]

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -553,11 +591,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "1.1.2", - "lastModifiedBy": "mdk78Q6pOyHh6aBg", - "modifiedTime": 1756510879809 + "lastModifiedBy": "fBcTgyTzoARBvohY", + "modifiedTime": 1760019840573 }, "_key": "!actors.items!89yAh30vaNQOALlz.UpFsnlbZkyvM2Ftv" }, diff --git a/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json b/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json index f2eeb23b..c04d1a65 100644 --- a/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json +++ b/src/packs/adversaries/adversary_Adult_Flickerfly_G7jiltRjgvVhZewm.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 91, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784219, - "modifiedTime": 1755259462665, + "modifiedTime": 1755385356620, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "G7jiltRjgvVhZewm", @@ -228,7 +233,40 @@ "system": { "description": "

The Flickerfly can be spotlighted up to four times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "poUhJdSkhjiVL2Vp": { + "type": "effect", + "_id": "poUhJdSkhjiVL2Vp", + "systemPath": "actions", + "description": "

The Flickerfly can be spotlighted up to four times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "3", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -246,12 +284,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754121940551, - "modifiedTime": 1754121965558, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760381115291, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!G7jiltRjgvVhZewm.fFOhhMl4SDUnYNNO" }, @@ -268,7 +306,7 @@ "systemPath": "actions", "description": "

When the Flickerfly makes an attack, the target’s Evasion is halved against the attack.

", "chatDisplay": true, - "actionType": "action", + "actionType": "passive", "cost": [], "uses": { "value": null, @@ -359,12 +397,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754121968284, - "modifiedTime": 1754122883213, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760381147421, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!G7jiltRjgvVhZewm.PrwC6RpsP12fPUwy" }, @@ -387,7 +425,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -502,7 +539,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -716,13 +752,12 @@ "systemPath": "actions", "description": "

When the Flickerfly takes damage from an attack within Close range, you can mark a Stress to take half damage.

", "chatDisplay": true, - "actionType": "action", + "actionType": "reaction", "cost": [ { "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -758,14 +793,47 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754122789186, - "modifiedTime": 1754122857220, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760381159787, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!G7jiltRjgvVhZewm.KLdLRKoJHBJlHwYe" + }, + { + "name": "Deadly Flight", + "type": "feature", + "system": { + "description": "

While flying the Flickerfly can move up to Far range instead of Close range before taking an action.

", + "resource": null, + "actions": {}, + "originItemType": null, + "multiclassOrigin": false + }, + "_id": "WFRpSDZvqF0Upjoy", + "img": "icons/skills/movement/feet-winged-boots-blue.webp", + "effects": [], + "folder": null, + "sort": 0, + "ownership": { + "default": 0, + "fBcTgyTzoARBvohY": 3 + }, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.350", + "systemId": "daggerheart", + "systemVersion": "1.1.2", + "createdTime": 1760381172325, + "modifiedTime": 1760381302938, + "lastModifiedBy": "fBcTgyTzoARBvohY" + }, + "_key": "!actors.items!G7jiltRjgvVhZewm.WFRpSDZvqF0Upjoy" } ], "effects": [], diff --git a/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json b/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json index 953e7deb..663aa8a3 100644 --- a/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json +++ b/src/packs/adversaries/adversary_Apprentice_Assassin_vNIbYQ4YSzNf0WPE.json @@ -105,6 +105,11 @@ "img": "icons/weapons/daggers/dagger-bone-black.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -114,9 +119,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784220, - "modifiedTime": 1755259462932, + "modifiedTime": 1755384980487, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "vNIbYQ4YSzNf0WPE", @@ -273,7 +278,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json b/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json index 81287859..c8f0b0d1 100644 --- a/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json +++ b/src/packs/adversaries/adversary_Arch_Necromancer_WPEOIGfclNJxWb87.json @@ -117,6 +117,11 @@ "img": "icons/magic/unholy/beam-ringed-impact-purple.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 97, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784221, - "modifiedTime": 1755259462752, + "modifiedTime": 1755385620034, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WPEOIGfclNJxWb87", @@ -252,7 +257,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -340,7 +344,6 @@ "scalable": false, "key": "stress", "value": 2, - "keyIsID": false, "step": null } ], @@ -574,7 +577,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -638,7 +640,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json b/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json index e2793ca3..2b0bddcd 100644 --- a/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json +++ b/src/packs/adversaries/adversary_Archer_Guard_JRhrrEg5UroURiAD.json @@ -111,6 +111,11 @@ "img": "icons/weapons/bows/longbow-recurve-leather-brown.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784222, - "modifiedTime": 1755259462476, + "modifiedTime": 1755384306205, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JRhrrEg5UroURiAD", diff --git a/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json b/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json index 643610d3..18906dbd 100644 --- a/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json +++ b/src/packs/adversaries/adversary_Archer_Squadron_0ts6CGd93lLqGZI5.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784223, - "modifiedTime": 1755259462516, + "modifiedTime": 1755384973132, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "0ts6CGd93lLqGZI5", @@ -274,7 +279,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json b/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json index 7cffa6de..c69454c6 100644 --- a/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json +++ b/src/packs/adversaries/adversary_Assassin_Poisoner_h5RuhzGL17dW5FBT.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784224, - "modifiedTime": 1755259462844, + "modifiedTime": 1755384989183, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "h5RuhzGL17dW5FBT", diff --git a/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json b/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json index cad8ac88..f9411446 100644 --- a/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json +++ b/src/packs/adversaries/adversary_Battle_Box_dgH3fW9FTYLaIDvS.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 85, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784224, - "modifiedTime": 1755264708230, + "modifiedTime": 1755385012352, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dgH3fW9FTYLaIDvS", @@ -234,7 +239,40 @@ "system": { "description": "

The Box can be spotlighted up to two times times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "2JfPSV3pw6pv0BXd": { + "type": "effect", + "_id": "2JfPSV3pw6pv0BXd", + "systemPath": "actions", + "description": "

The Box can be spotlighted up to two times times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "1", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -252,12 +290,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754073816379, - "modifiedTime": 1754073843197, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760211145763, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!dgH3fW9FTYLaIDvS.RSovCwuGrZ1mk5py" }, @@ -280,7 +318,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -1086,7 +1123,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json b/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json index 688b54f4..dc8f4013 100644 --- a/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json +++ b/src/packs/adversaries/adversary_Bear_71qKDLKO3CsrNkdy.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 75, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784226, - "modifiedTime": 1755259462479, + "modifiedTime": 1755384265295, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "71qKDLKO3CsrNkdy", @@ -288,7 +293,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -443,7 +447,77 @@ "system": { "description": "

When the Bear makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "ZQHGR0IweeWBLokB": { + "type": "healing", + "_id": "ZQHGR0IweeWBLokB", + "systemPath": "actions", + "description": "

When the Bear makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -460,12 +534,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754012330113, - "modifiedTime": 1754143729868, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760209165515, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!71qKDLKO3CsrNkdy.4hJbq9WCwJn78frt" } diff --git a/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json b/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json index 184f5fdf..899aa33f 100644 --- a/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json +++ b/src/packs/adversaries/adversary_Bladed_Guard_B4LZcGuBAHzyVdzy.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784226, - "modifiedTime": 1755259462481, + "modifiedTime": 1755384320981, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "B4LZcGuBAHzyVdzy", @@ -234,7 +239,7 @@ "_id": "qEn4baWgkjKtmILp", "img": "icons/equipment/shield/shield-round-boss-wood-brown.webp", "system": { - "description": "

A creature who tries to move within Very Close range of the Guard must succeed on an Agility Roll. If additional Bladed Guards are standing in a line alongside the f i rst, and each is within Melee range of another guard in the line, the Diffi culty increases by the total number of guards in that line.

", + "description": "

A creature who tries to move within Very Close range of the Guard must succeed on an Agility Roll. If additional Bladed Guards are standing in a line alongside the first, and each is within Melee range of another guard in the line, the Difficulty increases by the total number of guards in that line.

", "resource": null, "actions": { "3lbeEeJdjzPn0MoG": { @@ -300,12 +305,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754012824140, - "modifiedTime": 1754143793947, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760021165250, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!B4LZcGuBAHzyVdzy.qEn4baWgkjKtmILp" }, diff --git a/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json b/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json index bbdb4e63..9d59323c 100644 --- a/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json +++ b/src/packs/adversaries/adversary_Brawny_Zombie_2UeZ0tEe7AzgSJNd.json @@ -115,6 +115,11 @@ "img": "icons/skills/melee/unarmed-punch-fist-yellow-red.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -124,9 +129,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784231, - "modifiedTime": 1755259462487, + "modifiedTime": 1755384340788, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2UeZ0tEe7AzgSJNd", @@ -399,7 +404,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json b/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json index 8904e37a..e64e5c6f 100644 --- a/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json +++ b/src/packs/adversaries/adversary_Cave_Ogre_8Zkqk1jU09nKL2fy.json @@ -111,6 +111,11 @@ "img": "icons/weapons/clubs/club-banded-barbed-black.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 75, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784233, - "modifiedTime": 1755259462491, + "modifiedTime": 1755384280132, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8Zkqk1jU09nKL2fy", @@ -248,7 +253,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -347,7 +351,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json b/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json index 652ccc48..9be9c300 100644 --- a/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json +++ b/src/packs/adversaries/adversary_Chaos_Skull_jDmHqGvzg5wjgmxE.json @@ -106,6 +106,11 @@ "img": "icons/magic/light/beam-rays-magenta.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 85, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784233, - "modifiedTime": 1755259462855, + "modifiedTime": 1755385025439, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jDmHqGvzg5wjgmxE", @@ -359,7 +364,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json b/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json index 6bea9bbc..b30bdc84 100644 --- a/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json +++ b/src/packs/adversaries/adversary_Conscript_99TqczuQipBmaB8i.json @@ -99,6 +99,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 85, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784234, - "modifiedTime": 1755259462618, + "modifiedTime": 1755385032835, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "99TqczuQipBmaB8i", @@ -267,7 +272,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json b/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json index eb5d35a1..75868101 100644 --- a/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json +++ b/src/packs/adversaries/adversary_Construct_uOP5oT9QzXPlnf3p.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 75, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784236, - "modifiedTime": 1755259462495, + "modifiedTime": 1755384289735, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uOP5oT9QzXPlnf3p", @@ -230,7 +235,40 @@ "system": { "description": "

The Construct can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "bay0pyPsCyDEZKuk": { + "type": "effect", + "_id": "bay0pyPsCyDEZKuk", + "systemPath": "actions", + "description": "

The Construct can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "1", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -247,12 +285,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754013727085, - "modifiedTime": 1754013745214, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760032979707, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!uOP5oT9QzXPlnf3p.y3oUmDLGkcSjOO5Q" }, @@ -311,7 +349,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -427,7 +464,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json b/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json index e0cfcf66..95a29d0b 100644 --- a/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json +++ b/src/packs/adversaries/adversary_Courtesan_ZxWaWPdzFIUPNC62.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 85, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784237, - "modifiedTime": 1755264799637, + "modifiedTime": 1755385040425, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ZxWaWPdzFIUPNC62", @@ -252,7 +257,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json b/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json index 77181f05..1b76af96 100644 --- a/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json +++ b/src/packs/adversaries/adversary_Courtier_CBBuEXAlLKFMJdjg.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784237, - "modifiedTime": 1755259462499, + "modifiedTime": 1755384362436, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CBBuEXAlLKFMJdjg", @@ -249,7 +254,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -318,7 +322,7 @@ "difficulty": 14, "damageMod": "none" }, - "name": "Use", + "name": "Mark Stress", "img": "icons/magic/control/mouth-smile-deception-purple.webp", "range": "close" } @@ -386,12 +390,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754014295058, - "modifiedTime": 1754143921727, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760209255313, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!CBBuEXAlLKFMJdjg.LYNaKEYcYMgvF4Rf" }, @@ -416,7 +420,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json b/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json index 6c63e29e..091b862c 100644 --- a/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json +++ b/src/packs/adversaries/adversary_Cult_Adept_0NxCSugvKQ4W8OYZ.json @@ -117,6 +117,11 @@ "img": "icons/weapons/staves/staff-ornate-purple.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 85, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784239, - "modifiedTime": 1755259462512, + "modifiedTime": 1755385049086, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "0NxCSugvKQ4W8OYZ", @@ -252,7 +257,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -392,7 +396,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -519,7 +522,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json b/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json index 96fc1cc6..47626209 100644 --- a/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json +++ b/src/packs/adversaries/adversary_Cult_Fang_tyBOpLfigAhI9bU3.json @@ -106,6 +106,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784239, - "modifiedTime": 1755264898243, + "modifiedTime": 1755385067530, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tyBOpLfigAhI9bU3", @@ -241,7 +246,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -305,7 +309,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json b/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json index b46dc3a0..12f715c5 100644 --- a/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json +++ b/src/packs/adversaries/adversary_Cult_Initiate_zx99sOGTXicP4SSD.json @@ -99,6 +99,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784240, - "modifiedTime": 1755264925295, + "modifiedTime": 1755385079522, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "zx99sOGTXicP4SSD", @@ -267,7 +272,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json b/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json index 31418d81..d14eff69 100644 --- a/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json +++ b/src/packs/adversaries/adversary_Deeproot_Defender_9x2xY9zwc3xzbXo5.json @@ -111,6 +111,11 @@ "img": "icons/magic/nature/root-vines-grow-brown.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784246, - "modifiedTime": 1755259462506, + "modifiedTime": 1755384371297, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9x2xY9zwc3xzbXo5", diff --git a/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json b/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json index d32c7ef7..e74522d3 100644 --- a/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json +++ b/src/packs/adversaries/adversary_Demon_of_Avarice_pnyjIGxxvurcWmTv.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 91, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784247, - "modifiedTime": 1755265775161, + "modifiedTime": 1755385363507, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "pnyjIGxxvurcWmTv", diff --git a/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json b/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json index 673a050d..1038cb06 100644 --- a/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json +++ b/src/packs/adversaries/adversary_Demon_of_Despair_kE4dfhqmIQpNd44e.json @@ -112,6 +112,11 @@ "type": "attack", "range": "far", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 92, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784248, - "modifiedTime": 1755266281854, + "modifiedTime": 1755385375748, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kE4dfhqmIQpNd44e", @@ -280,7 +285,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -394,7 +398,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -475,7 +478,77 @@ "system": { "description": "

When the Demon makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "N0Xx6GnijLXIMGBw": { + "type": "healing", + "_id": "N0Xx6GnijLXIMGBw", + "systemPath": "actions", + "description": "

When the Demon makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "action", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -493,12 +566,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754125078956, - "modifiedTime": 1754125096421, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760381412185, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!kE4dfhqmIQpNd44e.7qjx1c4C1fUfvXnu" } diff --git a/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json b/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json index 23cfe473..4144b8c3 100644 --- a/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json +++ b/src/packs/adversaries/adversary_Demon_of_Hubris_2VN3BftageoTTIzu.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 92, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784249, - "modifiedTime": 1755259462532, + "modifiedTime": 1755385382792, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2VN3BftageoTTIzu", @@ -247,7 +252,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -427,7 +431,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -522,7 +525,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json b/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json index d20f1f18..049dd77a 100644 --- a/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json +++ b/src/packs/adversaries/adversary_Demon_of_Jealousy_SxSOkM4bcVOFyjbo.json @@ -71,7 +71,7 @@ } }, "tier": 3, - "description": "

fickle creature of spindly limbs and insatiable desires.

", + "description": "

A fickle creature of spindly limbs and insatiable desires.

", "attack": { "name": "Psychic Assault", "roll": { @@ -112,6 +112,11 @@ "img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 92, + "artist": "" } }, "flags": {}, @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753922784249, - "modifiedTime": 1755259462726, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1760381460345, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_id": "SxSOkM4bcVOFyjbo", "sort": 3400000, @@ -313,7 +318,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json b/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json index 0948c917..027383e2 100644 --- a/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json +++ b/src/packs/adversaries/adversary_Demon_of_Wrath_5lphJAgzoqZI3VoG.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 92, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784252, - "modifiedTime": 1755259462568, + "modifiedTime": 1755385398938, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5lphJAgzoqZI3VoG", @@ -280,7 +285,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -344,7 +348,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json b/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json index bd8fa5e9..7ce790e3 100644 --- a/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json +++ b/src/packs/adversaries/adversary_Demonic_Hound_Pack_NoRZ1PqB8N5wcIw0.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784253, - "modifiedTime": 1755264935543, + "modifiedTime": 1755385087255, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "NoRZ1PqB8N5wcIw0", @@ -353,7 +358,77 @@ "system": { "description": "

When the Pack makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "BApDkAKPfyBkqrKY": { + "type": "healing", + "_id": "BApDkAKPfyBkqrKY", + "systemPath": "actions", + "description": "

When the Pack makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -371,12 +446,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754077119018, - "modifiedTime": 1754077139008, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760211234576, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!NoRZ1PqB8N5wcIw0.3mOBJE5c3cP2cGP1" } diff --git a/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json b/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json index 6e2f68a7..22408c0e 100644 --- a/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json +++ b/src/packs/adversaries/adversary_Dire_Bat_tBWHW00epmMnkawe.json @@ -111,6 +111,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 93, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784253, - "modifiedTime": 1755266383523, + "modifiedTime": 1755385409189, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tBWHW00epmMnkawe", @@ -416,7 +421,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json b/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json index 71a12698..ebd87834 100644 --- a/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json +++ b/src/packs/adversaries/adversary_Dire_Wolf_wNzeuQLfLUMvgHlQ.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784257, - "modifiedTime": 1755259591554, + "modifiedTime": 1755384380804, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wNzeuQLfLUMvgHlQ", @@ -243,12 +248,13 @@ "systemPath": "actions", "description": "

If the Wolf makes a successful standard attack and another Dire Wolf is within Melee range of the target, deal 1d6+5 physical damage instead of their standard damage and you gain a Fear.

", "chatDisplay": true, - "actionType": "action", + "actionType": "passive", "cost": [], "uses": { "value": null, "max": "", - "recovery": null + "recovery": null, + "consumeOnSuccess": false }, "damage": { "parts": [ @@ -325,12 +331,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754044226022, - "modifiedTime": 1754143967972, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760209346410, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!wNzeuQLfLUMvgHlQ.wQXEnMqrl2jo91oy" }, @@ -355,7 +361,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json b/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json index c899f15b..7bc91293 100644 --- a/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json +++ b/src/packs/adversaries/adversary_Dryad_wR7cFKrHvRzbzhBT.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 93, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784258, - "modifiedTime": 1755259462937, + "modifiedTime": 1755385415645, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wR7cFKrHvRzbzhBT", @@ -247,7 +252,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -388,7 +392,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -452,7 +455,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json b/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json index 87d1999c..0412ba4b 100644 --- a/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json +++ b/src/packs/adversaries/adversary_Electric_Eels_TLzY1nDw0Bu9Ud40.json @@ -106,6 +106,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784258, - "modifiedTime": 1755264962798, + "modifiedTime": 1755385098856, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "TLzY1nDw0Bu9Ud40", @@ -274,7 +279,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json b/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json index 227a40af..618323ce 100644 --- a/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json +++ b/src/packs/adversaries/adversary_Elemental_Spark_P7h54ZePFPHpYwvB.json @@ -99,6 +99,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 93, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784259, - "modifiedTime": 1755259462705, + "modifiedTime": 1755385425940, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "P7h54ZePFPHpYwvB", @@ -267,7 +272,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json b/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json index 872f0398..145b2534 100644 --- a/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json +++ b/src/packs/adversaries/adversary_Elite_Soldier_bfhVWMBUh61b9J6n.json @@ -138,6 +138,11 @@ "difficulty": null, "damageMod": "none" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -147,9 +152,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754090776362, - "modifiedTime": 1755259462811, + "modifiedTime": 1755385106827, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { @@ -272,7 +277,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -386,7 +390,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json b/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json index 491e085d..96efe6c6 100644 --- a/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json +++ b/src/packs/adversaries/adversary_Failed_Experiment_ChwwVqowFw8hJQwT.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 86, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784262, - "modifiedTime": 1755265009751, + "modifiedTime": 1755385114729, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ChwwVqowFw8hJQwT", @@ -365,7 +370,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json b/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json index 2b4aea79..f1652c33 100644 --- a/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json +++ b/src/packs/adversaries/adversary_Fallen_Shock_Troop_OsLG2BjaEdTZUJU9.json @@ -99,6 +99,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 97, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784264, - "modifiedTime": 1755259462703, + "modifiedTime": 1755385629418, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "OsLG2BjaEdTZUJU9", @@ -353,7 +358,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json b/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json index 2dece191..a49ac9e1 100644 --- a/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json +++ b/src/packs/adversaries/adversary_Fallen_Sorcerer_PELRry1vqjBzSAlr.json @@ -112,6 +112,11 @@ "img": "icons/weapons/staves/staff-animal-skull-bull.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 97, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784265, - "modifiedTime": 1755259462708, + "modifiedTime": 1755385635754, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "PELRry1vqjBzSAlr", @@ -247,7 +252,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json b/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json index aa8b015e..2b44b8df 100644 --- a/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json +++ b/src/packs/adversaries/adversary_Fallen_Warlord__Realm_Breaker_hxZ0sgoFJubh5aj6.json @@ -1,6 +1,6 @@ { "folder": "7XHlANCPz18yvl5L", - "name": "Fallen Warlord: Realm Breaker", + "name": "Fallen Warlord: Realm-Breaker", "type": "adversary", "_id": "hxZ0sgoFJubh5aj6", "img": "systems/daggerheart/assets/icons/documents/actors/dragon-head.svg", @@ -155,7 +155,12 @@ } } }, - "motivesAndTactics": "Corrupt, dominate, punish, break the weak" + "motivesAndTactics": "Corrupt, dominate, punish, break the weak", + "attribution": { + "source": "Daggerheart SRD", + "page": 97, + "artist": "" + } }, "prototypeToken": { "name": "Fallen Warlord: Realm Breaker", @@ -258,7 +263,40 @@ "system": { "description": "

The Realm-Breaker can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "9IHzeKjP35M5jj3b": { + "type": "effect", + "_id": "9IHzeKjP35M5jj3b", + "systemPath": "actions", + "description": "

The Realm-Breaker can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "1", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -276,12 +314,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754134022685, - "modifiedTime": 1754134047203, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760382854734, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!hxZ0sgoFJubh5aj6.feb6vTfDsi1yQLpn" }, @@ -384,7 +422,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -740,12 +777,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753929378070, - "modifiedTime": 1755259462847, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1760382818455, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors!hxZ0sgoFJubh5aj6" } diff --git a/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json b/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json index c32e7f1d..5e1beba4 100644 --- a/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json +++ b/src/packs/adversaries/adversary_Fallen_Warlord__Undefeated_Champion_RXkZTwBRi4dJ3JE5.json @@ -153,9 +153,15 @@ "bonus": 0, "dice": [] } - } + }, + "chatDisplay": false }, - "motivesAndTactics": "Dispatch merciless death, punish the defiant, secure victory at any cost" + "motivesAndTactics": "Dispatch merciless death, punish the defi ant, secure victory at any cost", + "attribution": { + "source": "Daggerheart SRD", + "page": 98, + "artist": "" + } }, "prototypeToken": { "name": "Fallen Warlord: Undefeated Champion", @@ -258,7 +264,40 @@ "system": { "description": "

The Undefeated Champion can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "BoDTEH8Y6i9G1d4R": { + "type": "effect", + "_id": "BoDTEH8Y6i9G1d4R", + "systemPath": "actions", + "description": "

The Undefeated Champion can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "2", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -276,12 +315,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754135392829, - "modifiedTime": 1754135407562, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760382917596, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!RXkZTwBRi4dJ3JE5.ct5vhSsNP25arggo" }, @@ -491,7 +530,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -672,7 +710,77 @@ "system": { "description": "

When the Undefeated Champion makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "i1Wmh6Mok4Qsur00": { + "type": "healing", + "_id": "i1Wmh6Mok4Qsur00", + "systemPath": "actions", + "description": "

When the Undefeated Champion makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -690,12 +798,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754135803929, - "modifiedTime": 1754135822414, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760382961713, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!RXkZTwBRi4dJ3JE5.ReWtcLE5akrSauI1" }, @@ -797,12 +905,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.1.2", + "systemVersion": "1.0.5", "createdTime": 1753929476879, - "modifiedTime": 1757391211587, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1755385652290, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!RXkZTwBRi4dJ3JE5" } diff --git a/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json b/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json index 2408d7cd..5c09cd95 100644 --- a/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json +++ b/src/packs/adversaries/adversary_Giant_Beastmaster_8VZIgU12cB3cvlyH.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 87, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784268, - "modifiedTime": 1755259462604, + "modifiedTime": 1755385128275, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8VZIgU12cB3cvlyH", diff --git a/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json b/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json index db039085..c84905d0 100644 --- a/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json +++ b/src/packs/adversaries/adversary_Giant_Brawler_YnObCleGjPT7yqEc.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 87, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784268, - "modifiedTime": 1755259462794, + "modifiedTime": 1755385135374, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YnObCleGjPT7yqEc", @@ -247,7 +252,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -456,7 +460,77 @@ "system": { "description": "

When the Brawler makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "U2AfyadkJluHXA4r": { + "type": "healing", + "_id": "U2AfyadkJluHXA4r", + "systemPath": "actions", + "description": "

When the Brawler makes a successful attack against a PC you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -474,12 +548,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754078789986, - "modifiedTime": 1754078804616, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760380456232, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!YnObCleGjPT7yqEc.B0EniYxyLvjJSqYb" } diff --git a/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json b/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json index a281a775..f400054b 100644 --- a/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json +++ b/src/packs/adversaries/adversary_Giant_Eagle_OMQ0v6PE8s1mSU0K.json @@ -138,6 +138,11 @@ "difficulty": null, "damageMod": "none" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 87, + "artist": "" } }, "flags": {}, @@ -147,9 +152,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1754090770908, - "modifiedTime": 1755265221515, + "modifiedTime": 1755385144098, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { @@ -354,7 +359,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json b/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json index 1cc50da4..82a37f5f 100644 --- a/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json +++ b/src/packs/adversaries/adversary_Giant_Mosquitoes_IIWV4ysJPFPnTP7W.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784269, - "modifiedTime": 1755259619874, + "modifiedTime": 1755384391635, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "IIWV4ysJPFPnTP7W", @@ -229,7 +234,7 @@ }, "items": [ { - "name": "Horde (1d4+1)", + "name": "Horde", "type": "feature", "_id": "9RduwBLYcBaiouYk", "img": "icons/creatures/magical/humanoid-silhouette-aliens-green.webp", @@ -253,12 +258,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754044549944, - "modifiedTime": 1754044591579, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760032064905, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!IIWV4ysJPFPnTP7W.9RduwBLYcBaiouYk" }, @@ -369,7 +374,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json b/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json index e4330c68..4234430c 100644 --- a/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json +++ b/src/packs/adversaries/adversary_Giant_Rat_4PfLnaCrOcMdb4dK.json @@ -105,6 +105,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -114,9 +119,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784270, - "modifiedTime": 1755259636506, + "modifiedTime": 1755384399993, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "4PfLnaCrOcMdb4dK", @@ -276,7 +281,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json b/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json index 09a3fe45..ca8aad39 100644 --- a/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json +++ b/src/packs/adversaries/adversary_Giant_Recruit_5s8wSvpyC5rxY5aD.json @@ -99,6 +99,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 87, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784271, - "modifiedTime": 1755259462570, + "modifiedTime": 1755385156358, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5s8wSvpyC5rxY5aD", @@ -265,10 +270,11 @@ "cost": [ { "scalable": false, - "key": "stress", + "key": "fear", "value": 1, "keyIsID": false, - "step": null + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -281,7 +287,7 @@ "type": "self", "amount": null }, - "name": "Mark Stress", + "name": "Spend Fear", "img": "icons/creatures/abilities/tail-strike-bone-orange.webp", "range": "" } @@ -303,12 +309,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754079291678, - "modifiedTime": 1754142639306, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760380537296, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!5s8wSvpyC5rxY5aD.FMgB28X1LammRInU" } diff --git a/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json b/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json index 6337dc1c..d9573d60 100644 --- a/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json +++ b/src/packs/adversaries/adversary_Giant_Scorpion_fmfntuJ8mHRCAktP.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 76, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784272, - "modifiedTime": 1755259666128, + "modifiedTime": 1755384410923, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "fmfntuJ8mHRCAktP", @@ -249,7 +254,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -510,7 +514,77 @@ "system": { "description": "

When the Scorpion makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "1Fn4rvhueQoMXqFc": { + "type": "healing", + "_id": "1Fn4rvhueQoMXqFc", + "systemPath": "actions", + "description": "

When the Scorpion makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "action", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -527,12 +601,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754047039345, - "modifiedTime": 1754047066840, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760032201996, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!fmfntuJ8mHRCAktP.TmDpAY5t3PjhEv9K" } diff --git a/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json b/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json index f82aa34f..31b3721c 100644 --- a/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json +++ b/src/packs/adversaries/adversary_Glass_Snake_8KWVLWXFhlY2kYx0.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784273, - "modifiedTime": 1755259462600, + "modifiedTime": 1755384427339, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8KWVLWXFhlY2kYx0", @@ -330,7 +335,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -444,7 +448,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json b/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json index 57cb1760..5b7ad344 100644 --- a/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json +++ b/src/packs/adversaries/adversary_Gorgon_8mJYMpbLTb8qIOrr.json @@ -112,6 +112,11 @@ "img": "icons/weapons/bows/shortbow-recurve-yellow.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 88, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784274, - "modifiedTime": 1755259462608, + "modifiedTime": 1755385192601, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8mJYMpbLTb8qIOrr", @@ -234,7 +239,40 @@ "system": { "description": "

The Gorgon can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "GSYD7y0ywAqyKUfm": { + "type": "effect", + "_id": "GSYD7y0ywAqyKUfm", + "systemPath": "actions", + "description": "

The Gorgon can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "1", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -252,12 +290,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754079428160, - "modifiedTime": 1754079447238, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760380620538, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!8mJYMpbLTb8qIOrr.OqE6hBijxAkn5gIm" }, @@ -518,7 +556,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -593,7 +630,77 @@ "system": { "description": "

When the Gorgon makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "V6tkBYSjOt1LZCkp": { + "type": "healing", + "_id": "V6tkBYSjOt1LZCkp", + "systemPath": "actions", + "description": "

When the Gorgon makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -611,12 +718,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754079744174, - "modifiedTime": 1754079759538, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760380666298, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!8mJYMpbLTb8qIOrr.IRIaFxFughjXVu0Y" } diff --git a/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json b/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json index d4554bf9..0549c81e 100644 --- a/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json +++ b/src/packs/adversaries/adversary_Greater_Earth_Elemental_dsfB3YhoL5SudvS2.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 93, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784275, - "modifiedTime": 1755259462829, + "modifiedTime": 1755385432586, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dsfB3YhoL5SudvS2", @@ -264,14 +269,14 @@ "name": "Crushing Blows", "type": "feature", "system": { - "description": "

When the Elemental makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Elemental makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "resource": null, "actions": { "0sXciTiPc30v8czv": { "type": "damage", "_id": "0sXciTiPc30v8czv", "systemPath": "actions", - "description": "

When the Elemental makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Elemental makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -337,12 +342,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.346", "systemId": "daggerheart", - "systemVersion": "1.1.2", + "systemVersion": "0.0.1", "createdTime": 1754127683751, - "modifiedTime": 1756511006257, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1754127795809, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!actors.items!dsfB3YhoL5SudvS2.NnCkXIuATO0s3tSR" }, @@ -450,7 +455,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -604,7 +608,77 @@ "system": { "description": "

When the Elemental makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "FPIpslusIeVQGdnb": { + "type": "healing", + "_id": "FPIpslusIeVQGdnb", + "systemPath": "actions", + "description": "

When the Elemental makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -622,12 +696,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754127921154, - "modifiedTime": 1754127937379, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760381537218, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!dsfB3YhoL5SudvS2.ag7t5EW358M0qiSL" } diff --git a/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json b/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json index 57dbc48b..e8fcd0ce 100644 --- a/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json +++ b/src/packs/adversaries/adversary_Greater_Water_Elemental_xIICT6tEdnA7dKDV.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 93, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784278, - "modifiedTime": 1755259462945, + "modifiedTime": 1755385438845, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xIICT6tEdnA7dKDV", @@ -241,7 +246,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -413,7 +417,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -554,7 +557,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json b/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json index 253da042..c359782a 100644 --- a/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json +++ b/src/packs/adversaries/adversary_Green_Ooze_SHXedd9zZPVfUgUa.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784278, - "modifiedTime": 1755259726565, + "modifiedTime": 1755384442882, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "SHXedd9zZPVfUgUa", @@ -558,7 +563,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json b/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json index fe3f0050..4cf17ff5 100644 --- a/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json +++ b/src/packs/adversaries/adversary_Hallowed_Archer_kabueAo6BALApWqp.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 98, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784279, - "modifiedTime": 1755259462863, + "modifiedTime": 1755385664307, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kabueAo6BALApWqp", @@ -274,7 +279,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json b/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json index 944e53aa..82d74b93 100644 --- a/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json +++ b/src/packs/adversaries/adversary_Hallowed_Soldier_VENwg7xEFcYObjmT.json @@ -99,6 +99,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 98, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784279, - "modifiedTime": 1755266855456, + "modifiedTime": 1755385672764, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VENwg7xEFcYObjmT", @@ -267,7 +272,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -331,7 +335,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json b/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json index b0c3f125..c4f94d8e 100644 --- a/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json +++ b/src/packs/adversaries/adversary_Harrier_uRtghKE9mHlII4rs.json @@ -111,6 +111,11 @@ "img": "icons/weapons/polearms/spear-hooked-rounded.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784281, - "modifiedTime": 1755259462930, + "modifiedTime": 1755384460991, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uRtghKE9mHlII4rs", @@ -282,7 +287,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json b/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json index a5ebb68c..a191ee03 100644 --- a/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json +++ b/src/packs/adversaries/adversary_Head_Guard_mK3A5FTx6k8iPU3F.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784282, - "modifiedTime": 1755259874457, + "modifiedTime": 1755384472544, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "mK3A5FTx6k8iPU3F", @@ -254,7 +259,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -328,7 +332,7 @@ "_id": "YeJ7eJVCKsRxG8mk", "img": "icons/skills/ranged/target-bullseye-arrow-blue.webp", "system": { - "description": "

Countdown (5). When the Head Guard is in the spotlight for the fi rst time, activate the countdown. It ticks down when a PC makes an attack roll. When it triggers, all Archer Guards within Far range make a standard attack with advantage against the nearest target within their range. If any attacks succeed on the same target, combine their damage.

@Template[type:emanation|range:f]

", + "description": "

Countdown (5). When the Head Guard is in the spotlight for the first time, activate the countdown. It ticks down when a PC makes an attack roll. When it triggers, all Archer Guards within Far range make a standard attack with advantage against the nearest target within their range. If any attacks succeed on the same target, combine their damage.

@Template[type:emanation|range:f]

", "resource": null, "actions": {}, "originItemType": null, @@ -347,12 +351,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754048119625, - "modifiedTime": 1754048254827, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760209562267, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!mK3A5FTx6k8iPU3F.YeJ7eJVCKsRxG8mk" }, @@ -364,7 +368,77 @@ "system": { "description": "

When the Head Guard makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "tD1hAwP6scxXrouw": { + "type": "healing", + "_id": "tD1hAwP6scxXrouw", + "systemPath": "actions", + "description": "

When the Head Guard makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -381,12 +455,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754048263819, - "modifiedTime": 1754048279307, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760209526360, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!mK3A5FTx6k8iPU3F.sd2OlhLchyoqeKke" } diff --git a/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json b/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json index 0abf7cdb..c6a3c141 100644 --- a/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json +++ b/src/packs/adversaries/adversary_Head_Vampire_i2UNbRvgyoSs07M6.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 95, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784283, - "modifiedTime": 1755266472641, + "modifiedTime": 1755385468446, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "i2UNbRvgyoSs07M6", @@ -514,7 +519,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json b/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json index c2e5c886..bfa94db3 100644 --- a/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json +++ b/src/packs/adversaries/adversary_High_Seraph_r1mbfSSwKWdcFdAU.json @@ -112,6 +112,11 @@ "img": "icons/skills/melee/strike-blade-hooked-orange-blue.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 98, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784283, - "modifiedTime": 1755259462909, + "modifiedTime": 1755385681541, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "r1mbfSSwKWdcFdAU", @@ -234,7 +239,40 @@ "system": { "description": "

The Seraph can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "7oqXSF66R2GlB17O": { + "type": "effect", + "_id": "7oqXSF66R2GlB17O", + "systemPath": "actions", + "description": "

The Seraph can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "2", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -252,12 +290,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754136398491, - "modifiedTime": 1754136414914, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760383034711, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!r1mbfSSwKWdcFdAU.jUu058IZwt4u2goM" }, @@ -280,7 +318,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -450,7 +487,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -565,7 +601,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json b/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json index 6a986acd..d9efc9fb 100644 --- a/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json +++ b/src/packs/adversaries/adversary_Huge_Green_Ooze_6hbqmxDXFOzZJDk4.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 94, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784284, - "modifiedTime": 1755266545039, + "modifiedTime": 1755385452708, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "6hbqmxDXFOzZJDk4", @@ -270,14 +275,14 @@ "name": "Acidic Form", "type": "feature", "system": { - "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "resource": null, "actions": { "gtT2oHSyZg9OHHJD": { "type": "damage", "_id": "gtT2oHSyZg9OHHJD", "systemPath": "actions", - "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -343,12 +348,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.346", "systemId": "daggerheart", - "systemVersion": "1.1.2", + "systemVersion": "0.0.1", "createdTime": 1754129153649, - "modifiedTime": 1756510982337, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1754129204931, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!actors.items!6hbqmxDXFOzZJDk4.BQsVuuwFYByKwesR" }, @@ -527,7 +532,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json b/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json index 170b55a1..2373db4d 100644 --- a/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json +++ b/src/packs/adversaries/adversary_Hydra_MI126iMOOobQ1Obn.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 94, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784285, - "modifiedTime": 1755259462679, + "modifiedTime": 1755385485548, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "MI126iMOOobQ1Obn", @@ -264,7 +269,7 @@ "name": "Relentless (X)", "type": "feature", "system": { - "description": "

The Hydra can be spotlighted X times per GM turn, where X is the Hydra’s number of heads. Spend Fear as usual to spotlight them.

", + "description": "

The Hydra can be spotlighted X times per GM turn, where X is the Hydra’s number of heads. Spend Fear as usual to spotlight them.

Note: Automation is not added so manually spend fear as per text.

", "resource": null, "actions": {}, "originItemType": null, @@ -284,12 +289,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754129556390, - "modifiedTime": 1754129579457, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760381891609, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!MI126iMOOobQ1Obn.nwIjDjpLGfuXNYvA" }, @@ -312,7 +317,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json b/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json index 1c8d59c6..9affbacd 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Bandit_5Lh1T0zaT8Pkr2U2.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 77, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784290, - "modifiedTime": 1755259904640, + "modifiedTime": 1755384483511, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5Lh1T0zaT8Pkr2U2", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json b/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json index 6ecc3fdd..e1314bb1 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Hexer_MbBPIOxaxXYNApXz.json @@ -111,6 +111,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784291, - "modifiedTime": 1755259462688, + "modifiedTime": 1755384496776, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "MbBPIOxaxXYNApXz", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json b/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json index 0d5e2133..96f25b1c 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Kneebreaker_CBKixLH3yhivZZuL.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784292, - "modifiedTime": 1755259941370, + "modifiedTime": 1755384505324, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CBKixLH3yhivZZuL", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json b/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json index a7caeeee..edf8f3ea 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Lackey_C0OMQqV7pN6t7ouR.json @@ -105,6 +105,11 @@ "stress": { "max": 1 } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -114,9 +119,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784293, - "modifiedTime": 1755259961931, + "modifiedTime": 1755384512770, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "C0OMQqV7pN6t7ouR", @@ -276,7 +281,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json b/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json index c551f836..00eb61bb 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Lieutenant_aTljstqteGoLpCBq.json @@ -111,6 +111,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -120,9 +125,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784294, - "modifiedTime": 1755259462803, + "modifiedTime": 1755384520025, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "aTljstqteGoLpCBq", @@ -248,7 +253,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -298,7 +302,7 @@ "_id": "Mo91w4ccffcmBPt5", "img": "icons/magic/control/silhouette-hold-beam-blue.webp", "system": { - "description": "

Summon three Jagged Knife Lackeys, who appear at Far range.

", + "description": "

Summon three @Compendium[daggerheart.adversaries.Actor.C0OMQqV7pN6t7ouR], who appear at Far range.

", "resource": null, "actions": {}, "originItemType": null, @@ -317,12 +321,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754049041008, - "modifiedTime": 1754049075688, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760209967742, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!aTljstqteGoLpCBq.Mo91w4ccffcmBPt5" }, @@ -347,7 +351,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -475,7 +478,77 @@ "system": { "description": "

When the Lieutenant makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "GSjfSgBzyhbVcpbt": { + "type": "healing", + "_id": "GSjfSgBzyhbVcpbt", + "systemPath": "actions", + "description": "

When the Lieutenant makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "action", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -492,12 +565,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754049157702, - "modifiedTime": 1754049175516, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760032394994, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!aTljstqteGoLpCBq.uelnRgGStjJ27VtO" } diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json b/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json index d3acab90..535d1564 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Shadow_XF4tYTq9nPJAy2ox.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784295, - "modifiedTime": 1755260040062, + "modifiedTime": 1755384529543, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "XF4tYTq9nPJAy2ox", diff --git a/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json b/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json index b08f3922..e62b5264 100644 --- a/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json +++ b/src/packs/adversaries/adversary_Jagged_Knife_Sniper_1zuyof1XuIfi3aMG.json @@ -39,7 +39,8 @@ "experiences": { "GLqSqPJcyKHQYMtO": { "name": "Stealth", - "value": 2 + "value": 2, + "description": "" } }, "bonuses": { @@ -70,7 +71,7 @@ }, "tier": 1, "description": "

A lanky bandit striking from cover with a shortbow.

", - "motivesAndTactics": "Ambush, hide, profi t, reposition", + "motivesAndTactics": "Ambush, hide, profit, reposition", "attack": { "name": "Shortbow", "img": "icons/weapons/bows/shortbow-leather.webp", @@ -111,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 78, + "artist": "" } }, "flags": {}, @@ -118,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753922784296, - "modifiedTime": 1755259462527, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1760032469625, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_id": "1zuyof1XuIfi3aMG", "sort": 300000, diff --git a/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json b/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json index 51740ec5..77b107ec 100644 --- a/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json +++ b/src/packs/adversaries/adversary_Juvenile_Flickerfly_MYXmTx2FHcIjdfYZ.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 88, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784297, - "modifiedTime": 1755259462684, + "modifiedTime": 1755385201114, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "MYXmTx2FHcIjdfYZ", @@ -228,7 +233,40 @@ "system": { "description": "

The Flickerfly can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "FgoP6tlMUxnv5k4Z": { + "type": "effect", + "_id": "FgoP6tlMUxnv5k4Z", + "systemPath": "actions", + "description": "

The Flickerfly can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "2", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -246,12 +284,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754080169421, - "modifiedTime": 1754080186529, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760380729020, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!MYXmTx2FHcIjdfYZ.6SnqNCeSEY7Q2tSI" }, diff --git a/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json b/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json index 86757347..31fa44f3 100644 --- a/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json +++ b/src/packs/adversaries/adversary_Knight_of_the_Realm_7ai2opemrclQe3VF.json @@ -122,6 +122,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 88, + "artist": "" } }, "flags": {}, @@ -131,9 +136,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784302, - "modifiedTime": 1755265352331, + "modifiedTime": 1755385208695, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "7ai2opemrclQe3VF", @@ -557,7 +562,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json b/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json index d0b014eb..32282950 100644 --- a/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json +++ b/src/packs/adversaries/adversary_Kraken_4nqv3ZwJGjnmic8j.json @@ -112,6 +112,11 @@ "img": "icons/creatures/tentacles/tentacles-octopus-black-pink.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 99, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784303, - "modifiedTime": 1755259462553, + "modifiedTime": 1755385695905, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "4nqv3ZwJGjnmic8j", @@ -234,7 +239,40 @@ "system": { "description": "

The Kraken can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "420LQBs27zQTAXfY": { + "type": "effect", + "_id": "420LQBs27zQTAXfY", + "systemPath": "actions", + "description": "

The Kraken can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "2", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -252,12 +290,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754136773170, - "modifiedTime": 1754136792851, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760383087323, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!4nqv3ZwJGjnmic8j.1YxbPc8C0X64w1JN" }, @@ -538,9 +576,79 @@ "name": "Momentum", "type": "feature", "system": { - "description": "

When the Kraken makes a successful attack against a PC, you gain a Fear.

", + "description": "

When the Kraken makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "hXQtIGmSaWKMOuFB": { + "type": "healing", + "_id": "hXQtIGmSaWKMOuFB", + "systemPath": "actions", + "description": "

When the Kraken makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -558,12 +666,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754137017535, - "modifiedTime": 1754137033162, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760383121099, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!4nqv3ZwJGjnmic8j.m4aybzb8tXWHelDU" } diff --git a/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json b/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json index a316a402..7d16e606 100644 --- a/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json +++ b/src/packs/adversaries/adversary_Masked_Thief_niBpVU7yeo5ccskE.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 88, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784304, - "modifiedTime": 1755265377045, + "modifiedTime": 1755385217678, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "niBpVU7yeo5ccskE", diff --git a/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json b/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json index 26b1374b..f6594bf7 100644 --- a/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json +++ b/src/packs/adversaries/adversary_Master_Assassin_dNta0cUzr96xcFhf.json @@ -117,6 +117,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784305, - "modifiedTime": 1755259462821, + "modifiedTime": 1755384999362, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dNta0cUzr96xcFhf", @@ -285,7 +290,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -349,7 +353,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -400,7 +403,77 @@ "system": { "description": "

When the Assassin makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "7EP5X5kodzMCBQZO": { + "type": "healing", + "_id": "7EP5X5kodzMCBQZO", + "systemPath": "actions", + "description": "

When the Assassin makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -418,12 +491,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754081711789, - "modifiedTime": 1754081721415, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760380850027, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!dNta0cUzr96xcFhf.PcNgHScmTd9l3exN" } diff --git a/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json b/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json index 1f3826ca..c11a9313 100644 --- a/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json +++ b/src/packs/adversaries/adversary_Merchant_Al3w2CgjfdT3p9ma.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 79, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784305, - "modifiedTime": 1755263103972, + "modifiedTime": 1755384552277, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Al3w2CgjfdT3p9ma", diff --git a/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json b/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json index 97f6a052..315f6039 100644 --- a/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json +++ b/src/packs/adversaries/adversary_Merchant_Baron_Vy02IhGhkJLuezu4.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 88, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784306, - "modifiedTime": 1755265400782, + "modifiedTime": 1755385228380, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Vy02IhGhkJLuezu4", @@ -358,7 +363,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json b/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json index 810359dd..ed5deb22 100644 --- a/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json +++ b/src/packs/adversaries/adversary_Minor_Chaos_Elemental_sRn4bqerfARvhgSV.json @@ -106,6 +106,11 @@ "range": "close", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 79, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784307, - "modifiedTime": 1755259462919, + "modifiedTime": 1755384563851, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "sRn4bqerfARvhgSV", @@ -329,7 +334,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null } ], @@ -476,7 +480,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -593,7 +596,77 @@ "system": { "description": "

When the Elemental makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "zpQIB9z9kK2BlfqZ": { + "type": "healing", + "_id": "zpQIB9z9kK2BlfqZ", + "systemPath": "actions", + "description": "

When the Elemental makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "action", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -610,12 +683,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754050010657, - "modifiedTime": 1754050027337, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760032579019, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!sRn4bqerfARvhgSV.JqRfb0IZ3aJrVazI" } diff --git a/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json b/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json index 9b4e8594..e74ef329 100644 --- a/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json +++ b/src/packs/adversaries/adversary_Minor_Demon_3tqCjDwJAQ7JKqMb.json @@ -105,6 +105,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 79, + "artist": "" } }, "flags": {}, @@ -114,9 +119,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784308, - "modifiedTime": 1755259462544, + "modifiedTime": 1755384577384, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "3tqCjDwJAQ7JKqMb", @@ -229,7 +234,40 @@ "system": { "description": "

The Demon can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "lfYFbb71wWaR8DJs": { + "type": "effect", + "_id": "lfYFbb71wWaR8DJs", + "systemPath": "actions", + "description": "

The Demon can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "1", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -246,12 +284,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754050072926, - "modifiedTime": 1754050089194, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760032900622, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!3tqCjDwJAQ7JKqMb.4xoydX3YwsLujuaI" }, @@ -363,7 +401,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -479,7 +516,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -531,7 +567,77 @@ "system": { "description": "

When the Demon makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "Cmd4f2gfxgOZsN6f": { + "type": "healing", + "_id": "Cmd4f2gfxgOZsN6f", + "systemPath": "actions", + "description": "

When the Demon makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "action", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -548,12 +654,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754050318009, - "modifiedTime": 1754050337233, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760032781589, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!3tqCjDwJAQ7JKqMb.w400aHTlADxDihpt" } diff --git a/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json b/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json index fa4b9828..c765d55a 100644 --- a/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json +++ b/src/packs/adversaries/adversary_Minor_Fire_Elemental_DscWkNVoHak6P4hh.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 79, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784308, - "modifiedTime": 1755259462650, + "modifiedTime": 1755384584836, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "DscWkNVoHak6P4hh", @@ -230,7 +235,31 @@ "system": { "description": "

The Elemental can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "oFsBEbdXCpX9XLQy": { + "type": "effect", + "_id": "oFsBEbdXCpX9XLQy", + "systemPath": "actions", + "description": "

The Elemental can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [], + "uses": { + "value": 0, + "max": "1", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -247,12 +276,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754050392983, - "modifiedTime": 1754050410908, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760032886801, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!DscWkNVoHak6P4hh.c1jcZZD616J5Y4Mb" }, @@ -277,7 +306,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -393,7 +421,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -670,7 +697,77 @@ "system": { "description": "

When the Elemental makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "rPj1Wf22Kai3eBCv": { + "type": "healing", + "_id": "rPj1Wf22Kai3eBCv", + "systemPath": "actions", + "description": "

When the Elemental makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -687,12 +784,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754050716542, - "modifiedTime": 1754050733981, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760210142488, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!DscWkNVoHak6P4hh.kssnXljBaV31iX58" } diff --git a/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json b/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json index 8e05e6fe..b5ca05c9 100644 --- a/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json +++ b/src/packs/adversaries/adversary_Minor_Treant_G62k4oSkhkoXEs2D.json @@ -99,6 +99,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784309, - "modifiedTime": 1755263168654, + "modifiedTime": 1755384597383, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "G62k4oSkhkoXEs2D", @@ -270,7 +275,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json b/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json index 67cca4a4..ac3766d3 100644 --- a/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json +++ b/src/packs/adversaries/adversary_Minotaur_Wrecker_rM9qCIYeWg9I0B4l.json @@ -106,6 +106,11 @@ "img": "icons/weapons/axes/axe-double.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 89, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784310, - "modifiedTime": 1755259462912, + "modifiedTime": 1755385247589, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rM9qCIYeWg9I0B4l", @@ -241,7 +246,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -305,7 +309,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json b/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json index 8e84e0ec..b4868595 100644 --- a/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json +++ b/src/packs/adversaries/adversary_Monarch_yx0vK2yfNVZKWUUi.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 94, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784312, - "modifiedTime": 1755266608082, + "modifiedTime": 1755385492928, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "yx0vK2yfNVZKWUUi", @@ -285,7 +290,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -349,7 +353,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json b/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json index fa72fea6..8c2332aa 100644 --- a/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json +++ b/src/packs/adversaries/adversary_Mortal_Hunter_mVV7a7KQAORoPMgZ.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 89, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784313, - "modifiedTime": 1755259462879, + "modifiedTime": 1755385255652, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "mVV7a7KQAORoPMgZ", @@ -333,7 +338,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -447,7 +451,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json b/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json index 22cbc3d3..14b7e7b0 100644 --- a/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json +++ b/src/packs/adversaries/adversary_Oak_Treant_XK78QUfY8c8Go8Uv.json @@ -106,6 +106,11 @@ "type": "attack", "chatDisplay": false }, + "attribution": { + "source": "Daggerheart SRD", + "page": 95, + "artist": "" + }, "motivesAndTactics": "Hide in plain sight, preserve the forest, root down, swing branches" }, "flags": {}, @@ -113,12 +118,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "1.1.2", "createdTime": 1753922784314, - "modifiedTime": 1757057641714, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1760382572320, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_id": "XK78QUfY8c8Go8Uv", "sort": 3400000, @@ -221,7 +226,263 @@ "appendNumber": false, "prependAdjective": false }, - "items": [], + "items": [ + { + "name": "Just a Tree", + "type": "feature", + "system": { + "description": "

Before they make their first attack in a fight or after they become Hidden the Treant is indistinguishable from other trees until they next act or a PC succeeds on an Instinct Roll to identify them.

", + "resource": null, + "actions": {}, + "originItemType": null, + "multiclassOrigin": false + }, + "_id": "ERco8urSuHgrtnzL", + "img": "icons/environment/wilderness/tree-spruce-green.webp", + "effects": [], + "folder": null, + "sort": 0, + "ownership": { + "default": 0, + "fBcTgyTzoARBvohY": 3 + }, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.350", + "systemId": "daggerheart", + "systemVersion": "1.1.2", + "createdTime": 1760381988359, + "modifiedTime": 1760382038663, + "lastModifiedBy": "fBcTgyTzoARBvohY" + }, + "_key": "!actors.items!XK78QUfY8c8Go8Uv.ERco8urSuHgrtnzL" + }, + { + "name": "Seed Barrage", + "type": "feature", + "system": { + "description": "

Mark a Stress and make an attack against up to three targets within Close range pummeling them with giant acorns Targets the Treant succeeds against take 2d10+5 physical damage.

", + "resource": null, + "actions": { + "cM5BBUSFxOHBsV2G": { + "type": "damage", + "_id": "cM5BBUSFxOHBsV2G", + "systemPath": "actions", + "description": "

Mark a Stress and make an attack against up to three targets within Close range pummeling them with giant acorns Targets the Treant succeeds against take 2d10+5 physical damage.

", + "chatDisplay": true, + "actionType": "action", + "cost": [ + { + "scalable": false, + "key": "stress", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": false, + "formula": "" + }, + "flatMultiplier": 2, + "dice": "d10", + "bonus": 5, + "multiplier": "flat" + }, + "applyTo": "hitPoints", + "type": [ + "physical" + ], + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + } + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": 3 + }, + "effects": [], + "name": "Mark Stress", + "img": "icons/consumables/nuts/nut-spiked-shell.webp", + "range": "close" + } + }, + "originItemType": null, + "multiclassOrigin": false + }, + "_id": "Q2slH9qkBO5SPw43", + "img": "icons/consumables/nuts/nut-spiked-shell.webp", + "effects": [], + "folder": null, + "sort": 0, + "ownership": { + "default": 0, + "fBcTgyTzoARBvohY": 3 + }, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.350", + "systemId": "daggerheart", + "systemVersion": "1.1.2", + "createdTime": 1760382060546, + "modifiedTime": 1760382297884, + "lastModifiedBy": "fBcTgyTzoARBvohY" + }, + "_key": "!actors.items!XK78QUfY8c8Go8Uv.Q2slH9qkBO5SPw43" + }, + { + "name": "Take Root", + "type": "feature", + "system": { + "description": "

Mark a Stress to Root the Treant in place. The Treant is Restrained while Rooted and can end this effect instead of moving while they are spotlighted. While Rooted the Treant has resistance to physical damage.

", + "resource": null, + "actions": { + "008EelRlcs6CKGvM": { + "type": "effect", + "_id": "008EelRlcs6CKGvM", + "systemPath": "actions", + "description": "

Mark a Stress to Root the Treant in place. The Treant is Restrained while Rooted and can end this effect instead of moving while they are spotlighted. While Rooted the Treant has resistance to physical damage.

", + "chatDisplay": true, + "actionType": "action", + "cost": [ + { + "scalable": false, + "key": "stress", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [ + { + "_id": "3PY5KIG6d3dr3dty", + "onSave": false + } + ], + "target": { + "type": "any", + "amount": null + }, + "name": "Mark Stress", + "img": "icons/consumables/plants/thorned-stem-brown.webp", + "range": "self" + } + }, + "originItemType": null, + "multiclassOrigin": false + }, + "_id": "sqkgw26P2KiQVtXT", + "img": "icons/consumables/plants/thorned-stem-brown.webp", + "effects": [ + { + "name": "Take Root", + "img": "icons/consumables/plants/thorned-stem-brown.webp", + "origin": "Compendium.daggerheart.adversaries.Actor.XK78QUfY8c8Go8Uv.Item.sqkgw26P2KiQVtXT", + "transfer": false, + "_id": "3PY5KIG6d3dr3dty", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "any", + "range": "self" + } + }, + "changes": [ + { + "key": "system.resistance.physical.resistance", + "mode": 2, + "value": "1", + "priority": null + } + ], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

Mark a Stress to Root the Treant in place. The Treant is Restrained while Rooted and can end this effect instead of moving while they are spotlighted. While Rooted the Treant has resistance to physical damage.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.350", + "systemId": "daggerheart", + "systemVersion": "1.1.2", + "createdTime": 1760382462603, + "modifiedTime": 1760382500728, + "lastModifiedBy": "fBcTgyTzoARBvohY" + }, + "_key": "!actors.items.effects!XK78QUfY8c8Go8Uv.sqkgw26P2KiQVtXT.3PY5KIG6d3dr3dty" + } + ], + "folder": null, + "sort": 0, + "ownership": { + "default": 0, + "fBcTgyTzoARBvohY": 3 + }, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.350", + "systemId": "daggerheart", + "systemVersion": "1.1.2", + "createdTime": 1760382346850, + "modifiedTime": 1760382517980, + "lastModifiedBy": "fBcTgyTzoARBvohY" + }, + "_key": "!actors.items!XK78QUfY8c8Go8Uv.sqkgw26P2KiQVtXT" + } + ], "effects": [], "_key": "!actors!XK78QUfY8c8Go8Uv" } diff --git a/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json b/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json index ac8f7c34..4ada4bf1 100644 --- a/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json +++ b/src/packs/adversaries/adversary_Oracle_of_Doom_befIqd5IYKg6eUz2.json @@ -112,6 +112,11 @@ "img": "icons/magic/symbols/rune-sigil-rough-white-teal.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 99, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784315, - "modifiedTime": 1755259462807, + "modifiedTime": 1755385703272, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "befIqd5IYKg6eUz2", @@ -419,7 +424,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -534,7 +538,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -655,7 +658,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json b/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json index beedfcb5..ee33d4e6 100644 --- a/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json +++ b/src/packs/adversaries/adversary_Outer_Realms_Abomination_A0SeeDzwjvqOsyof.json @@ -106,6 +106,11 @@ "img": "icons/creatures/tentacles/tentacle-earth-green.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 99, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784319, - "modifiedTime": 1755259462626, + "modifiedTime": 1755385710032, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "A0SeeDzwjvqOsyof", diff --git a/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json b/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json index 2c6b7623..e19fb41d 100644 --- a/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json +++ b/src/packs/adversaries/adversary_Outer_Realms_Corrupter_ms6nuOl3NFkhPj1k.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 99, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784320, - "modifiedTime": 1755259462889, + "modifiedTime": 1755385717112, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ms6nuOl3NFkhPj1k", diff --git a/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json b/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json index ac0380b5..4eb8ba4b 100644 --- a/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json +++ b/src/packs/adversaries/adversary_Outer_Realms_Thrall_moJhHgKqTKPS2WYS.json @@ -99,6 +99,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 99, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784321, - "modifiedTime": 1755266968806, + "modifiedTime": 1755385729840, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "moJhHgKqTKPS2WYS", @@ -267,7 +272,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json b/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json index c6a5393b..5143abbe 100644 --- a/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json +++ b/src/packs/adversaries/adversary_Patchwork_Zombie_Hulk_EQTOAOUrkIvS2z88.json @@ -115,6 +115,11 @@ "img": "icons/commodities/biological/hand-clawed-blue.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -124,9 +129,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784322, - "modifiedTime": 1755259462653, + "modifiedTime": 1755384671972, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "EQTOAOUrkIvS2z88", @@ -239,7 +244,64 @@ "system": { "description": "

When the Zombie takes Major or greater damage, they mark an additional HP.

", "resource": null, - "actions": {}, + "actions": { + "Y8LQe5TzbdK2mOG9": { + "type": "damage", + "_id": "Y8LQe5TzbdK2mOG9", + "systemPath": "actions", + "description": "", + "chatDisplay": true, + "actionType": "passive", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "hitPoints", + "type": [ + "physical" + ], + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + } + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "name": "Mark HP", + "img": "icons/commodities/biological/hand-clawed-tan.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -256,12 +318,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754051427428, - "modifiedTime": 1754051450294, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760208951573, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!EQTOAOUrkIvS2z88.rEJ1kAfhHQZWhrZj" }, @@ -447,7 +509,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json b/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json index 2062fdb3..97fd5789 100644 --- a/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json +++ b/src/packs/adversaries/adversary_Perfected_Zombie_CP6iRfHdyFWniTHY.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 101, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784323, - "modifiedTime": 1755267137806, + "modifiedTime": 1755385787559, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CP6iRfHdyFWniTHY", @@ -360,7 +365,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json b/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json index 673f9af5..d0f8ec58 100644 --- a/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json +++ b/src/packs/adversaries/adversary_Petty_Noble_wycLpvebWdUqRhpP.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784324, - "modifiedTime": 1755263279700, + "modifiedTime": 1755384656265, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wycLpvebWdUqRhpP", @@ -283,7 +288,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -372,7 +376,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json b/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json index e485ffb5..06625dbf 100644 --- a/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json +++ b/src/packs/adversaries/adversary_Pirate_Captain_OROJbjsqagVh7ECV.json @@ -117,6 +117,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784325, - "modifiedTime": 1755263303289, + "modifiedTime": 1755384693018, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "OROJbjsqagVh7ECV", @@ -341,7 +346,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -406,7 +410,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -507,7 +510,77 @@ "system": { "description": "

When the Captain makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "78Qphxjbs7cOYsNf": { + "type": "healing", + "_id": "78Qphxjbs7cOYsNf", + "systemPath": "actions", + "description": "

When the Captain makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "action", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -524,12 +597,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754052246000, - "modifiedTime": 1754052257935, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760033187578, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!OROJbjsqagVh7ECV.V4EcsqMd70BTrDNu" } diff --git a/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json b/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json index 178883bf..e970e5d5 100644 --- a/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json +++ b/src/packs/adversaries/adversary_Pirate_Raiders_5YgEajn0wa4i85kC.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784326, - "modifiedTime": 1755263339105, + "modifiedTime": 1755384706485, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5YgEajn0wa4i85kC", @@ -229,7 +234,7 @@ }, "items": [ { - "name": "Horde (1d4+1)", + "name": "Horde", "type": "feature", "_id": "Q7DRbWjHl64CNwag", "img": "icons/creatures/magical/humanoid-silhouette-aliens-green.webp", @@ -253,12 +258,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754052315770, - "modifiedTime": 1754052347985, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760033213944, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!5YgEajn0wa4i85kC.Q7DRbWjHl64CNwag" }, diff --git a/src/packs/adversaries/adversary_Pirate_Tough_mhcVkVFrzIJ18FDm.json b/src/packs/adversaries/adversary_Pirate_Tough_mhcVkVFrzIJ18FDm.json index 8a3839f5..8858ffdb 100644 --- a/src/packs/adversaries/adversary_Pirate_Tough_mhcVkVFrzIJ18FDm.json +++ b/src/packs/adversaries/adversary_Pirate_Tough_mhcVkVFrzIJ18FDm.json @@ -145,7 +145,12 @@ } } }, - "motivesAndTactics": "Plunder, raid, smash, terrorize" + "motivesAndTactics": "Plunder, raid, smash, terrorize", + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" + } }, "prototypeToken": { "name": "Pirate Tough", @@ -449,9 +454,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754089855172, - "modifiedTime": 1755259462883, + "modifiedTime": 1755384713113, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!mhcVkVFrzIJ18FDm" diff --git a/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json b/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json index f8656c9d..54340160 100644 --- a/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json +++ b/src/packs/adversaries/adversary_Red_Ooze_9rVlbJVrDNn1x7PS.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784338, - "modifiedTime": 1755263361677, + "modifiedTime": 1755384643919, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9rVlbJVrDNn1x7PS", @@ -494,7 +499,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json b/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json index 3f566841..f9f0c5d0 100644 --- a/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json +++ b/src/packs/adversaries/adversary_Rotted_Zombie_gP3fWTLzSFnpA8EJ.json @@ -99,6 +99,11 @@ "stress": { "max": 1 } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784339, - "modifiedTime": 1755263398665, + "modifiedTime": 1755384730622, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gP3fWTLzSFnpA8EJ", @@ -270,7 +275,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json b/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json index 0632ca05..93453c35 100644 --- a/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json +++ b/src/packs/adversaries/adversary_Royal_Advisor_EtLJiTsilPPZvLUX.json @@ -117,6 +117,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 89, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784339, - "modifiedTime": 1755259462657, + "modifiedTime": 1755385265369, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "EtLJiTsilPPZvLUX", @@ -338,7 +343,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -402,7 +406,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json b/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json index 4791237c..ac2dc316 100644 --- a/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json +++ b/src/packs/adversaries/adversary_Secret_Keeper_sLAccjvCWfeedbpI.json @@ -117,6 +117,11 @@ "img": "icons/weapons/staves/staff-ornate-purple.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 89, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784341, - "modifiedTime": 1755259462915, + "modifiedTime": 1755385272304, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "sLAccjvCWfeedbpI", @@ -252,7 +257,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -340,7 +344,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -527,7 +530,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json b/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json index 7e92085f..d281b974 100644 --- a/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json +++ b/src/packs/adversaries/adversary_Sellsword_bgreCaQ6ap2DVpCr.json @@ -99,6 +99,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784341, - "modifiedTime": 1755263436436, + "modifiedTime": 1755384775888, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "bgreCaQ6ap2DVpCr", @@ -270,7 +275,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json b/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json index b2f19954..860b659b 100644 --- a/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json +++ b/src/packs/adversaries/adversary_Shambling_Zombie_2nXz4ilAY4xuhKLm.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784342, - "modifiedTime": 1755263464581, + "modifiedTime": 1755384838975, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2nXz4ilAY4xuhKLm", diff --git a/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json b/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json index 9f29fea3..1e1b422a 100644 --- a/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json +++ b/src/packs/adversaries/adversary_Shark_YmVAkdNsyuXWTtYp.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784342, - "modifiedTime": 1755259462790, + "modifiedTime": 1755385288183, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YmVAkdNsyuXWTtYp", @@ -459,7 +464,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json b/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json index 27592dd8..06f3c4a8 100644 --- a/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json +++ b/src/packs/adversaries/adversary_Siren_BK4jwyXSRx7IOQiO.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784344, - "modifiedTime": 1755265520298, + "modifiedTime": 1755385294725, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "BK4jwyXSRx7IOQiO", @@ -354,7 +359,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json b/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json index 29ab00ba..31693f85 100644 --- a/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json +++ b/src/packs/adversaries/adversary_Skeleton_Archer_7X5q7a6ueeHs5oA9.json @@ -106,6 +106,11 @@ "img": "icons/weapons/bows/shortbow-leather.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784345, - "modifiedTime": 1755259462590, + "modifiedTime": 1755384787440, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "7X5q7a6ueeHs5oA9", diff --git a/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json b/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json index 9fccfbd6..5f32df25 100644 --- a/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json +++ b/src/packs/adversaries/adversary_Skeleton_Dredge_6l1a3Fazq8BoKIcc.json @@ -99,6 +99,11 @@ "stress": { "max": 1 } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 81, + "artist": "" } }, "flags": {}, @@ -108,9 +113,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784347, - "modifiedTime": 1755264328739, + "modifiedTime": 1755384795225, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "6l1a3Fazq8BoKIcc", @@ -270,7 +275,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json b/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json index 4edf1b89..eb13eed0 100644 --- a/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json +++ b/src/packs/adversaries/adversary_Skeleton_Knight_Q9LaVTyXF9NF12C7.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784348, - "modifiedTime": 1755264339964, + "modifiedTime": 1755384814146, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Q9LaVTyXF9NF12C7", @@ -330,7 +335,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json b/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json index 55ab1fb4..5d090b46 100644 --- a/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json +++ b/src/packs/adversaries/adversary_Skeleton_Warrior_10YIQl0lvCJXZLfX.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784350, - "modifiedTime": 1755264406791, + "modifiedTime": 1755384823045, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "10YIQl0lvCJXZLfX", diff --git a/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json b/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json index e556640f..a4ce7e26 100644 --- a/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json +++ b/src/packs/adversaries/adversary_Spectral_Archer_5tCkhnBByUIN5UdG.json @@ -112,6 +112,11 @@ "range": "far", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784351, - "modifiedTime": 1755259462572, + "modifiedTime": 1755385301617, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5tCkhnBByUIN5UdG", @@ -247,7 +252,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json b/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json index c1d3db63..8041286a 100644 --- a/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json +++ b/src/packs/adversaries/adversary_Spectral_Captain_65cSO3EQEh6ZH6Xk.json @@ -112,6 +112,11 @@ "range": "far", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784352, - "modifiedTime": 1755259462575, + "modifiedTime": 1755385308553, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "65cSO3EQEh6ZH6Xk", @@ -247,7 +252,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -363,7 +367,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -427,7 +430,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -478,7 +480,77 @@ "system": { "description": "

When the Captain makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "tZKpqKdehnPxRsOc": { + "type": "healing", + "_id": "tZKpqKdehnPxRsOc", + "systemPath": "actions", + "description": "

When the Captain makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -496,12 +568,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754084396019, - "modifiedTime": 1754084409095, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760380981818, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!65cSO3EQEh6ZH6Xk.b9wn9oVMne8E1OYx" } diff --git a/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json b/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json index cd4dc479..38545446 100644 --- a/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json +++ b/src/packs/adversaries/adversary_Spectral_Guardian_UFVGl1osOsJTneLf.json @@ -112,6 +112,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784353, - "modifiedTime": 1755259462734, + "modifiedTime": 1755385316790, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "UFVGl1osOsJTneLf", @@ -247,7 +252,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -363,7 +367,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json b/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json index da7fd6d6..9c55fa35 100644 --- a/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json +++ b/src/packs/adversaries/adversary_Spellblade_ldbWEL7uZs84vyrR.json @@ -113,6 +113,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -122,9 +127,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784353, - "modifiedTime": 1755264447203, + "modifiedTime": 1755384873585, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ldbWEL7uZs84vyrR", @@ -284,7 +289,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -400,7 +404,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -452,7 +455,77 @@ "system": { "description": "

When the Spellblade makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "f4AulN6MeMaEvqbk": { + "type": "healing", + "_id": "f4AulN6MeMaEvqbk", + "systemPath": "actions", + "description": "

When the Spellblade makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -469,12 +542,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754054217134, - "modifiedTime": 1754054233931, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760210893024, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!ldbWEL7uZs84vyrR.P9nD5K2ztkZGo2I8" } diff --git a/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json b/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json index fd4244f3..b4a5fbb7 100644 --- a/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json +++ b/src/packs/adversaries/adversary_Spy_8zlynOhnVA59KpKT.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 90, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784354, - "modifiedTime": 1755265655362, + "modifiedTime": 1755385323568, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8zlynOhnVA59KpKT", @@ -247,7 +252,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -311,7 +315,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json b/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json index 13dc9a27..91b83239 100644 --- a/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json +++ b/src/packs/adversaries/adversary_Stag_Knight_KGVwnLq85ywP9xvB.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 94, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784355, - "modifiedTime": 1755266627287, + "modifiedTime": 1755385501283, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "KGVwnLq85ywP9xvB", @@ -334,7 +339,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -422,7 +426,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json b/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json index 0d5bd5eb..45e01348 100644 --- a/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json +++ b/src/packs/adversaries/adversary_Stonewraith_3aAS2Qm3R6cgaYfE.json @@ -112,6 +112,11 @@ "range": "melee", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 91, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784355, - "modifiedTime": 1755265669682, + "modifiedTime": 1755385336971, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "3aAS2Qm3R6cgaYfE", @@ -280,7 +285,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -445,7 +449,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -532,12 +535,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754085059319, - "modifiedTime": 1756256613353, - "lastModifiedBy": "CEZZA7TXd7uT8O2c" + "modifiedTime": 1761503879335, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!3aAS2Qm3R6cgaYfE.9Z0i0uURfBMVIapJ" }, @@ -547,7 +550,77 @@ "system": { "description": "

When the Stonewraith makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "IIZPctjF4MJkWs4b": { + "type": "healing", + "_id": "IIZPctjF4MJkWs4b", + "systemPath": "actions", + "description": "

When the Stonewraith makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -565,12 +638,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754085161530, - "modifiedTime": 1754085176471, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760381032018, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!3aAS2Qm3R6cgaYfE.faM1UzclP0X3ZrkJ" } diff --git a/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json b/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json index 0e9cfa6d..0a7697cc 100644 --- a/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json +++ b/src/packs/adversaries/adversary_Swarm_of_Rats_qNgs3AbLyJrY19nt.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784356, - "modifiedTime": 1755264462044, + "modifiedTime": 1755384883461, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "qNgs3AbLyJrY19nt", diff --git a/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json b/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json index 0c869376..12b26a15 100644 --- a/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json +++ b/src/packs/adversaries/adversary_Sylvan_Soldier_VtFBt9XBE0WrGGxP.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784356, - "modifiedTime": 1755264471444, + "modifiedTime": 1755384893528, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VtFBt9XBE0WrGGxP", @@ -357,7 +362,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -473,7 +477,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json b/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json index f1a00b34..c54afb36 100644 --- a/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json +++ b/src/packs/adversaries/adversary_Tangle_Bramble_Swarm_PKSXFuaIHUCoH63A.json @@ -143,6 +143,11 @@ "difficulty": null, "damageMod": "none" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 82, + "artist": "" } }, "flags": {}, @@ -152,9 +157,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754054959791, - "modifiedTime": 1755259462711, + "modifiedTime": 1755384904068, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { @@ -311,7 +316,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json b/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json index c61f84aa..f3fde38b 100644 --- a/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json +++ b/src/packs/adversaries/adversary_Tangle_Bramble_XcAGOSmtCFLT1unN.json @@ -139,6 +139,11 @@ "difficulty": null, "damageMod": "none" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -148,9 +153,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754055125822, - "modifiedTime": 1755259462779, + "modifiedTime": 1755384916131, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { @@ -307,7 +312,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json b/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json index 06227cd5..25247c81 100644 --- a/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json +++ b/src/packs/adversaries/adversary_Tiny_Green_Ooze_aLkLFuVoKz2NLoBK.json @@ -102,6 +102,11 @@ "stress": { "max": 1 } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -111,9 +116,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784359, - "modifiedTime": 1755264530216, + "modifiedTime": 1755384624947, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "aLkLFuVoKz2NLoBK", @@ -224,14 +229,14 @@ "_id": "WpOh5kHHx7lcTvEY", "img": "icons/magic/acid/dissolve-drip-droplet-smoke.webp", "system": { - "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "resource": null, "actions": { "HfK0u0c7NRppuF1Q": { "type": "damage", "_id": "HfK0u0c7NRppuF1Q", "systemPath": "actions", - "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefits (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", + "description": "

When the Ooze makes a successful attack, the target must mark an Armor Slot without receiving its benefi ts (they can still use armor to reduce the damage). If they can’t mark an Armor Slot, they must mark an additional HP.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -296,12 +301,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.346", "systemId": "daggerheart", - "systemVersion": "1.1.2", + "systemVersion": "0.0.1", "createdTime": 1754055148507, - "modifiedTime": 1756510967769, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1754145130460, + "lastModifiedBy": "MQSznptE5yLT7kj8" }, "_key": "!actors.items!aLkLFuVoKz2NLoBK.WpOh5kHHx7lcTvEY" } diff --git a/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json b/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json index 6c4849d4..07860ef4 100644 --- a/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json +++ b/src/packs/adversaries/adversary_Tiny_Red_Ooze_1fkLQXVtmILqfJ44.json @@ -102,6 +102,11 @@ "damageThresholds": { "major": 5, "severe": 5 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 80, + "artist": "" } }, "flags": {}, @@ -111,9 +116,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784359, - "modifiedTime": 1755264552312, + "modifiedTime": 1755384634569, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1fkLQXVtmILqfJ44", diff --git a/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json b/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json index a5c004b5..139212b5 100644 --- a/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json +++ b/src/packs/adversaries/adversary_Treant_Sapling_o63nS0k3wHu6EgKP.json @@ -98,6 +98,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 95, + "artist": "" } }, "flags": {}, @@ -107,9 +112,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784360, - "modifiedTime": 1755259462897, + "modifiedTime": 1755385523279, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "o63nS0k3wHu6EgKP", @@ -266,7 +271,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json b/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json index 803934a6..285feb7b 100644 --- a/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json +++ b/src/packs/adversaries/adversary_Vampire_WWyUp6Mxl1S3KYUG.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 95, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784364, - "modifiedTime": 1755266648769, + "modifiedTime": 1755385538146, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WWyUp6Mxl1S3KYUG", @@ -402,7 +407,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json b/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json index 068ce832..e28a4227 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Gaoler_JqYraOqNmmhHk4Yy.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 95, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784367, - "modifiedTime": 1755259462674, + "modifiedTime": 1755385547451, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JqYraOqNmmhHk4Yy", @@ -274,7 +279,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json b/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json index 992bb62e..c68c72fd 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Sentinel_FVgYb28fhxlVcGwA.json @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 96, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784368, - "modifiedTime": 1755259462659, + "modifiedTime": 1755385569020, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "FVgYb28fhxlVcGwA", @@ -274,7 +279,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -395,7 +399,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -497,7 +500,77 @@ "system": { "description": "

When the Sentinel makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "AtXg38fItOgiYUee": { + "type": "healing", + "_id": "AtXg38fItOgiYUee", + "systemPath": "actions", + "description": "

When the Sentinel makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -515,12 +588,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754130991279, - "modifiedTime": 1754131007959, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760382661323, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!FVgYb28fhxlVcGwA.N4446BxubUanUQHH" } diff --git a/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json b/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json index 9de89cce..05b0908b 100644 --- a/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json +++ b/src/packs/adversaries/adversary_Vault_Guardian_Turret_c5hGdvY5UnSjlHws.json @@ -106,6 +106,11 @@ "img": "icons/commodities/tech/metal-joint.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 96, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784368, - "modifiedTime": 1755259462816, + "modifiedTime": 1755385577282, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "c5hGdvY5UnSjlHws", @@ -279,7 +284,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -400,7 +404,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json b/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json index 51a4cd52..80a8230c 100644 --- a/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json +++ b/src/packs/adversaries/adversary_Volcanic_Dragon__Ashen_Tyrant_pMuXGCSOQaxpi5tb.json @@ -145,7 +145,12 @@ } } }, - "motivesAndTactics": "Choke, fly, intimidate, kill or be killed" + "motivesAndTactics": "Choke, fly, intimidate, kill or be killed", + "attribution": { + "source": "Daggerheart SRD", + "page": 101, + "artist": "" + } }, "prototypeToken": { "name": "Volcanic Dragon: Ashen Tyrant", @@ -248,7 +253,40 @@ "system": { "description": "

The Ashen Tyrant can be spotlighted up to four times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "cvhKUhLycuEeloKH": { + "type": "effect", + "_id": "cvhKUhLycuEeloKH", + "systemPath": "actions", + "description": "

The Ashen Tyrant can be spotlighted up to four times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "3", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -266,12 +304,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754139608923, - "modifiedTime": 1754139627030, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760383226391, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!pMuXGCSOQaxpi5tb.saz3Vr0xgfAl10tU" }, @@ -294,7 +332,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -661,7 +698,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -901,9 +937,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753929252617, - "modifiedTime": 1755267105169, + "modifiedTime": 1755385779475, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!pMuXGCSOQaxpi5tb" diff --git a/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json b/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json index 56e7a0e7..6a088ed1 100644 --- a/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json +++ b/src/packs/adversaries/adversary_Volcanic_Dragon__Molten_Scourge_eArAPuB38CNR0ZIM.json @@ -145,7 +145,12 @@ } } }, - "motivesAndTactics": "Douse with lava, incinerate, repel Invaders, reposition" + "motivesAndTactics": "Douse with lava, incinerate, repel Invaders, reposition", + "attribution": { + "source": "Daggerheart SRD", + "page": 100, + "artist": "" + } }, "prototypeToken": { "name": "Volcanic Dragon: Molten Scourge", @@ -248,7 +253,40 @@ "system": { "description": "

The Molten Scourge can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "ngzXlah4Lv3eK6i5": { + "type": "effect", + "_id": "ngzXlah4Lv3eK6i5", + "systemPath": "actions", + "description": "

The Molten Scourge can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "2", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -266,12 +304,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754140232475, - "modifiedTime": 1754140255711, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760383290639, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!eArAPuB38CNR0ZIM.DVtxHnbvNDz2POSD" }, @@ -327,7 +365,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -549,7 +586,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -901,9 +937,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753929160832, - "modifiedTime": 1755259462833, + "modifiedTime": 1755385761296, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!eArAPuB38CNR0ZIM" diff --git a/src/packs/adversaries/adversary_Volcanic_Dragon__Obsidian_Predator_ladm7wykhZczYzrQ.json b/src/packs/adversaries/adversary_Volcanic_Dragon__Obsidian_Predator_ladm7wykhZczYzrQ.json index b546dbc0..e182cf2b 100644 --- a/src/packs/adversaries/adversary_Volcanic_Dragon__Obsidian_Predator_ladm7wykhZczYzrQ.json +++ b/src/packs/adversaries/adversary_Volcanic_Dragon__Obsidian_Predator_ladm7wykhZczYzrQ.json @@ -145,7 +145,12 @@ } } }, - "motivesAndTactics": "Defend lair, dive-bomb, fly, hunt, intimidate" + "motivesAndTactics": "Defend lair, dive-bomb, fly, hunt, intimidate", + "attribution": { + "source": "Daggerheart SRD", + "page": 100, + "artist": "" + } }, "prototypeToken": { "name": "Volcanic Dragon: Obsidian Predator", @@ -246,9 +251,42 @@ "name": "Relentless (2)", "type": "feature", "system": { - "description": "

When the Molten Scourge marks their last HP, replace them with the Ashen Tyrant and immediately spotlight them.

", + "description": "

The Obsidian Predator can be spotlighted up to two times per GM turn Spend Fear as usual to spotlight them

", "resource": null, - "actions": {}, + "actions": { + "XuhmupOVJj8ae6q0": { + "type": "effect", + "_id": "XuhmupOVJj8ae6q0", + "systemPath": "actions", + "description": "

The Obsidian Predator can be spotlighted up to two times per GM turn Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "1", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -266,12 +304,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754140957019, - "modifiedTime": 1754140976241, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760383384636, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!ladm7wykhZczYzrQ.hnr2drwGFJAXRJLo" }, @@ -806,9 +844,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753929001531, - "modifiedTime": 1755259462866, + "modifiedTime": 1755385751958, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!actors!ladm7wykhZczYzrQ" diff --git a/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json b/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json index 714c273e..37d0328a 100644 --- a/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json +++ b/src/packs/adversaries/adversary_War_Wizard_noDdT0tsN6FXSmC8.json @@ -117,6 +117,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 91, + "artist": "" } }, "flags": {}, @@ -126,9 +131,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784373, - "modifiedTime": 1755259462894, + "modifiedTime": 1755385343007, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "noDdT0tsN6FXSmC8", @@ -252,7 +257,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -316,7 +320,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -380,7 +383,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -495,7 +497,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json b/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json index fef30f1b..a23c4221 100644 --- a/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json +++ b/src/packs/adversaries/adversary_Weaponmaster_ZNbQ2jg35LG4t9eH.json @@ -65,7 +65,7 @@ }, "tier": 1, "description": "

A master-at-arms wielding a sword twice their size.

", - "motivesAndTactics": "Act fi rst, aim for the weakest, intimidate", + "motivesAndTactics": "Act first, aim for the weakest, intimidate", "attack": { "roll": { "bonus": 2, @@ -106,6 +106,11 @@ }, "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -113,12 +118,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753922784373, - "modifiedTime": 1755259462796, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1760210942230, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_id": "ZNbQ2jg35LG4t9eH", "sort": 3800000, @@ -403,18 +408,18 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "fear", + "itemId": null, "value": 1, - "keyIsID": false, + "scalable": false, "step": null, "consumeOnSuccess": false }, { - "scalable": false, - "key": "UsC0vtOBbf9Kut4v", + "key": "resource", + "itemId": "UsC0vtOBbf9Kut4v", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -522,10 +527,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.2.0", "createdTime": 1754055703816, - "modifiedTime": 1755264604190, - "lastModifiedBy": "VZIeX2YDvX338Zvr" + "modifiedTime": 1756325576007, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_key": "!actors.items!ZNbQ2jg35LG4t9eH.UsC0vtOBbf9Kut4v" }, @@ -537,7 +542,77 @@ "system": { "description": "

When the Weaponmaster makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "jeKcXbdw8gPF4OQA": { + "type": "healing", + "_id": "jeKcXbdw8gPF4OQA", + "systemPath": "actions", + "description": "

When the Weaponmaster makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -554,12 +629,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754055804370, - "modifiedTime": 1754055820896, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760210973953, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!ZNbQ2jg35LG4t9eH.oYNVPQOy5oQli5Il" } diff --git a/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json b/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json index 8c89cd72..5449bf90 100644 --- a/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json +++ b/src/packs/adversaries/adversary_Young_Dryad_8yUj2Mzvnifhxegm.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 83, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784374, - "modifiedTime": 1755264623824, + "modifiedTime": 1755384952240, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8yUj2Mzvnifhxegm", @@ -249,7 +254,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -338,7 +342,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -442,7 +445,77 @@ "system": { "description": "

When the Dryad makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "9MGyAjWtLbDz8Znu": { + "type": "healing", + "_id": "9MGyAjWtLbDz8Znu", + "systemPath": "actions", + "description": "

When the Dryad makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "subType": null, "originId": null @@ -459,12 +532,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754056082977, - "modifiedTime": 1754056099954, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760211015186, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!8yUj2Mzvnifhxegm.4f79icB7Dd1xLEZQ" } diff --git a/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json b/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json index 251a1ab7..f8726219 100644 --- a/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json +++ b/src/packs/adversaries/adversary_Young_Ice_Dragon_UGPiPLJsPvMTSKEF.json @@ -112,6 +112,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 96, + "artist": "" } }, "flags": {}, @@ -121,9 +126,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784374, - "modifiedTime": 1755266725295, + "modifiedTime": 1755385585250, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "UGPiPLJsPvMTSKEF", @@ -234,7 +239,40 @@ "system": { "description": "

The Dragon can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "cmZsrUJa9FJ8gZKP": { + "type": "effect", + "_id": "cmZsrUJa9FJ8gZKP", + "systemPath": "actions", + "description": "

The Dragon can be spotlighted up to three times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "2", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -252,12 +290,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754131459641, - "modifiedTime": 1754131476300, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760382728777, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!UGPiPLJsPvMTSKEF.lsHoXHZ452axhyEr" }, @@ -399,7 +437,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -566,7 +603,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -678,12 +714,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754131703390, - "modifiedTime": 1756256581072, - "lastModifiedBy": "CEZZA7TXd7uT8O2c" + "modifiedTime": 1761503909714, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!UGPiPLJsPvMTSKEF.CcRTxCDCJskiu3fI" }, @@ -836,7 +872,77 @@ "system": { "description": "

When the Dragon makes a successful attack against a PC, you gain a Fear.

", "resource": null, - "actions": {}, + "actions": { + "5V5SDnUBg9dQOkLW": { + "type": "healing", + "_id": "5V5SDnUBg9dQOkLW", + "systemPath": "actions", + "description": "

When the Dragon makes a successful attack against a PC, you gain a Fear.

", + "chatDisplay": true, + "actionType": "reaction", + "cost": [], + "uses": { + "value": null, + "max": "", + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": true, + "formula": "1" + }, + "multiplier": "flat", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null + }, + "applyTo": "fear", + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + }, + "type": [] + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": null + }, + "effects": [], + "roll": { + "type": null, + "trait": null, + "difficulty": null, + "bonus": null, + "advState": "neutral", + "diceRolling": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "compare": null, + "treshold": null + }, + "useDefault": false + }, + "name": "Gain Fear", + "img": "icons/skills/melee/strike-weapons-orange.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -854,12 +960,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754131943438, - "modifiedTime": 1754131956104, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760382767009, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!UGPiPLJsPvMTSKEF.QHdJgT2fvwqquyf7" } diff --git a/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json b/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json index ce880f7d..2ec376dc 100644 --- a/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json +++ b/src/packs/adversaries/adversary_Zombie_Legion_YhJrP7rTBiRdX5Fp.json @@ -106,6 +106,11 @@ "img": "icons/creatures/tentacles/tentacles-octopus-black-pink.webp", "type": "attack", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 101, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784375, - "modifiedTime": 1755259462784, + "modifiedTime": 1755385797660, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YhJrP7rTBiRdX5Fp", @@ -346,7 +351,40 @@ "system": { "description": "

The Legion can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", "resource": null, - "actions": {}, + "actions": { + "IACoLeO6VmnK0qkW": { + "type": "effect", + "_id": "IACoLeO6VmnK0qkW", + "systemPath": "actions", + "description": "

The Legion can be spotlighted up to two times per GM turn. Spend Fear as usual to spotlight them.

", + "chatDisplay": true, + "actionType": "passive", + "cost": [ + { + "scalable": false, + "key": "fear", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], + "uses": { + "value": 0, + "max": "1", + "recovery": null, + "consumeOnSuccess": false + }, + "effects": [], + "target": { + "type": "any", + "amount": null + }, + "name": "Spotlight: Relentless", + "img": "icons/magic/unholy/silhouette-evil-horned-giant.webp", + "range": "" + } + }, "originItemType": null, "originId": null }, @@ -364,12 +402,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754132968589, - "modifiedTime": 1754132983591, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1760383453524, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!YhJrP7rTBiRdX5Fp.fCYLZKeTn0YSpVDI" }, @@ -392,7 +430,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json b/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json index 6f001b5c..a51ce6a0 100644 --- a/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json +++ b/src/packs/adversaries/adversary_Zombie_Pack_Nf0v43rtflV56V2T.json @@ -106,6 +106,11 @@ "type": "attack", "range": "melee", "chatDisplay": false + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 84, + "artist": "" } }, "flags": {}, @@ -115,9 +120,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753922784375, - "modifiedTime": 1755264639582, + "modifiedTime": 1755384852262, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Nf0v43rtflV56V2T", @@ -277,7 +282,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/ancestries/ancestry_Clank_ed8BoLR4SHOpeV00.json b/src/packs/ancestries/ancestry_Clank_ed8BoLR4SHOpeV00.json index fe060a41..9f71128c 100644 --- a/src/packs/ancestries/ancestry_Clank_ed8BoLR4SHOpeV00.json +++ b/src/packs/ancestries/ancestry_Clank_ed8BoLR4SHOpeV00.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.2xlqKOkDxWHbuj4t" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784381, - "modifiedTime": 1753993914940, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394032819, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ed8BoLR4SHOpeV00", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Drakona_VLeOEqkLS0RbF0tB.json b/src/packs/ancestries/ancestry_Drakona_VLeOEqkLS0RbF0tB.json index a3861a40..0f5657b4 100644 --- a/src/packs/ancestries/ancestry_Drakona_VLeOEqkLS0RbF0tB.json +++ b/src/packs/ancestries/ancestry_Drakona_VLeOEqkLS0RbF0tB.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.sRaE3CgkgjBF1UpV" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784382, - "modifiedTime": 1753994173339, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394105939, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VLeOEqkLS0RbF0tB", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Dwarf_pDt6fI6otv2E2odf.json b/src/packs/ancestries/ancestry_Dwarf_pDt6fI6otv2E2odf.json index 8bdd2113..706dc2ec 100644 --- a/src/packs/ancestries/ancestry_Dwarf_pDt6fI6otv2E2odf.json +++ b/src/packs/ancestries/ancestry_Dwarf_pDt6fI6otv2E2odf.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.0RN0baBxh95GT1cm" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784382, - "modifiedTime": 1753994478754, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394117175, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "pDt6fI6otv2E2odf", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Elf_q2l6g3Ssa04K84GO.json b/src/packs/ancestries/ancestry_Elf_q2l6g3Ssa04K84GO.json index 84792663..3db7bee2 100644 --- a/src/packs/ancestries/ancestry_Elf_q2l6g3Ssa04K84GO.json +++ b/src/packs/ancestries/ancestry_Elf_q2l6g3Ssa04K84GO.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.TfolXWFG2W2hx6sK" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784382, - "modifiedTime": 1753994623487, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394127340, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "q2l6g3Ssa04K84GO", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Faerie_XzJVbb5NT9k79ykR.json b/src/packs/ancestries/ancestry_Faerie_XzJVbb5NT9k79ykR.json index 250444de..93b277e6 100644 --- a/src/packs/ancestries/ancestry_Faerie_XzJVbb5NT9k79ykR.json +++ b/src/packs/ancestries/ancestry_Faerie_XzJVbb5NT9k79ykR.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.WquAjoOcso8lwySW" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784383, - "modifiedTime": 1753994865178, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394136677, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "XzJVbb5NT9k79ykR", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Faun_HaYhe6WqoXW5EbRl.json b/src/packs/ancestries/ancestry_Faun_HaYhe6WqoXW5EbRl.json index 628f4a6a..5dc04976 100644 --- a/src/packs/ancestries/ancestry_Faun_HaYhe6WqoXW5EbRl.json +++ b/src/packs/ancestries/ancestry_Faun_HaYhe6WqoXW5EbRl.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.gpW19TfJk0WWFh1S" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784383, - "modifiedTime": 1753995403631, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394142374, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HaYhe6WqoXW5EbRl", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Firbolg_hzKmydI8sR3uk4CO.json b/src/packs/ancestries/ancestry_Firbolg_hzKmydI8sR3uk4CO.json index 07cc9996..2de5ee24 100644 --- a/src/packs/ancestries/ancestry_Firbolg_hzKmydI8sR3uk4CO.json +++ b/src/packs/ancestries/ancestry_Firbolg_hzKmydI8sR3uk4CO.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.G5pE8FW94V1W9jJx" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784384, - "modifiedTime": 1753995720164, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394148626, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "hzKmydI8sR3uk4CO", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Fungril_J1hX7nBBc5jQiHli.json b/src/packs/ancestries/ancestry_Fungril_J1hX7nBBc5jQiHli.json index 06146d9c..aa30fc5b 100644 --- a/src/packs/ancestries/ancestry_Fungril_J1hX7nBBc5jQiHli.json +++ b/src/packs/ancestries/ancestry_Fungril_J1hX7nBBc5jQiHli.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.WuwXH2r2uM9sDJtj" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784385, - "modifiedTime": 1753996282858, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394159775, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "J1hX7nBBc5jQiHli", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Galapa_eZNG5Iv0yfbHs5CO.json b/src/packs/ancestries/ancestry_Galapa_eZNG5Iv0yfbHs5CO.json index 5d6ca0ae..2817ecf3 100644 --- a/src/packs/ancestries/ancestry_Galapa_eZNG5Iv0yfbHs5CO.json +++ b/src/packs/ancestries/ancestry_Galapa_eZNG5Iv0yfbHs5CO.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.UFR67BUOhNGLFyg9" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784385, - "modifiedTime": 1753996656622, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394165825, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "eZNG5Iv0yfbHs5CO", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Giant_3U8CncG92a7ERIJ0.json b/src/packs/ancestries/ancestry_Giant_3U8CncG92a7ERIJ0.json index 02b3fa63..d7b6bda0 100644 --- a/src/packs/ancestries/ancestry_Giant_3U8CncG92a7ERIJ0.json +++ b/src/packs/ancestries/ancestry_Giant_3U8CncG92a7ERIJ0.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.WRs2jvwM0STmkWIW" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784386, - "modifiedTime": 1753996849286, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394174325, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "3U8CncG92a7ERIJ0", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Goblin_EKPEdIz9lA9grPqH.json b/src/packs/ancestries/ancestry_Goblin_EKPEdIz9lA9grPqH.json index 0e1fb16e..a7f92b00 100644 --- a/src/packs/ancestries/ancestry_Goblin_EKPEdIz9lA9grPqH.json +++ b/src/packs/ancestries/ancestry_Goblin_EKPEdIz9lA9grPqH.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.AXqcoxnRoWBbbKpK" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784386, - "modifiedTime": 1753997126174, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394180109, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "EKPEdIz9lA9grPqH", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Halfling_CtL2jDjvPOJxNJKm.json b/src/packs/ancestries/ancestry_Halfling_CtL2jDjvPOJxNJKm.json index ea37196d..32b640b5 100644 --- a/src/packs/ancestries/ancestry_Halfling_CtL2jDjvPOJxNJKm.json +++ b/src/packs/ancestries/ancestry_Halfling_CtL2jDjvPOJxNJKm.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.e2Cu6exxtvfQzc1e" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784387, - "modifiedTime": 1753997257661, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394186643, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CtL2jDjvPOJxNJKm", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Human_wtJ5V5qRppLQn61n.json b/src/packs/ancestries/ancestry_Human_wtJ5V5qRppLQn61n.json index 58310832..5ef479b6 100644 --- a/src/packs/ancestries/ancestry_Human_wtJ5V5qRppLQn61n.json +++ b/src/packs/ancestries/ancestry_Human_wtJ5V5qRppLQn61n.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.BNofV1UC4ZbdFTkb" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784388, - "modifiedTime": 1753997481487, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394199176, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wtJ5V5qRppLQn61n", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Infernis_hyxcuF2I0xcZSGkm.json b/src/packs/ancestries/ancestry_Infernis_hyxcuF2I0xcZSGkm.json index 67e95734..823aedf8 100644 --- a/src/packs/ancestries/ancestry_Infernis_hyxcuF2I0xcZSGkm.json +++ b/src/packs/ancestries/ancestry_Infernis_hyxcuF2I0xcZSGkm.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.i92lYjDhVB0LyPid" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784388, - "modifiedTime": 1754000194006, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394204627, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "hyxcuF2I0xcZSGkm", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Katari_yyW0UM8srD9WuwW7.json b/src/packs/ancestries/ancestry_Katari_yyW0UM8srD9WuwW7.json index f3997143..25819b34 100644 --- a/src/packs/ancestries/ancestry_Katari_yyW0UM8srD9WuwW7.json +++ b/src/packs/ancestries/ancestry_Katari_yyW0UM8srD9WuwW7.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.Zj69cAeb3NjIa8Hn" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784388, - "modifiedTime": 1754000474970, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394210762, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "yyW0UM8srD9WuwW7", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Orc_D1RbUsRV9HpTrPuF.json b/src/packs/ancestries/ancestry_Orc_D1RbUsRV9HpTrPuF.json index 0075cf94..dbbfe21b 100644 --- a/src/packs/ancestries/ancestry_Orc_D1RbUsRV9HpTrPuF.json +++ b/src/packs/ancestries/ancestry_Orc_D1RbUsRV9HpTrPuF.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.YhxD1ujZpftPu19w" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784389, - "modifiedTime": 1754000737849, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394218178, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "D1RbUsRV9HpTrPuF", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Ribbet_HwOoBKXOL9Tf5j85.json b/src/packs/ancestries/ancestry_Ribbet_HwOoBKXOL9Tf5j85.json index 5624ba77..677852f7 100644 --- a/src/packs/ancestries/ancestry_Ribbet_HwOoBKXOL9Tf5j85.json +++ b/src/packs/ancestries/ancestry_Ribbet_HwOoBKXOL9Tf5j85.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.oWbdlh51ajn1Q5kL" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784389, - "modifiedTime": 1754000881040, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394245530, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HwOoBKXOL9Tf5j85", "sort": 3400000, diff --git a/src/packs/ancestries/ancestry_Simiah_2yMLxxn7CHEvmShj.json b/src/packs/ancestries/ancestry_Simiah_2yMLxxn7CHEvmShj.json index d09abcdd..647ddf20 100644 --- a/src/packs/ancestries/ancestry_Simiah_2yMLxxn7CHEvmShj.json +++ b/src/packs/ancestries/ancestry_Simiah_2yMLxxn7CHEvmShj.json @@ -14,19 +14,24 @@ "type": "secondary", "item": "Compendium.daggerheart.ancestries.Item.3lNqft3LmOlEIEkw" } - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784390, - "modifiedTime": 1754001185010, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394237166, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2yMLxxn7CHEvmShj", "sort": 3400000, diff --git a/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json b/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json index 74d0396e..8884df4f 100644 --- a/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json +++ b/src/packs/ancestries/feature_Adaptability_BNofV1UC4ZbdFTkb.json @@ -12,7 +12,7 @@ "type": "effect", "_id": "D7EE2L2Y96nfrfTW", "systemPath": "actions", - "description": "", + "description": "

When you fail a roll that utilized one of your Experiences, you can mark a Stress to reroll.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -41,7 +40,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753997402776, - "modifiedTime": 1753997472141, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138322948, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!BNofV1UC4ZbdFTkb" } diff --git a/src/packs/ancestries/feature_Amphibious_GVhmLouGq9GWCsN8.json b/src/packs/ancestries/feature_Amphibious_GVhmLouGq9GWCsN8.json index fbc8de74..f1e07a4a 100644 --- a/src/packs/ancestries/feature_Amphibious_GVhmLouGq9GWCsN8.json +++ b/src/packs/ancestries/feature_Amphibious_GVhmLouGq9GWCsN8.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754000764274, - "modifiedTime": 1754000778312, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394576564, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GVhmLouGq9GWCsN8" } diff --git a/src/packs/ancestries/feature_Caprine_Leap_nLL2zuDDDbbyxlrQ.json b/src/packs/ancestries/feature_Caprine_Leap_nLL2zuDDDbbyxlrQ.json index db455164..98a9ee47 100644 --- a/src/packs/ancestries/feature_Caprine_Leap_nLL2zuDDDbbyxlrQ.json +++ b/src/packs/ancestries/feature_Caprine_Leap_nLL2zuDDDbbyxlrQ.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753995211408, - "modifiedTime": 1753995232467, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394383202, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nLL2zuDDDbbyxlrQ" } diff --git a/src/packs/ancestries/feature_Celestial_Trance_TfolXWFG2W2hx6sK.json b/src/packs/ancestries/feature_Celestial_Trance_TfolXWFG2W2hx6sK.json index e9a240ef..46a5c210 100644 --- a/src/packs/ancestries/feature_Celestial_Trance_TfolXWFG2W2hx6sK.json +++ b/src/packs/ancestries/feature_Celestial_Trance_TfolXWFG2W2hx6sK.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [ { @@ -50,7 +55,7 @@ "startRound": null, "startTurn": null }, - "description": "", + "description": "

During a rest, you can drop into a trance to choose an additional downtime move.

", "origin": null, "tint": "#ffffff", "transfer": true, @@ -61,12 +66,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753994586602, - "modifiedTime": 1753994613702, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761137891643, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!TfolXWFG2W2hx6sK.LqQvZJJLNMnFkt1D" } @@ -81,12 +86,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753994570602, - "modifiedTime": 1753994583518, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394338351, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TfolXWFG2W2hx6sK" } diff --git a/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json b/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json index 319086a4..40dd11ef 100644 --- a/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json +++ b/src/packs/ancestries/feature_Charge_AA2CZlJSWW8GPhrR.json @@ -12,7 +12,7 @@ "type": "damage", "_id": "KLg0T6I1w24sfIbH", "systemPath": "actions", - "description": "", + "description": "

When you succeed on an Agility Roll to move from Far or Very Far range into Melee range with one or more targets, you can mark a Stress to deal 1d12 physical damage to all targets within Melee range.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -65,14 +64,19 @@ "amount": null }, "effects": [], - "name": "Damage", + "name": "Deal Damage", "img": "icons/magic/movement/trail-streak-impact-blue.webp", "range": "" } }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -85,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753995559143, - "modifiedTime": 1753995629206, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138130084, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!AA2CZlJSWW8GPhrR" } diff --git a/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json b/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json index e8152918..09e677c7 100644 --- a/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json +++ b/src/packs/ancestries/feature_Danger_Sense_AXqcoxnRoWBbbKpK.json @@ -12,7 +12,7 @@ "type": "effect", "_id": "V2K3pMWOCVwBUnjq", "systemPath": "actions", - "description": "", + "description": "

Once per rest, mark a Stress to force an adversary to reroll an attack against you or an ally within Very Close range.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -41,7 +40,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753997061290, - "modifiedTime": 1754498245294, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138260496, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!AXqcoxnRoWBbbKpK" } diff --git a/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json b/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json index cc2ba641..ad87f1ea 100644 --- a/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json +++ b/src/packs/ancestries/feature_Death_Connection_WuwXH2r2uM9sDJtj.json @@ -12,7 +12,7 @@ "type": "effect", "_id": "0RdKeWfbPRTHcAMf", "systemPath": "actions", - "description": "", + "description": "

While touching a corpse that died recently, you can mark a Stress to extract one memory from the corpse related to a specific emotion or sensation of your choice.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -41,7 +40,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753996213198, - "modifiedTime": 1753996272048, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138171389, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!WuwXH2r2uM9sDJtj" } diff --git a/src/packs/ancestries/feature_Dread_Visage_i92lYjDhVB0LyPid.json b/src/packs/ancestries/feature_Dread_Visage_i92lYjDhVB0LyPid.json index 23adb822..c26fe58b 100644 --- a/src/packs/ancestries/feature_Dread_Visage_i92lYjDhVB0LyPid.json +++ b/src/packs/ancestries/feature_Dread_Visage_i92lYjDhVB0LyPid.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [ { @@ -30,7 +35,7 @@ { "key": "system.advantageSources", "mode": 2, - "value": "Rolls to intimidate hostile creatures", + "value": "Dread Visage: Rolls to intimidate hostile creatures", "priority": null } ], @@ -55,12 +60,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754000031619, - "modifiedTime": 1754000179466, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138386730, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!i92lYjDhVB0LyPid.2Gd6iHQX521aAZqC" } @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753999985847, - "modifiedTime": 1754000026405, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394529510, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!i92lYjDhVB0LyPid" } diff --git a/src/packs/ancestries/feature_Efficient_2xlqKOkDxWHbuj4t.json b/src/packs/ancestries/feature_Efficient_2xlqKOkDxWHbuj4t.json index 5d946a88..0ac18184 100644 --- a/src/packs/ancestries/feature_Efficient_2xlqKOkDxWHbuj4t.json +++ b/src/packs/ancestries/feature_Efficient_2xlqKOkDxWHbuj4t.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [ { @@ -50,7 +55,7 @@ "startRound": null, "startTurn": null }, - "description": "

When you take a short rest, you can choose a long rest move instead of a short rest move.

", + "description": "

When you take a short rest, you can choose a long rest move instead of a short rest move.

", "origin": null, "tint": "#ffffff", "transfer": true, @@ -61,12 +66,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753993852553, - "modifiedTime": 1753993889097, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761137607063, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!2xlqKOkDxWHbuj4t.EEryWN2nE33ppGHi" } @@ -81,12 +86,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753993806761, - "modifiedTime": 1753993849345, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394264580, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2xlqKOkDxWHbuj4t" } diff --git a/src/packs/ancestries/feature_Elemental_Breath_sRaE3CgkgjBF1UpV.json b/src/packs/ancestries/feature_Elemental_Breath_sRaE3CgkgjBF1UpV.json index 9764c5b4..3f50d8cf 100644 --- a/src/packs/ancestries/feature_Elemental_Breath_sRaE3CgkgjBF1UpV.json +++ b/src/packs/ancestries/feature_Elemental_Breath_sRaE3CgkgjBF1UpV.json @@ -82,7 +82,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [], "sort": 0, diff --git a/src/packs/ancestries/feature_Endurance_tXWEMdLXafUSZTbK.json b/src/packs/ancestries/feature_Endurance_tXWEMdLXafUSZTbK.json index 1624957e..b82b9e3e 100644 --- a/src/packs/ancestries/feature_Endurance_tXWEMdLXafUSZTbK.json +++ b/src/packs/ancestries/feature_Endurance_tXWEMdLXafUSZTbK.json @@ -10,11 +10,16 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [ { - "name": "Base", + "name": "Endurance", "type": "base", "_id": "db8W2Q0Qty84XV0x", "img": "icons/magic/control/buff-strength-muscle-damage.webp", @@ -55,12 +60,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753996768847, - "modifiedTime": 1754310930764, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138203999, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!tXWEMdLXafUSZTbK.db8W2Q0Qty84XV0x" } @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753996738047, - "modifiedTime": 1753996763700, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394456808, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tXWEMdLXafUSZTbK" } diff --git a/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json b/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json index bb8d790c..0bd9c405 100644 --- a/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json +++ b/src/packs/ancestries/feature_Fearless_IlWvn5kCqCBMuUJn.json @@ -12,7 +12,7 @@ "type": "effect", "_id": "G1H7k5RdvS1EJgFu", "systemPath": "actions", - "description": "", + "description": "

When you roll with Fear, you can mark 2 Stress to change it into a roll with Hope instead.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 2, - "keyIsID": false, "step": null } ], @@ -41,7 +40,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753999842518, - "modifiedTime": 1753999969945, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138348732, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!IlWvn5kCqCBMuUJn" } diff --git a/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json b/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json index c0547372..f78ecca2 100644 --- a/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json +++ b/src/packs/ancestries/feature_Feline_Instincts_lNgbbYnCKgrdvA85.json @@ -12,7 +12,7 @@ "type": "effect", "_id": "ALsGHOy0q5THGxz5", "systemPath": "actions", - "description": "", + "description": "

When you make an Agility Roll, you can spend 2 Hope to reroll your Hope Die.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], @@ -41,7 +40,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754000245487, - "modifiedTime": 1754000291789, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138403613, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!lNgbbYnCKgrdvA85" } diff --git a/src/packs/ancestries/feature_Fungril_Network_9tmeXm623hl4Qnws.json b/src/packs/ancestries/feature_Fungril_Network_9tmeXm623hl4Qnws.json index 60a74cf4..1604a7f8 100644 --- a/src/packs/ancestries/feature_Fungril_Network_9tmeXm623hl4Qnws.json +++ b/src/packs/ancestries/feature_Fungril_Network_9tmeXm623hl4Qnws.json @@ -12,7 +12,7 @@ "type": "attack", "_id": "ZYfigAyUdDUteczO", "systemPath": "actions", - "description": "", + "description": "

Make an Instinct Roll (12) to use your mycelial array to speak with others of your ancestry. On a success, you can communicate across any distance.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -57,7 +57,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753996087513, - "modifiedTime": 1753996189704, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138154960, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!9tmeXm623hl4Qnws" } diff --git a/src/packs/ancestries/feature_High_Stamina_HMXNJZ7ynzajR2KT.json b/src/packs/ancestries/feature_High_Stamina_HMXNJZ7ynzajR2KT.json index 81fd4b84..eeae4dd4 100644 --- a/src/packs/ancestries/feature_High_Stamina_HMXNJZ7ynzajR2KT.json +++ b/src/packs/ancestries/feature_High_Stamina_HMXNJZ7ynzajR2KT.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [ { @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753997324366, - "modifiedTime": 1753997344417, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394512693, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!HMXNJZ7ynzajR2KT" } diff --git a/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json b/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json index 34de2d91..2f2b8b5f 100644 --- a/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json +++ b/src/packs/ancestries/feature_Increased_Fortitude_0RN0baBxh95GT1cm.json @@ -12,7 +12,7 @@ "type": "effect", "_id": "pFPbjyexOPx5gog6", "systemPath": "actions", - "description": "", + "description": "

Spend 3 Hope to halve incoming physical damage.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], @@ -41,7 +40,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753994395837, - "modifiedTime": 1753994468110, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761137852259, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!0RN0baBxh95GT1cm" } diff --git a/src/packs/ancestries/feature_Internal_Compass_e2Cu6exxtvfQzc1e.json b/src/packs/ancestries/feature_Internal_Compass_e2Cu6exxtvfQzc1e.json index 00645109..0ebd51ff 100644 --- a/src/packs/ancestries/feature_Internal_Compass_e2Cu6exxtvfQzc1e.json +++ b/src/packs/ancestries/feature_Internal_Compass_e2Cu6exxtvfQzc1e.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753997233606, - "modifiedTime": 1753997248375, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394489091, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!e2Cu6exxtvfQzc1e" } diff --git a/src/packs/ancestries/feature_Kick_gpW19TfJk0WWFh1S.json b/src/packs/ancestries/feature_Kick_gpW19TfJk0WWFh1S.json index f9233e32..cc285355 100644 --- a/src/packs/ancestries/feature_Kick_gpW19TfJk0WWFh1S.json +++ b/src/packs/ancestries/feature_Kick_gpW19TfJk0WWFh1S.json @@ -12,10 +12,19 @@ "type": "damage", "_id": "bXbQ57CB1Hfj5XrS", "systemPath": "actions", - "description": "", + "description": "

When you succeed on an attack against a target within Melee range, you can mark a Stress to kick yourself off them, dealing an extra 2d6 damage and knocking back either yourself or the target to Very Close range.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "stress", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -26,11 +35,11 @@ { "value": { "custom": { - "enabled": true, - "formula": "2d6" + "enabled": false, + "formula": "" }, - "multiplier": "prof", - "flatMultiplier": 1, + "multiplier": "flat", + "flatMultiplier": 2, "dice": "d6", "bonus": null }, @@ -44,7 +53,8 @@ "dice": "d6", "bonus": null, "custom": { - "enabled": false + "enabled": false, + "formula": "" } } } @@ -56,14 +66,19 @@ "amount": null }, "effects": [], - "name": "Damage", + "name": "Deal Damage", "img": "icons/skills/melee/shield-damaged-broken-gold.webp", "range": "melee" } }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -76,12 +91,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753995249173, - "modifiedTime": 1753995396728, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761139310352, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!gpW19TfJk0WWFh1S" } diff --git a/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json b/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json index 4c8cfc30..e9e0b86f 100644 --- a/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json +++ b/src/packs/ancestries/feature_Long_Tongue_oWbdlh51ajn1Q5kL.json @@ -12,7 +12,7 @@ "type": "attack", "_id": "MhAWv7tuvkfOf7wQ", "systemPath": "actions", - "description": "", + "description": "

You can use your long tongue to grab onto things within Close range. Mark a Stress to use your tongue as a Finesse Close weapon that deals d12 physical damage using your Proficiency.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -83,14 +82,19 @@ "difficulty": null, "damageMod": "none" }, - "name": "Attack", + "name": "Mark Stress", "img": "icons/commodities/biological/tongue-violet.webp", "range": "close" } }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "effects": [], "sort": 0, @@ -103,12 +107,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754000791839, - "modifiedTime": 1754000854253, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138622800, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!oWbdlh51ajn1Q5kL" } diff --git a/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json b/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json index 51b33024..7473fa07 100644 --- a/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json +++ b/src/packs/ancestries/feature_Luckbender_U6iFjZgLYawlOlQZ.json @@ -12,7 +12,7 @@ "type": "effect", "_id": "l1wUmqMzG8YF9sqb", "systemPath": "actions", - "description": "", + "description": "

Once per session, after you or a willing ally within Close range makes an action roll, you can spend 3 Hope to reroll the Duality Dice.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], @@ -34,14 +33,19 @@ "type": "friendly", "amount": null }, - "name": "Use", + "name": "Spend Hope", "img": "icons/magic/control/buff-luck-fortune-green-gold.webp", "range": "close" } }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753994658436, - "modifiedTime": 1754498186961, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138006341, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!U6iFjZgLYawlOlQZ" } diff --git a/src/packs/ancestries/feature_Luckbringer_8O6SQQMxKWr430QA.json b/src/packs/ancestries/feature_Luckbringer_8O6SQQMxKWr430QA.json index 01de5030..9db179b4 100644 --- a/src/packs/ancestries/feature_Luckbringer_8O6SQQMxKWr430QA.json +++ b/src/packs/ancestries/feature_Luckbringer_8O6SQQMxKWr430QA.json @@ -12,7 +12,7 @@ "type": "healing", "_id": "8sK3t73bFkpb999C", "systemPath": "actions", - "description": "", + "description": "

At the start of each session, everyone in your party gains a Hope.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -78,7 +78,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -91,12 +96,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753997164653, - "modifiedTime": 1753997217376, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138289388, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!8O6SQQMxKWr430QA" } diff --git a/src/packs/ancestries/feature_Natural_Climber_soQvPL0MrTLLcc31.json b/src/packs/ancestries/feature_Natural_Climber_soQvPL0MrTLLcc31.json index 9f36411f..cfe8f9d4 100644 --- a/src/packs/ancestries/feature_Natural_Climber_soQvPL0MrTLLcc31.json +++ b/src/packs/ancestries/feature_Natural_Climber_soQvPL0MrTLLcc31.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "effects": [ { @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754001064223, - "modifiedTime": 1754001078029, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394600697, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!soQvPL0MrTLLcc31" } diff --git a/src/packs/ancestries/feature_Nimble_3lNqft3LmOlEIEkw.json b/src/packs/ancestries/feature_Nimble_3lNqft3LmOlEIEkw.json index d3539a9f..cd759ff4 100644 --- a/src/packs/ancestries/feature_Nimble_3lNqft3LmOlEIEkw.json +++ b/src/packs/ancestries/feature_Nimble_3lNqft3LmOlEIEkw.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 31, + "artist": "" + } }, "effects": [ { @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754001125989, - "modifiedTime": 1754001147782, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394608816, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3lNqft3LmOlEIEkw" } diff --git a/src/packs/ancestries/feature_Purposeful_Design_g6I4tRUQNgL4vZ6H.json b/src/packs/ancestries/feature_Purposeful_Design_g6I4tRUQNgL4vZ6H.json index d805e240..409aa88b 100644 --- a/src/packs/ancestries/feature_Purposeful_Design_g6I4tRUQNgL4vZ6H.json +++ b/src/packs/ancestries/feature_Purposeful_Design_g6I4tRUQNgL4vZ6H.json @@ -5,12 +5,17 @@ "_id": "g6I4tRUQNgL4vZ6H", "img": "icons/tools/scribal/lens-blue.webp", "system": { - "description": "

Decide who made you and for what purpose. At character creation, choose one of your Experiences that best aligns with this purpose and gain a permanent +1 bonus to it.

", + "description": "

Note: Automation not implemented for permanent bonus. Manually increase the experience in the respective editing field.


Decide who made you and for what purpose. At character creation, choose one of your Experiences that best aligns with this purpose and gain a permanent +1 bonus to it.

", "resource": null, "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753993755899, - "modifiedTime": 1753993791943, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761137758590, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!g6I4tRUQNgL4vZ6H" } diff --git a/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json b/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json index 87c6ec96..fd260647 100644 --- a/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json +++ b/src/packs/ancestries/feature_Quick_Reactions_0NSPSuB8KSEYTJIP.json @@ -12,7 +12,7 @@ "type": "effect", "_id": "6Av1Y8JXWDkteLhc", "systemPath": "actions", - "description": "", + "description": "

Mark a Stress to gain advantage on a reaction roll.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -41,7 +40,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753994522468, - "modifiedTime": 1753994554455, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761137904802, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!0NSPSuB8KSEYTJIP" } diff --git a/src/packs/ancestries/feature_Reach_WRs2jvwM0STmkWIW.json b/src/packs/ancestries/feature_Reach_WRs2jvwM0STmkWIW.json index b6c974d0..deac5491 100644 --- a/src/packs/ancestries/feature_Reach_WRs2jvwM0STmkWIW.json +++ b/src/packs/ancestries/feature_Reach_WRs2jvwM0STmkWIW.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753996802591, - "modifiedTime": 1753996830453, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394448890, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WRs2jvwM0STmkWIW" } diff --git a/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json b/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json index 356f9283..90d96124 100644 --- a/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json +++ b/src/packs/ancestries/feature_Retract_UFR67BUOhNGLFyg9.json @@ -5,7 +5,7 @@ "_id": "UFR67BUOhNGLFyg9", "img": "icons/magic/defensive/shield-barrier-flaming-diamond-teal.webp", "system": { - "description": "

Mark a Stress to retract into your shell. While in your shell, you have resistance to physical damage, you have disadvantage on action rolls, and you can’t move.

", + "description": "

Mark a Stress to retract into your shell. While in your shell, you have resistance to physical damage, you have disadvantage on action rolls, and you can’t move.

(When marked, manually enable the retract effect in effects tab and mark disadvantage when doing any action rolls)

", "resource": null, "actions": { "HfiAg14hrYt7Yvnj": { @@ -15,32 +15,53 @@ "description": "", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "stress", + "value": 1, + "keyIsID": false, + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", "recovery": null }, - "effects": [], + "effects": [ + { + "_id": "3V4FPoyjJUnFP9WS", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Stress", "img": "icons/magic/defensive/shield-barrier-flaming-diamond-teal.webp", - "range": "" + "range": "self" } }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [ { - "name": "Base", - "type": "base", - "_id": "KoHQg8KurugHlga0", + "name": "Retract", "img": "icons/magic/defensive/shield-barrier-flaming-diamond-teal.webp", + "origin": "Compendium.daggerheart.ancestries.Item.UFR67BUOhNGLFyg9", + "transfer": false, + "_id": "3V4FPoyjJUnFP9WS", + "type": "base", "system": { "rangeDependence": { "enabled": false, @@ -59,11 +80,11 @@ { "key": "system.disadvantageSources", "mode": 2, - "value": "Action Rolls", + "value": "Retract", "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -73,10 +94,8 @@ "startRound": null, "startTurn": null }, - "description": "

While in your shell, you have resistance to physical damage, you have disadvantage on action rolls, and you can’t move.

", - "origin": null, + "description": "

While in your shell, you have resistance to physical damage, you have disadvantage on action rolls, and you can’t move.

", "tint": "#ffffff", - "transfer": true, "statuses": [], "sort": 0, "flags": {}, @@ -84,14 +103,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753996568678, - "modifiedTime": 1753996633306, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "systemVersion": "1.1.2", + "createdTime": 1759960447341, + "modifiedTime": 1759961484642, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, - "_key": "!items.effects!UFR67BUOhNGLFyg9.KoHQg8KurugHlga0" + "_key": "!items.effects!UFR67BUOhNGLFyg9.3V4FPoyjJUnFP9WS" } ], "sort": 0, @@ -104,12 +123,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753996513763, - "modifiedTime": 1753996553192, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1759961925987, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!UFR67BUOhNGLFyg9" } diff --git a/src/packs/ancestries/feature_Retracting_Claws_Zj69cAeb3NjIa8Hn.json b/src/packs/ancestries/feature_Retracting_Claws_Zj69cAeb3NjIa8Hn.json index 01e909bb..730b0d86 100644 --- a/src/packs/ancestries/feature_Retracting_Claws_Zj69cAeb3NjIa8Hn.json +++ b/src/packs/ancestries/feature_Retracting_Claws_Zj69cAeb3NjIa8Hn.json @@ -12,7 +12,7 @@ "type": "attack", "_id": "LcFhDb3sJk8sraAc", "systemPath": "actions", - "description": "", + "description": "

Make an Agility Roll to scratch a target within Melee range. On a success, they become temporarily Vulnerable.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -62,7 +62,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [ { @@ -122,12 +127,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754000306620, - "modifiedTime": 1754000434953, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138426560, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!Zj69cAeb3NjIa8Hn" } diff --git a/src/packs/ancestries/feature_Scales_u8ZhV962rNmUlzkp.json b/src/packs/ancestries/feature_Scales_u8ZhV962rNmUlzkp.json index 3b23d6b7..efc64b57 100644 --- a/src/packs/ancestries/feature_Scales_u8ZhV962rNmUlzkp.json +++ b/src/packs/ancestries/feature_Scales_u8ZhV962rNmUlzkp.json @@ -10,11 +10,16 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [ { - "name": "Base", + "name": "Scales", "type": "base", "_id": "b6Pkwwk7pgBeeUTe", "img": "icons/commodities/leather/scales-brown.webp", @@ -44,7 +49,7 @@ "startRound": null, "startTurn": null }, - "description": "

When you would take Severe damage, you can mark a Stress to mark 1 fewer Hit Points.

", + "description": "

When you would take Severe damage, you can mark a Stress to mark 1 fewer Hit Points.

", "origin": null, "tint": "#ffffff", "transfer": true, @@ -55,12 +60,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753993993682, - "modifiedTime": 1753994027257, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761137949459, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!u8ZhV962rNmUlzkp.b6Pkwwk7pgBeeUTe" } @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753993962796, - "modifiedTime": 1753993988373, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394286965, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!u8ZhV962rNmUlzkp" } diff --git a/src/packs/ancestries/feature_Shell_A6a87OWA3tx16g9V.json b/src/packs/ancestries/feature_Shell_A6a87OWA3tx16g9V.json index 65352d25..06c73c40 100644 --- a/src/packs/ancestries/feature_Shell_A6a87OWA3tx16g9V.json +++ b/src/packs/ancestries/feature_Shell_A6a87OWA3tx16g9V.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [ { @@ -81,12 +86,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753996421284, - "modifiedTime": 1753996433164, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394431506, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!A6a87OWA3tx16g9V" } diff --git a/src/packs/ancestries/feature_Sturdy_60o3cKUZzxO9EDQF.json b/src/packs/ancestries/feature_Sturdy_60o3cKUZzxO9EDQF.json index 61ff446d..fac77407 100644 --- a/src/packs/ancestries/feature_Sturdy_60o3cKUZzxO9EDQF.json +++ b/src/packs/ancestries/feature_Sturdy_60o3cKUZzxO9EDQF.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754000559764, - "modifiedTime": 1754000590019, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394566830, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!60o3cKUZzxO9EDQF" } diff --git a/src/packs/ancestries/feature_Surefooted_YsJticxv8OFndd4D.json b/src/packs/ancestries/feature_Surefooted_YsJticxv8OFndd4D.json index cc0fd804..a11247db 100644 --- a/src/packs/ancestries/feature_Surefooted_YsJticxv8OFndd4D.json +++ b/src/packs/ancestries/feature_Surefooted_YsJticxv8OFndd4D.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 29, + "artist": "" + } }, "effects": [], "sort": 0, @@ -23,12 +28,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753997026520, - "modifiedTime": 1753997047297, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394473491, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!YsJticxv8OFndd4D" } diff --git a/src/packs/ancestries/feature_Thick_Skin_S0Ww7pYOSREt8qKg.json b/src/packs/ancestries/feature_Thick_Skin_S0Ww7pYOSREt8qKg.json index 6b8aa900..0a1fdc97 100644 --- a/src/packs/ancestries/feature_Thick_Skin_S0Ww7pYOSREt8qKg.json +++ b/src/packs/ancestries/feature_Thick_Skin_S0Ww7pYOSREt8qKg.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 27, + "artist": "" + } }, "effects": [ { @@ -44,7 +49,7 @@ "startRound": null, "startTurn": null }, - "description": "

When you take Minor damage, you can mark 2 Stress instead of marking a Hit Point.

", + "description": "

When you take Minor damage, you can mark 2 Stress instead of marking a Hit Point.

", "origin": null, "tint": "#ffffff", "transfer": true, @@ -55,12 +60,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753994342724, - "modifiedTime": 1753994373197, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761137921157, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!S0Ww7pYOSREt8qKg.4Lc40mNnRInTKMC5" } @@ -75,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753994247261, - "modifiedTime": 1753994338239, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761506267107, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!S0Ww7pYOSREt8qKg" } diff --git a/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json b/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json index 4078ca03..44e81e5c 100644 --- a/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json +++ b/src/packs/ancestries/feature_Tusks_YhxD1ujZpftPu19w.json @@ -8,11 +8,11 @@ "description": "

When you succeed on an attack against a target within Melee range, you can spend a Hope to gore the target with your tusks, dealing an extra 1d6 damage.

", "resource": null, "actions": { - "1n4ZsA6s2iBAL1tG": { - "type": "effect", - "_id": "1n4ZsA6s2iBAL1tG", + "ytSFDCONRi5L4THz": { + "type": "damage", + "_id": "ytSFDCONRi5L4THz", "systemPath": "actions", - "description": "", + "description": "

When you succeed on an attack against a target within Melee range, you can spend a Hope to gore the target with your tusks, dealing an extra 1d6 damage.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -21,27 +21,65 @@ "key": "hope", "value": 1, "scalable": false, - "step": null + "step": null, + "consumeOnSuccess": false } ], "uses": { "value": null, "max": "", - "recovery": null + "recovery": null, + "consumeOnSuccess": false + }, + "damage": { + "parts": [ + { + "value": { + "custom": { + "enabled": false, + "formula": "" + }, + "multiplier": "flat", + "dice": "d6", + "bonus": null, + "flatMultiplier": 1 + }, + "applyTo": "hitPoints", + "type": [], + "base": false, + "resultBased": false, + "valueAlt": { + "multiplier": "prof", + "flatMultiplier": 1, + "dice": "d6", + "bonus": null, + "custom": { + "enabled": false, + "formula": "" + } + } + } + ], + "includeBase": false + }, + "target": { + "type": "any", + "amount": 1 }, "effects": [], - "target": { - "type": "self", - "amount": null - }, "name": "Spend Hope", "img": "icons/creatures/abilities/fang-tooth-blood-red.webp", - "range": "" + "range": "melee" } }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 30, + "artist": "" + } }, "effects": [ { @@ -112,12 +150,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1754000611682, - "modifiedTime": 1754000658375, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138569638, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!YhxD1ujZpftPu19w" } diff --git a/src/packs/ancestries/feature_Unshakeable_G5pE8FW94V1W9jJx.json b/src/packs/ancestries/feature_Unshakeable_G5pE8FW94V1W9jJx.json index 5d534a67..aa256f5b 100644 --- a/src/packs/ancestries/feature_Unshakeable_G5pE8FW94V1W9jJx.json +++ b/src/packs/ancestries/feature_Unshakeable_G5pE8FW94V1W9jJx.json @@ -57,7 +57,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [], "sort": 0, @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753995651913, - "modifiedTime": 1753995700360, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394394521, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!G5pE8FW94V1W9jJx" } diff --git a/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json b/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json index 56ffaacc..761c63a1 100644 --- a/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json +++ b/src/packs/ancestries/feature_Wings_WquAjoOcso8lwySW.json @@ -12,7 +12,7 @@ "type": "effect", "_id": "dpKxkDSjXsP8kHMI", "systemPath": "actions", - "description": "", + "description": "

You can fly. While flying, you can mark a Stress after an adversary makes an attack against you to gain a +2 bonus to your Evasion against that attack.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -31,17 +30,22 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Stress", "img": "icons/creatures/abilities/wing-batlike-white-blue.webp", - "range": "" + "range": "self" } }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 28, + "artist": "" + } }, "effects": [ { @@ -106,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.2", "createdTime": 1753994723305, - "modifiedTime": 1753994805028, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1761138022348, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!WquAjoOcso8lwySW" } diff --git a/src/packs/beastforms/beastform_Agile_Scout_a9UoCwtrbgKk02mK.json b/src/packs/beastforms/beastform_Agile_Scout_a9UoCwtrbgKk02mK.json index 9ce4cea5..43c4d556 100644 --- a/src/packs/beastforms/beastform_Agile_Scout_a9UoCwtrbgKk02mK.json +++ b/src/packs/beastforms/beastform_Agile_Scout_a9UoCwtrbgKk02mK.json @@ -36,7 +36,12 @@ "advantages": 2, "features": 2 }, - "examples": "Fox, Mouse, Weasel, etc." + "examples": "Fox, Mouse, Weasel, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -120,12 +125,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753570913893, - "modifiedTime": 1753575463479, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395235599, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "a9UoCwtrbgKk02mK", "sort": 500000, diff --git a/src/packs/beastforms/beastform_Aquatic_Predator_ItBVeCl2u5uetgy7.json b/src/packs/beastforms/beastform_Aquatic_Predator_ItBVeCl2u5uetgy7.json index 75c747ab..6b418b31 100644 --- a/src/packs/beastforms/beastform_Aquatic_Predator_ItBVeCl2u5uetgy7.json +++ b/src/packs/beastforms/beastform_Aquatic_Predator_ItBVeCl2u5uetgy7.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Dolphin, Orca, Shark, etc." + "examples": "Dolphin, Orca, Shark, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626985883, - "modifiedTime": 1753626995174, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395436609, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ItBVeCl2u5uetgy7", "sort": 0, diff --git a/src/packs/beastforms/beastform_Aquatic_Scout_qqzdFCxyYupWZK23.json b/src/packs/beastforms/beastform_Aquatic_Scout_qqzdFCxyYupWZK23.json index 4b5c792c..63f041d5 100644 --- a/src/packs/beastforms/beastform_Aquatic_Scout_qqzdFCxyYupWZK23.json +++ b/src/packs/beastforms/beastform_Aquatic_Scout_qqzdFCxyYupWZK23.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Eel, Fish, Octopus, etc." + "examples": "Eel, Fish, Octopus, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753575463467, - "modifiedTime": 1753575469111, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395249086, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "qqzdFCxyYupWZK23", "sort": 200000, diff --git a/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json b/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json index 8a6ec9fb..d6111976 100644 --- a/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json +++ b/src/packs/beastforms/beastform_Armored_Sentry_8pUHJv3BYdjA4Qdf.json @@ -13,13 +13,13 @@ }, "mainTrait": "strength", "advantageOn": { - "ePKq6o90hDkt6KZa": { + "4AbCgOZvyUFH9Pug": { "value": "Dig" }, - "SOesy6zClSPFKtar": { + "8GsRyXaQnfsGNGW6": { "value": "Locate" }, - "y5lYgsGkG4bu4O1g": { + "0ut15QizNIG254Vw": { "value": "Protect" } }, @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Armadillo, Pangolin, Turtle, etc." + "examples": "Armadillo, Pangolin, Turtle, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "1.1.2", "createdTime": 1753580987168, - "modifiedTime": 1759665623244, - "lastModifiedBy": "9HOfUKAXuCu7hUPY" + "modifiedTime": 1761502671010, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_id": "8pUHJv3BYdjA4Qdf", "sort": 100000, diff --git a/src/packs/beastforms/beastform_Epic_Aquatic_Beast_wT4xbF99I55yjKZV.json b/src/packs/beastforms/beastform_Epic_Aquatic_Beast_wT4xbF99I55yjKZV.json index 895a3467..2666e555 100644 --- a/src/packs/beastforms/beastform_Epic_Aquatic_Beast_wT4xbF99I55yjKZV.json +++ b/src/packs/beastforms/beastform_Epic_Aquatic_Beast_wT4xbF99I55yjKZV.json @@ -38,7 +38,12 @@ "advantages": 2, "features": 2 }, - "examples": "Giant Squid, Whale, etc." + "examples": "Giant Squid, Whale, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [ { @@ -128,12 +133,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628697986, - "modifiedTime": 1753628714911, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395495481, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wT4xbF99I55yjKZV", "sort": 0, diff --git a/src/packs/beastforms/beastform_Great_Predator_afbMt4Ld6nY3mw0N.json b/src/packs/beastforms/beastform_Great_Predator_afbMt4Ld6nY3mw0N.json index e794abf2..e526cb8e 100644 --- a/src/packs/beastforms/beastform_Great_Predator_afbMt4Ld6nY3mw0N.json +++ b/src/packs/beastforms/beastform_Great_Predator_afbMt4Ld6nY3mw0N.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Dire Wolf, Velociraptor, Sabertooth Tiger, etc." + "examples": "Dire Wolf, Velociraptor, Sabertooth Tiger, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625648103, - "modifiedTime": 1753626865950, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395413225, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "afbMt4Ld6nY3mw0N", "sort": 100000, diff --git a/src/packs/beastforms/beastform_Great_Winged_Beast_b4BMnTbJ3iPPidSb.json b/src/packs/beastforms/beastform_Great_Winged_Beast_b4BMnTbJ3iPPidSb.json index 15eed972..a7a78a5d 100644 --- a/src/packs/beastforms/beastform_Great_Winged_Beast_b4BMnTbJ3iPPidSb.json +++ b/src/packs/beastforms/beastform_Great_Winged_Beast_b4BMnTbJ3iPPidSb.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Giant Eagle, Falcon, etc." + "examples": "Giant Eagle, Falcon, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626865938, - "modifiedTime": 1753626874515, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395430043, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "b4BMnTbJ3iPPidSb", "sort": 200000, diff --git a/src/packs/beastforms/beastform_Household_Friend_iDmOtiHJJ80AIAVT.json b/src/packs/beastforms/beastform_Household_Friend_iDmOtiHJJ80AIAVT.json index 57a1ecdf..7cf786f1 100644 --- a/src/packs/beastforms/beastform_Household_Friend_iDmOtiHJJ80AIAVT.json +++ b/src/packs/beastforms/beastform_Household_Friend_iDmOtiHJJ80AIAVT.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Cat, Dog, Rabbit, etc." + "examples": "Cat, Dog, Rabbit, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753573035973, - "modifiedTime": 1753575463479, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395259885, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "iDmOtiHJJ80AIAVT", "sort": 100000, diff --git a/src/packs/beastforms/beastform_Legendary_Beast_mqP6z4Wg4K3oDAom.json b/src/packs/beastforms/beastform_Legendary_Beast_mqP6z4Wg4K3oDAom.json index a73b31d2..6bbfee9e 100644 --- a/src/packs/beastforms/beastform_Legendary_Beast_mqP6z4Wg4K3oDAom.json +++ b/src/packs/beastforms/beastform_Legendary_Beast_mqP6z4Wg4K3oDAom.json @@ -23,7 +23,12 @@ "advantages": 2, "features": 2 }, - "examples": "" + "examples": "", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -95,12 +100,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753627165434, - "modifiedTime": 1753627165434, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395443346, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "mqP6z4Wg4K3oDAom", "sort": 0, diff --git a/src/packs/beastforms/beastform_Legendary_Hybrid_rRUtgcUjimlpPhnn.json b/src/packs/beastforms/beastform_Legendary_Hybrid_rRUtgcUjimlpPhnn.json index aff94138..99ca7aa0 100644 --- a/src/packs/beastforms/beastform_Legendary_Hybrid_rRUtgcUjimlpPhnn.json +++ b/src/packs/beastforms/beastform_Legendary_Hybrid_rRUtgcUjimlpPhnn.json @@ -23,7 +23,12 @@ "features": 2, "maximumTier": 2 }, - "examples": "" + "examples": "", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -113,12 +118,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753627303526, - "modifiedTime": 1753627303526, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395450377, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rRUtgcUjimlpPhnn", "sort": 0, diff --git a/src/packs/beastforms/beastform_Massive_Behemoth_qjwMzPn33aKZACkv.json b/src/packs/beastforms/beastform_Massive_Behemoth_qjwMzPn33aKZACkv.json index 470cfffe..3022d310 100644 --- a/src/packs/beastforms/beastform_Massive_Behemoth_qjwMzPn33aKZACkv.json +++ b/src/packs/beastforms/beastform_Massive_Behemoth_qjwMzPn33aKZACkv.json @@ -39,7 +39,12 @@ "advantages": 2, "features": 2 }, - "examples": "Elephant, Mammoth, Rhinoceros, etc." + "examples": "Elephant, Mammoth, Rhinoceros, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -129,12 +134,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753627711166, - "modifiedTime": 1753631381561, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395470445, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "qjwMzPn33aKZACkv", "sort": 100000, diff --git a/src/packs/beastforms/beastform_Mighty_Lizard_94tvcC3D5Kp4lzuN.json b/src/packs/beastforms/beastform_Mighty_Lizard_94tvcC3D5Kp4lzuN.json index 374fc301..63bfaa08 100644 --- a/src/packs/beastforms/beastform_Mighty_Lizard_94tvcC3D5Kp4lzuN.json +++ b/src/packs/beastforms/beastform_Mighty_Lizard_94tvcC3D5Kp4lzuN.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Alligator, Crocodile, Gila Monster, etc." + "examples": "Alligator, Crocodile, Gila Monster, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626720443, - "modifiedTime": 1753626865950, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395421310, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "94tvcC3D5Kp4lzuN", "sort": 300000, diff --git a/src/packs/beastforms/beastform_Mighty_Strider_zRLjqKx4Rn2TjivL.json b/src/packs/beastforms/beastform_Mighty_Strider_zRLjqKx4Rn2TjivL.json index e44e01e9..bc46ad18 100644 --- a/src/packs/beastforms/beastform_Mighty_Strider_zRLjqKx4Rn2TjivL.json +++ b/src/packs/beastforms/beastform_Mighty_Strider_zRLjqKx4Rn2TjivL.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Camel, Horse, Zebra, etc." + "examples": "Camel, Horse, Zebra, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753617739175, - "modifiedTime": 1753617745460, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395313904, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "zRLjqKx4Rn2TjivL", "sort": 200000, diff --git a/src/packs/beastforms/beastform_Mythic_Aerial_Hunter_jV6EuEacyQlHW4SN.json b/src/packs/beastforms/beastform_Mythic_Aerial_Hunter_jV6EuEacyQlHW4SN.json index fbd60195..87dabf23 100644 --- a/src/packs/beastforms/beastform_Mythic_Aerial_Hunter_jV6EuEacyQlHW4SN.json +++ b/src/packs/beastforms/beastform_Mythic_Aerial_Hunter_jV6EuEacyQlHW4SN.json @@ -38,7 +38,12 @@ "advantages": 2, "features": 2 }, - "examples": "Dragon, Pterodactyl, Roc, Wyvern, etc." + "examples": "Dragon, Pterodactyl, Roc, Wyvern, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [ { @@ -128,12 +133,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628382723, - "modifiedTime": 1753628401450, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395486698, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jV6EuEacyQlHW4SN", "sort": 200000, diff --git a/src/packs/beastforms/beastform_Mythic_Beast_kObobka52JdpWBSu.json b/src/packs/beastforms/beastform_Mythic_Beast_kObobka52JdpWBSu.json index d7d407a6..0032c72c 100644 --- a/src/packs/beastforms/beastform_Mythic_Beast_kObobka52JdpWBSu.json +++ b/src/packs/beastforms/beastform_Mythic_Beast_kObobka52JdpWBSu.json @@ -23,7 +23,12 @@ "advantages": 2, "features": 2 }, - "examples": "" + "examples": "", + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [ { @@ -101,12 +106,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628844905, - "modifiedTime": 1753628844905, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395505081, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kObobka52JdpWBSu", "sort": 0, diff --git a/src/packs/beastforms/beastform_Mythic_Hybrid_WAbxCf2An8qmxyJ1.json b/src/packs/beastforms/beastform_Mythic_Hybrid_WAbxCf2An8qmxyJ1.json index c0be75db..21e2a834 100644 --- a/src/packs/beastforms/beastform_Mythic_Hybrid_WAbxCf2An8qmxyJ1.json +++ b/src/packs/beastforms/beastform_Mythic_Hybrid_WAbxCf2An8qmxyJ1.json @@ -23,7 +23,12 @@ "features": 3, "maximumTier": 3 }, - "examples": "" + "examples": "", + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [ { @@ -113,12 +118,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628965658, - "modifiedTime": 1753628965658, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395511998, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WAbxCf2An8qmxyJ1", "sort": 0, diff --git a/src/packs/beastforms/beastform_Nimble_Grazer_CItO8yX6amQaqyk7.json b/src/packs/beastforms/beastform_Nimble_Grazer_CItO8yX6amQaqyk7.json index 926b8739..232721d8 100644 --- a/src/packs/beastforms/beastform_Nimble_Grazer_CItO8yX6amQaqyk7.json +++ b/src/packs/beastforms/beastform_Nimble_Grazer_CItO8yX6amQaqyk7.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Deer, Gazelle, Goat, etc." + "examples": "Deer, Gazelle, Goat, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753574930310, - "modifiedTime": 1753575463479, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395265901, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CItO8yX6amQaqyk7", "sort": 300000, diff --git a/src/packs/beastforms/beastform_Pack_Predator_YLisKYYhAGca50WM.json b/src/packs/beastforms/beastform_Pack_Predator_YLisKYYhAGca50WM.json index 38150adb..664b6c83 100644 --- a/src/packs/beastforms/beastform_Pack_Predator_YLisKYYhAGca50WM.json +++ b/src/packs/beastforms/beastform_Pack_Predator_YLisKYYhAGca50WM.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Coyote, Hyena, Wolf, etc." + "examples": "Coyote, Hyena, Wolf, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753575274807, - "modifiedTime": 1753575463479, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395272135, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YLisKYYhAGca50WM", "sort": 400000, diff --git a/src/packs/beastforms/beastform_Pouncing_Predator_33oFSZ1PwFqInHPe.json b/src/packs/beastforms/beastform_Pouncing_Predator_33oFSZ1PwFqInHPe.json index 9073bb23..fe261bf7 100644 --- a/src/packs/beastforms/beastform_Pouncing_Predator_33oFSZ1PwFqInHPe.json +++ b/src/packs/beastforms/beastform_Pouncing_Predator_33oFSZ1PwFqInHPe.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Cheetah, Lion, Panther, etc." + "examples": "Cheetah, Lion, Panther, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621789186, - "modifiedTime": 1753621803375, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395328437, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "33oFSZ1PwFqInHPe", "sort": 0, diff --git a/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json b/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json index 5a1f20e5..b88b60ce 100644 --- a/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json +++ b/src/packs/beastforms/beastform_Powerful_Beast_m8BVTuJI1wCvzTcf.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Bear, Bull, Moose, etc." + "examples": "Bear, Bull, Moose, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -106,11 +111,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", - "lastModifiedBy": "mdk78Q6pOyHh6aBg", - "modifiedTime": 1757931628001 + "lastModifiedBy": "fBcTgyTzoARBvohY", + "modifiedTime": 1761503222813 }, "_key": "!items.effects!m8BVTuJI1wCvzTcf.AZGTvqzFVHa4wS1a" } @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753582598510, - "modifiedTime": 1753617739186, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395305302, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "m8BVTuJI1wCvzTcf", "sort": 300000, diff --git a/src/packs/beastforms/beastform_Stalking_Arachnid_A4TVRY0D5r9EiVwA.json b/src/packs/beastforms/beastform_Stalking_Arachnid_A4TVRY0D5r9EiVwA.json index 98a949ff..6416e019 100644 --- a/src/packs/beastforms/beastform_Stalking_Arachnid_A4TVRY0D5r9EiVwA.json +++ b/src/packs/beastforms/beastform_Stalking_Arachnid_A4TVRY0D5r9EiVwA.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Tarantula, Wolf Spider, etc." + "examples": "Tarantula, Wolf Spider, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753576016472, - "modifiedTime": 1753576046773, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395283720, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "A4TVRY0D5r9EiVwA", "sort": 0, diff --git a/src/packs/beastforms/beastform_Striking_Serpent_1XrZWGDttBAAUxR1.json b/src/packs/beastforms/beastform_Striking_Serpent_1XrZWGDttBAAUxR1.json index 3f4a5dbb..5efb5d71 100644 --- a/src/packs/beastforms/beastform_Striking_Serpent_1XrZWGDttBAAUxR1.json +++ b/src/packs/beastforms/beastform_Striking_Serpent_1XrZWGDttBAAUxR1.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Cobra, Rattlesnake, Viper, etc." + "examples": "Cobra, Rattlesnake, Viper, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621251793, - "modifiedTime": 1753621266619, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395321271, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1XrZWGDttBAAUxR1", "sort": 0, diff --git a/src/packs/beastforms/beastform_Terrible_Lizard_5BABxRe2XVrYTj8N.json b/src/packs/beastforms/beastform_Terrible_Lizard_5BABxRe2XVrYTj8N.json index 0614d763..a0025f36 100644 --- a/src/packs/beastforms/beastform_Terrible_Lizard_5BABxRe2XVrYTj8N.json +++ b/src/packs/beastforms/beastform_Terrible_Lizard_5BABxRe2XVrYTj8N.json @@ -38,7 +38,12 @@ "advantages": 2, "features": 2 }, - "examples": "Brachiosaurus, Tyrannosaurus, etc." + "examples": "Brachiosaurus, Tyrannosaurus, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -128,12 +133,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628213224, - "modifiedTime": 1753628382733, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395476212, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5BABxRe2XVrYTj8N", "sort": 300000, diff --git a/src/packs/beastforms/beastform_Winged_Beast_mZ4Wlqtss2FlNNvL.json b/src/packs/beastforms/beastform_Winged_Beast_mZ4Wlqtss2FlNNvL.json index 352b7124..207e0334 100644 --- a/src/packs/beastforms/beastform_Winged_Beast_mZ4Wlqtss2FlNNvL.json +++ b/src/packs/beastforms/beastform_Winged_Beast_mZ4Wlqtss2FlNNvL.json @@ -35,7 +35,12 @@ "advantages": 2, "features": 2 }, - "examples": "Hawk, Owl, Raven, etc." + "examples": "Hawk, Owl, Raven, etc.", + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -125,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753624952844, - "modifiedTime": 1753624972889, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395334887, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "mZ4Wlqtss2FlNNvL", "sort": 0, diff --git a/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json b/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json index d36699a4..bbc22d34 100644 --- a/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json +++ b/src/packs/beastforms/feature_Agile_xLS5YT1B6yeCiNTg.json @@ -15,7 +15,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -39,7 +38,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753569752255, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395530698, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xLS5YT1B6yeCiNTg", "sort": 2700000, diff --git a/src/packs/beastforms/feature_Aquatic_kQWWx9P3fCyGSVOI.json b/src/packs/beastforms/feature_Aquatic_kQWWx9P3fCyGSVOI.json index fc8862c7..47bf2c20 100644 --- a/src/packs/beastforms/feature_Aquatic_kQWWx9P3fCyGSVOI.json +++ b/src/packs/beastforms/feature_Aquatic_kQWWx9P3fCyGSVOI.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753575456927, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395593318, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kQWWx9P3fCyGSVOI", "sort": 2100000, diff --git a/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json b/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json index 5ff9b259..4d6a5627 100644 --- a/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json +++ b/src/packs/beastforms/feature_Armored_Shell_nDQZdIF2epKlhauX.json @@ -18,13 +18,12 @@ "scalable": false, "key": "armor", "value": 1, - "keyIsID": false, "step": null } ], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, "effects": [ @@ -39,12 +38,17 @@ }, "name": "Retract", "img": "icons/creatures/reptiles/turtle-shell-glowing-green.webp", - "range": "" + "range": "self" } }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -142,12 +146,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753580983699, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1756041050697, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "nDQZdIF2epKlhauX", "sort": 2200000, diff --git a/src/packs/beastforms/feature_Bird_s_Eye_View_FNKQlWQcArSorMPK.json b/src/packs/beastforms/feature_Bird_s_Eye_View_FNKQlWQcArSorMPK.json index 83fdfab1..53fe0c0b 100644 --- a/src/packs/beastforms/feature_Bird_s_Eye_View_FNKQlWQcArSorMPK.json +++ b/src/packs/beastforms/feature_Bird_s_Eye_View_FNKQlWQcArSorMPK.json @@ -31,7 +31,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753624947561, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395710291, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "FNKQlWQcArSorMPK", "sort": 1400000, diff --git a/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json b/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json index 7b714c75..c73cc803 100644 --- a/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json +++ b/src/packs/beastforms/feature_Cannonball_jp5KpPRBFBOIs46Q.json @@ -37,7 +37,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -61,7 +60,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -74,12 +78,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753580984811, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395630937, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jp5KpPRBFBOIs46Q", "sort": 1900000, diff --git a/src/packs/beastforms/feature_Carrier_EVOJTskJYf4rpuga.json b/src/packs/beastforms/feature_Carrier_EVOJTskJYf4rpuga.json index 4a0dcae2..30c82923 100644 --- a/src/packs/beastforms/feature_Carrier_EVOJTskJYf4rpuga.json +++ b/src/packs/beastforms/feature_Carrier_EVOJTskJYf4rpuga.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753617736331, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395659457, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "EVOJTskJYf4rpuga", "sort": 900000, diff --git a/src/packs/beastforms/feature_Companion_jhWSC5bNZyYUAA5Q.json b/src/packs/beastforms/feature_Companion_jhWSC5bNZyYUAA5Q.json index b54e4a05..2a5504fe 100644 --- a/src/packs/beastforms/feature_Companion_jhWSC5bNZyYUAA5Q.json +++ b/src/packs/beastforms/feature_Companion_jhWSC5bNZyYUAA5Q.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753572888764, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395556952, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jhWSC5bNZyYUAA5Q", "sort": 2600000, diff --git a/src/packs/beastforms/feature_Deadly_Raptor_QQtQ77tos8ijTHag.json b/src/packs/beastforms/feature_Deadly_Raptor_QQtQ77tos8ijTHag.json index d21facf5..e44e8fb5 100644 --- a/src/packs/beastforms/feature_Deadly_Raptor_QQtQ77tos8ijTHag.json +++ b/src/packs/beastforms/feature_Deadly_Raptor_QQtQ77tos8ijTHag.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628380597, - "modifiedTime": 1753628380597, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395796630, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "QQtQ77tos8ijTHag", "sort": 0, diff --git a/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json b/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json index 4e683d9a..026db6c4 100644 --- a/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json +++ b/src/packs/beastforms/feature_Demolish_DfBXO8jTchwFG8dZ.json @@ -15,7 +15,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -93,7 +92,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -144,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753627699848, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395772711, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "DfBXO8jTchwFG8dZ", "sort": 100000, diff --git a/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json b/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json index 1c792e95..a2ffb88d 100644 --- a/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json +++ b/src/packs/beastforms/feature_Devastating_Strikes_HJbQcKWcFZ9NoFxs.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -39,7 +38,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628206110, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395786112, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HJbQcKWcFZ9NoFxs", "sort": 200000, diff --git a/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json b/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json index 1de48d46..582d3c4e 100644 --- a/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json +++ b/src/packs/beastforms/feature_Elusive_Prey_a7Qvmm14nx9BCysA.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -63,7 +62,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -76,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753574925665, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395566717, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "a7Qvmm14nx9BCysA", "sort": 2300000, diff --git a/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json b/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json index cabc703d..dd13a8cc 100644 --- a/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json +++ b/src/packs/beastforms/feature_Fleet_GhHsSHOa509cwCvr.json @@ -15,7 +15,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -39,7 +38,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621784810, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395691006, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "GhHsSHOa509cwCvr", "sort": 1000000, diff --git a/src/packs/beastforms/feature_Fragile_QFg1hNCEoKVDd9Zo.json b/src/packs/beastforms/feature_Fragile_QFg1hNCEoKVDd9Zo.json index e22b70b4..c4a39892 100644 --- a/src/packs/beastforms/feature_Fragile_QFg1hNCEoKVDd9Zo.json +++ b/src/packs/beastforms/feature_Fragile_QFg1hNCEoKVDd9Zo.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753569754067, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395538450, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "QFg1hNCEoKVDd9Zo", "sort": 2500000, diff --git a/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json b/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json index a46fd322..fa90cf04 100644 --- a/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json +++ b/src/packs/beastforms/feature_Hobbling_Strike_8u0HkK3WgtU9lWYs.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -44,7 +43,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [ { @@ -97,12 +101,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753575250590, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395576634, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8u0HkK3WgtU9lWYs", "sort": 2400000, diff --git a/src/packs/beastforms/feature_Hollow_Bones_xVgmXhj2YgeqS1KK.json b/src/packs/beastforms/feature_Hollow_Bones_xVgmXhj2YgeqS1KK.json index d358b416..7dbcb48b 100644 --- a/src/packs/beastforms/feature_Hollow_Bones_xVgmXhj2YgeqS1KK.json +++ b/src/packs/beastforms/feature_Hollow_Bones_xVgmXhj2YgeqS1KK.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753624948910, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395703373, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xVgmXhj2YgeqS1KK", "sort": 1500000, diff --git a/src/packs/beastforms/feature_Massive_Stride_9QkZSeuEKgXtlpHc.json b/src/packs/beastforms/feature_Massive_Stride_9QkZSeuEKgXtlpHc.json index 17812c9d..05e95201 100644 --- a/src/packs/beastforms/feature_Massive_Stride_9QkZSeuEKgXtlpHc.json +++ b/src/packs/beastforms/feature_Massive_Stride_9QkZSeuEKgXtlpHc.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628207886, - "modifiedTime": 1753628207886, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395780645, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9QkZSeuEKgXtlpHc", "sort": 0, diff --git a/src/packs/beastforms/feature_Ocean_Master_tGDdEH40wyOCsFmH.json b/src/packs/beastforms/feature_Ocean_Master_tGDdEH40wyOCsFmH.json index 37716764..2dab5551 100644 --- a/src/packs/beastforms/feature_Ocean_Master_tGDdEH40wyOCsFmH.json +++ b/src/packs/beastforms/feature_Ocean_Master_tGDdEH40wyOCsFmH.json @@ -36,7 +36,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [ { @@ -87,12 +92,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628691739, - "modifiedTime": 1753628691739, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395806363, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tGDdEH40wyOCsFmH", "sort": 0, diff --git a/src/packs/beastforms/feature_Pack_Hunting_d3q8lfeiEMyTjusT.json b/src/packs/beastforms/feature_Pack_Hunting_d3q8lfeiEMyTjusT.json index d6e58fcb..0c66a4e0 100644 --- a/src/packs/beastforms/feature_Pack_Hunting_d3q8lfeiEMyTjusT.json +++ b/src/packs/beastforms/feature_Pack_Hunting_d3q8lfeiEMyTjusT.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 12, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -21,12 +26,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753575268237, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395582868, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "d3q8lfeiEMyTjusT", "sort": 1800000, diff --git a/src/packs/beastforms/feature_Physical_Defense_StabkQ3BzWRZa8Tz.json b/src/packs/beastforms/feature_Physical_Defense_StabkQ3BzWRZa8Tz.json index effdc34f..4a86cb45 100644 --- a/src/packs/beastforms/feature_Physical_Defense_StabkQ3BzWRZa8Tz.json +++ b/src/packs/beastforms/feature_Physical_Defense_StabkQ3BzWRZa8Tz.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626716369, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395740811, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "StabkQ3BzWRZa8Tz", "sort": 500000, diff --git a/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json b/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json index 0164d236..eedab4d6 100644 --- a/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json +++ b/src/packs/beastforms/feature_Rampage_8upqfcZvi7b5hRLE.json @@ -18,35 +18,91 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, "effects": [ { - "_id": "5TX0hHFKZHvBeWne", + "_id": "A7l4JEBC1FFQajsN", "onSave": false } ], "target": { - "type": null, + "type": "self", "amount": null }, - "name": "Gain Proficiency", + "name": "Mark Stress", "img": "icons/creatures/abilities/bear-roar-bite-brown.webp", - "range": "" + "range": "self" } }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, - "effects": [], + "effects": [ + { + "name": "Rampage", + "img": "icons/creatures/claws/claw-bear-paw-swipe-red.webp", + "origin": "Compendium.daggerheart.beastforms.Item.8upqfcZvi7b5hRLE", + "transfer": false, + "_id": "A7l4JEBC1FFQajsN", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [ + { + "key": "system.proficiency", + "mode": 2, + "value": "1", + "priority": null + } + ], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

Before you make an attack roll, you can mark a Stress to gain a +1 bonus to your Proficiency for that attack.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756041194412, + "modifiedTime": 1756041218646, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!8upqfcZvi7b5hRLE.A7l4JEBC1FFQajsN" + } + ], "folder": "uU8bIoZvXge0rLaU", "ownership": { "default": 0, @@ -57,12 +113,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753582591417, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1756041228102, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "8upqfcZvi7b5hRLE", "sort": 2000000, diff --git a/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json b/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json index c22dad6e..0ab50abe 100644 --- a/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json +++ b/src/packs/beastforms/feature_Snapping_Strike_Ky3rZD3sJMXYZOBC.json @@ -15,7 +15,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -44,7 +43,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -96,12 +100,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626717512, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395734143, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Ky3rZD3sJMXYZOBC", "sort": 300000, diff --git a/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json b/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json index 13ffe145..5392665b 100644 --- a/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json +++ b/src/packs/beastforms/feature_Takedown_0ey4kM9ssj2otHvb.json @@ -18,13 +18,12 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, "damage": { @@ -58,7 +57,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [], @@ -84,19 +83,24 @@ }, "name": "Attack", "img": "icons/creatures/abilities/paw-print-orange.webp", - "range": "" + "range": "self" } }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { "name": "Takedown", "img": "icons/creatures/abilities/paw-print-orange.webp", "origin": "Item.okjlLUwEdNOKeUk3", - "transfer": false, + "transfer": true, "_id": "hE6ciIusvKEtUQ8U", "type": "base", "system": {}, @@ -108,7 +112,7 @@ "priority": null } ], - "disabled": false, + "disabled": true, "duration": { "startTime": null, "combat": null, @@ -118,7 +122,7 @@ "startRound": null, "startTurn": null }, - "description": "", + "description": "

You gain a +2 bonus to your Proficiency for this attack and the target must mark a Stress.

", "tint": "#ffffff", "statuses": [], "sort": 0, @@ -127,10 +131,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", - "lastModifiedBy": null + "lastModifiedBy": "vUIbuan0U50nfKBE", + "modifiedTime": 1756041368153 }, "_key": "!items.effects!0ey4kM9ssj2otHvb.hE6ciIusvKEtUQ8U" } @@ -145,12 +150,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753621786000, - "modifiedTime": 1753643111609, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1756041242273, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "0ey4kM9ssj2otHvb", "sort": 600000, diff --git a/src/packs/beastforms/feature_Thick_Hide_ZYbdXaWVj2zdcmaK.json b/src/packs/beastforms/feature_Thick_Hide_ZYbdXaWVj2zdcmaK.json index 62e74afd..ab765715 100644 --- a/src/packs/beastforms/feature_Thick_Hide_ZYbdXaWVj2zdcmaK.json +++ b/src/packs/beastforms/feature_Thick_Hide_ZYbdXaWVj2zdcmaK.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753582593100, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395643155, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ZYbdXaWVj2zdcmaK", "sort": 1100000, diff --git a/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json b/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json index 15dec8f3..0db60d14 100644 --- a/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json +++ b/src/packs/beastforms/feature_Trample_A0lgd6eVEfX6oqSB.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -93,7 +92,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -144,12 +148,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753617737349, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395668076, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "A0lgd6eVEfX6oqSB", "sort": 800000, diff --git a/src/packs/beastforms/feature_Undaunted_ODudjX88Te4vDP57.json b/src/packs/beastforms/feature_Undaunted_ODudjX88Te4vDP57.json index 5137104d..1ed1f2eb 100644 --- a/src/packs/beastforms/feature_Undaunted_ODudjX88Te4vDP57.json +++ b/src/packs/beastforms/feature_Undaunted_ODudjX88Te4vDP57.json @@ -8,7 +8,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753627700926, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395766945, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ODudjX88Te4vDP57", "sort": 400000, diff --git a/src/packs/beastforms/feature_Unyielding_vEAQ4cfsoPmOv2Gg.json b/src/packs/beastforms/feature_Unyielding_vEAQ4cfsoPmOv2Gg.json index 98fe5e15..b1aadec4 100644 --- a/src/packs/beastforms/feature_Unyielding_vEAQ4cfsoPmOv2Gg.json +++ b/src/packs/beastforms/feature_Unyielding_vEAQ4cfsoPmOv2Gg.json @@ -55,7 +55,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753628692761, - "modifiedTime": 1753628692761, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395812715, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "vEAQ4cfsoPmOv2Gg", "sort": 0, diff --git a/src/packs/beastforms/feature_Venomous_Bite_2KlTnfzO03vneVS8.json b/src/packs/beastforms/feature_Venomous_Bite_2KlTnfzO03vneVS8.json index bea17311..150a4ffb 100644 --- a/src/packs/beastforms/feature_Venomous_Bite_2KlTnfzO03vneVS8.json +++ b/src/packs/beastforms/feature_Venomous_Bite_2KlTnfzO03vneVS8.json @@ -36,7 +36,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -86,12 +91,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753576004121, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395614203, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2KlTnfzO03vneVS8", "sort": 1600000, diff --git a/src/packs/beastforms/feature_Venomous_Strike_uW3853pViM9VAfHb.json b/src/packs/beastforms/feature_Venomous_Strike_uW3853pViM9VAfHb.json index 11e60f58..cd44212c 100644 --- a/src/packs/beastforms/feature_Venomous_Strike_uW3853pViM9VAfHb.json +++ b/src/packs/beastforms/feature_Venomous_Strike_uW3853pViM9VAfHb.json @@ -60,7 +60,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -109,12 +114,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621248553, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395682759, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uW3853pViM9VAfHb", "sort": 1300000, diff --git a/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json b/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json index 9c862f3e..8083ec69 100644 --- a/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json +++ b/src/packs/beastforms/feature_Vicious_Maul_jYUBi7yLHap5ljpa.json @@ -15,7 +15,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -74,7 +73,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 14, + "artist": "" + } }, "effects": [ { @@ -125,12 +129,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625637943, - "modifiedTime": 1753643084893, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395725076, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jYUBi7yLHap5ljpa", "sort": 700000, diff --git a/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json b/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json index 5380f968..639966e6 100644 --- a/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json +++ b/src/packs/beastforms/feature_Warning_Hiss_cTlqpQZPy5TvdDAT.json @@ -18,7 +18,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -39,7 +38,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [], "folder": "uU8bIoZvXge0rLaU", @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753621249622, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395677589, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "cTlqpQZPy5TvdDAT", "sort": 1200000, diff --git a/src/packs/beastforms/feature_Webslinger_D73fS1iM4SZPFimu.json b/src/packs/beastforms/feature_Webslinger_D73fS1iM4SZPFimu.json index 4f6e6717..5e1295e1 100644 --- a/src/packs/beastforms/feature_Webslinger_D73fS1iM4SZPFimu.json +++ b/src/packs/beastforms/feature_Webslinger_D73fS1iM4SZPFimu.json @@ -60,7 +60,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 13, + "artist": "" + } }, "effects": [ { @@ -112,12 +117,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753576005315, - "modifiedTime": 1753628206133, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755395606969, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "D73fS1iM4SZPFimu", "sort": 1700000, diff --git a/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json b/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json index 5ffd8a11..4a7a697e 100644 --- a/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json +++ b/src/packs/classes/class_Bard_vegl3bFOq3pcFTWT.json @@ -58,7 +58,12 @@ "suggestedSecondaryWeapon": "Compendium.daggerheart.weapons.Item.wKklDxs5nkzILNp4", "suggestedArmor": "Compendium.daggerheart.armors.Item.yJFp1bfpecDcStVK" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "ownership": { diff --git a/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json b/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json index 086d363e..6fae5522 100644 --- a/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json +++ b/src/packs/classes/class_Druid_ZNwUTCyGCEcidZFv.json @@ -58,7 +58,12 @@ "suggestedSecondaryWeapon": "Compendium.daggerheart.weapons.Item.mxwWKDujgsRcZWPT", "suggestedArmor": "Compendium.daggerheart.armors.Item.nibfdNtp2PtxvbVz" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [], "folder": null, diff --git a/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json b/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json index b50f86ef..81f9c18f 100644 --- a/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json +++ b/src/packs/classes/class_Guardian_nRAyoC0fOzXPDa4z.json @@ -54,7 +54,12 @@ "suggestedSecondaryWeapon": null, "suggestedArmor": "Compendium.daggerheart.armors.Item.haULhuEg37zUUvhb" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [], "folder": null, diff --git a/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json b/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json index 62e51c7d..3c15afec 100644 --- a/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json +++ b/src/packs/classes/class_Ranger_BTyfve69LKqoOi9S.json @@ -54,7 +54,12 @@ "suggestedSecondaryWeapon": null, "suggestedArmor": "Compendium.daggerheart.armors.Item.nibfdNtp2PtxvbVz" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "folder": null, diff --git a/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json b/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json index 146ad340..e2d1728d 100644 --- a/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json +++ b/src/packs/classes/class_Rogue_CvHlkHZfpMiCz5uT.json @@ -58,7 +58,12 @@ "suggestedSecondaryWeapon": "Compendium.daggerheart.weapons.Item.wKklDxs5nkzILNp4", "suggestedArmor": "Compendium.daggerheart.armors.Item.yJFp1bfpecDcStVK" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [], "folder": null, diff --git a/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json b/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json index 6a2b70a1..ccfdd5d5 100644 --- a/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json +++ b/src/packs/classes/class_Seraph_5ZnlJ5bEoyOTkUJv.json @@ -54,11 +54,16 @@ "suggestedSecondaryWeapon": "Compendium.daggerheart.weapons.Item.mxwWKDujgsRcZWPT", "suggestedArmor": "Compendium.daggerheart.armors.Item.haULhuEg37zUUvhb" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "folder": null, - "sort": 0, + "sort": 737500, "ownership": { "default": 0, "Q9NoTaEarn3VMS6Z": 3 @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "1.1.0", "createdTime": 1754351482530, - "modifiedTime": 1755943523935, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1760018751908, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!5ZnlJ5bEoyOTkUJv" } diff --git a/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json b/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json index 0d3d71ac..fc4de09f 100644 --- a/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json +++ b/src/packs/classes/class_Sorcerer_DchOzHcWIJE9FKcR.json @@ -62,11 +62,16 @@ "suggestedSecondaryWeapon": null, "suggestedArmor": "Compendium.daggerheart.armors.Item.yJFp1bfpecDcStVK" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "folder": null, - "sort": 0, + "sort": 743750, "ownership": { "default": 0, "Q9NoTaEarn3VMS6Z": 3 @@ -76,12 +81,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "1.1.0", "createdTime": 1754349743129, - "modifiedTime": 1755943536635, - "lastModifiedBy": "tt3PwMBXcTLCtIQU" + "modifiedTime": 1760018753854, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!DchOzHcWIJE9FKcR" } diff --git a/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json b/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json index 2d120f8e..fd068f16 100644 --- a/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json +++ b/src/packs/classes/class_Warrior_xCUWwJz4WSthvLfy.json @@ -58,7 +58,12 @@ "suggestedSecondaryWeapon": null, "suggestedArmor": "Compendium.daggerheart.armors.Item.haULhuEg37zUUvhb" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [], "folder": null, diff --git a/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json b/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json index 0955e68a..56383931 100644 --- a/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json +++ b/src/packs/classes/class_Wizard_5LwX4m8ziY3F1ZGC.json @@ -58,7 +58,12 @@ "suggestedSecondaryWeapon": null, "suggestedArmor": "Compendium.daggerheart.armors.Item.nibfdNtp2PtxvbVz" }, - "isMulticlass": false + "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "folder": null, diff --git a/src/packs/classes/feature_Arcane_Sense_CHK32dfCTTyuxV1A.json b/src/packs/classes/feature_Arcane_Sense_CHK32dfCTTyuxV1A.json index 493a5336..6e737d42 100644 --- a/src/packs/classes/feature_Arcane_Sense_CHK32dfCTTyuxV1A.json +++ b/src/packs/classes/feature_Arcane_Sense_CHK32dfCTTyuxV1A.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349703843, - "modifiedTime": 1754349703843, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391367476, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CHK32dfCTTyuxV1A" } diff --git a/src/packs/classes/feature_Attack_Of_Opportunity_3hNVqD1c0VIw2Nj5.json b/src/packs/classes/feature_Attack_Of_Opportunity_3hNVqD1c0VIw2Nj5.json index 4fc8f904..aff9be25 100644 --- a/src/packs/classes/feature_Attack_Of_Opportunity_3hNVqD1c0VIw2Nj5.json +++ b/src/packs/classes/feature_Attack_Of_Opportunity_3hNVqD1c0VIw2Nj5.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754257407143, - "modifiedTime": 1754257470399, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391424513, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3hNVqD1c0VIw2Nj5" } diff --git a/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json b/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json index c93225e2..327e611f 100644 --- a/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json +++ b/src/packs/classes/feature_Beastform_P1K0jcnH2RiS6TLd.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -40,7 +39,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [], "sort": 200000, @@ -53,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754221796297, - "modifiedTime": 1754246230370, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391222871, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!P1K0jcnH2RiS6TLd" } diff --git a/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json b/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json index f01b29b1..a371bfea 100644 --- a/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json +++ b/src/packs/classes/feature_Channel_Raw_Power_P02cbN50LIoD662z.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,7 +41,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -55,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349703843, - "modifiedTime": 1754498040342, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391373925, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!P02cbN50LIoD662z" } diff --git a/src/packs/classes/feature_Cloaked_5IT8wYa0m1EFw8Zp.json b/src/packs/classes/feature_Cloaked_5IT8wYa0m1EFw8Zp.json index d5067bf7..f14ef868 100644 --- a/src/packs/classes/feature_Cloaked_5IT8wYa0m1EFw8Zp.json +++ b/src/packs/classes/feature_Cloaked_5IT8wYa0m1EFw8Zp.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754324132841, - "modifiedTime": 1754324172617, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391307139, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!5IT8wYa0m1EFw8Zp" } diff --git a/src/packs/classes/feature_Combat_Training_eoSmuAJmgHUyULtp.json b/src/packs/classes/feature_Combat_Training_eoSmuAJmgHUyULtp.json index 83121c84..e13427d4 100644 --- a/src/packs/classes/feature_Combat_Training_eoSmuAJmgHUyULtp.json +++ b/src/packs/classes/feature_Combat_Training_eoSmuAJmgHUyULtp.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [ { @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754257489875, - "modifiedTime": 1754257512503, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391432013, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!eoSmuAJmgHUyULtp" } diff --git a/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json b/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json index ed9b87e3..cd011361 100644 --- a/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json +++ b/src/packs/classes/feature_Evolution_6rlxhrRwFaVgq9fe.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], @@ -40,7 +39,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [], "sort": 100000, @@ -53,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754221506611, - "modifiedTime": 1754353698203, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391214500, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6rlxhrRwFaVgq9fe" } diff --git a/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json b/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json index af403628..b2e30707 100644 --- a/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json +++ b/src/packs/classes/feature_Frontline_Tank_YS1g7YdWwOaS629x.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], @@ -60,7 +59,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [], @@ -81,11 +80,16 @@ }, "name": "Spend Hope", "img": "icons/magic/defensive/shield-barrier-flaming-pentagon-orange.webp", - "range": "" + "range": "self" } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [], "sort": 0, @@ -98,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754246687097, - "modifiedTime": 1754246740977, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1756034159296, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!YS1g7YdWwOaS629x" } diff --git a/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json b/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json index b99116da..0c831a14 100644 --- a/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json +++ b/src/packs/classes/feature_Hold_Them_Off_2Cyb9ZeuAesf5Sb3.json @@ -5,14 +5,14 @@ "_id": "2Cyb9ZeuAesf5Sb3", "img": "icons/magic/defensive/barrier-shield-dome-deflect-teal.webp", "system": { - "description": "

Spend 3 Hope when you succeed on an attack with a weapon to use that same roll against two additional adversaries within range of the attack.

", + "description": "

Spend 3 Hope when you succeed on an attack with a weapon to use that same roll against two additional adversaries within range of the attack.

", "resource": null, "actions": { "yhVUna5biFAN0o2Y": { "type": "effect", "_id": "yhVUna5biFAN0o2Y", "systemPath": "actions", - "description": "

Spend 3 Hope when you succeed on an attack with a weapon to use that same roll against two additional adversaries within range of the attack.

", + "description": "

Spend 3 Hope when you succeed on an attack with a weapon to use that same roll against two additional adversaries within range of the attack.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], @@ -40,7 +39,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "sort": 0, @@ -53,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754268431889, - "modifiedTime": 1754268481364, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1756034191317, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!2Cyb9ZeuAesf5Sb3" } diff --git a/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json b/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json index 289401df..2ee5cba8 100644 --- a/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json +++ b/src/packs/classes/feature_Life_Support_lSlvSUHbOoX36q2j.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -87,7 +86,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 0, @@ -100,12 +104,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754352191693, - "modifiedTime": 1754352366258, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391338608, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!lSlvSUHbOoX36q2j" } diff --git a/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json b/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json index 0b06f0f2..1627a77a 100644 --- a/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json +++ b/src/packs/classes/feature_Make_a_Scene_N9E5skDDK2VgvohR.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], @@ -44,7 +43,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [ { @@ -102,12 +106,12 @@ "compendiumSource": "Compendium.daggerheart.classes.Item.OxmucTHHfuBSv2dn", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174534518, - "modifiedTime": 1754246214305, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391180683, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/classes/feature_Minor_Illusion_cshTYdtz9yoXYYB3.json b/src/packs/classes/feature_Minor_Illusion_cshTYdtz9yoXYYB3.json index 1bb9865b..a5103190 100644 --- a/src/packs/classes/feature_Minor_Illusion_cshTYdtz9yoXYYB3.json +++ b/src/packs/classes/feature_Minor_Illusion_cshTYdtz9yoXYYB3.json @@ -57,7 +57,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349703843, - "modifiedTime": 1754349703843, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391393430, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cshTYdtz9yoXYYB3" } diff --git a/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json b/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json index fd65ec54..caa2462c 100644 --- a/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json +++ b/src/packs/classes/feature_No_Mercy_njj2C3tMDeCHHOoh.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -38,16 +37,21 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Spend Hope", "img": "icons/magic/holy/barrier-shield-winged-blue.webp", - "range": "" + "range": "self" } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [ { @@ -112,12 +116,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754257270096, - "modifiedTime": 1754257373211, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756034406042, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!njj2C3tMDeCHHOoh" } diff --git a/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json b/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json index 43b53093..b8053ed2 100644 --- a/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json +++ b/src/packs/classes/feature_Not_This_Time_h3VE0jhcM5xHKBs4.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,7 +41,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -55,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254821288, - "modifiedTime": 1754254888546, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391455848, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!h3VE0jhcM5xHKBs4" } diff --git a/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json b/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json index 8203a246..6c8f2ee8 100644 --- a/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json +++ b/src/packs/classes/feature_Prayer_Dice_Xd7RYhfTxIj9aWI2.json @@ -15,7 +15,12 @@ }, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 100000, @@ -30,10 +35,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1754352649696, - "modifiedTime": 1754845640002, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755391345473, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Xd7RYhfTxIj9aWI2" } diff --git a/src/packs/classes/feature_Prestidigitation_SG2uw8h5YuwDviCn.json b/src/packs/classes/feature_Prestidigitation_SG2uw8h5YuwDviCn.json index 3757fde2..d4846155 100644 --- a/src/packs/classes/feature_Prestidigitation_SG2uw8h5YuwDviCn.json +++ b/src/packs/classes/feature_Prestidigitation_SG2uw8h5YuwDviCn.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254907799, - "modifiedTime": 1754254926599, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391463314, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SG2uw8h5YuwDviCn" } diff --git a/src/packs/classes/feature_Rally_PydiMnNCKpd44SGS.json b/src/packs/classes/feature_Rally_PydiMnNCKpd44SGS.json index c5933ca8..f421c6ab 100644 --- a/src/packs/classes/feature_Rally_PydiMnNCKpd44SGS.json +++ b/src/packs/classes/feature_Rally_PydiMnNCKpd44SGS.json @@ -36,7 +36,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174497668, - "modifiedTime": 1754494820213, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391189267, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/classes/feature_Rally__Level_5__TVeEyqmPPiRa2r3i.json b/src/packs/classes/feature_Rally__Level_5__TVeEyqmPPiRa2r3i.json index da124244..50d8e2ab 100644 --- a/src/packs/classes/feature_Rally__Level_5__TVeEyqmPPiRa2r3i.json +++ b/src/packs/classes/feature_Rally__Level_5__TVeEyqmPPiRa2r3i.json @@ -36,7 +36,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [ { @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174499893, - "modifiedTime": 1754494835723, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391195765, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json b/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json index a8b7fa77..2060a2e1 100644 --- a/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json +++ b/src/packs/classes/feature_Ranger_s_Focus_ncLx2P8BOUtrAD38.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -29,7 +28,12 @@ "max": "", "recovery": null }, - "effects": [], + "effects": [ + { + "_id": "SXi2dQWqpwY9fap4", + "onSave": false + } + ], "target": { "type": "any", "amount": null @@ -40,9 +44,59 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, - "effects": [], + "effects": [ + { + "name": "Ranger's Focus", + "img": "icons/magic/perception/eye-ringed-green.webp", + "origin": "Compendium.daggerheart.classes.Item.ncLx2P8BOUtrAD38", + "transfer": false, + "_id": "SXi2dQWqpwY9fap4", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

Until this feature ends or the ranger makes a different creature their Focus, they gain the following benefits against this adversary:

  • They know precisely what direction they are in.

  • When they deal damage to them, the adverasry must mark a Stress.

  • When they fail an attack against them, they can end their Ranger’s Focus feature to reroll their Duality Dice.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756034238996, + "modifiedTime": 1756034332923, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!ncLx2P8BOUtrAD38.SXi2dQWqpwY9fap4" + } + ], "sort": 0, "ownership": { "default": 0, @@ -53,12 +107,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754268505051, - "modifiedTime": 1754268589700, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1756034239047, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!ncLx2P8BOUtrAD38" } diff --git a/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json b/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json index b544f70a..c96fe2fc 100644 --- a/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json +++ b/src/packs/classes/feature_Rogue_s_Dodge_hVaaPIjxoextIgSL.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], @@ -36,7 +35,7 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Spend Hope", @@ -45,7 +44,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -71,7 +75,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -90,12 +94,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754323997794, - "modifiedTime": 1754351805065, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756034385415, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!hVaaPIjxoextIgSL.hhVjBro2osGDTT5g" } @@ -110,12 +114,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754323951411, - "modifiedTime": 1754324053728, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1756034357629, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!hVaaPIjxoextIgSL" } diff --git a/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json b/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json index ec203e9a..8984606c 100644 --- a/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json +++ b/src/packs/classes/feature_Sneak_Attack_5QqpEwmwkPfZHpMW.json @@ -7,37 +7,14 @@ "system": { "description": "

When you succeed on an attack while Cloaked or while an ally is within Melee range of your target, add a number of d6s equal to your tier to your damage roll.

  • Level 1 -> Tier 1

  • Levels 2–4 -> Tier 2

  • Levels 5–7 -> Tier 3

  • Levels 8–10 -> Tier 4

", "resource": null, - "actions": { - "SfctrIW5KjH4nq5G": { - "type": "effect", - "_id": "SfctrIW5KjH4nq5G", - "systemPath": "actions", - "description": "

When you succeed on an attack while Cloaked or while an ally is within Melee range of your target, add a number of d6s equal to your tier to your damage roll.

  • Level 1 -> Tier 1

  • Levels 2–4 -> Tier 2

  • Levels 5–7 -> Tier 3

  • Levels 8–10 -> Tier 4

", - "chatDisplay": true, - "actionType": "action", - "cost": [], - "uses": { - "value": null, - "max": "", - "recovery": null - }, - "effects": [ - { - "_id": "380jFzw756qSy5ae", - "onSave": false - } - ], - "target": { - "type": "any", - "amount": null - }, - "name": "Use Sneak Attack", - "img": "icons/skills/melee/strike-dagger-skull-white.webp", - "range": "" - } - }, + "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -108,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754324216454, - "modifiedTime": 1754324890997, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1756034698108, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!5QqpEwmwkPfZHpMW" } diff --git a/src/packs/classes/feature_Strange_Patterns_6YsfFjmCGuFYVhT4.json b/src/packs/classes/feature_Strange_Patterns_6YsfFjmCGuFYVhT4.json index afe896de..18e6f87e 100644 --- a/src/packs/classes/feature_Strange_Patterns_6YsfFjmCGuFYVhT4.json +++ b/src/packs/classes/feature_Strange_Patterns_6YsfFjmCGuFYVhT4.json @@ -84,7 +84,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -97,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254942995, - "modifiedTime": 1754498121727, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391470247, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6YsfFjmCGuFYVhT4" } diff --git a/src/packs/classes/feature_Unstoppable_PnD2UCgzIlwX6cY3.json b/src/packs/classes/feature_Unstoppable_PnD2UCgzIlwX6cY3.json index 5505ed44..c768b09f 100644 --- a/src/packs/classes/feature_Unstoppable_PnD2UCgzIlwX6cY3.json +++ b/src/packs/classes/feature_Unstoppable_PnD2UCgzIlwX6cY3.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 15, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754246498657, - "modifiedTime": 1754246649352, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391250586, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PnD2UCgzIlwX6cY3" } diff --git a/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json b/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json index b6994b72..65e4c0c8 100644 --- a/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json +++ b/src/packs/classes/feature_Volatile_Magic_ieiQlD0joWSqt53D.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -41,7 +40,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "folder": "oNhnBt8HZ2oaSnSn", @@ -55,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349703843, - "modifiedTime": 1754349703843, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755391406960, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ieiQlD0joWSqt53D" } diff --git a/src/packs/classes/feature_Wildtouch_fqSdfUYUK9QUcVE4.json b/src/packs/classes/feature_Wildtouch_fqSdfUYUK9QUcVE4.json index efdbe7e7..19f780fd 100644 --- a/src/packs/classes/feature_Wildtouch_fqSdfUYUK9QUcVE4.json +++ b/src/packs/classes/feature_Wildtouch_fqSdfUYUK9QUcVE4.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [], "sort": 300000, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754221970100, - "modifiedTime": 1754246231149, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391229618, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!fqSdfUYUK9QUcVE4" } diff --git a/src/packs/communities/community_Highborne_DVw2mOCHB8i0XeBz.json b/src/packs/communities/community_Highborne_DVw2mOCHB8i0XeBz.json index be485d0b..58ccda51 100644 --- a/src/packs/communities/community_Highborne_DVw2mOCHB8i0XeBz.json +++ b/src/packs/communities/community_Highborne_DVw2mOCHB8i0XeBz.json @@ -7,19 +7,24 @@ "description": "

Being part of a highborne community means you’re accustomed to a life of elegance, opulence, and prestige within the upper echelons of society.

Traditionally, members of a highborne community possess incredible material wealth. While this can take a variety of forms depending on the community—including gold and other minerals, land, or controlling the means of production—this status always comes with power and influence. Highborne place great value on titles and possessions, and there is little social mobility within their ranks. Members of a highborne community often control the political and economic status of the areas in which they live due to their ability to influence people and the economy with their substantial wealth. The health and safety of the less affluent people who live in these locations often hinges on the ability of this highborne ruling class to prioritize the well-being of their subjects over profit.

\n

Highborne are often amiable, candid, conniving, enterprising, ostentatious, and unflappable.

", "features": [ "Compendium.daggerheart.communities.Item.C7NR6qRatawZusmg" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784392, - "modifiedTime": 1754010352828, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394637367, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "DVw2mOCHB8i0XeBz", "sort": 3400000, diff --git a/src/packs/communities/community_Loreborne_YsvlyqYoi8QQ8kwm.json b/src/packs/communities/community_Loreborne_YsvlyqYoi8QQ8kwm.json index 50530aff..2db69c4d 100644 --- a/src/packs/communities/community_Loreborne_YsvlyqYoi8QQ8kwm.json +++ b/src/packs/communities/community_Loreborne_YsvlyqYoi8QQ8kwm.json @@ -7,19 +7,24 @@ "description": "

Being part of a loreborne community means you’re from a society that favors strong academic or political prowess.

Loreborne communities highly value knowledge, frequently in the form of historical preservation, political advancement, scientific study, skill development, or lore and mythology compilation. Most members of these communities research in institutions built in bastions of civilization, while some eclectic few thrive in gathering information from the natural world. Some may be isolationists, operating in smaller enclaves, schools, or guilds and following their own unique ethos. Others still wield their knowledge on a larger scale, making deft political maneuvers across governmental landscapes.

\n

Loreborne are often direct, eloquent, inquisitive, patient, rhapsodic, and witty.

", "features": [ "Compendium.daggerheart.communities.Item.JBZJmywisJg5X3tH" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784392, - "modifiedTime": 1754010491764, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394793025, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YsvlyqYoi8QQ8kwm", "sort": 3400000, diff --git a/src/packs/communities/community_Orderborne_TY2TejenASXtS484.json b/src/packs/communities/community_Orderborne_TY2TejenASXtS484.json index 7817a2ea..ae6adc86 100644 --- a/src/packs/communities/community_Orderborne_TY2TejenASXtS484.json +++ b/src/packs/communities/community_Orderborne_TY2TejenASXtS484.json @@ -7,19 +7,24 @@ "description": "

Being part of an orderborne community means you’re from a collective that focuses on discipline or faith, and you uphold a set of principles that reflect your experience there.

Orderborne are frequently some of the most powerful among the surrounding communities. By aligning the members of their society around a common value or goal, such as a god, doctrine, ethos, or even a shared business or trade, the ruling bodies of these enclaves are able to mobilize larger populations with less effort. While orderborne communities take a variety of forms—some even profoundly pacifistic—perhaps the most feared are those that structure themselves around military prowess. In such a case, it’s not uncommon for orderborne to provide soldiers for hire to other cities or countries.

\n

Orderborne are often ambitious, benevolent, pensive, prudent, sardonic, and stoic.

", "features": [ "Compendium.daggerheart.communities.Item.7aXWdH3gzaYREK0X" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784393, - "modifiedTime": 1754010626874, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394802410, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "TY2TejenASXtS484", "sort": 3400000, diff --git a/src/packs/communities/community_Ridgeborne_WHLA4qrdszXQHOuo.json b/src/packs/communities/community_Ridgeborne_WHLA4qrdszXQHOuo.json index 5971d311..1b09ad82 100644 --- a/src/packs/communities/community_Ridgeborne_WHLA4qrdszXQHOuo.json +++ b/src/packs/communities/community_Ridgeborne_WHLA4qrdszXQHOuo.json @@ -7,19 +7,24 @@ "description": "

Being part of a ridgeborne community means you’ve called the rocky peaks and sharp cliffs of the mountainside home.

Those who’ve lived in the mountains often consider themselves hardier than most because they’ve thrived among the most dangerous terrain many continents have to offer. These groups are adept at adaptation, developing unique technologies and equipment to move both people and products across difficult terrain. As such, ridgeborne grow up scrambling and climbing, making them sturdy and strong-willed. Ridgeborne localities appear in a variety of forms—some cities carve out entire cliff faces, others construct castles of stone, and still more live in small homes on windblown peaks. Outside forces often struggle to attack ridgeborne groups, as the small militias and large military forces of the mountains are adept at utilizing their high-ground advantage.

\n

Ridgeborne are often bold, hardy, indomitable, loyal, reserved, and stubborn.

", "features": [ "Compendium.daggerheart.communities.Item.DYmmr5CknLtHnwuj" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784394, - "modifiedTime": 1754010655426, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394814094, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WHLA4qrdszXQHOuo", "sort": 3400000, diff --git a/src/packs/communities/community_Seaborne_o5AA5J05N7EvH1rN.json b/src/packs/communities/community_Seaborne_o5AA5J05N7EvH1rN.json index 95798e66..cd474b14 100644 --- a/src/packs/communities/community_Seaborne_o5AA5J05N7EvH1rN.json +++ b/src/packs/communities/community_Seaborne_o5AA5J05N7EvH1rN.json @@ -7,19 +7,24 @@ "description": "

Being part of a seaborne community means you lived on or near a large body of water.

Seaborne communities are built, both physically and culturally, around the specific waters they call home. Some of these groups live along the shore, constructing ports for locals and travelers alike. These harbors function as centers of commerce, tourist attractions, or even just a safe place to lay down one’s head after weeks of travel. Other seaborne live on the water in small boats or large ships, with the idea of “home” comprising a ship and its crew, rather than any one landmass. No matter their exact location, seaborne communities are closely tied to the ocean tides and the creatures who inhabit them. Seaborne learn to fish at a young age, and train from birth to hold their breath and swim in even the most tumultuous waters. Individuals from these groups are highly sought after for their sailing skills, and many become captains of vessels, whether within their own community, working for another, or even at the helm of a powerful naval operation.

\n

Seaborne are often candid, cooperative, exuberant, fierce, resolute, and weathered.

", "features": [ "Compendium.daggerheart.communities.Item.07x6Qe6qMzDw2xN4" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784395, - "modifiedTime": 1754010861330, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394819693, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "o5AA5J05N7EvH1rN", "sort": 3400000, diff --git a/src/packs/communities/community_Slyborne_rGwCPMqZtky7SE6d.json b/src/packs/communities/community_Slyborne_rGwCPMqZtky7SE6d.json index c038fe90..3d8911be 100644 --- a/src/packs/communities/community_Slyborne_rGwCPMqZtky7SE6d.json +++ b/src/packs/communities/community_Slyborne_rGwCPMqZtky7SE6d.json @@ -7,19 +7,24 @@ "description": "

Being part of a slyborne community means you come from a group that operates outside the law, including all manner of criminals, grifters, and con artists.

Being part of a slyborne community means you come from a group that operates outside the law, including all manner of criminals, grifters, and con artists. Members of slyborne communities are brought together by their disreputable goals and their clever means of achieving them. Many people in these communities have an array of unscrupulous skills: forging, thievery, smuggling, and violence. People of any social class can be slyborne, from those who have garnered vast wealth and influence to those without a coin to their name. To the outside eye, slyborne might appear to be ruffians with no loyalty, but these communities possess some of the strictest codes of honor which, when broken, can result in a terrifying end for the transgressor.

\n

Slyborne are often calculating, clever, formidable, perceptive, shrewd, and tenacious.

", "features": [ "Compendium.daggerheart.communities.Item.ZmEuBdL0JrvuA8le" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784396, - "modifiedTime": 1754011031727, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394825710, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rGwCPMqZtky7SE6d", "sort": 3400000, diff --git a/src/packs/communities/community_Underborne_eX0I1ZNMyD3nfaL1.json b/src/packs/communities/community_Underborne_eX0I1ZNMyD3nfaL1.json index 7bd276be..7a5134c6 100644 --- a/src/packs/communities/community_Underborne_eX0I1ZNMyD3nfaL1.json +++ b/src/packs/communities/community_Underborne_eX0I1ZNMyD3nfaL1.json @@ -7,19 +7,24 @@ "description": "

Being part of an underborne community means you’re from a subterranean society.

Many underborne live right beneath the cities and villages of other collectives, while some live much deeper. These communities range from small family groups in burrows to massive metropolises in caverns of stone. In many locales, underborne are recognized for their incredible boldness and skill that enable great feats of architecture and engineering. Underborne are regularly hired for their bravery, as even the least daring among them has likely encountered formidable belowground beasts, and learning to dispatch such creatures is common practice amongst these societies. Because of the dangers of their environment, many underborne communities develop unique nonverbal languages that prove equally useful on the surface.

\n

Underborne are often composed, elusive, indomitable, innovative, resourceful, and unpretentious.

", "features": [ "Compendium.daggerheart.communities.Item.aMla3xQuCHEwORGD" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784398, - "modifiedTime": 1754011085731, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394833394, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "eX0I1ZNMyD3nfaL1", "sort": 3400000, diff --git a/src/packs/communities/community_Wanderborne_82mDY2EIBfLkNwQj.json b/src/packs/communities/community_Wanderborne_82mDY2EIBfLkNwQj.json index a1b03f93..465e20e3 100644 --- a/src/packs/communities/community_Wanderborne_82mDY2EIBfLkNwQj.json +++ b/src/packs/communities/community_Wanderborne_82mDY2EIBfLkNwQj.json @@ -7,19 +7,24 @@ "description": "

Being part of a wanderborne community means you’ve lived as a nomad, forgoing a permanent home and experiencing a wide variety of cultures.

Unlike many communities that are defined by their locale, wanderborne are defined by their traveling lifestyle. Because of their frequent migration, wanderborne put less value on the accumulation of material possessions in favor of acquiring information, skills, and connections. While some wanderborne are allied by a common ethos, such as a religion or a set of political or economic values, others come together after shared tragedy, such as the loss of their home or land. No matter the reason, the dangers posed by life on the road and the choice to continue down that road together mean that wanderborne are known for their unwavering loyalty.

\n

Wanderborne are often inscrutable, magnanimous, mirthful, reliable, savvy, and unorthodox.

", "features": [ "Compendium.daggerheart.communities.Item.2RSrQouA2zEJ5Xee" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 34, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784398, - "modifiedTime": 1754011123332, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394858795, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "82mDY2EIBfLkNwQj", "sort": 3400000, diff --git a/src/packs/communities/community_Wildborne_CRJ5pzJj4FjCtIlx.json b/src/packs/communities/community_Wildborne_CRJ5pzJj4FjCtIlx.json index 73032136..922c3fc7 100644 --- a/src/packs/communities/community_Wildborne_CRJ5pzJj4FjCtIlx.json +++ b/src/packs/communities/community_Wildborne_CRJ5pzJj4FjCtIlx.json @@ -7,19 +7,24 @@ "description": "

Being part of a wildborne community means you lived deep within the forest.

Wildborne communities are defined by their dedication to the conservation of their homelands, and many have strong religious or cultural ties to the fauna they live among. This results in unique architectural and technological advancements that favor sustainability over short-term, high-yield results. It is a hallmark of wildborne societies to integrate their villages and cities with the natural environment and avoid disturbing the lives of the plants and animals. While some construct their lodgings high in the branches of trees, others establish their homes on the ground beneath the forest canopy. It’s not uncommon for wildborne to remain reclusive and hidden within their woodland homes.

\n

Wildborne are often hardy, loyal, nurturing, reclusive, sagacious, and vibrant.

", "features": [ "Compendium.daggerheart.communities.Item.TQ1AIQjndC4mYmmU" - ] + ], + "attribution": { + "source": "Daggerheart SRD", + "page": 34, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784398, - "modifiedTime": 1754011159389, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394854412, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CRJ5pzJj4FjCtIlx", "sort": 3400000, diff --git a/src/packs/communities/feature_Dedicated_7aXWdH3gzaYREK0X.json b/src/packs/communities/feature_Dedicated_7aXWdH3gzaYREK0X.json index 11ac8208..5591af1e 100644 --- a/src/packs/communities/feature_Dedicated_7aXWdH3gzaYREK0X.json +++ b/src/packs/communities/feature_Dedicated_7aXWdH3gzaYREK0X.json @@ -33,7 +33,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "effects": [], "flags": {}, diff --git a/src/packs/communities/feature_Know_the_Tide_07x6Qe6qMzDw2xN4.json b/src/packs/communities/feature_Know_the_Tide_07x6Qe6qMzDw2xN4.json index d2c1c314..e93245f6 100644 --- a/src/packs/communities/feature_Know_the_Tide_07x6Qe6qMzDw2xN4.json +++ b/src/packs/communities/feature_Know_the_Tide_07x6Qe6qMzDw2xN4.json @@ -18,7 +18,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "effects": [], "flags": {}, @@ -26,12 +31,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754498464092, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755394912698, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Lightfoot_TQ1AIQjndC4mYmmU.json b/src/packs/communities/feature_Lightfoot_TQ1AIQjndC4mYmmU.json index 86d1ba97..2c9028a2 100644 --- a/src/packs/communities/feature_Lightfoot_TQ1AIQjndC4mYmmU.json +++ b/src/packs/communities/feature_Lightfoot_TQ1AIQjndC4mYmmU.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 34, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394946768, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Low_Light_Living_aMla3xQuCHEwORGD.json b/src/packs/communities/feature_Low_Light_Living_aMla3xQuCHEwORGD.json index 27dde95c..38008333 100644 --- a/src/packs/communities/feature_Low_Light_Living_aMla3xQuCHEwORGD.json +++ b/src/packs/communities/feature_Low_Light_Living_aMla3xQuCHEwORGD.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "effects": [ { @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394926216, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json b/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json index 605c9d7d..b2f8eeb3 100644 --- a/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json +++ b/src/packs/communities/feature_Nomadic_Pack_2RSrQouA2zEJ5Xee.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -41,7 +40,12 @@ }, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 34, + "artist": "" + } }, "effects": [], "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394951501, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Privilege_C7NR6qRatawZusmg.json b/src/packs/communities/feature_Privilege_C7NR6qRatawZusmg.json index 20f015b2..a3d9912a 100644 --- a/src/packs/communities/feature_Privilege_C7NR6qRatawZusmg.json +++ b/src/packs/communities/feature_Privilege_C7NR6qRatawZusmg.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "effects": [ { @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394874830, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Scoundrel_ZmEuBdL0JrvuA8le.json b/src/packs/communities/feature_Scoundrel_ZmEuBdL0JrvuA8le.json index b5618477..1dd3db4f 100644 --- a/src/packs/communities/feature_Scoundrel_ZmEuBdL0JrvuA8le.json +++ b/src/packs/communities/feature_Scoundrel_ZmEuBdL0JrvuA8le.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "effects": [ { @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394919483, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Steady_DYmmr5CknLtHnwuj.json b/src/packs/communities/feature_Steady_DYmmr5CknLtHnwuj.json index 713f8f53..f3690651 100644 --- a/src/packs/communities/feature_Steady_DYmmr5CknLtHnwuj.json +++ b/src/packs/communities/feature_Steady_DYmmr5CknLtHnwuj.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 33, + "artist": "" + } }, "effects": [ { @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394904715, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/communities/feature_Well_Read_JBZJmywisJg5X3tH.json b/src/packs/communities/feature_Well_Read_JBZJmywisJg5X3tH.json index 7fd9e397..7ef972a2 100644 --- a/src/packs/communities/feature_Well_Read_JBZJmywisJg5X3tH.json +++ b/src/packs/communities/feature_Well_Read_JBZJmywisJg5X3tH.json @@ -10,7 +10,12 @@ "actions": {}, "originItemType": null, "subType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 32, + "artist": "" + } }, "effects": [ { @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754010247432, - "modifiedTime": 1754010247432, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755394887664, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "sort": 0, "ownership": { diff --git a/src/packs/domains/domainCard_A_Soldier_s_Bond_Y08dLFuPXsgeRrHi.json b/src/packs/domains/domainCard_A_Soldier_s_Bond_Y08dLFuPXsgeRrHi.json index 2177b496..f84e8113 100644 --- a/src/packs/domains/domainCard_A_Soldier_s_Bond_Y08dLFuPXsgeRrHi.json +++ b/src/packs/domains/domainCard_A_Soldier_s_Bond_Y08dLFuPXsgeRrHi.json @@ -78,6 +78,11 @@ "img": "icons/magic/light/beam-rays-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -85,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784407, - "modifiedTime": 1754304308103, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428101583, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Y08dLFuPXsgeRrHi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json b/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json index 142f6f42..051e27f0 100644 --- a/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json +++ b/src/packs/domains/domainCard_Adjust_Reality_Zp2S2EnLS5Iv3XuT.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 5, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,6 +41,11 @@ "img": "icons/magic/fire/flame-burning-hand-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784408, - "modifiedTime": 1754254353257, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428058189, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Zp2S2EnLS5Iv3XuT", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json b/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json index 64c03215..da201cbe 100644 --- a/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json +++ b/src/packs/domains/domainCard_Arcana_Touched_5PvMQKCjrgSxzstn.json @@ -26,10 +26,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "5PvMQKCjrgSxzstn", + "key": "resource", + "itemId": "5PvMQKCjrgSxzstn", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -49,6 +49,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -56,12 +61,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784408, - "modifiedTime": 1754253919218, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575261, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "5PvMQKCjrgSxzstn", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json b/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json index 1bf40321..d9f887c6 100644 --- a/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json +++ b/src/packs/domains/domainCard_Arcane_Reflection_JzSvxy9Mu3RJp1jV.json @@ -23,7 +23,6 @@ "key": "hope", "value": 1, "step": 1, - "keyIsID": false, "consumeOnSuccess": false } ], @@ -66,6 +65,11 @@ "img": "icons/magic/defensive/barrier-shield-dome-deflect-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -73,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784409, - "modifiedTime": 1754254134197, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428031621, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JzSvxy9Mu3RJp1jV", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Armorer_cy8GjBPGc9w9RaGO.json b/src/packs/domains/domainCard_Armorer_cy8GjBPGc9w9RaGO.json index cc33310b..bb14ed8b 100644 --- a/src/packs/domains/domainCard_Armorer_cy8GjBPGc9w9RaGO.json +++ b/src/packs/domains/domainCard_Armorer_cy8GjBPGc9w9RaGO.json @@ -77,6 +77,11 @@ "img": "icons/tools/hand/hammer-and-nail.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -84,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784409, - "modifiedTime": 1754241866049, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429881876, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "cy8GjBPGc9w9RaGO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json b/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json index a82eb0e7..619ab731 100644 --- a/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json +++ b/src/packs/domains/domainCard_Astral_Projection_YNOCNmZ96sCp9NEr.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -40,6 +39,11 @@ "img": "icons/magic/perception/orb-crystal-ball-scrying.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -47,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784409, - "modifiedTime": 1754342271751, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429240862, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YNOCNmZ96sCp9NEr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Banish_AIbHfryMA2Rvs1ut.json b/src/packs/domains/domainCard_Banish_AIbHfryMA2Rvs1ut.json index 403a8286..ce7669d5 100644 --- a/src/packs/domains/domainCard_Banish_AIbHfryMA2Rvs1ut.json +++ b/src/packs/domains/domainCard_Banish_AIbHfryMA2Rvs1ut.json @@ -63,6 +63,11 @@ "max": "1", "icon": "fa-solid fa-hand-sparkles", "recovery": "shortRest" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784411, - "modifiedTime": 1754240991601, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429055116, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "AIbHfryMA2Rvs1ut", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Bare_Bones_l5D9kq901JDESaXw.json b/src/packs/domains/domainCard_Bare_Bones_l5D9kq901JDESaXw.json index 181e994a..0509faff 100644 --- a/src/packs/domains/domainCard_Bare_Bones_l5D9kq901JDESaXw.json +++ b/src/packs/domains/domainCard_Bare_Bones_l5D9kq901JDESaXw.json @@ -11,19 +11,24 @@ "type": "ability", "resource": null, "actions": {}, - "inVault": false + "inVault": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754067006722, - "modifiedTime": 1754337008196, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429823165, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "effects": [], "ownership": { diff --git a/src/packs/domains/domainCard_Battle_Cry_Ef1JsUG50LIoKx2F.json b/src/packs/domains/domainCard_Battle_Cry_Ef1JsUG50LIoKx2F.json index e3c74f7e..be928940 100644 --- a/src/packs/domains/domainCard_Battle_Cry_Ef1JsUG50LIoKx2F.json +++ b/src/packs/domains/domainCard_Battle_Cry_Ef1JsUG50LIoKx2F.json @@ -108,6 +108,11 @@ "img": "icons/magic/control/buff-flight-wings-runes-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -115,12 +120,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784413, - "modifiedTime": 1754304622040, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428179279, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Ef1JsUG50LIoKx2F", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Battle_Hardened_NeEOghgfyDUBTwBG.json b/src/packs/domains/domainCard_Battle_Hardened_NeEOghgfyDUBTwBG.json index ccd46389..3b804ddf 100644 --- a/src/packs/domains/domainCard_Battle_Hardened_NeEOghgfyDUBTwBG.json +++ b/src/packs/domains/domainCard_Battle_Hardened_NeEOghgfyDUBTwBG.json @@ -78,6 +78,11 @@ "img": "icons/magic/life/heart-cross-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -85,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784415, - "modifiedTime": 1754304541810, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428149693, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "NeEOghgfyDUBTwBG", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json b/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json index 50cabbea..13178c37 100644 --- a/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json +++ b/src/packs/domains/domainCard_Battle_Monster_P0ezScyQ5t8ruByf.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 4, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,6 +41,11 @@ "img": "icons/magic/control/silhouette-aura-energy.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784414, - "modifiedTime": 1754304799641, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428207522, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "P0ezScyQ5t8ruByf", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Blade_Touched_Gb5bqpFSBiuBxUix.json b/src/packs/domains/domainCard_Blade_Touched_Gb5bqpFSBiuBxUix.json index 82a13070..f451d5cf 100644 --- a/src/packs/domains/domainCard_Blade_Touched_Gb5bqpFSBiuBxUix.json +++ b/src/packs/domains/domainCard_Blade_Touched_Gb5bqpFSBiuBxUix.json @@ -8,19 +8,24 @@ "domain": "blade", "recallCost": 1, "level": 7, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784416, - "modifiedTime": 1754304595818, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428164790, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Gb5bqpFSBiuBxUix", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json b/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json index 67fe9335..c069362d 100644 --- a/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json +++ b/src/packs/domains/domainCard_Blink_Out_Qu0iA4s3Xov10Erd.json @@ -23,7 +23,6 @@ "scalable": true, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], @@ -66,6 +65,11 @@ "img": "icons/magic/symbols/runes-star-orange-purple.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -73,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784416, - "modifiedTime": 1754253600839, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427965888, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Qu0iA4s3Xov10Erd", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Body_Basher_aQz8jKkCd8M9aKMA.json b/src/packs/domains/domainCard_Body_Basher_aQz8jKkCd8M9aKMA.json index 763a4fe0..8e3ffa06 100644 --- a/src/packs/domains/domainCard_Body_Basher_aQz8jKkCd8M9aKMA.json +++ b/src/packs/domains/domainCard_Body_Basher_aQz8jKkCd8M9aKMA.json @@ -11,19 +11,24 @@ "type": "ability", "resource": null, "actions": {}, - "inVault": false + "inVault": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754067167343, - "modifiedTime": 1754241470721, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429841164, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "effects": [ { diff --git a/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json b/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json index 9c767f34..2c80d1d5 100644 --- a/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json +++ b/src/packs/domains/domainCard_Bold_Presence_tdsL00yTSLNgZWs6.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], @@ -43,7 +42,7 @@ }, "name": "Spend Hope", "img": "icons/magic/holy/barrier-shield-winged-blue.webp", - "range": "" + "range": "self" }, "OdRTXMOXhZFiZHES": { "type": "effect", @@ -67,6 +66,11 @@ "img": "icons/skills/wounds/blood-cells-disease-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -74,12 +78,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784418, - "modifiedTime": 1754241531537, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756038980509, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "tdsL00yTSLNgZWs6", "sort": 3400000, @@ -88,7 +92,7 @@ "name": "Bold Presence", "img": "icons/magic/holy/barrier-shield-winged-blue.webp", "origin": "Compendium.daggerheart.domains.Item.tdsL00yTSLNgZWs6", - "transfer": true, + "transfer": false, "_id": "2XEYhuAcRGTtqvED", "type": "base", "system": { @@ -107,7 +111,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -126,12 +130,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754241531511, - "modifiedTime": 1754241605959, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756038989398, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!tdsL00yTSLNgZWs6.2XEYhuAcRGTtqvED" } diff --git a/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json b/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json index aa4552c5..5363b3d8 100644 --- a/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json +++ b/src/packs/domains/domainCard_Bolt_Beacon_BNevJyGk7hmN7XOY.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], @@ -96,6 +95,11 @@ "img": "icons/magic/light/beam-horizon-strike-yellow.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -103,12 +107,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784418, - "modifiedTime": 1754269150878, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429657284, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "BNevJyGk7hmN7XOY", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json b/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json index 5932c284..922a77d9 100644 --- a/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json +++ b/src/packs/domains/domainCard_Bone_Touched_ON5bvnoQBy0SYc9Y.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,6 +41,11 @@ "img": "icons/magic/holy/barrier-shield-winged-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784419, - "modifiedTime": 1754252494658, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428331915, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ON5bvnoQBy0SYc9Y", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json b/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json index 2c18114e..0c460a1d 100644 --- a/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json +++ b/src/packs/domains/domainCard_Book_of_Ava_YtZzYBtR0yLPPA93.json @@ -92,7 +92,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -237,6 +236,11 @@ "img": "icons/magic/water/projectile-icecicle.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -244,12 +248,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784419, - "modifiedTime": 1754228833533, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428973862, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YtZzYBtR0yLPPA93", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json b/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json index a3808a31..611c71cb 100644 --- a/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json +++ b/src/packs/domains/domainCard_Book_of_Exota_oVs2MSC6Uf5GbgEG.json @@ -66,7 +66,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -160,6 +159,11 @@ "img": "icons/creatures/magical/construct-golem-stone-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -167,12 +171,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784420, - "modifiedTime": 1754240355163, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429022342, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "oVs2MSC6Uf5GbgEG", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json b/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json index 4b04f076..83974d28 100644 --- a/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json +++ b/src/packs/domains/domainCard_Book_of_Grynn_R0LNheiZycZlZzV3.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -136,6 +135,11 @@ "img": "icons/magic/fire/barrier-wall-flame-ring-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784420, - "modifiedTime": 1754240392592, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429032715, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "R0LNheiZycZlZzV3", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Homet_gFMx08ogQ8hS2Obi.json b/src/packs/domains/domainCard_Book_of_Homet_gFMx08ogQ8hS2Obi.json index 6869c1f0..94ff8ca7 100644 --- a/src/packs/domains/domainCard_Book_of_Homet_gFMx08ogQ8hS2Obi.json +++ b/src/packs/domains/domainCard_Book_of_Homet_gFMx08ogQ8hS2Obi.json @@ -105,19 +105,24 @@ "range": "" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784421, - "modifiedTime": 1754240751151, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429070054, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gFMx08ogQ8hS2Obi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json b/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json index 91943faf..1d4084d6 100644 --- a/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json +++ b/src/packs/domains/domainCard_Book_of_Illiat_df4iRqQzRntrF6Qw.json @@ -73,8 +73,7 @@ "scalable": true, "key": "hope", "value": 1, - "step": 1, - "keyIsID": false + "step": 1 } ], "uses": { @@ -129,7 +128,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -155,6 +153,11 @@ "img": "icons/magic/perception/third-eye-blue-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -162,12 +165,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784421, - "modifiedTime": 1754228842497, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428980637, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "df4iRqQzRntrF6Qw", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json b/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json index d3fdb94f..d2e80c21 100644 --- a/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json +++ b/src/packs/domains/domainCard_Book_of_Korvax_cWRFHJdxEZ0M1dAg.json @@ -65,7 +65,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -122,7 +121,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -171,6 +169,11 @@ "img": "icons/magic/symbols/runes-star-pentagon-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -178,12 +181,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784423, - "modifiedTime": 1754230131429, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429006130, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "cWRFHJdxEZ0M1dAg", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Norai_WtwSWXTRZa7QVvmo.json b/src/packs/domains/domainCard_Book_of_Norai_WtwSWXTRZa7QVvmo.json index 70d1fc79..4db3e78f 100644 --- a/src/packs/domains/domainCard_Book_of_Norai_WtwSWXTRZa7QVvmo.json +++ b/src/packs/domains/domainCard_Book_of_Norai_WtwSWXTRZa7QVvmo.json @@ -160,6 +160,11 @@ "img": "icons/magic/fire/explosion-fireball-large-red-orange.webp", "range": "veryFar" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -167,12 +172,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784423, - "modifiedTime": 1754231026933, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429011603, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WtwSWXTRZa7QVvmo", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json b/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json index 7c0ecab0..862d5da9 100644 --- a/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json +++ b/src/packs/domains/domainCard_Book_of_Ronin_SZMNR3uGNinJcN4N.json @@ -28,7 +28,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [ @@ -59,7 +59,7 @@ }, "name": "Transform", "img": "icons/containers/barrels/barrel-reinforced-cherry-brown.webp", - "range": "" + "range": "self" }, "h7i4ZuDYuYLnjze6": { "type": "attack", @@ -112,6 +112,11 @@ "img": "icons/magic/unholy/hand-light-green.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784424, - "modifiedTime": 1754233533128, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756038121293, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "SZMNR3uGNinJcN4N", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json b/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json index 594c34e1..1002b85c 100644 --- a/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json +++ b/src/packs/domains/domainCard_Book_of_Sitil_eq8VNqYMRHhF9xw9.json @@ -30,12 +30,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Adjust Appearance", "img": "icons/magic/defensive/shield-barrier-blades-teal.webp", - "range": "" + "range": "self" }, "wBQkw3P4Esj6kOx2": { "type": "effect", @@ -49,7 +49,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], @@ -118,6 +117,11 @@ "img": "icons/magic/control/silhouette-hold-change-green.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -125,12 +129,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784424, - "modifiedTime": 1754229292338, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756037990822, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "eq8VNqYMRHhF9xw9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Tyfar_1VXzwRbvbBj5bd5V.json b/src/packs/domains/domainCard_Book_of_Tyfar_1VXzwRbvbBj5bd5V.json index ed29fd87..e974f58a 100644 --- a/src/packs/domains/domainCard_Book_of_Tyfar_1VXzwRbvbBj5bd5V.json +++ b/src/packs/domains/domainCard_Book_of_Tyfar_1VXzwRbvbBj5bd5V.json @@ -176,6 +176,11 @@ "img": "icons/magic/air/fog-gas-smoke-dense-gray.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -183,12 +188,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784426, - "modifiedTime": 1754241041570, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428986804, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1VXzwRbvbBj5bd5V", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json b/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json index a54f4c5f..1e3b3bf4 100644 --- a/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json +++ b/src/packs/domains/domainCard_Book_of_Vagras_aknDDYtN7EObv94t.json @@ -70,7 +70,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], @@ -158,6 +157,11 @@ "img": "icons/magic/perception/orb-crystal-ball-scrying-blue.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 124, + "artist": "" } }, "flags": {}, @@ -165,12 +169,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784427, - "modifiedTime": 1754240299795, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428999015, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "aknDDYtN7EObv94t", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json b/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json index e9c8dacf..9ecf339a 100644 --- a/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json +++ b/src/packs/domains/domainCard_Book_of_Vyola_VOIgm2j2Ijszwc5m.json @@ -65,7 +65,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -91,6 +90,11 @@ "img": "icons/magic/control/energy-stream-link-large-teal.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -98,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784427, - "modifiedTime": 1754233138291, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429085107, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VOIgm2j2Ijszwc5m", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json b/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json index 4e1cdaf6..2896a467 100644 --- a/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json +++ b/src/packs/domains/domainCard_Book_of_Yarrow_J1ovx2FpNDvPq1o6.json @@ -68,7 +68,6 @@ "scalable": false, "key": "hope", "value": 5, - "keyIsID": false, "step": null } ], @@ -89,8 +88,13 @@ }, "name": "Magic Immunity", "img": "icons/magic/defensive/barrier-shield-dome-deflect-teal.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -98,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784429, - "modifiedTime": 1754234029921, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756038143042, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "J1ovx2FpNDvPq1o6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json b/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json index d6438669..f4d69fcd 100644 --- a/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json +++ b/src/packs/domains/domainCard_Boost_VKAHS6eWz28ukcDs.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,6 +41,11 @@ "img": "icons/skills/movement/arrow-upward-yellow.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784430, - "modifiedTime": 1754252472924, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428287690, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VKAHS6eWz28ukcDs", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Brace_QXs4vssSqNGQu5b8.json b/src/packs/domains/domainCard_Brace_QXs4vssSqNGQu5b8.json index 4ac9fc40..c477f555 100644 --- a/src/packs/domains/domainCard_Brace_QXs4vssSqNGQu5b8.json +++ b/src/packs/domains/domainCard_Brace_QXs4vssSqNGQu5b8.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 3, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784431, - "modifiedTime": 1754249663994, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428272090, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "QXs4vssSqNGQu5b8", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json b/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json index 8f440bd9..a660200b 100644 --- a/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json +++ b/src/packs/domains/domainCard_Breaking_Blow_8UANBgSdhMZ0sqfO.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -41,12 +40,17 @@ ], "target": { "type": "any", - "amount": null + "amount": 1 }, "name": "Mark Stress", "img": "icons/skills/wounds/bone-broken-knee-beam.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784431, - "modifiedTime": 1754252500559, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756037935304, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "8UANBgSdhMZ0sqfO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json b/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json index 84704d27..9193247f 100644 --- a/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json +++ b/src/packs/domains/domainCard_Chain_Lightning_0kAVO6rordCfZqYP.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 2, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -147,6 +146,11 @@ "img": "icons/magic/lightning/bolt-forked-large-magenta.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -154,12 +158,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784433, - "modifiedTime": 1754253714828, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427978632, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "0kAVO6rordCfZqYP", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json b/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json index f0ffe8f8..48c35a57 100644 --- a/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json +++ b/src/packs/domains/domainCard_Champion_s_Edge_rnejRbUQsNGX1GMC.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -96,7 +95,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -173,7 +171,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -228,6 +225,11 @@ "img": "icons/skills/melee/strike-axe-blood-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -235,12 +237,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784433, - "modifiedTime": 1754304490701, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428137797, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rnejRbUQsNGX1GMC", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json b/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json index f68ba80c..0036cad9 100644 --- a/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json +++ b/src/packs/domains/domainCard_Chokehold_R5GYUalYXLLFRlNl.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -57,7 +56,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -79,6 +77,11 @@ "img": "icons/magic/control/debuff-chains-shackle-movement-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -86,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784434, - "modifiedTime": 1754173330136, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429320800, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "R5GYUalYXLLFRlNl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Cinder_Grasp_5EP2Lgf7ojfrc0Is.json b/src/packs/domains/domainCard_Cinder_Grasp_5EP2Lgf7ojfrc0Is.json index ce88eb60..410bb313 100644 --- a/src/packs/domains/domainCard_Cinder_Grasp_5EP2Lgf7ojfrc0Is.json +++ b/src/packs/domains/domainCard_Cinder_Grasp_5EP2Lgf7ojfrc0Is.json @@ -143,6 +143,11 @@ "img": "icons/magic/fire/flame-burning-earth-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -150,12 +155,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784434, - "modifiedTime": 1754475145346, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755427937789, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5EP2Lgf7ojfrc0Is", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json b/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json index 6b5f9ee9..a853cbcf 100644 --- a/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json +++ b/src/packs/domains/domainCard_Cloaking_Blast_Zhw7PtK8nMPlsOqD.json @@ -22,7 +22,6 @@ "scalable": true, "key": "hope", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -40,13 +39,18 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Become Cloaked", "img": "icons/magic/perception/shadow-stealth-eyes-purple.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784435, - "modifiedTime": 1754254076729, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756037373705, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "Zhw7PtK8nMPlsOqD", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json b/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json index 2e3caa80..e06b2cff 100644 --- a/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json +++ b/src/packs/domains/domainCard_Codex_Touched_7Pu83ABdMukTxu3e.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -67,6 +66,11 @@ "img": "icons/magic/symbols/star-inverted-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -74,12 +78,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784435, - "modifiedTime": 1754232995094, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429075701, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "7Pu83ABdMukTxu3e", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json b/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json index ee91b2fc..47ab3b32 100644 --- a/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json +++ b/src/packs/domains/domainCard_Confusing_Aura_R8NDiJXJWmC48WSr.json @@ -70,7 +70,6 @@ "key": "stress", "value": 1, "step": 1, - "keyIsID": false, "consumeOnSuccess": false } ], @@ -117,6 +116,11 @@ "resource": { "type": "simple", "value": 0 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -124,12 +128,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784437, - "modifiedTime": 1754501480068, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428037022, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "R8NDiJXJWmC48WSr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json b/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json index 33e4371e..94ce7d3b 100644 --- a/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json +++ b/src/packs/domains/domainCard_Conjure_Swarm_rZPH0BY8Sznc9sFG.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -36,7 +35,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [ @@ -67,7 +66,7 @@ }, "name": "Tekaira's Armored Beetles: Stress", "img": "icons/creatures/invertebrates/wasp-swarm-attack.webp", - "range": "" + "range": "self" }, "533qzPIjcccpiMey": { "type": "effect", @@ -78,7 +77,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -112,7 +110,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], @@ -183,6 +180,11 @@ "img": "icons/creatures/invertebrates/wasp-swarm-movement.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -190,12 +192,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "1.1.2", "createdTime": 1753922784438, - "modifiedTime": 1759666111504, - "lastModifiedBy": "9HOfUKAXuCu7hUPY" + "modifiedTime": 1761502767190, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_id": "rZPH0BY8Sznc9sFG", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json b/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json index 6c23ae92..28cb6834 100644 --- a/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json +++ b/src/packs/domains/domainCard_Conjured_Steeds_Jkp6cMDiHHaBZQRS.json @@ -22,8 +22,7 @@ "scalable": true, "key": "hope", "value": 1, - "step": 1, - "keyIsID": false + "step": 1 } ], "uses": { @@ -45,6 +44,11 @@ "img": "icons/creatures/mammals/deer-movement-leap-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784438, - "modifiedTime": 1754339195316, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429572061, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Jkp6cMDiHHaBZQRS", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Copycat_3A7LZ1xmDEMGa165.json b/src/packs/domains/domainCard_Copycat_3A7LZ1xmDEMGa165.json index 6e9762c6..2785ecaa 100644 --- a/src/packs/domains/domainCard_Copycat_3A7LZ1xmDEMGa165.json +++ b/src/packs/domains/domainCard_Copycat_3A7LZ1xmDEMGa165.json @@ -34,6 +34,11 @@ "img": "icons/magic/perception/hand-eye-black.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -41,12 +46,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784439, - "modifiedTime": 1754499898585, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429253976, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "3A7LZ1xmDEMGa165", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json b/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json index e5e4532f..5bd95b01 100644 --- a/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json +++ b/src/packs/domains/domainCard_Corrosive_Projectile_qJaSNTuDfbPVr8Lb.json @@ -93,8 +93,7 @@ "scalable": true, "key": "stress", "value": 0, - "step": 2, - "keyIsID": false + "step": 2 } ], "uses": { @@ -116,6 +115,11 @@ "img": "icons/magic/acid/dissolve-bone-white.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -123,12 +127,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784439, - "modifiedTime": 1754338276907, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429496161, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "qJaSNTuDfbPVr8Lb", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Counterspell_6dhqo1kzGxejCjHa.json b/src/packs/domains/domainCard_Counterspell_6dhqo1kzGxejCjHa.json index 63ed214d..511e4f14 100644 --- a/src/packs/domains/domainCard_Counterspell_6dhqo1kzGxejCjHa.json +++ b/src/packs/domains/domainCard_Counterspell_6dhqo1kzGxejCjHa.json @@ -57,6 +57,11 @@ "img": "icons/magic/control/hypnosis-mesmerism-watch.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784440, - "modifiedTime": 1754253523353, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427950892, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "6dhqo1kzGxejCjHa", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Critical_Inspiration_ABp9pUfBS69NomTD.json b/src/packs/domains/domainCard_Critical_Inspiration_ABp9pUfBS69NomTD.json index ba3c5685..747eb272 100644 --- a/src/packs/domains/domainCard_Critical_Inspiration_ABp9pUfBS69NomTD.json +++ b/src/packs/domains/domainCard_Critical_Inspiration_ABp9pUfBS69NomTD.json @@ -51,6 +51,11 @@ "img": "icons/magic/light/hand-sparks-glow-yellow.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -58,12 +63,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784441, - "modifiedTime": 1754241711823, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429855659, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ABp9pUfBS69NomTD", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Cruel_Precision_bap1eCWryPNowbyo.json b/src/packs/domains/domainCard_Cruel_Precision_bap1eCWryPNowbyo.json index 8b142a56..352e1941 100644 --- a/src/packs/domains/domainCard_Cruel_Precision_bap1eCWryPNowbyo.json +++ b/src/packs/domains/domainCard_Cruel_Precision_bap1eCWryPNowbyo.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 7, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784442, - "modifiedTime": 1754252496659, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428338581, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "bap1eCWryPNowbyo", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json b/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json index 2e680a1a..019e4d51 100644 --- a/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json +++ b/src/packs/domains/domainCard_Dark_Whispers_yL2qrSWmTwXVOySH.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -64,6 +63,11 @@ "img": "icons/magic/control/mouth-smile-deception-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -71,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784442, - "modifiedTime": 1754331078647, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429363025, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "yL2qrSWmTwXVOySH", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json b/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json index 62b40269..9246896d 100644 --- a/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json +++ b/src/packs/domains/domainCard_Deadly_Focus_xxZOXC4tiZQ6kg1e.json @@ -26,18 +26,23 @@ }, "effects": [ { - "_id": "6sR46Hd554DiLHy4", + "_id": "TFWiAUDCfGaax5MU", "onSave": false } ], "target": { - "type": "any", - "amount": null + "type": "self", + "amount": 1 }, "name": "Focus", "img": "icons/skills/targeting/crosshair-pointed-orange.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -45,22 +50,22 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784443, - "modifiedTime": 1754304260916, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756037604544, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "xxZOXC4tiZQ6kg1e", "sort": 3400000, "effects": [ { "name": "Deadly Focus", - "img": "systems/daggerheart/assets/icons/domains/domain-card/blade.png", + "img": "icons/skills/targeting/crosshair-pointed-orange.webp", "origin": "Compendium.daggerheart.domains.Item.xxZOXC4tiZQ6kg1e", - "transfer": true, - "_id": "6sR46Hd554DiLHy4", + "transfer": false, + "_id": "TFWiAUDCfGaax5MU", "type": "base", "system": { "rangeDependence": { @@ -78,7 +83,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -88,7 +93,7 @@ "startRound": null, "startTurn": null }, - "description": "", + "description": "

Until you attack another creature, you defeat the target, or the battle ends, gain a +1 bonus to your Proficiency.

", "tint": "#ffffff", "statuses": [], "sort": 0, @@ -97,14 +102,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1754244951545, - "modifiedTime": 1754304242570, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "systemVersion": "1.1.0", + "createdTime": 1756037548255, + "modifiedTime": 1756037588317, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, - "_key": "!items.effects!xxZOXC4tiZQ6kg1e.6sR46Hd554DiLHy4" + "_key": "!items.effects!xxZOXC4tiZQ6kg1e.TFWiAUDCfGaax5MU" } ], "ownership": { diff --git a/src/packs/domains/domainCard_Death_Grip_x0FVGE1YbfXalJiw.json b/src/packs/domains/domainCard_Death_Grip_x0FVGE1YbfXalJiw.json index 4341f03f..437100da 100644 --- a/src/packs/domains/domainCard_Death_Grip_x0FVGE1YbfXalJiw.json +++ b/src/packs/domains/domainCard_Death_Grip_x0FVGE1YbfXalJiw.json @@ -216,6 +216,11 @@ "img": "icons/magic/nature/root-vine-beanstalk-moon.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -223,12 +228,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784444, - "modifiedTime": 1754338651654, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429513441, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "x0FVGE1YbfXalJiw", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json b/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json index 4d415f76..8d6ea214 100644 --- a/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json +++ b/src/packs/domains/domainCard_Deathrun_xFOSn8IVVNizgHFq.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -42,6 +41,11 @@ "img": "icons/magic/movement/trail-streak-zigzag-yellow.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784445, - "modifiedTime": 1754252515126, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428374555, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xFOSn8IVVNizgHFq", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json b/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json index 0ac724a6..3daad187 100644 --- a/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json +++ b/src/packs/domains/domainCard_Deft_Deceiver_38znCh6kHTkaPwYi.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -45,6 +44,11 @@ "img": "icons/magic/life/heart-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784445, - "modifiedTime": 1754340779197, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429137161, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "38znCh6kHTkaPwYi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json b/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json index bdf4cbd0..ae4932bf 100644 --- a/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json +++ b/src/packs/domains/domainCard_Deft_Maneuvers_dc4rAXlv95srZUct.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -47,6 +46,11 @@ "img": "icons/skills/movement/arrow-upward-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784446, - "modifiedTime": 1754249648390, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428242266, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dc4rAXlv95srZUct", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Disintegration_Wave_kja5qvh4rdeDBB96.json b/src/packs/domains/domainCard_Disintegration_Wave_kja5qvh4rdeDBB96.json index cf5c2cc0..1f229fca 100644 --- a/src/packs/domains/domainCard_Disintegration_Wave_kja5qvh4rdeDBB96.json +++ b/src/packs/domains/domainCard_Disintegration_Wave_kja5qvh4rdeDBB96.json @@ -58,19 +58,24 @@ "range": "far" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784447, - "modifiedTime": 1754240832214, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429109019, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kja5qvh4rdeDBB96", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json b/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json index 0c7e5530..4c0a599d 100644 --- a/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json +++ b/src/packs/domains/domainCard_Divination_K8oFepK24UVsAX8B.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,6 +41,11 @@ "img": "icons/skills/trades/academics-astronomy-navigation-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784448, - "modifiedTime": 1754269593038, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429706201, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "K8oFepK24UVsAX8B", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json b/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json index 6b8cc8b1..e69e928c 100644 --- a/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json +++ b/src/packs/domains/domainCard_Earthquake_C0qLOwSSvZ6PG3Ws.json @@ -19,12 +19,12 @@ "actionType": "action", "cost": [ { - "consumeOnSuccess": true, - "scalable": false, - "key": "C0qLOwSSvZ6PG3Ws", + "key": "resource", + "itemId": "C0qLOwSSvZ6PG3Ws", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": true } ], "uses": { @@ -99,19 +99,24 @@ "range": "veryFar" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784449, - "modifiedTime": 1754501560924, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756325575299, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "C0qLOwSSvZ6PG3Ws", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Eclipse_62Sj67PdPFzwWVe3.json b/src/packs/domains/domainCard_Eclipse_62Sj67PdPFzwWVe3.json index 855d336e..d51c23cd 100644 --- a/src/packs/domains/domainCard_Eclipse_62Sj67PdPFzwWVe3.json +++ b/src/packs/domains/domainCard_Eclipse_62Sj67PdPFzwWVe3.json @@ -114,6 +114,11 @@ "img": "icons/skills/wounds/anatomy-organ-brain-pink-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -121,12 +126,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784449, - "modifiedTime": 1754331279468, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429426240, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "62Sj67PdPFzwWVe3", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Encore_klahWDFwihqqEhXP.json b/src/packs/domains/domainCard_Encore_klahWDFwihqqEhXP.json index 43b6cf22..ef4eb1ad 100644 --- a/src/packs/domains/domainCard_Encore_klahWDFwihqqEhXP.json +++ b/src/packs/domains/domainCard_Encore_klahWDFwihqqEhXP.json @@ -56,6 +56,11 @@ "img": "icons/magic/light/explosion-impact-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -63,12 +68,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784450, - "modifiedTime": 1754342166865, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429267094, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "klahWDFwihqqEhXP", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json b/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json index a226b952..0277175a 100644 --- a/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json +++ b/src/packs/domains/domainCard_Endless_Charisma_tNzFNlVHghloKsFi.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -40,6 +39,11 @@ "img": "icons/sundries/gaming/dice-runed-tan.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -47,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784450, - "modifiedTime": 1754341790725, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429228458, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tNzFNlVHghloKsFi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json b/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json index fc87d922..a933e609 100644 --- a/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json +++ b/src/packs/domains/domainCard_Enrapture_a8lFiKX1o8T924ze.json @@ -73,7 +73,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -121,6 +120,11 @@ "img": "icons/commodities/gems/gem-faceted-navette-red.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -128,12 +132,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784451, - "modifiedTime": 1754500747453, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429143444, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "a8lFiKX1o8T924ze", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json b/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json index fd032d37..f827cd09 100644 --- a/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json +++ b/src/packs/domains/domainCard_Falling_Sky_hZJp9mdkMnqKDROe.json @@ -23,8 +23,7 @@ "scalable": true, "key": "stress", "value": 1, - "step": 1, - "keyIsID": false + "step": 1 } ], "uses": { @@ -92,6 +91,11 @@ "img": "icons/magic/light/projectiles-star-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -99,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784452, - "modifiedTime": 1754501517016, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428063874, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "hZJp9mdkMnqKDROe", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Fane_of_the_Wilds_F2m9wvZ3v5c3yCtv.json b/src/packs/domains/domainCard_Fane_of_the_Wilds_F2m9wvZ3v5c3yCtv.json index 05477e79..a2c18ba5 100644 --- a/src/packs/domains/domainCard_Fane_of_the_Wilds_F2m9wvZ3v5c3yCtv.json +++ b/src/packs/domains/domainCard_Fane_of_the_Wilds_F2m9wvZ3v5c3yCtv.json @@ -15,6 +15,11 @@ "recovery": "longRest", "max": "", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784452, - "modifiedTime": 1754336327302, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429617500, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "F2m9wvZ3v5c3yCtv", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Ferocity_jSQsSP61CX4MhSN7.json b/src/packs/domains/domainCard_Ferocity_jSQsSP61CX4MhSN7.json index feb74897..483c6a7d 100644 --- a/src/packs/domains/domainCard_Ferocity_jSQsSP61CX4MhSN7.json +++ b/src/packs/domains/domainCard_Ferocity_jSQsSP61CX4MhSN7.json @@ -33,6 +33,11 @@ "img": "icons/skills/melee/maneuver-daggers-paired-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -40,12 +45,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784453, - "modifiedTime": 1754249658710, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428260608, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jSQsSP61CX4MhSN7", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Final_Words_Nbw6Jnh1vRZzwHQI.json b/src/packs/domains/domainCard_Final_Words_Nbw6Jnh1vRZzwHQI.json index 61cd64e6..17f4c969 100644 --- a/src/packs/domains/domainCard_Final_Words_Nbw6Jnh1vRZzwHQI.json +++ b/src/packs/domains/domainCard_Final_Words_Nbw6Jnh1vRZzwHQI.json @@ -57,6 +57,11 @@ "img": "icons/magic/death/undead-skeleton-fire-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784454, - "modifiedTime": 1754269243084, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429677699, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Nbw6Jnh1vRZzwHQI", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json b/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json index 1b4970d2..d3ba4c1d 100644 --- a/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json +++ b/src/packs/domains/domainCard_Flight_54GUjNuBEy7xdzMz.json @@ -71,10 +71,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "54GUjNuBEy7xdzMz", + "key": "resource", + "itemId": "54GUjNuBEy7xdzMz", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -100,6 +100,11 @@ "value": 0, "max": "", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -107,12 +112,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784454, - "modifiedTime": 1754253557569, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575249, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "54GUjNuBEy7xdzMz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Floating_Eye_wOQLu7nLMQ7v6Ogw.json b/src/packs/domains/domainCard_Floating_Eye_wOQLu7nLMQ7v6Ogw.json index 62a36dcf..17cf7e0c 100644 --- a/src/packs/domains/domainCard_Floating_Eye_wOQLu7nLMQ7v6Ogw.json +++ b/src/packs/domains/domainCard_Floating_Eye_wOQLu7nLMQ7v6Ogw.json @@ -38,6 +38,11 @@ "img": "icons/magic/perception/eye-tendrils-web-purple.webp", "range": "veryFar" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -45,12 +50,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784455, - "modifiedTime": 1754253473206, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427943550, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wOQLu7nLMQ7v6Ogw", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Forager_06UapZuaA5S6fAKl.json b/src/packs/domains/domainCard_Forager_06UapZuaA5S6fAKl.json index 5e039fb9..652a79e1 100644 --- a/src/packs/domains/domainCard_Forager_06UapZuaA5S6fAKl.json +++ b/src/packs/domains/domainCard_Forager_06UapZuaA5S6fAKl.json @@ -238,6 +238,11 @@ "img": "icons/consumables/potions/bottle-bulb-corked-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -245,12 +250,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784456, - "modifiedTime": 1754339631526, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429578094, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "06UapZuaA5S6fAKl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json b/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json index bf4a1e0d..517c42f6 100644 --- a/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json +++ b/src/packs/domains/domainCard_Force_of_Nature_LzVpMkD5I4QeaIHf.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -38,12 +37,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Transform", "img": "icons/magic/nature/elemental-plant-humanoid.webp", - "range": "" + "range": "self" }, "1rLoYS90AZizJujS": { "type": "effect", @@ -54,7 +53,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -75,6 +73,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -82,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784456, - "modifiedTime": 1754340347669, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756038760003, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "LzVpMkD5I4QeaIHf", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json b/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json index 1943eac9..7f7cb2b5 100644 --- a/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json +++ b/src/packs/domains/domainCard_Forceful_Push_z8FFPhDh2SdFkFfS.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -48,19 +47,24 @@ } }, "resource": null, - "inVault": false + "inVault": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754067019520, - "modifiedTime": 1754241411518, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429828890, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "effects": [ { diff --git a/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json b/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json index 6b812038..ecfaba75 100644 --- a/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json +++ b/src/packs/domains/domainCard_Forest_Sprites_JrkUMTzaFmQNBHVm.json @@ -23,8 +23,7 @@ "scalable": true, "key": "hope", "value": 1, - "step": 1, - "keyIsID": false + "step": 1 } ], "uses": { @@ -70,6 +69,11 @@ "img": "icons/creatures/magical/humanoid-silhouette-dashing-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -77,12 +81,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784457, - "modifiedTime": 1754339713793, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429599034, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JrkUMTzaFmQNBHVm", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Fortified_Armor_oVa49lI107eZILZr.json b/src/packs/domains/domainCard_Fortified_Armor_oVa49lI107eZILZr.json index b48a2e09..a0a58f74 100644 --- a/src/packs/domains/domainCard_Fortified_Armor_oVa49lI107eZILZr.json +++ b/src/packs/domains/domainCard_Fortified_Armor_oVa49lI107eZILZr.json @@ -8,19 +8,24 @@ "domain": "blade", "recallCost": 0, "level": 4, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784458, - "modifiedTime": 1754304268859, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428132316, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "oVa49lI107eZILZr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json b/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json index d8718735..c6323551 100644 --- a/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json +++ b/src/packs/domains/domainCard_Frenzy_MMl7abdGRLl7TJLO.json @@ -31,13 +31,18 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Frenzy", "img": "icons/magic/fire/projectile-wave-yellow.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -45,12 +50,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784459, - "modifiedTime": 1754304635322, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756037770198, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "MMl7abdGRLl7TJLO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json b/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json index ca10655c..61ee12e0 100644 --- a/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json +++ b/src/packs/domains/domainCard_Full_Surge_SgvjJfMyubZowPxS.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 3, - "keyIsID": false, "step": null } ], @@ -43,8 +42,13 @@ }, "name": "Mark Stress", "img": "icons/magic/control/buff-flight-wings-runes-purple.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" } }, "flags": {}, @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784460, - "modifiedTime": 1754498928489, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756039042961, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "SgvjJfMyubZowPxS", "sort": 3400000, @@ -66,7 +70,7 @@ "name": "Full Surge", "img": "icons/magic/symbols/ring-circle-smoke-blue.webp", "origin": "Compendium.daggerheart.domains.Item.SgvjJfMyubZowPxS", - "transfer": true, + "transfer": false, "_id": "H5q5iYImr69TfZcp", "type": "base", "system": { @@ -115,7 +119,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -134,12 +138,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754242182511, - "modifiedTime": 1754242229676, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756039048089, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!SgvjJfMyubZowPxS.H5q5iYImr69TfZcp" } diff --git a/src/packs/domains/domainCard_Get_Back_Up_BFWN2cObMdlk9uVz.json b/src/packs/domains/domainCard_Get_Back_Up_BFWN2cObMdlk9uVz.json index 91b55807..a35dcd3c 100644 --- a/src/packs/domains/domainCard_Get_Back_Up_BFWN2cObMdlk9uVz.json +++ b/src/packs/domains/domainCard_Get_Back_Up_BFWN2cObMdlk9uVz.json @@ -9,19 +9,24 @@ "recallCost": 1, "level": 1, "type": "ability", - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784460, - "modifiedTime": 1754304045807, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428082275, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "BFWN2cObMdlk9uVz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json b/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json index a9e66110..de38e408 100644 --- a/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json +++ b/src/packs/domains/domainCard_Gifted_Tracker_VZ2b4zfRzV73XTuT.json @@ -22,8 +22,7 @@ "scalable": true, "key": "hope", "value": 1, - "step": 1, - "keyIsID": false + "step": 1 } ], "uses": { @@ -45,6 +44,11 @@ "img": "icons/magic/nature/stealth-hide-eyes-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784461, - "modifiedTime": 1754337461017, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429462909, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "VZ2b4zfRzV73XTuT", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json b/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json index b01a8e00..cde0c6f0 100644 --- a/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json +++ b/src/packs/domains/domainCard_Glancing_Blow_nCNCqSH7UgW4O3To.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -46,6 +45,11 @@ "img": "systems/daggerheart/assets/icons/domains/domain-card/blade.png", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -53,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784462, - "modifiedTime": 1754304608102, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428170369, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "nCNCqSH7UgW4O3To", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json b/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json index 99b6b683..d24686a8 100644 --- a/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json +++ b/src/packs/domains/domainCard_Glyph_of_Nightfall_B5HXqYRJiL3xMNKT.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], @@ -70,6 +69,11 @@ "img": "icons/magic/symbols/runes-triangle-blue.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -77,12 +81,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784463, - "modifiedTime": 1754330838174, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429335032, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "B5HXqYRJiL3xMNKT", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Goad_Them_On_HufF5KzuNfEb9RTi.json b/src/packs/domains/domainCard_Goad_Them_On_HufF5KzuNfEb9RTi.json index 03c1b5e0..9066a308 100644 --- a/src/packs/domains/domainCard_Goad_Them_On_HufF5KzuNfEb9RTi.json +++ b/src/packs/domains/domainCard_Goad_Them_On_HufF5KzuNfEb9RTi.json @@ -87,6 +87,11 @@ "img": "icons/magic/control/mouth-smile-deception-purple.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784464, - "modifiedTime": 1754241738411, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429869259, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HufF5KzuNfEb9RTi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Gore_and_Glory_3zvjgZ5Od343wHzx.json b/src/packs/domains/domainCard_Gore_and_Glory_3zvjgZ5Od343wHzx.json index 6c8de699..bfb91236 100644 --- a/src/packs/domains/domainCard_Gore_and_Glory_3zvjgZ5Od343wHzx.json +++ b/src/packs/domains/domainCard_Gore_and_Glory_3zvjgZ5Od343wHzx.json @@ -146,6 +146,11 @@ "img": "icons/magic/holy/barrier-shield-winged-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -153,12 +158,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784464, - "modifiedTime": 1754304753469, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428195100, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "3zvjgZ5Od343wHzx", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json b/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json index f1d82163..11a9c47a 100644 --- a/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json +++ b/src/packs/domains/domainCard_Grace_Touched_KAuNb51AwhD8KEXk.json @@ -22,7 +22,6 @@ "scalable": false, "key": "armor", "value": 1, - "keyIsID": false, "step": null } ], @@ -92,6 +91,11 @@ "img": "icons/commodities/gems/gem-faceted-navette-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -99,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784465, - "modifiedTime": 1754341871438, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429233975, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "KAuNb51AwhD8KEXk", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json b/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json index 4e603ff8..2b27f9d6 100644 --- a/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json +++ b/src/packs/domains/domainCard_Ground_Pound_WnGldYhJPDhx8v9X.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], @@ -91,6 +90,11 @@ "img": "icons/magic/earth/barrier-stone-brown-green.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" } }, "flags": {}, @@ -98,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784466, - "modifiedTime": 1754242257735, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429937836, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WnGldYhJPDhx8v9X", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json b/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json index a9b0561d..49001e24 100644 --- a/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json +++ b/src/packs/domains/domainCard_Healing_Field_GlRm1Dxlc0Z1b04o.json @@ -19,11 +19,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "GlRm1Dxlc0Z1b04o", + "key": "resource", + "itemId": "GlRm1Dxlc0Z1b04o", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -94,18 +95,20 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "hope", + "itemId": null, "value": 2, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, - "key": "GlRm1Dxlc0Z1b04o", + "key": "resource", + "itemId": "GlRm1Dxlc0Z1b04o", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -175,6 +178,11 @@ "max": "1", "icon": "", "progression": "decreasing" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -182,12 +190,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784466, - "modifiedTime": 1754499077474, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756325575341, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "GlRm1Dxlc0Z1b04o", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json b/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json index a7aeb6b2..5fbe8470 100644 --- a/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json +++ b/src/packs/domains/domainCard_Healing_Hands_WTlhnQMajc1r8i50.json @@ -75,7 +75,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -151,7 +150,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -228,7 +226,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -305,7 +302,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -370,6 +366,11 @@ "img": "icons/commodities/gems/gem-faceted-navette-red.webp", "range": "melee" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -377,12 +378,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784467, - "modifiedTime": 1754269408742, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429684407, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WTlhnQMajc1r8i50", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json b/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json index 6c3dd4fd..68c2143b 100644 --- a/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json +++ b/src/packs/domains/domainCard_Healing_Strike_XtSc0jIJLOoMTMYS.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -87,6 +86,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-green.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -94,12 +98,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784468, - "modifiedTime": 1754269824514, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429756749, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "XtSc0jIJLOoMTMYS", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json b/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json index 0ab4d205..cbca693c 100644 --- a/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json +++ b/src/packs/domains/domainCard_Hold_the_Line_kdFoLo3KXwn4LqTG.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -43,7 +42,7 @@ }, "name": "Spend Hope", "img": "icons/magic/holy/barrier-shield-winged-blue.webp", - "range": "" + "range": "self" }, "SKG6Gu0uJZxtYTnz": { "type": "effect", @@ -73,6 +72,11 @@ "img": "icons/magic/defensive/shield-barrier-blue.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" } }, "flags": {}, @@ -80,12 +84,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784468, - "modifiedTime": 1754242400496, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756039072992, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "kdFoLo3KXwn4LqTG", "sort": 3400000, @@ -94,7 +98,7 @@ "name": "Hold the Line", "img": "icons/magic/defensive/shield-barrier-blue.webp", "origin": "Compendium.daggerheart.domains.Item.kdFoLo3KXwn4LqTG", - "transfer": true, + "transfer": false, "_id": "y82y3nUStyL8DIJL", "type": "base", "system": { @@ -106,7 +110,7 @@ } }, "changes": [], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -125,18 +129,18 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754242295342, - "modifiedTime": 1754242434181, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756039077113, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!kdFoLo3KXwn4LqTG.y82y3nUStyL8DIJL" }, { "name": "Hold the Line", - "img": "systems/daggerheart/assets/icons/domains/domain-card/valor.png", + "img": "icons/skills/melee/shield-block-bash-blue.webp", "origin": "Compendium.daggerheart.domains.Item.kdFoLo3KXwn4LqTG", "transfer": false, "_id": "WTYg0b8nE1XbnMiA", @@ -171,12 +175,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754242400483, - "modifiedTime": 1754242409060, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756039151398, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!kdFoLo3KXwn4LqTG.WTYg0b8nE1XbnMiA" } diff --git a/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json b/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json index 93dfbf97..c82cb6a1 100644 --- a/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json +++ b/src/packs/domains/domainCard_Hush_gwmYasmfgXZ7tFS6.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], @@ -70,6 +69,11 @@ "img": "icons/magic/unholy/orb-glowing-purple.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -77,12 +81,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784470, - "modifiedTime": 1754331001689, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429348547, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gwmYasmfgXZ7tFS6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json b/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json index a221859c..d7ad18c6 100644 --- a/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json +++ b/src/packs/domains/domainCard_Hypnotic_Shimmer_2ZeuCGVatQdPOVC6.json @@ -14,7 +14,7 @@ "type": "attack", "_id": "kLMAuyZktmohOSXa", "systemPath": "actions", - "description": "

Make a Spellcast Roll against all adversaries in front of you within Close range. Once per rest on a success, create an illusion of flashing colors and lights that temporarily Stuns targets you succeed against and forces them to mark a Stress. While Stunned, they can’t use reactions and can’t take any other actions until they clear this condition.

", + "description": "

Make a Spellcast Roll against all adversaries in front of you within Close range. Once per rest on a success, create an illusion of flashing colors and lights that temporarily Stuns targets you succeed against and forces them to mark a Stress. While Stunned, they can’t use reactions and can’t take any other actions until they clear this condition.

@Template[type:infront|range:c]

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -88,6 +88,11 @@ "img": "icons/magic/control/hypnosis-mesmerism-swirl.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -95,12 +100,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784471, - "modifiedTime": 1754341315075, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756038232979, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "2ZeuCGVatQdPOVC6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json b/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json index 1699800f..258499a7 100644 --- a/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json +++ b/src/packs/domains/domainCard_I_Am_Your_Shield_KOf6LLpMRNwjezDx.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -42,19 +41,24 @@ } }, "resource": null, - "inVault": false + "inVault": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754067020844, - "modifiedTime": 1754241453261, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429834425, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "effects": [], "ownership": { diff --git a/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json b/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json index 0960839a..d44ae867 100644 --- a/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json +++ b/src/packs/domains/domainCard_I_See_It_Coming_Kp6RejHGimnuoBom.json @@ -23,7 +23,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -66,6 +65,11 @@ "img": "icons/skills/melee/maneuver-sword-katana-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -73,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784472, - "modifiedTime": 1754249651973, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428247643, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Kp6RejHGimnuoBom", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Inevitable_XTT8c8uJ4D7fvtbL.json b/src/packs/domains/domainCard_Inevitable_XTT8c8uJ4D7fvtbL.json index 78718d6b..18afea52 100644 --- a/src/packs/domains/domainCard_Inevitable_XTT8c8uJ4D7fvtbL.json +++ b/src/packs/domains/domainCard_Inevitable_XTT8c8uJ4D7fvtbL.json @@ -8,19 +8,24 @@ "domain": "valor", "recallCost": 1, "level": 6, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784472, - "modifiedTime": 1754242058119, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429896649, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "XTT8c8uJ4D7fvtbL", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json b/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json index 424b08b7..5b24a20e 100644 --- a/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json +++ b/src/packs/domains/domainCard_Inspirational_Words_cWu1o82ZF7GvnbXc.json @@ -27,11 +27,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "cWu1o82ZF7GvnbXc", + "key": "resource", + "itemId": "cWu1o82ZF7GvnbXc", "value": 1, + "scalable": false, "step": null, - "keyIsID": true + "consumeOnSuccess": false } ], "uses": { @@ -102,11 +103,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "cWu1o82ZF7GvnbXc", + "key": "resource", + "itemId": "cWu1o82ZF7GvnbXc", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -177,11 +179,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "cWu1o82ZF7GvnbXc", + "key": "resource", + "itemId": "cWu1o82ZF7GvnbXc", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -243,6 +246,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -250,12 +258,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784473, - "modifiedTime": 1754499693699, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756325575659, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "cWu1o82ZF7GvnbXc", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json b/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json index 9bdf44e7..fe5da256 100644 --- a/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json +++ b/src/packs/domains/domainCard_Invigoration_X8OfkEoI5gLTRf1B.json @@ -23,7 +23,6 @@ "key": "hope", "value": 1, "step": 1, - "keyIsID": false, "consumeOnSuccess": false } ], @@ -66,6 +65,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -73,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784474, - "modifiedTime": 1754270049868, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429801608, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "X8OfkEoI5gLTRf1B", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json b/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json index a0bff97c..000711a8 100644 --- a/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json +++ b/src/packs/domains/domainCard_Invisibility_KHkzA4Zrw8EWN1CH.json @@ -23,7 +23,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -76,6 +75,11 @@ "value": 0, "max": "@cast", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -83,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784475, - "modifiedTime": 1754341402828, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429172642, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "KHkzA4Zrw8EWN1CH", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json b/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json index 53ef85a7..75b94c59 100644 --- a/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json +++ b/src/packs/domains/domainCard_Know_Thy_Enemy_O38MQMhJWdZnXi6b.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], @@ -78,7 +77,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -98,6 +96,11 @@ "img": "icons/magic/perception/eye-ringed-glow-angry-small-teal.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -105,12 +108,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784475, - "modifiedTime": 1754252480391, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428299138, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "O38MQMhJWdZnXi6b", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json b/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json index 67f8e04c..86e8b1ca 100644 --- a/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json +++ b/src/packs/domains/domainCard_Lead_by_Example_YWCRplmtwpCjpq5i.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -39,12 +38,17 @@ ], "target": { "type": "any", - "amount": null + "amount": 1 }, "name": "Mark Stress", "img": "icons/magic/control/buff-flight-wings-runes-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" } }, "flags": {}, @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784475, - "modifiedTime": 1754242464667, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756039181179, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "YWCRplmtwpCjpq5i", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Lean_on_Me_BdePs1ZWpZTZvY1Z.json b/src/packs/domains/domainCard_Lean_on_Me_BdePs1ZWpZTZvY1Z.json index aecbe898..73bfee2b 100644 --- a/src/packs/domains/domainCard_Lean_on_Me_BdePs1ZWpZTZvY1Z.json +++ b/src/packs/domains/domainCard_Lean_on_Me_BdePs1ZWpZTZvY1Z.json @@ -77,6 +77,11 @@ "img": "icons/magic/life/heart-cross-strong-purple-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -84,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784477, - "modifiedTime": 1754241703151, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429861185, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "BdePs1ZWpZTZvY1Z", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json b/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json index 78b2ec5e..12884992 100644 --- a/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json +++ b/src/packs/domains/domainCard_Life_Ward_OszbCj0jTqq2ADx9.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -47,6 +46,11 @@ "img": "icons/magic/defensive/shield-barrier-deflect-gold.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784478, - "modifiedTime": 1754269642386, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429712212, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "OszbCj0jTqq2ADx9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json b/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json index acb35822..c938aca6 100644 --- a/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json +++ b/src/packs/domains/domainCard_Manifest_Wall_TtGOtWkbr23VhHfH.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 1, - "keyIsID": false, "step": null } ], @@ -66,6 +65,11 @@ "img": "icons/magic/symbols/ring-circle-smoke-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -73,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784479, - "modifiedTime": 1754240697822, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429040215, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "TtGOtWkbr23VhHfH", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Mass_Disguise_dT95m0Jam8sWbeuC.json b/src/packs/domains/domainCard_Mass_Disguise_dT95m0Jam8sWbeuC.json index 76ea0d6b..050a47a0 100644 --- a/src/packs/domains/domainCard_Mass_Disguise_dT95m0Jam8sWbeuC.json +++ b/src/packs/domains/domainCard_Mass_Disguise_dT95m0Jam8sWbeuC.json @@ -37,6 +37,11 @@ "img": "icons/skills/social/diplomacy-unity-alliance.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784480, - "modifiedTime": 1754331105670, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429370519, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dT95m0Jam8sWbeuC", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json b/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json index 2713e2c7..60f93510 100644 --- a/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json +++ b/src/packs/domains/domainCard_Mass_Enrapture_ubpixIgZrJXKyM3b.json @@ -73,7 +73,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -121,6 +120,11 @@ "img": "icons/commodities/gems/gem-faceted-navette-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -128,12 +132,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784481, - "modifiedTime": 1754499825008, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429247535, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ubpixIgZrJXKyM3b", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Master_of_the_Craft_yAGTwXHUC3qxpTeK.json b/src/packs/domains/domainCard_Master_of_the_Craft_yAGTwXHUC3qxpTeK.json index 8ab75989..148ce05a 100644 --- a/src/packs/domains/domainCard_Master_of_the_Craft_yAGTwXHUC3qxpTeK.json +++ b/src/packs/domains/domainCard_Master_of_the_Craft_yAGTwXHUC3qxpTeK.json @@ -8,19 +8,24 @@ "domain": "grace", "recallCost": 0, "level": 9, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784482, - "modifiedTime": 1754229084018, - "lastModifiedBy": "l5jB3XmcVXOTQpRZ" + "modifiedTime": 1755429259836, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "yAGTwXHUC3qxpTeK", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json b/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json index 437adffc..84278082 100644 --- a/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json +++ b/src/packs/domains/domainCard_Mending_Touch_TGjR4vJVNbQRV8zr.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -99,7 +98,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -173,18 +171,18 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "hope", + "itemId": null, "value": 2, - "keyIsID": false, + "scalable": false, "step": null, "consumeOnSuccess": false }, { - "scalable": false, - "key": "TGjR4vJVNbQRV8zr", + "key": "resource", + "itemId": "TGjR4vJVNbQRV8zr", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -258,18 +256,18 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "hope", + "itemId": null, "value": 2, - "keyIsID": false, + "scalable": false, "step": null, "consumeOnSuccess": false }, { - "scalable": false, - "key": "TGjR4vJVNbQRV8zr", + "key": "resource", + "itemId": "TGjR4vJVNbQRV8zr", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -342,6 +340,11 @@ "max": "1", "icon": "fa-solid fa-hands-praying", "recovery": "longRest" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -349,12 +352,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784482, - "modifiedTime": 1754498631054, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756325575507, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "TGjR4vJVNbQRV8zr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json b/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json index 701f912d..8cb485e4 100644 --- a/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json +++ b/src/packs/domains/domainCard_Midnight_Spirit_FXLsB3QbQvTtqX5B.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -49,7 +48,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -121,6 +119,11 @@ "img": "icons/creatures/magical/spirit-undead-ghost-purple.webp", "range": "veryFar" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -128,12 +131,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784482, - "modifiedTime": 1754330630881, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429306955, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "FXLsB3QbQvTtqX5B", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json b/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json index 7a06e78e..39c82f3a 100644 --- a/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json +++ b/src/packs/domains/domainCard_Midnight_Touched_uSyGKVxOJcnp28po.json @@ -89,7 +89,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -107,6 +106,11 @@ "img": "icons/skills/wounds/anatomy-organ-brain-pink-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -114,12 +118,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784484, - "modifiedTime": 1754331118511, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429376821, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uSyGKVxOJcnp28po", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json b/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json index 97da5875..1e2c783d 100644 --- a/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json +++ b/src/packs/domains/domainCard_Natural_Familiar_Tag303LoRNC5zGgl.json @@ -22,7 +22,6 @@ "scalable": true, "key": "hope", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -104,7 +103,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -122,6 +120,11 @@ "img": "icons/magic/perception/eye-ringed-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -129,12 +132,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784485, - "modifiedTime": 1754338204263, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429486873, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Tag303LoRNC5zGgl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json b/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json index ed754e5c..4ede0a27 100644 --- a/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json +++ b/src/packs/domains/domainCard_Nature_s_Tongue_atWLorlCOxcrq8WB.json @@ -65,7 +65,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -91,6 +90,11 @@ "img": "icons/magic/nature/beam-hand-leaves-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -98,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784485, - "modifiedTime": 1754337595015, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429468262, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "atWLorlCOxcrq8WB", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json b/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json index b53b635d..7d8ec8bc 100644 --- a/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json +++ b/src/packs/domains/domainCard_Never_Upstaged_McdncxmO9K1YNP7Y.json @@ -25,18 +25,20 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "McdncxmO9K1YNP7Y", + "key": "resource", + "itemId": "McdncxmO9K1YNP7Y", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, "key": "stress", + "itemId": null, "value": 1, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -67,18 +69,20 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "stress", + "itemId": null, "value": 1, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, - "key": "McdncxmO9K1YNP7Y", + "key": "resource", + "itemId": "McdncxmO9K1YNP7Y", "value": 2, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -109,18 +113,20 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "stress", + "itemId": null, "value": 1, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, - "key": "McdncxmO9K1YNP7Y", + "key": "resource", + "itemId": "McdncxmO9K1YNP7Y", "value": 3, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -151,18 +157,20 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "McdncxmO9K1YNP7Y", + "key": "resource", + "itemId": "McdncxmO9K1YNP7Y", "value": 4, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, "key": "stress", + "itemId": null, "value": 1, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -184,6 +192,11 @@ "img": "icons/commodities/gems/gem-faceted-navette-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -191,12 +204,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784486, - "modifiedTime": 1754341729669, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575431, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "McdncxmO9K1YNP7Y", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json b/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json index cb538eb1..f2f9a556 100644 --- a/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json +++ b/src/packs/domains/domainCard_Night_Terror_zcldCuqOg3dphUVI.json @@ -70,11 +70,12 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "zcldCuqOg3dphUVI", + "key": "resource", + "itemId": "zcldCuqOg3dphUVI", "value": 1, + "scalable": true, "step": 1, - "keyIsID": true + "consumeOnSuccess": false } ], "uses": { @@ -121,19 +122,24 @@ "range": "" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784487, - "modifiedTime": 1754499654051, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756325575872, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "zcldCuqOg3dphUVI", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Not_Good_Enough_xheQZOIYp0ERQhT9.json b/src/packs/domains/domainCard_Not_Good_Enough_xheQZOIYp0ERQhT9.json index 56abe99f..6d7acdf5 100644 --- a/src/packs/domains/domainCard_Not_Good_Enough_xheQZOIYp0ERQhT9.json +++ b/src/packs/domains/domainCard_Not_Good_Enough_xheQZOIYp0ERQhT9.json @@ -8,19 +8,24 @@ "domain": "blade", "recallCost": 1, "level": 1, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784487, - "modifiedTime": 1754244517328, - "lastModifiedBy": "l5jB3XmcVXOTQpRZ" + "modifiedTime": 1755428087961, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "xheQZOIYp0ERQhT9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json b/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json index aad731ff..4f9e09e2 100644 --- a/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json +++ b/src/packs/domains/domainCard_Notorious_IqxzvvjZiYbgx21A.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -40,6 +39,11 @@ "img": "icons/magic/light/explosion-star-glow-silhouette.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -47,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784489, - "modifiedTime": 1754342229231, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429273228, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "IqxzvvjZiYbgx21A", "sort": 3400000, diff --git a/src/packs/domains/domainCard_On_the_Brink_zbxPl81kbWEegKQN.json b/src/packs/domains/domainCard_On_the_Brink_zbxPl81kbWEegKQN.json index b6f6548f..c6978859 100644 --- a/src/packs/domains/domainCard_On_the_Brink_zbxPl81kbWEegKQN.json +++ b/src/packs/domains/domainCard_On_the_Brink_zbxPl81kbWEegKQN.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 9, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784489, - "modifiedTime": 1754252507659, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428361099, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "zbxPl81kbWEegKQN", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json b/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json index 0d924ef2..20a677d0 100644 --- a/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json +++ b/src/packs/domains/domainCard_Onslaught_I7pNsQ9Yx6mRJX4V.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -46,6 +45,11 @@ "img": "icons/skills/melee/strike-axe-blood-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -53,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784490, - "modifiedTime": 1754304817948, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428212614, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "I7pNsQ9Yx6mRJX4V", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json b/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json index 68abefea..20bf8aeb 100644 --- a/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json +++ b/src/packs/domains/domainCard_Overwhelming_Aura_iEBLySZD9z8CLdz7.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], @@ -38,7 +37,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [ @@ -69,8 +68,13 @@ }, "name": "Cast", "img": "icons/magic/holy/angel-winged-humanoid-blue.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -78,12 +82,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784491, - "modifiedTime": 1754270006714, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756038903709, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "iEBLySZD9z8CLdz7", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json b/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json index 7e58df93..3ee2198a 100644 --- a/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json +++ b/src/packs/domains/domainCard_Phantom_Retreat_0vdpIn06ifF3xxqZ.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -49,7 +48,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -70,6 +68,11 @@ "img": "icons/magic/control/silhouette-hold-beam-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -77,12 +80,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784491, - "modifiedTime": 1754331063221, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429354517, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "0vdpIn06ifF3xxqZ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Pick_and_Pull_HdgZUfWd7Hyj7nBW.json b/src/packs/domains/domainCard_Pick_and_Pull_HdgZUfWd7Hyj7nBW.json index 23e477a9..8556feb3 100644 --- a/src/packs/domains/domainCard_Pick_and_Pull_HdgZUfWd7Hyj7nBW.json +++ b/src/packs/domains/domainCard_Pick_and_Pull_HdgZUfWd7Hyj7nBW.json @@ -8,19 +8,24 @@ "domain": "midnight", "recallCost": 0, "level": 1, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784492, - "modifiedTime": 1754330601777, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429286495, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HdgZUfWd7Hyj7nBW", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Plant_Dominion_9a6xP5pxhVvdugk9.json b/src/packs/domains/domainCard_Plant_Dominion_9a6xP5pxhVvdugk9.json index 8176850e..665a7af9 100644 --- a/src/packs/domains/domainCard_Plant_Dominion_9a6xP5pxhVvdugk9.json +++ b/src/packs/domains/domainCard_Plant_Dominion_9a6xP5pxhVvdugk9.json @@ -57,6 +57,11 @@ "img": "icons/magic/nature/tree-elm-roots-brown.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784493, - "modifiedTime": 1754499238543, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429623471, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9a6xP5pxhVvdugk9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json b/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json index 8a590089..8678a0f8 100644 --- a/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json +++ b/src/packs/domains/domainCard_Premonition_aC43NiFQLpOADyjO.json @@ -19,10 +19,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "aC43NiFQLpOADyjO", + "key": "resource", + "itemId": "aC43NiFQLpOADyjO", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -49,6 +49,11 @@ "recovery": "longRest", "max": "1", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -56,12 +61,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784494, - "modifiedTime": 1754253731528, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575616, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "aC43NiFQLpOADyjO", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Preservation_Blast_1p1cOmbnRd5CoKBp.json b/src/packs/domains/domainCard_Preservation_Blast_1p1cOmbnRd5CoKBp.json index 2460130f..9240a534 100644 --- a/src/packs/domains/domainCard_Preservation_Blast_1p1cOmbnRd5CoKBp.json +++ b/src/packs/domains/domainCard_Preservation_Blast_1p1cOmbnRd5CoKBp.json @@ -84,6 +84,11 @@ "img": "icons/magic/air/air-pressure-shield-blue.webp", "range": "melee" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -91,12 +96,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784495, - "modifiedTime": 1754253657439, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427971834, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1p1cOmbnRd5CoKBp", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json b/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json index b11bd6f9..f7e72b9f 100644 --- a/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json +++ b/src/packs/domains/domainCard_Rage_Up_GRL0cvs96vrTDckZ.json @@ -14,7 +14,7 @@ "type": "effect", "_id": "LmjwPg03xLnoGTHm", "systemPath": "actions", - "description": "", + "description": "

You can mark a Stress to gain a bonus to your damage roll equal to twice your Strength.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -22,8 +22,7 @@ "scalable": false, "key": "stress", "value": 1, - "step": 1, - "keyIsID": false, + "step": null, "consumeOnSuccess": false } ], @@ -40,18 +39,18 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark 1 Stress", "img": "icons/magic/control/silhouette-aura-energy.webp", - "range": "" + "range": "self" }, "fKY9NcYBwCFwMsgV": { "type": "effect", "_id": "fKY9NcYBwCFwMsgV", "systemPath": "actions", - "description": "", + "description": "

You can mark a Stress to gain a bonus to your damage roll equal to twice your Strength.

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -59,7 +58,6 @@ "scalable": false, "key": "stress", "value": 2, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -77,13 +75,18 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark 2 Stress", "img": "icons/magic/control/silhouette-aura-energy.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -91,12 +94,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784496, - "modifiedTime": 1754445106667, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756037744719, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "GRL0cvs96vrTDckZ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json b/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json index 7327a44e..a15778c3 100644 --- a/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json +++ b/src/packs/domains/domainCard_Rain_of_Blades_Ucenef6JpjQxwXni.json @@ -14,12 +14,11 @@ "type": "attack", "_id": "WTnjKQs2uI1TuF9r", "systemPath": "actions", - "description": "

Spend a Hope to make a Spellcast Roll and conjure throwing blades that strike out at all targets within Very Close range. Targets you succeed against take d8+2 magic damage using your Proficiency.

", + "description": "

Spend a Hope to make a Spellcast Roll and conjure throwing blades that strike out at all targets within Very Close range. Targets you succeed against take d8+2 magic damage using your Proficiency.

@Template[type:emanation|range:vc]

", "chatDisplay": true, "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -140,6 +139,11 @@ "img": "icons/skills/melee/spear-tips-three-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -147,12 +151,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784497, - "modifiedTime": 1754330607042, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756038335767, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "Ucenef6JpjQxwXni", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json b/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json index e2f248c7..2f3bb3a0 100644 --- a/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json +++ b/src/packs/domains/domainCard_Rapid_Riposte_tceJDcCUefrMS2Ov.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,6 +41,11 @@ "img": "icons/skills/melee/maneuver-greatsword-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784497, - "modifiedTime": 1754252487558, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428316589, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "tceJDcCUefrMS2Ov", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json b/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json index 201005a1..df98b899 100644 --- a/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json +++ b/src/packs/domains/domainCard_Reaper_s_Strike_MCgNRlh0s5XUPCfl.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -66,6 +65,11 @@ "img": "icons/skills/melee/strike-axe-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -73,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784498, - "modifiedTime": 1754304768446, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428200348, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "MCgNRlh0s5XUPCfl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Reassurance_iYNVTB7uAD1FTCZu.json b/src/packs/domains/domainCard_Reassurance_iYNVTB7uAD1FTCZu.json index 43c17e96..87ec672e 100644 --- a/src/packs/domains/domainCard_Reassurance_iYNVTB7uAD1FTCZu.json +++ b/src/packs/domains/domainCard_Reassurance_iYNVTB7uAD1FTCZu.json @@ -33,6 +33,11 @@ "img": "icons/sundries/gaming/dice-pair-white-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -40,12 +45,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784499, - "modifiedTime": 1754498645559, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429669557, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "iYNVTB7uAD1FTCZu", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json b/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json index 7e6d927a..3784874b 100644 --- a/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json +++ b/src/packs/domains/domainCard_Reckless_2ooUo2yoilGifY81.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,6 +41,11 @@ "img": "icons/magic/control/silhouette-aura-energy.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784500, - "modifiedTime": 1754304322191, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428107078, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2ooUo2yoilGifY81", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Recovery_gsiQFT6q3WOgqerJ.json b/src/packs/domains/domainCard_Recovery_gsiQFT6q3WOgqerJ.json index 8b491d49..963abf97 100644 --- a/src/packs/domains/domainCard_Recovery_gsiQFT6q3WOgqerJ.json +++ b/src/packs/domains/domainCard_Recovery_gsiQFT6q3WOgqerJ.json @@ -38,6 +38,11 @@ "img": "icons/magic/life/cross-beam-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -45,12 +50,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784500, - "modifiedTime": 1754252490411, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428322053, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gsiQFT6q3WOgqerJ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json b/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json index 85a952c3..86c765a2 100644 --- a/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json +++ b/src/packs/domains/domainCard_Redirect_faU0XkJCbar69PiN.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,6 +41,11 @@ "img": "icons/skills/melee/sword-twirl-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784500, - "modifiedTime": 1754252475141, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428292852, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "faU0XkJCbar69PiN", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rejuvenation_Barrier_HtWx5IIemCoorMj2.json b/src/packs/domains/domainCard_Rejuvenation_Barrier_HtWx5IIemCoorMj2.json index 4d910604..1ab77475 100644 --- a/src/packs/domains/domainCard_Rejuvenation_Barrier_HtWx5IIemCoorMj2.json +++ b/src/packs/domains/domainCard_Rejuvenation_Barrier_HtWx5IIemCoorMj2.json @@ -82,6 +82,11 @@ "img": "icons/magic/nature/leaf-hand-green.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -89,12 +94,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784502, - "modifiedTime": 1754499308449, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429606994, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HtWx5IIemCoorMj2", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json b/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json index c75e8ca6..1d64e639 100644 --- a/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json +++ b/src/packs/domains/domainCard_Restoration_wUQFsRtww18naYaq.json @@ -27,11 +27,11 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "wUQFsRtww18naYaq", + "key": "resource", + "itemId": "wUQFsRtww18naYaq", "value": 1, + "scalable": true, "step": null, - "keyIsID": true, "consumeOnSuccess": false } ], @@ -104,11 +104,11 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "wUQFsRtww18naYaq", + "key": "resource", + "itemId": "wUQFsRtww18naYaq", "value": 1, + "scalable": true, "step": 1, - "keyIsID": true, "consumeOnSuccess": false } ], @@ -181,11 +181,11 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "wUQFsRtww18naYaq", + "key": "resource", + "itemId": "wUQFsRtww18naYaq", "value": 1, + "scalable": true, "step": null, - "keyIsID": true, "consumeOnSuccess": false } ], @@ -204,6 +204,11 @@ "img": "icons/magic/light/beam-rays-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -211,12 +216,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784502, - "modifiedTime": 1754498742091, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756325575854, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "wUQFsRtww18naYaq", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Resurrection_z30ciOwQI7g3tHla.json b/src/packs/domains/domainCard_Resurrection_z30ciOwQI7g3tHla.json index 7d580ff9..02c742ef 100644 --- a/src/packs/domains/domainCard_Resurrection_z30ciOwQI7g3tHla.json +++ b/src/packs/domains/domainCard_Resurrection_z30ciOwQI7g3tHla.json @@ -104,6 +104,11 @@ "img": "icons/sundries/gaming/dice-runed-brown.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -111,12 +116,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784503, - "modifiedTime": 1754270120120, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429807372, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "z30ciOwQI7g3tHla", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rift_Walker_vd5STqX29RpYbGxa.json b/src/packs/domains/domainCard_Rift_Walker_vd5STqX29RpYbGxa.json index 476e9534..76313434 100644 --- a/src/packs/domains/domainCard_Rift_Walker_vd5STqX29RpYbGxa.json +++ b/src/packs/domains/domainCard_Rift_Walker_vd5STqX29RpYbGxa.json @@ -57,6 +57,11 @@ "img": "icons/magic/earth/projectile-stone-bullet-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784503, - "modifiedTime": 1754253784334, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427997569, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "vd5STqX29RpYbGxa", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rise_Up_oDIZoC4l19Nli0Fj.json b/src/packs/domains/domainCard_Rise_Up_oDIZoC4l19Nli0Fj.json index d7c8c618..964b5736 100644 --- a/src/packs/domains/domainCard_Rise_Up_oDIZoC4l19Nli0Fj.json +++ b/src/packs/domains/domainCard_Rise_Up_oDIZoC4l19Nli0Fj.json @@ -77,6 +77,11 @@ "img": "icons/magic/life/heart-cross-strong-purple-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -84,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784504, - "modifiedTime": 1754242078238, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429903155, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "oDIZoC4l19Nli0Fj", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rousing_Strike_pcbYD33rBBdAo5f9.json b/src/packs/domains/domainCard_Rousing_Strike_pcbYD33rBBdAo5f9.json index 47aa96d1..99c411fe 100644 --- a/src/packs/domains/domainCard_Rousing_Strike_pcbYD33rBBdAo5f9.json +++ b/src/packs/domains/domainCard_Rousing_Strike_pcbYD33rBBdAo5f9.json @@ -32,6 +32,11 @@ "img": "icons/magic/light/hand-sparks-glow-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -39,12 +44,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784506, - "modifiedTime": 1754242030472, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429887417, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "pcbYD33rBBdAo5f9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json b/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json index 91f7205b..f84e035b 100644 --- a/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json +++ b/src/packs/domains/domainCard_Rune_Ward_GEhBUmv9Bj7oJfHk.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -64,6 +63,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-pink-gold.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -71,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "1.1.2", "createdTime": 1753922784506, - "modifiedTime": 1758364595206, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1761502476899, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_id": "GEhBUmv9Bj7oJfHk", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json b/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json index 3f84099c..7f542794 100644 --- a/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json +++ b/src/packs/domains/domainCard_Safe_Haven_lmBLMPuR8qLbuzNf.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], @@ -45,6 +44,11 @@ "img": "icons/environment/settlement/watchtower-moonlit-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784506, - "modifiedTime": 1754233292265, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429092085, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "lmBLMPuR8qLbuzNf", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json b/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json index 3f172c21..9d2ccec7 100644 --- a/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json +++ b/src/packs/domains/domainCard_Sage_Touched_VOSFaQHZbmhMyXwi.json @@ -19,11 +19,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "VOSFaQHZbmhMyXwi", + "key": "resource", + "itemId": "VOSFaQHZbmhMyXwi", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -54,11 +55,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "VOSFaQHZbmhMyXwi", + "key": "resource", + "itemId": "VOSFaQHZbmhMyXwi", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -87,6 +89,11 @@ "max": "1", "icon": "", "recovery": "shortRest" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -94,12 +101,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784507, - "modifiedTime": 1754339963905, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575562, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "VOSFaQHZbmhMyXwi", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json b/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json index 0d799f82..7009df65 100644 --- a/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json +++ b/src/packs/domains/domainCard_Salvation_Beam_4uAFGp3LxiC07woC.json @@ -14,7 +14,7 @@ "type": "healing", "_id": "dmnB4ZMSk8lsB8Lg", "systemPath": "actions", - "description": "

Make a Spellcast Roll (16). On a success, mark any number of Stress to target a line of allies within Far range. You can clear Hit Points on the targets equal to the number of Stress marked, divided among them however you’d like.

", + "description": "

Make a Spellcast Roll (16). On a success, mark any number of Stress to target a line of allies within Far range. You can clear Hit Points on the targets equal to the number of Stress marked, divided among them however you’d like.

@Template[type:ray|range:f]

", "chatDisplay": true, "actionType": "action", "cost": [ @@ -23,8 +23,7 @@ "scalable": true, "key": "stress", "value": 1, - "step": null, - "keyIsID": false + "step": null } ], "uses": { @@ -87,6 +86,11 @@ "img": "icons/magic/light/beams-rays-orange-purple-large.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -94,12 +98,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784508, - "modifiedTime": 1754270031835, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756038941872, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "4uAFGp3LxiC07woC", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Scramble_5bBU9jWHOuOY12lR.json b/src/packs/domains/domainCard_Scramble_5bBU9jWHOuOY12lR.json index 5ca6fc07..77b1b0c8 100644 --- a/src/packs/domains/domainCard_Scramble_5bBU9jWHOuOY12lR.json +++ b/src/packs/domains/domainCard_Scramble_5bBU9jWHOuOY12lR.json @@ -33,6 +33,11 @@ "img": "icons/skills/movement/feet-winged-boots-brown.webp", "range": "melee" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -40,12 +45,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784509, - "modifiedTime": 1754304188850, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428115458, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "5bBU9jWHOuOY12lR", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json b/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json index 07b037d6..671ffcfb 100644 --- a/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json +++ b/src/packs/domains/domainCard_Second_Wind_ffPbSEvLuFrFsMxl.json @@ -19,10 +19,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "ffPbSEvLuFrFsMxl", + "key": "resource", + "itemId": "ffPbSEvLuFrFsMxl", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -96,10 +96,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "ffPbSEvLuFrFsMxl", + "key": "resource", + "itemId": "ffPbSEvLuFrFsMxl", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -171,6 +171,11 @@ "recovery": "shortRest", "max": "1", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -178,12 +183,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784509, - "modifiedTime": 1754269533170, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575706, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "ffPbSEvLuFrFsMxl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Sensory_Projection_gZOMzskSOfeiXn54.json b/src/packs/domains/domainCard_Sensory_Projection_gZOMzskSOfeiXn54.json index 227ab463..9e0e7f67 100644 --- a/src/packs/domains/domainCard_Sensory_Projection_gZOMzskSOfeiXn54.json +++ b/src/packs/domains/domainCard_Sensory_Projection_gZOMzskSOfeiXn54.json @@ -57,6 +57,11 @@ "img": "icons/magic/control/debuff-energy-hold-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784511, - "modifiedTime": 1754254316744, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428050507, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gZOMzskSOfeiXn54", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shadowbind_kguhWlidhxe2GbT0.json b/src/packs/domains/domainCard_Shadowbind_kguhWlidhxe2GbT0.json index 000a1b1f..25277259 100644 --- a/src/packs/domains/domainCard_Shadowbind_kguhWlidhxe2GbT0.json +++ b/src/packs/domains/domainCard_Shadowbind_kguhWlidhxe2GbT0.json @@ -61,6 +61,11 @@ "img": "icons/magic/control/debuff-energy-snare-blue.webp", "range": "veryClose" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784512, - "modifiedTime": 1754499502570, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429312498, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kguhWlidhxe2GbT0", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shadowhunter_A0XzD6MmBXYdk7Ps.json b/src/packs/domains/domainCard_Shadowhunter_A0XzD6MmBXYdk7Ps.json index 1b1639fd..e76637df 100644 --- a/src/packs/domains/domainCard_Shadowhunter_A0XzD6MmBXYdk7Ps.json +++ b/src/packs/domains/domainCard_Shadowhunter_A0XzD6MmBXYdk7Ps.json @@ -9,19 +9,24 @@ "recallCost": 2, "level": 8, "type": "ability", - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784513, - "modifiedTime": 1754331190370, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429396600, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "A0XzD6MmBXYdk7Ps", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json b/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json index c4eb21a0..e3b3569c 100644 --- a/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json +++ b/src/packs/domains/domainCard_Shape_Material_db4xV3YErHRslbVE.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -42,6 +41,11 @@ "img": "icons/commodities/stone/geode-raw-white.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784514, - "modifiedTime": 1754269669897, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429726392, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "db4xV3YErHRslbVE", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Share_the_Burden_8nRle10pw1HO8QVu.json b/src/packs/domains/domainCard_Share_the_Burden_8nRle10pw1HO8QVu.json index 62c4de86..202a4e58 100644 --- a/src/packs/domains/domainCard_Share_the_Burden_8nRle10pw1HO8QVu.json +++ b/src/packs/domains/domainCard_Share_the_Burden_8nRle10pw1HO8QVu.json @@ -33,6 +33,11 @@ "img": "systems/daggerheart/assets/icons/domains/domain-card/grace.png", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -40,12 +45,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784515, - "modifiedTime": 1754499760780, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429220432, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "8nRle10pw1HO8QVu", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json b/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json index ea63ca5a..8abd548c 100644 --- a/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json +++ b/src/packs/domains/domainCard_Shield_Aura_rfIv6lln40Fh6EIl.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -47,6 +46,11 @@ "img": "icons/magic/defensive/shield-barrier-flaming-diamond-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784516, - "modifiedTime": 1754269891393, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429770054, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "rfIv6lln40Fh6EIl", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json b/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json index 2b7ccf04..cded950d 100644 --- a/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json +++ b/src/packs/domains/domainCard_Shrug_It_Off_JwfhtgmmuRxg4zhI.json @@ -23,7 +23,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -65,6 +64,11 @@ "img": "icons/magic/defensive/shield-barrier-deflect-teal.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -72,12 +76,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784516, - "modifiedTime": 1754242112465, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429912530, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JwfhtgmmuRxg4zhI", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Sigil_of_Retribution_RiuN0lMlfoTAhLJz.json b/src/packs/domains/domainCard_Sigil_of_Retribution_RiuN0lMlfoTAhLJz.json index cd3e81b3..edb6588b 100644 --- a/src/packs/domains/domainCard_Sigil_of_Retribution_RiuN0lMlfoTAhLJz.json +++ b/src/packs/domains/domainCard_Sigil_of_Retribution_RiuN0lMlfoTAhLJz.json @@ -44,6 +44,11 @@ "img": "icons/magic/symbols/triangle-glow-purple.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -51,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784517, - "modifiedTime": 1754232249140, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429062367, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "RiuN0lMlfoTAhLJz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Signature_Move_LWRkhNY968Cu2Zl5.json b/src/packs/domains/domainCard_Signature_Move_LWRkhNY968Cu2Zl5.json index 29ab1f5c..b429259a 100644 --- a/src/packs/domains/domainCard_Signature_Move_LWRkhNY968Cu2Zl5.json +++ b/src/packs/domains/domainCard_Signature_Move_LWRkhNY968Cu2Zl5.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 5, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784518, - "modifiedTime": 1754252482524, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428307837, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "LWRkhNY968Cu2Zl5", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json b/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json index 939fff19..1b707341 100644 --- a/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json +++ b/src/packs/domains/domainCard_Smite_U1uWJE94HZVudujz.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -40,13 +39,18 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Charge Smite", "img": "icons/skills/melee/sword-winged-holy-orange.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784519, - "modifiedTime": 1754498725946, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756038851464, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "U1uWJE94HZVudujz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Soothing_Speech_QED2PDYePOSTbLtC.json b/src/packs/domains/domainCard_Soothing_Speech_QED2PDYePOSTbLtC.json index 73bef395..f7520c6c 100644 --- a/src/packs/domains/domainCard_Soothing_Speech_QED2PDYePOSTbLtC.json +++ b/src/packs/domains/domainCard_Soothing_Speech_QED2PDYePOSTbLtC.json @@ -144,6 +144,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -151,12 +156,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784519, - "modifiedTime": 1754341467905, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429180273, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "QED2PDYePOSTbLtC", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json b/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json index a5ba7cae..94720b86 100644 --- a/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json +++ b/src/packs/domains/domainCard_Specter_of_the_Dark_iQhgqmLwhcSTYnvr.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -38,13 +37,18 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Become Spectral", "img": "icons/magic/unholy/silhouette-light-fire-blue.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784520, - "modifiedTime": 1754331335651, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756038467712, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "iQhgqmLwhcSTYnvr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json b/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json index 651fe897..64382b12 100644 --- a/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json +++ b/src/packs/domains/domainCard_Spellcharge_ewhIzXQ2h9fS9I8c.json @@ -25,11 +25,12 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "ewhIzXQ2h9fS9I8c", + "key": "resource", + "itemId": "ewhIzXQ2h9fS9I8c", "value": 1, - "keyIsID": true, - "step": null + "scalable": true, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -46,6 +47,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -53,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784521, - "modifiedTime": 1754331207737, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575684, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "ewhIzXQ2h9fS9I8c", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Splendor_Touched_JT5dM3gVL6chDBYU.json b/src/packs/domains/domainCard_Splendor_Touched_JT5dM3gVL6chDBYU.json index 0772f92b..03d39a92 100644 --- a/src/packs/domains/domainCard_Splendor_Touched_JT5dM3gVL6chDBYU.json +++ b/src/packs/domains/domainCard_Splendor_Touched_JT5dM3gVL6chDBYU.json @@ -8,19 +8,24 @@ "domain": "splendor", "recallCost": 2, "level": 7, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784522, - "modifiedTime": 1754268980895, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429762596, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JT5dM3gVL6chDBYU", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json b/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json index ed3d5f4c..24a0433f 100644 --- a/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json +++ b/src/packs/domains/domainCard_Splintering_Strike_TYKfM3H9vBXyWiH4.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -66,6 +65,11 @@ "img": "icons/skills/melee/strike-sword-steel-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -73,12 +77,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784522, - "modifiedTime": 1754501075258, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428367184, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "TYKfM3H9vBXyWiH4", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json b/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json index a19143c9..bb2d4eaa 100644 --- a/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json +++ b/src/packs/domains/domainCard_Stealth_Expertise_NIUhmuQGwbb3UClZ.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -40,6 +39,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -47,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784523, - "modifiedTime": 1754330848539, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429340856, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "NIUhmuQGwbb3UClZ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json b/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json index ae4ab09d..697f29cd 100644 --- a/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json +++ b/src/packs/domains/domainCard_Strategic_Approach_5b1awkgTmMp3FVrm.json @@ -27,10 +27,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "5b1awkgTmMp3FVrm", + "key": "resource", + "itemId": "5b1awkgTmMp3FVrm", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -50,6 +50,11 @@ "img": "icons/skills/targeting/crosshair-arrowhead-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" } }, "flags": {}, @@ -57,12 +62,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784523, - "modifiedTime": 1754501630846, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756325575271, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "5b1awkgTmMp3FVrm", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json b/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json index b601a08d..df23f8c0 100644 --- a/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json +++ b/src/packs/domains/domainCard_Stunning_Sunlight_lRHo6ZkK1zybeEoG.json @@ -23,8 +23,7 @@ "scalable": true, "key": "hope", "value": 1, - "step": null, - "keyIsID": false + "step": null } ], "uses": { @@ -152,6 +151,11 @@ "img": "icons/magic/light/beam-strike-village-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" } }, "flags": {}, @@ -159,12 +163,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784524, - "modifiedTime": 1754269929319, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429776475, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "lRHo6ZkK1zybeEoG", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json b/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json index 04c3c64c..7e0dcf37 100644 --- a/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json +++ b/src/packs/domains/domainCard_Support_Tank_stId5syX7YpP2JGz.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], @@ -40,6 +39,11 @@ "img": "icons/magic/holy/barrier-shield-winged-blue.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -47,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784525, - "modifiedTime": 1754241759840, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429875110, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "stId5syX7YpP2JGz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Swift_Step_H6TqCJBaa1eWEQ1z.json b/src/packs/domains/domainCard_Swift_Step_H6TqCJBaa1eWEQ1z.json index 0dc8c2c9..cc2a4a10 100644 --- a/src/packs/domains/domainCard_Swift_Step_H6TqCJBaa1eWEQ1z.json +++ b/src/packs/domains/domainCard_Swift_Step_H6TqCJBaa1eWEQ1z.json @@ -146,6 +146,11 @@ "img": "icons/magic/life/cross-beam-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -153,12 +158,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784526, - "modifiedTime": 1754252518993, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428380396, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "H6TqCJBaa1eWEQ1z", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Tactician_WChWEH36lUpXAC0K.json b/src/packs/domains/domainCard_Tactician_WChWEH36lUpXAC0K.json index bcd56d25..eb3546f1 100644 --- a/src/packs/domains/domainCard_Tactician_WChWEH36lUpXAC0K.json +++ b/src/packs/domains/domainCard_Tactician_WChWEH36lUpXAC0K.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 3, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784526, - "modifiedTime": 1754249669078, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428277274, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "WChWEH36lUpXAC0K", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Telekinesis_FgzBppvLjXr0UbUI.json b/src/packs/domains/domainCard_Telekinesis_FgzBppvLjXr0UbUI.json index 22a7d347..cffac839 100644 --- a/src/packs/domains/domainCard_Telekinesis_FgzBppvLjXr0UbUI.json +++ b/src/packs/domains/domainCard_Telekinesis_FgzBppvLjXr0UbUI.json @@ -131,6 +131,11 @@ "img": "icons/magic/control/energy-stream-link-spiral-blue.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 120, + "artist": "" } }, "flags": {}, @@ -138,12 +143,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784527, - "modifiedTime": 1754253886885, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755428003177, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "FgzBppvLjXr0UbUI", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Teleport_HnPwVrWblYa9hwSt.json b/src/packs/domains/domainCard_Teleport_HnPwVrWblYa9hwSt.json index e1569b1a..9e4e39ec 100644 --- a/src/packs/domains/domainCard_Teleport_HnPwVrWblYa9hwSt.json +++ b/src/packs/domains/domainCard_Teleport_HnPwVrWblYa9hwSt.json @@ -56,6 +56,11 @@ "img": "icons/magic/movement/pinwheel-turning-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 125, + "artist": "" } }, "flags": {}, @@ -63,12 +68,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784528, - "modifiedTime": 1754231629691, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429045982, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HnPwVrWblYa9hwSt", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Tell_No_Lies_HTv9QEPS466WsstP.json b/src/packs/domains/domainCard_Tell_No_Lies_HTv9QEPS466WsstP.json index f25819c7..b1fef374 100644 --- a/src/packs/domains/domainCard_Tell_No_Lies_HTv9QEPS466WsstP.json +++ b/src/packs/domains/domainCard_Tell_No_Lies_HTv9QEPS466WsstP.json @@ -82,6 +82,11 @@ "img": "icons/magic/control/voodoo-doll-pain-damage-red.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -89,12 +94,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784529, - "modifiedTime": 1754341185897, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429155562, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HTv9QEPS466WsstP", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Tempest_X7YaZgFieBlqaPdZ.json b/src/packs/domains/domainCard_Tempest_X7YaZgFieBlqaPdZ.json index 71d1dc6a..69161e38 100644 --- a/src/packs/domains/domainCard_Tempest_X7YaZgFieBlqaPdZ.json +++ b/src/packs/domains/domainCard_Tempest_X7YaZgFieBlqaPdZ.json @@ -244,6 +244,11 @@ "img": "icons/magic/air/air-wave-gust-smoke-yellow.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" } }, "flags": {}, @@ -251,12 +256,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784530, - "modifiedTime": 1754340540933, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429646639, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "X7YaZgFieBlqaPdZ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json b/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json index 6aca1471..eba9736d 100644 --- a/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json +++ b/src/packs/domains/domainCard_Thorn_Skin_oUipGK84E2KjoKqh.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -33,12 +32,12 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Spend Hope", "img": "icons/magic/nature/thorns-hand-glow-green.webp", - "range": "" + "range": "self" }, "IVAyyVf8gqFWB7bP": { "type": "effect", @@ -49,11 +48,12 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "oUipGK84E2KjoKqh", + "key": "resource", + "itemId": "oUipGK84E2KjoKqh", "value": 1, + "scalable": true, "step": 1, - "keyIsID": true + "consumeOnSuccess": false } ], "uses": { @@ -78,6 +78,11 @@ "max": "@cast", "icon": "", "dieFaces": "d6" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -85,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784531, - "modifiedTime": 1754338832102, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575772, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "oUipGK84E2KjoKqh", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json b/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json index 3717b810..9dbbd376 100644 --- a/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json +++ b/src/packs/domains/domainCard_Thought_Delver_B4choj481tqajWb9.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -91,6 +90,11 @@ "img": "icons/magic/control/fear-fright-shadow-monster-purple.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -98,12 +102,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784532, - "modifiedTime": 1754341613759, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429199741, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "B4choj481tqajWb9", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Through_Your_Eyes_7b0mzV5QMPjVPT4o.json b/src/packs/domains/domainCard_Through_Your_Eyes_7b0mzV5QMPjVPT4o.json index 4c3d2611..03c43739 100644 --- a/src/packs/domains/domainCard_Through_Your_Eyes_7b0mzV5QMPjVPT4o.json +++ b/src/packs/domains/domainCard_Through_Your_Eyes_7b0mzV5QMPjVPT4o.json @@ -37,6 +37,11 @@ "img": "icons/magic/perception/eye-slit-pink.webp", "range": "veryFar" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -44,12 +49,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784533, - "modifiedTime": 1754341493606, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429187901, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "7b0mzV5QMPjVPT4o", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json b/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json index 124144a8..3b5a5f97 100644 --- a/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json +++ b/src/packs/domains/domainCard_Towering_Stalk_n0P3VS1WfxvmXbB6.json @@ -19,18 +19,20 @@ "actionType": "action", "cost": [ { - "scalable": false, "key": "stress", + "itemId": null, "value": 1, - "keyIsID": false, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false }, { - "scalable": false, - "key": "n0P3VS1WfxvmXbB6", + "key": "resource", + "itemId": "n0P3VS1WfxvmXbB6", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -110,7 +112,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -130,19 +131,24 @@ "range": "" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784534, - "modifiedTime": 1754499113867, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756325575741, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "n0P3VS1WfxvmXbB6", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json b/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json index 10ef5d47..ecee943e 100644 --- a/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json +++ b/src/packs/domains/domainCard_Transcendent_Union_kVkoCLBXLAIifqpz.json @@ -22,7 +22,6 @@ "scalable": false, "key": "hope", "value": 5, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -47,6 +46,11 @@ "img": "icons/magic/light/explosion-beam-impact-silhouette.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784534, - "modifiedTime": 1754240901607, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429121503, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "kVkoCLBXLAIifqpz", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Troublemaker_JrdZedm1BFKeV7Yb.json b/src/packs/domains/domainCard_Troublemaker_JrdZedm1BFKeV7Yb.json index 5bcd3482..9d8e3db8 100644 --- a/src/packs/domains/domainCard_Troublemaker_JrdZedm1BFKeV7Yb.json +++ b/src/packs/domains/domainCard_Troublemaker_JrdZedm1BFKeV7Yb.json @@ -83,6 +83,11 @@ "img": "icons/magic/control/fear-fright-monster-purple-blue.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 126, + "artist": "" } }, "flags": {}, @@ -90,12 +95,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784535, - "modifiedTime": 1754341260325, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429160838, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "JrdZedm1BFKeV7Yb", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json b/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json index c4c06be8..0f64514f 100644 --- a/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json +++ b/src/packs/domains/domainCard_Twilight_Toll_SDjjV61TC1NceV1m.json @@ -26,11 +26,12 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "SDjjV61TC1NceV1m", + "key": "resource", + "itemId": "SDjjV61TC1NceV1m", "value": 1, + "scalable": true, "step": 1, - "keyIsID": true + "consumeOnSuccess": false } ], "uses": { @@ -76,6 +77,11 @@ "img": "icons/commodities/gems/gem-faceted-diamond-blue.webp", "range": "far" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -83,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784535, - "modifiedTime": 1754331253303, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575478, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "SDjjV61TC1NceV1m", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Unbreakable_CUIQmrPjf9VCHmwJ.json b/src/packs/domains/domainCard_Unbreakable_CUIQmrPjf9VCHmwJ.json index 3d06e736..d79fa2a7 100644 --- a/src/packs/domains/domainCard_Unbreakable_CUIQmrPjf9VCHmwJ.json +++ b/src/packs/domains/domainCard_Unbreakable_CUIQmrPjf9VCHmwJ.json @@ -56,6 +56,11 @@ "img": "icons/magic/life/heart-cross-strong-flame-purple-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" } }, "flags": {}, @@ -63,12 +68,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784536, - "modifiedTime": 1754242513278, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429961365, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "CUIQmrPjf9VCHmwJ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json b/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json index a90187c0..687a4312 100644 --- a/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json +++ b/src/packs/domains/domainCard_Uncanny_Disguise_TV56wSysbU5xAlOa.json @@ -28,7 +28,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [ @@ -39,7 +39,7 @@ ], "name": "Don Facade", "img": "icons/magic/control/debuff-energy-hold-pink.webp", - "range": "" + "range": "self" }, "OoNND7VcWoBQdtFK": { "type": "effect", @@ -50,11 +50,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "TV56wSysbU5xAlOa", + "key": "resource", + "itemId": "TV56wSysbU5xAlOa", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -77,6 +78,11 @@ "value": 0, "max": "@cast", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -84,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784537, - "modifiedTime": 1754330615594, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575516, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "TV56wSysbU5xAlOa", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json b/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json index 17f934d6..066501dc 100644 --- a/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json +++ b/src/packs/domains/domainCard_Unleash_Chaos_o62i0QdbUDIiAhSq.json @@ -27,11 +27,11 @@ "actionType": "action", "cost": [ { - "scalable": true, - "key": "o62i0QdbUDIiAhSq", + "key": "resource", + "itemId": "o62i0QdbUDIiAhSq", "value": 1, + "scalable": true, "step": 1, - "keyIsID": true, "consumeOnSuccess": false } ], @@ -113,7 +113,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -126,13 +125,18 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Replenish Tokens", "img": "icons/commodities/gems/gem-faceted-diamond-blue.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -140,12 +144,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753922784537, - "modifiedTime": 1754501257508, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756325575757, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_id": "o62i0QdbUDIiAhSq", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Untouchable_9QElncQUDSakuSdR.json b/src/packs/domains/domainCard_Untouchable_9QElncQUDSakuSdR.json index 89b4cbee..548f9eee 100644 --- a/src/packs/domains/domainCard_Untouchable_9QElncQUDSakuSdR.json +++ b/src/packs/domains/domainCard_Untouchable_9QElncQUDSakuSdR.json @@ -8,19 +8,24 @@ "domain": "bone", "recallCost": 1, "level": 1, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 122, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784538, - "modifiedTime": 1754249654207, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428252550, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9QElncQUDSakuSdR", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Unyielding_Armor_s3zRsOMeUkuDwgd8.json b/src/packs/domains/domainCard_Unyielding_Armor_s3zRsOMeUkuDwgd8.json index a5b3ed83..2c991d8d 100644 --- a/src/packs/domains/domainCard_Unyielding_Armor_s3zRsOMeUkuDwgd8.json +++ b/src/packs/domains/domainCard_Unyielding_Armor_s3zRsOMeUkuDwgd8.json @@ -8,19 +8,24 @@ "domain": "valor", "recallCost": 1, "level": 10, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 135, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784538, - "modifiedTime": 1754242525301, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429967098, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "s3zRsOMeUkuDwgd8", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Valor_Touched_k1AtYd3lSchIymBr.json b/src/packs/domains/domainCard_Valor_Touched_k1AtYd3lSchIymBr.json index ec66bbd6..8ff2e41a 100644 --- a/src/packs/domains/domainCard_Valor_Touched_k1AtYd3lSchIymBr.json +++ b/src/packs/domains/domainCard_Valor_Touched_k1AtYd3lSchIymBr.json @@ -77,6 +77,11 @@ "img": "icons/equipment/chest/breastplate-collared-steel-grey.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 134, + "artist": "" } }, "flags": {}, @@ -84,12 +89,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784539, - "modifiedTime": 1754242143242, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429918794, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "k1AtYd3lSchIymBr", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json b/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json index 1d9e2108..660e3c7a 100644 --- a/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json +++ b/src/packs/domains/domainCard_Vanishing_Dodge_GBMIElIpk4cvk1Bd.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -38,13 +37,18 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Vanish", "img": "icons/magic/perception/shadow-stealth-eyes-purple.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 129, + "artist": "" } }, "flags": {}, @@ -52,12 +56,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784539, - "modifiedTime": 1754331169719, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756038425727, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "GBMIElIpk4cvk1Bd", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json b/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json index 917c2e93..ad78023c 100644 --- a/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json +++ b/src/packs/domains/domainCard_Veil_of_Night_gV4L5ZZmfPrEbIDh.json @@ -28,7 +28,7 @@ "includeBase": false }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [ @@ -59,8 +59,13 @@ }, "name": "Cast", "img": "icons/magic/unholy/barrier-shield-glowing-pink.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 128, + "artist": "" } }, "flags": {}, @@ -68,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753922784541, - "modifiedTime": 1754173368653, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756038378309, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_id": "gV4L5ZZmfPrEbIDh", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json b/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json index c8134c0c..21f92663 100644 --- a/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json +++ b/src/packs/domains/domainCard_Versatile_Fighter_wQ53ImDswEHv5SGQ.json @@ -22,7 +22,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,6 +41,11 @@ "img": "icons/magic/control/silhouette-aura-energy.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784541, - "modifiedTime": 1754304293769, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428120598, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "wQ53ImDswEHv5SGQ", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json b/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json index cedcec36..c78bebca 100644 --- a/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json +++ b/src/packs/domains/domainCard_Vicious_Entangle_qvpvTnkAoRn9vYO4.json @@ -97,7 +97,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -123,6 +122,11 @@ "img": "icons/commodities/gems/gem-faceted-octagon-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 130, + "artist": "" } }, "flags": {}, @@ -130,12 +134,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784541, - "modifiedTime": 1754338467256, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429474482, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "qvpvTnkAoRn9vYO4", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Vitality_sWUlSPOJEaXyQLCj.json b/src/packs/domains/domainCard_Vitality_sWUlSPOJEaXyQLCj.json index 3e41ae1a..bd413bda 100644 --- a/src/packs/domains/domainCard_Vitality_sWUlSPOJEaXyQLCj.json +++ b/src/packs/domains/domainCard_Vitality_sWUlSPOJEaXyQLCj.json @@ -46,6 +46,11 @@ "img": "systems/daggerheart/assets/icons/domains/domain-card/blade.png", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -53,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784542, - "modifiedTime": 1754304501280, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428142811, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "sWUlSPOJEaXyQLCj", "sort": 3400000, @@ -80,7 +85,7 @@ }, "changes": [ { - "key": "system.resources.hitPoints", + "key": "system.resources.hitPoints.max", "mode": 2, "value": "1", "priority": null @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754245866724, - "modifiedTime": 1754246004543, - "lastModifiedBy": "l5jB3XmcVXOTQpRZ" + "modifiedTime": 1761502808129, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!sWUlSPOJEaXyQLCj.1jtgIyFvDpTb0asZ" }, @@ -131,7 +136,7 @@ }, "changes": [ { - "key": "system.resources.stress", + "key": "system.resources.stress.max", "mode": 2, "value": "1", "priority": null @@ -156,12 +161,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754245912530, - "modifiedTime": 1754245972468, - "lastModifiedBy": "l5jB3XmcVXOTQpRZ" + "modifiedTime": 1761502816888, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!sWUlSPOJEaXyQLCj.vj9rm1tLqqsSFOXF" }, diff --git a/src/packs/domains/domainCard_Voice_of_Reason_t3RRGH6mMYYJJCcF.json b/src/packs/domains/domainCard_Voice_of_Reason_t3RRGH6mMYYJJCcF.json index 481caddf..dd661b1e 100644 --- a/src/packs/domains/domainCard_Voice_of_Reason_t3RRGH6mMYYJJCcF.json +++ b/src/packs/domains/domainCard_Voice_of_Reason_t3RRGH6mMYYJJCcF.json @@ -8,19 +8,24 @@ "domain": "splendor", "recallCost": 1, "level": 3, - "type": "ability" + "type": "ability", + "attribution": { + "source": "Daggerheart SRD", + "page": 132, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784542, - "modifiedTime": 1754268954870, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429699193, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "t3RRGH6mMYYJJCcF", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json b/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json index e4c48b0e..f57206be 100644 --- a/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json +++ b/src/packs/domains/domainCard_Wall_Walk_1ROT08E1UVBwHLAS.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -47,6 +46,11 @@ "img": "icons/creatures/invertebrates/spider-pink-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 119, + "artist": "" } }, "flags": {}, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784543, - "modifiedTime": 1754253399849, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755427927041, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1ROT08E1UVBwHLAS", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json b/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json index a6013aa6..14dc5fc9 100644 --- a/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json +++ b/src/packs/domains/domainCard_Whirlwind_anO0arioUy7I5zBg.json @@ -19,7 +19,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -42,6 +41,11 @@ "img": "icons/magic/control/buff-flight-wings-runes-purple-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 121, + "artist": "" } }, "flags": {}, @@ -49,12 +53,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784545, - "modifiedTime": 1754304354572, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428093764, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "anO0arioUy7I5zBg", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json b/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json index 69bc5bc8..cfe14983 100644 --- a/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json +++ b/src/packs/domains/domainCard_Wild_Fortress_9dFvcM1i3bxG3BSA.json @@ -23,7 +23,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], @@ -71,6 +70,11 @@ "value": 0, "max": "3", "icon": "" + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -78,12 +82,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784546, - "modifiedTime": 1754339127606, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429562599, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9dFvcM1i3bxG3BSA", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json b/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json index 269139cf..11fcf48e 100644 --- a/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json +++ b/src/packs/domains/domainCard_Wild_Surge_DjnKlZQYaWdQGKcK.json @@ -28,7 +28,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -46,6 +45,11 @@ "img": "icons/magic/control/debuff-energy-hold-levitate-green.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 131, + "artist": "" } }, "flags": {}, @@ -53,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784547, - "modifiedTime": 1754499199811, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429591650, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "DjnKlZQYaWdQGKcK", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Words_of_Discord_ZjAdi1FSNCDDHI3X.json b/src/packs/domains/domainCard_Words_of_Discord_ZjAdi1FSNCDDHI3X.json index b1e6aaa2..86f046c2 100644 --- a/src/packs/domains/domainCard_Words_of_Discord_ZjAdi1FSNCDDHI3X.json +++ b/src/packs/domains/domainCard_Words_of_Discord_ZjAdi1FSNCDDHI3X.json @@ -87,6 +87,11 @@ "img": "icons/skills/melee/strike-axe-energy-pink.webp", "range": "melee" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 127, + "artist": "" } }, "flags": {}, @@ -94,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784548, - "modifiedTime": 1754341685992, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755429205496, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ZjAdi1FSNCDDHI3X", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Wrangle_9DwSxHoUwl8Kxj3n.json b/src/packs/domains/domainCard_Wrangle_9DwSxHoUwl8Kxj3n.json index 76b17134..30e8cb4e 100644 --- a/src/packs/domains/domainCard_Wrangle_9DwSxHoUwl8Kxj3n.json +++ b/src/packs/domains/domainCard_Wrangle_9DwSxHoUwl8Kxj3n.json @@ -57,6 +57,11 @@ "img": "icons/skills/melee/sword-engraved-glow-purple.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 123, + "artist": "" } }, "flags": {}, @@ -64,12 +69,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784549, - "modifiedTime": 1754252503293, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755428352791, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "9DwSxHoUwl8Kxj3n", "sort": 3400000, diff --git a/src/packs/domains/domainCard_Zone_of_Protection_lOZaRb4fCVgQsWB5.json b/src/packs/domains/domainCard_Zone_of_Protection_lOZaRb4fCVgQsWB5.json index c712284d..3e5b643c 100644 --- a/src/packs/domains/domainCard_Zone_of_Protection_lOZaRb4fCVgQsWB5.json +++ b/src/packs/domains/domainCard_Zone_of_Protection_lOZaRb4fCVgQsWB5.json @@ -58,19 +58,24 @@ "range": "far" } }, - "resource": null + "resource": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 133, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784549, - "modifiedTime": 1754498786877, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755429748542, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "lOZaRb4fCVgQsWB5", "sort": 3400000, diff --git a/src/packs/domains/folders_Splendor_TL1TutmbeCVJ06nR.json b/src/packs/domains/folders_Splendor_TL1TutmbeCVJ06nR.json index c0870ecf..87cc7469 100644 --- a/src/packs/domains/folders_Splendor_TL1TutmbeCVJ06nR.json +++ b/src/packs/domains/folders_Splendor_TL1TutmbeCVJ06nR.json @@ -6,18 +6,18 @@ "sorting": "m", "_id": "TL1TutmbeCVJ06nR", "description": "", - "sort": 800000, + "sort": 900000, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1748717133557, - "modifiedTime": 1752681441081, - "lastModifiedBy": "YNJ4HgHtFrTI89mx" + "modifiedTime": 1756038952388, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!folders!TL1TutmbeCVJ06nR" } diff --git a/src/packs/domains/folders_Valor_yPVeShe47ETIqs9q.json b/src/packs/domains/folders_Valor_yPVeShe47ETIqs9q.json index 0a65d51f..f6361e50 100644 --- a/src/packs/domains/folders_Valor_yPVeShe47ETIqs9q.json +++ b/src/packs/domains/folders_Valor_yPVeShe47ETIqs9q.json @@ -6,18 +6,18 @@ "sorting": "m", "_id": "yPVeShe47ETIqs9q", "description": "", - "sort": 900000, + "sort": 800000, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1748717138700, - "modifiedTime": 1752681443619, - "lastModifiedBy": "YNJ4HgHtFrTI89mx" + "modifiedTime": 1756038952388, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!folders!yPVeShe47ETIqs9q" } diff --git a/src/packs/environments/environment_Abandoned_Grove_pGEdzdLkqYtBhxnG.json b/src/packs/environments/environment_Abandoned_Grove_pGEdzdLkqYtBhxnG.json index 1f1d5722..9e855978 100644 --- a/src/packs/environments/environment_Abandoned_Grove_pGEdzdLkqYtBhxnG.json +++ b/src/packs/environments/environment_Abandoned_Grove_pGEdzdLkqYtBhxnG.json @@ -1,6 +1,6 @@ { "name": "Abandoned Grove", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -27,19 +27,24 @@ "tier": 1, "description": "

A former druidic grove lying fallow and fully reclaimed by nature.

", "type": "exploration", - "impulses": "Draw in the curious, echo the past" + "impulses": "Draw in the curious, echo the past", + "attribution": { + "source": "Daggerheart SRD", + "page": 103, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784553, - "modifiedTime": 1754208922163, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890228, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "pGEdzdLkqYtBhxnG", "sort": 3400000, @@ -55,7 +60,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "AbominationVaults.webp", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Ambushed_uGEdNYERCTJBEjc5.json b/src/packs/environments/environment_Ambushed_uGEdNYERCTJBEjc5.json index a705fa2d..7135bd42 100644 --- a/src/packs/environments/environment_Ambushed_uGEdNYERCTJBEjc5.json +++ b/src/packs/environments/environment_Ambushed_uGEdNYERCTJBEjc5.json @@ -1,6 +1,6 @@ { "name": "Ambushed", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -10,19 +10,24 @@ "tier": 1, "description": "

An ambush is set to catch an unsuspecting party off-guard.

", "type": "event", - "impulses": "Overwhelm, scatter, surround" + "impulses": "Overwhelm, scatter, surround", + "attribution": { + "source": "Daggerheart SRD", + "page": 103, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784553, - "modifiedTime": 1754211171895, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890231, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uGEdNYERCTJBEjc5", "sort": 3400000, @@ -38,7 +43,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json b/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json index 3a8e3092..4efb6b52 100644 --- a/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json +++ b/src/packs/environments/environment_Ambushers_uXZpebPR77YQ1oXI.json @@ -1,6 +1,6 @@ { "name": "Ambushers", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -10,19 +10,24 @@ "tier": 1, "description": "

An ambush is set by the PCs to catch unsuspecting adversaries off-guard.

", "type": "event", - "impulses": "Escape, group up, protect the most vulnerable" + "impulses": "Escape, group up, protect the most vulnerable", + "attribution": { + "source": "Daggerheart SRD", + "page": 103, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784554, - "modifiedTime": 1754211550898, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890234, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "uXZpebPR77YQ1oXI", "sort": 3400000, @@ -38,7 +43,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -178,7 +183,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Burning_Heart_of_the_Woods_oY69NN4rYxoRE4hl.json b/src/packs/environments/environment_Burning_Heart_of_the_Woods_oY69NN4rYxoRE4hl.json index a1949373..5683f6f5 100644 --- a/src/packs/environments/environment_Burning_Heart_of_the_Woods_oY69NN4rYxoRE4hl.json +++ b/src/packs/environments/environment_Burning_Heart_of_the_Woods_oY69NN4rYxoRE4hl.json @@ -1,6 +1,6 @@ { "name": "Burning Heart of the Woods", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "MfrIkJK12PAEfbPL", "system": { @@ -32,19 +32,24 @@ "tier": 3, "description": "

Thick indigo ash fills the air around a towering moss-covered tree that burns eternally with flames a sickly shade of blue.

", "type": "exploration", - "impulses": "Beat out an uncanny rhythm for all to follow, corrupt the woods" + "impulses": "Beat out an uncanny rhythm for all to follow, corrupt the woods", + "attribution": { + "source": "Daggerheart SRD", + "page": 108, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784554, - "modifiedTime": 1754218065764, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890258, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "oY69NN4rYxoRE4hl", "sort": 3400000, @@ -60,7 +65,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Bustling_Marketplace_HZKA7hkej7JJY503.json b/src/packs/environments/environment_Bustling_Marketplace_HZKA7hkej7JJY503.json index f68ad8fd..11b458c1 100644 --- a/src/packs/environments/environment_Bustling_Marketplace_HZKA7hkej7JJY503.json +++ b/src/packs/environments/environment_Bustling_Marketplace_HZKA7hkej7JJY503.json @@ -1,6 +1,6 @@ { "name": "Bustling Marketplace", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -25,19 +25,24 @@ "tier": 1, "description": "

The economic heart of the settlement, with local artisans, traveling merchants, and patrons across social classes.

", "type": "social", - "impulses": "Buy low, and sell high, tempt and tantalize with wares from near and far" + "impulses": "Buy low, and sell high, tempt and tantalize with wares from near and far", + "attribution": { + "source": "Daggerheart SRD", + "page": 104, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784554, - "modifiedTime": 1754212085334, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890236, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "HZKA7hkej7JJY503", "sort": 3400000, @@ -53,7 +58,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Castle_Siege_1eZ32Esq7rfZOjlu.json b/src/packs/environments/environment_Castle_Siege_1eZ32Esq7rfZOjlu.json index 1739e6bd..88d9096e 100644 --- a/src/packs/environments/environment_Castle_Siege_1eZ32Esq7rfZOjlu.json +++ b/src/packs/environments/environment_Castle_Siege_1eZ32Esq7rfZOjlu.json @@ -1,6 +1,6 @@ { "name": "Castle Siege", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "MfrIkJK12PAEfbPL", "system": { @@ -29,19 +29,24 @@ "tier": 3, "description": "

An active siege with an attacking force fighting to gain entry to a fortified castle.

", "type": "event", - "impulses": "Bleed out the will to fi ght, breach the walls, build tension" + "impulses": "Bleed out the will to fi ght, breach the walls, build tension", + "attribution": { + "source": "Daggerheart SRD", + "page": 109, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784555, - "modifiedTime": 1754218654354, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890261, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "1eZ32Esq7rfZOjlu", "sort": 3400000, @@ -57,7 +62,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json b/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json index fe3f3349..0c566991 100644 --- a/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json +++ b/src/packs/environments/environment_Chaos_Realm_2Z1mKc65LxNk2PqR.json @@ -1,6 +1,6 @@ { "name": "Chaos Realm", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "IKumu5HTLqONLYqb", "system": { @@ -19,19 +19,24 @@ "tier": 4, "description": "

An otherworldly space where the laws of reality are unstable and dangerous.

", "type": "traversal", - "impulses": "Annihilate certainty, consume power, defy logic" + "impulses": "Annihilate certainty, consume power, defy logic", + "attribution": { + "source": "Daggerheart SRD", + "page": 110, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784556, - "modifiedTime": 1754219630584, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890266, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "2Z1mKc65LxNk2PqR", "sort": 3400000, @@ -47,7 +52,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -366,7 +371,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -481,7 +485,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json b/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json index 67a6e7ea..ab8daf7d 100644 --- a/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json +++ b/src/packs/environments/environment_Cliffside_Ascent_LPpfdlNKqiZIl04w.json @@ -1,6 +1,6 @@ { "name": "Cliffside Ascent", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -20,19 +20,24 @@ "tier": 1, "description": "

A steep, rocky cliffside tall enough to make traversal dangerous.

", "type": "traversal", - "impulses": "Cast the unready down to a rocky doom, draw people in with promise of what lies at the top" + "impulses": "Cast the unready down to a rocky doom, draw people in with promise of what lies at the top", + "attribution": { + "source": "Daggerheart SRD", + "page": 104, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784557, - "modifiedTime": 1754212638870, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890238, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "LPpfdlNKqiZIl04w", "sort": 3400000, @@ -48,7 +53,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -450,7 +455,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Cult_Ritual_QAXXiOKBDmCTauHD.json b/src/packs/environments/environment_Cult_Ritual_QAXXiOKBDmCTauHD.json index a1d1ed38..ded1d14f 100644 --- a/src/packs/environments/environment_Cult_Ritual_QAXXiOKBDmCTauHD.json +++ b/src/packs/environments/environment_Cult_Ritual_QAXXiOKBDmCTauHD.json @@ -1,6 +1,6 @@ { "name": "Cult Ritual", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "XMeecO3IRvu5ck6F", "system": { @@ -20,19 +20,24 @@ "tier": 2, "description": "

A Fallen cult assembles around a sigil of the defeated gods and a bonfire that burns a sickly shade of green.

", "type": "event", - "impulses": "Profane the land, unite the Mortal Realm with the Circles Below" + "impulses": "Profane the land, unite the Mortal Realm with the Circles Below", + "attribution": { + "source": "Daggerheart SRD", + "page": 106, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784557, - "modifiedTime": 1754215595854, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890248, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "QAXXiOKBDmCTauHD", "sort": 3400000, @@ -48,7 +53,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json b/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json index c0b9e8e8..38821a59 100644 --- a/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json +++ b/src/packs/environments/environment_Divine_Usurpation_4DLYez7VbMCFDAuZ.json @@ -1,6 +1,6 @@ { "name": "Divine Usurpation", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "IKumu5HTLqONLYqb", "system": { @@ -21,19 +21,24 @@ "tier": 4, "description": "

A massive ritual designed to breach the gates of the Hallows Above and unseat the New Gods themselves.

", "type": "event", - "impulses": "Collect power, overawe, silence dissent" + "impulses": "Collect power, overawe, silence dissent", + "attribution": { + "source": "Daggerheart SRD", + "page": 110, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784558, - "modifiedTime": 1754220432059, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890271, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "4DLYez7VbMCFDAuZ", "sort": 3400000, @@ -49,7 +54,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -267,7 +272,6 @@ "scalable": false, "key": "fear", "value": 2, - "keyIsID": false, "step": null } ], @@ -331,7 +335,6 @@ "scalable": false, "key": "fear", "value": 3, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json b/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json index 745414dc..8ae4134d 100644 --- a/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json +++ b/src/packs/environments/environment_Hallowed_Temple_dsA6j69AnaJhUyqH.json @@ -1,6 +1,6 @@ { "name": "Hallowed Temple", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "XMeecO3IRvu5ck6F", "system": { @@ -19,19 +19,24 @@ "tier": 2, "description": "

A bustling but well-kept temple that provides healing and hosts regular services, overseen by a priest or seraph.

", "type": "social", - "impulses": "Connect the Mortal Realm with the Hallows Above, display the power of the divine, provide aid and succor to the faithful" + "impulses": "Connect the Mortal Realm with the Hallows Above, display the power of the divine, provide aid and succor to the faithful", + "attribution": { + "source": "Daggerheart SRD", + "page": 107, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784558, - "modifiedTime": 1754216032747, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890251, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "dsA6j69AnaJhUyqH", "sort": 3400000, @@ -47,7 +52,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -374,7 +379,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Haunted_City_OzYbizKraK92FDiI.json b/src/packs/environments/environment_Haunted_City_OzYbizKraK92FDiI.json index 11c98e66..0653ae50 100644 --- a/src/packs/environments/environment_Haunted_City_OzYbizKraK92FDiI.json +++ b/src/packs/environments/environment_Haunted_City_OzYbizKraK92FDiI.json @@ -1,6 +1,6 @@ { "name": "Haunted City", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "XMeecO3IRvu5ck6F", "system": { @@ -19,19 +19,24 @@ "tier": 2, "description": "

An abandoned city populated by the restless spirits of eras past.

", "type": "exploration", - "impulses": "Misdirect and disorient, replay apocalypses both public and personal" + "impulses": "Misdirect and disorient, replay apocalypses both public and personal", + "attribution": { + "source": "Daggerheart SRD", + "page": 107, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784559, - "modifiedTime": 1754216926766, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890253, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "OzYbizKraK92FDiI", "sort": 3400000, @@ -47,7 +52,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json b/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json index ab2c1ef8..bbf23666 100644 --- a/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json +++ b/src/packs/environments/environment_Imperial_Court_jr1xAoXzVwVblzxI.json @@ -1,6 +1,6 @@ { "name": "Imperial Court", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "IKumu5HTLqONLYqb", "system": { @@ -21,19 +21,24 @@ "tier": 4, "description": "

The majestic domain of a powerful empire, lavishly appointed with stolen treasures.

", "type": "social", - "impulses": "Justify and perpetuate imperial rule, seduce rivals with promises of power and comfort" + "impulses": "Justify and perpetuate imperial rule, seduce rivals with promises of power and comfort", + "attribution": { + "source": "Daggerheart SRD", + "page": 111, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784559, - "modifiedTime": 1754220962410, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890268, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "jr1xAoXzVwVblzxI", "sort": 3400000, @@ -49,7 +54,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -222,7 +227,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -415,7 +419,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Local_Tavern_cM4X81DOyvxNIi52.json b/src/packs/environments/environment_Local_Tavern_cM4X81DOyvxNIi52.json index cb440aab..1bc1c17f 100644 --- a/src/packs/environments/environment_Local_Tavern_cM4X81DOyvxNIi52.json +++ b/src/packs/environments/environment_Local_Tavern_cM4X81DOyvxNIi52.json @@ -1,6 +1,6 @@ { "name": "Local Tavern", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -33,19 +33,24 @@ "tier": 1, "description": "

A lively tavern that serves as the social hub for its town.

", "type": "social", - "impulses": "Provide opportunities for adventurers, nurture community" + "impulses": "Provide opportunities for adventurers, nurture community", + "attribution": { + "source": "Daggerheart SRD", + "page": 105, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784561, - "modifiedTime": 1754213299544, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890240, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "cM4X81DOyvxNIi52", "sort": 3400000, @@ -61,7 +66,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, diff --git a/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json b/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json index 8b962e9f..bb538c95 100644 --- a/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json +++ b/src/packs/environments/environment_Mountain_Pass_acMu9wJrMZZzLSTJ.json @@ -1,6 +1,6 @@ { "name": "Mountain Pass", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "XMeecO3IRvu5ck6F", "system": { @@ -27,19 +27,24 @@ "tier": 2, "description": "

Stony peaks that pierce the clouds, with a twisting path winding its way up and over through many switchbacks.

", "type": "traversal", - "impulses": "Exact a chilling toll in supplies and stamina, reveal magical tampering, slow down travel" + "impulses": "Exact a chilling toll in supplies and stamina, reveal magical tampering, slow down travel", + "attribution": { + "source": "Daggerheart SRD", + "page": 108, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784562, - "modifiedTime": 1754217303533, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890256, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "acMu9wJrMZZzLSTJ", "sort": 3400000, @@ -55,7 +60,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -252,12 +257,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.347", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754217019442, - "modifiedTime": 1756256534443, - "lastModifiedBy": "CEZZA7TXd7uT8O2c" + "modifiedTime": 1761503937038, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!actors.items!acMu9wJrMZZzLSTJ.jkm03DXYYajsRk2j" }, diff --git a/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json b/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json index 5afc9db6..fc14d738 100644 --- a/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json +++ b/src/packs/environments/environment_Necromancer_s_Ossuary_h3KyRL7AshhLAmcH.json @@ -1,6 +1,6 @@ { "name": "Necromancer’s Ossuary", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "IKumu5HTLqONLYqb", "system": { @@ -18,19 +18,24 @@ "tier": 4, "description": "

A dusty crypt with a library, twisting corridors, and abundant sarcophagi, spattered with the blood of ill-fated invaders.

", "type": "exploration", - "impulses": "Confound intruders, delve into secrets best left buried, manifest unlife, unleash a tide of undead" + "impulses": "Confound intruders, delve into secrets best left buried, manifest unlife, unleash a tide of undead", + "attribution": { + "source": "Daggerheart SRD", + "page": 111, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784563, - "modifiedTime": 1754221404218, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890275, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "h3KyRL7AshhLAmcH", "sort": 3400000, @@ -46,7 +51,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -457,7 +462,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json b/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json index 8e58b6a8..82bf42e3 100644 --- a/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json +++ b/src/packs/environments/environment_Outpost_Town_YezryR32uo39xRxW.json @@ -1,6 +1,6 @@ { "name": "Outpost Town", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -29,19 +29,24 @@ "tier": 1, "description": "

A small town on the outskirts of a nation or region, close to a dungeon, tombs, or other adventuring destinations.

", "type": "social", - "impulses": "Drive the desperate to certain doom, profi t off of ragged hope" + "impulses": "Drive the desperate to certain doom, profi t off of ragged hope", + "attribution": { + "source": "Daggerheart SRD", + "page": 105, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784564, - "modifiedTime": 1754213845896, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890243, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "YezryR32uo39xRxW", "sort": 3400000, @@ -57,7 +62,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -296,7 +301,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json b/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json index 3db3d3b6..9c86d63d 100644 --- a/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json +++ b/src/packs/environments/environment_Pitched_Battle_EWD3ZsLoK6VMVOf7.json @@ -1,6 +1,6 @@ { "name": "Pitched Battle", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "MfrIkJK12PAEfbPL", "system": { @@ -29,19 +29,24 @@ "tier": 3, "description": "

A massive combat between two large groups of armed combatants.

", "type": "event", - "impulses": "Seize people, land, and wealth, spill blood for greed and glory" + "impulses": "Seize people, land, and wealth, spill blood for greed and glory", + "attribution": { + "source": "Daggerheart SRD", + "page": 109, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784565, - "modifiedTime": 1754219040722, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890264, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "EWD3ZsLoK6VMVOf7", "sort": 3400000, @@ -57,7 +62,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -230,7 +235,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json b/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json index 211c619a..79c89611 100644 --- a/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json +++ b/src/packs/environments/environment_Raging_River_t4cdqTfzcqP3H1vJ.json @@ -1,6 +1,6 @@ { "name": "Raging River", - "img": "icons/svg/mystery-man.svg", + "img": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "type": "environment", "folder": "GQ0VnOLrKBIHR6Us", "system": { @@ -29,19 +29,24 @@ "tier": 1, "description": "

A swift-moving river without a bridge crossing, deep enough to sweep away most people.

", "type": "traversal", - "impulses": "Bar crossing, carry away the unready, divide the land" + "impulses": "Bar crossing, carry away the unready, divide the land", + "attribution": { + "source": "Daggerheart SRD", + "page": 106, + "artist": "" + } }, "flags": {}, "_stats": { "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753922784565, - "modifiedTime": 1754214189395, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755389890245, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "t4cdqTfzcqP3H1vJ", "sort": 3400000, @@ -57,7 +62,7 @@ "width": 1, "height": 1, "texture": { - "src": "icons/svg/mystery-man.svg", + "src": "systems/daggerheart/assets/icons/documents/actors/forest.svg", "anchorX": 0.5, "anchorY": 0.5, "offsetX": 0, @@ -220,7 +225,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], @@ -387,7 +391,6 @@ "scalable": false, "key": "fear", "value": 1, - "keyIsID": false, "step": null } ], diff --git a/src/packs/items/armors/armor_Advanced_Chainmail_Armor_LzLOJ9EVaHWAjoq9.json b/src/packs/items/armors/armor_Advanced_Chainmail_Armor_LzLOJ9EVaHWAjoq9.json index 96a2edd7..c5155cb4 100644 --- a/src/packs/items/armors/armor_Advanced_Chainmail_Armor_LzLOJ9EVaHWAjoq9.json +++ b/src/packs/items/armors/armor_Advanced_Chainmail_Armor_LzLOJ9EVaHWAjoq9.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 13, "severe": 31 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807810859, - "modifiedTime": 1753807844642, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431740693, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!LzLOJ9EVaHWAjoq9" } diff --git a/src/packs/items/armors/armor_Advanced_Full_Plate_Armor_crIbCb9NZ4K0VpoU.json b/src/packs/items/armors/armor_Advanced_Full_Plate_Armor_crIbCb9NZ4K0VpoU.json index 4d97b8bb..4946d733 100644 --- a/src/packs/items/armors/armor_Advanced_Full_Plate_Armor_crIbCb9NZ4K0VpoU.json +++ b/src/packs/items/armors/armor_Advanced_Full_Plate_Armor_crIbCb9NZ4K0VpoU.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 15, "severe": 35 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809204693, - "modifiedTime": 1753809243349, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431745995, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!crIbCb9NZ4K0VpoU" } diff --git a/src/packs/items/armors/armor_Advanced_Gambeson_Armor_epkAmlZVk7HOfUUT.json b/src/packs/items/armors/armor_Advanced_Gambeson_Armor_epkAmlZVk7HOfUUT.json index 032ebe6d..74ea9cf7 100644 --- a/src/packs/items/armors/armor_Advanced_Gambeson_Armor_epkAmlZVk7HOfUUT.json +++ b/src/packs/items/armors/armor_Advanced_Gambeson_Armor_epkAmlZVk7HOfUUT.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 9, "severe": 23 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807704469, - "modifiedTime": 1753807740230, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431751044, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!epkAmlZVk7HOfUUT" } diff --git a/src/packs/items/armors/armor_Advanced_Leather_Armor_itSOp2GCyem0f7oM.json b/src/packs/items/armors/armor_Advanced_Leather_Armor_itSOp2GCyem0f7oM.json index ef9d64f9..2c2699a6 100644 --- a/src/packs/items/armors/armor_Advanced_Leather_Armor_itSOp2GCyem0f7oM.json +++ b/src/packs/items/armors/armor_Advanced_Leather_Armor_itSOp2GCyem0f7oM.json @@ -18,6 +18,11 @@ "baseThresholds": { "major": 11, "severe": 27 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -31,12 +36,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807744573, - "modifiedTime": 1753807795515, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431757894, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!itSOp2GCyem0f7oM" } diff --git a/src/packs/items/armors/armor_Bellamoi_Fine_Armor_WuoVwZA53XRAIt6d.json b/src/packs/items/armors/armor_Bellamoi_Fine_Armor_WuoVwZA53XRAIt6d.json index fb4bad0e..a3d805ed 100644 --- a/src/packs/items/armors/armor_Bellamoi_Fine_Armor_WuoVwZA53XRAIt6d.json +++ b/src/packs/items/armors/armor_Bellamoi_Fine_Armor_WuoVwZA53XRAIt6d.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 11, "severe": 27 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807855787, - "modifiedTime": 1753807887685, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431768795, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WuoVwZA53XRAIt6d" } diff --git a/src/packs/items/armors/armor_Bladefare_Armor_mNN6pvcsS10ChrWF.json b/src/packs/items/armors/armor_Bladefare_Armor_mNN6pvcsS10ChrWF.json index 60521ffc..2c4d0b5b 100644 --- a/src/packs/items/armors/armor_Bladefare_Armor_mNN6pvcsS10ChrWF.json +++ b/src/packs/items/armors/armor_Bladefare_Armor_mNN6pvcsS10ChrWF.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 16, "severe": 39 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753808752024, - "modifiedTime": 1753808787752, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431763662, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mNN6pvcsS10ChrWF" } diff --git a/src/packs/items/armors/armor_Chainmail_Armor_haULhuEg37zUUvhb.json b/src/packs/items/armors/armor_Chainmail_Armor_haULhuEg37zUUvhb.json index f7d07f32..2c2df8c9 100644 --- a/src/packs/items/armors/armor_Chainmail_Armor_haULhuEg37zUUvhb.json +++ b/src/packs/items/armors/armor_Chainmail_Armor_haULhuEg37zUUvhb.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 7, "severe": 15 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805286605, - "modifiedTime": 1753805329039, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431648072, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!haULhuEg37zUUvhb" } diff --git a/src/packs/items/armors/armor_Channeling_Armor_vMJxEWz1srfwMsoj.json b/src/packs/items/armors/armor_Channeling_Armor_vMJxEWz1srfwMsoj.json index 3d795985..efae1b77 100644 --- a/src/packs/items/armors/armor_Channeling_Armor_vMJxEWz1srfwMsoj.json +++ b/src/packs/items/armors/armor_Channeling_Armor_vMJxEWz1srfwMsoj.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 13, "severe": 36 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809433880, - "modifiedTime": 1753809460722, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431807296, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!vMJxEWz1srfwMsoj" } diff --git a/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json b/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json index 52002171..1e690af7 100644 --- a/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json +++ b/src/packs/items/armors/armor_Dragonscale_Armor_mdQ69eFHyAQUDmE7.json @@ -23,7 +23,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -56,6 +55,11 @@ "baseThresholds": { "major": 11, "severe": 27 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -69,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807902750, - "modifiedTime": 1753809495490, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431776878, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mdQ69eFHyAQUDmE7" } diff --git a/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json b/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json index 9a6b1baa..c90ff961 100644 --- a/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json +++ b/src/packs/items/armors/armor_Dunamis_Silkchain_hAY6UgdGT7dj22Pr.json @@ -16,11 +16,12 @@ "img": "icons/magic/time/hourglass-brown-orange.webp", "cost": [ { - "key": "armorSlot", + "key": "resource", + "itemId": "armorSlot", "value": 1, - "keyIsID": false, "scalable": false, - "step": null + "step": null, + "consumeOnSuccess": false } ], "roll": { @@ -80,6 +81,11 @@ "baseThresholds": { "major": 13, "severe": 36 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -93,12 +99,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753809264956, - "modifiedTime": 1753809422818, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1756325575974, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_key": "!items!hAY6UgdGT7dj22Pr" } diff --git a/src/packs/items/armors/armor_Elundrian_Chain_Mail_Q6LxmtFetDDkoZVZ.json b/src/packs/items/armors/armor_Elundrian_Chain_Mail_Q6LxmtFetDDkoZVZ.json index 0825a7a1..8a395b4a 100644 --- a/src/packs/items/armors/armor_Elundrian_Chain_Mail_Q6LxmtFetDDkoZVZ.json +++ b/src/packs/items/armors/armor_Elundrian_Chain_Mail_Q6LxmtFetDDkoZVZ.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 9, "severe": 21 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805557786, - "modifiedTime": 1753805605453, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431672675, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Q6LxmtFetDDkoZVZ" } diff --git a/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json b/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json index 3c471a93..2dfb8b29 100644 --- a/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json +++ b/src/packs/items/armors/armor_Emberwoven_Armor_bcQUh4QG3qFX0Vx6.json @@ -79,6 +79,11 @@ "baseThresholds": { "major": 13, "severe": 36 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -94,10 +99,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753809470138, - "modifiedTime": 1754853048367, - "lastModifiedBy": "7zAk0CoP90J7ebn0" + "modifiedTime": 1755431817865, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bcQUh4QG3qFX0Vx6" } diff --git a/src/packs/items/armors/armor_Full_Fortified_Armor_7emTSt6nhZuTlvt5.json b/src/packs/items/armors/armor_Full_Fortified_Armor_7emTSt6nhZuTlvt5.json index 73ecfc96..7b2820b4 100644 --- a/src/packs/items/armors/armor_Full_Fortified_Armor_7emTSt6nhZuTlvt5.json +++ b/src/packs/items/armors/armor_Full_Fortified_Armor_7emTSt6nhZuTlvt5.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 15, "severe": 40 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809653710, - "modifiedTime": 1753809691935, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431822964, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!7emTSt6nhZuTlvt5" } diff --git a/src/packs/items/armors/armor_Full_Plate_Armor_UdUJNa31WxFW2noa.json b/src/packs/items/armors/armor_Full_Plate_Armor_UdUJNa31WxFW2noa.json index 4b45cf7e..14d9257d 100644 --- a/src/packs/items/armors/armor_Full_Plate_Armor_UdUJNa31WxFW2noa.json +++ b/src/packs/items/armors/armor_Full_Plate_Armor_UdUJNa31WxFW2noa.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 8, "severe": 17 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805338471, - "modifiedTime": 1753805365355, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431655405, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!UdUJNa31WxFW2noa" } diff --git a/src/packs/items/armors/armor_Gambeson_Armor_yJFp1bfpecDcStVK.json b/src/packs/items/armors/armor_Gambeson_Armor_yJFp1bfpecDcStVK.json index c51838e0..c02ddd6f 100644 --- a/src/packs/items/armors/armor_Gambeson_Armor_yJFp1bfpecDcStVK.json +++ b/src/packs/items/armors/armor_Gambeson_Armor_yJFp1bfpecDcStVK.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 5, "severe": 11 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753804995685, - "modifiedTime": 1753805399875, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431660555, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!yJFp1bfpecDcStVK" } diff --git a/src/packs/items/armors/armor_Harrowbone_Armor_dvyQeUVRLc9y6rnt.json b/src/packs/items/armors/armor_Harrowbone_Armor_dvyQeUVRLc9y6rnt.json index 85dd7864..efb272fe 100644 --- a/src/packs/items/armors/armor_Harrowbone_Armor_dvyQeUVRLc9y6rnt.json +++ b/src/packs/items/armors/armor_Harrowbone_Armor_dvyQeUVRLc9y6rnt.json @@ -72,6 +72,11 @@ "baseThresholds": { "major": 9, "severe": 21 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -85,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805616349, - "modifiedTime": 1753807254838, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431677692, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dvyQeUVRLc9y6rnt" } diff --git a/src/packs/items/armors/armor_Improved_Chainmail_Armor_K5WkjS0NGqHYmhU3.json b/src/packs/items/armors/armor_Improved_Chainmail_Armor_K5WkjS0NGqHYmhU3.json index 62648557..e39f7ebf 100644 --- a/src/packs/items/armors/armor_Improved_Chainmail_Armor_K5WkjS0NGqHYmhU3.json +++ b/src/packs/items/armors/armor_Improved_Chainmail_Armor_K5WkjS0NGqHYmhU3.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 11, "severe": 24 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805490635, - "modifiedTime": 1753805512828, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431684575, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!K5WkjS0NGqHYmhU3" } diff --git a/src/packs/items/armors/armor_Improved_Full_Plate_Armor_9f7RozpPTqrzJS1m.json b/src/packs/items/armors/armor_Improved_Full_Plate_Armor_9f7RozpPTqrzJS1m.json index 7e5e36df..3d2355fc 100644 --- a/src/packs/items/armors/armor_Improved_Full_Plate_Armor_9f7RozpPTqrzJS1m.json +++ b/src/packs/items/armors/armor_Improved_Full_Plate_Armor_9f7RozpPTqrzJS1m.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 13, "severe": 28 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805522506, - "modifiedTime": 1753805544375, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431689873, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9f7RozpPTqrzJS1m" } diff --git a/src/packs/items/armors/armor_Improved_Gambeson_Armor_jphnMZjnS2FkOH3s.json b/src/packs/items/armors/armor_Improved_Gambeson_Armor_jphnMZjnS2FkOH3s.json index 8c6a8f2c..b16a0219 100644 --- a/src/packs/items/armors/armor_Improved_Gambeson_Armor_jphnMZjnS2FkOH3s.json +++ b/src/packs/items/armors/armor_Improved_Gambeson_Armor_jphnMZjnS2FkOH3s.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 7, "severe": 16 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805377869, - "modifiedTime": 1753805418921, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431695440, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jphnMZjnS2FkOH3s" } diff --git a/src/packs/items/armors/armor_Improved_Leather_Armor_t91M61pSCMKStTNt.json b/src/packs/items/armors/armor_Improved_Leather_Armor_t91M61pSCMKStTNt.json index 4d225093..9794cf70 100644 --- a/src/packs/items/armors/armor_Improved_Leather_Armor_t91M61pSCMKStTNt.json +++ b/src/packs/items/armors/armor_Improved_Leather_Armor_t91M61pSCMKStTNt.json @@ -18,6 +18,11 @@ "baseThresholds": { "major": 9, "severe": 20 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -31,12 +36,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805428821, - "modifiedTime": 1753805482906, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431701475, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!t91M61pSCMKStTNt" } diff --git a/src/packs/items/armors/armor_Irontree_Breastplate_Armor_tzZntboNtHL5C6VM.json b/src/packs/items/armors/armor_Irontree_Breastplate_Armor_tzZntboNtHL5C6VM.json index 71ad95a9..4fa628b4 100644 --- a/src/packs/items/armors/armor_Irontree_Breastplate_Armor_tzZntboNtHL5C6VM.json +++ b/src/packs/items/armors/armor_Irontree_Breastplate_Armor_tzZntboNtHL5C6VM.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 9, "severe": 20 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [ @@ -90,12 +95,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807283589, - "modifiedTime": 1753807455497, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431706974, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tzZntboNtHL5C6VM" } diff --git a/src/packs/items/armors/armor_Leather_Armor_nibfdNtp2PtxvbVz.json b/src/packs/items/armors/armor_Leather_Armor_nibfdNtp2PtxvbVz.json index 1d87a030..32e577c0 100644 --- a/src/packs/items/armors/armor_Leather_Armor_nibfdNtp2PtxvbVz.json +++ b/src/packs/items/armors/armor_Leather_Armor_nibfdNtp2PtxvbVz.json @@ -18,6 +18,11 @@ "baseThresholds": { "major": 6, "severe": 13 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -31,12 +36,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753805219679, - "modifiedTime": 1753805275427, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431666089, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nibfdNtp2PtxvbVz" } diff --git a/src/packs/items/armors/armor_Legendary_Chainmail_Armor_EsIN5OLKe9ZYFNXZ.json b/src/packs/items/armors/armor_Legendary_Chainmail_Armor_EsIN5OLKe9ZYFNXZ.json index 1192b4d5..b61b613c 100644 --- a/src/packs/items/armors/armor_Legendary_Chainmail_Armor_EsIN5OLKe9ZYFNXZ.json +++ b/src/packs/items/armors/armor_Legendary_Chainmail_Armor_EsIN5OLKe9ZYFNXZ.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 15, "severe": 40 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809118507, - "modifiedTime": 1753809151454, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431827865, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!EsIN5OLKe9ZYFNXZ" } diff --git a/src/packs/items/armors/armor_Legendary_Full_Plate_Armor_SXWjUR2aUR6bYvdl.json b/src/packs/items/armors/armor_Legendary_Full_Plate_Armor_SXWjUR2aUR6bYvdl.json index 5b2d4a97..1459709a 100644 --- a/src/packs/items/armors/armor_Legendary_Full_Plate_Armor_SXWjUR2aUR6bYvdl.json +++ b/src/packs/items/armors/armor_Legendary_Full_Plate_Armor_SXWjUR2aUR6bYvdl.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 17, "severe": 44 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809163051, - "modifiedTime": 1753809225793, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431832881, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SXWjUR2aUR6bYvdl" } diff --git a/src/packs/items/armors/armor_Legendary_Gambeson_Armor_c6tMXz4rPf9ioQrf.json b/src/packs/items/armors/armor_Legendary_Gambeson_Armor_c6tMXz4rPf9ioQrf.json index e05e5f32..7b425421 100644 --- a/src/packs/items/armors/armor_Legendary_Gambeson_Armor_c6tMXz4rPf9ioQrf.json +++ b/src/packs/items/armors/armor_Legendary_Gambeson_Armor_c6tMXz4rPf9ioQrf.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 11, "severe": 32 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809031184, - "modifiedTime": 1753809064934, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431838049, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!c6tMXz4rPf9ioQrf" } diff --git a/src/packs/items/armors/armor_Legendary_Leather_Armor_Tptgl5WOj76TyFn7.json b/src/packs/items/armors/armor_Legendary_Leather_Armor_Tptgl5WOj76TyFn7.json index 9dc82529..c456bc79 100644 --- a/src/packs/items/armors/armor_Legendary_Leather_Armor_Tptgl5WOj76TyFn7.json +++ b/src/packs/items/armors/armor_Legendary_Leather_Armor_Tptgl5WOj76TyFn7.json @@ -18,6 +18,11 @@ "baseThresholds": { "major": 13, "severe": 36 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -31,12 +36,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809078323, - "modifiedTime": 1753809106203, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431845786, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Tptgl5WOj76TyFn7" } diff --git a/src/packs/items/armors/armor_Monett_s_Cloak_AQzU2RsqS5V5bd1v.json b/src/packs/items/armors/armor_Monett_s_Cloak_AQzU2RsqS5V5bd1v.json index 0cc3415d..ed64499f 100644 --- a/src/packs/items/armors/armor_Monett_s_Cloak_AQzU2RsqS5V5bd1v.json +++ b/src/packs/items/armors/armor_Monett_s_Cloak_AQzU2RsqS5V5bd1v.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 16, "severe": 39 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753808797896, - "modifiedTime": 1753808820623, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431781312, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!AQzU2RsqS5V5bd1v" } diff --git a/src/packs/items/armors/armor_Rosewild_Armor_tN8kAeBvNKM3EBFo.json b/src/packs/items/armors/armor_Rosewild_Armor_tN8kAeBvNKM3EBFo.json index a0cb99f1..48eb7fde 100644 --- a/src/packs/items/armors/armor_Rosewild_Armor_tN8kAeBvNKM3EBFo.json +++ b/src/packs/items/armors/armor_Rosewild_Armor_tN8kAeBvNKM3EBFo.json @@ -48,6 +48,11 @@ "baseThresholds": { "major": 11, "severe": 23 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -61,12 +66,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807654078, - "modifiedTime": 1753807692793, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431712574, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tN8kAeBvNKM3EBFo" } diff --git a/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json b/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json index 33fef2f5..0de3a7f9 100644 --- a/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json +++ b/src/packs/items/armors/armor_Runes_of_Fortification_P4qAEDJUoNLgVRsA.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -56,6 +55,11 @@ "baseThresholds": { "major": 17, "severe": 43 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -69,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753808832397, - "modifiedTime": 1753809018449, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431788295, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!P4qAEDJUoNLgVRsA" } diff --git a/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json b/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json index df5cb28f..52aa1978 100644 --- a/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json +++ b/src/packs/items/armors/armor_Runetan_Floating_Armor_tHlBUDQC24YMZqd6.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -56,6 +55,11 @@ "baseThresholds": { "major": 9, "severe": 20 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -69,12 +73,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807528637, - "modifiedTime": 1753808232404, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431718527, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tHlBUDQC24YMZqd6" } diff --git a/src/packs/items/armors/armor_Savior_Chainmail_8X16lJQ3xltTwynm.json b/src/packs/items/armors/armor_Savior_Chainmail_8X16lJQ3xltTwynm.json index 4d8ccfa6..78689fcf 100644 --- a/src/packs/items/armors/armor_Savior_Chainmail_8X16lJQ3xltTwynm.json +++ b/src/packs/items/armors/armor_Savior_Chainmail_8X16lJQ3xltTwynm.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 18, "severe": 48 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -108,12 +113,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809733405, - "modifiedTime": 1753809762536, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431850849, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!8X16lJQ3xltTwynm" } diff --git a/src/packs/items/armors/armor_Spiked_Plate_Armor_QjwsIhXKqnlvRBMv.json b/src/packs/items/armors/armor_Spiked_Plate_Armor_QjwsIhXKqnlvRBMv.json index 07536704..c744b0b1 100644 --- a/src/packs/items/armors/armor_Spiked_Plate_Armor_QjwsIhXKqnlvRBMv.json +++ b/src/packs/items/armors/armor_Spiked_Plate_Armor_QjwsIhXKqnlvRBMv.json @@ -26,6 +26,11 @@ "baseThresholds": { "major": 10, "severe": 25 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [ @@ -83,12 +88,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753808464678, - "modifiedTime": 1753808691813, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431794279, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QjwsIhXKqnlvRBMv" } diff --git a/src/packs/items/armors/armor_Tyris_Soft_Armor_PSW3BxCGmtLeWOxM.json b/src/packs/items/armors/armor_Tyris_Soft_Armor_PSW3BxCGmtLeWOxM.json index ae9c849b..60da770c 100644 --- a/src/packs/items/armors/armor_Tyris_Soft_Armor_PSW3BxCGmtLeWOxM.json +++ b/src/packs/items/armors/armor_Tyris_Soft_Armor_PSW3BxCGmtLeWOxM.json @@ -48,6 +48,11 @@ "baseThresholds": { "major": 8, "severe": 18 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 56, + "artist": "" } }, "effects": [], @@ -61,12 +66,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753807607742, - "modifiedTime": 1753807646156, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431725559, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PSW3BxCGmtLeWOxM" } diff --git a/src/packs/items/armors/armor_Veritas_Opal_Armor_OvzgUTYy2RCN85vV.json b/src/packs/items/armors/armor_Veritas_Opal_Armor_OvzgUTYy2RCN85vV.json index 44f644b0..829c3e40 100644 --- a/src/packs/items/armors/armor_Veritas_Opal_Armor_OvzgUTYy2RCN85vV.json +++ b/src/packs/items/armors/armor_Veritas_Opal_Armor_OvzgUTYy2RCN85vV.json @@ -48,6 +48,11 @@ "baseThresholds": { "major": 13, "severe": 36 + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 57, + "artist": "" } }, "effects": [], @@ -61,12 +66,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753809706360, - "modifiedTime": 1753809725217, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431856135, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!OvzgUTYy2RCN85vV" } diff --git a/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json b/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json index 78da26af..9bbca941 100644 --- a/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json +++ b/src/packs/items/consumables/consumable_Acidpaste_cfVFmS8vT9dbq9s1.json @@ -14,7 +14,16 @@ "description": "

This paste eats away walls and other surfaces in bright flashes.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "cfVFmS8vT9dbq9s1", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -30,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753590344700, - "modifiedTime": 1754394373835, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336051101, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!cfVFmS8vT9dbq9s1" } diff --git a/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json b/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json index 20aeeb50..b06f1634 100644 --- a/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json +++ b/src/packs/items/consumables/consumable_Armor_Stitcher_VlbsCjvvLNfTzNXb.json @@ -20,7 +20,16 @@ "key": "hope", "value": 1, "step": 1, - "keyIsID": false + "itemId": null, + "consumeOnSuccess": false + }, + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "VlbsCjvvLNfTzNXb", + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -30,15 +39,21 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Stitch", "img": "icons/skills/trades/textiles-stitching-leather-brown.webp", - "range": "" + "range": "self" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -52,12 +67,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753588973384, - "modifiedTime": 1754394381368, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336337676, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!VlbsCjvvLNfTzNXb" } diff --git a/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json b/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json index 39f74078..ad6dea85 100644 --- a/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json +++ b/src/packs/items/consumables/consumable_Attune_Potion_JGD3M9hBHtVAA8XP.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Instinct Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "JGD3M9hBHtVAA8XP", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -32,10 +41,16 @@ }, "name": "Drink", "img": "icons/consumables/potions/bottle-conical-corked-purple.webp", - "range": "" + "range": "self" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753587033468, - "modifiedTime": 1754394388974, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336352911, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!JGD3M9hBHtVAA8XP" } diff --git a/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json b/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json index 0913fb6d..1e875f98 100644 --- a/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json +++ b/src/packs/items/consumables/consumable_Blinding_Orb_eAXHdzA5qNPldOpn.json @@ -14,7 +14,16 @@ "description": "

You can activate this orb to create a flash of bright light. All targets within Close range become Vulnerable until they mark HP.

@Template[type:emanation|range:c]

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "eAXHdzA5qNPldOpn", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "close" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [ { @@ -89,12 +104,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753592512731, - "modifiedTime": 1754394410769, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336362549, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!eAXHdzA5qNPldOpn" } diff --git a/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json b/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json index 103b102f..545ce424 100644 --- a/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json +++ b/src/packs/items/consumables/consumable_Blood_of_the_Yorgi_pDGzmczoTlKGmKgd.json @@ -14,7 +14,16 @@ "description": "

You can drink this blood to disappear from where you are and immediately reappear at a point you can see within Very Far range.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "pDGzmczoTlKGmKgd", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -22,15 +31,21 @@ }, "effects": [], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Drink", "img": "icons/consumables/potions/potion-tube-corked-bat-gold-red.webp", - "range": "" + "range": "veryFar" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589954973, - "modifiedTime": 1754394423870, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336370750, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!pDGzmczoTlKGmKgd" } diff --git a/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json b/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json index 0c33a50e..56bd6696 100644 --- a/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json +++ b/src/packs/items/consumables/consumable_Bolster_Potion_FOPQNqXbiVO0ilYL.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Strength Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "FOPQNqXbiVO0ilYL", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -32,10 +41,16 @@ }, "name": "Drink", "img": "icons/consumables/potions/potion-vial-tube-yellow.webp", - "range": "" + "range": "self" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753586850134, - "modifiedTime": 1754394431654, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336378610, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!FOPQNqXbiVO0ilYL" } diff --git a/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json b/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json index 61b0fb2f..73dcfc1f 100644 --- a/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json +++ b/src/packs/items/consumables/consumable_Bonding_Honey_PfQvqopXgvroBklL.json @@ -14,7 +14,16 @@ "description": "

This honey can be used to glue two objects together permanently.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "PfQvqopXgvroBklL", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -30,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753592033119, - "modifiedTime": 1754394442471, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336387437, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!PfQvqopXgvroBklL" } diff --git a/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json b/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json index a03ba6fe..777adc08 100644 --- a/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json +++ b/src/packs/items/consumables/consumable_Bridge_Seed_RrIasiMCt6mqVTps.json @@ -14,7 +14,16 @@ "description": "

Thick vines grow from your location to a point of your choice within Far range, allowing you to climb up or across them. The vines dissipate on your next short rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "RrIasiMCt6mqVTps", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -30,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753591685990, - "modifiedTime": 1754394450971, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336396404, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!RrIasiMCt6mqVTps" } diff --git a/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json b/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json index c93bb512..85e8ed29 100644 --- a/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json +++ b/src/packs/items/consumables/consumable_Channelstone_IKMVQ6VwtapwoUim.json @@ -14,7 +14,16 @@ "description": "

You can use this stone to take a spell or grimoire from your vault, use it once, and return it to your vault.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "IKMVQ6VwtapwoUim", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -30,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753590192533, - "modifiedTime": 1754394463123, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336406347, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!IKMVQ6VwtapwoUim" } diff --git a/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json b/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json index 26e03cb2..ae60104a 100644 --- a/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json +++ b/src/packs/items/consumables/consumable_Charm_Potion_CVBbFfOY75YwyQsp.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Presence Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "CVBbFfOY75YwyQsp", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753587097370, - "modifiedTime": 1754394471027, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336420032, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!CVBbFfOY75YwyQsp" } diff --git a/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json b/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json index cdbae661..a6ca40ba 100644 --- a/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json +++ b/src/packs/items/consumables/consumable_Circle_of_the_Void_elsyP6VhHw1JjGSl.json @@ -17,10 +17,11 @@ "cost": [ { "scalable": false, - "key": "stress", + "key": "quantity", "value": 1, - "keyIsID": false, - "step": null + "itemId": "elsyP6VhHw1JjGSl", + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -38,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -52,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753590692159, - "modifiedTime": 1754394477728, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336427253, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!elsyP6VhHw1JjGSl" } diff --git a/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json b/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json index f158628e..3c58799a 100644 --- a/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json +++ b/src/packs/items/consumables/consumable_Control_Potion_eeBhZSGLjuNZuJuI.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Finesse Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "eeBhZSGLjuNZuJuI", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753586944889, - "modifiedTime": 1754394484407, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336435661, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!eeBhZSGLjuNZuJuI" } diff --git a/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json b/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json index b7d636bc..fe22618c 100644 --- a/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json +++ b/src/packs/items/consumables/consumable_Death_Tea_xDnJeF1grkmKck8Q.json @@ -14,7 +14,16 @@ "description": "

After you drink this tea, you instantly kill your target when you critically succeed on an attack. If you don’t critically succeed on an attack before your next long rest, you die.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "xDnJeF1grkmKck8Q", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -27,15 +36,21 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Drink", "img": "icons/consumables/drinks/wine-amphora-clay-gray.webp", - "range": "" + "range": "self" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753592717630, - "modifiedTime": 1754394494474, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336445925, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!xDnJeF1grkmKck8Q" } diff --git a/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json b/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json index da89cf7a..3bb5766f 100644 --- a/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json +++ b/src/packs/items/consumables/consumable_Dragonbloom_Tea_wM18PWWW2Ami4fBG.json @@ -11,13 +11,22 @@ "type": "attack", "_id": "rcHEz3ImUDwo6lPC", "systemPath": "actions", - "description": "", + "description": "

You can drink this tea to unleash a fiery breath attack. Make an Instinct Roll against all adversaries in front of you within Close range. Targets you succeed against take d20 physical damage using your Proficiency.

@Template[type:emanation|range:c]

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "consumeOnSuccess": false, + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "wM18PWWW2Ami4fBG", + "step": null + } + ], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, "damage": { @@ -79,7 +88,13 @@ "range": "close" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -93,12 +108,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753591525829, - "modifiedTime": 1753591674720, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1756336455635, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!wM18PWWW2Ami4fBG" } diff --git a/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json b/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json index fa9da4cf..73f1b3c2 100644 --- a/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json +++ b/src/packs/items/consumables/consumable_Dripfang_Poison_eU8VpbWB2NHIL47n.json @@ -14,7 +14,16 @@ "description": "

A creature who consumes this poison takes 8d10 direct magic damage.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "eU8VpbWB2NHIL47n", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -61,7 +70,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -75,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753590938047, - "modifiedTime": 1754394503675, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336465398, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!eU8VpbWB2NHIL47n" } diff --git a/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json b/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json index 08ba032e..dc8260d0 100644 --- a/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json +++ b/src/packs/items/consumables/consumable_Enlighten_Potion_aWHSO2AqDufi7nL4.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Knowledge Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "aWHSO2AqDufi7nL4", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753587185754, - "modifiedTime": 1754394512375, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336472979, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!aWHSO2AqDufi7nL4" } diff --git a/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json b/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json index 79a7a676..4b4c8236 100644 --- a/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json +++ b/src/packs/items/consumables/consumable_Feast_of_Xuria_aX6NyxkNzu0LcJpt.json @@ -14,7 +14,16 @@ "description": "

You can eat this meal to clear all HP and Stress and gain 1d4 Hope.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "aX6NyxkNzu0LcJpt", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -124,7 +133,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -138,12 +153,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753591925502, - "modifiedTime": 1754394521825, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336480162, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!aX6NyxkNzu0LcJpt" } diff --git a/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json b/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json index 7b4816a5..023edb88 100644 --- a/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json +++ b/src/packs/items/consumables/consumable_Featherbone_DpxEMpwfasEBpORU.json @@ -14,25 +14,90 @@ "description": "

You can use this bone to control your falling speed for a number of minutes equal to your level.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "DpxEMpwfasEBpORU", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", "recovery": null }, - "effects": [], + "effects": [ + { + "_id": "VfJIJBW96e45xQHY", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Use", "img": "icons/commodities/bones/bones-stack-worn-brown.webp", - "range": "" + "range": "self" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, - "effects": [], + "effects": [ + { + "name": "Featherbone", + "img": "icons/commodities/bones/bones-stack-worn-brown.webp", + "origin": "Compendium.daggerheart.consumables.Item.DpxEMpwfasEBpORU", + "transfer": false, + "_id": "VfJIJBW96e45xQHY", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

You can use this bone to control your falling speed for a number of minutes equal to your level.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756041997551, + "modifiedTime": 1756042000517, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!DpxEMpwfasEBpORU.VfJIJBW96e45xQHY" + } + ], "folder": null, "sort": 0, "ownership": { @@ -44,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753590624634, - "modifiedTime": 1754394529842, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336487822, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!DpxEMpwfasEBpORU" } diff --git a/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json b/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json index 33130fd2..b76ff1f9 100644 --- a/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json +++ b/src/packs/items/consumables/consumable_Gill_Salve_Nvbb9mze6o5D0AEg.json @@ -14,25 +14,90 @@ "description": "

You can apply this salve to your neck to breathe underwater for a number of minutes equal to your level.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "Nvbb9mze6o5D0AEg", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", "recovery": null }, - "effects": [], + "effects": [ + { + "_id": "5rL9CY5GO9SJcEZq", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Apply", "img": "icons/commodities/materials/bowl-powder-blue.webp", - "range": "" + "range": "self" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, - "effects": [], + "effects": [ + { + "name": "Gill Salve", + "img": "icons/commodities/materials/bowl-powder-blue.webp", + "origin": "Compendium.daggerheart.consumables.Item.Nvbb9mze6o5D0AEg", + "transfer": false, + "_id": "5rL9CY5GO9SJcEZq", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

You can apply this salve to your neck to breathe underwater for a number of minutes equal to your level.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756041968799, + "modifiedTime": 1756041978849, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!Nvbb9mze6o5D0AEg.5rL9CY5GO9SJcEZq" + } + ], "folder": null, "sort": 0, "ownership": { @@ -44,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589241094, - "modifiedTime": 1754394537845, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336496390, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!Nvbb9mze6o5D0AEg" } diff --git a/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json b/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json index ba7fd727..b208c3ac 100644 --- a/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json +++ b/src/packs/items/consumables/consumable_Grindletooth_Venom_8WkhvSzeOmLdnoLJ.json @@ -14,7 +14,16 @@ "description": "

You can apply this venom to a weapon that deals physical damage to add a d6 to your next damage roll with that weapon.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "8WkhvSzeOmLdnoLJ", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -101,12 +116,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753587386639, - "modifiedTime": 1754394547827, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336506199, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!8WkhvSzeOmLdnoLJ" } diff --git a/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json b/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json index ad36fe3e..5563b561 100644 --- a/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json +++ b/src/packs/items/consumables/consumable_Growing_Potion_fl2f3ees8RFMze9t.json @@ -14,7 +14,16 @@ "description": "

You can drink this potion to double your size until you choose to drop this form or your next rest. While in this form, you have a +2 bonus to Strength and a +1 bonus to your Proficiency.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "fl2f3ees8RFMze9t", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [ { @@ -100,12 +115,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753592174440, - "modifiedTime": 1754394557196, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336513568, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!fl2f3ees8RFMze9t" } diff --git a/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json b/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json index 4279f73c..c600d102 100644 --- a/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json +++ b/src/packs/items/consumables/consumable_Health_Potion_Aruc2NLutWuVIjP1.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4+1 HP.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "Aruc2NLutWuVIjP1", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -74,7 +83,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753588839527, - "modifiedTime": 1754394566378, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336520901, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!Aruc2NLutWuVIjP1" } diff --git a/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json b/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json index 7aa146d4..8488df03 100644 --- a/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json +++ b/src/packs/items/consumables/consumable_Homet_s_Secret_Potion_VSwa1LpQ9PjZKsWF.json @@ -14,7 +14,16 @@ "description": "

After drinking this potion, the next successful attack you make critically succeeds.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "VSwa1LpQ9PjZKsWF", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589998065, - "modifiedTime": 1754394576928, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336528677, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!VSwa1LpQ9PjZKsWF" } diff --git a/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json b/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json index 9747d8d2..6cb963a8 100644 --- a/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json +++ b/src/packs/items/consumables/consumable_Hopehold_Flare_EhaQCPJ8oiqpRIwB.json @@ -14,7 +14,16 @@ "description": "

When you use this flare, allies within Close range roll a d6 when they spend a Hope. On a result of 6, they gain the effect of that Hope without spending it. The flare lasts until the end of the scene.

@Template[type:emanation|range:c]

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "EhaQCPJ8oiqpRIwB", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -30,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753590388618, - "modifiedTime": 1754394599463, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336535700, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!EhaQCPJ8oiqpRIwB" } diff --git a/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json b/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json index dc86564b..09ba52dc 100644 --- a/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json +++ b/src/packs/items/consumables/consumable_Improved_Arcane_Shard_nQTo6mNoPTEVBtkm.json @@ -14,7 +14,16 @@ "description": "

You can make a Finesse Roll to throw this shard at a group of adversaries within Far range. Targets you succeed against take 2d20 magic damage.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "consumeOnSuccess": false, + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "nQTo6mNoPTEVBtkm", + "step": null + } + ], "uses": { "value": null, "max": "", @@ -81,7 +90,13 @@ "range": "far" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -95,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589403341, - "modifiedTime": 1754394607830, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336543336, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!nQTo6mNoPTEVBtkm" } diff --git a/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json b/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json index 9b1ac237..240e2bd3 100644 --- a/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json +++ b/src/packs/items/consumables/consumable_Improved_Grindletooth_Venom_BqBWXXe9T07AMV4u.json @@ -14,7 +14,16 @@ "description": "

You can apply this venom to a weapon that deals physical damage to add a d8 to your next damage roll with that weapon.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "BqBWXXe9T07AMV4u", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -101,12 +116,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753588170670, - "modifiedTime": 1754394620213, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336563205, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!BqBWXXe9T07AMV4u" } diff --git a/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json b/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json index df45fcf2..7a9a8193 100644 --- a/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json +++ b/src/packs/items/consumables/consumable_Jar_of_Lost_Voices_yUol6M5b8jsbk9za.json @@ -14,7 +14,16 @@ "description": "

You can open this jar to release a deafening echo of voices for a number of minutes equal to your Instinct. Creatures within Far range unprepared for the sound take 6d8 magic damage.

@Template[type:emanation|range:f]

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "yUol6M5b8jsbk9za", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -61,7 +70,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -75,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753591372075, - "modifiedTime": 1754394648049, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336570894, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!yUol6M5b8jsbk9za" } diff --git a/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json b/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json index bbe9e1a4..9f9939a8 100644 --- a/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json +++ b/src/packs/items/consumables/consumable_Jumping_Root_c2putn9apuurJhWX.json @@ -14,7 +14,16 @@ "description": "

Eat this root to leap up to Far range once without needing to roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "c2putn9apuurJhWX", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -30,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753588566489, - "modifiedTime": 1754394659649, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336580501, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!c2putn9apuurJhWX" } diff --git a/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json b/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json index 02a13b6c..398d12f5 100644 --- a/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json +++ b/src/packs/items/consumables/consumable_Knowledge_Stone_nL9IALzm9BNi5oSt.json @@ -14,7 +14,16 @@ "description": "

If you die while holding this stone, an ally can take a card from your loadout to place in their loadout or vault. After they take this knowledge, the stone crumbles.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "nL9IALzm9BNi5oSt", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -30,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753592240392, - "modifiedTime": 1754394668583, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336587702, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!nL9IALzm9BNi5oSt" } diff --git a/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json b/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json index ff722381..1cc164a2 100644 --- a/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json +++ b/src/packs/items/consumables/consumable_Major_Arcane_Shard_AA7bmiwv00lshPrC.json @@ -14,7 +14,16 @@ "description": "

You can make a Finesse Roll to throw this shard at a group of adversaries within Far range. Targets you succeed against take 4d20 magic damage.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "consumeOnSuccess": false, + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "AA7bmiwv00lshPrC", + "step": null + } + ], "uses": { "value": null, "max": "", @@ -79,7 +88,13 @@ "range": "far" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -93,12 +108,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753590515261, - "modifiedTime": 1754394676288, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336596900, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!AA7bmiwv00lshPrC" } diff --git a/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json b/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json index 63b3dfbf..05e4fe5d 100644 --- a/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json +++ b/src/packs/items/consumables/consumable_Major_Attune_Potion_CCPFm5iXXwvyYYwR.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Instinct until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "CCPFm5iXXwvyYYwR", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589747286, - "modifiedTime": 1754394684950, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336603508, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!CCPFm5iXXwvyYYwR" } diff --git a/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json b/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json index 58b988f9..12f5bf1d 100644 --- a/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json +++ b/src/packs/items/consumables/consumable_Major_Bolster_Potion_mnyQDRtngWWQeRXF.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Strength until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "mnyQDRtngWWQeRXF", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589623872, - "modifiedTime": 1754394694337, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336610323, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!mnyQDRtngWWQeRXF" } diff --git a/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json b/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json index 65c01549..84a18028 100644 --- a/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json +++ b/src/packs/items/consumables/consumable_Major_Charm_Potion_IJLAUlQymbSjzsri.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Presence until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "IJLAUlQymbSjzsri", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589816684, - "modifiedTime": 1754394702935, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336617341, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!IJLAUlQymbSjzsri" } diff --git a/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json b/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json index ff85d8ed..782e543c 100644 --- a/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json +++ b/src/packs/items/consumables/consumable_Major_Control_Potion_80s1FLmTLtohZ5GH.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Finesse until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "80s1FLmTLtohZ5GH", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589675185, - "modifiedTime": 1754394710253, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336639693, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!80s1FLmTLtohZ5GH" } diff --git a/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json b/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json index d2b26b03..a827a738 100644 --- a/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json +++ b/src/packs/items/consumables/consumable_Major_Enlighten_Potion_SDdv1G2veMLKrxcJ.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Knowledge until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "SDdv1G2veMLKrxcJ", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589874661, - "modifiedTime": 1754394718504, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336647833, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!SDdv1G2veMLKrxcJ" } diff --git a/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json b/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json index 454373f8..3e83a73c 100644 --- a/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json +++ b/src/packs/items/consumables/consumable_Major_Health_Potion_cM7pHe8bBAxSZ2xR.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4+2 HP.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "cM7pHe8bBAxSZ2xR", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -74,7 +83,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753591046168, - "modifiedTime": 1754394726288, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336654766, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!cM7pHe8bBAxSZ2xR" } diff --git a/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json b/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json index 12ce1a3d..a7cd987e 100644 --- a/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json +++ b/src/packs/items/consumables/consumable_Major_Stamina_Potion_I4cQ03xbxnc81EGa.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4+2 Stress.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "I4cQ03xbxnc81EGa", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -74,7 +83,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753591113317, - "modifiedTime": 1754394330048, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336661213, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!I4cQ03xbxnc81EGa" } diff --git a/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json b/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json index a88a1c48..60cd96b2 100644 --- a/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json +++ b/src/packs/items/consumables/consumable_Major_Stride_Potion_yK6eEDUrsPbZA8G0.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your Agility until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "yK6eEDUrsPbZA8G0", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589545730, - "modifiedTime": 1754394734536, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336667559, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!yK6eEDUrsPbZA8G0" } diff --git a/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json b/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json index 8e6ebe0a..5dc8ca28 100644 --- a/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json +++ b/src/packs/items/consumables/consumable_Minor_Health_Potion_tPfKtKRRjv8qdSqy.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4 HP.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "tPfKtKRRjv8qdSqy", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -74,7 +83,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753587253431, - "modifiedTime": 1754394742922, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336675059, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!tPfKtKRRjv8qdSqy" } diff --git a/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json b/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json index b8944384..81b000f7 100644 --- a/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json +++ b/src/packs/items/consumables/consumable_Minor_Stamina_Potion_b6vGSPFWOlzZZDLO.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4 Stress.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "b6vGSPFWOlzZZDLO", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -74,7 +83,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753587324465, - "modifiedTime": 1754394346717, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336685650, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!b6vGSPFWOlzZZDLO" } diff --git a/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json b/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json index caa7a36d..7c80bc78 100644 --- a/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json +++ b/src/packs/items/consumables/consumable_Mirror_of_Marigold_UFQVwgYOUZ88UxcH.json @@ -16,11 +16,12 @@ "actionType": "action", "cost": [ { - "keyIsID": false, - "key": "hope", - "value": 1, "scalable": false, - "step": null + "key": "quantity", + "value": 1, + "itemId": "UFQVwgYOUZ88UxcH", + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -38,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -52,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753592792213, - "modifiedTime": 1754394753189, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336692719, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!UFQVwgYOUZ88UxcH" } diff --git a/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json b/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json index 5c6bfa94..4afc72ba 100644 --- a/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json +++ b/src/packs/items/consumables/consumable_Morphing_Clay_f1NHVSIHJJCIOaBl.json @@ -16,11 +16,12 @@ "actionType": "action", "cost": [ { - "keyIsID": false, - "key": "hope", - "value": 1, "scalable": false, - "step": null + "key": "quantity", + "value": 1, + "itemId": "f1NHVSIHJJCIOaBl", + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -43,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -102,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753588254032, - "modifiedTime": 1754394761890, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336699132, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!f1NHVSIHJJCIOaBl" } diff --git a/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json b/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json index 1201b838..5c5f4325 100644 --- a/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json +++ b/src/packs/items/consumables/consumable_Mythic_Dust_Zsh2AvZr8EkGtLyw.json @@ -14,7 +14,16 @@ "description": "

You can apply this dust to a weapon that deals magic damage to add a d12 to your next damage roll with that weapon.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "Zsh2AvZr8EkGtLyw", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -101,12 +116,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753590241722, - "modifiedTime": 1754394769155, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336705787, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!Zsh2AvZr8EkGtLyw" } diff --git a/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json b/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json index 2e3f60d4..be940eab 100644 --- a/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json +++ b/src/packs/items/consumables/consumable_Ogre_Musk_qr1bosjFcUfuwq4B.json @@ -14,7 +14,16 @@ "description": "

You can use this musk to prevent anyone from tracking you by mundane or magical means until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "qr1bosjFcUfuwq4B", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753591168468, - "modifiedTime": 1754394777490, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336713230, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!qr1bosjFcUfuwq4B" } diff --git a/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json b/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json index 990cb6eb..c7fa2bbb 100644 --- a/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json +++ b/src/packs/items/consumables/consumable_Potion_of_Stability_dvL8oaxpEF6jKvYN.json @@ -14,7 +14,16 @@ "description": "

You can drink this potion to choose one additional downtime move.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "dvL8oaxpEF6jKvYN", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -100,12 +115,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753588038000, - "modifiedTime": 1754394786974, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336720970, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!dvL8oaxpEF6jKvYN" } diff --git a/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json b/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json index 41408713..82e4d4b9 100644 --- a/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json +++ b/src/packs/items/consumables/consumable_Redthorn_Saliva_s2Exl2XFuoOhtIov.json @@ -14,7 +14,16 @@ "description": "

You can apply this saliva to a weapon that deals physical damage to add a d12 to your next damage roll with that weapon.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "s2Exl2XFuoOhtIov", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -101,12 +116,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753590061810, - "modifiedTime": 1754394793758, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336727954, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!s2Exl2XFuoOhtIov" } diff --git a/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json b/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json index 8488df22..7e07b702 100644 --- a/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json +++ b/src/packs/items/consumables/consumable_Replication_Parchment_yJkwz4AP6yhGo8Vj.json @@ -14,7 +14,16 @@ "description": "

By touching this piece of parchment to another, you can perfectly copy the second parchment’s contents. Once used, this parchment becomes mundane paper.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "yJkwz4AP6yhGo8Vj", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -30,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753589306667, - "modifiedTime": 1754394802909, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336734771, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!yJkwz4AP6yhGo8Vj" } diff --git a/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json b/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json index 95e84b30..08af29cc 100644 --- a/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json +++ b/src/packs/items/consumables/consumable_Shrinking_Potion_HGixKenQwhyRAYNk.json @@ -14,7 +14,16 @@ "description": "

You can drink this potion to halve your size until you choose to drop this form or your next rest. While in this form, you have a +2 bonus to Agility and a −1 penalty to your Proficiency.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "HGixKenQwhyRAYNk", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [ { @@ -100,12 +115,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753592077792, - "modifiedTime": 1754394810891, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336741086, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!HGixKenQwhyRAYNk" } diff --git a/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json b/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json index 9ac76466..b627695a 100644 --- a/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json +++ b/src/packs/items/consumables/consumable_Sleeping_Sap_XZavUVlHEvE2srEt.json @@ -14,7 +14,16 @@ "description": "

You can drink this potion to fall asleep for a full night’s rest. You clear all Stress upon waking.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "XZavUVlHEvE2srEt", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -75,7 +84,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -89,12 +104,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753591837472, - "modifiedTime": 1754394819077, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336748248, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!XZavUVlHEvE2srEt" } diff --git a/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json b/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json index 5edcef3d..cdc760ff 100644 --- a/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json +++ b/src/packs/items/consumables/consumable_Snap_Powder_cg6VtQ0eVZjDdcK0.json @@ -17,10 +17,11 @@ "cost": [ { "scalable": false, - "key": "stress", + "key": "quantity", "value": 1, - "keyIsID": false, - "step": null + "itemId": "cg6VtQ0eVZjDdcK0", + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -83,7 +84,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -97,12 +104,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753588752841, - "modifiedTime": 1754394825942, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336754402, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!cg6VtQ0eVZjDdcK0" } diff --git a/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json b/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json index 3fc1c15d..d278c6fe 100644 --- a/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json +++ b/src/packs/items/consumables/consumable_Stamina_Potion_hf3k1POoVSooJyN2.json @@ -14,7 +14,16 @@ "description": "

Clear 1d4+1 Stress.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "hf3k1POoVSooJyN2", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -74,7 +83,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -88,12 +103,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753588904835, - "modifiedTime": 1754394357617, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336761163, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!hf3k1POoVSooJyN2" } diff --git a/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json b/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json index cd30d320..b4c16c8d 100644 --- a/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json +++ b/src/packs/items/consumables/consumable_Stardrop_y4c1jrlHrf0wBWOq.json @@ -14,7 +14,16 @@ "description": "

You can use this stardrop to summon a hailstorm of comets that deals 8d20 physical damage to all targets within Very Far range.

@Template[type:emanation|range:vf]

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "y4c1jrlHrf0wBWOq", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -61,7 +70,13 @@ "range": "veryFar" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -75,12 +90,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753592933782, - "modifiedTime": 1754394853714, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336777144, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!y4c1jrlHrf0wBWOq" } diff --git a/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json b/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json index b28dd0c7..dd8a354b 100644 --- a/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json +++ b/src/packs/items/consumables/consumable_Stride_Potion_lNtcrkgFGOJNaroE.json @@ -14,7 +14,16 @@ "description": "

You gain a +1 bonus to your next Agility Roll.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "lNtcrkgFGOJNaroE", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753585993187, - "modifiedTime": 1754394862377, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336784139, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!lNtcrkgFGOJNaroE" } diff --git a/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json b/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json index d9e28567..f79704f4 100644 --- a/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json +++ b/src/packs/items/consumables/consumable_Sun_Tree_Sap_kwexUzdM9wm1Qums.json @@ -14,7 +14,16 @@ "description": "

Consume this sap to roll a [[/r d6]]. On a result of 5–6, clear 2 HP. On a result of 2–4, clear 3 Stress. On a result of 1, see through the veil of death and return changed, gaining one scar.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "consumeOnSuccess": false, + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "kwexUzdM9wm1Qums", + "step": null + } + ], "uses": { "value": null, "max": "", @@ -54,7 +63,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -68,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753590791260, - "modifiedTime": 1754394871161, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336791229, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!kwexUzdM9wm1Qums" } diff --git a/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json b/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json index 25780390..e366ddbe 100644 --- a/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json +++ b/src/packs/items/consumables/consumable_Sweet_Moss_GrDrRqWgv7gvl9vn.json @@ -14,7 +14,16 @@ "description": "

You can consume this moss during a rest to clear 1d10 HP.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "GrDrRqWgv7gvl9vn", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -80,7 +89,16 @@ "description": "

You can consume this moss during a rest to clear 1d10 Stress.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "GrDrRqWgv7gvl9vn", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -140,7 +158,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 62, + "artist": "" + } }, "effects": [], "folder": null, @@ -154,12 +178,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753592391195, - "modifiedTime": 1754394899780, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336804065, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!GrDrRqWgv7gvl9vn" } diff --git a/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json b/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json index 33e77c66..8194d7b2 100644 --- a/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json +++ b/src/packs/items/consumables/consumable_Unstable_Arcane_Shard_mUepnLbkvFk0ha4Z.json @@ -14,7 +14,16 @@ "description": "

You can make a Finesse Roll to throw this shard at a group of adversaries within Far range. Targets you succeed against take 1d20 magic damage.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "consumeOnSuccess": false, + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "mUepnLbkvFk0ha4Z", + "step": null + } + ], "uses": { "value": null, "max": "", @@ -81,7 +90,13 @@ "range": "far" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -95,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753587732694, - "modifiedTime": 1754394908763, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336811267, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!mUepnLbkvFk0ha4Z" } diff --git a/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json b/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json index 20d2ddea..cec9395e 100644 --- a/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json +++ b/src/packs/items/consumables/consumable_Varik_Leaves_hvy5BkG3F6iOIXTx.json @@ -14,7 +14,16 @@ "description": "

You can eat these paired leaves to immediately gain 2 Hope.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "hvy5BkG3F6iOIXTx", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -75,7 +84,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -89,12 +104,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753587484164, - "modifiedTime": 1754394924546, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336817973, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!hvy5BkG3F6iOIXTx" } diff --git a/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json b/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json index b65c1dec..4959dc10 100644 --- a/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json +++ b/src/packs/items/consumables/consumable_Vial_of_Darksmoke_Nwv5ydGf0MWnzq1n.json @@ -14,7 +14,16 @@ "description": "

When an adversary attacks you, use this vial and roll a number of d6s equal to your Agility. Add the highest result to your Evasion against the attack.

", "chatDisplay": true, "actionType": "reaction", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "Nwv5ydGf0MWnzq1n", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -30,7 +39,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [], "folder": null, @@ -44,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753588345314, - "modifiedTime": 1754394933247, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336825474, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!Nwv5ydGf0MWnzq1n" } diff --git a/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json b/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json index 3f318842..b849d989 100644 --- a/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json +++ b/src/packs/items/consumables/consumable_Vial_of_Moondrip_VqEX5YwK5oL3r1t6.json @@ -14,7 +14,16 @@ "description": "

When you drink the contents of this vial, you can see in total darkness until your next rest.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "VqEX5YwK5oL3r1t6", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753587590537, - "modifiedTime": 1754394940997, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336832961, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!VqEX5YwK5oL3r1t6" } diff --git a/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json b/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json index f07a6fc9..eb3aeb5c 100644 --- a/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json +++ b/src/packs/items/consumables/consumable_Wingsprout_n10vozlmosVR6lo4.json @@ -14,7 +14,16 @@ "description": "

You gain magic wings that allow you to fly for a number of minutes equal to your level.

", "chatDisplay": true, "actionType": "action", - "cost": [], + "cost": [ + { + "scalable": false, + "key": "quantity", + "value": 1, + "itemId": "n10vozlmosVR6lo4", + "step": null, + "consumeOnSuccess": false + } + ], "uses": { "value": null, "max": "", @@ -35,7 +44,13 @@ "range": "" } }, - "consumeOnUse": true + "consumeOnUse": true, + "destroyOnEmpty": true, + "attribution": { + "source": "Daggerheart SRD", + "page": 61, + "artist": "" + } }, "effects": [ { @@ -94,12 +109,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753591283853, - "modifiedTime": 1754394949465, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756336840548, + "lastModifiedBy": "gbAAZWyczKwejDNh" }, "_key": "!items!n10vozlmosVR6lo4" } diff --git a/src/packs/items/loot/loot_Airblade_Charm_cTYvyaSKBxosM9Y9.json b/src/packs/items/loot/loot_Airblade_Charm_cTYvyaSKBxosM9Y9.json index fbfe3800..3f368be7 100644 --- a/src/packs/items/loot/loot_Airblade_Charm_cTYvyaSKBxosM9Y9.json +++ b/src/packs/items/loot/loot_Airblade_Charm_cTYvyaSKBxosM9Y9.json @@ -29,6 +29,11 @@ "img": "icons/equipment/neck/amulet-carved-stone-spiral-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -43,12 +48,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638435202, - "modifiedTime": 1753638500393, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432212303, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cTYvyaSKBxosM9Y9" } diff --git a/src/packs/items/loot/loot_Alistair_s_Torch_MeEg57T6MKpw3sme.json b/src/packs/items/loot/loot_Alistair_s_Torch_MeEg57T6MKpw3sme.json index 8e77f2bb..dc8c30e4 100644 --- a/src/packs/items/loot/loot_Alistair_s_Torch_MeEg57T6MKpw3sme.json +++ b/src/packs/items/loot/loot_Alistair_s_Torch_MeEg57T6MKpw3sme.json @@ -6,7 +6,12 @@ "system": { "description": "

You can light this magic torch at will. The flame’s light fills a much larger space than it should, enough to illuminate a cave bright as day.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625181140, - "modifiedTime": 1753625205417, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431934319, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MeEg57T6MKpw3sme" } diff --git a/src/packs/items/loot/loot_Arcane_Cloak_4STt98biZwjFoKOe.json b/src/packs/items/loot/loot_Arcane_Cloak_4STt98biZwjFoKOe.json index c8b3c168..bf0a7352 100644 --- a/src/packs/items/loot/loot_Arcane_Cloak_4STt98biZwjFoKOe.json +++ b/src/packs/items/loot/loot_Arcane_Cloak_4STt98biZwjFoKOe.json @@ -6,7 +6,12 @@ "system": { "description": "

A creature with a Spellcast trait wearing this cloak can adjust its color, texture, and size at will.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625371758, - "modifiedTime": 1753625392529, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431960072, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4STt98biZwjFoKOe" } diff --git a/src/packs/items/loot/loot_Arcane_Prism_Mn1eo2Mdtu1kzyxB.json b/src/packs/items/loot/loot_Arcane_Prism_Mn1eo2Mdtu1kzyxB.json index b1fa3700..dc3376cb 100644 --- a/src/packs/items/loot/loot_Arcane_Prism_Mn1eo2Mdtu1kzyxB.json +++ b/src/packs/items/loot/loot_Arcane_Prism_Mn1eo2Mdtu1kzyxB.json @@ -34,6 +34,11 @@ "img": "icons/commodities/gems/gem-faceted-trillion-blue.webp", "range": "close" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [ @@ -93,12 +98,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626536923, - "modifiedTime": 1753989088942, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432045259, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Mn1eo2Mdtu1kzyxB" } diff --git a/src/packs/items/loot/loot_Attune_Relic_vK6bKyQTT3m8WvMh.json b/src/packs/items/loot/loot_Attune_Relic_vK6bKyQTT3m8WvMh.json index 59909fa7..3473c512 100644 --- a/src/packs/items/loot/loot_Attune_Relic_vK6bKyQTT3m8WvMh.json +++ b/src/packs/items/loot/loot_Attune_Relic_vK6bKyQTT3m8WvMh.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Instinct. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639587267, - "modifiedTime": 1753639733198, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432312623, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!vK6bKyQTT3m8WvMh" } diff --git a/src/packs/items/loot/loot_Bag_of_Ficklesand_v758j4FwNVAurhYK.json b/src/packs/items/loot/loot_Bag_of_Ficklesand_v758j4FwNVAurhYK.json index 767dc8e0..69817496 100644 --- a/src/packs/items/loot/loot_Bag_of_Ficklesand_v758j4FwNVAurhYK.json +++ b/src/packs/items/loot/loot_Bag_of_Ficklesand_v758j4FwNVAurhYK.json @@ -58,6 +58,11 @@ "img": "icons/containers/bags/pouch-cloth-tan.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [ @@ -119,12 +124,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637946114, - "modifiedTime": 1753989248198, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432176800, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!v758j4FwNVAurhYK" } diff --git a/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json b/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json index 717f4024..eaa9def5 100644 --- a/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json +++ b/src/packs/items/loot/loot_Belt_of_Unity_gFzkUGCjkRJtyoe9.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hope", "value": 5, - "keyIsID": false, "step": null } ], @@ -37,6 +36,11 @@ "img": "icons/equipment/waist/belt-buckle-ornate-steel.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" } }, "effects": [], @@ -51,12 +55,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640971116, - "modifiedTime": 1753641065768, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432474549, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!gFzkUGCjkRJtyoe9" } diff --git a/src/packs/items/loot/loot_Bloodstone_oMd78vhL2x2NO8Mg.json b/src/packs/items/loot/loot_Bloodstone_oMd78vhL2x2NO8Mg.json index f5a19dff..52a85f8a 100644 --- a/src/packs/items/loot/loot_Bloodstone_oMd78vhL2x2NO8Mg.json +++ b/src/packs/items/loot/loot_Bloodstone_oMd78vhL2x2NO8Mg.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this stone to a weapon that doesn’t already have a feature. The weapon gains the following feature.

Brutal: When you roll the maximum value on a damage die, roll an additional damage die.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637532005, - "modifiedTime": 1753637570344, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432124214, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!oMd78vhL2x2NO8Mg" } diff --git a/src/packs/items/loot/loot_Bolster_Relic_m3EpxlDgxn2tCDDR.json b/src/packs/items/loot/loot_Bolster_Relic_m3EpxlDgxn2tCDDR.json index 695b8a1c..719d3a37 100644 --- a/src/packs/items/loot/loot_Bolster_Relic_m3EpxlDgxn2tCDDR.json +++ b/src/packs/items/loot/loot_Bolster_Relic_m3EpxlDgxn2tCDDR.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Strength. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639461783, - "modifiedTime": 1753639473676, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432292506, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!m3EpxlDgxn2tCDDR" } diff --git a/src/packs/items/loot/loot_Box_of_Many_Goods_bZyT7Qw7iafswlTY.json b/src/packs/items/loot/loot_Box_of_Many_Goods_bZyT7Qw7iafswlTY.json index 3112c665..ee305349 100644 --- a/src/packs/items/loot/loot_Box_of_Many_Goods_bZyT7Qw7iafswlTY.json +++ b/src/packs/items/loot/loot_Box_of_Many_Goods_bZyT7Qw7iafswlTY.json @@ -53,6 +53,11 @@ "img": "icons/containers/boxes/crate-heavy-yellow.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -67,12 +72,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638361357, - "modifiedTime": 1753989365853, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432203301, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bZyT7Qw7iafswlTY" } diff --git a/src/packs/items/loot/loot_Calming_Pendant_tgFFMxpuRSiRrrEB.json b/src/packs/items/loot/loot_Calming_Pendant_tgFFMxpuRSiRrrEB.json index 82a1078a..8ba9f0bc 100644 --- a/src/packs/items/loot/loot_Calming_Pendant_tgFFMxpuRSiRrrEB.json +++ b/src/packs/items/loot/loot_Calming_Pendant_tgFFMxpuRSiRrrEB.json @@ -53,6 +53,11 @@ "img": "icons/equipment/neck/amulet-round-blue.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -67,12 +72,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637842111, - "modifiedTime": 1753989405747, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432160633, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tgFFMxpuRSiRrrEB" } diff --git a/src/packs/items/loot/loot_Charging_Quiver_gsUDP90d4SRtLEUn.json b/src/packs/items/loot/loot_Charging_Quiver_gsUDP90d4SRtLEUn.json index 19ef04c7..5bff2a6b 100644 --- a/src/packs/items/loot/loot_Charging_Quiver_gsUDP90d4SRtLEUn.json +++ b/src/packs/items/loot/loot_Charging_Quiver_gsUDP90d4SRtLEUn.json @@ -6,7 +6,12 @@ "system": { "description": "

When you succeed on an attack with an arrow stored in this quiver, gain a bonus to the damage roll equal to your current tier.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [ { @@ -78,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625025089, - "modifiedTime": 1753989432098, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755431911218, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!gsUDP90d4SRtLEUn" } diff --git a/src/packs/items/loot/loot_Charm_Relic_9P9jqGSlxVCbTdLe.json b/src/packs/items/loot/loot_Charm_Relic_9P9jqGSlxVCbTdLe.json index a1c80a2b..419c7b1d 100644 --- a/src/packs/items/loot/loot_Charm_Relic_9P9jqGSlxVCbTdLe.json +++ b/src/packs/items/loot/loot_Charm_Relic_9P9jqGSlxVCbTdLe.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Presence. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639686831, - "modifiedTime": 1753639719586, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432321075, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9P9jqGSlxVCbTdLe" } diff --git a/src/packs/items/loot/loot_Clay_Companion_lGIk9vBNz0jvskXD.json b/src/packs/items/loot/loot_Clay_Companion_lGIk9vBNz0jvskXD.json index d60c928c..e45c91b0 100644 --- a/src/packs/items/loot/loot_Clay_Companion_lGIk9vBNz0jvskXD.json +++ b/src/packs/items/loot/loot_Clay_Companion_lGIk9vBNz0jvskXD.json @@ -6,7 +6,12 @@ "system": { "description": "

When you sculpt this ball of clay into a clay animal companion, it behaves as that animal. For example, a clay spider can spin clay webs, while a clay bird can fly. The clay companion retains memory and identity across different shapes, but they can adopt new mannerisms with each form.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640057300, - "modifiedTime": 1753640276057, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432384479, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!lGIk9vBNz0jvskXD" } diff --git a/src/packs/items/loot/loot_Companion_Case_V25uXkAQvK3hUta4.json b/src/packs/items/loot/loot_Companion_Case_V25uXkAQvK3hUta4.json index 65854d4c..94b37cc8 100644 --- a/src/packs/items/loot/loot_Companion_Case_V25uXkAQvK3hUta4.json +++ b/src/packs/items/loot/loot_Companion_Case_V25uXkAQvK3hUta4.json @@ -6,7 +6,12 @@ "system": { "description": "

This case can fit a small animal companion. While the companion is inside, the animal and case are immune to all damage and harmful effects.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625898190, - "modifiedTime": 1753625935379, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432012809, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!V25uXkAQvK3hUta4" } diff --git a/src/packs/items/loot/loot_Control_Relic_QPGBDItjrRhXU6iJ.json b/src/packs/items/loot/loot_Control_Relic_QPGBDItjrRhXU6iJ.json index 9245934b..b2c0b796 100644 --- a/src/packs/items/loot/loot_Control_Relic_QPGBDItjrRhXU6iJ.json +++ b/src/packs/items/loot/loot_Control_Relic_QPGBDItjrRhXU6iJ.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Finesse. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639492071, - "modifiedTime": 1753639541446, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432304157, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QPGBDItjrRhXU6iJ" } diff --git a/src/packs/items/loot/loot_Corrector_Sprite_G0RktbmtnuAlKCRH.json b/src/packs/items/loot/loot_Corrector_Sprite_G0RktbmtnuAlKCRH.json index 4a1a0848..9519e392 100644 --- a/src/packs/items/loot/loot_Corrector_Sprite_G0RktbmtnuAlKCRH.json +++ b/src/packs/items/loot/loot_Corrector_Sprite_G0RktbmtnuAlKCRH.json @@ -29,6 +29,11 @@ "img": "icons/magic/light/orbs-smoke-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [], @@ -43,12 +48,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637155361, - "modifiedTime": 1753637366036, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432083881, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!G0RktbmtnuAlKCRH" } diff --git a/src/packs/items/loot/loot_Dual_Flask_HCvcAu3sdHCspGMP.json b/src/packs/items/loot/loot_Dual_Flask_HCvcAu3sdHCspGMP.json index f99220c9..3d6ab8be 100644 --- a/src/packs/items/loot/loot_Dual_Flask_HCvcAu3sdHCspGMP.json +++ b/src/packs/items/loot/loot_Dual_Flask_HCvcAu3sdHCspGMP.json @@ -6,7 +6,12 @@ "system": { "description": "

This flask can hold two different liquids. You can swap between them by flipping a small switch on the flask’s side.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637893309, - "modifiedTime": 1753637932763, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432168119, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!HCvcAu3sdHCspGMP" } diff --git a/src/packs/items/loot/loot_Elusive_Amulet_PkmTZXRMZL022O75.json b/src/packs/items/loot/loot_Elusive_Amulet_PkmTZXRMZL022O75.json index 6b007a29..215658b1 100644 --- a/src/packs/items/loot/loot_Elusive_Amulet_PkmTZXRMZL022O75.json +++ b/src/packs/items/loot/loot_Elusive_Amulet_PkmTZXRMZL022O75.json @@ -34,6 +34,11 @@ "img": "icons/equipment/neck/pendant-rough-silver-purple.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [ @@ -88,12 +93,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638931971, - "modifiedTime": 1753989758225, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432243222, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PkmTZXRMZL022O75" } diff --git a/src/packs/items/loot/loot_Empty_Chest_p2yy61uKsyIsl8cU.json b/src/packs/items/loot/loot_Empty_Chest_p2yy61uKsyIsl8cU.json index bb6ca519..ea8649d3 100644 --- a/src/packs/items/loot/loot_Empty_Chest_p2yy61uKsyIsl8cU.json +++ b/src/packs/items/loot/loot_Empty_Chest_p2yy61uKsyIsl8cU.json @@ -6,7 +6,12 @@ "system": { "description": "

This magical chest appears empty. When you speak a specific trigger word or action and open the chest, you can see the items stored within it.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625859659, - "modifiedTime": 1753625887033, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432002874, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!p2yy61uKsyIsl8cU" } diff --git a/src/packs/items/loot/loot_Enlighten_Relic_vSGx1f9SYUiA29L3.json b/src/packs/items/loot/loot_Enlighten_Relic_vSGx1f9SYUiA29L3.json index 0f992ddf..cbba2957 100644 --- a/src/packs/items/loot/loot_Enlighten_Relic_vSGx1f9SYUiA29L3.json +++ b/src/packs/items/loot/loot_Enlighten_Relic_vSGx1f9SYUiA29L3.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Knowledge. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639753586, - "modifiedTime": 1753639789835, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432328609, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!vSGx1f9SYUiA29L3" } diff --git a/src/packs/items/loot/loot_Fire_Jar_X6RMkIt89wf7qX2E.json b/src/packs/items/loot/loot_Fire_Jar_X6RMkIt89wf7qX2E.json index bcdda979..be48c507 100644 --- a/src/packs/items/loot/loot_Fire_Jar_X6RMkIt89wf7qX2E.json +++ b/src/packs/items/loot/loot_Fire_Jar_X6RMkIt89wf7qX2E.json @@ -29,6 +29,11 @@ "img": "icons/containers/kitchenware/jug-wrapped-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [], @@ -43,12 +48,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625575791, - "modifiedTime": 1753625617382, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431975757, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!X6RMkIt89wf7qX2E" } diff --git a/src/packs/items/loot/loot_Flickerfly_Pendant_9VKYSBQxN9XFWlAm.json b/src/packs/items/loot/loot_Flickerfly_Pendant_9VKYSBQxN9XFWlAm.json index bb7f8495..4f87a4d2 100644 --- a/src/packs/items/loot/loot_Flickerfly_Pendant_9VKYSBQxN9XFWlAm.json +++ b/src/packs/items/loot/loot_Flickerfly_Pendant_9VKYSBQxN9XFWlAm.json @@ -6,7 +6,12 @@ "system": { "description": "

While you carry this pendant, your weapons with a Melee range that deal physical damage have a gossamer sheen and can attack targets within Very Close range.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639935227, - "modifiedTime": 1753639964153, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432355676, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9VKYSBQxN9XFWlAm" } diff --git a/src/packs/items/loot/loot_Gecko_Gloves_CGzjBpHJRG8KSt5Y.json b/src/packs/items/loot/loot_Gecko_Gloves_CGzjBpHJRG8KSt5Y.json index 3dbdae76..578eb7c5 100644 --- a/src/packs/items/loot/loot_Gecko_Gloves_CGzjBpHJRG8KSt5Y.json +++ b/src/packs/items/loot/loot_Gecko_Gloves_CGzjBpHJRG8KSt5Y.json @@ -6,7 +6,12 @@ "system": { "description": "

You can climb up vertical surfaces and across ceilings.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637390470, - "modifiedTime": 1753637455936, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432092979, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CGzjBpHJRG8KSt5Y" } diff --git a/src/packs/items/loot/loot_Gem_of_Alacrity_zecFwBUSWtB3HW8X.json b/src/packs/items/loot/loot_Gem_of_Alacrity_zecFwBUSWtB3HW8X.json index 86b17e74..68eef682 100644 --- a/src/packs/items/loot/loot_Gem_of_Alacrity_zecFwBUSWtB3HW8X.json +++ b/src/packs/items/loot/loot_Gem_of_Alacrity_zecFwBUSWtB3HW8X.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Agility when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640285473, - "modifiedTime": 1753640317903, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432422196, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zecFwBUSWtB3HW8X" } diff --git a/src/packs/items/loot/loot_Gem_of_Audacity_hMu9It3ThCLCXuCA.json b/src/packs/items/loot/loot_Gem_of_Audacity_hMu9It3ThCLCXuCA.json index 07d44a2c..b592cd2d 100644 --- a/src/packs/items/loot/loot_Gem_of_Audacity_hMu9It3ThCLCXuCA.json +++ b/src/packs/items/loot/loot_Gem_of_Audacity_hMu9It3ThCLCXuCA.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Presence when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640590771, - "modifiedTime": 1753640602606, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432430946, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hMu9It3ThCLCXuCA" } diff --git a/src/packs/items/loot/loot_Gem_of_Insight_TbgeT9ZxKHqFqJSN.json b/src/packs/items/loot/loot_Gem_of_Insight_TbgeT9ZxKHqFqJSN.json index 03743b23..7f75d412 100644 --- a/src/packs/items/loot/loot_Gem_of_Insight_TbgeT9ZxKHqFqJSN.json +++ b/src/packs/items/loot/loot_Gem_of_Insight_TbgeT9ZxKHqFqJSN.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Instinct when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640563344, - "modifiedTime": 1753640580953, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432436597, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TbgeT9ZxKHqFqJSN" } diff --git a/src/packs/items/loot/loot_Gem_of_Might_rtSInNPc4B3ChBUZ.json b/src/packs/items/loot/loot_Gem_of_Might_rtSInNPc4B3ChBUZ.json index 8395388f..19d6f2c4 100644 --- a/src/packs/items/loot/loot_Gem_of_Might_rtSInNPc4B3ChBUZ.json +++ b/src/packs/items/loot/loot_Gem_of_Might_rtSInNPc4B3ChBUZ.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Strength when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640512721, - "modifiedTime": 1753640527143, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432442699, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!rtSInNPc4B3ChBUZ" } diff --git a/src/packs/items/loot/loot_Gem_of_Precision_CrvJ7vb4s40YgEcy.json b/src/packs/items/loot/loot_Gem_of_Precision_CrvJ7vb4s40YgEcy.json index 6dc57398..0d10ff19 100644 --- a/src/packs/items/loot/loot_Gem_of_Precision_CrvJ7vb4s40YgEcy.json +++ b/src/packs/items/loot/loot_Gem_of_Precision_CrvJ7vb4s40YgEcy.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Finesse when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640535939, - "modifiedTime": 1753640553552, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432448347, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CrvJ7vb4s40YgEcy" } diff --git a/src/packs/items/loot/loot_Gem_of_Sagacity_ua351S7CsH22X1x2.json b/src/packs/items/loot/loot_Gem_of_Sagacity_ua351S7CsH22X1x2.json index 4128007b..cb3de994 100644 --- a/src/packs/items/loot/loot_Gem_of_Sagacity_ua351S7CsH22X1x2.json +++ b/src/packs/items/loot/loot_Gem_of_Sagacity_ua351S7CsH22X1x2.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this gem to a weapon, allowing you to use your Knowledge when making an attack with that weapon.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640610217, - "modifiedTime": 1753640623916, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432454597, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ua351S7CsH22X1x2" } diff --git a/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json b/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json index dacc4376..98714741 100644 --- a/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json +++ b/src/packs/items/loot/loot_Glamour_Stone_Pj17cvdJ1XG1jv6I.json @@ -11,12 +11,11 @@ "type": "effect", "_id": "ATQgH12mufTOQLKs", "systemPath": "actions", - "description": "", + "description": "

Activate this pebble-sized stone to memorize the appearance of someone you can see. Spend a Hope to magically recreate this guise on yourself as an illusion.

", "chatDisplay": true, "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -25,21 +24,76 @@ ], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, - "effects": [], + "effects": [ + { + "_id": "K5SB6tfuDkdVaQYe", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Create Illusion", "img": "icons/commodities/treasure/token-engraved-purple-glowing.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, - "effects": [], + "effects": [ + { + "name": "Glamour Stone", + "img": "icons/commodities/treasure/token-engraved-purple-glowing.webp", + "origin": "Compendium.daggerheart.loot.Item.Pj17cvdJ1XG1jv6I", + "transfer": false, + "_id": "K5SB6tfuDkdVaQYe", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

Activate this pebble-sized stone to memorize the appearance of someone you can see. Spend a Hope to magically recreate this guise on yourself as an illusion.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756042876194, + "modifiedTime": 1756042884422, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!Pj17cvdJ1XG1jv6I.K5SB6tfuDkdVaQYe" + } + ], "folder": null, "sort": 0, "ownership": { @@ -51,12 +105,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753625773657, - "modifiedTime": 1753625847459, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1756042876216, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!Pj17cvdJ1XG1jv6I" } diff --git a/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json b/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json index 799e170f..2dfce26c 100644 --- a/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json +++ b/src/packs/items/loot/loot_Glider_CiXwelozmBDcPY48.json @@ -19,7 +19,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -37,6 +36,11 @@ "img": "icons/commodities/leather/leather-patch-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -51,12 +55,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637642501, - "modifiedTime": 1753989923053, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432142381, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CiXwelozmBDcPY48" } diff --git a/src/packs/items/loot/loot_Greatstone_y7zABzR0Q2fRskTw.json b/src/packs/items/loot/loot_Greatstone_y7zABzR0Q2fRskTw.json index e19ac9a6..72d434f9 100644 --- a/src/packs/items/loot/loot_Greatstone_y7zABzR0Q2fRskTw.json +++ b/src/packs/items/loot/loot_Greatstone_y7zABzR0Q2fRskTw.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this stone to a weapon that doesn’t already have a feature. The weapon gains the following feature.

Powerful: On a successful attack, roll an additional damage die and discard the lowest result.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637596921, - "modifiedTime": 1753637633941, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432133748, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!y7zABzR0Q2fRskTw" } diff --git a/src/packs/items/loot/loot_Homing_Compasses_yrAGYlDyoe4OYl7d.json b/src/packs/items/loot/loot_Homing_Compasses_yrAGYlDyoe4OYl7d.json index be6e9ad5..93bbb201 100644 --- a/src/packs/items/loot/loot_Homing_Compasses_yrAGYlDyoe4OYl7d.json +++ b/src/packs/items/loot/loot_Homing_Compasses_yrAGYlDyoe4OYl7d.json @@ -6,7 +6,12 @@ "system": { "description": "

These two compasses point toward each other no matter how far apart they are.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637089789, - "modifiedTime": 1753637129113, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432074527, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!yrAGYlDyoe4OYl7d" } diff --git a/src/packs/items/loot/loot_Honing_Relic_SAAnEAeXDnhBbLjB.json b/src/packs/items/loot/loot_Honing_Relic_SAAnEAeXDnhBbLjB.json index 4fb5b0de..6bf34bee 100644 --- a/src/packs/items/loot/loot_Honing_Relic_SAAnEAeXDnhBbLjB.json +++ b/src/packs/items/loot/loot_Honing_Relic_SAAnEAeXDnhBbLjB.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to an Experience of your choice. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639799902, - "modifiedTime": 1753639815534, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432343825, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SAAnEAeXDnhBbLjB" } diff --git a/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json b/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json index 6899908f..f1eac926 100644 --- a/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json +++ b/src/packs/items/loot/loot_Hopekeeper_Locket_9DcFR75tsnBYIp6Z.json @@ -16,7 +16,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -99,6 +98,11 @@ "img": "icons/equipment/neck/amulet-round-engraved-spiral-gold.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -113,12 +117,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639224510, - "modifiedTime": 1753639329411, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432255622, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9DcFR75tsnBYIp6Z" } diff --git a/src/packs/items/loot/loot_Infinite_Bag_Iedjw1LVWEozVh0J.json b/src/packs/items/loot/loot_Infinite_Bag_Iedjw1LVWEozVh0J.json index 83044c0f..1a82453c 100644 --- a/src/packs/items/loot/loot_Infinite_Bag_Iedjw1LVWEozVh0J.json +++ b/src/packs/items/loot/loot_Infinite_Bag_Iedjw1LVWEozVh0J.json @@ -6,7 +6,12 @@ "system": { "description": "

When you store items in this bag, they are kept in a pocket dimension that never runs out of space. You can retrieve an item at any time.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639339762, - "modifiedTime": 1753639361505, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432274021, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Iedjw1LVWEozVh0J" } diff --git a/src/packs/items/loot/loot_Lakestrider_Boots_NgvmrJYKpA2PrRSo.json b/src/packs/items/loot/loot_Lakestrider_Boots_NgvmrJYKpA2PrRSo.json index b64c2faf..1c5a2c64 100644 --- a/src/packs/items/loot/loot_Lakestrider_Boots_NgvmrJYKpA2PrRSo.json +++ b/src/packs/items/loot/loot_Lakestrider_Boots_NgvmrJYKpA2PrRSo.json @@ -6,7 +6,12 @@ "system": { "description": "

You can walk on the surface of water as if it were soft ground.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639975496, - "modifiedTime": 1753639999823, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432366912, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!NgvmrJYKpA2PrRSo" } diff --git a/src/packs/items/loot/loot_Lorekeeper_JsPYzrqpITqGj23I.json b/src/packs/items/loot/loot_Lorekeeper_JsPYzrqpITqGj23I.json index 8a1fd26e..16bb3186 100644 --- a/src/packs/items/loot/loot_Lorekeeper_JsPYzrqpITqGj23I.json +++ b/src/packs/items/loot/loot_Lorekeeper_JsPYzrqpITqGj23I.json @@ -6,7 +6,12 @@ "system": { "description": "

You can store the name and details of up to three hostile creatures inside this book. You gain a +1 bonus to action rolls against those creatures.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637467427, - "modifiedTime": 1753637489198, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432101012, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!JsPYzrqpITqGj23I" } diff --git a/src/packs/items/loot/loot_Manacles_GkmATIuemyFtQX1D.json b/src/packs/items/loot/loot_Manacles_GkmATIuemyFtQX1D.json index cbeb9f38..ba762c74 100644 --- a/src/packs/items/loot/loot_Manacles_GkmATIuemyFtQX1D.json +++ b/src/packs/items/loot/loot_Manacles_GkmATIuemyFtQX1D.json @@ -6,7 +6,12 @@ "system": { "description": "

This pair of locking cuffs comes with a key.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625337217, - "modifiedTime": 1753625362038, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431952005, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GkmATIuemyFtQX1D" } diff --git a/src/packs/items/loot/loot_Minor_Health_Potion_Recipe_PQxvxAVBbkt0TleC.json b/src/packs/items/loot/loot_Minor_Health_Potion_Recipe_PQxvxAVBbkt0TleC.json index 2d8c286b..a84e783a 100644 --- a/src/packs/items/loot/loot_Minor_Health_Potion_Recipe_PQxvxAVBbkt0TleC.json +++ b/src/packs/items/loot/loot_Minor_Health_Potion_Recipe_PQxvxAVBbkt0TleC.json @@ -6,7 +6,12 @@ "system": { "description": "

As a downtime move, you can use a vial of blood to craft a Minor Health Potion.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637045921, - "modifiedTime": 1753637071130, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432066493, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PQxvxAVBbkt0TleC" } diff --git a/src/packs/items/loot/loot_Minor_Stamina_Potion_Recipe_1TLpFsp3PLDsqoTw.json b/src/packs/items/loot/loot_Minor_Stamina_Potion_Recipe_1TLpFsp3PLDsqoTw.json index d963d82d..8069ae69 100644 --- a/src/packs/items/loot/loot_Minor_Stamina_Potion_Recipe_1TLpFsp3PLDsqoTw.json +++ b/src/packs/items/loot/loot_Minor_Stamina_Potion_Recipe_1TLpFsp3PLDsqoTw.json @@ -6,7 +6,12 @@ "system": { "description": "

As a downtime move, you can use the bone of a creature to craft a Minor Stamina Potion.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626639554, - "modifiedTime": 1753626666369, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432058259, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1TLpFsp3PLDsqoTw" } diff --git a/src/packs/items/loot/loot_Mythic_Dust_Recipe_5YZls8XH3MB7twNa.json b/src/packs/items/loot/loot_Mythic_Dust_Recipe_5YZls8XH3MB7twNa.json index 2325a405..dfc1916d 100644 --- a/src/packs/items/loot/loot_Mythic_Dust_Recipe_5YZls8XH3MB7twNa.json +++ b/src/packs/items/loot/loot_Mythic_Dust_Recipe_5YZls8XH3MB7twNa.json @@ -6,7 +6,12 @@ "system": { "description": "

As a downtime move, you can use a handful of fine gold dust to craft Mythic Dust.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640163566, - "modifiedTime": 1753640190943, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432395196, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!5YZls8XH3MB7twNa" } diff --git a/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json b/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json index f62b7895..59260e5d 100644 --- a/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json +++ b/src/packs/items/loot/loot_Paragon_s_Chain_F4hoRfvVdZq5bhhI.json @@ -16,7 +16,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -37,6 +36,11 @@ "img": "icons/equipment/neck/choker-chain-thin-gold.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [], @@ -51,12 +55,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638721391, - "modifiedTime": 1753638917868, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432230353, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!F4hoRfvVdZq5bhhI" } diff --git a/src/packs/items/loot/loot_Phoenix_Feather_QNtzJSVENww63THa.json b/src/packs/items/loot/loot_Phoenix_Feather_QNtzJSVENww63THa.json index a51d206b..2cd09252 100644 --- a/src/packs/items/loot/loot_Phoenix_Feather_QNtzJSVENww63THa.json +++ b/src/packs/items/loot/loot_Phoenix_Feather_QNtzJSVENww63THa.json @@ -6,7 +6,12 @@ "system": { "description": "

If you have at least one Phoenix Feather on you when you fall unconscious, you gain a +1 bonus to the roll you make to determine whether you gain a scar.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638285123, - "modifiedTime": 1753638336982, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432194183, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QNtzJSVENww63THa" } diff --git a/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json b/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json index a3789138..26845282 100644 --- a/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json +++ b/src/packs/items/loot/loot_Piercing_Arrows_I63LTFD6GXHgyGpR.json @@ -11,7 +11,7 @@ "type": "effect", "_id": "DW5AqEM0F8XaUqpn", "systemPath": "actions", - "description": "", + "description": "

Three times per rest when you succeed on an attack with one of these arrows, you can add your Proficiency to the damage roll.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -29,6 +29,11 @@ "img": "icons/weapons/ammunition/arrow-broadhead-glowing-orange.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [ @@ -101,12 +106,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753625947079, - "modifiedTime": 1753990194353, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756042964027, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!I63LTFD6GXHgyGpR" } diff --git a/src/packs/items/loot/loot_Piper_Whistle_v4PIoCCEjeE3acys.json b/src/packs/items/loot/loot_Piper_Whistle_v4PIoCCEjeE3acys.json index b0e2954c..1a059ae1 100644 --- a/src/packs/items/loot/loot_Piper_Whistle_v4PIoCCEjeE3acys.json +++ b/src/packs/items/loot/loot_Piper_Whistle_v4PIoCCEjeE3acys.json @@ -6,7 +6,12 @@ "system": { "description": "

This handcrafted whistle has a distinctive sound. When you blow this whistle, its piercing tone can be heard within a 1-mile radius.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753624968366, - "modifiedTime": 1753625011843, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431902952, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!v4PIoCCEjeE3acys" } diff --git a/src/packs/items/loot/loot_Portal_Seed_eRd5Gk7J7hPCqp11.json b/src/packs/items/loot/loot_Portal_Seed_eRd5Gk7J7hPCqp11.json index 4eb1e0d7..d09850e3 100644 --- a/src/packs/items/loot/loot_Portal_Seed_eRd5Gk7J7hPCqp11.json +++ b/src/packs/items/loot/loot_Portal_Seed_eRd5Gk7J7hPCqp11.json @@ -6,7 +6,12 @@ "system": { "description": "

You can plant this seed in the ground to grow a portal in that spot. The portal is ready to use in 24 hours. You can use this portal to travel to any other location where you planted a portal seed. A portal can be destroyed by dealing any amount of magic damage to it.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753638512020, - "modifiedTime": 1753638586392, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432221837, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!eRd5Gk7J7hPCqp11" } diff --git a/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json b/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json index 9d90b78b..1a2b7f62 100644 --- a/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json +++ b/src/packs/items/loot/loot_Premium_Bedroll_QGYPNBIufpBguwjC.json @@ -17,11 +17,11 @@ "cost": [], "uses": { "value": null, - "max": null, + "max": "", "recovery": null }, "target": { - "type": "any", + "type": "self", "amount": null }, "effects": [], @@ -68,6 +68,11 @@ "img": "icons/sundries/survival/bedroll-blue-red.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [], @@ -82,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753624827945, - "modifiedTime": 1753624908866, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1756042976231, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!QGYPNBIufpBguwjC" } diff --git a/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json b/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json index f241cf1f..1fa60198 100644 --- a/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json +++ b/src/packs/items/loot/loot_Ring_of_Resistance_aUqRifqR5JXXa1dN.json @@ -11,7 +11,7 @@ "type": "effect", "_id": "4swwe8SZeh2KyPtl", "systemPath": "actions", - "description": "", + "description": "

Once per long rest, you can activate this ring after a successful attack against you to halve the damage.

", "chatDisplay": true, "actionType": "action", "cost": [], @@ -20,18 +20,86 @@ "max": 1, "recovery": "longRest" }, - "effects": [], + "effects": [ + { + "_id": "Sj7uGf560T7u4rlX", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Activate", "img": "icons/equipment/finger/ring-shield-silver.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, - "effects": [], + "effects": [ + { + "name": "Ring of Resistance", + "img": "icons/equipment/finger/ring-shield-silver.webp", + "origin": "Compendium.daggerheart.loot.Item.aUqRifqR5JXXa1dN", + "transfer": false, + "_id": "Sj7uGf560T7u4rlX", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "changes": [ + { + "key": "system.resistance.magical.resistance", + "mode": 5, + "value": "1", + "priority": null + }, + { + "key": "system.resistance.physical.resistance", + "mode": 5, + "value": "1", + "priority": null + } + ], + "disabled": false, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

Once per long rest, you can activate this ring after a successful attack against you to halve the damage.

", + "tint": "#ffffff", + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756043003002, + "modifiedTime": 1756043032046, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!aUqRifqR5JXXa1dN.Sj7uGf560T7u4rlX" + } + ], "folder": null, "sort": 0, "ownership": { @@ -43,12 +111,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753638222884, - "modifiedTime": 1753638266245, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1756043010729, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!aUqRifqR5JXXa1dN" } diff --git a/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json b/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json index 502c73b2..d6e15140 100644 --- a/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json +++ b/src/packs/items/loot/loot_Ring_of_Silence_K1ysGnTpNyxPu5Au.json @@ -11,12 +11,11 @@ "type": "effect", "_id": "Y4mvuJ4tncrKhyjY", "systemPath": "actions", - "description": "", + "description": "

Spend a Hope to activate this ring. Your footsteps are silent until your next rest.

", "chatDisplay": true, "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -28,23 +27,35 @@ "max": 1, "recovery": "shortRest" }, - "effects": [], + "effects": [ + { + "_id": "9JSLRu7amQ4iuIO7", + "onSave": false + } + ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Activate", "img": "icons/equipment/finger/ring-ball-purple.webp", - "range": "" + "range": "self" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" } }, "effects": [ { "name": "Ring of Silence", - "type": "base", - "_id": "aCt3QjdeTREZAlEa", "img": "icons/equipment/finger/ring-ball-purple.webp", + "origin": "Compendium.daggerheart.loot.Item.K1ysGnTpNyxPu5Au", + "transfer": false, + "_id": "9JSLRu7amQ4iuIO7", + "type": "base", "system": { "rangeDependence": { "enabled": false, @@ -54,7 +65,7 @@ } }, "changes": [], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -64,10 +75,8 @@ "startRound": null, "startTurn": null }, - "description": "

Your footsteps are silent until your next rest.

", - "origin": null, + "description": "

Your footsteps are silent until your next rest.

", "tint": "#ffffff", - "transfer": true, "statuses": [], "sort": 0, "flags": {}, @@ -75,14 +84,14 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753990311274, - "modifiedTime": 1753990345889, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "systemVersion": "1.1.0", + "createdTime": 1756043091753, + "modifiedTime": 1756043101742, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, - "_key": "!items.effects!K1ysGnTpNyxPu5Au.aCt3QjdeTREZAlEa" + "_key": "!items.effects!K1ysGnTpNyxPu5Au.9JSLRu7amQ4iuIO7" } ], "folder": null, @@ -96,12 +105,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1753637775628, - "modifiedTime": 1753637832657, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1756043091776, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!K1ysGnTpNyxPu5Au" } diff --git a/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json b/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json index 94f8bdec..99f856da 100644 --- a/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json +++ b/src/packs/items/loot/loot_Ring_of_Unbreakable_Resolve_kn71qCQY0DnjmQBJ.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hope", "value": 4, - "keyIsID": false, "step": null } ], @@ -37,6 +36,11 @@ "img": "icons/equipment/finger/ring-faceted-gold-teal.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" } }, "effects": [], @@ -51,12 +55,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640632212, - "modifiedTime": 1753640958684, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432465536, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!kn71qCQY0DnjmQBJ" } diff --git a/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json b/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json index 46beee5a..efc12e63 100644 --- a/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json +++ b/src/packs/items/loot/loot_Shard_of_Memory_2ULPgNyqCrxea0v0.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], @@ -37,6 +36,11 @@ "img": "icons/commodities/gems/gem-rough-navette-purple-pink.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 60, + "artist": "" } }, "effects": [], @@ -51,12 +55,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753640199098, - "modifiedTime": 1753990369010, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755432405079, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2ULPgNyqCrxea0v0" } diff --git a/src/packs/items/loot/loot_Skeleton_Key_edkNgwy4xghZreBa.json b/src/packs/items/loot/loot_Skeleton_Key_edkNgwy4xghZreBa.json index 4b480459..d05a0de4 100644 --- a/src/packs/items/loot/loot_Skeleton_Key_edkNgwy4xghZreBa.json +++ b/src/packs/items/loot/loot_Skeleton_Key_edkNgwy4xghZreBa.json @@ -53,6 +53,11 @@ "img": "icons/sundries/misc/key-ornate-iron-black.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [], @@ -67,12 +72,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626370278, - "modifiedTime": 1753626508104, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432037375, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!edkNgwy4xghZreBa" } diff --git a/src/packs/items/loot/loot_Speaking_Orbs_LZrG6CFiSjpLA2F1.json b/src/packs/items/loot/loot_Speaking_Orbs_LZrG6CFiSjpLA2F1.json index 1239b6ab..af9fc42c 100644 --- a/src/packs/items/loot/loot_Speaking_Orbs_LZrG6CFiSjpLA2F1.json +++ b/src/packs/items/loot/loot_Speaking_Orbs_LZrG6CFiSjpLA2F1.json @@ -6,7 +6,12 @@ "system": { "description": "

This pair of orbs allows any creatures holding them to communicate with each other across any distance.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625222662, - "modifiedTime": 1753625327080, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431943587, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!LZrG6CFiSjpLA2F1" } diff --git a/src/packs/items/loot/loot_Stride_Relic_FfJISMzYATaPQPLc.json b/src/packs/items/loot/loot_Stride_Relic_FfJISMzYATaPQPLc.json index 9f169207..15edb13a 100644 --- a/src/packs/items/loot/loot_Stride_Relic_FfJISMzYATaPQPLc.json +++ b/src/packs/items/loot/loot_Stride_Relic_FfJISMzYATaPQPLc.json @@ -6,7 +6,12 @@ "system": { "description": "

You gain a +1 bonus to your Agility. You can only carry one relic.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [ { @@ -65,12 +70,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753639376996, - "modifiedTime": 1753639432017, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432282538, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!FfJISMzYATaPQPLc" } diff --git a/src/packs/items/loot/loot_Suspended_Rod_nnj12RiFanq7s5zv.json b/src/packs/items/loot/loot_Suspended_Rod_nnj12RiFanq7s5zv.json index 83ca772a..7932eb77 100644 --- a/src/packs/items/loot/loot_Suspended_Rod_nnj12RiFanq7s5zv.json +++ b/src/packs/items/loot/loot_Suspended_Rod_nnj12RiFanq7s5zv.json @@ -6,7 +6,12 @@ "system": { "description": "

This flat rod is inscribed with runes. When you activate the rod, it is immediately suspended in place. Until the rod is deactivated, it can’t move, doesn’t abide by the rules of gravity, and remains in place.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625627433, - "modifiedTime": 1753625765676, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431985810, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nnj12RiFanq7s5zv" } diff --git a/src/packs/items/loot/loot_Valorstone_7yywua9TmQ4WP5WH.json b/src/packs/items/loot/loot_Valorstone_7yywua9TmQ4WP5WH.json index 6970a396..39cb89d7 100644 --- a/src/packs/items/loot/loot_Valorstone_7yywua9TmQ4WP5WH.json +++ b/src/packs/items/loot/loot_Valorstone_7yywua9TmQ4WP5WH.json @@ -6,7 +6,12 @@ "system": { "description": "

You can attach this stone to armor that doesn’t already have a feature. The armor gains the following feature.

Resilient: Before you mark your last Armor Slot, roll a d6. On a result of 6, reduce the severity by one threshold without marking an Armor Slot.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753626167593, - "modifiedTime": 1753626237350, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432029408, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!7yywua9TmQ4WP5WH" } diff --git a/src/packs/items/loot/loot_Vial_of_Darksmoke_Recipe_MhCo8i0cRXzdnXbA.json b/src/packs/items/loot/loot_Vial_of_Darksmoke_Recipe_MhCo8i0cRXzdnXbA.json index d9ad7e17..29bb21fc 100644 --- a/src/packs/items/loot/loot_Vial_of_Darksmoke_Recipe_MhCo8i0cRXzdnXbA.json +++ b/src/packs/items/loot/loot_Vial_of_Darksmoke_Recipe_MhCo8i0cRXzdnXbA.json @@ -6,7 +6,12 @@ "system": { "description": "

As a downtime move, you can mark a Stress to craft a Vial of Darksmoke.

", "quantity": 1, - "actions": {} + "actions": {}, + "attribution": { + "source": "Daggerheart SRD", + "page": 59, + "artist": "" + } }, "effects": [], "folder": null, @@ -20,12 +25,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753637508452, - "modifiedTime": 1753637524868, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755432114401, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MhCo8i0cRXzdnXbA" } diff --git a/src/packs/items/loot/loot_Woven_Net_ARuv48PWUGJGBC4n.json b/src/packs/items/loot/loot_Woven_Net_ARuv48PWUGJGBC4n.json index 3013f603..32fa6c6b 100644 --- a/src/packs/items/loot/loot_Woven_Net_ARuv48PWUGJGBC4n.json +++ b/src/packs/items/loot/loot_Woven_Net_ARuv48PWUGJGBC4n.json @@ -58,6 +58,11 @@ "img": "icons/tools/fishing/net-tan.webp", "range": "" } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 58, + "artist": "" } }, "effects": [ @@ -144,12 +149,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.344", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753625403538, - "modifiedTime": 1753625550934, - "lastModifiedBy": "OFxauskoxcvVTVNA" + "modifiedTime": 1755431968372, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ARuv48PWUGJGBC4n" } diff --git a/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json b/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json index 0dc1f068..03472e33 100644 --- a/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json +++ b/src/packs/items/weapons/weapon_Aantari_Bow_ijodu5yNBoMxpkHV.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753835285790, - "modifiedTime": 1754815224721, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755431272519, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ijodu5yNBoMxpkHV" } diff --git a/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json b/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json index 0abfe057..db39bfcf 100644 --- a/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json +++ b/src/packs/items/weapons/weapon_Advanced_Arcane_Frame_Wheelchair_la3sAWgnvadc4NvP.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -159,10 +164,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753836715885, - "modifiedTime": 1754845968271, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430195943, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "la3sAWgnvadc4NvP", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Advanced_Arcane_Gauntlets_hXR56fTKwZ6s1obs.json b/src/packs/items/weapons/weapon_Advanced_Arcane_Gauntlets_hXR56fTKwZ6s1obs.json index 7e06132f..5e75aae7 100644 --- a/src/packs/items/weapons/weapon_Advanced_Arcane_Gauntlets_hXR56fTKwZ6s1obs.json +++ b/src/packs/items/weapons/weapon_Advanced_Arcane_Gauntlets_hXR56fTKwZ6s1obs.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833079329, - "modifiedTime": 1753833112531, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431151799, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hXR56fTKwZ6s1obs" } diff --git a/src/packs/items/weapons/weapon_Advanced_Battleaxe_FcbvY1ydbNVMjKvk.json b/src/packs/items/weapons/weapon_Advanced_Battleaxe_FcbvY1ydbNVMjKvk.json index b99dee62..ad176f61 100644 --- a/src/packs/items/weapons/weapon_Advanced_Battleaxe_FcbvY1ydbNVMjKvk.json +++ b/src/packs/items/weapons/weapon_Advanced_Battleaxe_FcbvY1ydbNVMjKvk.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831668041, - "modifiedTime": 1753831689481, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430983569, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!FcbvY1ydbNVMjKvk" } diff --git a/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json b/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json index 19a6d9bf..927b0310 100644 --- a/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json +++ b/src/packs/items/weapons/weapon_Advanced_Broadsword_WtQAGz0TUgz8Xg70.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753831599435, - "modifiedTime": 1754814950120, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430988859, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WtQAGz0TUgz8Xg70" } diff --git a/src/packs/items/weapons/weapon_Advanced_Crossbow_3HGs0AgVrdIBTaKG.json b/src/packs/items/weapons/weapon_Advanced_Crossbow_3HGs0AgVrdIBTaKG.json index cd64eb4b..017002b4 100644 --- a/src/packs/items/weapons/weapon_Advanced_Crossbow_3HGs0AgVrdIBTaKG.json +++ b/src/packs/items/weapons/weapon_Advanced_Crossbow_3HGs0AgVrdIBTaKG.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832024062, - "modifiedTime": 1753832046861, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430993878, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3HGs0AgVrdIBTaKG" } diff --git a/src/packs/items/weapons/weapon_Advanced_Cutlass_bw9WO9lxkM9bWZxQ.json b/src/packs/items/weapons/weapon_Advanced_Cutlass_bw9WO9lxkM9bWZxQ.json index f2dd3e0f..2c00a2cf 100644 --- a/src/packs/items/weapons/weapon_Advanced_Cutlass_bw9WO9lxkM9bWZxQ.json +++ b/src/packs/items/weapons/weapon_Advanced_Cutlass_bw9WO9lxkM9bWZxQ.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831881396, - "modifiedTime": 1753831904535, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430999379, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bw9WO9lxkM9bWZxQ" } diff --git a/src/packs/items/weapons/weapon_Advanced_Dagger_mrioysDjNQEIE8hN.json b/src/packs/items/weapons/weapon_Advanced_Dagger_mrioysDjNQEIE8hN.json index 17aa209b..9fd77076 100644 --- a/src/packs/items/weapons/weapon_Advanced_Dagger_mrioysDjNQEIE8hN.json +++ b/src/packs/items/weapons/weapon_Advanced_Dagger_mrioysDjNQEIE8hN.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831785214, - "modifiedTime": 1753831814649, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431005188, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mrioysDjNQEIE8hN" } diff --git a/src/packs/items/weapons/weapon_Advanced_Dualstaff_X5x3sC7v2f3L9sjL.json b/src/packs/items/weapons/weapon_Advanced_Dualstaff_X5x3sC7v2f3L9sjL.json index dc665696..eed619c5 100644 --- a/src/packs/items/weapons/weapon_Advanced_Dualstaff_X5x3sC7v2f3L9sjL.json +++ b/src/packs/items/weapons/weapon_Advanced_Dualstaff_X5x3sC7v2f3L9sjL.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833383897, - "modifiedTime": 1753833411958, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431162464, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!X5x3sC7v2f3L9sjL" } diff --git a/src/packs/items/weapons/weapon_Advanced_Glowing_Rings_InQoh8mZPnwarQkX.json b/src/packs/items/weapons/weapon_Advanced_Glowing_Rings_InQoh8mZPnwarQkX.json index c647f3da..338ddc71 100644 --- a/src/packs/items/weapons/weapon_Advanced_Glowing_Rings_InQoh8mZPnwarQkX.json +++ b/src/packs/items/weapons/weapon_Advanced_Glowing_Rings_InQoh8mZPnwarQkX.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833176806, - "modifiedTime": 1753833243855, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431169037, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!InQoh8mZPnwarQkX" } diff --git a/src/packs/items/weapons/weapon_Advanced_Grappler_7vvhVl4TDJHtjpFK.json b/src/packs/items/weapons/weapon_Advanced_Grappler_7vvhVl4TDJHtjpFK.json index ffb6bb44..4477b871 100644 --- a/src/packs/items/weapons/weapon_Advanced_Grappler_7vvhVl4TDJHtjpFK.json +++ b/src/packs/items/weapons/weapon_Advanced_Grappler_7vvhVl4TDJHtjpFK.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753795033661, - "modifiedTime": 1753795079243, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430411064, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!7vvhVl4TDJHtjpFK" } diff --git a/src/packs/items/weapons/weapon_Advanced_Greatstaff_4UzxqfkwF8gDSdu7.json b/src/packs/items/weapons/weapon_Advanced_Greatstaff_4UzxqfkwF8gDSdu7.json index cbd63dd5..dd768c28 100644 --- a/src/packs/items/weapons/weapon_Advanced_Greatstaff_4UzxqfkwF8gDSdu7.json +++ b/src/packs/items/weapons/weapon_Advanced_Greatstaff_4UzxqfkwF8gDSdu7.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833576312, - "modifiedTime": 1753833602381, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431174265, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4UzxqfkwF8gDSdu7" } diff --git a/src/packs/items/weapons/weapon_Advanced_Greatsword_MAC6YWTo4lzSotQc.json b/src/packs/items/weapons/weapon_Advanced_Greatsword_MAC6YWTo4lzSotQc.json index 81d05554..d1dff9f7 100644 --- a/src/packs/items/weapons/weapon_Advanced_Greatsword_MAC6YWTo4lzSotQc.json +++ b/src/packs/items/weapons/weapon_Advanced_Greatsword_MAC6YWTo4lzSotQc.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -162,12 +167,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831701352, - "modifiedTime": 1753831723203, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431010340, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MAC6YWTo4lzSotQc" } diff --git a/src/packs/items/weapons/weapon_Advanced_Halberd_C8gQn7onAc9wsrCs.json b/src/packs/items/weapons/weapon_Advanced_Halberd_C8gQn7onAc9wsrCs.json index d314f604..cc9dddea 100644 --- a/src/packs/items/weapons/weapon_Advanced_Halberd_C8gQn7onAc9wsrCs.json +++ b/src/packs/items/weapons/weapon_Advanced_Halberd_C8gQn7onAc9wsrCs.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831933214, - "modifiedTime": 1753831956886, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431016287, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!C8gQn7onAc9wsrCs" } diff --git a/src/packs/items/weapons/weapon_Advanced_Hallowed_Axe_BiyXKX2Mo1TQbKgk.json b/src/packs/items/weapons/weapon_Advanced_Hallowed_Axe_BiyXKX2Mo1TQbKgk.json index 52840548..48b52862 100644 --- a/src/packs/items/weapons/weapon_Advanced_Hallowed_Axe_BiyXKX2Mo1TQbKgk.json +++ b/src/packs/items/weapons/weapon_Advanced_Hallowed_Axe_BiyXKX2Mo1TQbKgk.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833120834, - "modifiedTime": 1753833164907, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431179762, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BiyXKX2Mo1TQbKgk" } diff --git a/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json b/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json index 46c13033..4dd79561 100644 --- a/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json +++ b/src/packs/items/weapons/weapon_Advanced_Hand_Crossbow_Lsvocst8aGqkBj7g.json @@ -94,6 +94,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -107,12 +112,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "1.1.2", "createdTime": 1753795089792, - "modifiedTime": 1759575214347, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1761503058944, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items!Lsvocst8aGqkBj7g" } diff --git a/src/packs/items/weapons/weapon_Advanced_Hand_Runes_PQACczSghZIVTdgZ.json b/src/packs/items/weapons/weapon_Advanced_Hand_Runes_PQACczSghZIVTdgZ.json index 9f78b140..2ecb02ce 100644 --- a/src/packs/items/weapons/weapon_Advanced_Hand_Runes_PQACczSghZIVTdgZ.json +++ b/src/packs/items/weapons/weapon_Advanced_Hand_Runes_PQACczSghZIVTdgZ.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833253569, - "modifiedTime": 1753833282989, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431184599, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PQACczSghZIVTdgZ" } diff --git a/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json b/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json index f8257028..9b7f4816 100644 --- a/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json +++ b/src/packs/items/weapons/weapon_Advanced_Heavy_Frame_Wheelchair_eT2Qwb0RdrLX2hH1.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -150,10 +155,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836675558, - "modifiedTime": 1754845996869, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430171326, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "eT2Qwb0RdrLX2hH1", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json b/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json index 324af2b1..03b69488 100644 --- a/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json +++ b/src/packs/items/weapons/weapon_Advanced_Light_Frame_Wheelchair_BuMfupnCzHbziQ8o.json @@ -17,7 +17,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -129,6 +128,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 54, + "artist": "" } }, "effects": [], @@ -143,10 +147,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836614032, - "modifiedTime": 1754846020904, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430232313, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "BuMfupnCzHbziQ8o", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Advanced_Longbow_M5CywMAyPKGgebsJ.json b/src/packs/items/weapons/weapon_Advanced_Longbow_M5CywMAyPKGgebsJ.json index 0ebb1d08..237d30c2 100644 --- a/src/packs/items/weapons/weapon_Advanced_Longbow_M5CywMAyPKGgebsJ.json +++ b/src/packs/items/weapons/weapon_Advanced_Longbow_M5CywMAyPKGgebsJ.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832060079, - "modifiedTime": 1753832086913, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431035842, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!M5CywMAyPKGgebsJ" } diff --git a/src/packs/items/weapons/weapon_Advanced_Longsword_9xkB3MWXahrsVP4N.json b/src/packs/items/weapons/weapon_Advanced_Longsword_9xkB3MWXahrsVP4N.json index 8b44c759..e7977c92 100644 --- a/src/packs/items/weapons/weapon_Advanced_Longsword_9xkB3MWXahrsVP4N.json +++ b/src/packs/items/weapons/weapon_Advanced_Longsword_9xkB3MWXahrsVP4N.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831635467, - "modifiedTime": 1753831658646, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431029688, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!9xkB3MWXahrsVP4N" } diff --git a/src/packs/items/weapons/weapon_Advanced_Mace_WreMYiH5uhVDaoVw.json b/src/packs/items/weapons/weapon_Advanced_Mace_WreMYiH5uhVDaoVw.json index 770a061c..1dd1f447 100644 --- a/src/packs/items/weapons/weapon_Advanced_Mace_WreMYiH5uhVDaoVw.json +++ b/src/packs/items/weapons/weapon_Advanced_Mace_WreMYiH5uhVDaoVw.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831730528, - "modifiedTime": 1753831747562, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431024022, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WreMYiH5uhVDaoVw" } diff --git a/src/packs/items/weapons/weapon_Advanced_Quarterstaff_zJtm2f9ZFKZRtCRg.json b/src/packs/items/weapons/weapon_Advanced_Quarterstaff_zJtm2f9ZFKZRtCRg.json index e9a2ff48..60d059ef 100644 --- a/src/packs/items/weapons/weapon_Advanced_Quarterstaff_zJtm2f9ZFKZRtCRg.json +++ b/src/packs/items/weapons/weapon_Advanced_Quarterstaff_zJtm2f9ZFKZRtCRg.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831826360, - "modifiedTime": 1753831868734, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431045472, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zJtm2f9ZFKZRtCRg" } diff --git a/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json b/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json index e108d48f..7e7226d2 100644 --- a/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json +++ b/src/packs/items/weapons/weapon_Advanced_Rapier_KxFne76d7cak15dO.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831909596, - "modifiedTime": 1753831926420, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431050992, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!KxFne76d7cak15dO" } diff --git a/src/packs/items/weapons/weapon_Advanced_Returning_Blade_sIGXA4KMeYBUjcEO.json b/src/packs/items/weapons/weapon_Advanced_Returning_Blade_sIGXA4KMeYBUjcEO.json index e549ce09..04a8537c 100644 --- a/src/packs/items/weapons/weapon_Advanced_Returning_Blade_sIGXA4KMeYBUjcEO.json +++ b/src/packs/items/weapons/weapon_Advanced_Returning_Blade_sIGXA4KMeYBUjcEO.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833291783, - "modifiedTime": 1753833332963, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431189871, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!sIGXA4KMeYBUjcEO" } diff --git a/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json b/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json index efcd890b..1ea38b75 100644 --- a/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json +++ b/src/packs/items/weapons/weapon_Advanced_Round_Shield_hiEOGF2reabGLUoi.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -138,12 +143,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753794875150, - "modifiedTime": 1756682958806, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1761503813916, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!hiEOGF2reabGLUoi.i5HfkF5aKQuUCTEG" } @@ -158,12 +163,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794853303, - "modifiedTime": 1753794890718, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430422255, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hiEOGF2reabGLUoi" } diff --git a/src/packs/items/weapons/weapon_Advanced_Scepter_2Khzuj768yoWN9QK.json b/src/packs/items/weapons/weapon_Advanced_Scepter_2Khzuj768yoWN9QK.json index 0f24c888..8410acba 100644 --- a/src/packs/items/weapons/weapon_Advanced_Scepter_2Khzuj768yoWN9QK.json +++ b/src/packs/items/weapons/weapon_Advanced_Scepter_2Khzuj768yoWN9QK.json @@ -166,6 +166,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -179,12 +184,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833421806, - "modifiedTime": 1753835888435, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431194696, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2Khzuj768yoWN9QK" } diff --git a/src/packs/items/weapons/weapon_Advanced_Shortbow_JpSlJvDR0X8VFDns.json b/src/packs/items/weapons/weapon_Advanced_Shortbow_JpSlJvDR0X8VFDns.json index e54b4eea..c6cf9e45 100644 --- a/src/packs/items/weapons/weapon_Advanced_Shortbow_JpSlJvDR0X8VFDns.json +++ b/src/packs/items/weapons/weapon_Advanced_Shortbow_JpSlJvDR0X8VFDns.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831998635, - "modifiedTime": 1753832018423, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431055980, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!JpSlJvDR0X8VFDns" } diff --git a/src/packs/items/weapons/weapon_Advanced_Shortstaff_T5exRCqOXhrjSYnI.json b/src/packs/items/weapons/weapon_Advanced_Shortstaff_T5exRCqOXhrjSYnI.json index b09613da..b9f8abd7 100644 --- a/src/packs/items/weapons/weapon_Advanced_Shortstaff_T5exRCqOXhrjSYnI.json +++ b/src/packs/items/weapons/weapon_Advanced_Shortstaff_T5exRCqOXhrjSYnI.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833341389, - "modifiedTime": 1753833375298, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431199497, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!T5exRCqOXhrjSYnI" } diff --git a/src/packs/items/weapons/weapon_Advanced_Shortsword_p3nz5CaGUoyuGVg0.json b/src/packs/items/weapons/weapon_Advanced_Shortsword_p3nz5CaGUoyuGVg0.json index a7b33030..3602de12 100644 --- a/src/packs/items/weapons/weapon_Advanced_Shortsword_p3nz5CaGUoyuGVg0.json +++ b/src/packs/items/weapons/weapon_Advanced_Shortsword_p3nz5CaGUoyuGVg0.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753794821174, - "modifiedTime": 1755268343096, + "modifiedTime": 1755430427239, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!p3nz5CaGUoyuGVg0" diff --git a/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json b/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json index 958bda92..aec66a76 100644 --- a/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json +++ b/src/packs/items/weapons/weapon_Advanced_Small_Dagger_0thN0BpN05KT8Avx.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753794938643, - "modifiedTime": 1755268350050, + "modifiedTime": 1755430432441, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0thN0BpN05KT8Avx" diff --git a/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json b/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json index 0bfb4a8f..af308099 100644 --- a/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json +++ b/src/packs/items/weapons/weapon_Advanced_Spear_pK6dsNABKKp1CIGN.json @@ -92,48 +92,14 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, - "effects": [ - { - "name": "Cumbersome", - "description": "-1 to Finesse", - "img": "icons/commodities/metal/mail-plate-steel.webp", - "changes": [ - { - "key": "system.traits.finesse.value", - "mode": 2, - "value": "-1" - } - ], - "_id": "hl0S2LrBY5Mg69q6", - "type": "base", - "system": {}, - "disabled": false, - "duration": { - "startTime": null, - "combat": null - }, - "origin": null, - "tint": "#ffffff", - "transfer": true, - "statuses": [], - "sort": 0, - "flags": {}, - "_stats": { - "compendiumSource": null, - "duplicateSource": null, - "exportSource": null, - "coreVersion": "13.346", - "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753831987001, - "modifiedTime": 1753831987001, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" - }, - "_key": "!items.effects!pK6dsNABKKp1CIGN.hl0S2LrBY5Mg69q6" - } - ], + "effects": [], "sort": 0, "ownership": { "default": 0, @@ -144,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831962536, - "modifiedTime": 1753831987004, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431061358, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!pK6dsNABKKp1CIGN" } diff --git a/src/packs/items/weapons/weapon_Advanced_Tower_Shield_OfOzQbs4hg6QbfTG.json b/src/packs/items/weapons/weapon_Advanced_Tower_Shield_OfOzQbs4hg6QbfTG.json index 33d9f577..47982de2 100644 --- a/src/packs/items/weapons/weapon_Advanced_Tower_Shield_OfOzQbs4hg6QbfTG.json +++ b/src/packs/items/weapons/weapon_Advanced_Tower_Shield_OfOzQbs4hg6QbfTG.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794904892, - "modifiedTime": 1753794929241, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430438607, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!OfOzQbs4hg6QbfTG" } diff --git a/src/packs/items/weapons/weapon_Advanced_Wand_jU9jWIardjtdAQcs.json b/src/packs/items/weapons/weapon_Advanced_Wand_jU9jWIardjtdAQcs.json index 65bd9fc3..4e427132 100644 --- a/src/packs/items/weapons/weapon_Advanced_Wand_jU9jWIardjtdAQcs.json +++ b/src/packs/items/weapons/weapon_Advanced_Wand_jU9jWIardjtdAQcs.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833518519, - "modifiedTime": 1753833553163, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431205397, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jU9jWIardjtdAQcs" } diff --git a/src/packs/items/weapons/weapon_Advanced_Warhammer_8Lipw3RRKDgBVP0p.json b/src/packs/items/weapons/weapon_Advanced_Warhammer_8Lipw3RRKDgBVP0p.json index 56eb31fc..7d3276c6 100644 --- a/src/packs/items/weapons/weapon_Advanced_Warhammer_8Lipw3RRKDgBVP0p.json +++ b/src/packs/items/weapons/weapon_Advanced_Warhammer_8Lipw3RRKDgBVP0p.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831754451, - "modifiedTime": 1753831777547, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431066673, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!8Lipw3RRKDgBVP0p" } diff --git a/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json b/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json index b9c4242d..dfbb4906 100644 --- a/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json +++ b/src/packs/items/weapons/weapon_Advanced_Whip_01izMUSJcAUo79IX.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753795001576, - "modifiedTime": 1753808405822, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430443629, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!01izMUSJcAUo79IX" } diff --git a/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json b/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json index 3dd7d463..ca0b07d7 100644 --- a/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json +++ b/src/packs/items/weapons/weapon_Arcane_Frame_Wheelchair_XRChepscgr75Uug7.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753836689082, - "modifiedTime": 1754845945327, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430185213, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!XRChepscgr75Uug7" } diff --git a/src/packs/items/weapons/weapon_Arcane_Gauntlets_PC5EyEIq7NWBV0n5.json b/src/packs/items/weapons/weapon_Arcane_Gauntlets_PC5EyEIq7NWBV0n5.json index abef59b7..9eb20491 100644 --- a/src/packs/items/weapons/weapon_Arcane_Gauntlets_PC5EyEIq7NWBV0n5.json +++ b/src/packs/items/weapons/weapon_Arcane_Gauntlets_PC5EyEIq7NWBV0n5.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828194643, - "modifiedTime": 1753828233213, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430636989, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PC5EyEIq7NWBV0n5" } diff --git a/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json b/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json index ae0f0398..f7f748ae 100644 --- a/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json +++ b/src/packs/items/weapons/weapon_Axe_of_Fortunis_YcS1rHgfnSlla8Xf.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833614959, - "modifiedTime": 1753833653403, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431211441, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!YcS1rHgfnSlla8Xf" } diff --git a/src/packs/items/weapons/weapon_Battleaxe_fbDYUja3ll9vCtrB.json b/src/packs/items/weapons/weapon_Battleaxe_fbDYUja3ll9vCtrB.json index 00034072..63ed7753 100644 --- a/src/packs/items/weapons/weapon_Battleaxe_fbDYUja3ll9vCtrB.json +++ b/src/packs/items/weapons/weapon_Battleaxe_fbDYUja3ll9vCtrB.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827787429, - "modifiedTime": 1753827801986, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430553429, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!fbDYUja3ll9vCtrB" } diff --git a/src/packs/items/weapons/weapon_Black_Powder_Revolver_AokqTusPzn0hghkE.json b/src/packs/items/weapons/weapon_Black_Powder_Revolver_AokqTusPzn0hghkE.json index 916958c9..699b06ae 100644 --- a/src/packs/items/weapons/weapon_Black_Powder_Revolver_AokqTusPzn0hghkE.json +++ b/src/packs/items/weapons/weapon_Black_Powder_Revolver_AokqTusPzn0hghkE.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832483435, - "modifiedTime": 1753832502167, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431071691, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!AokqTusPzn0hghkE" } diff --git a/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json b/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json index 9e188b9f..dba962aa 100644 --- a/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json +++ b/src/packs/items/weapons/weapon_Bladed_Whip_5faflfNz20cFW1EM.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829680830, - "modifiedTime": 1753829701111, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430702556, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!5faflfNz20cFW1EM" } diff --git a/src/packs/items/weapons/weapon_Blessed_Anlace_n1oPTk5czTIGTkVj.json b/src/packs/items/weapons/weapon_Blessed_Anlace_n1oPTk5czTIGTkVj.json index f4d8d52a..83ef5820 100644 --- a/src/packs/items/weapons/weapon_Blessed_Anlace_n1oPTk5czTIGTkVj.json +++ b/src/packs/items/weapons/weapon_Blessed_Anlace_n1oPTk5czTIGTkVj.json @@ -168,6 +168,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -181,12 +186,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833663905, - "modifiedTime": 1754406631151, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755431216258, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!n1oPTk5czTIGTkVj" } diff --git a/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json b/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json index abd09941..fb41b73f 100644 --- a/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json +++ b/src/packs/items/weapons/weapon_Bloodstaff_IoMVDz92WVvfGGdc.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836256052, - "modifiedTime": 1753836294025, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431424609, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!IoMVDz92WVvfGGdc" } diff --git a/src/packs/items/weapons/weapon_Blunderbuss_SLFrK0WmldPo0shz.json b/src/packs/items/weapons/weapon_Blunderbuss_SLFrK0WmldPo0shz.json index 7d211d92..e6fefe1c 100644 --- a/src/packs/items/weapons/weapon_Blunderbuss_SLFrK0WmldPo0shz.json +++ b/src/packs/items/weapons/weapon_Blunderbuss_SLFrK0WmldPo0shz.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829780930, - "modifiedTime": 1753829802107, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430707621, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SLFrK0WmldPo0shz" } diff --git a/src/packs/items/weapons/weapon_Braveshield_QEvgVoz9xKBSKsGi.json b/src/packs/items/weapons/weapon_Braveshield_QEvgVoz9xKBSKsGi.json index 6b9af93d..920985fa 100644 --- a/src/packs/items/weapons/weapon_Braveshield_QEvgVoz9xKBSKsGi.json +++ b/src/packs/items/weapons/weapon_Braveshield_QEvgVoz9xKBSKsGi.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753797203355, - "modifiedTime": 1753797247008, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430470813, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QEvgVoz9xKBSKsGi" } diff --git a/src/packs/items/weapons/weapon_Bravesword_QZrWAkprA2tL2MOI.json b/src/packs/items/weapons/weapon_Bravesword_QZrWAkprA2tL2MOI.json index b5d7559f..29ccef77 100644 --- a/src/packs/items/weapons/weapon_Bravesword_QZrWAkprA2tL2MOI.json +++ b/src/packs/items/weapons/weapon_Bravesword_QZrWAkprA2tL2MOI.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832142373, - "modifiedTime": 1753832160787, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431087258, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QZrWAkprA2tL2MOI" } diff --git a/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json b/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json index 959a8547..10bbaf8c 100644 --- a/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json +++ b/src/packs/items/weapons/weapon_Broadsword_1cwWNt4sqlgA8gCT.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753827734892, - "modifiedTime": 1754814769821, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430559304, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1cwWNt4sqlgA8gCT" } diff --git a/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json b/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json index 852a213f..2a7e0db6 100644 --- a/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json +++ b/src/packs/items/weapons/weapon_Buckler_EmFTp9wzT6MHSaNz.json @@ -20,11 +20,12 @@ }, "cost": [ { - "key": "armorSlot", + "key": "resource", + "itemId": "armorSlot", "value": 1, - "keyIsID": false, "scalable": false, - "step": null + "step": null, + "consumeOnSuccess": false } ], "effects": [ @@ -137,6 +138,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -189,12 +195,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1753795181779, - "modifiedTime": 1753808413753, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1756325575921, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_key": "!items!EmFTp9wzT6MHSaNz" } diff --git a/src/packs/items/weapons/weapon_Casting_Sword_2Fbf2cxLfbdGkU4I.json b/src/packs/items/weapons/weapon_Casting_Sword_2Fbf2cxLfbdGkU4I.json index 6394645b..45924203 100644 --- a/src/packs/items/weapons/weapon_Casting_Sword_2Fbf2cxLfbdGkU4I.json +++ b/src/packs/items/weapons/weapon_Casting_Sword_2Fbf2cxLfbdGkU4I.json @@ -164,6 +164,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -177,12 +182,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831124348, - "modifiedTime": 1753831194254, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430854985, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2Fbf2cxLfbdGkU4I" } diff --git a/src/packs/items/weapons/weapon_Crossbow_cw7HG1Z7hp7OOLD0.json b/src/packs/items/weapons/weapon_Crossbow_cw7HG1Z7hp7OOLD0.json index ac1fdb6a..b0915863 100644 --- a/src/packs/items/weapons/weapon_Crossbow_cw7HG1Z7hp7OOLD0.json +++ b/src/packs/items/weapons/weapon_Crossbow_cw7HG1Z7hp7OOLD0.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828109370, - "modifiedTime": 1753828127762, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430563597, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cw7HG1Z7hp7OOLD0" } diff --git a/src/packs/items/weapons/weapon_Curved_Dagger_Fk69R40svV0kanZD.json b/src/packs/items/weapons/weapon_Curved_Dagger_Fk69R40svV0kanZD.json index c3c4b5d6..0ce2a676 100644 --- a/src/packs/items/weapons/weapon_Curved_Dagger_Fk69R40svV0kanZD.json +++ b/src/packs/items/weapons/weapon_Curved_Dagger_Fk69R40svV0kanZD.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835098261, - "modifiedTime": 1753835125696, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431277893, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Fk69R40svV0kanZD" } diff --git a/src/packs/items/weapons/weapon_Cutlass_CWrbnethuILXrEpA.json b/src/packs/items/weapons/weapon_Cutlass_CWrbnethuILXrEpA.json index 42839516..601ac04e 100644 --- a/src/packs/items/weapons/weapon_Cutlass_CWrbnethuILXrEpA.json +++ b/src/packs/items/weapons/weapon_Cutlass_CWrbnethuILXrEpA.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827943490, - "modifiedTime": 1753827960371, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430570250, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CWrbnethuILXrEpA" } diff --git a/src/packs/items/weapons/weapon_Dagger_iStO0BbeMTTR0rQi.json b/src/packs/items/weapons/weapon_Dagger_iStO0BbeMTTR0rQi.json index fe6e34bb..74b81e48 100644 --- a/src/packs/items/weapons/weapon_Dagger_iStO0BbeMTTR0rQi.json +++ b/src/packs/items/weapons/weapon_Dagger_iStO0BbeMTTR0rQi.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827894955, - "modifiedTime": 1753827907060, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430575107, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!iStO0BbeMTTR0rQi" } diff --git a/src/packs/items/weapons/weapon_Devouring_Dagger_C5wSGglR8e0euQnY.json b/src/packs/items/weapons/weapon_Devouring_Dagger_C5wSGglR8e0euQnY.json index 153220f1..8a97fe05 100644 --- a/src/packs/items/weapons/weapon_Devouring_Dagger_C5wSGglR8e0euQnY.json +++ b/src/packs/items/weapons/weapon_Devouring_Dagger_C5wSGglR8e0euQnY.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831203997, - "modifiedTime": 1753831225429, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430861829, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!C5wSGglR8e0euQnY" } diff --git a/src/packs/items/weapons/weapon_Double_Flail_xm1yU7k58fMgXxRR.json b/src/packs/items/weapons/weapon_Double_Flail_xm1yU7k58fMgXxRR.json index 2a3a6095..86145c0f 100644 --- a/src/packs/items/weapons/weapon_Double_Flail_xm1yU7k58fMgXxRR.json +++ b/src/packs/items/weapons/weapon_Double_Flail_xm1yU7k58fMgXxRR.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832332785, - "modifiedTime": 1753832367770, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431095042, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xm1yU7k58fMgXxRR" } diff --git a/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json b/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json index 4463cef4..9b43770c 100644 --- a/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json +++ b/src/packs/items/weapons/weapon_Dual_Ended_Sword_nXjuBa215H1sTUK3.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834935521, - "modifiedTime": 1753835006406, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431282742, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nXjuBa215H1sTUK3" } diff --git a/src/packs/items/weapons/weapon_Dualstaff_j8cdNeIUYxxzFVji.json b/src/packs/items/weapons/weapon_Dualstaff_j8cdNeIUYxxzFVji.json index 35cf3dd6..44487b58 100644 --- a/src/packs/items/weapons/weapon_Dualstaff_j8cdNeIUYxxzFVji.json +++ b/src/packs/items/weapons/weapon_Dualstaff_j8cdNeIUYxxzFVji.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828411828, - "modifiedTime": 1753828446546, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430641953, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!j8cdNeIUYxxzFVji" } diff --git a/src/packs/items/weapons/weapon_Ego_Blade_G7rH31KQ5eEZXcv0.json b/src/packs/items/weapons/weapon_Ego_Blade_G7rH31KQ5eEZXcv0.json index 2d54aa50..82f90f23 100644 --- a/src/packs/items/weapons/weapon_Ego_Blade_G7rH31KQ5eEZXcv0.json +++ b/src/packs/items/weapons/weapon_Ego_Blade_G7rH31KQ5eEZXcv0.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831084805, - "modifiedTime": 1753831108928, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430867175, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!G7rH31KQ5eEZXcv0" } diff --git a/src/packs/items/weapons/weapon_Elder_Bow_JdWcn9W1edhAEInL.json b/src/packs/items/weapons/weapon_Elder_Bow_JdWcn9W1edhAEInL.json index f9637a9e..7441238b 100644 --- a/src/packs/items/weapons/weapon_Elder_Bow_JdWcn9W1edhAEInL.json +++ b/src/packs/items/weapons/weapon_Elder_Bow_JdWcn9W1edhAEInL.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831304971, - "modifiedTime": 1753831327540, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430872430, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!JdWcn9W1edhAEInL" } diff --git a/src/packs/items/weapons/weapon_Extended_Polearm_fJHKMxZokVP34MCi.json b/src/packs/items/weapons/weapon_Extended_Polearm_fJHKMxZokVP34MCi.json index 65b0a657..0c28d943 100644 --- a/src/packs/items/weapons/weapon_Extended_Polearm_fJHKMxZokVP34MCi.json +++ b/src/packs/items/weapons/weapon_Extended_Polearm_fJHKMxZokVP34MCi.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835136460, - "modifiedTime": 1753835169098, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431287604, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!fJHKMxZokVP34MCi" } diff --git a/src/packs/items/weapons/weapon_Finehair_Bow_ykF3jouxHZ6YR8Bg.json b/src/packs/items/weapons/weapon_Finehair_Bow_ykF3jouxHZ6YR8Bg.json index 5dba19c9..d4c8bb5b 100644 --- a/src/packs/items/weapons/weapon_Finehair_Bow_ykF3jouxHZ6YR8Bg.json +++ b/src/packs/items/weapons/weapon_Finehair_Bow_ykF3jouxHZ6YR8Bg.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829844531, - "modifiedTime": 1753829859088, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430717775, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ykF3jouxHZ6YR8Bg" } diff --git a/src/packs/items/weapons/weapon_Firestaff_BtCm2RhWEfs00g38.json b/src/packs/items/weapons/weapon_Firestaff_BtCm2RhWEfs00g38.json index f71b63b2..e10f1fd7 100644 --- a/src/packs/items/weapons/weapon_Firestaff_BtCm2RhWEfs00g38.json +++ b/src/packs/items/weapons/weapon_Firestaff_BtCm2RhWEfs00g38.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833915734, - "modifiedTime": 1753834249920, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431221418, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BtCm2RhWEfs00g38" } diff --git a/src/packs/items/weapons/weapon_Flickerfly_Blade_xLJ5RRpUoTRmAC3G.json b/src/packs/items/weapons/weapon_Flickerfly_Blade_xLJ5RRpUoTRmAC3G.json index 6696a3fb..d37f7142 100644 --- a/src/packs/items/weapons/weapon_Flickerfly_Blade_xLJ5RRpUoTRmAC3G.json +++ b/src/packs/items/weapons/weapon_Flickerfly_Blade_xLJ5RRpUoTRmAC3G.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832095587, - "modifiedTime": 1753832129589, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431100825, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xLJ5RRpUoTRmAC3G" } diff --git a/src/packs/items/weapons/weapon_Floating_Bladeshards_3vti3xfo0wJND7ew.json b/src/packs/items/weapons/weapon_Floating_Bladeshards_3vti3xfo0wJND7ew.json index 48087189..16237fff 100644 --- a/src/packs/items/weapons/weapon_Floating_Bladeshards_3vti3xfo0wJND7ew.json +++ b/src/packs/items/weapons/weapon_Floating_Bladeshards_3vti3xfo0wJND7ew.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836170763, - "modifiedTime": 1753836240655, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431431739, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3vti3xfo0wJND7ew" } diff --git a/src/packs/items/weapons/weapon_Fusion_Gloves_uK1RhtYAsDeoPNGx.json b/src/packs/items/weapons/weapon_Fusion_Gloves_uK1RhtYAsDeoPNGx.json index e8e14abb..ac039ece 100644 --- a/src/packs/items/weapons/weapon_Fusion_Gloves_uK1RhtYAsDeoPNGx.json +++ b/src/packs/items/weapons/weapon_Fusion_Gloves_uK1RhtYAsDeoPNGx.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836449043, - "modifiedTime": 1753836485751, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431436926, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!uK1RhtYAsDeoPNGx" } diff --git a/src/packs/items/weapons/weapon_Ghostblade_6gFvOFTE97QZ74Zr.json b/src/packs/items/weapons/weapon_Ghostblade_6gFvOFTE97QZ74Zr.json index a5d39bea..2a3853ea 100644 --- a/src/packs/items/weapons/weapon_Ghostblade_6gFvOFTE97QZ74Zr.json +++ b/src/packs/items/weapons/weapon_Ghostblade_6gFvOFTE97QZ74Zr.json @@ -93,6 +93,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -106,12 +111,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833724570, - "modifiedTime": 1753833788108, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431226770, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6gFvOFTE97QZ74Zr" } diff --git a/src/packs/items/weapons/weapon_Gilded_Bow_ctTgFfMbM3YtmsYU.json b/src/packs/items/weapons/weapon_Gilded_Bow_ctTgFfMbM3YtmsYU.json index bf6423c5..ff8d606b 100644 --- a/src/packs/items/weapons/weapon_Gilded_Bow_ctTgFfMbM3YtmsYU.json +++ b/src/packs/items/weapons/weapon_Gilded_Bow_ctTgFfMbM3YtmsYU.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833878513, - "modifiedTime": 1753833907298, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431231849, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ctTgFfMbM3YtmsYU" } diff --git a/src/packs/items/weapons/weapon_Gilded_Falchion_VwcOgqnzjf9LBj2S.json b/src/packs/items/weapons/weapon_Gilded_Falchion_VwcOgqnzjf9LBj2S.json index e9372819..f92fa49f 100644 --- a/src/packs/items/weapons/weapon_Gilded_Falchion_VwcOgqnzjf9LBj2S.json +++ b/src/packs/items/weapons/weapon_Gilded_Falchion_VwcOgqnzjf9LBj2S.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829584359, - "modifiedTime": 1753829600720, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430712705, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!VwcOgqnzjf9LBj2S" } diff --git a/src/packs/items/weapons/weapon_Glowing_Rings_wG9f5NpCwSbaLy8t.json b/src/packs/items/weapons/weapon_Glowing_Rings_wG9f5NpCwSbaLy8t.json index d1b43470..b0a515e1 100644 --- a/src/packs/items/weapons/weapon_Glowing_Rings_wG9f5NpCwSbaLy8t.json +++ b/src/packs/items/weapons/weapon_Glowing_Rings_wG9f5NpCwSbaLy8t.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828268892, - "modifiedTime": 1753828300354, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430650322, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!wG9f5NpCwSbaLy8t" } diff --git a/src/packs/items/weapons/weapon_Grappler_iEzPscUc18GuFoB6.json b/src/packs/items/weapons/weapon_Grappler_iEzPscUc18GuFoB6.json index 760cd787..585473ad 100644 --- a/src/packs/items/weapons/weapon_Grappler_iEzPscUc18GuFoB6.json +++ b/src/packs/items/weapons/weapon_Grappler_iEzPscUc18GuFoB6.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753744418464, - "modifiedTime": 1753794424526, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430265968, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!iEzPscUc18GuFoB6" } diff --git a/src/packs/items/weapons/weapon_Greatbow_MXBpbqQsZFln4rZk.json b/src/packs/items/weapons/weapon_Greatbow_MXBpbqQsZFln4rZk.json index 40092016..64800e1b 100644 --- a/src/packs/items/weapons/weapon_Greatbow_MXBpbqQsZFln4rZk.json +++ b/src/packs/items/weapons/weapon_Greatbow_MXBpbqQsZFln4rZk.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829810496, - "modifiedTime": 1753829836266, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430723754, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MXBpbqQsZFln4rZk" } diff --git a/src/packs/items/weapons/weapon_Greatstaff_Yk8pTEmyLLi4095S.json b/src/packs/items/weapons/weapon_Greatstaff_Yk8pTEmyLLi4095S.json index 91ab35c3..24a37b60 100644 --- a/src/packs/items/weapons/weapon_Greatstaff_Yk8pTEmyLLi4095S.json +++ b/src/packs/items/weapons/weapon_Greatstaff_Yk8pTEmyLLi4095S.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828546209, - "modifiedTime": 1753828572366, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430656056, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Yk8pTEmyLLi4095S" } diff --git a/src/packs/items/weapons/weapon_Greatsword_70ysaFJDREwTgvZa.json b/src/packs/items/weapons/weapon_Greatsword_70ysaFJDREwTgvZa.json index 88d68120..c3cfc91a 100644 --- a/src/packs/items/weapons/weapon_Greatsword_70ysaFJDREwTgvZa.json +++ b/src/packs/items/weapons/weapon_Greatsword_70ysaFJDREwTgvZa.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -162,12 +167,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827812456, - "modifiedTime": 1753827837860, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430580231, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!70ysaFJDREwTgvZa" } diff --git a/src/packs/items/weapons/weapon_Halberd_qT7FfmauAumOjJoq.json b/src/packs/items/weapons/weapon_Halberd_qT7FfmauAumOjJoq.json index 76ef57d5..5ddc4cf0 100644 --- a/src/packs/items/weapons/weapon_Halberd_qT7FfmauAumOjJoq.json +++ b/src/packs/items/weapons/weapon_Halberd_qT7FfmauAumOjJoq.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828005240, - "modifiedTime": 1753828027571, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430586032, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!qT7FfmauAumOjJoq" } diff --git a/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json b/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json index dfb94b82..1a6d341f 100644 --- a/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json +++ b/src/packs/items/weapons/weapon_Hallowed_Axe_Vayg7CnRTFBrunjM.json @@ -25,7 +25,7 @@ "amount": 1 }, "roll": { - "trait": "agility", + "trait": "strength", "type": "attack", "difficulty": null, "bonus": null, @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.6", "createdTime": 1753828229603, - "modifiedTime": 1753828259599, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755633052433, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Vayg7CnRTFBrunjM" } diff --git a/src/packs/items/weapons/weapon_Hammer_of_Exota_0lAkBEUvbM9Osmqb.json b/src/packs/items/weapons/weapon_Hammer_of_Exota_0lAkBEUvbM9Osmqb.json index 79b179e2..0c00da28 100644 --- a/src/packs/items/weapons/weapon_Hammer_of_Exota_0lAkBEUvbM9Osmqb.json +++ b/src/packs/items/weapons/weapon_Hammer_of_Exota_0lAkBEUvbM9Osmqb.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831233943, - "modifiedTime": 1753831254600, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430877137, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0lAkBEUvbM9Osmqb" } diff --git a/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json b/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json index 0733bc22..bf29dc34 100644 --- a/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json +++ b/src/packs/items/weapons/weapon_Hammer_of_Wrath_1R4uzOpWD8bkYRUm.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832169515, - "modifiedTime": 1753832195344, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431106242, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1R4uzOpWD8bkYRUm" } diff --git a/src/packs/items/weapons/weapon_Hand_Cannon_MyGz8nd5sieRQ7zl.json b/src/packs/items/weapons/weapon_Hand_Cannon_MyGz8nd5sieRQ7zl.json index 9dfce730..20370546 100644 --- a/src/packs/items/weapons/weapon_Hand_Cannon_MyGz8nd5sieRQ7zl.json +++ b/src/packs/items/weapons/weapon_Hand_Cannon_MyGz8nd5sieRQ7zl.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835328057, - "modifiedTime": 1753835363359, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431292435, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MyGz8nd5sieRQ7zl" } diff --git a/src/packs/items/weapons/weapon_Hand_Crossbow_zxKt6qXe7uZB6ljm.json b/src/packs/items/weapons/weapon_Hand_Crossbow_zxKt6qXe7uZB6ljm.json index 7cbbeaec..61ce4d99 100644 --- a/src/packs/items/weapons/weapon_Hand_Crossbow_zxKt6qXe7uZB6ljm.json +++ b/src/packs/items/weapons/weapon_Hand_Crossbow_zxKt6qXe7uZB6ljm.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753744526958, - "modifiedTime": 1753794520954, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430274014, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zxKt6qXe7uZB6ljm" } diff --git a/src/packs/items/weapons/weapon_Hand_Runes_3whiedn0jBMNRdIb.json b/src/packs/items/weapons/weapon_Hand_Runes_3whiedn0jBMNRdIb.json index b16488ce..18da1680 100644 --- a/src/packs/items/weapons/weapon_Hand_Runes_3whiedn0jBMNRdIb.json +++ b/src/packs/items/weapons/weapon_Hand_Runes_3whiedn0jBMNRdIb.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828308338, - "modifiedTime": 1753828333546, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430667859, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3whiedn0jBMNRdIb" } diff --git a/src/packs/items/weapons/weapon_Hand_Sling_RAIaoMi6iO1PKIlK.json b/src/packs/items/weapons/weapon_Hand_Sling_RAIaoMi6iO1PKIlK.json index 39a16ddb..42d6b73e 100644 --- a/src/packs/items/weapons/weapon_Hand_Sling_RAIaoMi6iO1PKIlK.json +++ b/src/packs/items/weapons/weapon_Hand_Sling_RAIaoMi6iO1PKIlK.json @@ -164,6 +164,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -177,12 +182,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753796778752, - "modifiedTime": 1753796892053, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430455807, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!RAIaoMi6iO1PKIlK" } diff --git a/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json b/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json index b4c48925..a3aad851 100644 --- a/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json +++ b/src/packs/items/weapons/weapon_Heavy_Frame_Wheelchair_XjPQjhRCH08VUIbr.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -154,10 +159,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836652314, - "modifiedTime": 1754845988869, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430156096, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!XjPQjhRCH08VUIbr" } diff --git a/src/packs/items/weapons/weapon_Ilmari_s_Rifle_TMrUzVC3KvcHmdt8.json b/src/packs/items/weapons/weapon_Ilmari_s_Rifle_TMrUzVC3KvcHmdt8.json index 5d2ad638..51bb46e8 100644 --- a/src/packs/items/weapons/weapon_Ilmari_s_Rifle_TMrUzVC3KvcHmdt8.json +++ b/src/packs/items/weapons/weapon_Ilmari_s_Rifle_TMrUzVC3KvcHmdt8.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834324778, - "modifiedTime": 1753834352088, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431237332, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TMrUzVC3KvcHmdt8" } diff --git a/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json b/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json index 5dd794d9..ca842d59 100644 --- a/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json +++ b/src/packs/items/weapons/weapon_Impact_Gauntlet_Zg6IutksQVOqAg8K.json @@ -22,7 +22,6 @@ { "key": "hope", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835022121, - "modifiedTime": 1753835056093, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431297704, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Zg6IutksQVOqAg8K" } diff --git a/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json b/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json index 69744aab..2fa3de9b 100644 --- a/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json +++ b/src/packs/items/weapons/weapon_Improved_Arcane_Frame_Wheelchair_N9P695V5KKlJbAY5.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -159,10 +164,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753836714712, - "modifiedTime": 1754845960700, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430190586, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "N9P695V5KKlJbAY5", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Improved_Arcane_Gauntlets_kENTDpa1hr5LDhIT.json b/src/packs/items/weapons/weapon_Improved_Arcane_Gauntlets_kENTDpa1hr5LDhIT.json index ace2d7f5..4fc65837 100644 --- a/src/packs/items/weapons/weapon_Improved_Arcane_Gauntlets_kENTDpa1hr5LDhIT.json +++ b/src/packs/items/weapons/weapon_Improved_Arcane_Gauntlets_kENTDpa1hr5LDhIT.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830663702, - "modifiedTime": 1753830688044, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430881797, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!kENTDpa1hr5LDhIT" } diff --git a/src/packs/items/weapons/weapon_Improved_Battleaxe_nxGUpuHLmuKdKsDC.json b/src/packs/items/weapons/weapon_Improved_Battleaxe_nxGUpuHLmuKdKsDC.json index 78a1d9ce..32ef07e2 100644 --- a/src/packs/items/weapons/weapon_Improved_Battleaxe_nxGUpuHLmuKdKsDC.json +++ b/src/packs/items/weapons/weapon_Improved_Battleaxe_nxGUpuHLmuKdKsDC.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829159520, - "modifiedTime": 1753829179084, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430728755, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nxGUpuHLmuKdKsDC" } diff --git a/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json b/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json index 69e46858..9828108d 100644 --- a/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json +++ b/src/packs/items/weapons/weapon_Improved_Broadsword_OcKeLJxvmdT81VBc.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753829098118, - "modifiedTime": 1754814935815, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430733489, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!OcKeLJxvmdT81VBc" } diff --git a/src/packs/items/weapons/weapon_Improved_Crossbow_55NwHIIZHUeKSE3M.json b/src/packs/items/weapons/weapon_Improved_Crossbow_55NwHIIZHUeKSE3M.json index 4ebf336e..9607f5dd 100644 --- a/src/packs/items/weapons/weapon_Improved_Crossbow_55NwHIIZHUeKSE3M.json +++ b/src/packs/items/weapons/weapon_Improved_Crossbow_55NwHIIZHUeKSE3M.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829524850, - "modifiedTime": 1753829540618, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430738916, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!55NwHIIZHUeKSE3M" } diff --git a/src/packs/items/weapons/weapon_Improved_Cutlass_ddRjXnp2vbohu7rJ.json b/src/packs/items/weapons/weapon_Improved_Cutlass_ddRjXnp2vbohu7rJ.json index 57ead715..f72fd026 100644 --- a/src/packs/items/weapons/weapon_Improved_Cutlass_ddRjXnp2vbohu7rJ.json +++ b/src/packs/items/weapons/weapon_Improved_Cutlass_ddRjXnp2vbohu7rJ.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829336088, - "modifiedTime": 1753829379988, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430744857, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ddRjXnp2vbohu7rJ" } diff --git a/src/packs/items/weapons/weapon_Improved_Dagger_ScjTkb9qrndhlk9S.json b/src/packs/items/weapons/weapon_Improved_Dagger_ScjTkb9qrndhlk9S.json index 09e93778..509be257 100644 --- a/src/packs/items/weapons/weapon_Improved_Dagger_ScjTkb9qrndhlk9S.json +++ b/src/packs/items/weapons/weapon_Improved_Dagger_ScjTkb9qrndhlk9S.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829275876, - "modifiedTime": 1753829295031, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430751928, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ScjTkb9qrndhlk9S" } diff --git a/src/packs/items/weapons/weapon_Improved_Dualstaff_f7hhHlZ5nL3AhYEM.json b/src/packs/items/weapons/weapon_Improved_Dualstaff_f7hhHlZ5nL3AhYEM.json index a55aedd0..e6227e27 100644 --- a/src/packs/items/weapons/weapon_Improved_Dualstaff_f7hhHlZ5nL3AhYEM.json +++ b/src/packs/items/weapons/weapon_Improved_Dualstaff_f7hhHlZ5nL3AhYEM.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830887023, - "modifiedTime": 1753830918763, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430886600, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!f7hhHlZ5nL3AhYEM" } diff --git a/src/packs/items/weapons/weapon_Improved_Glowing_Rings_N5amhkxR1xn3B7r2.json b/src/packs/items/weapons/weapon_Improved_Glowing_Rings_N5amhkxR1xn3B7r2.json index 1ee640bb..09fc7d78 100644 --- a/src/packs/items/weapons/weapon_Improved_Glowing_Rings_N5amhkxR1xn3B7r2.json +++ b/src/packs/items/weapons/weapon_Improved_Glowing_Rings_N5amhkxR1xn3B7r2.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830729041, - "modifiedTime": 1753830753601, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430892102, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!N5amhkxR1xn3B7r2" } diff --git a/src/packs/items/weapons/weapon_Improved_Grappler_3T3o9zfe61t22L1H.json b/src/packs/items/weapons/weapon_Improved_Grappler_3T3o9zfe61t22L1H.json index d8b91be7..b10eb764 100644 --- a/src/packs/items/weapons/weapon_Improved_Grappler_3T3o9zfe61t22L1H.json +++ b/src/packs/items/weapons/weapon_Improved_Grappler_3T3o9zfe61t22L1H.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794386984, - "modifiedTime": 1753795053642, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430314424, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!3T3o9zfe61t22L1H" } diff --git a/src/packs/items/weapons/weapon_Improved_Greatstaff_LCuTrYXi4lhg6LqW.json b/src/packs/items/weapons/weapon_Improved_Greatstaff_LCuTrYXi4lhg6LqW.json index 9b239f60..ab3f7d21 100644 --- a/src/packs/items/weapons/weapon_Improved_Greatstaff_LCuTrYXi4lhg6LqW.json +++ b/src/packs/items/weapons/weapon_Improved_Greatstaff_LCuTrYXi4lhg6LqW.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831031130, - "modifiedTime": 1753831074766, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430897181, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!LCuTrYXi4lhg6LqW" } diff --git a/src/packs/items/weapons/weapon_Improved_Greatsword_FPX4ouDrxXiQ5MDf.json b/src/packs/items/weapons/weapon_Improved_Greatsword_FPX4ouDrxXiQ5MDf.json index 28cad987..eae9543b 100644 --- a/src/packs/items/weapons/weapon_Improved_Greatsword_FPX4ouDrxXiQ5MDf.json +++ b/src/packs/items/weapons/weapon_Improved_Greatsword_FPX4ouDrxXiQ5MDf.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -162,12 +167,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829188168, - "modifiedTime": 1753829211950, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430760464, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!FPX4ouDrxXiQ5MDf" } diff --git a/src/packs/items/weapons/weapon_Improved_Halberd_F9PETfCQGwczBPif.json b/src/packs/items/weapons/weapon_Improved_Halberd_F9PETfCQGwczBPif.json index bc88174b..ac5197ed 100644 --- a/src/packs/items/weapons/weapon_Improved_Halberd_F9PETfCQGwczBPif.json +++ b/src/packs/items/weapons/weapon_Improved_Halberd_F9PETfCQGwczBPif.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829414070, - "modifiedTime": 1753829436559, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430766141, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!F9PETfCQGwczBPif" } diff --git a/src/packs/items/weapons/weapon_Improved_Hallowed_Axe_wFOXMN2uiX4j6Gd9.json b/src/packs/items/weapons/weapon_Improved_Hallowed_Axe_wFOXMN2uiX4j6Gd9.json index 818c0f55..d9bc2a64 100644 --- a/src/packs/items/weapons/weapon_Improved_Hallowed_Axe_wFOXMN2uiX4j6Gd9.json +++ b/src/packs/items/weapons/weapon_Improved_Hallowed_Axe_wFOXMN2uiX4j6Gd9.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830697026, - "modifiedTime": 1753830717920, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430905049, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!wFOXMN2uiX4j6Gd9" } diff --git a/src/packs/items/weapons/weapon_Improved_Hand_Crossbow_XEDRkuw3BhMoVBn9.json b/src/packs/items/weapons/weapon_Improved_Hand_Crossbow_XEDRkuw3BhMoVBn9.json index 63e7f363..8227c35d 100644 --- a/src/packs/items/weapons/weapon_Improved_Hand_Crossbow_XEDRkuw3BhMoVBn9.json +++ b/src/packs/items/weapons/weapon_Improved_Hand_Crossbow_XEDRkuw3BhMoVBn9.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794476404, - "modifiedTime": 1753794517681, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430322922, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!XEDRkuw3BhMoVBn9" } diff --git a/src/packs/items/weapons/weapon_Improved_Hand_Runes_jMEukC3VpNDz5AOD.json b/src/packs/items/weapons/weapon_Improved_Hand_Runes_jMEukC3VpNDz5AOD.json index 246a4dff..05f8955c 100644 --- a/src/packs/items/weapons/weapon_Improved_Hand_Runes_jMEukC3VpNDz5AOD.json +++ b/src/packs/items/weapons/weapon_Improved_Hand_Runes_jMEukC3VpNDz5AOD.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830762576, - "modifiedTime": 1753830786247, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430910158, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jMEukC3VpNDz5AOD" } diff --git a/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json b/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json index 70531b7c..c22323d0 100644 --- a/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json +++ b/src/packs/items/weapons/weapon_Improved_Heavy_Frame_Wheelchair_L5KeCtrs768PmYWW.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -150,10 +155,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836674233, - "modifiedTime": 1754845992757, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430164612, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "L5KeCtrs768PmYWW", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json b/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json index 737e2c55..8922d621 100644 --- a/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json +++ b/src/packs/items/weapons/weapon_Improved_Light_Frame_Wheelchair_ZJsetdHKV77ygtCE.json @@ -17,7 +17,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -129,6 +128,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 54, + "artist": "" } }, "effects": [], @@ -143,10 +147,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836612291, - "modifiedTime": 1754846018260, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430225855, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "ZJsetdHKV77ygtCE", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Improved_Longbow_NacNonjbzyoVMNhI.json b/src/packs/items/weapons/weapon_Improved_Longbow_NacNonjbzyoVMNhI.json index 18b98cc0..f23b203e 100644 --- a/src/packs/items/weapons/weapon_Improved_Longbow_NacNonjbzyoVMNhI.json +++ b/src/packs/items/weapons/weapon_Improved_Longbow_NacNonjbzyoVMNhI.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829548741, - "modifiedTime": 1753829574677, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430771841, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!NacNonjbzyoVMNhI" } diff --git a/src/packs/items/weapons/weapon_Improved_Longsword_QyBZ5NxM8F9nCL9s.json b/src/packs/items/weapons/weapon_Improved_Longsword_QyBZ5NxM8F9nCL9s.json index b064b1c2..c6e71c36 100644 --- a/src/packs/items/weapons/weapon_Improved_Longsword_QyBZ5NxM8F9nCL9s.json +++ b/src/packs/items/weapons/weapon_Improved_Longsword_QyBZ5NxM8F9nCL9s.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829133179, - "modifiedTime": 1753829150848, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430779350, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QyBZ5NxM8F9nCL9s" } diff --git a/src/packs/items/weapons/weapon_Improved_Mace_zSLx52U4Yltqx8F1.json b/src/packs/items/weapons/weapon_Improved_Mace_zSLx52U4Yltqx8F1.json index 3c079674..a4c469e3 100644 --- a/src/packs/items/weapons/weapon_Improved_Mace_zSLx52U4Yltqx8F1.json +++ b/src/packs/items/weapons/weapon_Improved_Mace_zSLx52U4Yltqx8F1.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829219204, - "modifiedTime": 1753829233784, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430785076, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zSLx52U4Yltqx8F1" } diff --git a/src/packs/items/weapons/weapon_Improved_Quarterstaff_BEmAR60PM3ZaiNXa.json b/src/packs/items/weapons/weapon_Improved_Quarterstaff_BEmAR60PM3ZaiNXa.json index 54b220a5..03975811 100644 --- a/src/packs/items/weapons/weapon_Improved_Quarterstaff_BEmAR60PM3ZaiNXa.json +++ b/src/packs/items/weapons/weapon_Improved_Quarterstaff_BEmAR60PM3ZaiNXa.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829305566, - "modifiedTime": 1753829326219, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430790792, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BEmAR60PM3ZaiNXa" } diff --git a/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json b/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json index 27808573..229d1682 100644 --- a/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json +++ b/src/packs/items/weapons/weapon_Improved_Rapier_LFPH8nD2f4Blv3AM.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829388946, - "modifiedTime": 1753829406872, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430796102, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!LFPH8nD2f4Blv3AM" } diff --git a/src/packs/items/weapons/weapon_Improved_Returning_Blade_SKNwkW23eVQjN4Zy.json b/src/packs/items/weapons/weapon_Improved_Returning_Blade_SKNwkW23eVQjN4Zy.json index 64404db7..1bc01015 100644 --- a/src/packs/items/weapons/weapon_Improved_Returning_Blade_SKNwkW23eVQjN4Zy.json +++ b/src/packs/items/weapons/weapon_Improved_Returning_Blade_SKNwkW23eVQjN4Zy.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830798994, - "modifiedTime": 1753830839524, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430915852, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SKNwkW23eVQjN4Zy" } diff --git a/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json b/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json index 41a85d9f..6d76129a 100644 --- a/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json +++ b/src/packs/items/weapons/weapon_Improved_Round_Shield_DlinEBGZfIlvreO3.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -138,12 +143,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753794098464, - "modifiedTime": 1756682973559, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1761503800669, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!DlinEBGZfIlvreO3.cXWSV50apzaNQkdA" } @@ -158,12 +163,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753744776245, - "modifiedTime": 1753794098472, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430336489, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!DlinEBGZfIlvreO3" } diff --git a/src/packs/items/weapons/weapon_Improved_Scepter_tj26lbNkwy8bORF4.json b/src/packs/items/weapons/weapon_Improved_Scepter_tj26lbNkwy8bORF4.json index a97d7e10..4d61a5aa 100644 --- a/src/packs/items/weapons/weapon_Improved_Scepter_tj26lbNkwy8bORF4.json +++ b/src/packs/items/weapons/weapon_Improved_Scepter_tj26lbNkwy8bORF4.json @@ -166,6 +166,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -179,12 +184,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830930043, - "modifiedTime": 1753835907269, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430920982, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tj26lbNkwy8bORF4" } diff --git a/src/packs/items/weapons/weapon_Improved_Shortbow_6ZWl6ARfvYBaAMwY.json b/src/packs/items/weapons/weapon_Improved_Shortbow_6ZWl6ARfvYBaAMwY.json index ec704881..6ed121f7 100644 --- a/src/packs/items/weapons/weapon_Improved_Shortbow_6ZWl6ARfvYBaAMwY.json +++ b/src/packs/items/weapons/weapon_Improved_Shortbow_6ZWl6ARfvYBaAMwY.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829484986, - "modifiedTime": 1753829516515, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430802429, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6ZWl6ARfvYBaAMwY" } diff --git a/src/packs/items/weapons/weapon_Improved_Shortstaff_Mn8ja5Oi1sXvvPSk.json b/src/packs/items/weapons/weapon_Improved_Shortstaff_Mn8ja5Oi1sXvvPSk.json index 5ff31862..f9c5246e 100644 --- a/src/packs/items/weapons/weapon_Improved_Shortstaff_Mn8ja5Oi1sXvvPSk.json +++ b/src/packs/items/weapons/weapon_Improved_Shortstaff_Mn8ja5Oi1sXvvPSk.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830852208, - "modifiedTime": 1753830874554, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430927432, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Mn8ja5Oi1sXvvPSk" } diff --git a/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json b/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json index c2704b4d..adae8915 100644 --- a/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json +++ b/src/packs/items/weapons/weapon_Improved_Shortsword_rSyBNRwemBVuTo3H.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753744566951, - "modifiedTime": 1755268322555, + "modifiedTime": 1755430345968, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!rSyBNRwemBVuTo3H" diff --git a/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json b/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json index 5685ac71..2b85fbb5 100644 --- a/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json +++ b/src/packs/items/weapons/weapon_Improved_Small_Dagger_nMuF8ZDZ2aXZVTg6.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753794291887, - "modifiedTime": 1755268329308, + "modifiedTime": 1755430352669, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!nMuF8ZDZ2aXZVTg6" diff --git a/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json b/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json index 367f80ad..32c080ff 100644 --- a/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json +++ b/src/packs/items/weapons/weapon_Improved_Spear_j5Pt1thLfcvopBij.json @@ -92,48 +92,14 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, - "effects": [ - { - "name": "Cumbersome", - "description": "-1 to Finesse", - "img": "icons/commodities/metal/mail-plate-steel.webp", - "changes": [ - { - "key": "system.traits.finesse.value", - "mode": 2, - "value": "-1" - } - ], - "_id": "8twXPJELZpvFWA5K", - "type": "base", - "system": {}, - "disabled": false, - "duration": { - "startTime": null, - "combat": null - }, - "origin": null, - "tint": "#ffffff", - "transfer": true, - "statuses": [], - "sort": 0, - "flags": {}, - "_stats": { - "compendiumSource": null, - "duplicateSource": null, - "exportSource": null, - "coreVersion": "13.346", - "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753829466016, - "modifiedTime": 1753829466016, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" - }, - "_key": "!items.effects!j5Pt1thLfcvopBij.8twXPJELZpvFWA5K" - } - ], + "effects": [], "sort": 0, "ownership": { "default": 0, @@ -144,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829443743, - "modifiedTime": 1753829474262, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430807883, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!j5Pt1thLfcvopBij" } diff --git a/src/packs/items/weapons/weapon_Improved_Tower_Shield_bxt3NsbMqTSdI5ab.json b/src/packs/items/weapons/weapon_Improved_Tower_Shield_bxt3NsbMqTSdI5ab.json index b612daef..ef768788 100644 --- a/src/packs/items/weapons/weapon_Improved_Tower_Shield_bxt3NsbMqTSdI5ab.json +++ b/src/packs/items/weapons/weapon_Improved_Tower_Shield_bxt3NsbMqTSdI5ab.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794198427, - "modifiedTime": 1753794267315, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430358886, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bxt3NsbMqTSdI5ab" } diff --git a/src/packs/items/weapons/weapon_Improved_Wand_6d9B2b5X2d2U56jt.json b/src/packs/items/weapons/weapon_Improved_Wand_6d9B2b5X2d2U56jt.json index 951b4115..54eaac9f 100644 --- a/src/packs/items/weapons/weapon_Improved_Wand_6d9B2b5X2d2U56jt.json +++ b/src/packs/items/weapons/weapon_Improved_Wand_6d9B2b5X2d2U56jt.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753830985241, - "modifiedTime": 1753831019167, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430932717, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6d9B2b5X2d2U56jt" } diff --git a/src/packs/items/weapons/weapon_Improved_Warhammer_pxaN4ZK4eqKrjtWj.json b/src/packs/items/weapons/weapon_Improved_Warhammer_pxaN4ZK4eqKrjtWj.json index 115195a7..17615b31 100644 --- a/src/packs/items/weapons/weapon_Improved_Warhammer_pxaN4ZK4eqKrjtWj.json +++ b/src/packs/items/weapons/weapon_Improved_Warhammer_pxaN4ZK4eqKrjtWj.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829240673, - "modifiedTime": 1753829265352, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430814443, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!pxaN4ZK4eqKrjtWj" } diff --git a/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json b/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json index 1035131d..b52bf465 100644 --- a/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json +++ b/src/packs/items/weapons/weapon_Improved_Whip_ftTp8VlsBQ1r4LFD.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794353291, - "modifiedTime": 1753808384267, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430364486, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ftTp8VlsBQ1r4LFD" } diff --git a/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json b/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json index d934731d..46acc280 100644 --- a/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json +++ b/src/packs/items/weapons/weapon_Keeper_s_Staff_q382JqMkqLaaFLIr.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753831418620, - "modifiedTime": 1754815023493, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430940256, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!q382JqMkqLaaFLIr" } diff --git a/src/packs/items/weapons/weapon_Knuckle_Blades_U8gfyvxoHm024inM.json b/src/packs/items/weapons/weapon_Knuckle_Blades_U8gfyvxoHm024inM.json index fafe9bbc..714f3b5d 100644 --- a/src/packs/items/weapons/weapon_Knuckle_Blades_U8gfyvxoHm024inM.json +++ b/src/packs/items/weapons/weapon_Knuckle_Blades_U8gfyvxoHm024inM.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829611315, - "modifiedTime": 1753829635422, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430819669, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!U8gfyvxoHm024inM" } diff --git a/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json b/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json index f2f53dc7..3cb214bd 100644 --- a/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json +++ b/src/packs/items/weapons/weapon_Knuckle_Claws_SFqganS8Du4aEKjQ.json @@ -123,6 +123,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -138,10 +143,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753797258168, - "modifiedTime": 1754814600761, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430475899, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SFqganS8Du4aEKjQ" } diff --git a/src/packs/items/weapons/weapon_Labrys_Axe_ijWppQzSOqVCb3rE.json b/src/packs/items/weapons/weapon_Labrys_Axe_ijWppQzSOqVCb3rE.json index fe91f8a1..051c759a 100644 --- a/src/packs/items/weapons/weapon_Labrys_Axe_ijWppQzSOqVCb3rE.json +++ b/src/packs/items/weapons/weapon_Labrys_Axe_ijWppQzSOqVCb3rE.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832206440, - "modifiedTime": 1753832248436, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431111826, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ijWppQzSOqVCb3rE" } diff --git a/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json b/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json index b402692f..9a448ab2 100644 --- a/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json +++ b/src/packs/items/weapons/weapon_Legendary_Arcane_Frame_Wheelchair_gA2tiET9VHGhwMoO.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -159,10 +164,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753836717240, - "modifiedTime": 1754845972571, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430202136, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "gA2tiET9VHGhwMoO", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Legendary_Arcane_Gauntlets_umADDPYCaykXDc1v.json b/src/packs/items/weapons/weapon_Legendary_Arcane_Gauntlets_umADDPYCaykXDc1v.json index ba769375..f9aabadf 100644 --- a/src/packs/items/weapons/weapon_Legendary_Arcane_Gauntlets_umADDPYCaykXDc1v.json +++ b/src/packs/items/weapons/weapon_Legendary_Arcane_Gauntlets_umADDPYCaykXDc1v.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835451334, - "modifiedTime": 1753835475492, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431441720, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!umADDPYCaykXDc1v" } diff --git a/src/packs/items/weapons/weapon_Legendary_Battleaxe_1nztpLzoHGfbKf5x.json b/src/packs/items/weapons/weapon_Legendary_Battleaxe_1nztpLzoHGfbKf5x.json index c7376573..3d08b628 100644 --- a/src/packs/items/weapons/weapon_Legendary_Battleaxe_1nztpLzoHGfbKf5x.json +++ b/src/packs/items/weapons/weapon_Legendary_Battleaxe_1nztpLzoHGfbKf5x.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834500236, - "modifiedTime": 1753834519405, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431304811, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1nztpLzoHGfbKf5x" } diff --git a/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json b/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json index 32d19734..6375e1b6 100644 --- a/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json +++ b/src/packs/items/weapons/weapon_Legendary_Broadsword_y3hfTPfZhMognyaJ.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753834430378, - "modifiedTime": 1754814961454, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755431309986, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!y3hfTPfZhMognyaJ" } diff --git a/src/packs/items/weapons/weapon_Legendary_Crossbow_1G6xX2QL9O0Rsgz7.json b/src/packs/items/weapons/weapon_Legendary_Crossbow_1G6xX2QL9O0Rsgz7.json index 51bc4ea3..9a66906b 100644 --- a/src/packs/items/weapons/weapon_Legendary_Crossbow_1G6xX2QL9O0Rsgz7.json +++ b/src/packs/items/weapons/weapon_Legendary_Crossbow_1G6xX2QL9O0Rsgz7.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834862922, - "modifiedTime": 1753834882694, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431317436, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1G6xX2QL9O0Rsgz7" } diff --git a/src/packs/items/weapons/weapon_Legendary_Cutlass_Rpyz0jbFJ1SwqfyD.json b/src/packs/items/weapons/weapon_Legendary_Cutlass_Rpyz0jbFJ1SwqfyD.json index 99950a86..a04487f0 100644 --- a/src/packs/items/weapons/weapon_Legendary_Cutlass_Rpyz0jbFJ1SwqfyD.json +++ b/src/packs/items/weapons/weapon_Legendary_Cutlass_Rpyz0jbFJ1SwqfyD.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834710917, - "modifiedTime": 1753834734158, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431326087, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Rpyz0jbFJ1SwqfyD" } diff --git a/src/packs/items/weapons/weapon_Legendary_Dagger_GmTg3Fdne1UPNs8t.json b/src/packs/items/weapons/weapon_Legendary_Dagger_GmTg3Fdne1UPNs8t.json index 02b8cdce..322b3b27 100644 --- a/src/packs/items/weapons/weapon_Legendary_Dagger_GmTg3Fdne1UPNs8t.json +++ b/src/packs/items/weapons/weapon_Legendary_Dagger_GmTg3Fdne1UPNs8t.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834616464, - "modifiedTime": 1753834659439, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431331293, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GmTg3Fdne1UPNs8t" } diff --git a/src/packs/items/weapons/weapon_Legendary_Dualstaff_o3rsLvImcLAx5TvD.json b/src/packs/items/weapons/weapon_Legendary_Dualstaff_o3rsLvImcLAx5TvD.json index 5c7977cc..e3f0f656 100644 --- a/src/packs/items/weapons/weapon_Legendary_Dualstaff_o3rsLvImcLAx5TvD.json +++ b/src/packs/items/weapons/weapon_Legendary_Dualstaff_o3rsLvImcLAx5TvD.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835724086, - "modifiedTime": 1753835787515, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431447143, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!o3rsLvImcLAx5TvD" } diff --git a/src/packs/items/weapons/weapon_Legendary_Glowing_Rings_PReWrfuPjoNQuieo.json b/src/packs/items/weapons/weapon_Legendary_Glowing_Rings_PReWrfuPjoNQuieo.json index 9d55a327..31776620 100644 --- a/src/packs/items/weapons/weapon_Legendary_Glowing_Rings_PReWrfuPjoNQuieo.json +++ b/src/packs/items/weapons/weapon_Legendary_Glowing_Rings_PReWrfuPjoNQuieo.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835522076, - "modifiedTime": 1753835564865, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431453215, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!PReWrfuPjoNQuieo" } diff --git a/src/packs/items/weapons/weapon_Legendary_Grappler_IrtUj0UntBMNn49G.json b/src/packs/items/weapons/weapon_Legendary_Grappler_IrtUj0UntBMNn49G.json index 3a22dde7..adcc5fe1 100644 --- a/src/packs/items/weapons/weapon_Legendary_Grappler_IrtUj0UntBMNn49G.json +++ b/src/packs/items/weapons/weapon_Legendary_Grappler_IrtUj0UntBMNn49G.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753797131628, - "modifiedTime": 1753797154423, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430482260, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!IrtUj0UntBMNn49G" } diff --git a/src/packs/items/weapons/weapon_Legendary_Greatstaff_jDtvEabkHY1GFgfc.json b/src/packs/items/weapons/weapon_Legendary_Greatstaff_jDtvEabkHY1GFgfc.json index a7dbbfc5..b0eb6642 100644 --- a/src/packs/items/weapons/weapon_Legendary_Greatstaff_jDtvEabkHY1GFgfc.json +++ b/src/packs/items/weapons/weapon_Legendary_Greatstaff_jDtvEabkHY1GFgfc.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835957503, - "modifiedTime": 1753835997508, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431458779, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jDtvEabkHY1GFgfc" } diff --git a/src/packs/items/weapons/weapon_Legendary_Greatsword_zMZ46F9VR7zdTxb9.json b/src/packs/items/weapons/weapon_Legendary_Greatsword_zMZ46F9VR7zdTxb9.json index cfd0cfc6..654ddaa8 100644 --- a/src/packs/items/weapons/weapon_Legendary_Greatsword_zMZ46F9VR7zdTxb9.json +++ b/src/packs/items/weapons/weapon_Legendary_Greatsword_zMZ46F9VR7zdTxb9.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -162,12 +167,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834526945, - "modifiedTime": 1753834554233, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431336357, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zMZ46F9VR7zdTxb9" } diff --git a/src/packs/items/weapons/weapon_Legendary_Halberd_1AuMNiJz96Ez9fur.json b/src/packs/items/weapons/weapon_Legendary_Halberd_1AuMNiJz96Ez9fur.json index caeb9c2e..38c67ecf 100644 --- a/src/packs/items/weapons/weapon_Legendary_Halberd_1AuMNiJz96Ez9fur.json +++ b/src/packs/items/weapons/weapon_Legendary_Halberd_1AuMNiJz96Ez9fur.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834772989, - "modifiedTime": 1753834797363, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431341765, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1AuMNiJz96Ez9fur" } diff --git a/src/packs/items/weapons/weapon_Legendary_Hallowed_Axe_0HmhnZnv1I6uX69c.json b/src/packs/items/weapons/weapon_Legendary_Hallowed_Axe_0HmhnZnv1I6uX69c.json index 2c56cdaa..563d52fa 100644 --- a/src/packs/items/weapons/weapon_Legendary_Hallowed_Axe_0HmhnZnv1I6uX69c.json +++ b/src/packs/items/weapons/weapon_Legendary_Hallowed_Axe_0HmhnZnv1I6uX69c.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835486056, - "modifiedTime": 1753835507874, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431464517, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0HmhnZnv1I6uX69c" } diff --git a/src/packs/items/weapons/weapon_Legendary_Hand_Crossbow_32nYyMaeDWaakSxz.json b/src/packs/items/weapons/weapon_Legendary_Hand_Crossbow_32nYyMaeDWaakSxz.json index 35e53a9a..cbb44354 100644 --- a/src/packs/items/weapons/weapon_Legendary_Hand_Crossbow_32nYyMaeDWaakSxz.json +++ b/src/packs/items/weapons/weapon_Legendary_Hand_Crossbow_32nYyMaeDWaakSxz.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753797168339, - "modifiedTime": 1753797192489, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430487677, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!32nYyMaeDWaakSxz" } diff --git a/src/packs/items/weapons/weapon_Legendary_Hand_Runes_DWLkswhluXuMy3bB.json b/src/packs/items/weapons/weapon_Legendary_Hand_Runes_DWLkswhluXuMy3bB.json index 73886272..5459f230 100644 --- a/src/packs/items/weapons/weapon_Legendary_Hand_Runes_DWLkswhluXuMy3bB.json +++ b/src/packs/items/weapons/weapon_Legendary_Hand_Runes_DWLkswhluXuMy3bB.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835579627, - "modifiedTime": 1753835606935, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431470561, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!DWLkswhluXuMy3bB" } diff --git a/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json b/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json index d337d32f..b5f1b74e 100644 --- a/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json +++ b/src/packs/items/weapons/weapon_Legendary_Heavy_Frame_Wheelchair_S6nB0CNlzdU05o5U.json @@ -99,6 +99,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 55, + "artist": "" } }, "effects": [ @@ -150,10 +155,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836676831, - "modifiedTime": 1754846000470, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430177593, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "S6nB0CNlzdU05o5U", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json b/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json index 622fcf12..a9b35948 100644 --- a/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json +++ b/src/packs/items/weapons/weapon_Legendary_Light_Frame_Wheelchair_Xt8tVSn5Fu6ly6LF.json @@ -17,7 +17,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -129,6 +128,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 54, + "artist": "" } }, "effects": [], @@ -143,10 +147,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836615437, - "modifiedTime": 1754846023338, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430241189, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_id": "Xt8tVSn5Fu6ly6LF", "sort": 0, diff --git a/src/packs/items/weapons/weapon_Legendary_Longbow_Utt1GpoH1fhaTOtN.json b/src/packs/items/weapons/weapon_Legendary_Longbow_Utt1GpoH1fhaTOtN.json index 333632dc..fdcc899a 100644 --- a/src/packs/items/weapons/weapon_Legendary_Longbow_Utt1GpoH1fhaTOtN.json +++ b/src/packs/items/weapons/weapon_Legendary_Longbow_Utt1GpoH1fhaTOtN.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834890609, - "modifiedTime": 1753834925920, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431350371, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Utt1GpoH1fhaTOtN" } diff --git a/src/packs/items/weapons/weapon_Legendary_Longsword_14abPqQcROJfDChR.json b/src/packs/items/weapons/weapon_Legendary_Longsword_14abPqQcROJfDChR.json index 636dd7a5..fd755a94 100644 --- a/src/packs/items/weapons/weapon_Legendary_Longsword_14abPqQcROJfDChR.json +++ b/src/packs/items/weapons/weapon_Legendary_Longsword_14abPqQcROJfDChR.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834472085, - "modifiedTime": 1753834491863, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431355505, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!14abPqQcROJfDChR" } diff --git a/src/packs/items/weapons/weapon_Legendary_Mace_RsDsy7tIhrhaAQQc.json b/src/packs/items/weapons/weapon_Legendary_Mace_RsDsy7tIhrhaAQQc.json index e037c5c8..535bba46 100644 --- a/src/packs/items/weapons/weapon_Legendary_Mace_RsDsy7tIhrhaAQQc.json +++ b/src/packs/items/weapons/weapon_Legendary_Mace_RsDsy7tIhrhaAQQc.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834566762, - "modifiedTime": 1753834581202, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431360506, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!RsDsy7tIhrhaAQQc" } diff --git a/src/packs/items/weapons/weapon_Legendary_Quarterstaff_1ZciqG7vIKLYpKsP.json b/src/packs/items/weapons/weapon_Legendary_Quarterstaff_1ZciqG7vIKLYpKsP.json index b4ea03f9..401d6c96 100644 --- a/src/packs/items/weapons/weapon_Legendary_Quarterstaff_1ZciqG7vIKLYpKsP.json +++ b/src/packs/items/weapons/weapon_Legendary_Quarterstaff_1ZciqG7vIKLYpKsP.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834677366, - "modifiedTime": 1753834698077, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431365622, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1ZciqG7vIKLYpKsP" } diff --git a/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json b/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json index bbdf3ad9..b4df7c8c 100644 --- a/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json +++ b/src/packs/items/weapons/weapon_Legendary_Rapier_BakN97v4jTePcXiZ.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834740751, - "modifiedTime": 1753834763060, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431370823, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BakN97v4jTePcXiZ" } diff --git a/src/packs/items/weapons/weapon_Legendary_Returning_Blade_mcj3CPkcSSDdAcBB.json b/src/packs/items/weapons/weapon_Legendary_Returning_Blade_mcj3CPkcSSDdAcBB.json index 8081d1ce..da3a5f42 100644 --- a/src/packs/items/weapons/weapon_Legendary_Returning_Blade_mcj3CPkcSSDdAcBB.json +++ b/src/packs/items/weapons/weapon_Legendary_Returning_Blade_mcj3CPkcSSDdAcBB.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835615004, - "modifiedTime": 1753835665790, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431477112, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mcj3CPkcSSDdAcBB" } diff --git a/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json b/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json index 5b768985..696c9650 100644 --- a/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json +++ b/src/packs/items/weapons/weapon_Legendary_Round_Shield_A28WL9E2lJ3iLZHW.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -138,12 +143,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753796983285, - "modifiedTime": 1756682777682, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1761503825366, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!A28WL9E2lJ3iLZHW.Z2p00q5h6x6seXys" } @@ -158,12 +163,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753796968563, - "modifiedTime": 1753797012196, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430492843, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!A28WL9E2lJ3iLZHW" } diff --git a/src/packs/items/weapons/weapon_Legendary_Scepter_IZ4CWNxfuM46JeCN.json b/src/packs/items/weapons/weapon_Legendary_Scepter_IZ4CWNxfuM46JeCN.json index 92d9b49c..afb3ef97 100644 --- a/src/packs/items/weapons/weapon_Legendary_Scepter_IZ4CWNxfuM46JeCN.json +++ b/src/packs/items/weapons/weapon_Legendary_Scepter_IZ4CWNxfuM46JeCN.json @@ -166,6 +166,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -179,12 +184,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835822353, - "modifiedTime": 1753835867763, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431483750, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!IZ4CWNxfuM46JeCN" } diff --git a/src/packs/items/weapons/weapon_Legendary_Shortbow_j7kp36jaetfn5jb3.json b/src/packs/items/weapons/weapon_Legendary_Shortbow_j7kp36jaetfn5jb3.json index 0cf8c3de..7e439d04 100644 --- a/src/packs/items/weapons/weapon_Legendary_Shortbow_j7kp36jaetfn5jb3.json +++ b/src/packs/items/weapons/weapon_Legendary_Shortbow_j7kp36jaetfn5jb3.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834834626, - "modifiedTime": 1753834854507, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431376890, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!j7kp36jaetfn5jb3" } diff --git a/src/packs/items/weapons/weapon_Legendary_Shortstaff_D3SbNvNJZAFuzfhg.json b/src/packs/items/weapons/weapon_Legendary_Shortstaff_D3SbNvNJZAFuzfhg.json index 9a3c1f13..44844553 100644 --- a/src/packs/items/weapons/weapon_Legendary_Shortstaff_D3SbNvNJZAFuzfhg.json +++ b/src/packs/items/weapons/weapon_Legendary_Shortstaff_D3SbNvNJZAFuzfhg.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835676579, - "modifiedTime": 1753835813150, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431489948, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!D3SbNvNJZAFuzfhg" } diff --git a/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json b/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json index 4c1a13a3..4e6ace3f 100644 --- a/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json +++ b/src/packs/items/weapons/weapon_Legendary_Shortsword_dEumq3BIZBk5xYTk.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753796913551, - "modifiedTime": 1755268362375, + "modifiedTime": 1755430497769, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dEumq3BIZBk5xYTk" diff --git a/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json b/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json index 67d58df9..8381111e 100644 --- a/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json +++ b/src/packs/items/weapons/weapon_Legendary_Small_Dagger_Px3Rh3kIvAqyISxJ.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753797057472, - "modifiedTime": 1755268370240, + "modifiedTime": 1755430502860, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Px3Rh3kIvAqyISxJ" diff --git a/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json b/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json index bfdcd4eb..1f76d2aa 100644 --- a/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json +++ b/src/packs/items/weapons/weapon_Legendary_Spear_4e5pWxi2qohuGsWh.json @@ -92,48 +92,14 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, - "effects": [ - { - "name": "Cumbersome", - "description": "-1 to Finesse", - "img": "icons/commodities/metal/mail-plate-steel.webp", - "changes": [ - { - "key": "system.traits.finesse.value", - "mode": 2, - "value": "-1" - } - ], - "_id": "f44KWDgCQeKYfccr", - "type": "base", - "system": {}, - "disabled": false, - "duration": { - "startTime": null, - "combat": null - }, - "origin": null, - "tint": "#ffffff", - "transfer": true, - "statuses": [], - "sort": 0, - "flags": {}, - "_stats": { - "compendiumSource": null, - "duplicateSource": null, - "exportSource": null, - "coreVersion": "13.346", - "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753834816288, - "modifiedTime": 1753834816288, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" - }, - "_key": "!items.effects!4e5pWxi2qohuGsWh.f44KWDgCQeKYfccr" - } - ], + "effects": [], "sort": 0, "ownership": { "default": 0, @@ -144,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834806427, - "modifiedTime": 1753834827595, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431384407, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4e5pWxi2qohuGsWh" } diff --git a/src/packs/items/weapons/weapon_Legendary_Tower_Shield_MaJIROht7A9LxIZx.json b/src/packs/items/weapons/weapon_Legendary_Tower_Shield_MaJIROht7A9LxIZx.json index 7e62f1aa..39d7b7c5 100644 --- a/src/packs/items/weapons/weapon_Legendary_Tower_Shield_MaJIROht7A9LxIZx.json +++ b/src/packs/items/weapons/weapon_Legendary_Tower_Shield_MaJIROht7A9LxIZx.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753797026049, - "modifiedTime": 1753797043015, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430508197, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MaJIROht7A9LxIZx" } diff --git a/src/packs/items/weapons/weapon_Legendary_Wand_wPjg0LufJH9vUfVM.json b/src/packs/items/weapons/weapon_Legendary_Wand_wPjg0LufJH9vUfVM.json index be8b131b..c58aab9e 100644 --- a/src/packs/items/weapons/weapon_Legendary_Wand_wPjg0LufJH9vUfVM.json +++ b/src/packs/items/weapons/weapon_Legendary_Wand_wPjg0LufJH9vUfVM.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835923888, - "modifiedTime": 1753835965485, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431495832, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!wPjg0LufJH9vUfVM" } diff --git a/src/packs/items/weapons/weapon_Legendary_Warhammer_W9ymfEDck2icfvla.json b/src/packs/items/weapons/weapon_Legendary_Warhammer_W9ymfEDck2icfvla.json index b449fca5..5970022d 100644 --- a/src/packs/items/weapons/weapon_Legendary_Warhammer_W9ymfEDck2icfvla.json +++ b/src/packs/items/weapons/weapon_Legendary_Warhammer_W9ymfEDck2icfvla.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834588280, - "modifiedTime": 1753834609113, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431389974, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!W9ymfEDck2icfvla" } diff --git a/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json b/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json index b4b8bf02..736db796 100644 --- a/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json +++ b/src/packs/items/weapons/weapon_Legendary_Whip_Wcdbf6yS3LEt7nsg.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753797101746, - "modifiedTime": 1753808440137, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430513049, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Wcdbf6yS3LEt7nsg" } diff --git a/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json b/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json index 9bb97d2b..72aa2931 100644 --- a/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json +++ b/src/packs/items/weapons/weapon_Light_Frame_Wheelchair_iaGnlUkShBgdeMo0.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 54, + "artist": "" } }, "effects": [], @@ -145,10 +149,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836579296, - "modifiedTime": 1754846015528, - "lastModifiedBy": "H02dtt2xvVJvYESk" + "modifiedTime": 1755430218981, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!iaGnlUkShBgdeMo0" } diff --git a/src/packs/items/weapons/weapon_Longbow_YfVs6Se903az4Yet.json b/src/packs/items/weapons/weapon_Longbow_YfVs6Se903az4Yet.json index e20f9111..39a0582f 100644 --- a/src/packs/items/weapons/weapon_Longbow_YfVs6Se903az4Yet.json +++ b/src/packs/items/weapons/weapon_Longbow_YfVs6Se903az4Yet.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828135552, - "modifiedTime": 1753828159427, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430591132, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!YfVs6Se903az4Yet" } diff --git a/src/packs/items/weapons/weapon_Longsword_Iv8BZM1R24QMT72M.json b/src/packs/items/weapons/weapon_Longsword_Iv8BZM1R24QMT72M.json index c5d9070b..b58eb1d5 100644 --- a/src/packs/items/weapons/weapon_Longsword_Iv8BZM1R24QMT72M.json +++ b/src/packs/items/weapons/weapon_Longsword_Iv8BZM1R24QMT72M.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827769163, - "modifiedTime": 1753827781183, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430596498, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Iv8BZM1R24QMT72M" } diff --git a/src/packs/items/weapons/weapon_Mace_cKQCDyM2UopDL9zF.json b/src/packs/items/weapons/weapon_Mace_cKQCDyM2UopDL9zF.json index 529e3874..f074eaba 100644 --- a/src/packs/items/weapons/weapon_Mace_cKQCDyM2UopDL9zF.json +++ b/src/packs/items/weapons/weapon_Mace_cKQCDyM2UopDL9zF.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827843717, - "modifiedTime": 1753827858825, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430601987, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cKQCDyM2UopDL9zF" } diff --git a/src/packs/items/weapons/weapon_Mage_Orb_XKBmBUEoGLdLcuqQ.json b/src/packs/items/weapons/weapon_Mage_Orb_XKBmBUEoGLdLcuqQ.json index f609e409..27725351 100644 --- a/src/packs/items/weapons/weapon_Mage_Orb_XKBmBUEoGLdLcuqQ.json +++ b/src/packs/items/weapons/weapon_Mage_Orb_XKBmBUEoGLdLcuqQ.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753834259866, - "modifiedTime": 1753834310221, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431242468, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!XKBmBUEoGLdLcuqQ" } diff --git a/src/packs/items/weapons/weapon_Magus_Revolver_jGykNGQiKm63tCiE.json b/src/packs/items/weapons/weapon_Magus_Revolver_jGykNGQiKm63tCiE.json index daa68be1..9f46d9be 100644 --- a/src/packs/items/weapons/weapon_Magus_Revolver_jGykNGQiKm63tCiE.json +++ b/src/packs/items/weapons/weapon_Magus_Revolver_jGykNGQiKm63tCiE.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836385650, - "modifiedTime": 1753836419000, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431501404, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jGykNGQiKm63tCiE" } diff --git a/src/packs/items/weapons/weapon_Meridian_Cutlass_Gi26Zk9VqlAAgx3E.json b/src/packs/items/weapons/weapon_Meridian_Cutlass_Gi26Zk9VqlAAgx3E.json index e7809a76..d92bc921 100644 --- a/src/packs/items/weapons/weapon_Meridian_Cutlass_Gi26Zk9VqlAAgx3E.json +++ b/src/packs/items/weapons/weapon_Meridian_Cutlass_Gi26Zk9VqlAAgx3E.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832261628, - "modifiedTime": 1753832286780, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431117685, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Gi26Zk9VqlAAgx3E" } diff --git a/src/packs/items/weapons/weapon_Midas_Scythe_BdLfy5i488VZgkjP.json b/src/packs/items/weapons/weapon_Midas_Scythe_BdLfy5i488VZgkjP.json index 420f28b8..bd682fac 100644 --- a/src/packs/items/weapons/weapon_Midas_Scythe_BdLfy5i488VZgkjP.json +++ b/src/packs/items/weapons/weapon_Midas_Scythe_BdLfy5i488VZgkjP.json @@ -129,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [ @@ -181,12 +186,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836123608, - "modifiedTime": 1753836160033, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431507969, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!BdLfy5i488VZgkjP" } diff --git a/src/packs/items/weapons/weapon_Parrying_Dagger_taAZDkDCpeNgxhnn.json b/src/packs/items/weapons/weapon_Parrying_Dagger_taAZDkDCpeNgxhnn.json index c4a796a7..05b1f08b 100644 --- a/src/packs/items/weapons/weapon_Parrying_Dagger_taAZDkDCpeNgxhnn.json +++ b/src/packs/items/weapons/weapon_Parrying_Dagger_taAZDkDCpeNgxhnn.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794685727, - "modifiedTime": 1753794748494, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430370186, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!taAZDkDCpeNgxhnn" } diff --git a/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json b/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json index 417fae15..f75537d3 100644 --- a/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json +++ b/src/packs/items/weapons/weapon_Powered_Gauntlet_bW3xw5S9DbaLCN3E.json @@ -22,7 +22,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -137,6 +136,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [ @@ -189,12 +193,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753796723376, - "modifiedTime": 1753808423862, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430461362, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!bW3xw5S9DbaLCN3E" } diff --git a/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json b/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json index e3dd3035..d6c5b2cb 100644 --- a/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json +++ b/src/packs/items/weapons/weapon_Primer_Shard_SxcblanBvqaest3A.json @@ -123,6 +123,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 53, + "artist": "" } }, "effects": [], @@ -138,10 +143,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753797317938, - "modifiedTime": 1754814518028, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430518095, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!SxcblanBvqaest3A" } diff --git a/src/packs/items/weapons/weapon_Quarterstaff_mlIj88p1wcQNjEDG.json b/src/packs/items/weapons/weapon_Quarterstaff_mlIj88p1wcQNjEDG.json index 7526e8c1..2f6fcbb9 100644 --- a/src/packs/items/weapons/weapon_Quarterstaff_mlIj88p1wcQNjEDG.json +++ b/src/packs/items/weapons/weapon_Quarterstaff_mlIj88p1wcQNjEDG.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827915482, - "modifiedTime": 1753827935877, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430606837, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mlIj88p1wcQNjEDG" } diff --git a/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json b/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json index 01e1cbf2..7b6129ce 100644 --- a/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json +++ b/src/packs/items/weapons/weapon_Rapier_zkAgEW6zMkRZalEm.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827969157, - "modifiedTime": 1753827996285, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430611691, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zkAgEW6zMkRZalEm" } diff --git a/src/packs/items/weapons/weapon_Retractable_Saber_i8CqVTzqoRoCewNe.json b/src/packs/items/weapons/weapon_Retractable_Saber_i8CqVTzqoRoCewNe.json index 350d8b4f..fd0b1900 100644 --- a/src/packs/items/weapons/weapon_Retractable_Saber_i8CqVTzqoRoCewNe.json +++ b/src/packs/items/weapons/weapon_Retractable_Saber_i8CqVTzqoRoCewNe.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832298659, - "modifiedTime": 1753832323983, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431122548, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!i8CqVTzqoRoCewNe" } diff --git a/src/packs/items/weapons/weapon_Returning_Axe_FtsQGwOg3r8uUCST.json b/src/packs/items/weapons/weapon_Returning_Axe_FtsQGwOg3r8uUCST.json index 5fcd1214..5884b401 100644 --- a/src/packs/items/weapons/weapon_Returning_Axe_FtsQGwOg3r8uUCST.json +++ b/src/packs/items/weapons/weapon_Returning_Axe_FtsQGwOg3r8uUCST.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753794760906, - "modifiedTime": 1753794803866, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430383420, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!FtsQGwOg3r8uUCST" } diff --git a/src/packs/items/weapons/weapon_Returning_Blade_4fQpVfQ3NVwTHStA.json b/src/packs/items/weapons/weapon_Returning_Blade_4fQpVfQ3NVwTHStA.json index e20c840e..1d6d48e9 100644 --- a/src/packs/items/weapons/weapon_Returning_Blade_4fQpVfQ3NVwTHStA.json +++ b/src/packs/items/weapons/weapon_Returning_Blade_4fQpVfQ3NVwTHStA.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828345143, - "modifiedTime": 1753828368281, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430673452, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4fQpVfQ3NVwTHStA" } diff --git a/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json b/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json index 9c71aa5c..c00a90b6 100644 --- a/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json +++ b/src/packs/items/weapons/weapon_Ricochet_Axes_E9QDh5o9eQ1Qx0kH.json @@ -19,8 +19,7 @@ "key": "stress", "value": 1, "scalable": true, - "step": 1, - "keyIsID": false + "step": 1 } ], "_id": "x9cz8u1utQ6DtoKA", @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835247877, - "modifiedTime": 1753835276839, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431395791, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!E9QDh5o9eQ1Qx0kH" } diff --git a/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json b/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json index 5ba5de2b..c0f32445 100644 --- a/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json +++ b/src/packs/items/weapons/weapon_Round_Shield_mxwWKDujgsRcZWPT.json @@ -100,12 +100,17 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ { "name": "Protective", - "description": "

Add the item's Tier to your Armor Score.

", + "description": "

Add the item's Tier to your Armor Score

", "img": "icons/skills/melee/shield-block-gray-orange.webp", "changes": [ { @@ -138,12 +143,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.348", + "coreVersion": "13.350", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1753794114980, - "modifiedTime": 1756682994216, - "lastModifiedBy": "mdk78Q6pOyHh6aBg" + "modifiedTime": 1761503774632, + "lastModifiedBy": "fBcTgyTzoARBvohY" }, "_key": "!items.effects!mxwWKDujgsRcZWPT.M70a81e0Mg66jHRL" } @@ -158,12 +163,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753742068200, - "modifiedTime": 1753794114990, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430279232, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!mxwWKDujgsRcZWPT" } diff --git a/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json b/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json index ce7fe3bc..533f7ca9 100644 --- a/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json +++ b/src/packs/items/weapons/weapon_Runes_of_Ruination_EG6mZhr3ib56r974.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833802007, - "modifiedTime": 1753833831195, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431248793, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!EG6mZhr3ib56r974" } diff --git a/src/packs/items/weapons/weapon_Scepter_GZh345N8fmuS4Jeh.json b/src/packs/items/weapons/weapon_Scepter_GZh345N8fmuS4Jeh.json index c7a686e7..a4393081 100644 --- a/src/packs/items/weapons/weapon_Scepter_GZh345N8fmuS4Jeh.json +++ b/src/packs/items/weapons/weapon_Scepter_GZh345N8fmuS4Jeh.json @@ -166,6 +166,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -179,12 +184,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828453134, - "modifiedTime": 1753835916388, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430678619, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!GZh345N8fmuS4Jeh" } diff --git a/src/packs/items/weapons/weapon_Scepter_of_Elias_acPGwIaUhx3R0mTq.json b/src/packs/items/weapons/weapon_Scepter_of_Elias_acPGwIaUhx3R0mTq.json index 4348fbee..0c95d62e 100644 --- a/src/packs/items/weapons/weapon_Scepter_of_Elias_acPGwIaUhx3R0mTq.json +++ b/src/packs/items/weapons/weapon_Scepter_of_Elias_acPGwIaUhx3R0mTq.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831343009, - "modifiedTime": 1753831365565, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430946684, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!acPGwIaUhx3R0mTq" } diff --git a/src/packs/items/weapons/weapon_Shortbow_p9tdjQr2AZP19RYm.json b/src/packs/items/weapons/weapon_Shortbow_p9tdjQr2AZP19RYm.json index 424f762d..70b697e6 100644 --- a/src/packs/items/weapons/weapon_Shortbow_p9tdjQr2AZP19RYm.json +++ b/src/packs/items/weapons/weapon_Shortbow_p9tdjQr2AZP19RYm.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828079904, - "modifiedTime": 1753828100575, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430616717, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!p9tdjQr2AZP19RYm" } diff --git a/src/packs/items/weapons/weapon_Shortstaff_vHDHG3STcxTEfYAM.json b/src/packs/items/weapons/weapon_Shortstaff_vHDHG3STcxTEfYAM.json index ed9f9492..73f7985a 100644 --- a/src/packs/items/weapons/weapon_Shortstaff_vHDHG3STcxTEfYAM.json +++ b/src/packs/items/weapons/weapon_Shortstaff_vHDHG3STcxTEfYAM.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828380553, - "modifiedTime": 1753828404541, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430683436, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!vHDHG3STcxTEfYAM" } diff --git a/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json b/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json index 8e1c9d03..05f355eb 100644 --- a/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json +++ b/src/packs/items/weapons/weapon_Shortsword_cjGZpXCoshEqi1FI.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -167,9 +172,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753741549716, - "modifiedTime": 1755268286538, + "modifiedTime": 1755430284749, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cjGZpXCoshEqi1FI" diff --git a/src/packs/items/weapons/weapon_Siphoning_Gauntlets_1N1jggda5DfdzdMj.json b/src/packs/items/weapons/weapon_Siphoning_Gauntlets_1N1jggda5DfdzdMj.json index fcadecf6..34159ba9 100644 --- a/src/packs/items/weapons/weapon_Siphoning_Gauntlets_1N1jggda5DfdzdMj.json +++ b/src/packs/items/weapons/weapon_Siphoning_Gauntlets_1N1jggda5DfdzdMj.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836075703, - "modifiedTime": 1753836131553, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431513330, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1N1jggda5DfdzdMj" } diff --git a/src/packs/items/weapons/weapon_Sledge_Axe_OxsEmffWriiQmqJK.json b/src/packs/items/weapons/weapon_Sledge_Axe_OxsEmffWriiQmqJK.json index b37a1027..ab3945ae 100644 --- a/src/packs/items/weapons/weapon_Sledge_Axe_OxsEmffWriiQmqJK.json +++ b/src/packs/items/weapons/weapon_Sledge_Axe_OxsEmffWriiQmqJK.json @@ -155,6 +155,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [ @@ -207,12 +212,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835064119, - "modifiedTime": 1753835089195, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431401912, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!OxsEmffWriiQmqJK" } diff --git a/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json b/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json index 1a11cab5..e824ea75 100644 --- a/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json +++ b/src/packs/items/weapons/weapon_Small_Dagger_wKklDxs5nkzILNp4.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -161,9 +166,9 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.4", + "systemVersion": "1.0.5", "createdTime": 1753744141625, - "modifiedTime": 1755268300204, + "modifiedTime": 1755430291284, "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!wKklDxs5nkzILNp4" diff --git a/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json b/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json index 77ba9a93..2432a75b 100644 --- a/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json +++ b/src/packs/items/weapons/weapon_Spear_TF85tKJetUjLwh54.json @@ -92,48 +92,14 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, - "effects": [ - { - "name": "Cumbersome", - "description": "-1 to Finesse", - "img": "icons/commodities/metal/mail-plate-steel.webp", - "changes": [ - { - "key": "system.traits.finesse.value", - "mode": 2, - "value": "-1" - } - ], - "_id": "Z5MnVI8EOOgzRdXC", - "type": "base", - "system": {}, - "disabled": false, - "duration": { - "startTime": null, - "combat": null - }, - "origin": null, - "tint": "#ffffff", - "transfer": true, - "statuses": [], - "sort": 0, - "flags": {}, - "_stats": { - "compendiumSource": null, - "duplicateSource": null, - "exportSource": null, - "coreVersion": "13.346", - "systemId": "daggerheart", - "systemVersion": "0.0.1", - "createdTime": 1753828072355, - "modifiedTime": 1753828072355, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" - }, - "_key": "!items.effects!TF85tKJetUjLwh54.Z5MnVI8EOOgzRdXC" - } - ], + "effects": [], "sort": 0, "ownership": { "default": 0, @@ -144,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828035153, - "modifiedTime": 1753828072360, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430621466, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TF85tKJetUjLwh54" } diff --git a/src/packs/items/weapons/weapon_Spiked_Bow_O1w8KPYH85ZS8X64.json b/src/packs/items/weapons/weapon_Spiked_Bow_O1w8KPYH85ZS8X64.json index f4f34d63..f3932e9c 100644 --- a/src/packs/items/weapons/weapon_Spiked_Bow_O1w8KPYH85ZS8X64.json +++ b/src/packs/items/weapons/weapon_Spiked_Bow_O1w8KPYH85ZS8X64.json @@ -164,6 +164,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -177,12 +182,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832511150, - "modifiedTime": 1753832558389, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431128203, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!O1w8KPYH85ZS8X64" } diff --git a/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json b/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json index 9b9d691a..29ff25a8 100644 --- a/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json +++ b/src/packs/items/weapons/weapon_Spiked_Shield_vzyzFwLUniWZV1rt.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -166,10 +171,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753794535926, - "modifiedTime": 1754814481212, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430389345, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!vzyzFwLUniWZV1rt" } diff --git a/src/packs/items/weapons/weapon_Steelforged_Halberd_6bkbw4Ap644KZGvJ.json b/src/packs/items/weapons/weapon_Steelforged_Halberd_6bkbw4Ap644KZGvJ.json index a7d7cd60..f869f8d2 100644 --- a/src/packs/items/weapons/weapon_Steelforged_Halberd_6bkbw4Ap644KZGvJ.json +++ b/src/packs/items/weapons/weapon_Steelforged_Halberd_6bkbw4Ap644KZGvJ.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829710295, - "modifiedTime": 1753829730643, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430825877, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!6bkbw4Ap644KZGvJ" } diff --git a/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json b/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json index 58d4a7c7..141d92c1 100644 --- a/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json +++ b/src/packs/items/weapons/weapon_Swinging_Ropeblade_1jOJHHKdtk3s2jaY.json @@ -18,7 +18,6 @@ { "key": "hope", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 50, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753835178086, - "modifiedTime": 1753835227169, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431409725, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1jOJHHKdtk3s2jaY" } diff --git a/src/packs/items/weapons/weapon_Sword_of_Light___Flame_TVPCWnSELOVBv6G1.json b/src/packs/items/weapons/weapon_Sword_of_Light___Flame_TVPCWnSELOVBv6G1.json index 7985574e..90a857ab 100644 --- a/src/packs/items/weapons/weapon_Sword_of_Light___Flame_TVPCWnSELOVBv6G1.json +++ b/src/packs/items/weapons/weapon_Sword_of_Light___Flame_TVPCWnSELOVBv6G1.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836015665, - "modifiedTime": 1753836060729, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431519254, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TVPCWnSELOVBv6G1" } diff --git a/src/packs/items/weapons/weapon_Talon_Blades_jlLtgK468rO5IssR.json b/src/packs/items/weapons/weapon_Talon_Blades_jlLtgK468rO5IssR.json index fb6c6f98..c3a4c20c 100644 --- a/src/packs/items/weapons/weapon_Talon_Blades_jlLtgK468rO5IssR.json +++ b/src/packs/items/weapons/weapon_Talon_Blades_jlLtgK468rO5IssR.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 48, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753832378140, - "modifiedTime": 1753832420169, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431133663, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!jlLtgK468rO5IssR" } diff --git a/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json b/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json index cec5b0d1..5b370f70 100644 --- a/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json +++ b/src/packs/items/weapons/weapon_Thistlebow_I1nDGpulg29GpWOW.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753836302436, - "modifiedTime": 1754815251135, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755431525815, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!I1nDGpulg29GpWOW" } diff --git a/src/packs/items/weapons/weapon_Tower_Shield_C9aWpK1shVMWP4m5.json b/src/packs/items/weapons/weapon_Tower_Shield_C9aWpK1shVMWP4m5.json index 874dfc5f..850f79a6 100644 --- a/src/packs/items/weapons/weapon_Tower_Shield_C9aWpK1shVMWP4m5.json +++ b/src/packs/items/weapons/weapon_Tower_Shield_C9aWpK1shVMWP4m5.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [ @@ -157,12 +162,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753742294258, - "modifiedTime": 1753742986604, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430296399, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!C9aWpK1shVMWP4m5" } diff --git a/src/packs/items/weapons/weapon_Urok_Broadsword_zGm6Wa1fGF6cECY5.json b/src/packs/items/weapons/weapon_Urok_Broadsword_zGm6Wa1fGF6cECY5.json index b1fad87b..d971f0c5 100644 --- a/src/packs/items/weapons/weapon_Urok_Broadsword_zGm6Wa1fGF6cECY5.json +++ b/src/packs/items/weapons/weapon_Urok_Broadsword_zGm6Wa1fGF6cECY5.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753829648524, - "modifiedTime": 1753829674190, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430831515, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!zGm6Wa1fGF6cECY5" } diff --git a/src/packs/items/weapons/weapon_Wand_ItWisJFNGMNWeaCV.json b/src/packs/items/weapons/weapon_Wand_ItWisJFNGMNWeaCV.json index d990e614..e500c15f 100644 --- a/src/packs/items/weapons/weapon_Wand_ItWisJFNGMNWeaCV.json +++ b/src/packs/items/weapons/weapon_Wand_ItWisJFNGMNWeaCV.json @@ -92,6 +92,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [], @@ -105,12 +110,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753828516647, - "modifiedTime": 1753828537368, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430688603, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ItWisJFNGMNWeaCV" } diff --git a/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json b/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json index 46471b7f..425c9ea1 100644 --- a/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json +++ b/src/packs/items/weapons/weapon_Wand_of_Enthrallment_tP6vmnrmTq2h5sj7.json @@ -22,7 +22,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -137,6 +136,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [ @@ -189,12 +193,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831377291, - "modifiedTime": 1753831408550, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430952360, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tP6vmnrmTq2h5sj7" } diff --git a/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json b/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json index 76b82f6a..3fbea383 100644 --- a/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json +++ b/src/packs/items/weapons/weapon_Wand_of_Essek_ZrRGNjGCgZTTfgDG.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 51, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753836344144, - "modifiedTime": 1753836369996, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431531704, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ZrRGNjGCgZTTfgDG" } diff --git a/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json b/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json index 5d65a310..2db63c9d 100644 --- a/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json +++ b/src/packs/items/weapons/weapon_War_Scythe_z6yEdFYQJ5IzgTX3.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 46, + "artist": "" } }, "effects": [ @@ -161,10 +166,10 @@ "exportSource": null, "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "1.0.0", + "systemVersion": "1.0.5", "createdTime": 1753829740082, - "modifiedTime": 1754814992370, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755430838534, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!z6yEdFYQJ5IzgTX3" } diff --git a/src/packs/items/weapons/weapon_Warhammer_ZXh1GQahBiODfSTC.json b/src/packs/items/weapons/weapon_Warhammer_ZXh1GQahBiODfSTC.json index 0804236c..7668ae21 100644 --- a/src/packs/items/weapons/weapon_Warhammer_ZXh1GQahBiODfSTC.json +++ b/src/packs/items/weapons/weapon_Warhammer_ZXh1GQahBiODfSTC.json @@ -100,6 +100,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 45, + "artist": "" } }, "effects": [ @@ -152,12 +157,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753827866228, - "modifiedTime": 1753827888903, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430626466, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!ZXh1GQahBiODfSTC" } diff --git a/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json b/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json index b354f5f4..36490a5d 100644 --- a/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json +++ b/src/packs/items/weapons/weapon_Whip_CmtWqw6DwoePnX7W.json @@ -18,7 +18,6 @@ { "key": "stress", "value": 1, - "keyIsID": false, "scalable": false, "step": null } @@ -130,6 +129,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 52, + "artist": "" } }, "effects": [], @@ -143,12 +147,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753744226240, - "modifiedTime": 1753808365384, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430301656, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!CmtWqw6DwoePnX7W" } diff --git a/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json b/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json index 743aef06..bc8dea0d 100644 --- a/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json +++ b/src/packs/items/weapons/weapon_Widogast_Pendant_8Z5QrThfwkYPXNco.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 49, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753833840059, - "modifiedTime": 1753833870464, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755431254653, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!8Z5QrThfwkYPXNco" } diff --git a/src/packs/items/weapons/weapon_Yutari_Bloodbow_0XpSBYXxtywvBFQi.json b/src/packs/items/weapons/weapon_Yutari_Bloodbow_0XpSBYXxtywvBFQi.json index f096cbc4..79ec0577 100644 --- a/src/packs/items/weapons/weapon_Yutari_Bloodbow_0XpSBYXxtywvBFQi.json +++ b/src/packs/items/weapons/weapon_Yutari_Bloodbow_0XpSBYXxtywvBFQi.json @@ -122,6 +122,11 @@ "trait": null } } + }, + "attribution": { + "source": "Daggerheart SRD", + "page": 47, + "artist": "" } }, "effects": [], @@ -135,12 +140,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1753831267751, - "modifiedTime": 1753831296579, - "lastModifiedBy": "FecEtPuoQh6MpjQ0" + "modifiedTime": 1755430958208, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0XpSBYXxtywvBFQi" } diff --git a/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json b/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json index ece610c0..a1bc9f84 100644 --- a/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json +++ b/src/packs/journals/journal_Daggerheart_SRD_uNs7ne9VCbbu5dcG.json @@ -125,7 +125,7 @@ "image": {}, "text": { "format": 1, - "content": "

FLOW OF THE GAME

Daggerheart is a conversation. The GM describes fictional scenarios involving the PCs, and the players take turns describing how their characters react. The goal of every person at the table is to build upon everyone else’s ideas and collaboratively tell a satisfying story. The system facilitates this collaborative process by providing structure to the conversation and mechanics for resolving moments of tension where fate or fortune determine the outcome of events.

PLAYER PRINCIPLES & BEST PRACTICES

To get the most out of Daggerheart, we recommend players keep the following principles and practices in mind throughout each session:

PRINCIPLES

  • Be a fan of your character and their journey.

  • Spotlight your friends.

  • Address the characters and address the players.

  • Build the world together.

  • Play to find out what happens.

  • Hold on gently.

BEST PRACTICES

  • Embrace danger.

  • Use your resources.

  • Tell the story.

  • Discover your character.

For more information, see the Daggerheart Core Rulebook, pages 9 and 108.

CORE GAMEPLAY LOOP

The core gameplay loop is the procedure that drives every scene, both in and out of combat:

STEP 1: SET THE SCENE

The GM describes a scenario, establishing the PCs’ surroundings and any dangers, NPCs, or other important details the characters would notice.

STEP 2: ASK AND ANSWER QUESTIONS

The players ask clarifying questions to explore the scene more deeply and gather information that could inform their characters’ actions. The GM responds to these questions by giving the players information their characters could easily obtain, or by asking questions of their own to the players. The players also respond to any questions the GM poses to them.

In this way, the table builds out the fiction collaboratively.

STEP 3: BUILD ON THE FICTION

As the scene develops, the players find opportunities to take action—problems to solve, obstacles to overcome, mysteries to investigate, and so on. The players describe how their characters proceed; if their proposed actions carry no chance of failure (or if failure would be boring), they automatically succeed. But if the outcome of their action is unknown, the GM calls for an action roll. Either way, the table works the outcome into the story and moves the fiction forward, narrating how the PC’s actions have changed things.

STEP 4: GO BACK TO STEP 1

The process repeats from the beginning, with the GM relaying any updated details or material changes to the players. This process continues until the end of the scene is triggered by a mechanic or arrives organically.

THE SPORLIGHT

The spotlight is a symbol that represents the table’s attention—and therefore the immediate focus of both the narrative and the game mechanics. Any time a character or player becomes the focus of a scene, they “are in the spotlight” or “have the spotlight.”

The spotlight moves around the table organically as scenes unfold unless a mechanical trigger determines where the spotlight goes next. For example, when a player fails an action roll, the mechanics prompt the GM to seize the spotlight and make a GM move.

TURN ORDER & ACTION ECONOMY

Daggerheart’s turns don’t follow a traditional, rigid format:
there is no explicit initiative mechanic and characters don’t have a set number of actions they can take or things they can do before the spotlight passes to someone else. A player with the spotlight describes what their character does and the spotlight simply swings to whoever:

  1. the fiction would naturally turn it toward

  2. hasn’t had the focus in a while, or

  3. a triggered mechanic puts it on


Optional: Spotlight Tracker Tool

If your group prefers a more traditional action economy, you can use tokens to track how many times a player has had the spotlight: At the start of a session or scene, each player adds a certain number of tokens (we recommend 3) to their character sheet and removes a token each time they take an action. If the spotlight would swing to someone without any tokens, it swings to someone else instead. Once every player has used all their available tokens, players refill their character sheet with the same number of tokens as before, then continue playing.


MAKING MOVES & TAKING ACTION

Any time a character does something to advance the story, such as speaking with another character, interacting with the environment, making an attack, casting a spell, or using a class feature, they are making a move.

ACTION ROLLS

Any move where success would be trivial or failure would be boring automatically succeeds, but any move that’s difficult to accomplish or risky to attempt triggers an action roll.

OVERVIEW

All action rolls require a pair of d12s called Duality Dice.

These are two visually distinct twelve-sided dice, with one die representing Hope and the other representing Fear.

To make an action roll, you roll the Duality Dice, sum the results, apply any relevant modifiers, and compare the total to a Difficulty number to determine the outcome:

  • Success with Hope: If your total meets or beats the difficulty AND your Hope Die shows a higher result than your Fear Die, you rolled a “Success with Hope.” You succeed and gain a Hope.

  • Success with Fear: If your total meets or beats the Difficulty AND your Fear Die shows a higher result than your Hope Die, you rolled a “Success with Fear.” You succeed with a cost or complication, but the GM gains a Fear.

  • Failure with Hope: If your total is less than the Difficulty AND your Hope Die shows a higher result than your Fear Die, you rolled a “Failure with Hope.” You fail with a minor consequence and gain a Hope, then the spotlight swings to the GM.

  • Failure with Fear: If your total is less than the Difficulty AND your Fear Die shows a higher result than your Hope Die, you rolled a “Failure with Fear.” You fail with a major consequence and the GM gains a Fear, then the spotlight swings to the GM.

  • Critical Success: If the Duality Dice show matching results, you rolled a “Critical Success” (“Crit”). You automatically succeed with a bonus, gain a Hope, and clear a Stress. If this was an attack roll, you deal critical damage.

Note: A Critical Success counts as a roll “with Hope.”

After resolving the action roll, the table works together to weave the outcome into the narrative and play continues.

FAILING FORWARD

In Daggerheart, every time you roll the dice, the scene changes in some way. There is no such thing as a roll where “nothing happens,” because the fiction constantly evolves based on the successes and failures of the characters.

PROCEDURE

The following steps describe in more detail the procedure that all action rolls utilize:

STEP 1: PICK AN APPROPRIATE TRAIT

Some actions and effects specify in their description which trait applies to the roll; otherwise, the GM tells the acting player which character trait best applies to the action being attempted. If more than one trait could apply to the roll, the GM chooses or lets the acting player decide.

STEP 2: DETERMINE THE DIFFICULTY

Some actions and features say in their description what the Difficulty is. Otherwise, the GM determines the Difficulty based on the scenario. The GM can choose whether to share the Difficulty with the table. In either case, the GM should communicate the potential consequences of failure to the acting player.

STEP 3: APPLY EXTRA DICE AND MODIFIERS

The acting player decides whether to Utilize an Experience or activate other effects, then, if applicable, adds the appropriate tokens and dice (such as advantage or Rally dice) to their dice pool.


Note: Unless an action, ability, or feature specifically allows for it, a player must declare the use of any Experiences, extra dice, or other modifiers before they roll.


STEP 4: ROLL THE DICE

The acting player rolls their entire dice pool and announces the results in the format of “[total result] with [Hope/Fear]”— or “Critical Success!” in the case of matching Duality Dice.


Example: A player is making an action roll with a +1 in the relevant trait and no other modifiers; they roll the Duality Dice and get a result of 5 on their Hope Die and 7 on their Fear Die, then announce “I rolled a 13 with Fear!”


STEP 5: RESOLVE THE OUTCOME

The active player and the GM work together, along with the suggestions and support of the rest of the table, to resolve the outcome of the action.

GM MOVES AND ADVERSARY ACTIONS

GMs also make moves. They should consider making a move when a player does one of the following things:

  • Rolls with Fear on an action roll.

  • Fails an action roll.

  • Does something that would have consequences.

  • Gives them a golden opportunity.

  • Looks to them for what happens next.

After the GM turn is done, the spotlight goes back to the PCs.

Many adversaries and environments have Fear Features, especially powerful or consequential moves that the GM must spend Fear to activate.


Note: This Fear is in addition to any Fear the GM has previously spent to seize the spotlight or activate another action or ability.


ADVERSARY ACTIONS

When play passes to the GM, the GM can make a GM move to spotlight an adversary. A spotlighted adversary can:

  • Move within Close range and make a standard attack

  • Move within Close range and use an adversary action

  • Clear a condition

  • Sprint within Far or Very Far range on the battlefield

  • Do anything else the fiction demands or the GM deems appropriate

The GM can spend additional Fear to spotlight additional adversaries. Once the GM has finished, the spotlight swings back to the PCs.

SPECIAL ROLLS

Some rolls have unique specifications or otherwise modify the action roll procedure: trait rolls, Spellcast Rolls, attack rolls, and damage rolls. Unless otherwise noted, you can apply any bonus, modifier, or effect to a special roll as if it were a standard action roll.

TRAIT ROLLS

An action roll that specifies which character trait applies to it is called a trait roll. In the text of a feature or effect, a trait roll is referenced with the format “[Trait] Roll (Difficulty)” (e.g., “Agility Roll (12)”). If the text of an effect doesn’t specify a trait roll’s Difficulty, the GM sets the Difficulty based on the circumstances.

Features and effects that affect a trait roll also affect any action roll that uses the same trait, including attack rolls, Spellcast rolls, and standard action rolls.


Example: The katari’s ancestry feature “Feline Instincts,” which allows the katari to reroll an Agility Roll, can also be used on a standard action roll using Agility to traverse dangerous terrain or on an attack roll made with a weapon that uses Agility.


SPELLCAST ROLLS

Spellcast Rolls are trait rolls that require you to use your Spellcast trait. Your Spellcast trait, if you have one, is determined by your subclass.

Spellcast Rolls are only made when a character uses a feature that requires one. A successful Spellcast Roll activates the effect as described by the feature.


Notes: A Spellcast Roll that can damage a target is also considered an attack roll.

When you cast a spell, the text tells you when the effect ends. The GM can spend a Fear to end a temporary effect. If your spell doesn’t specify when it ends, it ends when you choose or at a natural moment of the story. You can choose to end your spell early.

You can cast and maintain the effects of more than one spell at the same time.


REACTION ROLLS

A reaction roll is made in response to an attack or a hazard, representing a character’s attempt to avoid or withstand an imminent effect.

Reaction rolls work like action rolls, except they don’t generate Hope or Fear, don’t trigger additional GM moves, and other characters can’t aid you with Help an Ally.

If you critically succeed on a reaction roll, you don’t clear a Stress or gain a Hope, but you do ignore any effects that would have impacted you on a success, such as taking damage or marking Stress.

GROUP ACTION ROLLS

When multiple PCs take action together, the party chooses one PC to lead the action. Each other player then describes how their character collaborates on the task. The leader makes an action roll as usual, while the other players make reaction rolls using whichever traits they and the GM decide fit best.

The lead character gains a +1 bonus to their lead action roll for each of these reaction rolls that succeeded and a −1 penalty for each these reaction rolls that failed.

TAG TEAM ROLLS

Each player can, once per session, initiate a Tag Team Roll between their character and another PC by spending 3 Hope. The players work with one another to describe how they combine their actions in a unique and exciting way. Both players make separate action rolls; before resolving the roll’s outcome, choose one of the rolls to apply to both actions. On a roll with Hope, all PCs involved gain a Hope. On a roll with Fear, the GM gains a Fear token for each PC involved.

On a successful Tag Team attack roll, both players roll damage and add the totals together to determine the damage dealt, which is then treated as if it came from a single source. If the attacks deal different types of damage, the players choose which type to deal.


Notes:

A Tag Team Roll counts as a single action roll for the purposes of any countdowns or features that track action rolls.

Though each player may only initiate one Tag Team Roll per session, one PC can be involved in multiple Tag Team Rolls.


ADVANTAGE & DISADVANTAGE

Some features and effects let you roll with advantage or disadvantage on an action or reaction roll:

  • Advantage represents an opportunity that you seize to increase your chances of success. When you roll with advantage, you roll a d6 advantage die with your dice pool and add its result to your total.

  • Disadvantage represents an additional difficulty, hardship, or challenge you face when attempting an action. When you roll with disadvantage, you roll a d6 disadvantage die with your dice pool and subtract its result from your total.

Advantage or disadvantage can be granted or imposed by mechanical triggers or at the GM’s discretion. When a PC aids you with Help an Ally, they roll their own advantage die and you add it to your total.

Advantage and disadvantage dice cancel each out, one-for-one, when they would be added to the same dice pool, so you’ll never roll both at the same time. If you have advantage or disadvantage from other sources that don’t affect your own dice pool, such as another player’s Help an Ally move, their effects stack with your rolled results.

HOPE & FEAR

Hope and Fear are metacurrencies representing the cosmic forces that shape the events of your table’s story. Hope powers PC abilities and features, while Fear powers the abilities of the GM and the adversaries and environments they control.

HOPE

Every PC starts with 2 Hope at character creation and gains more throughout play. A PC can have a maximum of 6 Hope at one time, and Hope carries over between sessions.

Players can spend Hope to:

  • Help an Ally

    When you Help an Ally who is making an action roll, describe how you do so and roll an advantage die. Multiple players can spend Hope to help the same acting player, but that player only adds the highest result to their final total.

  • Utilize an Experience

    When you Utilize an Experience on a relevant roll, add its modifier to the result. You can spend multiple Hope to utilize multiple Experiences.

  • Initiate a Tag Team Roll

    Spend 3 Hope to initiate a Tag Team roll, combining the actions of two PCs into one impressive act of synergy. When you make a Tag Team roll, both players roll their action rolls and then choose which set of results to apply to the outcome.

  • Activate a Hope Feature

    A Hope Feature is any effect that allows (or requires) you to spend a specified amount of Hope to activate it. Class Hope features are class-specific features, detailed on your character sheet, that cost 3 Hope to activate


Note: When using a Hope Feature, if you rolled with Hope for that action, the Hope you gain from that roll can be spent on that feature (or toward it, if it requires spending multiple Hope).


FEAR

The GM gains Fear whenever a player rolls with Fear and can spend Fear at any time to make or enhance a GM move or to use a Fear Feature. The GM can have up to 12 Fear at one time. Fear carries over between sessions.

COMBAT

Though Daggerheart relies on the same flow of collaborative storytelling in and out of combat, physical conflicts rely more heavily on several key mechanics related to attacking, maneuvering, and taking damage.

EVASION

Evasion represents a character’s ability to avoid attacks and other unwanted effects. Any roll made against a PC has a Difficulty equal to the target’s Evasion. A PC’s base Evasion is determined by their class, but can be modified by domain cards, equipment, conditions, and other effects.


Note: attacks rolled against adversaries use the target’s Difficulty instead of Evasion.


HIT POINTS & DAMAGE THRESHOLDS

Hit Points (HP) represent a character’s ability to withstand physical injury. When a character takes damage, they mark 1 to 3 HP, based on their damage thresholds:

  • If the final damage is at or above the character’s Severe damage threshold, they mark 3 HP.

  • If the final damage is at or above the character’s Major damage threshold but below their Severe damage threshold, they mark 2 HP.

  • If the final damage is below the character’s Major damage threshold, they mark 1 HP.

  • If incoming damage is ever reduced to 0 or less, no HP is marked.

A PC’s damage thresholds are calculated by adding their level to the listed damage thresholds of their equipped armor. A PC’s starting HP is based on their class, but they can gain additional Hit Points through advancements, features, and other effects.

An adversary’s Damage Thresholds and HP are listed in their stat blocks.

When a character marks their last Hit Point, they fall. If a PC falls, they make a death move.

Characters can clear Hit Points by taking downtime moves (see: Downtime) or by activating relevant special abilities or effects.


Optional Rule: Massive Damage

If a character ever takes damage equal to twice their Severe threshold, they mark 4 HP instead of 3.


STRESS

Stress represents how much mental, physical, and emotional strain a character can endure. Some special abilities or effects require the character activating them to mark Stress, and the GM can require a PC to mark Stress as a GM move or to represent the cost, complication, or consequence of an action roll.

When a character marks their last Stress, they become Vulnerable (see: Conditions) until they clear at least 1 Stress.

When a character must mark 1 or more Stress but can’t, they mark 1 HP instead. A character can’t use a move that requires them to mark Stress if all of their Stress is marked.

PCs can clear Stress by making downtime moves (see: Downtime). A PC’s maximum Stress is determined by their class, but they can increase it through advancements, abilities, and other effects.

ATTACKING

ATTACK ROLLS

An attack roll is an action roll intended to inflict harm. The trait that applies to an attack roll is specified by the weapon or spell being used. Unarmed attack rolls use either Strength or Finesse (GM’s choice). An attack roll’s Difficulty, unless otherwise noted, is equal to the Difficulty score of its target.

DAMAGE ROLLS

On a successful attack, roll damage. Damage is calculated from the damage roll listed in the attack’s description with the format “xdy+[modifier]” (e.g., for a spell that inflicts “1d8+2” damage, you roll an eight-sided and add 2 to the result; the damage dealt is equal to the total).

Any time an effect says to deal damage using your Spellcast trait, you roll a number of dice equal to your Spellcast trait.


Note: If your Spellcast trait is +0 or lower, you don’t roll anything.


For weapons, the number of damage dice you roll is equal to your Proficiency. Note that your Proficiency multiplies the number of dice you roll, but doesn’t affect the modifier. For example, a PC with Proficiency 2 and wielding a weapon with adamage rating of “d8+2” deals damage equal to “2d8+2” on a successful attack.

Successful unarmed attacks inflict [Proficiency]d4 damage.

CRITICAL DAMAGE

When you get a critical success (i.e., you roll matching values on your Duality Dice) on an attack roll, you deal extra damage.

Make the damage roll as usual, but add the maximum possible result of the damage dice to the final total. For instance, if an attack would normally deal 2d8+1 damage, a critical success would deal 2d8+1+16.

DAMAGE TYPES

There are two damage types: physical damage (phy) and magic damage (mag). Unless stated otherwise, mundane weapons and unarmed attacks deal physical damage, and spells deal magic damage.

RESISTANCE, IMMUNITY, AND DIRECT DAMAGE

If a target has resistance to a damage type, then they reduce incoming damage of that type by half before comparing it to their Hit Point Thresholds. If the target has additional ways of reducing incoming damage, such as marking Armor Slots, they apply the resistance effect first. The effects of multiple resistances to the same damage type do not stack.

If a target has immunity to a damage type, they ignore incoming damage of that type.

If an attack deals both physical and magic damage, a character can only benefit from resistance or immunity if they are resistant or immune to both damage types.

Direct damage is damage that can’t be reduced by marking Armor Slots.

MULTI-TARGET ATTACK ROLLS

If a spell or ability allows you to target multiple adversaries, make one attack roll and one damage roll, then apply the results to each target individually.

MULTIPLE DAMAGE SOURCES

Damage dealt simultaneously from multiple sources is always totaled before it’s compared to its target’s damage thresholds.


For example, if a PC with orc ancestry makes a successful attack against a target in Melee range and decides to spend a Hope to use their “Tusks” feature (which gives them an extra 1d6 damage on a damage roll), they would roll their normal weapon damage and add a d6 to the result, then deal that total damage to the adversary.


MAPS, RANGE, AND MOVEMENT

You can play Daggerheart using “theater of the mind” or maps and miniatures. The conversions below from abstract ranges to physical measurements assume 1 inch of map represents about 5 feet of fictional space.

Daggerheart uses the following ranges to translate fictional positioning into relative distance for the purposes of targeting, movement, and other game mechanics:

  • Melee: Close enough to touch, up to a few feet away.

  • Very Close: Close enough to see fine details, about 5–10 feet away. While in danger, a character can move, as part of their action, from Very Close range into Melee range. On a map: anything within the shortest length of a game card (2-3 inches).

  • Close: Close enough to see prominent details, about 10–30 feet away. While in danger, a character can move, as part of their action, from Close range into Melee range. On a map: anything within the length of a pencil (5-6 inches).

  • Far: Close enough to see very little detail, about 30–100 feet away. While in danger, a character must make an Agility Roll to safely move from Far range into Melee range. On a map: anything within the length of the long edge of a piece of copy paper (11–12 inches).

  • Very Far: Too far to make out any details, about 100–300 feet away. While in danger, a character must make an Agility Roll to safely move from Very Far range into Melee range. On a map: anything beyond Far range, but still within the bounds of the conflict or scene.

  • Out of Range: Anything beyond a character’s Very Far range is Out of Range and usually can’t be targeted.

Range is measured from the source of an effect, such as the attacker or spellcaster, to the target or object of an effect.

A weapon, spell, ability, item, or other effect’s stated range is a maximum range; unless otherwise noted, it can be used at closer distances.


Optional Rule: Defined Ranges

If your table would rather operate with more precise range rules, you can use a 1-inch grid battle map during combat.

If you do, use the following guidelines for play:

  • Melee: 1 square

  • Very Close: 3 squares

  • Close: 6 squares

  • Far: 12 squares

  • Very Far: 13+ squares

  • Out of Range: Off the battlemap


MOVEMENT UNDER PRESSURE

When you’re under pressure or in danger and make an action roll, you can move to a location within Close range as part of that action. If you’re not already making an action roll, or if you want to move farther than your Close range, you need to succeed on an Agility Roll to safely reposition yourself.

An adversary can move within Close range for free as part of an action, or within Very Far range as a separate action.

AREA OF EFFECT

Unless stated otherwise, all the targets of a group effect must be within Very Close range of a single origin point within your effect’s range.

LINE OF SIGHT & COVER

Unless stated otherwise, a ranged attacker must have line of sight to their intended target to make an attack roll. If a partial obstruction lies between the attacker and target, the target has cover. Attacks made through cover are rolled with disadvantage. If the obstruction is total, there is no line of sight.

CONDITIONS

Conditions are effects that grant specific benefits or drawbacks to the target they are attached to.

STANDARD CONDITIONS

Daggerheart has three standard conditions:

HIDDEN

While you’re out of sight from all enemies and they don’t otherwise know your location, you gain the Hidden condition. Any rolls against a Hidden creature have disadvantage. After an adversary moves to where they would see you, you move into their line of sight, or you make an attack, you are no longer Hidden.

RESTRAINED

Restrained characters can’t move, but you can still take actions from their current position.

VULNERABLE

When a creature is Vulnerable, all rolls targeting them have advantage.

Some features can apply special or unique conditions, which work as described in the feature text.

Unless otherwise noted, the same condition can’t be applied more than once to the same target.

TEMPORARY TAGS & SPECIAL CONDITIONS

The temporary tag denotes a condition or effect that the affected creature can clear by making a move against it. When an affected PC makes a move to clear a temporary condition or effect, it normally requires a successful action roll using an appropriate trait. When an affected adversary makes a move to clear a temporary condition or effect, the GM puts the spotlight on the adversary and describes how they do it; this doesn’t require a roll but it does use up that adversary’s spotlight.

Special conditions are only cleared when specific requirements are met, such as completing a certain action or using a particular item. The requirements for clearing these conditions are stated in the text of the effect that applies the condition.

DOWNTIME

Between conflicts, the party can take a rest to recover expended resources and deepen their bonds. During a rest, each PC can make up to two downtime moves.

When the party rests, they must choose between a short rest and a long rest. If a party takes three short rests in a row, their next rest must be a long rest.

If a short rest is interrupted, such as by an adversary's attack, the characters don’t gain its benefits. If a long rest is interrupted, the characters only gain the benefits of a short rest.

A short rest lasts enough time for the party to catch its breath, about an hour in-world. Each player can move domain cards between their loadout and vault for free, then choose twice from the following list of downtime moves (players can choose the same move twice):

  • Tend to Wounds: Clear 1d4+Tier Hit Points for yourself or an ally.

  • Clear Stress: Clear 1d4+Tier Stress.

  • Repair Armor: Clear 1d4+Tier Armor Slots from your or an ally’s armor.

  • Prepare: Describe how you prepare yourself for the path ahead, then gain a Hope. If you choose to Prepare with one or more members of your party, you each gain 2 Hope.

At the end of a short rest, any features or effects with a limited number of uses per rest refresh and any features or effects that last until your next rest expire.

A long rest is when the characters make camp and relax or sleep for several in-game hours. Each player can move domain cards between their loadout and vault for free, then choose twice from the following list of downtime moves (players can choose the same move twice):

  • Tend to All Wounds: Clear all Hit Points for yourself or an ally.

  • Clear All Stress: Clear all Stress.

  • Repair All Armor: Clear all Armor Slots from your or an ally’s armor

  • Prepare: Describe how you prepare for the next day’s adventure, then gain a Hope. If you choose to Prepare with one or more members of your party, you each gain 2 Hope.

  • Work on a Project: With GM approval, a PC may pursue a long-term project, such as deciphering an ancient text or crafting a new weapon. The first time they start a new project, assign it a countdown. Each time a PC makes the Work on a Project move, they either advance their project’s countdown automatically or make an action roll to advance it (GM’s choice).

At the end of a long rest, any features or effects with a limited number of uses per rest or per long rest refresh and any features or effects that last until your next rest or until your next long rest expire.

DOWNTIME CONSEQUENCES

On a short rest, the GM gains 1d4 Fear. On a long rest, they gain Fear equal to 1d4 + the number of PCs, and they can advance a long-term countdown of their choice.

DEATH

When a PC marks their last Hit Point, they must make a death move by choosing one of the following options:

  • Blaze of Glory: Your character embraces death and goes out in a blaze of glory. Take one final action. It automatically critically succeeds (with GM approval), and then you cross through the veil of death.

  • Avoid Death: Your character avoids death and faces the consequences. They temporarily drop unconscious, and then you work with the GM to describe how the situation worsens. While unconscious, your character can’t move or act, and they can’t be targeted by an attack. They return to consciousness when an ally clears 1 or more of their marked Hit Points or when the party finishes a long rest. After your character falls unconscious, roll your Hope Die. If its value is equal to or less than your character’s level, they gain a scar: permanently cross out a Hope slot and work with the GM to determine its lasting narrative impact and how, if possible, it can be restored. If you ever cross out your last Hope slot, your character’s journey ends.

  • Risk It All: Roll your Duality Dice. If the Hope Die is higher, your character stays on their feet and clears a number of Hit Points or Stress equal to the value of the Hope Die (you can divide the Hope Die value between Hit Points and Stress however you’d prefer). If the Fear Die is higher, your character crosses through the veil of death. If the Duality Dice show matching results, your character stays up and clears all Hit Points and Stress.

If your character dies, work with the GM before the next session to create a new character at the current level of the rest of the party.

ADDITIONAL RULES

The following rules apply to many aspects of the game.

ROUNDING UP

This game doesn’t use fractions; if you need to round to a whole number, round up unless otherwise specified. When in doubt, resolve any ambiguity in favor of the PCs.

REROLLING DICE

When a feature allows you to reroll a die, you always take the new result unless the feature specifically says otherwise.

INCOMING DAMAGE

Incoming damage means the total damage from a single attack or source, before Armor Slots are marked.

SIMULTANEOUS EFFECTS

If the resolution order of multiple effects is unclear, the person in control of the effects (player or GM) decides what order to resolve them in.

STACKING EFFECTS

Unless stated otherwise, all effects beside conditions and advantage/disadvantage can stack.

ONGOING SPELL EFFECTS

If an effect doesn’t have a listed mechanical expiration, it only ends when decided by the controlling player, the GM, or the demands of the fiction.

SPENDING RESOURCES

Unless an effect states otherwise, you can’t spend Hope or mark Stress multiple times on the same feature to increase or repeat its effects on the same roll.

USING FEATURES AFTER A ROLL

If a feature allows you to affect a roll after the result has been totaled, you can use it after the GM declares whether the roll succeeds or fails, but not after the consequences unfold or another roll is made.

LEVELING UP

Your party levels up whenever the GM decides you’ve reached a narrative milestone (usually about every 3 sessions). All party members level up at the same time.

Daggerheart has 10 PC levels divided into 4 tiers:


→ Tier 1 encompasses level 1 only.

→ Tier 2 encompasses levels 2–4.

→ Tier 3 encompasses levels 5–7.

→ Tier 4 encompasses levels 8–10.


Your tier affects your damage thresholds, tier achievements, and access to advancements.

STEP ONE: TIER ACHIEVEMENTS

Take any applicable tier achievements

  • At level 2, you gain a new Experience at +2 and permanently increase your Proficiency by 1.

  • At level 5, you gain a new Experience at +2, permanently increase your Proficiency by 1, and clear any marked traits.

  • At level 8, you gain a new Experience at +2, permanently increase your Proficiency by 1, and clear any marked traits.

STEP TWO: ADVANCEMENTS

Choose any two advancements with at least one unmarked slot from your tier or below. Options with multiple slots can be chosen more than once. When you choose an advancement, mark one of its slots.

  • When you choose to increase two unmarked character traits and mark them: Choose two unmarked character traits and gain a permanent +1 bonus to them. You can’t increase these stats again until the next tier (when your tier achievement allows you to clear those marks).

  • When you choose to permanently add 1 or more Hit Point slots: Darken the outline of the next rectangle in the Hit Point section of your character sheet in pen or permanent marker.

  • When you choose to permanently add 1 or more Stress slots: Darken the outline of the next rectangle in the Stress section of your character sheet in pen or permanent marker.

  • When you choose to increase your Experience: Choose two Experiences on your character sheet and gain a permanent +1 bonus to both.

  • When you take an additional domain card: You can choose an additional domain card at or below your level or from your class’s domains. If you’ve multiclassed, you can instead select a card at or below half your level from your chosen multiclass domain.

  • When you choose to increase your Evasion: Gain a permanent +1 bonus to your Evasion.

  • When you choose to take an upgraded subclass card: Take the next card for your subclass. If you have only the foundation card, take a specialization; if you have a specialization already, take a mastery. Then cross out this tier’s multiclass option.

  • When you choose to increase your Proficiency: Fill in one of the open circles in the “Proficiency” section of your character sheet, then increase your weapon’s number of damage dice by 1. The black box around this advancement’s slots indicates you must spend two advancements and mark both level-up slots in order to take it as an option.

  • When you choose to multiclass: Choose an additional class, select one of its domains, and gain its class feature. Add the appropriate multiclass module to your character sheet and take the foundation card from one of its subclasses. Then cross out the “upgraded subclass” advancement option in this tier and all other “multiclass” advancement options on your character sheet. The black box around this advancement’s slots indicates you must spend two advancements and mark both level-up slots in order to take it as an option.

STEP THREE: DAMAGE THRESHOLDS

Increase all damage thresholds by 1.

STEP FOUR: DOMAIN CARDS

Acquire a new domain card at your level or lower from one of your class’s domains and add it to your loadout or vault. If your loadout is already full, you can’t add the new card to it until you move another into your vault. You can also exchange one domain card you’ve previously acquired for a different domain card of the same level or lower.

MULTICLASSING

Starting at level 5, you can choose multiclassing as an option when leveling up. When you multiclass, you choose an additional class, gain access to one of its domains, and acquire its class feature. Take the appropriate multiclass module and add it to the right side of your character sheet, then choose a foundation card from one of its subclasses. If your foundation cards specify different Spellcast traits, you can choose which one to apply when making a Spellcast roll.

Whenever you have the option to acquire a new domain card, you can choose from cards at or below half your current level (rounded up) from the domain you chose when you selected the multiclass advancement.

EQUIPMENT

Your equipped weapons and armor are the ones listed in the “Active Weapons” and “Active Armor” sections of your character sheet. Your character can only attack with weapons, benefit from armor, and gain features from items they have equipped. You can’t equip weapons or armor with a higher tier than you.

PCs can carry up to two additional weapons in the “Inventory Weapon” areas of the character sheet.

You can swap an Inventory Weapon with an Active Weapon at no cost during a rest or moment of calm; otherwise, you must mark a Stress to do so.

Your character can only have one Active Armor at a time.

They can’t equip armor while in danger or under pressure; otherwise, they can equip or unequip armor without cost.

Each armor has its own Armor Slots; if your character unequips their armor, track how many of its Armor Slots are marked. You can't carry armor in your inventory. When your character equips or unequips armor, recalculate your damage thresholds.

WEAPONS

All weapons have a tier, trait, range, damage die, damage type, and burden. Some weapons also have a feature.

CATEGORY

A weapon’s category specifies whether it is a Primary or Secondary weapon. Your character can only equip up to one weapon of each category at a time.

TRAIT

A weapon’s trait specifies which trait to use when making an attack roll with it.

RANGE

A weapon’s range specifies the maximum distance between the attacker and their target when attacking with it.

DAMAGE

A weapon’s damage indicates the size of the damage dice you roll on a successful attack with it; you roll a number of dice equal to your Proficiency. If the damage includes a flat modifier, this number is added to the total damage rolled, but is not altered or affected by Proficiency.

DAMAGE TYPE

A weapon’s damage type indicates whether it deals physical or magic damage. Weapons that deal magic damage can only be wielded by characters with a Spellcast trait.

BURDEN

A weapon’s burden indicates how many hands it occupies when equipped. Your character’s maximum burden is 2 hands.

FEATURE

A weapon’s feature is a special rule that stays in effect while the weapon is equipped.

You can throw an equipped weapon at a target within Very Close range, making the attack roll with Finesse. On a success, deal damage as usual for that weapon. Once thrown, the weapon is no longer considered equipped. Until you retrieve and re-equip it, you can’t attack with it or benefit from its features.

Combat Wheelchair

By Mark Thompson

The combat wheelchair is a ruleset designed to help you play a wheelchair user in Daggerheart. This section provides mechanics and narrative guidance for you to work from, but feel free to adapt the flavor text to best suit your character. Have fun with your character’s wheelchair design, and make it as unique or tailored to them as you please.

ACTION AND MOVEMENT

When describing how your character moves, you can use descriptions such as the following:

  • “I roll over to the door to see if it’s open.”

  • “I wheel myself over to the group to ask what’s going on.”

  • “I pull my brakes and skid to a halt, turning in my seat to level my bow at the intruder.”

CONSEQUENCES

Here are some ways you might describe complications you encounter when your character uses their wheelchair:

  • “I pull my brakes, but I don’t think to account for the loose gravel on the ground.”

  • “I hit a patch of ice awkwardly and am sent skidding out past my target.”

  • “I go to push off in pursuit, but one of my front caster wheels snags on a crack in the pavement, stalling me for a moment.”

GMs should avoid breaking a character's wheelchair or otherwise removing it from play as a consequence, unless everyone at the table, especially the wheelchair user’s player, gives their approval.

EVASION

Your character is assumed to be skilled in moving their wheelchair and navigating numerous situations in it. As a result, the only wheelchair that gives a penalty to a PC's Evasion is the Heavy Frame model.

BURDEN

All wheelchairs can be maneuvered using one or two hands outside of combat. However, when being used as a weapon, the chair is restricted to requiring one or two hands to perform attacks, depending on the model you’ve chosen. If you’re playing a character who has limited to no mobility in their arms, their wheelchair can be attuned to them by magical means. For example, your character might use a psychic link to guide the chair around like a pseudo-electric wheelchair. All the rules presented here can be tailored and adapted to any character's needs.

CHOOSING YOUR MODEL

All combat wheelchairs are equipped as Primary Weapons.

There are three models of wheelchair available: light, heavy, and arcane. You’re encouraged to consider the type of character you’re playing and the class they belong to, then choose the model that best matches that character concept.

ARMOR

Every armor has a name, base damage thresholds, and a base Armor Score. Some armor also has a feature.

  • An armor’s base armor score indicates how many Armor Slots it provides its wearer before additional bonuses are added to calculate their total Armor Score. A PC’s Armor Score can’t exceed 12.

  • An armor’s base thresholds determine its wearer’s major and severe damage thresholds before adding bonuses to calculate their final damage thresholds.

  • An armor’s feature is a special rule that stays in effect while the armor is equipped.

While unarmored, your character’s base Armor Score is 0, their Major threshold is equal to their level, and their Severe threshold is equal to twice their level.

REDUCING INCOMING DAMAGE

When you take damage, you can mark one Armor Slot to reduce the number of Hit Points you would mark by one. If your character has an Armor Score of 0, you can’t mark Armor Slots. If an effect temporarily increases your Armor Score,

it increases your available Armor Slots by the same amount; when the effect ends, so does the availability of these Armor Slots.

LOOT

Loot comprises any consumables or reusable items the party acquires.

Items can be used until sold, discarded, or lost.

To generate a random item, choose a rarity, roll the designated dice, and match the total to the item in the table:

  • Common: 1d12 or 2d12

  • Rare: 3d12 or 4d12

  • Uncommon: 2d12 or 3d12

  • Legendary: 4d12 or 5d12

@UUID[RollTable.KKqUrMMXPpm7uhYT]{Loot}

Consumables

Consumables are loot that can only be used once. You can hold up to five of each consumable at a time. Using a consumable doesn’t require a roll unless required by the GM or the demands of the fiction.

To generate a random consumable, choose a rarity, roll the designated dice, and match the total to the item in the table:

  • Common: 1d12 or 2d12

  • Rare: 3d12 or 4d12

  • Uncommon: 2d12 or 3d12

  • Legendary: 4d12 or 5d12

@UUID[RollTable.wZXyi343PSVVwWB3]{Consumables}

GOLD

Gold is an abstract measurement of how much wealth a character has, and is measured in handfuls, bags, and chests, with 10 handfuls to 1 bag, and 10 bags to 1 chest. When you have marked all of the slots in a category and you gain another gold reward in that category, mark a slot in the following category and clear all the slots in the current one.

For example, if you have 9 handfuls and gain another, you instead mark 1 bag and erase all handfuls. If you have 9 bags and gain another, you mark 1 chest and erase all bags.

You can’t have more than 1 chest, so if all your Gold slots are marked, you’ll need to spend some of your gold or store it somewhere else before you can acquire more.


Optional Rule: Gold Coins

If your group wants to track gold with more granularity, you can add coins as your lowest denomination. Following the established pattern, 10 coins equal 1 handful.


" + "content": "

FLOW OF THE GAME

Daggerheart is a conversation. The GM describes fictional scenarios involving the PCs, and the players take turns describing how their characters react. The goal of every person at the table is to build upon everyone else’s ideas and collaboratively tell a satisfying story. The system facilitates this collaborative process by providing structure to the conversation and mechanics for resolving moments of tension where fate or fortune determine the outcome of events.

PLAYER PRINCIPLES & BEST PRACTICES

To get the most out of Daggerheart, we recommend players keep the following principles and practices in mind throughout each session:

PRINCIPLES

  • Be a fan of your character and their journey.

  • Spotlight your friends.

  • Address the characters and address the players.

  • Build the world together.

  • Play to find out what happens.

  • Hold on gently.

BEST PRACTICES

  • Embrace danger.

  • Use your resources.

  • Tell the story.

  • Discover your character.

For more information, see the Daggerheart Core Rulebook, pages 9 and 108.

CORE GAMEPLAY LOOP

The core gameplay loop is the procedure that drives every scene, both in and out of combat:

STEP 1: SET THE SCENE

The GM describes a scenario, establishing the PCs’ surroundings and any dangers, NPCs, or other important details the characters would notice.

STEP 2: ASK AND ANSWER QUESTIONS

The players ask clarifying questions to explore the scene more deeply and gather information that could inform their characters’ actions. The GM responds to these questions by giving the players information their characters could easily obtain, or by asking questions of their own to the players. The players also respond to any questions the GM poses to them.

In this way, the table builds out the fiction collaboratively.

STEP 3: BUILD ON THE FICTION

As the scene develops, the players find opportunities to take action—problems to solve, obstacles to overcome, mysteries to investigate, and so on. The players describe how their characters proceed; if their proposed actions carry no chance of failure (or if failure would be boring), they automatically succeed. But if the outcome of their action is unknown, the GM calls for an action roll. Either way, the table works the outcome into the story and moves the fiction forward, narrating how the PC’s actions have changed things.

STEP 4: GO BACK TO STEP 1

The process repeats from the beginning, with the GM relaying any updated details or material changes to the players. This process continues until the end of the scene is triggered by a mechanic or arrives organically.

THE SPOTLIGHT

The spotlight is a symbol that represents the table’s attention—and therefore the immediate focus of both the narrative and the game mechanics. Any time a character or player becomes the focus of a scene, they “are in the spotlight” or “have the spotlight.”

The spotlight moves around the table organically as scenes unfold unless a mechanical trigger determines where the spotlight goes next. For example, when a player fails an action roll, the mechanics prompt the GM to seize the spotlight and make a GM move.

TURN ORDER & ACTION ECONOMY

Daggerheart’s turns don’t follow a traditional, rigid format:
there is no explicit initiative mechanic and characters don’t have a set number of actions they can take or things they can do before the spotlight passes to someone else. A player with the spotlight describes what their character does and the spotlight simply swings to whoever:

  1. the fiction would naturally turn it toward

  2. hasn’t had the focus in a while, or

  3. a triggered mechanic puts it on


Optional: Spotlight Tracker Tool

If your group prefers a more traditional action economy, you can use tokens to track how many times a player has had the spotlight: At the start of a session or scene, each player adds a certain number of tokens (we recommend 3) to their character sheet and removes a token each time they take an action. If the spotlight would swing to someone without any tokens, it swings to someone else instead. Once every player has used all their available tokens, players refill their character sheet with the same number of tokens as before, then continue playing.


MAKING MOVES & TAKING ACTION

Any time a character does something to advance the story, such as speaking with another character, interacting with the environment, making an attack, casting a spell, or using a class feature, they are making a move.

ACTION ROLLS

Any move where success would be trivial or failure would be boring automatically succeeds, but any move that’s difficult to accomplish or risky to attempt triggers an action roll.

OVERVIEW

All action rolls require a pair of d12s called Duality Dice.

These are two visually distinct twelve-sided dice, with one die representing Hope and the other representing Fear.

To make an action roll, you roll the Duality Dice, sum the results, apply any relevant modifiers, and compare the total to a Difficulty number to determine the outcome:

  • Success with Hope: If your total meets or beats the difficulty AND your Hope Die shows a higher result than your Fear Die, you rolled a “Success with Hope.” You succeed and gain a Hope.

  • Success with Fear: If your total meets or beats the Difficulty AND your Fear Die shows a higher result than your Hope Die, you rolled a “Success with Fear.” You succeed with a cost or complication, but the GM gains a Fear.

  • Failure with Hope: If your total is less than the Difficulty AND your Hope Die shows a higher result than your Fear Die, you rolled a “Failure with Hope.” You fail with a minor consequence and gain a Hope, then the spotlight swings to the GM.

  • Failure with Fear: If your total is less than the Difficulty AND your Fear Die shows a higher result than your Hope Die, you rolled a “Failure with Fear.” You fail with a major consequence and the GM gains a Fear, then the spotlight swings to the GM.

  • Critical Success: If the Duality Dice show matching results, you rolled a “Critical Success” (“Crit”). You automatically succeed with a bonus, gain a Hope, and clear a Stress. If this was an attack roll, you deal critical damage.

Note: A Critical Success counts as a roll “with Hope.”

After resolving the action roll, the table works together to weave the outcome into the narrative and play continues.

FAILING FORWARD

In Daggerheart, every time you roll the dice, the scene changes in some way. There is no such thing as a roll where “nothing happens,” because the fiction constantly evolves based on the successes and failures of the characters.

PROCEDURE

The following steps describe in more detail the procedure that all action rolls utilize:

STEP 1: PICK AN APPROPRIATE TRAIT

Some actions and effects specify in their description which trait applies to the roll; otherwise, the GM tells the acting player which character trait best applies to the action being attempted. If more than one trait could apply to the roll, the GM chooses or lets the acting player decide.

STEP 2: DETERMINE THE DIFFICULTY

Some actions and features say in their description what the Difficulty is. Otherwise, the GM determines the Difficulty based on the scenario. The GM can choose whether to share the Difficulty with the table. In either case, the GM should communicate the potential consequences of failure to the acting player.

STEP 3: APPLY EXTRA DICE AND MODIFIERS

The acting player decides whether to Utilize an Experience or activate other effects, then, if applicable, adds the appropriate tokens and dice (such as advantage or Rally dice) to their dice pool.


Note: Unless an action, ability, or feature specifically allows for it, a player must declare the use of any Experiences, extra dice, or other modifiers before they roll.


STEP 4: ROLL THE DICE

The acting player rolls their entire dice pool and announces the results in the format of “[total result] with [Hope/Fear]”— or “Critical Success!” in the case of matching Duality Dice.


Example: A player is making an action roll with a +1 in the relevant trait and no other modifiers; they roll the Duality Dice and get a result of 5 on their Hope Die and 7 on their Fear Die, then announce “I rolled a 13 with Fear!”


STEP 5: RESOLVE THE OUTCOME

The active player and the GM work together, along with the suggestions and support of the rest of the table, to resolve the outcome of the action.

GM MOVES AND ADVERSARY ACTIONS

GMs also make moves. They should consider making a move when a player does one of the following things:

  • Rolls with Fear on an action roll.

  • Fails an action roll.

  • Does something that would have consequences.

  • Gives them a golden opportunity.

  • Looks to them for what happens next.

After the GM turn is done, the spotlight goes back to the PCs.

Many adversaries and environments have Fear Features, especially powerful or consequential moves that the GM must spend Fear to activate.


Note: This Fear is in addition to any Fear the GM has previously spent to seize the spotlight or activate another action or ability.


ADVERSARY ACTIONS

When play passes to the GM, the GM can make a GM move to spotlight an adversary. A spotlighted adversary can:

  • Move within Close range and make a standard attack

  • Move within Close range and use an adversary action

  • Clear a condition

  • Sprint within Far or Very Far range on the battlefield

  • Do anything else the fiction demands or the GM deems appropriate

The GM can spend additional Fear to spotlight additional adversaries. Once the GM has finished, the spotlight swings back to the PCs.

SPECIAL ROLLS

Some rolls have unique specifications or otherwise modify the action roll procedure: trait rolls, Spellcast Rolls, attack rolls, and damage rolls. Unless otherwise noted, you can apply any bonus, modifier, or effect to a special roll as if it were a standard action roll.

TRAIT ROLLS

An action roll that specifies which character trait applies to it is called a trait roll. In the text of a feature or effect, a trait roll is referenced with the format “[Trait] Roll (Difficulty)” (e.g., “Agility Roll (12)”). If the text of an effect doesn’t specify a trait roll’s Difficulty, the GM sets the Difficulty based on the circumstances.

Features and effects that affect a trait roll also affect any action roll that uses the same trait, including attack rolls, Spellcast rolls, and standard action rolls.


Example: The katari’s ancestry feature “Feline Instincts,” which allows the katari to reroll an Agility Roll, can also be used on a standard action roll using Agility to traverse dangerous terrain or on an attack roll made with a weapon that uses Agility.


SPELLCAST ROLLS

Spellcast Rolls are trait rolls that require you to use your Spellcast trait. Your Spellcast trait, if you have one, is determined by your subclass.

Spellcast Rolls are only made when a character uses a feature that requires one. A successful Spellcast Roll activates the effect as described by the feature.


Notes: A Spellcast Roll that can damage a target is also considered an attack roll.

When you cast a spell, the text tells you when the effect ends. The GM can spend a Fear to end a temporary effect. If your spell doesn’t specify when it ends, it ends when you choose or at a natural moment of the story. You can choose to end your spell early.

You can cast and maintain the effects of more than one spell at the same time.


REACTION ROLLS

A reaction roll is made in response to an attack or a hazard, representing a character’s attempt to avoid or withstand an imminent effect.

Reaction rolls work like action rolls, except they don’t generate Hope or Fear, don’t trigger additional GM moves, and other characters can’t aid you with Help an Ally.

If you critically succeed on a reaction roll, you don’t clear a Stress or gain a Hope, but you do ignore any effects that would have impacted you on a success, such as taking damage or marking Stress.

GROUP ACTION ROLLS

When multiple PCs take action together, the party chooses one PC to lead the action. Each other player then describes how their character collaborates on the task. The leader makes an action roll as usual, while the other players make reaction rolls using whichever traits they and the GM decide fit best.

The lead character gains a +1 bonus to their lead action roll for each of these reaction rolls that succeeded and a −1 penalty for each these reaction rolls that failed.

TAG TEAM ROLLS

Each player can, once per session, initiate a Tag Team Roll between their character and another PC by spending 3 Hope. The players work with one another to describe how they combine their actions in a unique and exciting way. Both players make separate action rolls; before resolving the roll’s outcome, choose one of the rolls to apply to both actions. On a roll with Hope, all PCs involved gain a Hope. On a roll with Fear, the GM gains a Fear token for each PC involved.

On a successful Tag Team attack roll, both players roll damage and add the totals together to determine the damage dealt, which is then treated as if it came from a single source. If the attacks deal different types of damage, the players choose which type to deal.


Notes:

A Tag Team Roll counts as a single action roll for the purposes of any countdowns or features that track action rolls.

Though each player may only initiate one Tag Team Roll per session, one PC can be involved in multiple Tag Team Rolls.


ADVANTAGE & DISADVANTAGE

Some features and effects let you roll with advantage or disadvantage on an action or reaction roll:

  • Advantage represents an opportunity that you seize to increase your chances of success. When you roll with advantage, you roll a d6 advantage die with your dice pool and add its result to your total.

  • Disadvantage represents an additional difficulty, hardship, or challenge you face when attempting an action. When you roll with disadvantage, you roll a d6 disadvantage die with your dice pool and subtract its result from your total.

Advantage or disadvantage can be granted or imposed by mechanical triggers or at the GM’s discretion. When a PC aids you with Help an Ally, they roll their own advantage die and you add it to your total.

Advantage and disadvantage dice cancel each out, one-for-one, when they would be added to the same dice pool, so you’ll never roll both at the same time. If you have advantage or disadvantage from other sources that don’t affect your own dice pool, such as another player’s Help an Ally move, their effects stack with your rolled results.

HOPE & FEAR

Hope and Fear are metacurrencies representing the cosmic forces that shape the events of your table’s story. Hope powers PC abilities and features, while Fear powers the abilities of the GM and the adversaries and environments they control.

HOPE

Every PC starts with 2 Hope at character creation and gains more throughout play. A PC can have a maximum of 6 Hope at one time, and Hope carries over between sessions.

Players can spend Hope to:

  • Help an Ally

    When you Help an Ally who is making an action roll, describe how you do so and roll an advantage die. Multiple players can spend Hope to help the same acting player, but that player only adds the highest result to their final total.

  • Utilize an Experience

    When you Utilize an Experience on a relevant roll, add its modifier to the result. You can spend multiple Hope to utilize multiple Experiences.

  • Initiate a Tag Team Roll

    Spend 3 Hope to initiate a Tag Team roll, combining the actions of two PCs into one impressive act of synergy. When you make a Tag Team roll, both players roll their action rolls and then choose which set of results to apply to the outcome.

  • Activate a Hope Feature

    A Hope Feature is any effect that allows (or requires) you to spend a specified amount of Hope to activate it. Class Hope features are class-specific features, detailed on your character sheet, that cost 3 Hope to activate


Note: When using a Hope Feature, if you rolled with Hope for that action, the Hope you gain from that roll can be spent on that feature (or toward it, if it requires spending multiple Hope).


FEAR

The GM gains Fear whenever a player rolls with Fear and can spend Fear at any time to make or enhance a GM move or to use a Fear Feature. The GM can have up to 12 Fear at one time. Fear carries over between sessions.

COMBAT

Though Daggerheart relies on the same flow of collaborative storytelling in and out of combat, physical conflicts rely more heavily on several key mechanics related to attacking, maneuvering, and taking damage.

EVASION

Evasion represents a character’s ability to avoid attacks and other unwanted effects. Any roll made against a PC has a Difficulty equal to the target’s Evasion. A PC’s base Evasion is determined by their class, but can be modified by domain cards, equipment, conditions, and other effects.


Note: attacks rolled against adversaries use the target’s Difficulty instead of Evasion.


HIT POINTS & DAMAGE THRESHOLDS

Hit Points (HP) represent a character’s ability to withstand physical injury. When a character takes damage, they mark 1 to 3 HP, based on their damage thresholds:

  • If the final damage is at or above the character’s Severe damage threshold, they mark 3 HP.

  • If the final damage is at or above the character’s Major damage threshold but below their Severe damage threshold, they mark 2 HP.

  • If the final damage is below the character’s Major damage threshold, they mark 1 HP.

  • If incoming damage is ever reduced to 0 or less, no HP is marked.

A PC’s damage thresholds are calculated by adding their level to the listed damage thresholds of their equipped armor. A PC’s starting HP is based on their class, but they can gain additional Hit Points through advancements, features, and other effects.

An adversary’s Damage Thresholds and HP are listed in their stat blocks.

When a character marks their last Hit Point, they fall. If a PC falls, they make a death move.

Characters can clear Hit Points by taking downtime moves (see: Downtime) or by activating relevant special abilities or effects.


Optional Rule: Massive Damage

If a character ever takes damage equal to twice their Severe threshold, they mark 4 HP instead of 3.


STRESS

Stress represents how much mental, physical, and emotional strain a character can endure. Some special abilities or effects require the character activating them to mark Stress, and the GM can require a PC to mark Stress as a GM move or to represent the cost, complication, or consequence of an action roll.

When a character marks their last Stress, they become Vulnerable (see: Conditions) until they clear at least 1 Stress.

When a character must mark 1 or more Stress but can’t, they mark 1 HP instead. A character can’t use a move that requires them to mark Stress if all of their Stress is marked.

PCs can clear Stress by making downtime moves (see: Downtime). A PC’s maximum Stress is determined by their class, but they can increase it through advancements, abilities, and other effects.

ATTACKING

ATTACK ROLLS

An attack roll is an action roll intended to inflict harm. The trait that applies to an attack roll is specified by the weapon or spell being used. Unarmed attack rolls use either Strength or Finesse (GM’s choice). An attack roll’s Difficulty, unless otherwise noted, is equal to the Difficulty score of its target.

DAMAGE ROLLS

On a successful attack, roll damage. Damage is calculated from the damage roll listed in the attack’s description with the format “xdy+[modifier]” (e.g., for a spell that inflicts “1d8+2” damage, you roll an eight-sided and add 2 to the result; the damage dealt is equal to the total).

Any time an effect says to deal damage using your Spellcast trait, you roll a number of dice equal to your Spellcast trait.


Note: If your Spellcast trait is +0 or lower, you don’t roll anything.


For weapons, the number of damage dice you roll is equal to your Proficiency. Note that your Proficiency multiplies the number of dice you roll, but doesn’t affect the modifier. For example, a PC with Proficiency 2 and wielding a weapon with adamage rating of “d8+2” deals damage equal to “2d8+2” on a successful attack.

Successful unarmed attacks inflict [Proficiency]d4 damage.

CRITICAL DAMAGE

When you get a critical success (i.e., you roll matching values on your Duality Dice) on an attack roll, you deal extra damage.

Make the damage roll as usual, but add the maximum possible result of the damage dice to the final total. For instance, if an attack would normally deal 2d8+1 damage, a critical success would deal 2d8+1+16.

DAMAGE TYPES

There are two damage types: physical damage (phy) and magic damage (mag). Unless stated otherwise, mundane weapons and unarmed attacks deal physical damage, and spells deal magic damage.

RESISTANCE, IMMUNITY, AND DIRECT DAMAGE

If a target has resistance to a damage type, then they reduce incoming damage of that type by half before comparing it to their Hit Point Thresholds. If the target has additional ways of reducing incoming damage, such as marking Armor Slots, they apply the resistance effect first. The effects of multiple resistances to the same damage type do not stack.

If a target has immunity to a damage type, they ignore incoming damage of that type.

If an attack deals both physical and magic damage, a character can only benefit from resistance or immunity if they are resistant or immune to both damage types.

Direct damage is damage that can’t be reduced by marking Armor Slots.

MULTI-TARGET ATTACK ROLLS

If a spell or ability allows you to target multiple adversaries, make one attack roll and one damage roll, then apply the results to each target individually.

MULTIPLE DAMAGE SOURCES

Damage dealt simultaneously from multiple sources is always totaled before it’s compared to its target’s damage thresholds.


For example, if a PC with orc ancestry makes a successful attack against a target in Melee range and decides to spend a Hope to use their “Tusks” feature (which gives them an extra 1d6 damage on a damage roll), they would roll their normal weapon damage and add a d6 to the result, then deal that total damage to the adversary.


MAPS, RANGE, AND MOVEMENT

You can play Daggerheart using “theater of the mind” or maps and miniatures. The conversions below from abstract ranges to physical measurements assume 1 inch of map represents about 5 feet of fictional space.

Daggerheart uses the following ranges to translate fictional positioning into relative distance for the purposes of targeting, movement, and other game mechanics:

  • Melee: Close enough to touch, up to a few feet away.

  • Very Close: Close enough to see fine details, about 5–10 feet away. While in danger, a character can move, as part of their action, from Very Close range into Melee range. On a map: anything within the shortest length of a game card (2-3 inches).

  • Close: Close enough to see prominent details, about 10–30 feet away. While in danger, a character can move, as part of their action, from Close range into Melee range. On a map: anything within the length of a pencil (5-6 inches).

  • Far: Close enough to see very little detail, about 30–100 feet away. While in danger, a character must make an Agility Roll to safely move from Far range into Melee range. On a map: anything within the length of the long edge of a piece of copy paper (11–12 inches).

  • Very Far: Too far to make out any details, about 100–300 feet away. While in danger, a character must make an Agility Roll to safely move from Very Far range into Melee range. On a map: anything beyond Far range, but still within the bounds of the conflict or scene.

  • Out of Range: Anything beyond a character’s Very Far range is Out of Range and usually can’t be targeted.

Range is measured from the source of an effect, such as the attacker or spellcaster, to the target or object of an effect.

A weapon, spell, ability, item, or other effect’s stated range is a maximum range; unless otherwise noted, it can be used at closer distances.


Optional Rule: Defined Ranges

If your table would rather operate with more precise range rules, you can use a 1-inch grid battle map during combat.

If you do, use the following guidelines for play:

  • Melee: 1 square

  • Very Close: 3 squares

  • Close: 6 squares

  • Far: 12 squares

  • Very Far: 13+ squares

  • Out of Range: Off the battlemap


MOVEMENT UNDER PRESSURE

When you’re under pressure or in danger and make an action roll, you can move to a location within Close range as part of that action. If you’re not already making an action roll, or if you want to move farther than your Close range, you need to succeed on an Agility Roll to safely reposition yourself.

An adversary can move within Close range for free as part of an action, or within Very Far range as a separate action.

AREA OF EFFECT

Unless stated otherwise, all the targets of a group effect must be within Very Close range of a single origin point within your effect’s range.

LINE OF SIGHT & COVER

Unless stated otherwise, a ranged attacker must have line of sight to their intended target to make an attack roll. If a partial obstruction lies between the attacker and target, the target has cover. Attacks made through cover are rolled with disadvantage. If the obstruction is total, there is no line of sight.

CONDITIONS

Conditions are effects that grant specific benefits or drawbacks to the target they are attached to.

STANDARD CONDITIONS

Daggerheart has three standard conditions:

HIDDEN

While you’re out of sight from all enemies and they don’t otherwise know your location, you gain the Hidden condition. Any rolls against a Hidden creature have disadvantage. After an adversary moves to where they would see you, you move into their line of sight, or you make an attack, you are no longer Hidden.

RESTRAINED

Restrained characters can’t move, but you can still take actions from their current position.

VULNERABLE

When a creature is Vulnerable, all rolls targeting them have advantage.

Some features can apply special or unique conditions, which work as described in the feature text.

Unless otherwise noted, the same condition can’t be applied more than once to the same target.

TEMPORARY TAGS & SPECIAL CONDITIONS

The temporary tag denotes a condition or effect that the affected creature can clear by making a move against it. When an affected PC makes a move to clear a temporary condition or effect, it normally requires a successful action roll using an appropriate trait. When an affected adversary makes a move to clear a temporary condition or effect, the GM puts the spotlight on the adversary and describes how they do it; this doesn’t require a roll but it does use up that adversary’s spotlight.

Special conditions are only cleared when specific requirements are met, such as completing a certain action or using a particular item. The requirements for clearing these conditions are stated in the text of the effect that applies the condition.

DOWNTIME

Between conflicts, the party can take a rest to recover expended resources and deepen their bonds. During a rest, each PC can make up to two downtime moves.

When the party rests, they must choose between a short rest and a long rest. If a party takes three short rests in a row, their next rest must be a long rest.

If a short rest is interrupted, such as by an adversary's attack, the characters don’t gain its benefits. If a long rest is interrupted, the characters only gain the benefits of a short rest.

A short rest lasts enough time for the party to catch its breath, about an hour in-world. Each player can move domain cards between their loadout and vault for free, then choose twice from the following list of downtime moves (players can choose the same move twice):

  • Tend to Wounds: Clear 1d4+Tier Hit Points for yourself or an ally.

  • Clear Stress: Clear 1d4+Tier Stress.

  • Repair Armor: Clear 1d4+Tier Armor Slots from your or an ally’s armor.

  • Prepare: Describe how you prepare yourself for the path ahead, then gain a Hope. If you choose to Prepare with one or more members of your party, you each gain 2 Hope.

At the end of a short rest, any features or effects with a limited number of uses per rest refresh and any features or effects that last until your next rest expire.

A long rest is when the characters make camp and relax or sleep for several in-game hours. Each player can move domain cards between their loadout and vault for free, then choose twice from the following list of downtime moves (players can choose the same move twice):

  • Tend to All Wounds: Clear all Hit Points for yourself or an ally.

  • Clear All Stress: Clear all Stress.

  • Repair All Armor: Clear all Armor Slots from your or an ally’s armor

  • Prepare: Describe how you prepare for the next day’s adventure, then gain a Hope. If you choose to Prepare with one or more members of your party, you each gain 2 Hope.

  • Work on a Project: With GM approval, a PC may pursue a long-term project, such as deciphering an ancient text or crafting a new weapon. The first time they start a new project, assign it a countdown. Each time a PC makes the Work on a Project move, they either advance their project’s countdown automatically or make an action roll to advance it (GM’s choice).

At the end of a long rest, any features or effects with a limited number of uses per rest or per long rest refresh and any features or effects that last until your next rest or until your next long rest expire.

DOWNTIME CONSEQUENCES

On a short rest, the GM gains 1d4 Fear. On a long rest, they gain Fear equal to 1d4 + the number of PCs, and they can advance a long-term countdown of their choice.

DEATH

When a PC marks their last Hit Point, they must make a death move by choosing one of the following options:

  • Blaze of Glory: Your character embraces death and goes out in a blaze of glory. Take one final action. It automatically critically succeeds (with GM approval), and then you cross through the veil of death.

  • Avoid Death: Your character avoids death and faces the consequences. They temporarily drop unconscious, and then you work with the GM to describe how the situation worsens. While unconscious, your character can’t move or act, and they can’t be targeted by an attack. They return to consciousness when an ally clears 1 or more of their marked Hit Points or when the party finishes a long rest. After your character falls unconscious, roll your Hope Die. If its value is equal to or less than your character’s level, they gain a scar: permanently cross out a Hope slot and work with the GM to determine its lasting narrative impact and how, if possible, it can be restored. If you ever cross out your last Hope slot, your character’s journey ends.

  • Risk It All: Roll your Duality Dice. If the Hope Die is higher, your character stays on their feet and clears a number of Hit Points or Stress equal to the value of the Hope Die (you can divide the Hope Die value between Hit Points and Stress however you’d prefer). If the Fear Die is higher, your character crosses through the veil of death. If the Duality Dice show matching results, your character stays up and clears all Hit Points and Stress.

If your character dies, work with the GM before the next session to create a new character at the current level of the rest of the party.

ADDITIONAL RULES

The following rules apply to many aspects of the game.

ROUNDING UP

This game doesn’t use fractions; if you need to round to a whole number, round up unless otherwise specified. When in doubt, resolve any ambiguity in favor of the PCs.

REROLLING DICE

When a feature allows you to reroll a die, you always take the new result unless the feature specifically says otherwise.

INCOMING DAMAGE

Incoming damage means the total damage from a single attack or source, before Armor Slots are marked.

SIMULTANEOUS EFFECTS

If the resolution order of multiple effects is unclear, the person in control of the effects (player or GM) decides what order to resolve them in.

STACKING EFFECTS

Unless stated otherwise, all effects beside conditions and advantage/disadvantage can stack.

ONGOING SPELL EFFECTS

If an effect doesn’t have a listed mechanical expiration, it only ends when decided by the controlling player, the GM, or the demands of the fiction.

SPENDING RESOURCES

Unless an effect states otherwise, you can’t spend Hope or mark Stress multiple times on the same feature to increase or repeat its effects on the same roll.

USING FEATURES AFTER A ROLL

If a feature allows you to affect a roll after the result has been totaled, you can use it after the GM declares whether the roll succeeds or fails, but not after the consequences unfold or another roll is made.

LEVELING UP

Your party levels up whenever the GM decides you’ve reached a narrative milestone (usually about every 3 sessions). All party members level up at the same time.

Daggerheart has 10 PC levels divided into 4 tiers:


→ Tier 1 encompasses level 1 only.

→ Tier 2 encompasses levels 2–4.

→ Tier 3 encompasses levels 5–7.

→ Tier 4 encompasses levels 8–10.


Your tier affects your damage thresholds, tier achievements, and access to advancements.

STEP ONE: TIER ACHIEVEMENTS

Take any applicable tier achievements

  • At level 2, you gain a new Experience at +2 and permanently increase your Proficiency by 1.

  • At level 5, you gain a new Experience at +2, permanently increase your Proficiency by 1, and clear any marked traits.

  • At level 8, you gain a new Experience at +2, permanently increase your Proficiency by 1, and clear any marked traits.

STEP TWO: ADVANCEMENTS

Choose any two advancements with at least one unmarked slot from your tier or below. Options with multiple slots can be chosen more than once. When you choose an advancement, mark one of its slots.

  • When you choose to increase two unmarked character traits and mark them: Choose two unmarked character traits and gain a permanent +1 bonus to them. You can’t increase these stats again until the next tier (when your tier achievement allows you to clear those marks).

  • When you choose to permanently add 1 or more Hit Point slots: Darken the outline of the next rectangle in the Hit Point section of your character sheet in pen or permanent marker.

  • When you choose to permanently add 1 or more Stress slots: Darken the outline of the next rectangle in the Stress section of your character sheet in pen or permanent marker.

  • When you choose to increase your Experience: Choose two Experiences on your character sheet and gain a permanent +1 bonus to both.

  • When you take an additional domain card: You can choose an additional domain card at or below your level or from your class’s domains. If you’ve multiclassed, you can instead select a card at or below half your level from your chosen multiclass domain.

  • When you choose to increase your Evasion: Gain a permanent +1 bonus to your Evasion.

  • When you choose to take an upgraded subclass card: Take the next card for your subclass. If you have only the foundation card, take a specialization; if you have a specialization already, take a mastery. Then cross out this tier’s multiclass option.

  • When you choose to increase your Proficiency: Fill in one of the open circles in the “Proficiency” section of your character sheet, then increase your weapon’s number of damage dice by 1. The black box around this advancement’s slots indicates you must spend two advancements and mark both level-up slots in order to take it as an option.

  • When you choose to multiclass: Choose an additional class, select one of its domains, and gain its class feature. Add the appropriate multiclass module to your character sheet and take the foundation card from one of its subclasses. Then cross out the “upgraded subclass” advancement option in this tier and all other “multiclass” advancement options on your character sheet. The black box around this advancement’s slots indicates you must spend two advancements and mark both level-up slots in order to take it as an option.

STEP THREE: DAMAGE THRESHOLDS

Increase all damage thresholds by 1.

STEP FOUR: DOMAIN CARDS

Acquire a new domain card at your level or lower from one of your class’s domains and add it to your loadout or vault. If your loadout is already full, you can’t add the new card to it until you move another into your vault. You can also exchange one domain card you’ve previously acquired for a different domain card of the same level or lower.

MULTICLASSING

Starting at level 5, you can choose multiclassing as an option when leveling up. When you multiclass, you choose an additional class, gain access to one of its domains, and acquire its class feature. Take the appropriate multiclass module and add it to the right side of your character sheet, then choose a foundation card from one of its subclasses. If your foundation cards specify different Spellcast traits, you can choose which one to apply when making a Spellcast roll.

Whenever you have the option to acquire a new domain card, you can choose from cards at or below half your current level (rounded up) from the domain you chose when you selected the multiclass advancement.

EQUIPMENT

Your equipped weapons and armor are the ones listed in the “Active Weapons” and “Active Armor” sections of your character sheet. Your character can only attack with weapons, benefit from armor, and gain features from items they have equipped. You can’t equip weapons or armor with a higher tier than you.

PCs can carry up to two additional weapons in the “Inventory Weapon” areas of the character sheet.

You can swap an Inventory Weapon with an Active Weapon at no cost during a rest or moment of calm; otherwise, you must mark a Stress to do so.

Your character can only have one Active Armor at a time.

They can’t equip armor while in danger or under pressure; otherwise, they can equip or unequip armor without cost.

Each armor has its own Armor Slots; if your character unequips their armor, track how many of its Armor Slots are marked. You can't carry armor in your inventory. When your character equips or unequips armor, recalculate your damage thresholds.

WEAPONS

All weapons have a tier, trait, range, damage die, damage type, and burden. Some weapons also have a feature.

CATEGORY

A weapon’s category specifies whether it is a Primary or Secondary weapon. Your character can only equip up to one weapon of each category at a time.

TRAIT

A weapon’s trait specifies which trait to use when making an attack roll with it.

RANGE

A weapon’s range specifies the maximum distance between the attacker and their target when attacking with it.

DAMAGE

A weapon’s damage indicates the size of the damage dice you roll on a successful attack with it; you roll a number of dice equal to your Proficiency. If the damage includes a flat modifier, this number is added to the total damage rolled, but is not altered or affected by Proficiency.

DAMAGE TYPE

A weapon’s damage type indicates whether it deals physical or magic damage. Weapons that deal magic damage can only be wielded by characters with a Spellcast trait.

BURDEN

A weapon’s burden indicates how many hands it occupies when equipped. Your character’s maximum burden is 2 hands.

FEATURE

A weapon’s feature is a special rule that stays in effect while the weapon is equipped.

You can throw an equipped weapon at a target within Very Close range, making the attack roll with Finesse. On a success, deal damage as usual for that weapon. Once thrown, the weapon is no longer considered equipped. Until you retrieve and re-equip it, you can’t attack with it or benefit from its features.

Combat Wheelchair

By Mark Thompson

The combat wheelchair is a ruleset designed to help you play a wheelchair user in Daggerheart. This section provides mechanics and narrative guidance for you to work from, but feel free to adapt the flavor text to best suit your character. Have fun with your character’s wheelchair design, and make it as unique or tailored to them as you please.

ACTION AND MOVEMENT

When describing how your character moves, you can use descriptions such as the following:

  • “I roll over to the door to see if it’s open.”

  • “I wheel myself over to the group to ask what’s going on.”

  • “I pull my brakes and skid to a halt, turning in my seat to level my bow at the intruder.”

CONSEQUENCES

Here are some ways you might describe complications you encounter when your character uses their wheelchair:

  • “I pull my brakes, but I don’t think to account for the loose gravel on the ground.”

  • “I hit a patch of ice awkwardly and am sent skidding out past my target.”

  • “I go to push off in pursuit, but one of my front caster wheels snags on a crack in the pavement, stalling me for a moment.”

GMs should avoid breaking a character's wheelchair or otherwise removing it from play as a consequence, unless everyone at the table, especially the wheelchair user’s player, gives their approval.

EVASION

Your character is assumed to be skilled in moving their wheelchair and navigating numerous situations in it. As a result, the only wheelchair that gives a penalty to a PC's Evasion is the Heavy Frame model.

BURDEN

All wheelchairs can be maneuvered using one or two hands outside of combat. However, when being used as a weapon, the chair is restricted to requiring one or two hands to perform attacks, depending on the model you’ve chosen. If you’re playing a character who has limited to no mobility in their arms, their wheelchair can be attuned to them by magical means. For example, your character might use a psychic link to guide the chair around like a pseudo-electric wheelchair. All the rules presented here can be tailored and adapted to any character's needs.

CHOOSING YOUR MODEL

All combat wheelchairs are equipped as Primary Weapons.

There are three models of wheelchair available: light, heavy, and arcane. You’re encouraged to consider the type of character you’re playing and the class they belong to, then choose the model that best matches that character concept.

ARMOR

Every armor has a name, base damage thresholds, and a base Armor Score. Some armor also has a feature.

  • An armor’s base armor score indicates how many Armor Slots it provides its wearer before additional bonuses are added to calculate their total Armor Score. A PC’s Armor Score can’t exceed 12.

  • An armor’s base thresholds determine its wearer’s major and severe damage thresholds before adding bonuses to calculate their final damage thresholds.

  • An armor’s feature is a special rule that stays in effect while the armor is equipped.

While unarmored, your character’s base Armor Score is 0, their Major threshold is equal to their level, and their Severe threshold is equal to twice their level.

REDUCING INCOMING DAMAGE

When you take damage, you can mark one Armor Slot to reduce the number of Hit Points you would mark by one. If your character has an Armor Score of 0, you can’t mark Armor Slots. If an effect temporarily increases your Armor Score,

it increases your available Armor Slots by the same amount; when the effect ends, so does the availability of these Armor Slots.

LOOT

Loot comprises any consumables or reusable items the party acquires.

Items can be used until sold, discarded, or lost.

To generate a random item, choose a rarity, roll the designated dice, and match the total to the item in the table:

  • Common: 1d12 or 2d12

  • Rare: 3d12 or 4d12

  • Uncommon: 2d12 or 3d12

  • Legendary: 4d12 or 5d12

@UUID[RollTable.KKqUrMMXPpm7uhYT]{Loot}

Consumables

Consumables are loot that can only be used once. You can hold up to five of each consumable at a time. Using a consumable doesn’t require a roll unless required by the GM or the demands of the fiction.

To generate a random consumable, choose a rarity, roll the designated dice, and match the total to the item in the table:

  • Common: 1d12 or 2d12

  • Rare: 3d12 or 4d12

  • Uncommon: 2d12 or 3d12

  • Legendary: 4d12 or 5d12

@UUID[RollTable.wZXyi343PSVVwWB3]{Consumables}

GOLD

Gold is an abstract measurement of how much wealth a character has, and is measured in handfuls, bags, and chests, with 10 handfuls to 1 bag, and 10 bags to 1 chest. When you have marked all of the slots in a category and you gain another gold reward in that category, mark a slot in the following category and clear all the slots in the current one.

For example, if you have 9 handfuls and gain another, you instead mark 1 bag and erase all handfuls. If you have 9 bags and gain another, you mark 1 chest and erase all bags.

You can’t have more than 1 chest, so if all your Gold slots are marked, you’ll need to spend some of your gold or store it somewhere else before you can acquire more.


Optional Rule: Gold Coins

If your group wants to track gold with more granularity, you can add coins as your lowest denomination. Following the established pattern, 10 coins equal 1 handful.


" }, "video": { "controls": true, diff --git a/src/packs/subclasses/feature_Accomplished_0wCctRupJAv5hTuE.json b/src/packs/subclasses/feature_Accomplished_0wCctRupJAv5hTuE.json index 2e23c31c..02a98035 100644 --- a/src/packs/subclasses/feature_Accomplished_0wCctRupJAv5hTuE.json +++ b/src/packs/subclasses/feature_Accomplished_0wCctRupJAv5hTuE.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253943924, - "modifiedTime": 1754253975014, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392523853, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!0wCctRupJAv5hTuE" } diff --git a/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json b/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json index 6b505c86..a73eb3d7 100644 --- a/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json +++ b/src/packs/subclasses/feature_Act_of_Reprisal_k7vvMJtEcxMWUUrW.json @@ -29,7 +29,7 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Adversary", @@ -38,7 +38,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -91,12 +96,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754243143650, - "modifiedTime": 1754351612905, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756035614382, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!k7vvMJtEcxMWUUrW" } diff --git a/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json b/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json index a19ae5c9..3cfe1052 100644 --- a/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json +++ b/src/packs/subclasses/feature_Adept_v511C6GMShsBblah.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,7 +41,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -55,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253694438, - "modifiedTime": 1754253772703, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392496269, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!v511C6GMShsBblah" } diff --git a/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json b/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json index ef5d4c56..e15129b0 100644 --- a/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json +++ b/src/packs/subclasses/feature_Adrenaline_uByM34yQlw38yf1V.json @@ -7,38 +7,14 @@ "system": { "description": "

While you're Vulnerable, add your level to your damage rolls.

", "resource": null, - "actions": { - "UgffABhuobRDP7MQ": { - "type": "effect", - "_id": "UgffABhuobRDP7MQ", - "systemPath": "actions", - "description": "

While you're Vulnerable, add your level to your damage rolls.

", - "chatDisplay": true, - "actionType": "action", - "cost": [], - "uses": { - "value": null, - "max": "", - "recovery": null, - "consumeOnSuccess": false - }, - "effects": [ - { - "_id": "HMx9uZ54mvMiH95x", - "onSave": false - } - ], - "target": { - "type": "self", - "amount": null - }, - "name": "Apply", - "img": "icons/magic/unholy/hand-marked-pink.webp", - "range": "" - } - }, + "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -109,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754319984350, - "modifiedTime": 1754351983791, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756035779655, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!uByM34yQlw38yf1V" } diff --git a/src/packs/subclasses/feature_Advanced_Training_uGcs785h94RMtueH.json b/src/packs/subclasses/feature_Advanced_Training_uGcs785h94RMtueH.json index 7cbad7d7..3b7f55d9 100644 --- a/src/packs/subclasses/feature_Advanced_Training_uGcs785h94RMtueH.json +++ b/src/packs/subclasses/feature_Advanced_Training_uGcs785h94RMtueH.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267928272, - "modifiedTime": 1754267942465, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391976441, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!uGcs785h94RMtueH" } diff --git a/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json b/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json index b435ffad..545f2116 100644 --- a/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json +++ b/src/packs/subclasses/feature_Apex_Predator_lwH3E0Zyf4gbVOd0.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -40,7 +39,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -53,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754268013491, - "modifiedTime": 1754268190654, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391968894, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!lwH3E0Zyf4gbVOd0" } diff --git a/src/packs/subclasses/feature_Arcane_Charge_yA4MKQ1tbKFiJoDB.json b/src/packs/subclasses/feature_Arcane_Charge_yA4MKQ1tbKFiJoDB.json index 59dfea8f..8ebe8a5b 100644 --- a/src/packs/subclasses/feature_Arcane_Charge_yA4MKQ1tbKFiJoDB.json +++ b/src/packs/subclasses/feature_Arcane_Charge_yA4MKQ1tbKFiJoDB.json @@ -17,7 +17,12 @@ }, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [ { @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349515898, - "modifiedTime": 1754349515898, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392345960, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!yA4MKQ1tbKFiJoDB" } diff --git a/src/packs/subclasses/feature_Ascendant_fefLgx6kcYWusjBb.json b/src/packs/subclasses/feature_Ascendant_fefLgx6kcYWusjBb.json index efb31ac4..3367b434 100644 --- a/src/packs/subclasses/feature_Ascendant_fefLgx6kcYWusjBb.json +++ b/src/packs/subclasses/feature_Ascendant_fefLgx6kcYWusjBb.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754355721228, - "modifiedTime": 1754355738718, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392230926, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!fefLgx6kcYWusjBb" } diff --git a/src/packs/subclasses/feature_At_Ease_xPWFvGvtUjIcqgJq.json b/src/packs/subclasses/feature_At_Ease_xPWFvGvtUjIcqgJq.json index 4cccb077..d7212244 100644 --- a/src/packs/subclasses/feature_At_Ease_xPWFvGvtUjIcqgJq.json +++ b/src/packs/subclasses/feature_At_Ease_xPWFvGvtUjIcqgJq.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754237891794, - "modifiedTime": 1754245935236, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391823600, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xPWFvGvtUjIcqgJq" } diff --git a/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json b/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json index d56edfa1..1efb24e2 100644 --- a/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json +++ b/src/packs/subclasses/feature_Battle_Bonded_hWsKyed1vfILg0I8.json @@ -9,9 +9,66 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, - "effects": [], + "effects": [ + { + "name": "Battle Bonded", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "_id": "IZhakv6EuG8DO4a3", + "img": "icons/creatures/mammals/humanoid-wolf-dog-blue.webp", + "changes": [ + { + "key": "system.evasion", + "mode": 2, + "value": "2", + "priority": null + } + ], + "disabled": true, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

When an adversary attacks you while they’re within your companion’s Melee range, you gain a +2 bonus to your Evasion against the attack.

", + "origin": null, + "tint": "#ffffff", + "transfer": true, + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756035661033, + "modifiedTime": 1756035696385, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!hWsKyed1vfILg0I8.IZhakv6EuG8DO4a3" + } + ], "sort": 0, "ownership": { "default": 0, @@ -22,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267290791, - "modifiedTime": 1754267339284, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391947493, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hWsKyed1vfILg0I8" } diff --git a/src/packs/subclasses/feature_Battle_Ritual_qqb5acyUSl1sCpWW.json b/src/packs/subclasses/feature_Battle_Ritual_qqb5acyUSl1sCpWW.json index 1ebf58ca..df550dff 100644 --- a/src/packs/subclasses/feature_Battle_Ritual_qqb5acyUSl1sCpWW.json +++ b/src/packs/subclasses/feature_Battle_Ritual_qqb5acyUSl1sCpWW.json @@ -103,7 +103,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -116,12 +121,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256232412, - "modifiedTime": 1754256309647, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392388947, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!qqb5acyUSl1sCpWW" } diff --git a/src/packs/subclasses/feature_Battlemage_Y9eGMewnFZgPvX0M.json b/src/packs/subclasses/feature_Battlemage_Y9eGMewnFZgPvX0M.json index b6be75f0..ab44a170 100644 --- a/src/packs/subclasses/feature_Battlemage_Y9eGMewnFZgPvX0M.json +++ b/src/packs/subclasses/feature_Battlemage_Y9eGMewnFZgPvX0M.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253784757, - "modifiedTime": 1754253819240, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392505769, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Y9eGMewnFZgPvX0M" } diff --git a/src/packs/subclasses/feature_Brilliant_2A0HBDxGc4gEARou.json b/src/packs/subclasses/feature_Brilliant_2A0HBDxGc4gEARou.json index 0c05fbf6..77bf5d74 100644 --- a/src/packs/subclasses/feature_Brilliant_2A0HBDxGc4gEARou.json +++ b/src/packs/subclasses/feature_Brilliant_2A0HBDxGc4gEARou.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 100000, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254253864, - "modifiedTime": 1754254310242, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392562593, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2A0HBDxGc4gEARou" } diff --git a/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json b/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json index 752fee05..ff56a435 100644 --- a/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json +++ b/src/packs/subclasses/feature_Clarity_of_Nature_etaQ01yGJhBLDUqZ.json @@ -17,11 +17,12 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "etaQ01yGJhBLDUqZ", + "key": "resource", + "itemId": "etaQ01yGJhBLDUqZ", "value": 1, - "keyIsID": true, - "step": null + "scalable": false, + "step": null, + "consumeOnSuccess": false } ], "uses": { @@ -85,7 +86,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "sort": 200000, @@ -98,12 +104,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1754179740310, - "modifiedTime": 1754496518048, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756325575203, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_key": "!items!etaQ01yGJhBLDUqZ" } diff --git a/src/packs/subclasses/feature_Comaraderie_dArl2cxKIEGTicXU.json b/src/packs/subclasses/feature_Comaraderie_dArl2cxKIEGTicXU.json index 61ce367d..2b30206e 100644 --- a/src/packs/subclasses/feature_Comaraderie_dArl2cxKIEGTicXU.json +++ b/src/packs/subclasses/feature_Comaraderie_dArl2cxKIEGTicXU.json @@ -33,7 +33,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -46,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256748303, - "modifiedTime": 1754256845527, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392438216, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dArl2cxKIEGTicXU" } diff --git a/src/packs/subclasses/feature_Companion_MBFXxIEwc0Dl4kJg.json b/src/packs/subclasses/feature_Companion_MBFXxIEwc0Dl4kJg.json index e13065b7..8028eec2 100644 --- a/src/packs/subclasses/feature_Companion_MBFXxIEwc0Dl4kJg.json +++ b/src/packs/subclasses/feature_Companion_MBFXxIEwc0Dl4kJg.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754266772170, - "modifiedTime": 1754266905966, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391922354, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!MBFXxIEwc0Dl4kJg" } diff --git a/src/packs/subclasses/feature_Conjure_Shield_oirsCnN66GOlK3Fa.json b/src/packs/subclasses/feature_Conjure_Shield_oirsCnN66GOlK3Fa.json index 8fc72db2..88a739d0 100644 --- a/src/packs/subclasses/feature_Conjure_Shield_oirsCnN66GOlK3Fa.json +++ b/src/packs/subclasses/feature_Conjure_Shield_oirsCnN66GOlK3Fa.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254077810, - "modifiedTime": 1754254095589, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392539956, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!oirsCnN66GOlK3Fa" } diff --git a/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json b/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json index 3c8fa5b5..75a5f905 100644 --- a/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json +++ b/src/packs/subclasses/feature_Contacts_Everywhere_cXbRm744mW6UXGam.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -41,7 +40,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 0, @@ -54,12 +58,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754320389008, - "modifiedTime": 1754496752362, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392080713, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!cXbRm744mW6UXGam" } diff --git a/src/packs/subclasses/feature_Courage_o5j2vjXU8NicYlXx.json b/src/packs/subclasses/feature_Courage_o5j2vjXU8NicYlXx.json index 108f4571..5b2fdcdf 100644 --- a/src/packs/subclasses/feature_Courage_o5j2vjXU8NicYlXx.json +++ b/src/packs/subclasses/feature_Courage_o5j2vjXU8NicYlXx.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256184552, - "modifiedTime": 1754256222832, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392395130, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!o5j2vjXU8NicYlXx" } diff --git a/src/packs/subclasses/feature_Dark_Cloud_frBTtNMX9Y2gkuPz.json b/src/packs/subclasses/feature_Dark_Cloud_frBTtNMX9Y2gkuPz.json index 2de13f94..c31aa7d2 100644 --- a/src/packs/subclasses/feature_Dark_Cloud_frBTtNMX9Y2gkuPz.json +++ b/src/packs/subclasses/feature_Dark_Cloud_frBTtNMX9Y2gkuPz.json @@ -56,7 +56,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [], "sort": 0, @@ -69,12 +74,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754319411878, - "modifiedTime": 1754351939150, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392060813, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!frBTtNMX9Y2gkuPz" } diff --git a/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json b/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json index 37e5fa11..017a0752 100644 --- a/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json +++ b/src/packs/subclasses/feature_Defender_Jdktv5p1K2PfgxrT.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -40,7 +39,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "sort": 400000, @@ -53,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754220872809, - "modifiedTime": 1754353606220, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391765479, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Jdktv5p1K2PfgxrT" } diff --git a/src/packs/subclasses/feature_Devout_J3A7ycmj65hlhWnI.json b/src/packs/subclasses/feature_Devout_J3A7ycmj65hlhWnI.json index b7568b2c..1fd3d016 100644 --- a/src/packs/subclasses/feature_Devout_J3A7ycmj65hlhWnI.json +++ b/src/packs/subclasses/feature_Devout_J3A7ycmj65hlhWnI.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754353798475, - "modifiedTime": 1754353830966, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392196286, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!J3A7ycmj65hlhWnI" } diff --git a/src/packs/subclasses/feature_Elemental_Aura_2JH9NaOh69yN80Gw.json b/src/packs/subclasses/feature_Elemental_Aura_2JH9NaOh69yN80Gw.json index 286f651d..6e65294e 100644 --- a/src/packs/subclasses/feature_Elemental_Aura_2JH9NaOh69yN80Gw.json +++ b/src/packs/subclasses/feature_Elemental_Aura_2JH9NaOh69yN80Gw.json @@ -173,7 +173,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [ { @@ -370,12 +375,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754180638227, - "modifiedTime": 1754353118771, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391729977, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2JH9NaOh69yN80Gw" } diff --git a/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json b/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json index 30d3928f..5cad10d1 100644 --- a/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json +++ b/src/packs/subclasses/feature_Elemental_Dominion_EFUJHrkTuyv8uA9l.json @@ -74,7 +74,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -126,7 +125,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [ { @@ -332,12 +336,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754219959517, - "modifiedTime": 1754353189971, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391758846, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!EFUJHrkTuyv8uA9l" } diff --git a/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json b/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json index 855d34aa..02af8c17 100644 --- a/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json +++ b/src/packs/subclasses/feature_Elemental_Incarnation_f37TTgCc0Q3Ih1A1.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -106,7 +105,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -141,7 +139,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -206,7 +203,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -231,7 +227,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [ { @@ -441,12 +442,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754176169510, - "modifiedTime": 1754352293609, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391716994, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!f37TTgCc0Q3Ih1A1" } diff --git a/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json b/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json index b282d4fb..fbea1985 100644 --- a/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json +++ b/src/packs/subclasses/feature_Elementalist_dPcqKN5NeDkjB1HW.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -38,12 +37,12 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Bonus to Roll", "img": "icons/sundries/gaming/dice-runed-tan.webp", - "range": "" + "range": "self" }, "S7HvFD3qIR3ifJRL": { "type": "effect", @@ -54,7 +53,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -75,16 +73,21 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Bonus to Damage", "img": "icons/sundries/gaming/dice-runed-tan.webp", - "range": "" + "range": "self" } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [ { @@ -98,8 +101,8 @@ "rangeDependence": { "enabled": false, "type": "withinRange", - "target": "hostile", - "range": "melee" + "target": "any", + "range": "self" } }, "changes": [ @@ -110,7 +113,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -129,10 +132,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "lastModifiedBy": null + "systemVersion": "1.1.2", + "lastModifiedBy": "fBcTgyTzoARBvohY", + "modifiedTime": 1761503576186 }, "_key": "!items.effects!dPcqKN5NeDkjB1HW.EY87mY6ULfIt3XC8" }, @@ -147,8 +151,8 @@ "rangeDependence": { "enabled": false, "type": "withinRange", - "target": "hostile", - "range": "melee" + "target": "any", + "range": "self" } }, "changes": [ @@ -165,7 +169,7 @@ "priority": null } ], - "disabled": true, + "disabled": false, "duration": { "startTime": null, "combat": null, @@ -184,10 +188,11 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.350", "systemId": "daggerheart", - "systemVersion": "0.0.1", - "lastModifiedBy": null + "systemVersion": "1.1.2", + "lastModifiedBy": "fBcTgyTzoARBvohY", + "modifiedTime": 1761503563924 }, "_key": "!items.effects!dPcqKN5NeDkjB1HW.WwibpgaO6Kkks7aZ" } @@ -202,12 +207,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754349507020, - "modifiedTime": 1754349507020, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756035526712, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!dPcqKN5NeDkjB1HW" } diff --git a/src/packs/subclasses/feature_Eloquent_5bmB1YcxiJVNVXDM.json b/src/packs/subclasses/feature_Eloquent_5bmB1YcxiJVNVXDM.json index daca1154..be3ae3d6 100644 --- a/src/packs/subclasses/feature_Eloquent_5bmB1YcxiJVNVXDM.json +++ b/src/packs/subclasses/feature_Eloquent_5bmB1YcxiJVNVXDM.json @@ -31,7 +31,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [], "flags": {}, @@ -39,12 +44,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.QaEinpTu6c1Tj859", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754494786779, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391624722, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json b/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json index 74f5a35e..d0787ec3 100644 --- a/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json +++ b/src/packs/subclasses/feature_Elusive_Predator_Cjtc43V3IzAmfIFG.json @@ -9,9 +9,66 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, - "effects": [], + "effects": [ + { + "name": "Elusive Predator", + "type": "base", + "system": { + "rangeDependence": { + "enabled": false, + "type": "withinRange", + "target": "hostile", + "range": "melee" + } + }, + "_id": "X4llFOcAcdJLbear", + "img": "icons/creatures/mammals/beast-horned-scaled-glowing-orange.webp", + "changes": [ + { + "key": "system.evasion", + "mode": 2, + "value": "2", + "priority": null + } + ], + "disabled": true, + "duration": { + "startTime": null, + "combat": null, + "seconds": null, + "rounds": null, + "turns": null, + "startRound": null, + "startTurn": null + }, + "description": "

When your Focus makes an attack against you, you gain a +2 bonus to your Evasion against the attack.

", + "origin": null, + "tint": "#ffffff", + "transfer": true, + "statuses": [], + "sort": 0, + "flags": {}, + "_stats": { + "compendiumSource": null, + "duplicateSource": null, + "exportSource": null, + "coreVersion": "13.347", + "systemId": "daggerheart", + "systemVersion": "1.1.0", + "createdTime": 1756035709943, + "modifiedTime": 1756035734622, + "lastModifiedBy": "vUIbuan0U50nfKBE" + }, + "_key": "!items.effects!Cjtc43V3IzAmfIFG.X4llFOcAcdJLbear" + } + ], "sort": 0, "ownership": { "default": 0, @@ -22,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267748776, - "modifiedTime": 1754267799813, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391941589, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Cjtc43V3IzAmfIFG" } diff --git a/src/packs/subclasses/feature_Enchanted_Aid_4pVBN8cuKePI423V.json b/src/packs/subclasses/feature_Enchanted_Aid_4pVBN8cuKePI423V.json index 756a21cc..4a3dd229 100644 --- a/src/packs/subclasses/feature_Enchanted_Aid_4pVBN8cuKePI423V.json +++ b/src/packs/subclasses/feature_Enchanted_Aid_4pVBN8cuKePI423V.json @@ -33,7 +33,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 23, + "artist": "" + } }, "effects": [], "sort": 0, @@ -46,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349511084, - "modifiedTime": 1754349511084, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392324026, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4pVBN8cuKePI423V" } diff --git a/src/packs/subclasses/feature_Epic_Poetry_eCoEWkWuZPMZ9C6a.json b/src/packs/subclasses/feature_Epic_Poetry_eCoEWkWuZPMZ9C6a.json index f80c05e3..23864dbe 100644 --- a/src/packs/subclasses/feature_Epic_Poetry_eCoEWkWuZPMZ9C6a.json +++ b/src/packs/subclasses/feature_Epic_Poetry_eCoEWkWuZPMZ9C6a.json @@ -8,7 +8,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 10, + "artist": "" + } }, "effects": [ { @@ -67,12 +72,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.4dVLpWQ5SpAGnc5A", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754236502610, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391644691, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Ethereal_Visage_tyGB6wRKjYdIBK1i.json b/src/packs/subclasses/feature_Ethereal_Visage_tyGB6wRKjYdIBK1i.json index c434eae9..ea7992a3 100644 --- a/src/packs/subclasses/feature_Ethereal_Visage_tyGB6wRKjYdIBK1i.json +++ b/src/packs/subclasses/feature_Ethereal_Visage_tyGB6wRKjYdIBK1i.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754355219220, - "modifiedTime": 1754355252528, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392202970, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!tyGB6wRKjYdIBK1i" } diff --git a/src/packs/subclasses/feature_Expert_Training_iCXtOWBKv1FdKdWz.json b/src/packs/subclasses/feature_Expert_Training_iCXtOWBKv1FdKdWz.json index e6b18e5a..2ef5b31f 100644 --- a/src/packs/subclasses/feature_Expert_Training_iCXtOWBKv1FdKdWz.json +++ b/src/packs/subclasses/feature_Expert_Training_iCXtOWBKv1FdKdWz.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267251789, - "modifiedTime": 1754267277163, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391953639, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!iCXtOWBKv1FdKdWz" } diff --git a/src/packs/subclasses/feature_Face_Your_Fear_D3ffFWSXCza4WGcM.json b/src/packs/subclasses/feature_Face_Your_Fear_D3ffFWSXCza4WGcM.json index 2e0d5a05..056e3bc8 100644 --- a/src/packs/subclasses/feature_Face_Your_Fear_D3ffFWSXCza4WGcM.json +++ b/src/packs/subclasses/feature_Face_Your_Fear_D3ffFWSXCza4WGcM.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253863023, - "modifiedTime": 1754253898944, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392512687, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!D3ffFWSXCza4WGcM" } diff --git a/src/packs/subclasses/feature_Fleeting_Shadow_EY7Eo6hNGppVL3dR.json b/src/packs/subclasses/feature_Fleeting_Shadow_EY7Eo6hNGppVL3dR.json index 5c8e344a..ed1d1569 100644 --- a/src/packs/subclasses/feature_Fleeting_Shadow_EY7Eo6hNGppVL3dR.json +++ b/src/packs/subclasses/feature_Fleeting_Shadow_EY7Eo6hNGppVL3dR.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754320756015, - "modifiedTime": 1754320791763, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755392093113, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!EY7Eo6hNGppVL3dR" } diff --git a/src/packs/subclasses/feature_Fueled_by_Fear_hNqLf3zEfKRzSbvq.json b/src/packs/subclasses/feature_Fueled_by_Fear_hNqLf3zEfKRzSbvq.json index a96a7324..bfef6ea3 100644 --- a/src/packs/subclasses/feature_Fueled_by_Fear_hNqLf3zEfKRzSbvq.json +++ b/src/packs/subclasses/feature_Fueled_by_Fear_hNqLf3zEfKRzSbvq.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254160964, - "modifiedTime": 1754254207526, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392548972, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hNqLf3zEfKRzSbvq" } diff --git a/src/packs/subclasses/feature_Gifted_Performer_99U7YWNCxFZHCiT0.json b/src/packs/subclasses/feature_Gifted_Performer_99U7YWNCxFZHCiT0.json index 57cbdc0c..81730014 100644 --- a/src/packs/subclasses/feature_Gifted_Performer_99U7YWNCxFZHCiT0.json +++ b/src/packs/subclasses/feature_Gifted_Performer_99U7YWNCxFZHCiT0.json @@ -170,7 +170,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [ { @@ -224,12 +229,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.6j1RP4fz3BwSfoli", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754475491670, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391572653, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Have_No_Fear_8TH6h6a36h09mf6d.json b/src/packs/subclasses/feature_Have_No_Fear_8TH6h6a36h09mf6d.json index f4423761..90855e04 100644 --- a/src/packs/subclasses/feature_Have_No_Fear_8TH6h6a36h09mf6d.json +++ b/src/packs/subclasses/feature_Have_No_Fear_8TH6h6a36h09mf6d.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 26, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254675541, - "modifiedTime": 1754254712265, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392573261, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!8TH6h6a36h09mf6d" } diff --git a/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json b/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json index b057717a..0b5b61f5 100644 --- a/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json +++ b/src/packs/subclasses/feature_Heart_of_a_Poet_Ce0sn0kqAw3PFe0k.json @@ -16,7 +16,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -39,7 +38,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "flags": {}, @@ -47,12 +51,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.3YIVugLcucLNtLSZ", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754240308015, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391585771, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Honed_Expertise_w1BwNKxbQOSizLmZ.json b/src/packs/subclasses/feature_Honed_Expertise_w1BwNKxbQOSizLmZ.json index 9f2e7e19..e0e21482 100644 --- a/src/packs/subclasses/feature_Honed_Expertise_w1BwNKxbQOSizLmZ.json +++ b/src/packs/subclasses/feature_Honed_Expertise_w1BwNKxbQOSizLmZ.json @@ -57,7 +57,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 200000, @@ -70,12 +75,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253988597, - "modifiedTime": 1754254310242, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392579823, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!w1BwNKxbQOSizLmZ" } diff --git a/src/packs/subclasses/feature_Iron_Will_7AVRNyBcd1Nffjtn.json b/src/packs/subclasses/feature_Iron_Will_7AVRNyBcd1Nffjtn.json index 5b300ade..26e04708 100644 --- a/src/packs/subclasses/feature_Iron_Will_7AVRNyBcd1Nffjtn.json +++ b/src/packs/subclasses/feature_Iron_Will_7AVRNyBcd1Nffjtn.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -74,12 +79,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754237297894, - "modifiedTime": 1754350175771, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391817317, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!7AVRNyBcd1Nffjtn" } diff --git a/src/packs/subclasses/feature_Loyal_Friend_xjZHD5Yo3Tu26rLm.json b/src/packs/subclasses/feature_Loyal_Friend_xjZHD5Yo3Tu26rLm.json index 5f8c3ed7..4f464e6b 100644 --- a/src/packs/subclasses/feature_Loyal_Friend_xjZHD5Yo3Tu26rLm.json +++ b/src/packs/subclasses/feature_Loyal_Friend_xjZHD5Yo3Tu26rLm.json @@ -33,7 +33,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -46,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267956703, - "modifiedTime": 1754496703770, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391982191, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!xjZHD5Yo3Tu26rLm" } diff --git a/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json b/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json index 9b7372ee..e7f060d5 100644 --- a/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json +++ b/src/packs/subclasses/feature_Loyal_Protector_hd7UeBPr86Mz21Pe.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -40,7 +39,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "sort": 300000, @@ -53,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754244826486, - "modifiedTime": 1754350266486, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391872035, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!hd7UeBPr86Mz21Pe" } diff --git a/src/packs/subclasses/feature_Maestro_ZFkCz8XV1EtMoJ1w.json b/src/packs/subclasses/feature_Maestro_ZFkCz8XV1EtMoJ1w.json index 1dbc1ae6..59b05ae6 100644 --- a/src/packs/subclasses/feature_Maestro_ZFkCz8XV1EtMoJ1w.json +++ b/src/packs/subclasses/feature_Maestro_ZFkCz8XV1EtMoJ1w.json @@ -8,7 +8,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "flags": {}, @@ -16,12 +21,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.c6kz0r85oQ6G7eaZ", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754236475709, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391614339, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json b/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json index df35ffdf..46ac1a9d 100644 --- a/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json +++ b/src/packs/subclasses/feature_Manipulate_Magic_UNg4eyNfEQrMdD7G.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,7 +41,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -55,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349507020, - "modifiedTime": 1754349507020, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392299130, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!UNg4eyNfEQrMdD7G" } diff --git a/src/packs/subclasses/feature_Martial_Preparation_dHgAnbt9m1KsQFmp.json b/src/packs/subclasses/feature_Martial_Preparation_dHgAnbt9m1KsQFmp.json index 49117c74..c754561c 100644 --- a/src/packs/subclasses/feature_Martial_Preparation_dHgAnbt9m1KsQFmp.json +++ b/src/packs/subclasses/feature_Martial_Preparation_dHgAnbt9m1KsQFmp.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256861952, - "modifiedTime": 1754256903587, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392449968, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dHgAnbt9m1KsQFmp" } diff --git a/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json b/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json index fe491267..33804ae4 100644 --- a/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json +++ b/src/packs/subclasses/feature_Natural_Evasion_TnuLBtHQGbqyzn82.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -66,7 +65,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [], "sort": 0, @@ -79,12 +83,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349511084, - "modifiedTime": 1754349511084, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392316643, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!TnuLBtHQGbqyzn82" } diff --git a/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json b/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json index 11d8f0b0..1d8f3b8f 100644 --- a/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json +++ b/src/packs/subclasses/feature_Nemesis_DPKmipNRlSAMs2Cg.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 2, - "keyIsID": false, "step": null } ], @@ -45,7 +44,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -103,12 +107,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754244990457, - "modifiedTime": 1754351671775, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391879536, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!DPKmipNRlSAMs2Cg" } diff --git a/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json b/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json index 6eb53b78..b0b37c6d 100644 --- a/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json +++ b/src/packs/subclasses/feature_Partner_in_Arms_G54qY96XK62hgoK9.json @@ -20,7 +20,6 @@ "scalable": false, "key": "armor", "value": 1, - "keyIsID": false, "step": null } ], @@ -40,7 +39,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "sort": 300000, @@ -53,12 +57,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754242808363, - "modifiedTime": 1754350282699, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391847017, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!G54qY96XK62hgoK9" } diff --git a/src/packs/subclasses/feature_Path_Forward_uPPBOpoulUmSLlzr.json b/src/packs/subclasses/feature_Path_Forward_uPPBOpoulUmSLlzr.json index 1921f2ae..72dc7dd3 100644 --- a/src/packs/subclasses/feature_Path_Forward_uPPBOpoulUmSLlzr.json +++ b/src/packs/subclasses/feature_Path_Forward_uPPBOpoulUmSLlzr.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754267110974, - "modifiedTime": 1754267209120, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391932973, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!uPPBOpoulUmSLlzr" } diff --git a/src/packs/subclasses/feature_Perfect_Recall_HzPa5U0EQhDfFTqW.json b/src/packs/subclasses/feature_Perfect_Recall_HzPa5U0EQhDfFTqW.json index 0b28959b..b1042617 100644 --- a/src/packs/subclasses/feature_Perfect_Recall_HzPa5U0EQhDfFTqW.json +++ b/src/packs/subclasses/feature_Perfect_Recall_HzPa5U0EQhDfFTqW.json @@ -33,7 +33,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -46,12 +51,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254320808, - "modifiedTime": 1754254522728, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392533206, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!HzPa5U0EQhDfFTqW" } diff --git a/src/packs/subclasses/feature_Power_of_the_Gods_Yij5sNyP1Ii7BAbc.json b/src/packs/subclasses/feature_Power_of_the_Gods_Yij5sNyP1Ii7BAbc.json index ef286817..f4d1f648 100644 --- a/src/packs/subclasses/feature_Power_of_the_Gods_Yij5sNyP1Ii7BAbc.json +++ b/src/packs/subclasses/feature_Power_of_the_Gods_Yij5sNyP1Ii7BAbc.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754355875610, - "modifiedTime": 1754355895962, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392237241, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!Yij5sNyP1Ii7BAbc" } diff --git a/src/packs/subclasses/feature_Prepared_YS52ZGdce605wNVT.json b/src/packs/subclasses/feature_Prepared_YS52ZGdce605wNVT.json index fe00e41d..77250a5f 100644 --- a/src/packs/subclasses/feature_Prepared_YS52ZGdce605wNVT.json +++ b/src/packs/subclasses/feature_Prepared_YS52ZGdce605wNVT.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754253648251, - "modifiedTime": 1754253683668, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392490085, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!YS52ZGdce605wNVT" } diff --git a/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json b/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json index 91e8975c..9947cc38 100644 --- a/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json +++ b/src/packs/subclasses/feature_Regeneration_KRyrbSLVGreIOTZe.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hope", "value": 3, - "keyIsID": false, "step": null } ], @@ -84,7 +83,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "sort": 300000, @@ -97,12 +101,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754180232243, - "modifiedTime": 1754353321403, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391703163, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!KRyrbSLVGreIOTZe" } diff --git a/src/packs/subclasses/feature_Regenerative_Reach_oLO3VjGkMcK1uvB9.json b/src/packs/subclasses/feature_Regenerative_Reach_oLO3VjGkMcK1uvB9.json index 9ef8efdf..0ba951b1 100644 --- a/src/packs/subclasses/feature_Regenerative_Reach_oLO3VjGkMcK1uvB9.json +++ b/src/packs/subclasses/feature_Regenerative_Reach_oLO3VjGkMcK1uvB9.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "sort": 200000, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754182966287, - "modifiedTime": 1754236486774, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391738116, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!oLO3VjGkMcK1uvB9" } diff --git a/src/packs/subclasses/feature_Reliable_Backup_QYNGdH37fsGuxS7L.json b/src/packs/subclasses/feature_Reliable_Backup_QYNGdH37fsGuxS7L.json index d3a5254f..66bb65a9 100644 --- a/src/packs/subclasses/feature_Reliable_Backup_QYNGdH37fsGuxS7L.json +++ b/src/packs/subclasses/feature_Reliable_Backup_QYNGdH37fsGuxS7L.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754322198870, - "modifiedTime": 1754322328469, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755392114116, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!QYNGdH37fsGuxS7L" } diff --git a/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json b/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json index 1d0406bd..83113e14 100644 --- a/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json +++ b/src/packs/subclasses/feature_Revenge_oNfA5F9cKwNR7joq.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 2, - "keyIsID": false, "step": null } ], @@ -70,7 +69,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [], "sort": 500000, @@ -83,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754238182847, - "modifiedTime": 1754246061287, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391829666, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!oNfA5F9cKwNR7joq" } diff --git a/src/packs/subclasses/feature_Rise_to_the_Challenge_dcutk8RVOJ2sEkO1.json b/src/packs/subclasses/feature_Rise_to_the_Challenge_dcutk8RVOJ2sEkO1.json index 7e4ef685..c28c0e20 100644 --- a/src/packs/subclasses/feature_Rise_to_the_Challenge_dcutk8RVOJ2sEkO1.json +++ b/src/packs/subclasses/feature_Rise_to_the_Challenge_dcutk8RVOJ2sEkO1.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256466148, - "modifiedTime": 1754256510431, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392416615, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!dcutk8RVOJ2sEkO1" } diff --git a/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json b/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json index 312e055b..a2708a8c 100644 --- a/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json +++ b/src/packs/subclasses/feature_Rousing_Speech_PCmYTX02JLzBpgml.json @@ -19,7 +19,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -85,7 +84,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "flags": {}, @@ -93,12 +97,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.iLytX899psvrPRnG", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754494763682, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391592956, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json b/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json index ac907b99..f53d7b4a 100644 --- a/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json +++ b/src/packs/subclasses/feature_Ruthless_Predator_Qny2J3R35bvC0Cey.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -36,16 +35,21 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Stress", "img": "icons/creatures/mammals/wolf-shadow-black.webp", - "range": "" + "range": "self" } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + } }, "effects": [ { @@ -110,12 +114,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754266926055, - "modifiedTime": 1754267089385, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1756035422344, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!Qny2J3R35bvC0Cey" } diff --git a/src/packs/subclasses/feature_Sacred_Resonance_DxOAkDBfIMpXxAUD.json b/src/packs/subclasses/feature_Sacred_Resonance_DxOAkDBfIMpXxAUD.json index a610db7e..0ebbecc2 100644 --- a/src/packs/subclasses/feature_Sacred_Resonance_DxOAkDBfIMpXxAUD.json +++ b/src/packs/subclasses/feature_Sacred_Resonance_DxOAkDBfIMpXxAUD.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754353916777, - "modifiedTime": 1754354052548, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392223655, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!DxOAkDBfIMpXxAUD" } diff --git a/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json b/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json index 77e3504d..fe624444 100644 --- a/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json +++ b/src/packs/subclasses/feature_Shadow_Stepper_hAwTXjhyphiE3aeW.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -36,16 +35,21 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Stress", "img": "icons/magic/unholy/projectile-smoke-trail-pink.webp", - "range": "" + "range": "far" } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { @@ -103,12 +107,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754318976447, - "modifiedTime": 1754323456453, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1756035450401, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!hAwTXjhyphiE3aeW" } diff --git a/src/packs/subclasses/feature_Slayer_1hF5KGKQc2VKT5O8.json b/src/packs/subclasses/feature_Slayer_1hF5KGKQc2VKT5O8.json index ef813ae1..ce038aef 100644 --- a/src/packs/subclasses/feature_Slayer_1hF5KGKQc2VKT5O8.json +++ b/src/packs/subclasses/feature_Slayer_1hF5KGKQc2VKT5O8.json @@ -14,7 +14,12 @@ }, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -27,12 +32,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256326320, - "modifiedTime": 1754256425506, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392403783, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1hF5KGKQc2VKT5O8" } diff --git a/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json b/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json index cf0a8f93..6b1bc11a 100644 --- a/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json +++ b/src/packs/subclasses/feature_Sparing_Touch_GfOSgVJW8bS1OjNq.json @@ -24,10 +24,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "GfOSgVJW8bS1OjNq", + "key": "resource", + "itemId": "GfOSgVJW8bS1OjNq", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -101,10 +101,10 @@ "actionType": "action", "cost": [ { - "scalable": false, - "key": "GfOSgVJW8bS1OjNq", + "key": "resource", + "itemId": "GfOSgVJW8bS1OjNq", "value": 1, - "keyIsID": true, + "scalable": false, "step": null, "consumeOnSuccess": false } @@ -171,7 +171,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -184,12 +189,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.2.0", "createdTime": 1754353243691, - "modifiedTime": 1754500973073, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1756325575182, + "lastModifiedBy": "bjJtdJOhqWr47GhC" }, "_key": "!items!GfOSgVJW8bS1OjNq" } diff --git a/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json b/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json index ca08ad1f..d7b2c877 100644 --- a/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json +++ b/src/packs/subclasses/feature_Spirit_Weapon_McoS0RxNLOg3SfSt.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,7 +41,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [], "sort": 0, @@ -55,12 +59,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754353023665, - "modifiedTime": 1754353132278, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392178319, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!McoS0RxNLOg3SfSt" } diff --git a/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json b/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json index 9563a324..953802de 100644 --- a/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json +++ b/src/packs/subclasses/feature_Thrive_in_Chaos_1nmFmkNXY6OYyyju.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -46,7 +45,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 26, + "artist": "" + } }, "effects": [], "sort": 0, @@ -59,12 +63,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754254574860, - "modifiedTime": 1754254657593, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392589991, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!1nmFmkNXY6OYyyju" } diff --git a/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json b/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json index cf2c658d..da7da282 100644 --- a/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json +++ b/src/packs/subclasses/feature_Transcendence_th6HZwEFnVBjUtqm.json @@ -20,7 +20,6 @@ "scalable": false, "key": "hitPoints", "value": 1, - "keyIsID": false, "step": null, "consumeOnSuccess": false } @@ -42,7 +41,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + } }, "effects": [ { @@ -238,12 +242,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754349515898, - "modifiedTime": 1754497438787, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392338476, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!th6HZwEFnVBjUtqm" } diff --git a/src/packs/subclasses/feature_Undaunted_866b2jjyzXP8nPRQ.json b/src/packs/subclasses/feature_Undaunted_866b2jjyzXP8nPRQ.json index 48feb948..16bcf7d9 100644 --- a/src/packs/subclasses/feature_Undaunted_866b2jjyzXP8nPRQ.json +++ b/src/packs/subclasses/feature_Undaunted_866b2jjyzXP8nPRQ.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754243538688, - "modifiedTime": 1754244861863, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391864452, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!866b2jjyzXP8nPRQ" } diff --git a/src/packs/subclasses/feature_Unrelenting_4qP7bNyxVHBmr4Rb.json b/src/packs/subclasses/feature_Unrelenting_4qP7bNyxVHBmr4Rb.json index 14420491..da75c64e 100644 --- a/src/packs/subclasses/feature_Unrelenting_4qP7bNyxVHBmr4Rb.json +++ b/src/packs/subclasses/feature_Unrelenting_4qP7bNyxVHBmr4Rb.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754242120515, - "modifiedTime": 1754242888502, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391840785, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!4qP7bNyxVHBmr4Rb" } diff --git a/src/packs/subclasses/feature_Unwavering_WBiFZaYNoQNhysmN.json b/src/packs/subclasses/feature_Unwavering_WBiFZaYNoQNhysmN.json index 0675d2c3..5a9f6cf6 100644 --- a/src/packs/subclasses/feature_Unwavering_WBiFZaYNoQNhysmN.json +++ b/src/packs/subclasses/feature_Unwavering_WBiFZaYNoQNhysmN.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + } }, "effects": [ { @@ -80,12 +85,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754236984012, - "modifiedTime": 1754245935236, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391809567, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!WBiFZaYNoQNhysmN" } diff --git a/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json b/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json index 5eda8565..c8065dbb 100644 --- a/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json +++ b/src/packs/subclasses/feature_Vanishing_Act_iyIg1VLwO8C6jvFZ.json @@ -20,7 +20,6 @@ "scalable": false, "key": "stress", "value": 1, - "keyIsID": false, "step": null } ], @@ -36,23 +35,28 @@ } ], "target": { - "type": "any", + "type": "self", "amount": null }, "name": "Mark Stress", "img": "icons/magic/unholy/strike-hand-glow-pink.webp", - "range": "" + "range": "self" } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + } }, "effects": [ { "name": "Vanishing Act: Cloaked", "img": "icons/magic/unholy/strike-hand-glow-pink.webp", "origin": "Compendium.daggerheart.subclasses.Item.iyIg1VLwO8C6jvFZ", - "transfer": true, + "transfer": false, "_id": "czrwqq44sEr0uJ8O", "type": "base", "system": { @@ -83,12 +87,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", "systemVersion": "0.0.1", "createdTime": 1754322584884, - "modifiedTime": 1754352062188, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1756035920880, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items.effects!iyIg1VLwO8C6jvFZ.czrwqq44sEr0uJ8O" } @@ -103,12 +107,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.1.0", "createdTime": 1754321406972, - "modifiedTime": 1754322584899, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1756035929726, + "lastModifiedBy": "vUIbuan0U50nfKBE" }, "_key": "!items!iyIg1VLwO8C6jvFZ" } diff --git a/src/packs/subclasses/feature_Virtuoso_kn2t409o0FDFQieo.json b/src/packs/subclasses/feature_Virtuoso_kn2t409o0FDFQieo.json index 1f7c6eec..26f00fb3 100644 --- a/src/packs/subclasses/feature_Virtuoso_kn2t409o0FDFQieo.json +++ b/src/packs/subclasses/feature_Virtuoso_kn2t409o0FDFQieo.json @@ -8,7 +8,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + } }, "effects": [], "flags": {}, @@ -16,12 +21,12 @@ "compendiumSource": "Compendium.daggerheart.subclasses.Item.lmUplK4FSH6EOTKJ", "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754174646194, - "modifiedTime": 1754236506280, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755391637042, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "ownership": { "default": 0, diff --git a/src/packs/subclasses/feature_Warden_s_Protection_2F1bUFY80oce97C9.json b/src/packs/subclasses/feature_Warden_s_Protection_2F1bUFY80oce97C9.json index 3d6055d2..49fa4398 100644 --- a/src/packs/subclasses/feature_Warden_s_Protection_2F1bUFY80oce97C9.json +++ b/src/packs/subclasses/feature_Warden_s_Protection_2F1bUFY80oce97C9.json @@ -78,7 +78,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + } }, "effects": [], "sort": 300000, @@ -91,12 +96,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754183079986, - "modifiedTime": 1754496541966, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755391744012, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!2F1bUFY80oce97C9" } diff --git a/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json b/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json index a4937457..4773af61 100644 --- a/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json +++ b/src/packs/subclasses/feature_Weapon_Specialist_HAqtoKUTrk8Mip1n.json @@ -17,7 +17,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -65,7 +64,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + } }, "effects": [], "sort": 0, @@ -78,12 +82,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754256525016, - "modifiedTime": 1754256712476, - "lastModifiedBy": "MQSznptE5yLT7kj8" + "modifiedTime": 1755392424300, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!HAqtoKUTrk8Mip1n" } diff --git a/src/packs/subclasses/feature_Well_Connected_7KnSOazixXXSnspj.json b/src/packs/subclasses/feature_Well_Connected_7KnSOazixXXSnspj.json index 474dbb8a..77edd828 100644 --- a/src/packs/subclasses/feature_Well_Connected_7KnSOazixXXSnspj.json +++ b/src/packs/subclasses/feature_Well_Connected_7KnSOazixXXSnspj.json @@ -9,7 +9,12 @@ "resource": null, "actions": {}, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + } }, "effects": [], "sort": 0, @@ -22,12 +27,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754319141863, - "modifiedTime": 1754319354348, - "lastModifiedBy": "LgnbNMLaxandgMQq" + "modifiedTime": 1755392041962, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!7KnSOazixXXSnspj" } diff --git a/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json b/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json index 034ea026..c46a1ecf 100644 --- a/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json +++ b/src/packs/subclasses/feature_Wings_of_Light_KkQH0tYhagIqe2MT.json @@ -40,7 +40,6 @@ "actionType": "action", "cost": [ { - "keyIsID": false, "key": "hope", "value": 1, "scalable": false, @@ -70,7 +69,12 @@ } }, "originItemType": null, - "originId": null + "originId": null, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + } }, "effects": [ { @@ -141,12 +145,12 @@ "compendiumSource": null, "duplicateSource": null, "exportSource": null, - "coreVersion": "13.346", + "coreVersion": "13.347", "systemId": "daggerheart", - "systemVersion": "0.0.1", + "systemVersion": "1.0.5", "createdTime": 1754354510934, - "modifiedTime": 1754355070373, - "lastModifiedBy": "Q9NoTaEarn3VMS6Z" + "modifiedTime": 1755392171336, + "lastModifiedBy": "VZIeX2YDvX338Zvr" }, "_key": "!items!KkQH0tYhagIqe2MT" } diff --git a/src/packs/subclasses/subclass_Beastbound_TIUsIlTS1WkK5vr2.json b/src/packs/subclasses/subclass_Beastbound_TIUsIlTS1WkK5vr2.json index 622fb36a..fcfc2cc8 100644 --- a/src/packs/subclasses/subclass_Beastbound_TIUsIlTS1WkK5vr2.json +++ b/src/packs/subclasses/subclass_Beastbound_TIUsIlTS1WkK5vr2.json @@ -31,6 +31,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.BTyfve69LKqoOi9S" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Call_Of_The_Brave_NAFU9roaVG7f3RNJ.json b/src/packs/subclasses/subclass_Call_Of_The_Brave_NAFU9roaVG7f3RNJ.json index 46f7f2af..0ce7cd36 100644 --- a/src/packs/subclasses/subclass_Call_Of_The_Brave_NAFU9roaVG7f3RNJ.json +++ b/src/packs/subclasses/subclass_Call_Of_The_Brave_NAFU9roaVG7f3RNJ.json @@ -27,6 +27,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.xCUWwJz4WSthvLfy" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Call_Of_The_Slayer_bcNe5qP3o6CKadhK.json b/src/packs/subclasses/subclass_Call_Of_The_Slayer_bcNe5qP3o6CKadhK.json index bbcf6ca6..f14668b2 100644 --- a/src/packs/subclasses/subclass_Call_Of_The_Slayer_bcNe5qP3o6CKadhK.json +++ b/src/packs/subclasses/subclass_Call_Of_The_Slayer_bcNe5qP3o6CKadhK.json @@ -23,6 +23,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 24, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.xCUWwJz4WSthvLfy" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Divine_Wielder_M5mpGoAj8LRkylrY.json b/src/packs/subclasses/subclass_Divine_Wielder_M5mpGoAj8LRkylrY.json index 9a7b9c96..9ae4872c 100644 --- a/src/packs/subclasses/subclass_Divine_Wielder_M5mpGoAj8LRkylrY.json +++ b/src/packs/subclasses/subclass_Divine_Wielder_M5mpGoAj8LRkylrY.json @@ -27,6 +27,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.5ZnlJ5bEoyOTkUJv" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Elemental_Origin_wg1H0hROc2acHwZh.json b/src/packs/subclasses/subclass_Elemental_Origin_wg1H0hROc2acHwZh.json index f1f85e42..ac00d7ad 100644 --- a/src/packs/subclasses/subclass_Elemental_Origin_wg1H0hROc2acHwZh.json +++ b/src/packs/subclasses/subclass_Elemental_Origin_wg1H0hROc2acHwZh.json @@ -23,6 +23,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.DchOzHcWIJE9FKcR" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Nightwalker_h161OSIK24Up4qNd.json b/src/packs/subclasses/subclass_Nightwalker_h161OSIK24Up4qNd.json index 49f9a520..cf2ff2d5 100644 --- a/src/packs/subclasses/subclass_Nightwalker_h161OSIK24Up4qNd.json +++ b/src/packs/subclasses/subclass_Nightwalker_h161OSIK24Up4qNd.json @@ -31,6 +31,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 19, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.CvHlkHZfpMiCz5uT" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Primal_Origin_GLpRVxnY5E82khxH.json b/src/packs/subclasses/subclass_Primal_Origin_GLpRVxnY5E82khxH.json index 37619136..b7bb2dc6 100644 --- a/src/packs/subclasses/subclass_Primal_Origin_GLpRVxnY5E82khxH.json +++ b/src/packs/subclasses/subclass_Primal_Origin_GLpRVxnY5E82khxH.json @@ -23,6 +23,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 22, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.DchOzHcWIJE9FKcR" }, "effects": [], diff --git a/src/packs/subclasses/subclass_School_Of_Knowledge_qqQlgCqhOivUFoQn.json b/src/packs/subclasses/subclass_School_Of_Knowledge_qqQlgCqhOivUFoQn.json index 7ed07d06..eb21a9b2 100644 --- a/src/packs/subclasses/subclass_School_Of_Knowledge_qqQlgCqhOivUFoQn.json +++ b/src/packs/subclasses/subclass_School_Of_Knowledge_qqQlgCqhOivUFoQn.json @@ -35,6 +35,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.5LwX4m8ziY3F1ZGC" }, "effects": [], diff --git a/src/packs/subclasses/subclass_School_Of_War_4y9Ph7RsCIAbkwTk.json b/src/packs/subclasses/subclass_School_Of_War_4y9Ph7RsCIAbkwTk.json index 856031d8..18468eee 100644 --- a/src/packs/subclasses/subclass_School_Of_War_4y9Ph7RsCIAbkwTk.json +++ b/src/packs/subclasses/subclass_School_Of_War_4y9Ph7RsCIAbkwTk.json @@ -35,6 +35,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 25, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.5LwX4m8ziY3F1ZGC" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Stalwart_rKRxFBlkbh9cDK8K.json b/src/packs/subclasses/subclass_Stalwart_rKRxFBlkbh9cDK8K.json index b75f88d0..af30bf9c 100644 --- a/src/packs/subclasses/subclass_Stalwart_rKRxFBlkbh9cDK8K.json +++ b/src/packs/subclasses/subclass_Stalwart_rKRxFBlkbh9cDK8K.json @@ -35,6 +35,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.nRAyoC0fOzXPDa4z" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Syndicate_95QxNZwgyEm1LqdG.json b/src/packs/subclasses/subclass_Syndicate_95QxNZwgyEm1LqdG.json index 2cef9bbd..4318cf68 100644 --- a/src/packs/subclasses/subclass_Syndicate_95QxNZwgyEm1LqdG.json +++ b/src/packs/subclasses/subclass_Syndicate_95QxNZwgyEm1LqdG.json @@ -23,6 +23,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 20, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.CvHlkHZfpMiCz5uT" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Troubadour_ld8MIvk0xVJydSBz.json b/src/packs/subclasses/subclass_Troubadour_ld8MIvk0xVJydSBz.json index eb51d60e..d3ff41ce 100644 --- a/src/packs/subclasses/subclass_Troubadour_ld8MIvk0xVJydSBz.json +++ b/src/packs/subclasses/subclass_Troubadour_ld8MIvk0xVJydSBz.json @@ -22,6 +22,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.vegl3bFOq3pcFTWT" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Vengeance_SUo8NPBPO8aN193u.json b/src/packs/subclasses/subclass_Vengeance_SUo8NPBPO8aN193u.json index fedf5f1a..d8bf2b7f 100644 --- a/src/packs/subclasses/subclass_Vengeance_SUo8NPBPO8aN193u.json +++ b/src/packs/subclasses/subclass_Vengeance_SUo8NPBPO8aN193u.json @@ -27,6 +27,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 16, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.nRAyoC0fOzXPDa4z" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Warden_of_Renewal_xp0XMjYT85Q7E90o.json b/src/packs/subclasses/subclass_Warden_of_Renewal_xp0XMjYT85Q7E90o.json index abe97d5e..07606cc9 100644 --- a/src/packs/subclasses/subclass_Warden_of_Renewal_xp0XMjYT85Q7E90o.json +++ b/src/packs/subclasses/subclass_Warden_of_Renewal_xp0XMjYT85Q7E90o.json @@ -30,6 +30,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.ZNwUTCyGCEcidZFv" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Warden_of_the_Elements_W9hs5kxOWeY7eA4Q.json b/src/packs/subclasses/subclass_Warden_of_the_Elements_W9hs5kxOWeY7eA4Q.json index 43642e89..40e39611 100644 --- a/src/packs/subclasses/subclass_Warden_of_the_Elements_W9hs5kxOWeY7eA4Q.json +++ b/src/packs/subclasses/subclass_Warden_of_the_Elements_W9hs5kxOWeY7eA4Q.json @@ -22,6 +22,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 11, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.ZNwUTCyGCEcidZFv" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Wayfinder_zsUglcU4NgZ8tNgZ.json b/src/packs/subclasses/subclass_Wayfinder_zsUglcU4NgZ8tNgZ.json index a308d587..c8261fb8 100644 --- a/src/packs/subclasses/subclass_Wayfinder_zsUglcU4NgZ8tNgZ.json +++ b/src/packs/subclasses/subclass_Wayfinder_zsUglcU4NgZ8tNgZ.json @@ -27,6 +27,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 17, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.BTyfve69LKqoOi9S" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Winged_Sentinel_y7ERWRIpJsdP9Re4.json b/src/packs/subclasses/subclass_Winged_Sentinel_y7ERWRIpJsdP9Re4.json index f71a1fcb..e6089c6f 100644 --- a/src/packs/subclasses/subclass_Winged_Sentinel_y7ERWRIpJsdP9Re4.json +++ b/src/packs/subclasses/subclass_Winged_Sentinel_y7ERWRIpJsdP9Re4.json @@ -27,6 +27,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 21, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.5ZnlJ5bEoyOTkUJv" }, "effects": [], diff --git a/src/packs/subclasses/subclass_Wordsmith_XTSODVM8st75Os8M.json b/src/packs/subclasses/subclass_Wordsmith_XTSODVM8st75Os8M.json index 6c975ca6..8fdc305c 100644 --- a/src/packs/subclasses/subclass_Wordsmith_XTSODVM8st75Os8M.json +++ b/src/packs/subclasses/subclass_Wordsmith_XTSODVM8st75Os8M.json @@ -26,6 +26,11 @@ ], "featureState": 1, "isMulticlass": false, + "attribution": { + "source": "Daggerheart SRD", + "page": 9, + "artist": "" + }, "linkedClass": "Compendium.daggerheart.classes.Item.vegl3bFOq3pcFTWT" }, "effects": [], From ff79dd19bf34b2c6a47894a7c09c3a3ab6037520 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Wed, 29 Oct 2025 18:56:37 +0100 Subject: [PATCH 083/260] [Feature] 946 - Damage/Effect ChatMessages (#1089) * Initial damage message * Added hover functionality to adversary damage cards * Added effect message * enhance chat messages styles * . * Fixed promise lockup * . * Fixed token path for message --------- Co-authored-by: moliloo --- lang/en.json | 13 ++ module/data/chat-message/_modules.mjs | 4 +- module/data/chat-message/systemMessage.mjs | 9 + module/data/fields/action/damageField.mjs | 43 ++++- module/data/fields/action/effectsField.mjs | 41 ++++- module/data/settings/Automation.mjs | 4 + module/documents/actor.mjs | 4 + module/documents/chatMessage.mjs | 6 + module/helpers/handlebarsHelper.mjs | 7 +- module/systemRegistration/handlebars.mjs | 1 - styles/less/ui/chat/damage-summary.less | 87 +++++++++ styles/less/ui/chat/effect-summary.less | 166 ++++++++++++++++++ styles/less/ui/index.less | 2 + system.json | 3 +- .../settings/automation-settings/general.hbs | 6 +- templates/ui/chat/damageSummary.hbs | 33 ++++ templates/ui/chat/effectSummary.hbs | 33 ++++ 17 files changed, 450 insertions(+), 12 deletions(-) create mode 100644 module/data/chat-message/systemMessage.mjs create mode 100644 styles/less/ui/chat/damage-summary.less create mode 100644 styles/less/ui/chat/effect-summary.less create mode 100644 templates/ui/chat/damageSummary.hbs create mode 100644 templates/ui/chat/effectSummary.hbs diff --git a/lang/en.json b/lang/en.json index c21c1d5b..f4e70966 100755 --- a/lang/en.json +++ b/lang/en.json @@ -2307,6 +2307,9 @@ "label": "Apply Effects", "hint": "Automatically apply effects. Targets must be selected before the action is made and Reaction Roll Automation must be different than Never. Bypass users permissions." } + }, + "summaryMessages": { + "label": "Summary Messages" } }, "defeated": { @@ -2428,6 +2431,7 @@ "action": { "title": "Action" }, + "appliedTo": "Applied To", "applyEffect": { "title": "Apply Effects - {name}" }, @@ -2437,6 +2441,11 @@ "rollHealing": "Roll Healing", "applyEffect": "Apply Effects" }, + "clearResource": "Clear {quantity} {resource}", + "damageSummary": { + "title": "Damage Applied", + "healingTitle": "Healing Applied" + }, "damageRoll": { "title": "Damage - {damage}", "dealDamageToTargets": "Damage Hit Targets", @@ -2458,12 +2467,16 @@ "dualityRoll": { "abilityCheckTitle": "{ability} Check" }, + "effectSummary": { + "title": "Effects Applied" + }, "featureTitle": "Class Feature", "healingRoll": { "title": "Heal - {damage}", "heal": "Heal", "applyHealing": "Apply Healing" }, + "markResource": "Mark {quantity} {resource}", "refreshMessage": { "title": "Feature Refresh", "header": "Refreshed" diff --git a/module/data/chat-message/_modules.mjs b/module/data/chat-message/_modules.mjs index 7e301906..67046248 100644 --- a/module/data/chat-message/_modules.mjs +++ b/module/data/chat-message/_modules.mjs @@ -1,9 +1,11 @@ import DHAbilityUse from './abilityUse.mjs'; import DHActorRoll from './actorRoll.mjs'; +import DHSystemMessage from './systemMessage.mjs'; export const config = { abilityUse: DHAbilityUse, adversaryRoll: DHActorRoll, damageRoll: DHActorRoll, - dualityRoll: DHActorRoll + dualityRoll: DHActorRoll, + systemMessage: DHSystemMessage }; diff --git a/module/data/chat-message/systemMessage.mjs b/module/data/chat-message/systemMessage.mjs new file mode 100644 index 00000000..cd2a06a1 --- /dev/null +++ b/module/data/chat-message/systemMessage.mjs @@ -0,0 +1,9 @@ +export default class DHSystemMessage extends foundry.abstract.TypeDataModel { + static defineSchema() { + const fields = foundry.data.fields; + + return { + useTitle: new fields.BooleanField({ initial: true }) + }; + } +} diff --git a/module/data/fields/action/damageField.mjs b/module/data/fields/action/damageField.mjs index 26d720c0..43623c94 100644 --- a/module/data/fields/action/damageField.mjs +++ b/module/data/fields/action/damageField.mjs @@ -81,6 +81,9 @@ export default class DamageField extends fields.SchemaField { static async applyDamage(config, targets = null, force = false) { targets ??= config.targets.filter(target => target.hit); if (!config.damage || !targets?.length || (!DamageField.getApplyAutomation() && !force)) return; + + const targetDamage = []; + const damagePromises = []; for (let target of targets) { const actor = fromUuidSync(target.actorId); if (!actor) continue; @@ -95,9 +98,45 @@ export default class DamageField extends fields.SchemaField { }); } - if (config.hasHealing) actor.takeHealing(config.damage); - else actor.takeDamage(config.damage, config.isDirect); + if (config.hasHealing) + damagePromises.push( + actor + .takeHealing(config.damage) + .then(updates => targetDamage.push({ token: actor.token ?? actor.prototypeToken, updates })) + ); + else + damagePromises.push( + actor + .takeDamage(config.damage, config.isDirect) + .then(updates => targetDamage.push({ token: actor.token ?? actor.prototypeToken, updates })) + ); } + + Promise.all(damagePromises).then(async _ => { + const summaryMessageSettings = game.settings.get( + CONFIG.DH.id, + CONFIG.DH.SETTINGS.gameSettings.Automation + ).summaryMessages; + if (!summaryMessageSettings.damage) return; + + const cls = getDocumentClass('ChatMessage'); + const msg = { + type: 'systemMessage', + user: game.user.id, + speaker: cls.getSpeaker(), + title: game.i18n.localize( + `DAGGERHEART.UI.Chat.damageSummary.${config.hasHealing ? 'healingTitle' : 'title'}` + ), + content: await foundry.applications.handlebars.renderTemplate( + 'systems/daggerheart/templates/ui/chat/damageSummary.hbs', + { + targets: targetDamage + } + ) + }; + + cls.create(msg); + }); } /** diff --git a/module/data/fields/action/effectsField.mjs b/module/data/fields/action/effectsField.mjs index 0f205d72..887607ba 100644 --- a/module/data/fields/action/effectsField.mjs +++ b/module/data/fields/action/effectsField.mjs @@ -46,17 +46,48 @@ export default class EffectsField extends fields.ArrayField { */ static async applyEffects(targets) { if (!this.effects?.length || !targets?.length) return; + let effects = this.effects; - targets.forEach(async token => { + const messageTargets = []; + targets.forEach(async baseToken => { if (this.hasSave && token.saved.success === true) effects = this.effects.filter(e => e.onSave === true); if (!effects.length) return; + + const token = canvas.tokens.get(baseToken.id); + if (!token) return; + messageTargets.push(token.document); + effects.forEach(async e => { - const actor = canvas.tokens.get(token.id)?.actor, - effect = this.item.effects.get(e._id); - if (!actor || !effect) return; - await EffectsField.applyEffect(effect, actor); + const effect = this.item.effects.get(e._id); + if (!token.actor || !effect) return; + await EffectsField.applyEffect(effect, token.actor); }); }); + + if (messageTargets.length === 0) return; + + const summaryMessageSettings = game.settings.get( + CONFIG.DH.id, + CONFIG.DH.SETTINGS.gameSettings.Automation + ).summaryMessages; + if (!summaryMessageSettings.effects) return; + + const cls = getDocumentClass('ChatMessage'); + const msg = { + type: 'systemMessage', + user: game.user.id, + speaker: cls.getSpeaker(), + title: game.i18n.localize('DAGGERHEART.UI.Chat.effectSummary.title'), + content: await foundry.applications.handlebars.renderTemplate( + 'systems/daggerheart/templates/ui/chat/effectSummary.hbs', + { + effects: this.effects.map(e => this.item.effects.get(e._id)), + targets: messageTargets + } + ) + }; + + cls.create(msg); } /** diff --git a/module/data/settings/Automation.mjs b/module/data/settings/Automation.mjs index beefac0b..c54a1c31 100644 --- a/module/data/settings/Automation.mjs +++ b/module/data/settings/Automation.mjs @@ -2,6 +2,10 @@ export default class DhAutomation extends foundry.abstract.DataModel { static defineSchema() { const fields = foundry.data.fields; return { + summaryMessages: new fields.SchemaField({ + damage: new fields.BooleanField({ initial: true, label: 'DAGGERHEART.GENERAL.damage' }), + effects: new fields.BooleanField({ initial: true, label: 'DAGGERHEART.GENERAL.Effect.plural' }) + }), hopeFear: new fields.SchemaField({ gm: new fields.BooleanField({ required: true, diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index 3601e09d..a4c1ade8 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -599,6 +599,8 @@ export default class DhpActor extends Actor { await this.modifyResource(updates); if (Hooks.call(`${CONFIG.DH.id}.postTakeDamage`, this, updates) === false) return null; + + return updates; } calculateDamage(baseDamage, type) { @@ -647,6 +649,8 @@ export default class DhpActor extends Actor { await this.modifyResource(updates); if (Hooks.call(`${CONFIG.DH.id}.postTakeHealing`, this, updates) === false) return null; + + return updates; } async modifyResource(resources) { diff --git a/module/documents/chatMessage.mjs b/module/documents/chatMessage.mjs index d7476395..bb535c6d 100644 --- a/module/documents/chatMessage.mjs +++ b/module/documents/chatMessage.mjs @@ -143,6 +143,12 @@ export default class DhpChatMessage extends foundry.documents.ChatMessage { html.querySelectorAll('.button-target-selection').forEach(element => { element.addEventListener('click', this.onTargetSelection.bind(this)); }); + + html.querySelectorAll('.token-target-container').forEach(element => { + element.addEventListener('pointerover', this.hoverTarget); + element.addEventListener('pointerout', this.unhoverTarget); + element.addEventListener('click', this.clickTarget); + }); } async onRollDamage(event) { diff --git a/module/helpers/handlebarsHelper.mjs b/module/helpers/handlebarsHelper.mjs index e6c1a2f0..847b04ce 100644 --- a/module/helpers/handlebarsHelper.mjs +++ b/module/helpers/handlebarsHelper.mjs @@ -14,7 +14,8 @@ export default class RegisterHandlebarsHelpers { getProperty: foundry.utils.getProperty, setVar: this.setVar, empty: this.empty, - pluralize: this.pluralize + pluralize: this.pluralize, + positive: this.positive }); } static add(a, b) { @@ -89,4 +90,8 @@ export default class RegisterHandlebarsHelpers { const key = isSingular ? `${baseKey}.single` : `${baseKey}.plural`; return game.i18n.localize(key); } + + static positive(a) { + return Math.abs(Number(a)); + } } diff --git a/module/systemRegistration/handlebars.mjs b/module/systemRegistration/handlebars.mjs index 24047827..dd19e429 100644 --- a/module/systemRegistration/handlebars.mjs +++ b/module/systemRegistration/handlebars.mjs @@ -29,7 +29,6 @@ export const preloadHandlebarsTemplates = async function () { 'systems/daggerheart/templates/ui/tooltip/parts/tooltipTags.hbs', 'systems/daggerheart/templates/dialogs/downtime/activities.hbs', 'systems/daggerheart/templates/dialogs/dice-roll/costSelection.hbs', - 'systems/daggerheart/templates/ui/chat/parts/roll-part.hbs', 'systems/daggerheart/templates/ui/chat/parts/damage-part.hbs', 'systems/daggerheart/templates/ui/chat/parts/target-part.hbs', diff --git a/styles/less/ui/chat/damage-summary.less b/styles/less/ui/chat/damage-summary.less new file mode 100644 index 00000000..02fdbadf --- /dev/null +++ b/styles/less/ui/chat/damage-summary.less @@ -0,0 +1,87 @@ +@import '../../utils/colors.less'; + +#interface.theme-light { + .daggerheart.chat.damage-summary .token-target-container { + &:hover { + background: @dark-blue-10; + } + + header { + .actor-name { + color: @dark; + } + + &::after { + background: @dark-blue; + } + } + } +} + +.daggerheart.chat.damage-summary { + display: flex; + flex-direction: column; + gap: 5px; + padding: 0; + + .token-target-container { + display: flex; + flex-direction: column; + gap: 2px; + cursor: pointer; + transition: all 0.3s ease; + border-radius: 6px; + + &:hover { + background: @golden-10; + } + + header { + display: flex; + align-items: center; + gap: 5px; + pointer-events: none; + position: relative; + margin-bottom: 10px; + + img { + width: 40px; + height: 40px; + padding: 0; + border-radius: 50%; + } + + .actor-name { + margin: 0; + color: @beige; + font-size: var(--font-size-20); + padding: 8px; + } + + &::after { + content: ''; + position: absolute; + bottom: -10px; + background: @golden; + mask-image: linear-gradient(270deg, transparent 0%, black 50%, transparent 100%); + height: 2px; + width: 100%; + } + } + + .damage-container { + display: flex; + flex-direction: column; + justify-content: center; + gap: 5px; + pointer-events: none; + margin-top: 5px; + list-style: disc; + + .damage-row { + padding: 0 2px; + gap: 4px; + } + } + } +} diff --git a/styles/less/ui/chat/effect-summary.less b/styles/less/ui/chat/effect-summary.less new file mode 100644 index 00000000..9bea1fd9 --- /dev/null +++ b/styles/less/ui/chat/effect-summary.less @@ -0,0 +1,166 @@ +@import '../../utils/colors.less'; + +#interface.theme-light { + .daggerheart.chat.effect-summary { + .effect-header, + .actor-header { + &::before, + &::after { + height: 2px; + background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, @dark-blue 100%); + } + + &::after { + background: linear-gradient(90deg, @dark-blue 0%, rgba(0, 0, 0, 0) 100%); + } + + span { + color: @dark; + } + } + + .token-target-container, + .effect-target-container { + .effect-label .title, + .title { + color: @dark-blue; + } + + .effect-label { + border-color: @dark-blue; + } + + &:hover { + background: @dark-blue-10; + } + } + } +} + +.daggerheart.chat.effect-summary { + display: flex; + flex-direction: column; + + .effect-header, + .actor-header { + display: flex; + align-items: center; + justify-content: center; + margin-bottom: 5px; + + &::before, + &::after { + content: ''; + flex: 1; + height: 2px; + background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, @golden 100%); + } + + &::after { + background: linear-gradient(90deg, @golden 0%, rgba(0, 0, 0, 0) 100%); + } + + span { + color: @beige; + padding: 0 10px; + white-space: nowrap; + } + } + + .effects-container { + display: flex; + flex-wrap: wrap; + gap: 5px; + margin-bottom: 8px; + } + + .targets-container { + display: flex; + flex-direction: column; + gap: 5px; + } + + .token-target-container { + display: flex; + align-items: center; + gap: 13px; + border-radius: 6px; + padding: 0 2px; + border-radius: 6px; + background: transparent; + transition: all 0.3s ease; + padding: 5px; + cursor: pointer; + transition: all 0.3s ease; + + &:hover { + background: @golden-10; + } + + img { + width: 40px; + height: 40px; + border-radius: 50%; + pointer-events: none; + } + + .title { + font-size: var(--font-size-20); + color: @golden; + font-weight: 700; + margin: 0; + pointer-events: none; + } + } + + details[open] { + .fa-chevron-down { + transform: rotate(180deg); + transition: all 0.3s ease; + } + } + + .effect-target-container { + width: 100%; + transition: all 0.3s ease; + cursor: pointer; + + &:hover { + background: @golden-10; + } + + .fa-chevron-down { + transition: all 0.3s ease; + margin-left: auto; + } + + .effect-label { + display: flex; + flex-direction: row; + align-items: center; + margin: 8px 8px 0; + padding-bottom: 5px; + width: -webkit-fill-available; + gap: 13px; + border-bottom: 1px solid @golden; + + .effect-img { + width: 40px; + height: 40px; + border-radius: 3px; + object-fit: cover; + } + + .title { + font-size: var(--font-size-20); + color: @golden; + font-weight: 700; + margin: 0; + } + } + + .description { + padding: 8px; + } + } +} diff --git a/styles/less/ui/index.less b/styles/less/ui/index.less index 0a89afc3..296ef325 100644 --- a/styles/less/ui/index.less +++ b/styles/less/ui/index.less @@ -1,7 +1,9 @@ @import './chat/ability-use.less'; @import './chat/action.less'; @import './chat/chat.less'; +@import './chat/damage-summary.less'; @import './chat/downtime.less'; +@import './chat/effect-summary.less'; @import './chat/refresh-message.less'; @import './chat/sheet.less'; diff --git a/system.json b/system.json index 4eeeff1a..2caeca2b 100644 --- a/system.json +++ b/system.json @@ -266,7 +266,8 @@ "dualityRoll": {}, "adversaryRoll": {}, "damageRoll": {}, - "abilityUse": {} + "abilityUse": {}, + "systemMessage": {} } }, "background": "systems/daggerheart/assets/logos/FoundrybornBackgroundLogo.png", diff --git a/templates/settings/automation-settings/general.hbs b/templates/settings/automation-settings/general.hbs index 211ee68e..8921ab6a 100644 --- a/templates/settings/automation-settings/general.hbs +++ b/templates/settings/automation-settings/general.hbs @@ -7,7 +7,11 @@ {{formGroup settingFields.schema.fields.hopeFear.fields.gm value=settingFields._source.hopeFear.gm localize=true}} {{formGroup settingFields.schema.fields.hopeFear.fields.players value=settingFields._source.hopeFear.players localize=true}} - + +
+ + {{formGroup settingFields.schema.fields.summaryMessages.fields.damage value=settingFields._source.summaryMessages.damage localize=true}} + {{formGroup settingFields.schema.fields.summaryMessages.fields.effects value=settingFields._source.summaryMessages.effects localize=true}}
{{formGroup settingFields.schema.fields.actionPoints value=settingFields._source.actionPoints localize=true}} {{formGroup settingFields.schema.fields.hordeDamage value=settingFields._source.hordeDamage localize=true}} diff --git a/templates/ui/chat/damageSummary.hbs b/templates/ui/chat/damageSummary.hbs new file mode 100644 index 00000000..aa8246e1 --- /dev/null +++ b/templates/ui/chat/damageSummary.hbs @@ -0,0 +1,33 @@ +
    + {{#each targets}} +
  • +
    + +

    {{this.token.name}}

    +
    +
      + {{#each this.updates}} +
    • + {{#if (gte this.value 0)}} + + {{ + localize "DAGGERHEART.UI.Chat.markResource" + quantity=this.value + resource=(localize (concat "DAGGERHEART.CONFIG.HealingType." this.key ".name")) + }} + + {{else}} + + {{ + localize "DAGGERHEART.UI.Chat.clearResource" + quantity=(positive this.value) + resource=(localize (concat "DAGGERHEART.CONFIG.HealingType." this.key ".name")) + }} + + {{/if}} +
    • + {{/each}} +
    +
  • + {{/each}} +
\ No newline at end of file diff --git a/templates/ui/chat/effectSummary.hbs b/templates/ui/chat/effectSummary.hbs new file mode 100644 index 00000000..1b7badb2 --- /dev/null +++ b/templates/ui/chat/effectSummary.hbs @@ -0,0 +1,33 @@ +
+
+ {{localize "DAGGERHEART.GENERAL.Effect.plural"}} +
+
+ {{#each effects}} +
+ + +

{{this.name}}

+ +
+
+ {{{this.description}}} +
+
+ {{/each}} +
+ + {{#if targets}} +
+ {{localize "DAGGERHEART.UI.Chat.appliedTo"}} +
+
+ {{#each targets}} +
+ +

{{this.name}}

+
+ {{/each}} +
+ {{/if}} +
\ No newline at end of file From 659670c403c508cc883b4f371f5f3e1892300551 Mon Sep 17 00:00:00 2001 From: WBHarry <89362246+WBHarry@users.noreply.github.com> Date: Thu, 6 Nov 2025 16:01:19 +0100 Subject: [PATCH 084/260] custom defeated icons (#1241) --- daggerheart.mjs | 20 ++++---- module/config/generalConfig.mjs | 47 ++++++++++--------- module/data/settings/Automation.mjs | 30 +++++++++--- module/documents/actor.mjs | 2 +- .../settings/automation-settings/rules.hbs | 4 ++ 5 files changed, 65 insertions(+), 38 deletions(-) diff --git a/daggerheart.mjs b/daggerheart.mjs index e079703a..b6c4415f 100644 --- a/daggerheart.mjs +++ b/daggerheart.mjs @@ -34,15 +34,6 @@ Hooks.once('init', () => { CONFIG.TextEditor.enrichers.push(...enricherConfig); - CONFIG.statusEffects = [ - ...CONFIG.statusEffects.filter(x => !['dead', 'unconscious'].includes(x.id)), - ...Object.values(SYSTEM.GENERAL.conditions).map(x => ({ - ...x, - name: game.i18n.localize(x.name), - systemEffect: true - })) - ]; - CONFIG.Dice.daggerheart = { DHRoll: DHRoll, DualityRoll: DualityRoll, @@ -160,6 +151,17 @@ Hooks.once('init', () => { return handlebarsRegistration(); }); +Hooks.on('setup', () => { + CONFIG.statusEffects = [ + ...CONFIG.statusEffects.filter(x => !['dead', 'unconscious'].includes(x.id)), + ...Object.values(SYSTEM.GENERAL.conditions()).map(x => ({ + ...x, + name: game.i18n.localize(x.name), + systemEffect: true + })) + ]; +}); + Hooks.on('ready', async () => { ui.resources = new CONFIG.ui.resources(); if (game.settings.get(SYSTEM.id, SYSTEM.SETTINGS.gameSettings.appearance).displayFear !== 'hide') diff --git a/module/config/generalConfig.mjs b/module/config/generalConfig.mjs index 900dcfbc..cb12f8f0 100644 --- a/module/config/generalConfig.mjs +++ b/module/config/generalConfig.mjs @@ -164,28 +164,31 @@ export const healingTypes = { } }; -export const defeatedConditions = { - defeated: { - id: 'defeated', - name: 'DAGGERHEART.CONFIG.Condition.defeated.name', - img: 'icons/magic/control/fear-fright-mask-orange.webp', - description: 'DAGGERHEART.CONFIG.Condition.defeated.description' - }, - unconscious: { - id: 'unconscious', - name: 'DAGGERHEART.CONFIG.Condition.unconscious.name', - img: 'icons/magic/control/sleep-bubble-purple.webp', - description: 'DAGGERHEART.CONFIG.Condition.unconscious.description' - }, - dead: { - id: 'dead', - name: 'DAGGERHEART.CONFIG.Condition.dead.name', - img: 'icons/magic/death/grave-tombstone-glow-teal.webp', - description: 'DAGGERHEART.CONFIG.Condition.dead.description' - } +export const defeatedConditions = () => { + const defeated = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).defeated; + return { + defeated: { + id: 'defeated', + name: 'DAGGERHEART.CONFIG.Condition.defeated.name', + img: defeated.defeatedIcon, + description: 'DAGGERHEART.CONFIG.Condition.defeated.description' + }, + unconscious: { + id: 'unconscious', + name: 'DAGGERHEART.CONFIG.Condition.unconscious.name', + img: defeated.unconsciousIcon, + description: 'DAGGERHEART.CONFIG.Condition.unconscious.description' + }, + dead: { + id: 'dead', + name: 'DAGGERHEART.CONFIG.Condition.dead.name', + img: defeated.deadIcon, + description: 'DAGGERHEART.CONFIG.Condition.dead.description' + } + }; }; -export const conditions = { +export const conditions = () => ({ vulnerable: { id: 'vulnerable', name: 'DAGGERHEART.CONFIG.Condition.vulnerable.name', @@ -204,8 +207,8 @@ export const conditions = { img: 'icons/magic/control/debuff-chains-shackle-movement-red.webp', description: 'DAGGERHEART.CONFIG.Condition.restrained.description' }, - ...defeatedConditions -}; + ...defeatedConditions() +}); export const defaultRestOptions = { shortRest: () => ({ diff --git a/module/data/settings/Automation.mjs b/module/data/settings/Automation.mjs index c54a1c31..43000277 100644 --- a/module/data/settings/Automation.mjs +++ b/module/data/settings/Automation.mjs @@ -68,21 +68,39 @@ export default class DhAutomation extends foundry.abstract.DataModel { }), characterDefault: new fields.StringField({ required: true, - choices: CONFIG.DH.GENERAL.defeatedConditions, - initial: CONFIG.DH.GENERAL.defeatedConditions.unconscious.id, + choices: () => CONFIG.DH.GENERAL.defeatedConditions(), + initial: 'unconscious', label: 'DAGGERHEART.SETTINGS.Automation.FIELDS.defeated.characterDefault.label' }), adversaryDefault: new fields.StringField({ required: true, - choices: CONFIG.DH.GENERAL.defeatedConditions, - initial: CONFIG.DH.GENERAL.defeatedConditions.defeated.id, + choices: () => CONFIG.DH.GENERAL.defeatedConditions(), + initial: 'defeated', label: 'DAGGERHEART.SETTINGS.Automation.FIELDS.defeated.adversaryDefault.label' }), companionDefault: new fields.StringField({ required: true, - choices: CONFIG.DH.GENERAL.defeatedConditions, - initial: CONFIG.DH.GENERAL.defeatedConditions.defeated.id, + choices: () => CONFIG.DH.GENERAL.defeatedConditions(), + initial: 'defeated', label: 'DAGGERHEART.SETTINGS.Automation.FIELDS.defeated.companionDefault.label' + }), + deadIcon: new fields.FilePathField({ + initial: 'icons/magic/death/grave-tombstone-glow-teal.webp', + categories: ['IMAGE'], + base64: false, + label: 'Dead' + }), + defeatedIcon: new fields.FilePathField({ + initial: 'icons/magic/control/fear-fright-mask-orange.webp', + categories: ['IMAGE'], + base64: false, + label: 'Defeated' + }), + unconsciousIcon: new fields.FilePathField({ + initial: 'icons/magic/control/sleep-bubble-purple.webp', + categories: ['IMAGE'], + base64: false, + label: 'Unconcious' }) }), roll: new fields.SchemaField({ diff --git a/module/documents/actor.mjs b/module/documents/actor.mjs index a4c1ade8..6e286fc8 100644 --- a/module/documents/actor.mjs +++ b/module/documents/actor.mjs @@ -753,7 +753,7 @@ export default class DhpActor extends Actor { async toggleDefeated(defeatedState) { const settings = game.settings.get(CONFIG.DH.id, CONFIG.DH.SETTINGS.gameSettings.Automation).defeated; - const { unconscious, defeated, dead } = CONFIG.DH.GENERAL.conditions; + const { unconscious, defeated, dead } = CONFIG.DH.GENERAL.conditions(); const defeatedConditions = new Set([unconscious.id, defeated.id, dead.id]); if (!defeatedState) { for (let defeatedId of defeatedConditions) { diff --git a/templates/settings/automation-settings/rules.hbs b/templates/settings/automation-settings/rules.hbs index 8bbf4d93..a12c2999 100644 --- a/templates/settings/automation-settings/rules.hbs +++ b/templates/settings/automation-settings/rules.hbs @@ -13,5 +13,9 @@ {{formGroup settingFields.schema.fields.defeated.fields.characterDefault value=settingFields._source.defeated.characterDefault labelAttr="name" localize=true}} {{formGroup settingFields.schema.fields.defeated.fields.adversaryDefault value=settingFields._source.defeated.adversaryDefault labelAttr="name" localize=true}} {{formGroup settingFields.schema.fields.defeated.fields.companionDefault value=settingFields._source.defeated.companionDefault labelAttr="name" localize=true}} + + {{formGroup settingFields.schema.fields.defeated.fields.deadIcon value=settingFields._source.defeated.deadIcon localize=true}} + {{formGroup settingFields.schema.fields.defeated.fields.defeatedIcon value=settingFields._source.defeated.defeatedIcon localize=true}} + {{formGroup settingFields.schema.fields.defeated.fields.unconsciousIcon value=settingFields._source.defeated.unconsciousIcon localize=true}}
\ No newline at end of file From ce3e2a804cbb6467e4fa1f6267ccb32cd795e2c4 Mon Sep 17 00:00:00 2001 From: Carlos Fernandez Date: Thu, 6 Nov 2025 10:02:22 -0500 Subject: [PATCH 085/260] Improve sidebar appearance when labels are long (#1238) --- module/systemRegistration/handlebars.mjs | 1 + styles/less/global/inventory-item.less | 157 +++++++++++------- templates/sheets/actors/adversary/sidebar.hbs | 6 +- templates/sheets/actors/character/sidebar.hbs | 18 +- templates/sheets/actors/companion/details.hbs | 8 +- .../global/partials/inventory-item-V2.hbs | 14 -- .../partials/inventory-item-compact.hbs | 85 ++++++++++ 7 files changed, 185 insertions(+), 104 deletions(-) create mode 100644 templates/sheets/global/partials/inventory-item-compact.hbs diff --git a/module/systemRegistration/handlebars.mjs b/module/systemRegistration/handlebars.mjs index dd19e429..7bc9a8ff 100644 --- a/module/systemRegistration/handlebars.mjs +++ b/module/systemRegistration/handlebars.mjs @@ -1,5 +1,6 @@ export const preloadHandlebarsTemplates = async function () { foundry.applications.handlebars.loadTemplates({ + 'daggerheart.inventory-item-compact': 'systems/daggerheart/templates/sheets/global/partials/inventory-item-compact.hbs', 'daggerheart.inventory-items': 'systems/daggerheart/templates/sheets/global/partials/inventory-fieldset-items-V2.hbs', 'daggerheart.inventory-item': 'systems/daggerheart/templates/sheets/global/partials/inventory-item-V2.hbs' diff --git a/styles/less/global/inventory-item.less b/styles/less/global/inventory-item.less index 1f5840af..50cdf116 100644 --- a/styles/less/global/inventory-item.less +++ b/styles/less/global/inventory-item.less @@ -14,7 +14,7 @@ } .appTheme({}, { - .inventory-item-header .img-portait .roll-img { + .inventory-item .img-portait .roll-img { filter: invert(1); } }); @@ -25,14 +25,12 @@ list-style-type: none; &:not(.single-img) { - .inventory-item-header:hover { - .img-portait:has(.roll-img) { - .roll-img { - opacity: 1; - } - .item-img { - opacity: 0; - } + .img-portait:has(.roll-img):hover { + .roll-img { + opacity: 1; + } + .item-img { + opacity: 0; } } @@ -68,18 +66,15 @@ } } - .inventory-item-header { - display: flex; - align-items: center; - gap: 10px; - cursor: pointer; - border-radius: 3px; - + .inventory-item-header, + &.inventory-item-compact { .img-portait { flex: 0 0 40px; height: 40px; - cursor: pointer; position: relative; + &:has(.roll-img) { + cursor: pointer; + } .item-img, .roll-img { @@ -102,53 +97,6 @@ } } - .item-label { - flex: 1; - align-self: center; - - .item-name { - font-size: var(--font-size-14); - - .expanded-icon { - display: none; - } - } - - .item-tags, - .item-labels { - display: flex; - gap: 10px; - - .tag, - .label { - display: flex; - flex-direction: row; - align-items: center; - font-size: var(--font-size-12); - flex-wrap: wrap; - justify-content: start; - } - - .tag { - padding: 3px 5px; - background: light-dark(@dark-15, @beige-15); - border: 1px solid light-dark(@dark, @beige); - border-radius: 3px; - } - - .label { - gap: 4px; - color: light-dark(@dark-80, @beige-80); - } - } - } - - .item-resource { - flex: 0 0 60px; - display: flex; - align-items: center; - gap: 4px; - } .controls { flex: 0 0 auto; display: flex; @@ -167,6 +115,52 @@ } } + .inventory-item-header { + align-items: center; + border-radius: 3px; + cursor: pointer; + display: flex; + gap: 10px; + + .item-label { + flex: 1; + align-self: center; + + .item-name { + font-size: var(--font-size-14); + + .expanded-icon { + display: none; + } + } + + .item-tags { + display: flex; + gap: 10px; + + .tag { + align-items: center; + background: light-dark(@dark-15, @beige-15); + border-radius: 3px; + border: 1px solid light-dark(@dark, @beige); + display: flex; + flex-direction: row; + flex-wrap: wrap; + font-size: var(--font-size-12); + justify-content: start; + padding: 3px 5px; + } + } + } + + .item-resource { + flex: 0 0 60px; + display: flex; + align-items: center; + gap: 4px; + } + } + .inventory-item-content { > *:not(:last-child) { margin-bottom: 5px; @@ -251,6 +245,41 @@ } } } + + &.inventory-item-compact { + display: grid; + grid-template: + "img name controls" auto + "img labels labels" 1fr + / 40px 1fr min-content; + column-gap: 8px; + + > .img-portait { + grid-area: img; + } + > .item-name { + align-self: end; + line-height: 1; + padding-bottom: 1px; + } + > .controls { + grid-area: controls; + align-self: start; + padding-top: 0.3125rem; + gap: 4px; + margin-bottom: -1px; + } + > .item-labels { + align-self: start; + color: light-dark(@dark-80, @beige-80); + display: flex; + flex-direction: row; + flex-wrap: wrap; + font-size: var(--font-size-12); + gap: 4px; + grid-area: labels; + } + } } .card-item { diff --git a/templates/sheets/actors/adversary/sidebar.hbs b/templates/sheets/actors/adversary/sidebar.hbs index 16a8ea91..fbfa62a3 100644 --- a/templates/sheets/actors/adversary/sidebar.hbs +++ b/templates/sheets/actors/adversary/sidebar.hbs @@ -78,13 +78,9 @@
    - {{> 'daggerheart.inventory-item' + {{> 'daggerheart.inventory-item-compact' item=document.system.attack type='action' - hideTags=true - hideDescription=true - hideResources=true - noExtensible=true noCompendiumEdit=true }}
diff --git a/templates/sheets/actors/character/sidebar.hbs b/templates/sheets/actors/character/sidebar.hbs index 6131104d..77f323de 100644 --- a/templates/sheets/actors/character/sidebar.hbs +++ b/templates/sheets/actors/character/sidebar.hbs @@ -116,24 +116,16 @@