HTML Code: <div class="wrapper"> <div class="full"></div> <div class="label">Character</div> <div class="character"> <input type="text" name="attr_character_name" placeholder="Name"/> <input type="text" name="attr_title" placeholder="Titles"/> <input type="text" name="attr_level" placeholder="Level"/> <select name="attr_race"> <option value="none" selected>Race?</option> <option value="afflicted">Afflicted</option> <option value="furian">Furian</option> <option value="human">Human</option> <option value="vallan">Vallan</option> </select> <select name="attr_class"> <option value="none" selected>Class?</option> <option value="dreadnought">Dreadnought</option> <option value="driftwalker">Driftwalker</option> <option value="fellhunter">Fell Hunter</option> <option value="judge">Judge</option> <option value="mystic">Mystic</option> <option value="phantom">Phantom</option> <option value="priestchaplain">Priest - Chaplain</option> <option value="priestwar">Priest - War</option> <option value="primalist">Primalist</option> <option value="sentinel">Sentinel</option> </select> <input type="text" name="attr_main" class="sheet-open" placeholder="Main Attribute"/> </div> <br/> <div class="recupes"> <input class='recupes-control' type='hidden' name='attr_recup_die' value='d10'>
<button class="recupes-display" type="roll" name="roll_recup_die"
value="/roll @{recup_die}"/></button>
<label for="attr_recupes">RECUPES</label><input
type="number" name="attr_recupes" class="sheet-open"
placeholder="2"/> </div> <div class="left">
<div class="hp_max"><label
for="attr_hp_max">MAX</label><input type="number"
name="attr_hp_max" class="sheet-open" placeholder="10"/></div> <div class="hp"><input type="number" name="attr_hp" class="sheet-open" placeholder="10"/></div> <div class="fading"> <label for="attr_fading">FADING</label> <input type="checkbox" name="attr_fading1" value="1"><span></span> <br><br> <input type="checkbox" name="attr_fading2" value="1"><span></span> <br> <br> <input type="checkbox" name="attr_fading3" value="1"><span></span><br> <br> <input type="checkbox" name="attr_fading4" value="1"><span></span> <br> <br> <input type="checkbox" name="attr_fading5" value="1"><span></span> <br> <br> <button type="roll" name="roll_fading" value="/roll 1t[fading]"></button> </div> </div> <div class="attr"> <div class="label">Attributes</div> <div class="row">
MIGHT <button type="roll" name="roll_might" value="?{Roll Type|
Standard, 2d10| Benefit, 3d10k2| Hindrance, 3d10dh1} &{template:default}
{{name= @{character_name}: Might Check }} {{STATS= Might @{Might} |
Bonus ?{Core Path Points&#124; 0&#125; &#125;&#125;
{{RESULT= [[?{Roll Type} + @{Might} + ?{Core Path Points&#124;
0&#125;]] &#125;&#125;"/> </button>
AGILITY <button type="roll" name="roll_agility" value="?{Roll Type|
Standard, 2d10| Benefit, 3d10k2| Hindrance, 3d10dh1} &{template:default}
{{name= @{character_name}: Agility Check }} {{STATS= Agility @{Agility}
| Bonus ?{Core Path Points&#124; 0&#125; &#125;&#125;
{{RESULT= [[?{Roll Type} + @{Agility} + ?{Core Path Points&#124;
0&#125;]] &#125;&#125;"/> </button>
MIND <button type="roll" name="roll_mind" value="?{Roll Type|
Standard, 2d10| Benefit, 3d10k2| Hindrance, 3d10dh1} &{template:default}
{{name= @{character_name}: Mind Check }} {{STATS= Mind @{Mind} | Bonus
?{Core Path Points&#124; 0&#125; &#125;&#125; {{RESULT=
[[?{Roll Type} + @{Mind} + ?{Core Path Points&#124; 0&#125;]]
&#125;&#125;"/> </button> PRESENCE
<button type="roll" name="roll_presence" value="?{Roll Type|
Standard, 2d10| Benefit, 3d10k2| Hindrance, 3d10dh1} &{template:default}
{{name= @{character_name}: Presence Check }} {{STATS= Presence
@{Presence} | Bonus ?{Core Path Points&#124; 0&#125;
&#125;&#125; {{RESULT= [[?{Roll Type} + @{Presence} + ?{Core
Path Points&#124; 0&#125;]] &#125;&#125;"/>
</button> </div> <div class="attrow"> <input type="number" class="sheet-open" name="attr_might"/> <input type="number" class="sheet-open" name="attr_agility"/> <input type="number" class="sheet-open" name="attr_mind"/> <input type="number" class="sheet-open" name="attr_presence"/> </div> <div class="row"> <img src= " <a href="https://image.flaticon.com/icons/png/512/112/112255.png" rel="nofollow">https://image.flaticon.com/icons/png/512/112/112255.png</a> " alt="Image" height="30" width="30"/> <input type="number" name="attr_av" value="0" class="sheet-open"/> <img src= " <a href="https://cdn4.iconfinder.com/data/icons/fairy-tale-1/128/2-512.png" rel="nofollow">https://cdn4.iconfinder.com/data/icons/fairy-tale-1/128/2-512.png</a> " alt="Image" height="30" width="30"/> <input type="number" name="attr_ar" class="sheet-open"/> <img src= " <a href="https://cdn4.iconfinder.com/data/icons/eldorado-navigation/40/run_exit_2-512.png" rel="nofollow">https://cdn4.iconfinder.com/data/icons/eldorado-navigation/40/run_exit_2-512.png</a> " alt="Image" height="30" width="30"/> <input type="number" name="attr_speed" class="sheet-open"/> <img src= " <a href="https://static.thenounproject.com/png/1162-200.png" rel="nofollow">https://static.thenounproject.com/png/1162-200.png</a> " alt="Image" height="30" width="30"/> <input type="number" name="attr_dr" class="sheet-open"/> <img src= " <a href="https://ya-webdesign.com/transparent450_/brain-icon-png-10.png" rel="nofollow">https://ya-webdesign.com/transparent450_/brain-icon-png-10.png</a> " alt="Image" height="30" width="30"/> <input type="number" name="attr_mr" class="sheet-open"/> </div> </div> <div style="clear: both;"></div> <div class="resource"> <input class='recharge-control' type='hidden' name='attr_recharge' value='d4'> <button class="recharge-display" type="roll" name="roll_recharge" value="/roll @{recharge}"></button> <input type="text" name="attr_resourcetype" placeholder="Resource"/>
<input type="radio" name="attr_resource" class="sheet-r0"
checked="checked" value = "0" /> <span
class="sheet-r0"></span><br> <input
type="radio" name="attr_resource" class="sheet-r1" value = "1" />
<span class="sheet-r1"></span><br>
<input type="radio" name="attr_resource" class="sheet-r2" value = "2"
/> <span class="sheet-r2"></span><br>
<input type="radio" name="attr_resource" class="sheet-r3" value =
"3" /> <span class="sheet-r3"></span><br>
<input type="radio" name="attr_resource" class="sheet-r4"
value = "4" /> <span class="sheet-r4"></span><br>
<input type="radio" name="attr_resource" class="sheet-r5"
value = "5" /> <span class="sheet-r5"></span><br>
<input type="radio" name="attr_resource" class="sheet-r6"
value = "6" /> <span class="sheet-r6"></span><br>
<input type="radio" name="attr_resource" class="sheet-r7"
value = "7" /> <span class="sheet-r7"></span><br>
<input type="radio" name="attr_resource" class="sheet-r8"
value = "8" /> <span class="sheet-r8"></span><br>
<input type="radio" name="attr_resource" class="sheet-r9"
value = "9" /> <span class="sheet-r9"></span><br>
<input type="radio" name="attr_resource" class="sheet-r10"
value = "10" /> <span class="sheet-r10"></span><br> </div> <div class="left"> <div class="label">Core Paths</div> <div class="corepath"> <fieldset class="repeating_corepath"> <input type="text" name="attr_corepath_name"/> <input type="number" name="attr_corepath_stat"/> <br> </fieldset> </div> <div class="cf"> <div class="label">Class Features</div> <div class="row"> <input type="text" name="attr_cf1name" placeholder="Feature Name"/> <input type="number" name="attr_cf1cost" placeholder="0"/> <span class="cfbuttons">
<button type="roll" name="roll_cf1"
value="&{template:default} {{name= @{character_name} }} {{FEATURE=
@{cf1name} }} {{COST= @{cf1cost} }} {{DESC.=@{classfeature1}
}}"/></button> <input type="checkbox" name="attr_cf1poweruse" value="1"/><span></span> </span> <br>
<input type="checkbox" name="attr_cf1standard"
class="sheet-standard" value = "1" > <span
class="sheet-standard"></span> <input
type="checkbox" name="attr_cf1passive" class="sheet-passive" value = "1"
/> <span class="sheet-passive"></span>
<input type="checkbox" name="attr_cf1quick" class="sheet-quick" value
= "1" /> <span class="sheet-quick"></span>
<input type="checkbox" name="attr_cf1free" class="sheet-free"
value = "1" /> <span class="sheet-free"></span>
<input type="checkbox" name="attr_cf1movement"
class="sheet-movement" value = "1" /> <span
class="sheet-movement"></span> <input
type="checkbox" name="attr_cf1reaction" class="sheet-reaction" value =
"1" /> <span class="sheet-reaction"></span>
<input type="checkbox" name="attr_cf1overdrive"
class="sheet-overdrive" value = "1" /> <span
class="sheet-overdrive"></span> </div> </div> <br> <br> <div class="feature"> <textarea name="attr_classfeature1" class="sheet-open" placeholder="Class Feature"/></textarea> </div> <br> <div style="clear: both;"></div> <div class="cf"> <div class="row"> <input type="text" name="attr_cf2name" placeholder="Feature Name"/> <input type="number" name="attr_cf2cost" placeholder="0"/> <span class="cfbuttons">
<button type="roll" name="roll_cf2"
value="&{template:default} {{name= @{character_name} }} {{FEATURE=
@{cf2name} }} {{COST= @{cf2cost} }} {{DESC.= @{classfeature2}
}}"/></button> <input type="checkbox" name="attr_cf2poweruse" value="1"/><span></span> </span> <br>
<input type="checkbox" name="attr_cf2standard"
class="sheet-standard" value = "1" /> <span
class="sheet-standard"></span> <input
type="checkbox" name="attr_cf2passive" class="sheet-passive" value = "1"
/> <span class="sheet-passive"></span>
<input type="checkbox" name="attr_cf2quick" class="sheet-quick" value
= "1" /> <span class="sheet-quick"></span>
<input type="checkbox" name="attr_cf2free" class="sheet-free"
value = "1" /> <span class="sheet-free"></span>
<input type="checkbox" name="attr_cf2movement"
class="sheet-movement" value = "1" /> <span
class="sheet-movement"></span> <input
type="checkbox" name="attr_cf2reaction" class="sheet-reaction" value =
"1" /> <span class="sheet-reaction"></span>
<input type="checkbox" name="attr_cf2overdrive"
class="sheet-overdrive" value = "1" /> <span
class="sheet-overdrive"></span> </div> </div> <br> <div class="feature"> <textarea name="attr_classfeature2" class="sheet-open" placeholder="Class Feature"/></textarea> </div> <div style="clear: both;"></div> </div> <div class="middle"> <div class="power"> <div class="label">Racial Feature</div> <div class="row"> <input type="text" name="attr_rfname" placeholder="Feature Name"/> <span class="powerbuttons">
<button type="roll" name="roll_rf" value="&{template:default}
{{name= @{character_name} }} {{FEATURE= @{rfname} }}
{{DESC.=@{racefeature}}}"/></button> <input type="checkbox" name="attr_rfuse" value="0"/><span></span> </span> </div> </div>
<div class="feature"> <textarea name="attr_racefeature"
class="sheet-open" placeholder="Racial
Feature"/></textarea></div> <br> <div class="perks"> <div class="label">Perks</div> <fieldset class="repeating_perks"> <div class="row"> <input type="text" name="attr_perkname" placeholder="Perk Name"> </div> <div class="perk"> <textarea name="attr_perk"></textarea> </div> </fieldset> </div> </div> <div class="right"> <div class="wallet"> <div class="denerim"> <input type="number" name="attr_denerim"/> <label for="attr_denerim">DENERIM</label> </div> <br> <div class="stuff"> <input type="number" name="attr_needs"/> <input type="number" name="attr_gear"/> <br> <label for= "attr_needs">NEEDS</label> <label for="attr_gear">GEAR</label> </div> <div style="clear: both;"></div> <br> <div class="stuffmax"> <input type="text" name="attr_needs_max"/> <label for="attr_needs_max"/>MAX</label> </div> <div class="stuffmax"> <input type="text" name="attr_gear_max"/> <label for="attr_gear_max"/>MAX</label> </div> </div> <div style="clear: both;"></div> <div class="armor"> <div class="label">Armor</div> <div class="row"> <input type="text" name="attr_armor" placeholder="Armor Types" /></div> <div class="armorrow"> <img src= " <a href="https://i.imgur.com/Sv6xERV.png" rel="nofollow">https://i.imgur.com/Sv6xERV.png</a> " alt="Image" height="26" width="26"/> <input type="text" name="attr_headarmor"/> <input type="number" name="attr_head"/> <br> <img src= " <a href="https://i.imgur.com/ihpAJji.png" rel="nofollow">https://i.imgur.com/ihpAJji.png</a> " alt="Image" height="26" width="26"/> <input type="text" name="attr_bodyarmor"/> <input type="number" name="attr_body"/> <br> <img src= " <a href="https://i.imgur.com/MQft85e.png" rel="nofollow">https://i.imgur.com/MQft85e.png</a> " alt="Image" height="26" width="26"/> <input type="text" name="attr_legarmor"/> <input type="number" name="attr_legs"/> <br> <img src= " <a href="https://i.imgur.com/mALegIU.png" rel="nofollow">https://i.imgur.com/mALegIU.png</a> " alt="Image" height="26" width="26"/> <input type="text" name="attr_shieldarmor"/> <input type="number" name="attr_shield"/> <br> </div> </div> <div class="weapons"> <div class="label">Weapons</div> <div class="row"> <textarea name="attr_proficiency" placeholder="Weapon Types"/></textarea> </div> <fieldset class="repeating_weapons"> <div class="weaponrow">
<button type="roll" name="roll_weapon" value="!fxattack2
--@{character_id} --@{target|character_id} --@{weapon} --@{damagedie}
--@{weaponfx} --@{selected|token_id} --@{target|token_id} --?{Roll Type|
Standard,2d10| Benefit,3d10k2| Hindrance,3d10dh1} --?{Core Path
Points|0}"/> </button> <input type="text" name="attr_weapon" placeholder="Weapon"/>
<span class="weapondie"> <input type="text"
name="attr_weaponfx" placeholder="FX"/> <input type="text"
name="attr_damagedie" placeholder="DMG"/></span> </div> <br> </fieldset> </div> </div> <div class="label">Powers</div> <fieldset class="repeating_powers" data-groupname="repeating_powers"> <div class="power"> <div class="row"> <input type="text" name="attr_powername" placeholder="Power"/> <input type="number" name="attr_powercost" placeholder="0"/> <span class="powerbuttons">
<button type="roll" name="roll_power" value="!fxpower {{
--@{character_id} --@{target|character_id} --@{powername} --@{powercost}
--@{powerfx} --@{selected|token_id} --@{target|token_id} --@{power}
}}"/></button> <input type="checkbox" name="attr_poweruse" value="1"/><span></span> </span> <br>
<input type="checkbox" name="attr_standard"
class="sheet-standard" value = "1" /> <span
class="sheet-standard"></span> <input
type="checkbox" name="attr_passive" class="sheet-passive" value = "1"
/> <span class="sheet-passive"></span>
<input type="checkbox" name="attr_quick" class="sheet-quick" value =
"1" /> <span class="sheet-quick"></span>
<input type="checkbox" name="attr_free" class="sheet-free" value =
"1" /> <span class="sheet-free"></span>
<input type="checkbox" name="attr_movement" class="sheet-movement"
value = "1" /> <span class="sheet-movement"></span>
<input type="checkbox" name="attr_reaction"
class="sheet-reaction" value = "1" /> <span
class="sheet-reaction"></span> <input
type="checkbox" name="attr_overdrive" class="sheet-overdrive" value =
"1" /> <span class="sheet-overdrive"></span> </div> </div> <br> <br> <div class="feature"> <textarea name="attr_power" class="sheet-open" placeholder="Description"/></textarea> <input type="text" name="attr_powerfx" placeholder="FX"/> </div> <br> </fieldset> <div class="inventory"> <div class="label">Inventory</div> <div class="feature"> <textarea name="attr_inventory1" placeholder="Inventory"/></textarea> <textarea name="attr_inventory2" placeholder="Inventory"/></textarea> </div> </div> <div class="resource2"> <input type="text" name="attr_resourcetype2" placeholder="Resource 2"/>
<input type="radio" name="attr_resource2" class="sheet-r0"
checked="checked" value = "0" /> <span
class="sheet-r0"></span> <input type="radio"
name="attr_resource2" class="sheet-r1" value = "1" /> <span
class="sheet-r1"></span> <input type="radio"
name="attr_resource2" class="sheet-r2" value = "2" /> <span
class="sheet-r2"></span> <input type="radio"
name="attr_resource2" class="sheet-r3" value = "3" /> <span
class="sheet-r3"></span> <input type="radio"
name="attr_resource2" class="sheet-r4" value = "4" /> <span
class="sheet-r4"></span> <input type="radio"
name="attr_resource2" class="sheet-r5" value = "5" /> <span
class="sheet-r5"></span> <input type="radio"
name="attr_resource2" class="sheet-r6" value = "6" /> <span
class="sheet-r6"></span> </div> <div class="relationships"> <div class="label">Relationships</div> <div class="feature"> <textarea name="attr_relationships" placeholder="Relationships"/></textarea> </div> </div> <div style="clear: both;"></div> <br> <div class="story"> <div class="label">Story</div> <div class="feature"> <textarea name="attr_story" placeholder="Once Upon a Time..."/></textarea> </div> </div> <br> <div class="advancement"> <input type="radio" value="dreadnought" name="attr_class" class="sheet-class sheet-class-1"> <input type="radio" value="driftwalker" name="attr_class" class="sheet-class sheet-class-2"> <input type="radio" value="fellhunter" name="attr_class" class="sheet-class sheet-class-3"> <input type="radio" value="judge" name="attr_class" class="sheet-class sheet-class-4"> <input type="radio" value="mystic" name="attr_class" class="sheet-class sheet-class-5"> <input type="radio" value="phantom" name="attr_class" class="sheet-class sheet-class-6"> <input type="radio" value="priestchaplain" name="attr_class" class="sheet-class sheet-class-7"> <input type="radio" value="priestwar" name="attr_class" class="sheet-class sheet-class-8"> <input type="radio" value="primalist" name="attr_class" class="sheet-class sheet-class-9"> <input type="radio" value="sentinel" name="attr_class" class="sheet-class sheet-class-10"> <img class="sheet-class sheet-class-1" src=" <a href="https://i.imgur.com/EQSpV83.png" rel="nofollow">https://i.imgur.com/EQSpV83.png</a> " alt="Image"> <img class="sheet-class sheet-class-2" src=" <a href="https://i.imgur.com/TPchmZc.png" rel="nofollow">https://i.imgur.com/TPchmZc.png</a> " alt="Image"> <img class="sheet-class sheet-class-3" src=" <a href="https://i.imgur.com/XNtNyUd.png" rel="nofollow">https://i.imgur.com/XNtNyUd.png</a> " alt="Image"> <img class="sheet-class sheet-class-4" src=" <a href="https://i.imgur.com/ps0jXmP.png" rel="nofollow">https://i.imgur.com/ps0jXmP.png</a> " alt="Image"> <img class="sheet-class sheet-class-5" src=" <a href="https://i.imgur.com/3MLMg5I.png" rel="nofollow">https://i.imgur.com/3MLMg5I.png</a> " alt="Image"> <img class="sheet-class sheet-class-6" src=" <a href="https://i.imgur.com/umshIx3.png" rel="nofollow">https://i.imgur.com/umshIx3.png</a> " alt="Image"> <img class="sheet-class sheet-class-7" src=" <a href="https://i.imgur.com/X9CtZBM.png" rel="nofollow">https://i.imgur.com/X9CtZBM.png</a> " alt="Image"> <img class="sheet-class sheet-class-8" src=" <a href="https://i.imgur.com/X9CtZBM.png" rel="nofollow">https://i.imgur.com/X9CtZBM.png</a> " alt="Image"> <img class="sheet-class sheet-class-9" src=" <a href="https://i.imgur.com/aeSDorL.png" rel="nofollow">https://i.imgur.com/aeSDorL.png</a> " alt="Image"> <img class="sheet-class sheet-class-10" src=" <a href="https://i.imgur.com/DJ6Uw8L.png" rel="nofollow">https://i.imgur.com/DJ6Uw8L.png</a> " alt="Image"> </div> </div> <script type="text/worker"> on("change:race", function () { getAttrs(['race'], function(values) { const races = { none: {might: 0, agility: 0, mind: 0, presence: 0, racefeature: "Racial Feature"},
human: {might: 1, agility: 1, mind: 1, presence: 1, rfname:
"Tenacious", racefeature: "You may re-roll any roll and use the result
you prefer. Can be used once per Full Rest"}, vallan:
{might: 0, agility: 2, mind: 1, presence: 1, rfname: "Harmony",
racefeature: "You may either spend a Free action to grant an extra
HL+1d4 to yourself and all Adjacent Allies on Defense rolls against a
single incoming attack, or spend a few moments to form an empathic bond
with a single Nearby Ally, granting them a +1d4 bonus on a single skill
check. Either effect must be activated before the roll is made. Can be
used once per Full Rest"}, furian: {might: 2, agility: 1,
mind: 0, presence: 1, rfname: "Unbound", racefeature: "Deal your
highest Attribute score as extra damage on a single attack, or you may
add half your Level to your Might score on a skill check. Can be used
safely once per Full Rest. You may attempt to use this more than once
per Full Rest but risk losing control. Roll 1d10 on subsequent attempts.
Rolling below a 6 causes you to perform a single attack (with the
Unbound bonus) on an ally of the GM’s choosing or yourself with that
attack. The threshold for losing control increases by 1 with each
subsequent attempt."}, afflicted: {might: 1, agility: 1,
mind: 2, presence: 0, rfname: "Grisly Triage", racefeature: "If there
are fresh corpses after a battle, a quick infusion of their vital fluids
or electrical charge invigorates you and heals you for 1d6 + [2×Level]
hitpoints. You may spend an additional 5 minutes and 1 Gear to scavenge
for parts that will grant you 1 Recuperation. Can be used once per Full
Rest."} }; const race = values.race; if (!races.hasOwnProperty( race )) { console.log("Error: The item " + race + " is not found within the races Object."); return; } const scores = races[race]; setAttrs(scores); }); }); on("change:class", function () { getAttrs(['class','might','mind','presence','agility', 'hp'], function(values) { const classes = {
none: {main: "Main Attribute", ar: 0, hp: 10, resourcetype: "Resource",
resource: 0, resource_max: 10, recharge: "d4", recup_die: "d10", armor:
"Armor Types", proficiency: "Weapon Types"}, dreadnought:
{main: "Might", ar: (values.might), hp_max: 14 + Number((values.might)),
hp: 14 + Number((values.might)), resourcetype: "Fury (6)" , resource:
6, resource_max: 6, recharge: "d4", recup_die: "d10", armor: "Light,
Heavy", proficiency: "Light Melee, Medium Melee", cf1name:
"Shieldbreaker", cf1cost: 0, classfeature1: "PASSIVE - Your Melee
attacks gain +1 Armour Penetration, allowing you to ignore 1 AV when
calculating damage. Shieldbreaker does not provide additional physical
damage if the target has no AV; it only ignores what AV the target has.
Bonus increases to: • +2 at level 5 • +3 at level 9", cf2name: "Cleave",
cf2cost: 1, classfeature2: "STANDARD - Roll your Basic Attack. Roll 1d4
to determine how many ADJACENT enemies are struck by your attack.
Success: You deal 1d10+HL damage. Failure. You deal half damage."},
driftwalker: {main: "Mind", ar: (values.mind), hp_max: 10 +
Number((values.mind)), hp: 10 + Number((values.mind)), resourcetype:
"Bile (8)" , resource: 8, resource_max: 8, recharge: "d6", recup_die:
"d10", armor: "Light", proficiency: "Medium Melee, Heavy Melee",
cf1name: "Dark Bargain", cf1cost: 2 + (values.mind), classfeature1:
"QUICK - BLOOD - (MIND added as additional Blood cost) Recharge 1 Bile",
cf2name: "Siphoning Strike", cf2cost: 2, classfeature2: "STANDARD -
BILE COST - ADJACENT - Roll your Basic Attack. Success: You deal basic
attack damage and heal for HL + Mind. Failure: You deal half damage and
heal for HL."}, fellhunter: {main: "Agility", ar:
(values.agility), hp_max: 10 + Number((values.agility)), hp: 10 +
Number((values.agility)), resourcetype: "Focus (6)", resource: 6,
resource_max: 6, recharge: "d4", recup_die: "d8", armor: "Light",
proficiency: "Light Melee, All Ranged", cf1name: "Point Blank Shot",
cf1cost: 0, classfeature1: "You do not suffer the usual Hindrance
penalty for attacking with a ranged weapon while ADJACENT to an enemy.",
cf2name: "Vault", cf2cost: 2, classfeature2: "Use your Movement action
to Vault up to a NEARBY distance into or away from danger. While
Vaulting you receive Benefit against all Provoked Attacks."},
judge: {main: "Might", ar: (values.might), hp_max: 12 +
Number((values.might)), hp: 12 + Number((values.might)), resourcetype:
"Fervor (6)", resource: 6, resource_max: 6, recharge: "d4", recup_die:
"d10", armor: "Light, Heavy, Shields", proficiency: "Medium Melee, Heavy
Melee", cf1name: "Zealot", cf1cost: 0, classfeature1: "When not
wielding a shield: You can choose to re-roll any weapon damage dice that
come up as a 1 or 2. You must accept the next roll even if it is a 1 or
2. When wielding a shield: You can choose to re-roll a Defense roll if
the 2d10 portion of the roll comes up in the range of 2–5. You must
accept the next roll no matter what it is.", cf2name: "Holy Smite",
cf2cost: 1, classfeature2: "QUICK - Upon dealing Melee damage, you may
add an additional +1d4 Divine damage. Bonus increases to: • +1d6 at
level 5 • +1d8 at level 10."}, mystic: {main: "Mind", ar:
(values.mind), hp_max: 10 + Number((values.mind)), hp: 10 +
Number((values.mind)), resourcetype: "Mana (10)" , resource: 10,
resource_max: 10, recharge: "d8", recup_die: "d8", armor: "None",
proficiency: "Light Melee, Light Ranged", cf1name: "Force Bolt",
cf1cost: 0, classfeature1:"STANDARD - VERY FAR - Roll your Basic Attack.
Success. You deal 1d8+MIND damage. Failure. You miss.", cf2name:
"Amplify Magick", cf2cost: 0, classfeature2: "STANDARD - Roll your Basic
Attack to determine X. Your next damaging spell will deal an extra X
damage in the elemental form of that spell. Amplify Magick does not
stack and you must declare which spell you are Amplifying when you
activate Amplify Magick. When you use Amplify Magick, roll 1d10. 1–5:
Cauterize. Heal for +MIND. 6–10: Arcane Field. Gain +MIND to your AV for
1 round. X = 2-8: 1d6. 9-19: 2d4. 20-24: 2d6. 25+: 2d8."},
phantom: {main: "Agility", ar: (values.agility), hp_max: 10 +
Number((values.agility)), hp: 10 + Number((values.agility)),
resourcetype: "Guile (8)", resource: 8, resource_max: 8, recharge: "d4",
recup_die: "d8", armor: "Light", proficiency: "Light Melee, Medium
Melee, Thrown", cf1name: "Backstab", cf1cost: 0, classfeature1:"BACKSTAB
- Anytime you attack an enemy who is ADJACENT to an Ally, add 1d4
damage on a successful attack. Attacking directly from stealth or
surprise grants this bonus as well. Bonus increases to: • +2d4 at level 5
• +3d4 at level 10", cf2name: "Tumble", cf2cost: 1, classfeature2:
"TUMBLE - You may activate Tumble immediately after taking Physical
damage. Expend 1 Guile to reduce the incoming Physical damage by
+AGILITY. You can expend multiple Guile for further damage reduction."},
priestchaplain: {main: "Mind", ar: (values.mind), hp_max: 10 +
Number((values.mind)), hp: 10 + Number((values.mind)), resourcetype:
"Faith (10)" , resource: 10, resource_max: 10, recharge: "d6",
recup_die: "d8", armor: "Light", proficiency: "Light Melee, Medium
Melee", cf1name: "Healing Charge", cf1cost: 0, classfeature1:"QUICK -
FAR - HOLD 4 - Each Healing Charge heals for 1+HL+MIND. You may expend
multiple charges at once on the same target. You start with 1 Healing
Charge and every Full Rest grants you 1 Healing Charge.", cf2name:
"Sacred Bolt", cf2cost: 3, classfeature2: "STANDARD - FAR - Success. You
deal 1d6+HL+MIND Divine damage and gain 1 Healing Charge. Failure. You
deal half damage and gain 1 Healing Charge."}, priestwar:
{main: "Mind", ar: (values.mind), hp_max: 10 + Number((values.mind)),
hp: 10 + Number((values.mind)), resourcetype: "Faith (6)" , resource: 6,
resource_max: 6, recharge: "d4", recup_die: "d8", armor: "Light,
Heavy", proficiency: "Light Melee, Medium Melee, Heavy Melee, Shields",
cf1name: "Healing Charge", cf1cost: 0, classfeature1:"QUICK - FAR - HOLD
3 - Each Healing Charge heals for 1+HL+MIND. You may expend multiple
charges at once on the same target. You start with 1 Healing Charge and
every Full Rest grants you 1 Healing Charge.", cf2name: "Holy Strike",
cf2cost: 2, classfeature2: "HOLY STRIKE - STANDARD - 2 FAITH - ADJACENT -
Success. You deal your basic attack damage and gain 1 Healing Charge.
Failure. You deal half of your basic attack damage and gain 1 Healing
Charge."}, primalist: {main: "Mind", ar: (values.mind),
hp_max: 10 + Number((values.mind)), hp: 10 + Number((values.mind)),
resourcetype: "Spirit (6)" , resource: 6, resource_max: 6, recharge:
"d4", recup_die: "d8", armor: "Light", proficiency: "Light Melee, Medium
Melee", cf1name: "Aspect of the Boar", cf1cost: 2, classfeature1:"QUICK
- FEROCITY- Increase your MIGHT by +HL. Increase your Max HP and
current HP by +MIND. The Max HP is lost when you are no longer in the
Aspect of the Boar. Gives you access to the Brace for Impact DREADNOUGHT
power. This Reaction power costs 2 Ferocity to use.", cf2name: "Aspect
of the Tiger", cf2cost: 2, classfeature2: "QUICK - FEROCITY - Increase
your AGILITY by +HL. Increase your damage die for your Basic Attack to
1d12. Gives you access to the PHANTOM Tumble power. You spend Ferocity
in place of Guile to achieve Tumble’s effects."}, sentinel:
{main: "Might", ar: (values.might), hp_max: 12 + Number((values.might)),
hp: 12 + Number((values.might)), resourcetype: "Discipline (6)" ,
resource: 6, resource_max: 6, recharge: "d4", recup_die: "d10", armor:
"Light, Heavy, Shields", proficiency: "Light Melee, Medium Melee",
cf1name: "Bastion", cf1cost: 0, classfeature1:"When wielding your
shield, add the shield’s AV to your DR.", cf2name: "Vigilance", cf2cost:
1, classfeature2: "QUICK - Select a single enemy anywhere on the
battlefield to become your point of focus. Any time that enemy attacks a
target that is not you, you may instantly make a Basic Attack as a Free
action against that enemy if they are ADJACENT to you at the time they
made the attack. Vigilance lasts until the end of battle or if you use
it again to change to a different target."} }; const classy = values.class; if (!classes.hasOwnProperty( classy )) { console.log("Error: The item " + classy + " is not found within the classes Object."); return; } const metrics = classes[classy]; setAttrs(metrics); }); }); on("change:might", function() { getAttrs(["might", "recupes_max", "recupes", "needs_max", "gear_max"], function(values) { setAttrs({ "recupes_max": 2 + ( Math.floor(values.might / 2)), "recupes": 2 + ( Math.floor(values.might / 2)) }); if (values.might == -2) { setAttrs({ "needs_max": 1, "gear_max": 4 }); } if (values.might == -1) { setAttrs({ "needs_max": 2, "gear_max": 5 }); } if (values.might == 0) { setAttrs({ "needs_max": 3, "gear_max": 6 }); } if (values.might == 1) { setAttrs({ "needs_max": 4, "gear_max": 7 }); } if (values.might == 2) { setAttrs({ "needs_max": 4, "gear_max": 8 }); } if (values.might == 3) { setAttrs({ "needs_max": 5, "gear_max": 9 }); } if (values.might == 4) { setAttrs({ "needs_max": 5, "gear_max": 10 }); } if (values.might == 5) { setAttrs({ "needs_max": 6, "gear_max": 11 }); } if (values.might == 6) { setAttrs({ "needs_max": 6, "gear_max": 12 }); } if (values.might == -2) { setAttrs({ "needs_max": 7, "gear_max": 13 }); } }); }); on("change:mind", function() { getAttrs(["mind","mr"], function(values) { setAttrs({ "mr": parseInt(values["mind"],10) || 0 }); }); }); on("change:agility", function() { getAttrs(["agility","speed", "dr"], function(values) { setAttrs({ "speed": values.agility, "dr": values.agility }); }); }); </script>