<div id='SR6WE'> <input class="sheet_type" name="attr_sheet_type" type="hidden" value="pc"/> <input class="character-type" name="attr_flag_special" type="hidden" value="mundane"/> <div class="pc"> <img class="shadowrun-logo" alt="Shadowrun sixth edition logo" src="https://s3.amazonaws.com/files.d20.io/images/204802539/QInmmma8HvUBA90c8e8H8Q/max.png?1614545502"/> <div class="tabs"> <div class="header-names"> <h1 data-i18n="character">Character</h1> <label data-i18n-title="character name" title="character name"> <input type="text" name="attr_character_name" placeholder="Character name" title="@{character_name}"/> </label> <h1 data-i18n="player">Player</h1> <label data-i18n-title="player name" title="player name"> <input type="text" name="attr_player_name" placeholder="Player name" title="@{player_name}"/> </label> </div> <div class="header-toggles"> <span> </span> <h2 data-i18n-title="whispergm">/w GM</h2> <label class="switch" data-i18n-title="whispergm" title="Whisper rolls to GM"> <input class="whisper-toggle" name="attr_gm_toggle" type="checkbox" value="/w gm"/><span class="slider"></span> </label> <h2 data-i18n-title="wounds">Wounds</h2> <label class="switch" data-i18n-title="wounds" title="Wounds"> <input class="whisper-toggle" name="attr_wounds_toggle" type="checkbox" value="@{wounds}"/><span class="slider"></span> </label> <h2 data-i18n-title="dicepoolmodifiers">Modifiers</h2> <label class="switch" data-i18n-title="dicepoolmodifiers" title="Dicepool Modifiers"> <input class="whisper-toggle" name="attr_modifiers_toggle" type="checkbox" value="?{Modifiers +/-|0}"/><span class="slider"></span> </label> <h2 data-i18n-title="addedgetodicepool">Edge</h2> <label class="switch" data-i18n-title="addedgetodicepool" title="Add Edge to your dice pool and exploding 6's"> <input class="whisper-toggle" name="attr_edge_toggle" type="checkbox" value="@{edge}"/><span class="slider"></span> </label> <h2 data-i18n-title="wilddie">Wild Die</h2> <label class="switch" data-i18n-title="wilddie" title="Roll a single wild die"> <input class="whisper-toggle" name="attr_wild_die" type="checkbox" value="1"/><span class="slider"></span> </label> <span> </span> </div> <div class="header-navtabs"> <input name="attr_tab" type="hidden" value="core"/> <h1> </h1> <button name="d6" title="Roll D6s" type="roll" value="@{gm_toggle} &{template:rolls}{{header=@{character_name}}}{{base=^{d6}}}{{dice=[[(?{d6s|0}d6>5?{Exploding 6's?|N, |Y,!})]]}}{{wilddie=[[?{Wild Die?|N,0|Y,1}d6]]}}">L</button> <button class="pictos" name="act_tab_options" title="@{tab}" type="action">y</button> <button data-i18n="core" name="act_tab_core" type="action" title="@{tab}">core</button> <button data-i18n="arms" name="act_tab_arms" type="action" title="@{tab}">arms</button> <button data-i18n="augs" name="act_tab_augs" type="action" title="@{tab}">augs</button> <button data-i18n="gear" name="act_tab_gear" type="action" title="@{tab}">gear</button> <button data-i18n="magic" name="act_tab_magic" type="action" title="@{tab}">magic</button> <button data-i18n="matrix" name="act_tab_matrix" type="action" title="@{tab}">matrix</button> <button data-i18n="social" name="act_tab_social" type="action" title="@{tab}">social</button> <button data-i18n="vehicle" name="act_tab_vehicle" type="action" title="@{tab}">vehicle</button> </div> </div> <input class="options_toggle" name="attr_tab" type="hidden" value="options"/> <div class="static pc-col"> <div class="pc-row core-info"> <div class="header"><div class="triangle"></div><h1 data-i18n="personal">Personal Data</h1></div> <div class="border-box"> <div class="pc-box small-box"> <div class="row-long pd-nam"> <h2 data-i18n="namealias">NAME/PRIMARY ALIAS</h2><input type="text" name="attr_character_name" placeholder="name" title="@{name}" /> </div> <div class="row-long pd-meta"> <h2 data-i18n="metatype">Metatype</h2><input type="text" name="attr_metatype" placeholder="metatype" title="@{metatype}" /> <h2 data-i18n="ethnicity">Ethnicity</h2><input type="text" name="attr_ethnicity" placeholder="ethnicity" title="@{ethnicity}" /> </div> <div class="row-long pd-age"> <h2 data-i18n="age">Age</h2><input type="text" name="attr_age" placeholder="age" title="@{age}" /> <h2 data-i18n="sex">Sex</h2><input type="text" name="attr_sex" placeholder="sex" title="@{sex}" /> <h2 data-i18n="height-u">Height</h2><input type="text" name="attr_height" placeholder="height" title="@{height}" > <h2 data-i18n="weight">Weight</h2><input type="text" name="attr_weight" placeholder="weight" title="@{weight}" /> </div> <div class="row-long pd-rep"> <h2 data-i18n="reputation">Reputation</h2><input type="number" name="attr_reputation" placeholder="#" title="@{reputation}" /> <h2 data-i18n="heat">Heat</h2><input type="number" name="attr_heat" placeholder="#" title="@{heat}" /> <h2 data-i18n="nuyen">¥</h2><input type="number" name="attr_nuyen" placeholder="0" title="@{nuyen}" /> </div> <div class="row-long pd-kar"> <h2 data-i18n="karma">Karma</h2><input style="width: 2em;" type="number" name="attr_karma" placeholder="#" title="@{karma}" /> <h2 data-i18n="total karma">Total Karma</h2><input style="width: 2em;" type="number" name="attr_total_karma" placeholder="#" title="@{total_karma}" /> </div> <div class="row-long pd-kar"> <h2 data-i18n="essence">Base Essence</h2><input disabled="disabled" style="width: 1.5em !important;" type="number" step="0.01" min="0.00" name="attr_essence_base" value="6" title="@{essence_base}" /> + <h2 data-i18n="essencemodifier">Modifier</h2><input style="width: 3em !important;" type="number" step="0.01" min="-6.00" name="attr_essence_mod" placeholder="0" title="@{essence_mod}" /> - <h2 data-i18n="augmentations">Augmentations</h2><span name="attr_aug_essence_cost" title="@{aug_essence_cost}"></span> = <h2 data-i18n="currentessence">Current Essence</h2><span name="attr_essence" title="@{essence}"><span> </div> </div> </div> </div> <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF ATTRIBUTES ROW ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> <div class="pc-row"> <div class="header"><div class="triangle"></div> <h1 data-i18n="attributes">Attributes</h1></div> <div class="border-box"> <div class="pc-box medium-box attr-box"> <input type="checkbox" class="settings-toggle" name="attr_flag_attribute" checked="checked" title="Settings toggle" /><span>x</span> <div class="attr-col attr-col-left"> <!-- ~~:+: Body :+:~~ --> <input type="hidden" name="attr_body" value="" /> <button type="roll" name="body" value="@{gm_toggle} &{template:rolls}{{header=^{body}}}{{base=^{attributes}}}{{dice=[[(@{body}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"><span class="red" data-i18n="body">Body</span></button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_body_base" value="" placeholder="3" title="@{body_base}" /><span class="tiny-span"> + </span> <input type="number" name="attr_body_modifier" value="" placeholder="0" title="@{body_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_display_body" title="@{body}" /></span> </div> <div class="display"><span name="attr_display_body" title="@{body}"></span></div> </div> <!-- ~~:+: Agility :+:~~ --> <input type="hidden" name="attr_agility" value="" /> <button type="roll" name="agility" value="@{gm_toggle} &{template:rolls}{{header=^{agility}}}{{base=^{attributes}}}{{dice=[[(@{agility}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"><span class="red" data-i18n="agility">Agility</span></button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_agility_base" value="" placeholder="3" title="@{agility_base}" /><span class="tiny-span"> + </span> <input type="number" name="attr_agility_modifier" value="" placeholder="0" title="@{agility_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_display_agility" title="@{agility}" /></span> </div> <div class="display"><span name="attr_display_agility" title="@{agility}"></span></div> </div> <!-- ~~:+: Reaction :+:~~ --> <input type="hidden" name="attr_reaction" value="" /> <button type="roll" name="reaction" value="@{gm_toggle} &{template:rolls}{{header=^{reaction}}}{{base=^{attributes}}}{{dice=[[(@{reaction}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"><span class="red" data-i18n="reaction">Reaction</span></button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_reaction_base" value="" placeholder="3" title="@{reaction_base}" /><span class="tiny-span"> + </span> <input type="number" name="attr_reaction_modifier" value="" placeholder="0" title="@{reaction_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_display_reaction" title="@{reaction}" /></span> </div> <div class="display"><span name="attr_display_reaction" title="@{reaction}"></span></div> </div> <!-- ~~:+: Strength :+:~~ --> <input type="hidden" name="attr_strength" value="" /> <button type="roll" name="strength" value="@{gm_toggle} &{template:rolls}{{header=^{strength}}}{{base=^{attributes}}}{{dice=[[(@{strength}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"><span class="red" data-i18n="strength">Strength</span></button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_strength_base" value="" placeholder="3" title="@{strength_base}" /><span class="tiny-span"> + </span> <input type="number" name="attr_strength_modifier" value="" placeholder="0" title="@{strength_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_display_strength" title="@{strength}" /></span> </div> <div class="display"><span name="attr_display_strength" title="@{strength}"></span></div> </div> <!-- ~~:+: Willpower :+:~~ --> <input type="hidden" name="attr_willpower" value="" /> <button type="roll" name="willpower" value="@{gm_toggle} &{template:rolls}{{header=^{willpower}}}{{base=^{attributes}}}{{dice=[[(@{willpower}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"><span data-i18n="willpower">Willpower</span></button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_willpower_base" value="" placeholder="3" title="@{willpower_base}" /><span class="tiny-span"> + </span> <input type="number" name="attr_willpower_modifier" value="" placeholder="0" title="@{willpower_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_display_willpower" title="@{willpower}" /></span> </div> <div class="display"><span name="attr_display_willpower" title="@{willpower}"></span></div> </div> <!-- ~~:+: Logic :+:~~ --> <input type="hidden" name="attr_logic" value="" /> <button type="roll" name="logic" value="@{gm_toggle} &{template:rolls}{{header=^{logic}}}{{base=^{attributes}}}{{dice=[[(@{logic}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"><span data-i18n="logic">Logic</span></button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_logic_base" value="" placeholder="3" title="@{logic_base}" /><span class="tiny-span"> + </span> <input type="number" name="attr_logic_modifier" value="" placeholder="0" title="@{logic_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_display_logic" title="@{logic}" /></span> </div> <div class="display"><span name="attr_display_logic" title="@{logic}"></span></div> </div> <!-- ~~:+: Intuition :+:~~ --> <input type="hidden" name="attr_intuition" value="" /> <button type="roll" name="intuition" value="@{gm_toggle} &{template:rolls}{{header=^{intuition}}}{{base=^{attributes}}}{{dice=[[(@{intuition}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"><span data-i18n="intuition">Intuition</span></button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_intuition_base" value="" placeholder="3" title="@{intuition_base}" /><span class="tiny-span"> + </span> <input type="number" name="attr_intuition_modifier" value="" placeholder="0" title="@{intuition_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_display_intuition" title="@{intuition}" /></span> </div> <div class="display"><span name="attr_display_intuition" title="@{intuition}"></span></div> </div> <!-- ~~:+: Charisma :+:~~ --> <input type="hidden" name="attr_charisma" value="" /> <button type="roll" name="charisma" value="@{gm_toggle} &{template:rolls}{{header=^{charisma}}}{{base=^{attributes}}}{{dice=[[(@{charisma}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"><span data-i18n="charisma">Charisma</span></button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_charisma_base" value="" placeholder="3" title="@{charisma_base}" /><span class="tiny-span"> + </span> <input type="number" name="attr_charisma_modifier" value="" placeholder="0" title="@{charisma_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_display_charisma" title="@{charisma}" /></span> </div> <div class="display"><span name="attr_display_charisma" title="@{charisma}"></span></div> </div> <!-- ~~:+: Edge :+:~~ --> <button type="roll" name="edge" value="@{gm_toggle} &{template:rolls}{{header=^{edge}}}{{base=^{attributes}}}{{dice=[[(@{edge}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"><span data-i18n="edge">Edge</span></button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_edge" placeholder="3" title="@{edge}" /> </div> <div class="display"><span name="attr_edge" title="@{edge}"></span></div> </div> <div class="edg-hex" style="width: 100%;"> <input class="edge-zero"type="hidden" name="attr_edge_hex" value="0"/> <input class="hex-hider"type="hidden" name="attr_edge_max" value="7"/> <input type="checkbox" name="attr_edge_hex" value="1" /><span class="hexagon"></span> <input type="checkbox" name="attr_edge_hex" value="2" /><span class="hexagon"></span> <input type="checkbox" name="attr_edge_hex" value="3" /><span class="hexagon"></span> <input type="checkbox" name="attr_edge_hex" value="4" /><span class="hexagon"></span> <input type="checkbox" name="attr_edge_hex" value="5" /><span class="hexagon"></span> <input type="checkbox" name="attr_edge_hex" value="6" /><span class="hexagon"></span> <input type="checkbox" name="attr_edge_hex" value="7" /><span class="hexagon"></span> </div> </div> <div class="attr-col attr-col-right"> <!-- ~~:+: Magic or Resonance :+:~~ --> <input type="hidden" name="attr_display_magic" value="" /> <input type="hidden" name="attr_magic_max" value="6" /> <input type="hidden" name="attr_display_resonance" value="" /> <label data-i18n="magicres">Magic/Resonance</label> <div class="attr-und"> <div class="settings"> <div class="hide-magic"> <input type="number" name="attr_magic_base" placeholder="0" title="@{magic_base}" /><span class="tiny-span"> + </span> <input type="number" name="attr_magic_modifier" placeholder="0" title="@{magic_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_display_magic" title="@{magic}" /></span> </div> <div class="hide-resonance"> <input type="number" name="attr_resonance_base" placeholder="0" title="@{resonance_base}" /><span class="tiny-span"> + </span> <input type="number" name="attr_resonance_modifier" placeholder="0" title="@{resonance_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_display_resonance" title="@{resonance}" /></span> </div> </div> <div class="display"> <div class="hide-magic"><span name="attr_display_magic" title="@{magic}"></span></div> <div class="hide-resonance"><span name="attr_display_resonance" title="@{resonance}"></span></div> </div> </div> <!-- ~~:+: Initiative :+:~~ --> <input type="hidden" name="attr_initiative_base" value="0" /> <input type="hidden" name="attr_initiative_dice_mod" value="1" min="1" max="5" /> <input type="hidden" name="attr_initiative_dice" value="1" min="1" max="5" /> <button class="attr-ini" name="initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{header=^{initiative}}}{{base=^{initiative}}}{{dice=[[(@{initiative_base}+@{modifiers_toggle})+(1d6cf0 + (@{initiative_dice} + @{wounds_toggle} - 1)d6cf0) &{tracker}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"><span class="attr-ini red" data-i18n="initiative">Initiative</span></button> <div class="attr-und attr-ini"> <div class="settings"> <input type="number" name="attr_initiative_mod" value="0" placeholder="0" title="@{initiative_mod}" /><span class="tiny-span"> + </span> <input type="number" name="attr_initiative_dice_mod" value="0" min="0" max="4" placeholder="mod" title="@{initiative_dice_mod}" /> <span class="tiny-span"> = </span> <span name="attr_display_initiative_base"></span><span class="tiny-span"> + </span> <span name="attr_initiative_dice"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> <div class="display"> <span name="attr_display_initiative_base" title="@{display_initiative_base}"></span><span class="tiny-span"> + </span> <span name="attr_initiative_dice" title="@{initiative_dice}"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> </div> <!-- ~~:+: Astral Initative :+:~~ --> <input type="hidden" name="attr_astral_initiative_base" value="0" /> <input type="hidden" name="attr_astral_initiative_dice_mod" value="0" /> <input type="hidden" name="attr_astral_initiative_dice" value="2" max="5" /> <div class="hide-magic" style="width: 100% !important"> <button class="attr-ini" name="astral_initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{header=^{astral}}}{{base=^{initiative}}}{{dice=[[(@{astral_initiative_base}+@{modifiers_toggle})+(1d6cf0 + (@{astral_initiative_dice} + @{wounds_toggle} - 1)d6cf0) &{tracker}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"> <span class="attr-ini red init-settings" data-i18n="astralini">Astral Ini</span> <span class="attr-ini red init-display" data-i18n="astralinitiative">Astral Initiative</span> </button> <div class="attr-und attr-ini"> <div class="settings"> <input type="number" name="attr_astral_initiative_mod" value="0" placeholder="modifier" title="@{astral_initiative_mod}" /><span class="tiny-span"> + </span> <input type="number" name="attr_astral_initiative_dice_mod" value="0" min="0" max="3" placeholder="modifier" title="@{astral_initiative_dice_mod}" /> <span class="tiny-span"> = </span> <span name="attr_display_astral_initiative_base" title="@{display_astral_initiative_base}"></span><span class="tiny-span"> + </span> <span name="attr_astral_initiative_dice" title="@{astral_initiative_dice}"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> <div class="display"> <span name="attr_display_astral_initiative_base" title="@{display_astral_initiative_base}"></span><span class="tiny-span"> + </span> <span name="attr_astral_initiative_dice" title="@{astral_initiative_dice}"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> </div> </div> <!-- ~~:+: Matrix Initative :+:~~ --> <input type="hidden" name="attr_matrix_initiative_base" value="0" /> <input type="hidden" name="attr_matrix_initiative_dice_mod" value="0" /> <input type="hidden" name="attr_matrix_initiative_dice" max="5" /> <button class="attr-ini" name="matrix_initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{header=^{matrixinitiative}}}{{base=^{base}}}{{dice=[[(@{matrix_initiative_base}+@{modifiers_toggle})+(1d6cf0 + (@{matrix_initiative_dice}+@{wounds_toggle} - 1)d6cf0) &{tracker}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"> <span class="attr-ini red init-settings" data-i18n="matrixinit">Matrix AR Ini</span> <span class="attr-ini red init-display" data-i18n="matrixinitiative">Matrix AR Initiative</span> </button> <div class="attr-und attr-ini"> <div class="settings"> <input type="number" name="attr_matrix_initiative_mod" value="0" placeholder="0" title="@{matrix_initiative_mod}" /><span class="tiny-span"> + </span> <input type="number" name="attr_matrix_initiative_dice_mod" value="0" min="0" max="5" placeholder="0" title="@{matrix_dice_mod}" /> <span class="tiny-span"> = </span> <span name="attr_matrix_initiative_base" title="@{matrix_initiative_base}"></span><span class="tiny-span"> + </span> <span name="attr_matrix_initiative_dice" title="@{matrix_initiative_dice}"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> <div class="display"> <span name="attr_matrix_initiative_base" title="@{matrix_initiative_base}"></span><span class="tiny-span"> + </span> <span name="attr_matrix_initiative_dice" title="@{matrix_initiative_dice}"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> </div> <!-- ~~:+: Cold Sim VR Initative :+:~~ --> <input type="hidden" name="attr_cold_sim_initiative_base" value="0" /> <input type="hidden" name="attr_cold_sim_initiative_dice_mod" value="0" /> <input type="hidden" name="attr_cold_sim_initiative_dice" max="5" /> <button class="attr-ini" name="cold_sim_initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{header=^{coldsiminitiative}}}{{base=^{base}}}{{dice=[[(@{cold_sim_initiative_base}+@{modifiers_toggle})+(1d6cf0 + (@{cold_sim_initiative_dice}+@{wounds_toggle} - 1)d6cf0) &{tracker}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"> <span class="attr-ini red init-settings" data-i18n="coldsiminit">Cold Sim Init</span> <span class="attr-ini red init-display" data-i18n="coldsiminitiative">Cold Sim VR Initiative</span> </button> <div class="attr-und attr-ini"> <div class="settings"> <span name="attr_cold_sim_initiative_base" title="@{cold_sim_initiative_base}"></span><span class="tiny-span"> + </span> <span name="attr_cold_sim_initiative_dice" title="@{cold_sim_initiative_dice}"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> <div class="display"> <span name="attr_cold_sim_initiative_base" title="@{cold_sim_initiative_base}"></span><span class="tiny-span"> + </span> <span name="attr_cold_sim_initiative_dice" title="@{cold_sim_initiative_dice}"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> </div> <!-- ~~:+: Hot Sim VR Initative :+:~~ --> <input type="hidden" name="attr_hot_sim_initiative_base" value="0" /> <input type="hidden" name="attr_hot_sim_initiative_dice_mod" value="0" /> <input type="hidden" name="attr_hot_sim_initiative_dice" max="5" /> <button class="attr-ini" name="hot_sim_initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{header=^{hotsiminitiative}}}{{base=^{base}}}{{dice=[[(@{hot_sim_initiative_base}+@{modifiers_toggle})+(1d6cf0+ (@{hot_sim_initiative_dice}+@{wounds_toggle}-1)d6cf0) &{tracker}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}"> <span class="attr-ini red init-settings" data-i18n="hotsiminit">Hot Sim Init</span> <span class="attr-ini red init-display" data-i18n="hotsiminitiative">Hot Sim VR Initiative</span> </button> <div class="attr-und attr-ini"> <div class="settings"> <span name="attr_hot_sim_initiative_base" title="@{hot_sim_initiative_base}"></span><span class="tiny-span"> + </span> <span name="attr_hot_sim_initiative_dice" title="@{hot_sim_initiative_dice}"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> <div class="display"> <span name="attr_hot_sim_initiative_base" title="@{hot_sim_base}"></span><span class="tiny-span"> + </span> <span name="attr_hot_sim_initiative_dice" title="@{hot_sim_dice}"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> </div> <!-- ~~:+: Composure :+:~~ --> <input type="hidden" name="attr_composure" value="" /> <button type="roll" name="composure" value="@{gm_toggle} &{template:rolls}{{header=^{composure}}}{{base=^{base}}}{{dice=[[(@{composure}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}}{{wilddie=[[@{wild_die}d6]]}}"><span data-i18n="composure">Composure</span></button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_composure_modifier" placeholder="0" title="@{composure_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_composure" title="@{composure}" /></span> </div> <div class="display"> <span name="attr_composure" title="@{composure}"></span> </div> </div> <!-- ~~:+: Judge Intentions :+:~~ --> <input type="hidden" name="attr_judge_intentions" value="" /> <button type="roll" name="judge intentions" value="@{gm_toggle} &{template:rolls}{{header=^{judgeintentions}}}{{base=^{base}}}{{dice=[[(@{judge_intentions}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"> <span data-i18n="judgeintentions">Judge Intentions</span> </button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_judge_intentions_modifier" placeholder="0" title="@{judge_intentions_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_judge_intentions" title="@{judge_intentions}" /></span> </div> <div class="display"> <span name="attr_judge_intentions" title="@{judge_intentions}"></span> </div> </div> <!-- ~~:+: Memory :+:~~ --> <input type="hidden" name="attr_memory" value="" /> <button type="roll" name="memory" value="@{gm_toggle} &{template:rolls}{{header=^{memory}}}{{base=^{base}}}{{dice=[[(@{memory}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"> <span data-i18n="memory">Memory</span> </button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_memory_modifier" placeholder="0" title="@{memory_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_memory" title="@{memory}" /></span> </div> <div class="display"> <span name="attr_memory" title="@{memory}"></span> </div> </div> <!-- ~~:+: Lift & Carry :+:~~ --> <input type="hidden" name="attr_lift_carry" value="" /> <button type="roll" name="lift & carry" value="@{gm_toggle} &{template:rolls}{{header=^{liftcarry}}}{{base=^{base}}}{{dice=[[(@{lift_carry}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"> <span data-i18n="liftcarry">Lift & Carry</span> </button> <div class="attr-und"> <div class="settings"> <input type="number" name="attr_lift_carry_modifier" placeholder="0" title="@{lift_carry_modifier}" /><span class="tiny-span"> = </span> <span class="totals" name="attr_lift_carry" title="@{lift_carry}" /></span> </div> <div class="display"> <span name="attr_lift_carry" title="@{lift_carry}"></span> </div> </div> <!-- ~~:+: Walk & Run :+:~~ --> <label data-i18n="movement">Movement</label> <div class="attr-und"> <div class="settings"> <input style="width: 2em !important;" type="number" name="attr_move_speed" value="10" placeholder="10" title="@{move_speed}" /> <span class="tiny-span">/</span> <input style="width: 2em !important;" type="number" name="attr_sprint_speed" value="15" placeholder="15" title="@{sprint_speed}" /> </div> <div class="display"> <button type="roll" name="sprint" value="@{gm_toggle} &{template:rolls}{{header=^{sprint}}}{{base=^{base} @{sprint_speed}+(Athletics+Agility)}}{{dice=[[@{sprint_speed}+((@{athletics}+@{agility}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle})]] meters}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"> <span data-i18n="sprint">Sprint</span> </button> </div> </div> </div> </div> </div> </div><!-- ~~~~~~~~ End of PC Attributes~~~~~~~~ --> <div class="pc-row"> <div class="header left-header"> <div class="header htab"> <div class="triangle"></div> <input class="skills-toggle" name="attr_skills_toggle" title="@{skills_toggle}" type="radio" value="knowledge"/> <h1>Knowledge</h1> <div class="right-tri"></div> </div> <div class="header htab"> <div class="triangle"></div> <input class="skills-toggle" name="attr_skills_toggle" title="@{skills_toggle}" type="radio" value="active" checked="checked"/> <h1>Skills</h1> </div> </div> <div class="border-box skill-box"> <div class="pc-box medium-box"> <input class="skills-toggle" name="attr_skills_toggle" type="hidden" value="active"/> <div class="skills-active"> <div class="rows repeating-container"> <div class="row-long headers"> <h2 data-i18n="skill">Skill</h2> <h2 data-i18n="rtg">RTG</h2> <h2 data-i18n="mod">Mod</h2> <h2 data-i18n="attribute">Attribute</h2> </div> <div class="row-long"> <input name="attr_default_display" type="hidden" value="Agility"/> <button data-i18n="default" name="roll_default" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{default} = @{default_display} - 1}}{{dice=[[((@{default_attribute}+@{unskilled_mod}+-1)+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}">default</button><span class="text-align-center">-1</span> <input name="attr_unskilled_mod" min="0" placeholder="0" type="number" step="1" value="0" title="attr_unskilled_mod"/> <select class="attribute-select" name="attr_default_attribute" title="Skill attribute"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}" selected="selected">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select> </div> <fieldset class="repeating_skills"> <input name="attr_display_rating" type="hidden"/> <input name="attr_display_spec" type="hidden" value=""/> <input name="attr_display_expert" type="hidden" value=""/> <input name="attr_display_attribute" type="hidden" value="Agility"/> <input name="attr_dicepool" type="hidden" value="0"/> <input class="settings-flag" name="attr_flag" type="hidden" value="settings" title="undefined_flag}"/> <div class="buttons"> <button name="roll_skill" class="skill" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=@{name}}}{{dice=[[((@{rating}+@{attribute}+@{mod})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{notes}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_name"></span></button> <span class="skill-button-hider" name="attr_spec">hideme</span><button name="roll_skill" class="skill_spec" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=@{name} +2 (Spec: @{display_spec})}}{{dice=[[((@{rating}+@{attribute}+@{mod}+2)+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Spec: @{spec}\n@{notes}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_display_spec"></span></button> <span class="skill-button-hider" name="attr_expert">hideme</span><button name="roll_skill" class="skill_expert" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=@{name} +3 (Expert: @{display_expert})}}{{dice=[[((@{rating}+@{attribute}+@{mod}+3)+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Expertise: @{expert}\n@{notes}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_display_expert"></span></button> </div> <span class="text-align-center" name="attr_rating" title="@{repeating_skills_${x}_rating}"></span> <input name="attr_mod" min="0" placeholder="0" type="number" step="1" value="0" title="mod"/> <select class="attribute-select" name="attr_attribute" title="undefined_attribute"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}" selected="selected">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <select class="skill-select" name="attr_name" title="name"> <option value="Astral" data-i18n="astral">Astral</option> <option value="Athletics" data-i18n="athletics">Athletics</option> <option value="Biotech" data-i18n="biotech">Biotech</option> <option value="Close Combat" data-i18n="closecombat">Close Combat</option> <option value="Con" data-i18n="con">Con</option> <option value="Conjuring" data-i18n="conjuring">Conjuring</option> <option value="Cracking" data-i18n="cracking">Cracking</option> <option value="Electronics" data-i18n="electronics">Electronics</option> <option value="Enchanting" data-i18n="enchanting">Enchanting</option> <option value="Engineering" data-i18n="engineering">Engineering</option> <option value="Exotic Weapons" data-i18n="exoticweapon">Exotic Weapons</option> <option value="Firearms" data-i18n="firearms">Firearms</option> <option value="Influence" data-i18n="influence">Influence</option> <option value="Outdoors" data-i18n="outdoors">Outdoors</option> <option value="Perception" data-i18n="perception">Perception</option> <option value="Piloting" data-i18n="piloting">Piloting</option> <option value="Sorcery" data-i18n="sorcery">Sorcery</option> <option value="Stealth" data-i18n="stealth">Stealth</option> <option value="Tasking" data-i18n="tasking">Tasking</option> <option value="Language" data-i18n="language">Language</option> <option value="Knowledge" data-i18n="knowledge">Knowledge</option> </select> <label data-i18n-title="rating" title="rating"> <input name="attr_rating" min="0" placeholder="0" type="number" title="rating"/> </label> <label data-i18n-title="mod" title="mod"> <input name="attr_mod" min="0" placeholder="0" step="1" value="0" type="number" title="mod"/> </label> <select class="attribute-select" name="attr_attribute" title="undefined_attribute"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}" selected="selected">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select> <label data-i18n-title="specialization" title="specialization"> <span data-i18n="specialization">specialization</span> <input name="attr_spec" placeholder="specialization" type="text" title="specialization"/> </label> <label data-i18n-title="expertise" title="expertise"> <span data-i18n="expertise">Expertise</span> <input name="attr_expert" placeholder="expertise" type="text" title="expertise"/> </label> <label data-i18n-title="notes" title="notes"><span data-i18n="notes">Notes</span> <textarea name="attr_notes" value="" placeholder="Notes" title="undefined_notes}"></textarea> </label> </div> </fieldset> </div> </div> <div class="skills-knowledge"> <div class="rows repeating-container"> <div class="row-long headers"> <h2 data-i18n="knowledge">Knowledge</h2> <h2 data-i18n="type">Type</h2> </div> <fieldset class="repeating_knowledges"> <span name="attr_name"></span> <span class="center" name="attr_type"></span> <input class="settings-flag" name="attr_flag" type="hidden" value="settings" title="undefined_flag}"/> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <input type="text" name="attr_name" value="" placeholder="" title="Knowledge / Language Name" /> <select class="center" data-i18n-title="type" name="attr_type" value="active" title="skill_type"> <option data-i18n="knowledge" value="Knowledge">Knowledge</option> <option data-i18n="language" value="Language">Language</option> </select> <label data-i18n-title="notes" title="notes"><span data-i18n="notes">Notes</span> <textarea name="attr_notes" value="" placeholder="Notes" title="undefined_notes}"></textarea> </label> </div> </fieldset> </div> </div> </div> </div> </div> </div> <div class="core pc-col"><div class="pc-row"> <div class="header right-header"> <h1 data-i18n="corecombatinfo">Core Combat Info</h1> <div class="right-tri"></div> </div> <div class="border-box"> <div class="pc-box small-box core-combat"> <div class="row-long cc-arm"> <div class="armor-info"> <button type="roll" name="roll_dr" value="@{gm_toggle} &{template:rolls}{{header=@{character_name}}}{{base=^{defense} ^{rating}}}{{rating=@{armor_rating}}}"> <span class="center"><span data-i18n="dr">DR</span> <span name="attr_armor_rating"></span></span> </button> <div> </div> <button type="roll" name="roll_defense" value="@{gm_toggle} &{template:rolls}{{header=@{character_name}}}{{base=^{defense} = ^{reaction} + ^{intuition}}}{{dice=[[((@{reaction} + @{intuition})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"> <span class="center" name="defense" title="@{defense}">Defense</span> </button> <div> </div> <button type="roll" name="roll_soak" value="@{gm_toggle} &{template:rolls}{{header=@{character_name}}}{{base=^{soak} ^{damage}}}{{dice=[[((@{body})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"> <span class="center" name="soak" title="@{soak}">Soak Damage</span> </button> <div> </div> </div> <div class="armor-resists"> <h2 data-i18n="resists">Resists</h2> <span class="armor-resist" title="@{resist_chem_total}"><span class="pictos3 chem">d</span><span class="chem"> Chem </span><span class="armor-resist-value" name="attr_resist_chem_total"></span></span> <span class="armor-resist" title="@{resist_cold_total}"><span class='pictos cold'>b</span><span class="cold"> Cold </span><span class="armor-resist-value" name="attr_resist_cold_total"></span></span> <span class="armor-resist" title="@{resist_elec_total}"><span class='pictos elec'>e</span><span class="elec"> Elec </span><span class="armor-resist-value" name="attr_resist_elec_total"></span></span> <span class="armor-resist" title="@{resist_fire_total}"><span class="pictos3 fire">j</span><span class="fire"> Fire </span><span class="armor-resist-value" name="attr_resist_fire_total"></span></span> </div> </div> <div> <span> </span> </div> <div class="row-long cc-row primary-range"> <h2 data-i18n="primaryrangedweapon">Primary Ranged Weapon</h2> <h2> </h2> <h2 class="center" data-i18n="pool">Pool</h2> <h2 class="center" data-i18n="dam">Dam</h2> <h2 class="center" data-i18n="c">C</h2> <h2 class="center" data-i18n="n">N</h2> <h2 class="center" data-i18n="m">M</h2> <h2 class="center" data-i18n="f">F</h2> <h2 class="center" data-i18n="e">E</h2> </div> <div class="cc-row primary-range"> <button name="roll_range_weapon" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{primary_range_weapon}}}{{base=^{agility}}}{{dice=[[((@{primary_range_weapon_rating}+@{primary_range_weapon_spec}+@{primary_range_weapon_expert}+@{primary_range_weapon_dicepool_modifier}+@{agility})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Mode @{primary_range_weapon_mode}, Damage @{primary_range_weapon_damage}, Skill @{primary_range_weapon_skill}, Dicepool @{primary_range_weapon_dicepool}, Spec @{primary_range_weapon_spec}, Expert @{primary_range_weapon_expert}, Agility @{agility}, Wounds @{wounds_toggle}, Modifiers @{modifiers_toggle}, Edge @{edge_toggle}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_primary_range_weapon" title="@{primary_range_weapon}"></span></button> <span> </span> <span class="center" name="attr_primary_range_weapon_dicepool"></span> <span class="center" name="attr_primary_range_weapon_damage"></span> <span class="center" name="attr_primary_range_weapon_close"></span> <span class="center" name="attr_primary_range_weapon_near"></span> <span class="center" name="attr_primary_range_weapon_medium"></span> <span class="center" name="attr_primary_range_weapon_far"></span> <span class="center" name="attr_primary_range_weapon_extreme"></span> </div> <div class="row-long cc-row primary-range-row2"> <select name="attr_primary_range_weapon_mode" title="@{primary_range_weapon_mode}"> <option data-i18n="singleshot" value="SS" selected="selected">Single Shot</option> <option data-i18n="semiauto" value="SA">Semi-Auto</option> <option data-i18n="burstfire" value="BF">Burst Fire</option> <option data-i18n="fullauto" value="FA">Full Auto</option> <option data-i18n="other" value="Other">Other</option> </select> <span> </span> <!-- Ammo removal button --> <button name="act_shots_remove" type="action">4</button> <button type="action" name="act_primary_ammo" title="Shots Fired"> <img alt="small handgun icon" src="https://raw.githubusercontent.com/Roll20/roll20-character-sheets/master/Shadowrun5thEdition/images/gun.png" /><span name="attr_shots_fired"></span> </button> <button name="act_shots_add" type="action">4</button> <span> </span> <span name="attr_primary_range_weapon_ammo" title="@{primary_range_weapon_ammo}"></span> <span name="attr_primary_range_weapon_ammo_max" title="@{primary_range_weapon_ammo_max}"></span> <button class="pictos" name="act_reload" type="action">0</button> </div> <div> <span> </span> </div> <div class="row-long cc-row primary-melee"> <h2 data-i18n="primarymeleeweapon">Primary Melee Weapon</h2> <h2> </h2> <h2 class="center" data-i18n="pool">Pool</h2> <h2 class="center" data-i18n="dam">Dam</h2> <h2 class="center" data-i18n="c" title="Close 0-3">C</h2> <h2 class="center" data-i18n="n" title="Near 4-50">N</h2> <h2 class="center" data-i18n="m" title="Medium 51-250">M</h2> <h2 class="center" data-i18n="f" title="Far 251-500">F</h2> <h2 class="center" data-i18n="e" title="Extreme 500+">E</h2> </div> <div class="cc-row primary-melee"> <button name="roll_melee_weapon" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{primary_melee_weapon_weapon}}}{{base=^{agility}}}{{dice=[[((@{primary_melee_weapon_rating}+@{primary_melee_weapon_spec}+@{primary_melee_weapon_expert}+@{primary_melee_weapon_dicepool_modifier}+@{agility})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=DV @{primary_melee_weapon_damage}, Skill: @{primary_melee_weapon_skill}, Close Combat: @{Close Combat}, Rating: @{primary_melee_weapon_rating}, Spec: @{primary_melee_weapon_spec}, Expert: @{primary_melee_weapon_expert}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_primary_melee_weapon_weapon"></span></button> <span> </span> <span class="center" name="attr_primary_melee_weapon_dicepool" title="@{primary_melee_weapon_dicepool}"></span> <span class="center" name="attr_primary_melee_weapon_damage" title="@{primary_melee_weapon_damage}"></span> <span class="center" name="attr_primary_melee_weapon_close" title="@{primary_melee_weapon_close}"></span> <span class="center" name="attr_primary_melee_weapon_near" title="@{primary_melee_weapon_near}"></span> <span class="center" name="attr_primary_melee_weapon_medium" title="@{primary_melee_weapon_medium}"></span> <span class="center" name="attr_primary_melee_weapon_far" title="@{primary_melee_weapon_far}"></span> <span class="center" name="attr_primary_melee_weapon_extreme" title="@{primary_melee_weapon_extreme}"></span> </div> </div> </div> </div> <!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ START OF THE CONDITION MONITOR ROW ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ --> <div class="pc-row"> <div class="header right-header"><h1 data-i18n="conditionmonitor">Condition Monitor</h1><div class="right-tri"></div></div> <div class="border-box"> <div class="pc-box medium-box condition-box"> <input type="checkbox" class="settings-toggle" name="attr_flag_condition" checked="checked" title="Settings toggle" /><span>x</span> <div class="settings"> <label data-i18n="conditionmonitormodifiers">Condition Monitor Modifiers (P/S): </label> <input type="hidden" name="attr_physical" value="10" /> <input type="hidden" name="attr_stun" value="10" /> <input type="hidden" name="attr_physical_max" min="0" value="10" /> <input type="hidden" name="attr_stun_max" min="0" value="10" /> <input type="number" name="attr_physical_modifier" value="" placeholder="#" title="@{physical_modifier}" /><span> / </span> <input type="number" name="attr_stun_modifier" value="" placeholder="#" title="@{stun_modifier}" /><br /> <input type="hidden" name="attr_overflow" value="3" /> <label data-i18n="overflowmodifier">Overflow Modifier</label><input type="number" name="attr_overflow_modifier" value="" placeholder="#" title="@{overflow_modifier}" /><br /> <label data-i18n="paintolerance">Pain Tolerance</label> <select name="attr_pain_tolerance"> <option value="+1" data-i18n="highpaintolerance"> <option value="0" data-i18n="none" selected="selected"> <option value="-1" data-i18n="lowpaintolerance"> </select> <div class="con-footer"> <span data-i18n="painfooter">Low Pain Tolerance doubles wound modifiers and High Pain Tolerance lowers the modifier to wound modifiers by 1 per level.</span> </div> </div> <div class="display"> <div class="con-track"> <input type="hidden" name="attr_physical_damage" value="0" /> <button type="action" name="act_cond_reset_physical" data-i18n="physicaldamagetrack">Physical Damage Track</button> <div class="squares"> <input class="hex-hider" type="hidden" name="attr_physical_max" value="10" /> <input type="radio" name="attr_physical_damage" value="1" /><span></span> <input type="radio" name="attr_physical_damage" value="2" /><span></span> <input type="radio" name="attr_physical_damage" value="3" /><span></span><div>-1</div> <input type="radio" name="attr_physical_damage" value="4" /><span></span> <input type="radio" name="attr_physical_damage" value="5" /><span></span> <input type="radio" name="attr_physical_damage" value="6" /><span></span><div>-2</div> <input type="radio" name="attr_physical_damage" value="7" /><span></span> <input type="radio" name="attr_physical_damage" value="8" /><span></span> <input type="radio" name="attr_physical_damage" value="9" /><span></span><div>-3</div> <input type="radio" name="attr_physical_damage" value="10" /><span></span> <input type="radio" name="attr_physical_damage" value="11" /><span></span> <input type="radio" name="attr_physical_damage" value="12" /><span></span><div>-4</div> <input type="radio" name="attr_physical_damage" value="13" /><span></span> <input type="radio" name="attr_physical_damage" value="14" /><span></span> <input type="radio" name="attr_physical_damage" value="15" /><span></span><div>-5</div> <input type="radio" name="attr_physical_damage" value="16" /><span></span> <input type="radio" name="attr_physical_damage" value="17" /><span></span> <input type="radio" name="attr_physical_damage" value="18" /><span></span><div>-6</div> </div> <div class="con-footer" title="@{overflow}"> <label data-i18n="overflow">Overflow</label><div class="attr-und"><span name="attr_overflow"></span></div> </div> </div> <div class="con-track"> <input type="hidden" name="attr_stun_damage" value="0" /> <button type="action" name="act_cond_reset_stun" data-i18n="stundamagetrack">Stun Damage Track</button> <div class="squares"> <input class="hex-hider" type="hidden" name="attr_stun_max" value="10" /> <input type="radio" name="attr_stun_damage" value="1" /><span></span> <input type="radio" name="attr_stun_damage" value="2" /><span></span> <input type="radio" name="attr_stun_damage" value="3" /><span></span><div>-1</div> <input type="radio" name="attr_stun_damage" value="4" /><span></span> <input type="radio" name="attr_stun_damage" value="5" /><span></span> <input type="radio" name="attr_stun_damage" value="6" /><span></span><div>-2</div> <input type="radio" name="attr_stun_damage" value="7" /><span></span> <input type="radio" name="attr_stun_damage" value="8" /><span></span> <input type="radio" name="attr_stun_damage" value="9" /><span></span><div>-3</div> <input type="radio" name="attr_stun_damage" value="10" /><span></span> <input type="radio" name="attr_stun_damage" value="11" /><span></span> <input type="radio" name="attr_stun_damage" value="12" /><span></span><div>-4</div> <input type="radio" name="attr_stun_damage" value="13" /><span></span> <input type="radio" name="attr_stun_damage" value="14" /><span></span> <input type="radio" name="attr_stun_damage" value="15" /><span></span><div>-5</div> </div> <div class="con-footer"> <span data-i18n="conditionfooter">For every 3 boxes of damage on any one damage track, the character takes a -1 Dice Pool modifier on tests; these modifiers are cumulative within and across damage tracks.</span> </div> </div> </div> </div> </div> </div> <!-- ~~~~~~~~ End of Condition Monitor ~~~~~~~~ --> <div class="quality-box"> <div class="header right-header"> <div class="header htab"> <input class="tab-switch" input="input" name="attr_quality_toggle" type="radio" value="quality" checked="checked"/> <h1 data-i18n="qualities">Qualities</h1> <div class="right-tri"></div> </div> <div class="header htab"> <div class="triangle"></div> <input class="tab-switch" input="input" name="attr_quality_toggle" type="radio" value="martial"/> <h1 data-i18n="martialarts">Martial Arts</h1> <div class="right-tri"></div> </div> </div> <div class="border-box"> <div class="pc-box medium-box"> <input class="tab-switch" input="input" name="attr_quality_toggle" type="hidden" value="quality"/> <div class="quality"> <div class="row-long headers"> <h2 data-i18n="quality">Quality</h2> <h2 data-i18n="rtg">RTG</h2> <h2 data-i18n="type">Type</h2> <h2> </h2> </div> <div class="rows repeating-container"> <fieldset class="repeating_quality"> <span name="attr_quality"></span> <span class="center" name="attr_rating"></span> <span class="center" name="attr_type"></span> <button class="pictos" name="quality_chat" type="roll" value="@{gm_toggle} &{template:rolls}{{header=@{quality}}}{{desc=@{notes}}}">w</button> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <input name="attr_quality" placeholder="quality name" title="@{repeating_quality_${x}_quality}" type="text"/> <label data-i18n-title="rating" title="@{repeating_quality_${x}_rating}"> <input name="attr_rating" min="" placeholder="-" type="number" title="@{repeating_quality_${x}_rating}"/> </label> <select name="attr_type" title="@{repeating_quality_${x}_type}" value="p"> <option data-i18n="p" value="P" selected="selected">P</option> <option data-i18n="n" value="N">N</option> </select> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_quality_${x}_notes}" type="text" value=""></textarea> </label> <h3 data-i18n="modifications">modifications</h3> <label data-i18n-title="modifications" title="modifications"> <textarea name="attr_modifications" placeholder="Mechanic: +/- mod" title="@{repeating_quality_${x}_modifications}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> <div class="martial"> <div class="row-long headers"> <h2 data-i18n="technique">Technique</h2> <h2 data-i18n="style">Style</h2> </div> <div class="rows repeating-container"> <fieldset class="repeating_martial"><span name="attr_technique"></span><span class="center" name="attr_style"></span> <button class="pictos" name="technique_chat" type="roll" value="@{gm_toggle} &{template:rolls}{{header=@{character_name}}}{{base=@{style} - @{technique}}}{{desc=@{notes}}}">w</button> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <input name="attr_technique" placeholder="technique name" title="@{repeating_martial_${x}_technique}" type="text"/> <input name="attr_style" placeholder="style name" title="@{repeating_martial_${x}_style}" type="text"/> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_martial_${x}_notes}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> </div> </div> </div> </div> <div class="arms pc-col"> <div class="pc-row weapons"> <div class="header right-header"> <h1 data-i18n="weapons">Weapons</h1> <div class="right-tri"></div> </div> <div class="header right-header"> <div class="header htab"> <div class="triangle"></div> <input class="tab-switch" name="attr_weapon_type_toggle" type="radio" value="range" checked="checked"/> <h1 data-i18n="ranged">Ranged</h1> <div class="right-tri"></div> </div> <div class="header htab"> <div class="triangle"></div> <input class="tab-switch" name="attr_weapon_type_toggle" type="radio" value="melee"/> <h1 data-i18n="melee">Melee</h1> <div class="right-tri"></div> </div> </div> <div class="border-box"> <div class="pc-box medium-box"> <input class="tab-switch" name="attr_weapon_type_toggle" type="hidden" value="range"/> <div class="rows repeating-container weapon-range"> <div class="row-long headers"> <h2 data-i18n="weapon">Weapon</h2> <h2 data-i18n="pool">Pool</h2> <h2 data-i18n="dam">Dam</h2> <h2 data-i18n="c">C</h2> <h2 data-i18n="n">N</h2> <h2 data-i18n="m">M</h2> <h2 data-i18n="f">F</h2> <h2 data-i18n="e">E</h2> <h2 data-i18n="mode">Mode</h2> <h2 data-i18n="ammo">Ammo</h2> </div> <fieldset class="repeating_range"> <input title="@{repeating_range_${x}_rating}" name="attr_rating" type="hidden" value="0" /> <input name="attr_skill" type="hidden" value=""/> <input class="flag-primary" name="attr_primary" type="hidden" value=""/> <input class="flag-primary" name="attr_additional" type="hidden" value=""/> <button name="roll_range_weapon" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{weapon}}}{{base=^{agility}}}{{dice=[[((@{rating}+@{spec}+@{expert}+@{dicepool_modifier}+@{agility})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Mode @{mode}, Damage @{damage}, Skill @{skill}, Dicepool @{dicepool}, Spec @{spec}, Expert @{expert}, Agility @{agility}, Wounds @{wounds_toggle}, Modifiers @{modifiers_toggle}, Edge @{edge_toggle}, Notes @{notes}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_weapon"></span></button> <span class="center" name="attr_dicepool"></span> <span class="center" name="attr_damage"></span> <span class="center" name="attr_close"></span> <span class="center" name="attr_near"></span> <span class="center" name="attr_medium"></span> <span class="center" name="attr_far"></span> <span class="center" name="attr_extreme"></span> <select name="attr_mode" title="@{mode}" value="BF"> <option data-i18n="ss" value="SS">SS</option> <option data-i18n="sa" value="SA">SA</option> <option data-i18n="bf" value="BF">BF</option> <option data-i18n="fa" value="FA">FA</option> <option data-i18n="other" value="Other">Other</option> </select> <span class="center" name="attr_ammo"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="weapon" title="weapon"> <input name="attr_weapon" placeholder="Ares Predator" title="@{repeating_range_${x}_weapon}" type="text" value=""/> </label> <label data-i18n-title="pool" title="pool"> <input name="attr_dicepool" placeholder="" title="@{repeating_range_${x}_dicepool}" type="text" value=""/> </label> <label data-i18n-title="dam" title="dam"> <input name="attr_damage" placeholder="9P" title="@{repeating_range_${x}_damage}" type="text" value=""/> </label> <label data-i18n-title="c" title="Close"> <input name="attr_close" placeholder="-" title="@{repeating_range_${x}_close}" type="text" value=""/> </label> <label data-i18n-title="n" title="Near"> <input name="attr_near" placeholder="-" title="@{repeating_range_${x}_near}" type="text" value=""/> </label> <label data-i18n-title="m" title="Medium"> <input name="attr_medium" placeholder="-" title="@{repeating_range_${x}_medium}" type="text" value=""/> </label> <label data-i18n-title="f" title="Far"> <input name="attr_far" placeholder="-" title="@{repeating_range_${x}_far}" type="text" value=""/> </label> <label data-i18n-title="e" title="Extreme"> <input name="attr_extreme" placeholder="-" title="@{repeating_range_${x}_extreme}" type="text" value=""/> </label> <select name="attr_mode" title="@{mode}" value="SS"> <option data-i18n="ss" value="SS">SS</option> <option data-i18n="sa" value="SA">SA</option> <option data-i18n="bf" value="BF">BF</option> <option data-i18n="fa" value="FA">FA</option> <option data-i18n="other" value="Other">Other</option> </select> <label data-i18n-title="ammo" title="ammo"> <input name="attr_ammo" placeholder="15" title="@{repeating_range_${x}_ammo}" type="number" value=""/> </label> <span></span> <span></span> <div class="row"> <h3 data-i18n="firingmodes">Firing Modes</h3> <label data-i18n-title="modeoptions" title="Mode Options"> <input name="attr_firing_modes" placeholder="SA/BF/FA" type="text" title="@{repeating_range_${x}_firing_modes}}"/> </label> <h3 data-i18n="primary">primary</h3> <label data-i18n-title="primary" title="Primary"> <input name="attr_primary" type="checkbox" title="@{repeating_range_${x}_primary}" value="primary"/> </label> <h3 data-i18n="modifier">modifier</h3> <label data-i18n-title="modifier" title="modifier"> <input name="attr_dicepool_modifier" title="@{repeating_range_${x}_dicepool_modifier}" placeholder='0' type="number"/> </label> </div> <div class="row"> <h3 data-i18n="skill">skill</h3> <select name="attr_skill" title="@{repeating_range_${x}_skill}" value="@{firearms}"> <option data-i18n="firearms" value="Firearms" selected="selected">Firearms</option> <option data-i18n="exoticweapons" value="Exotic Weapons">Exotic Weapons</option> <option data-i18n="athletics" value="Athletics">Athletics</option> </select> <h3 data-i18n="specialization">specialization</h3> <label data-i18n-title="specialization" title="specialization"> <input name="attr_spec" value="2" title="@{repeating_range_${x}_spec}" type="checkbox"/> </label> <h3 data-i18n="expertise">expertise</h3> <label data-i18n-title="expertise" title="expertise"> <input name="attr_expert" value="3" title="@{repeating_range_${x}_expert}" type="checkbox"/> </label> <input name="attr_skill" type="hidden" value=""/> <input name="attr_rating" type="hidden" value=""/> <div class="exotic-warning"><i data-i18n="exoticnote">Exotic weapons are not linked to a skill. Use Modifier input to set dicepool.</i></div> </div> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_range_${x}_notes}" type="text" value=""></textarea> </label> </div> </fieldset> </div> <div class="rows repeating-container weapon-melee"> <div class="row-long headers"> <h2 data-i18n="weapon">Weapon</h2> <h2 data-i18n="pool">Pool</h2> <h2 data-i18n="dam">Dam</h2> <h2 data-i18n="c" title="Close 0-3">C</h2> <h2 data-i18n="n" title="Near 4-50">N</h2> <h2 data-i18n="m" title="Medium 51-250">M</h2> <h2 data-i18n="f" title="Far 251-500">F</h2> <h2 data-i18n="e" title="Extreme 500+">E</h2> </div> <fieldset class="repeating_melee"> <input title="@{repeating_melee_${x}_rating}" name="attr_rating" type="hidden" value="0" /> <input name="attr_skill" type="hidden" value=""/> <input class="flag-primary" name="attr_primary" type="hidden" value=""/> <input class="flag-primary" name="attr_additional" type="hidden" value=""/> <button name="roll_melee_weapon" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{weapon}}}{{base=^{agility}}}{{dice=[[((@{rating}+@{spec}+@{expert}+@{dicepool_modifier}+@{agility})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=DV @{damage}, Skill: @{skill}, Close Combat: @{Close Combat}, Rating: @{rating}, Spec: @{spec}, Expert: @{expert}, Notes: @{notes}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_weapon"></span></button> <span class="center" name="attr_dicepool"></span> <span class="center" name="attr_damage"></span> <span class="center" name="attr_close"></span> <span class="center" name="attr_near"></span> <span class="center" name="attr_medium"></span> <span class="center" name="attr_far"></span> <span class="center" name="attr_extreme"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="weapon" title="weapon"> <input name="attr_weapon" placeholder="Katana" title="@{repeating_melee_${x}_weapon}" type="text" value=""/> </label> <label data-i18n-title="pool" title="pool"> <input name="attr_dicepool" placeholder="0d6" title="@{repeating_melee_${x}_dicepool}" type="text" value=""/> </label> <label data-i18n-title="dam" title="dam"> <input name="attr_damage" placeholder="5P" title="@{repeating_melee_${x}_damage}" type="text" value=""/> </label> <label data-i18n-title="close" title="Close 0-3"> <input name="attr_close" placeholder="-" title="@{repeating_melee_${x}_close}" type="text" value=""/> </label> <label data-i18n-title="near" title="Near 4-50"> <input name="attr_near" placeholder="-" title="@{repeating_melee_${x}_near}" type="text" value=""/> </label> <label data-i18n-title="medium" title="Medium 51-250"> <input name="attr_medium" placeholder="-" title="@{repeating_melee_${x}_medium}" type="text" value=""/> </label> <label data-i18n-title="far" title="Far 251-500"> <input name="attr_far" placeholder="-" title="@{repeating_melee_${x}_far}" type="text" value=""/> </label> <label data-i18n-title="extreme" title="Extreme 500+"> <input name="attr_extreme" placeholder="-" title="@{repeating_melee_${x}_extreme}" type="text" value=""/> </label> <div class="row"> <h3 data-i18n="skill">skill</h3> <select name="attr_skill" title="@{repeating_melee_${x}_skill}"> <option data-i18n="closecombat" value="Close Combat" selected="selected">Close Combat</option> <option data-i18n="athletics" value="Athletics">Athletics</option> <option data-i18n="exoticmelee" value="0">Exotic Weapons</option> </select> <h3 data-i18n="specialization">specialization</h3> <label data-i18n-title="specialization" title="specialization"> <input name="attr_spec" value="2" title="@{repeating_melee_${x}_spec}" type="checkbox"/> </label> <h3 data-i18n="expertise">expertise</h3> <label data-i18n-title="expertise" title="expertise"> <input name="attr_expert" value="3" title="@{repeating_melee_${x}_expert}" type="checkbox"/> </label> <div class="exotic-warning"><i data-i18n="exoticnote">Exotic weapons are not linked to a skill. Use Modifier input to set dicepool.</i></div> </div> <div class="row"> <h3 data-i18n="primary">primary</h3> <label data-i18n-title="primary" title="Primary"> <input name="attr_primary" type="checkbox" title="@{repeating_melee_${x}_primary}" value="primary"/> </label> <h3 data-i18n="modifier">modifier</h3> <label data-i18n-title="modifier" title="modifier"> <input name="attr_dicepool_modifier" title="@{repeating_melee_${x}_dicepool_modifier}" placeholder='0' type="number"/> </label> </div> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_melee_${x}_notes}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> </div> </div> <div class="pc-row armor"> <div class="header right-header"> <h1 data-i18n="armor">Armor</h1> <div class="right-tri"></div> </div> <div class="border-box"> <div class="pc-box medium-box"> <div class="rows repeating-container"> <div class="row-long headers"> <h2 data-i18n="armor">Armor</h2> <h2 data-i18n="dr">DR</h2> <h2 data-i18n="chem">Chem</h2> <h2 data-i18n="cold">Cold</h2> <h2 data-i18n="elec">Elec</h2> <h2 data-i18n="fire">Fire</h2> </div> <fieldset class="repeating_armor"> <input class="flag-primary" name="attr_primary" type="hidden" value=""/> <span name="attr_name"></span> <span class="center" name="attr_rating"></span> <span class="center" name="attr_chem"></span></button> <span class="center" name="attr_cold"></span></button> <span class="center" name="attr_elec"></span></button> <span class="center" name="attr_fire"></span></button> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="name" title="name"> <input name="attr_name" placeholder="Armor Jacket" title="@{repeating_armor_${x}_name}" type="text" value=""/> </label> <label data-i18n-title="rating" title="rating"> <input name="attr_rating" placeholder="12" title="@{repeating_armor_${x}_rating}" type="number" value=""/> </label> <label data-i18n-title="chemical" title="chemical"> <input name="attr_chem" placeholder="0" title="@{repeating_armor_${x}_chem}" type="number" value="0" min="0" step="1"/> </label> <label data-i18n-title="cold" title="cold"> <input name="attr_cold" placeholder="0" title="@{repeating_armor_${x}_cold}" type="number" value="0" min="0" step="1"/> </label> <label data-i18n-title="elec" title="elec"> <input name="attr_elec" placeholder="0" title="@{repeating_armor_${x}_elec}" type="number" value="0" min="0" step="1"/> </label> <label data-i18n-title="fire" title="fire"> <input name="attr_fire" placeholder="0" title="@{repeating_armor_${x}_fire}" type="number" value="0" min="0" step="1"/> </label> <div class="row"> <h3 data-i18n="primary">primary</h3> <label data-i18n-title="primary" title="Primary"> <input name="attr_primary" type="checkbox" title="@{repeating_armor_${x}_primary}" value="primary"/> </label> <h3 data-i18n="cumulative">cumulative</h3> <label data-i18n-title="cumulative" title="Cumulative"> <input name="attr_cumulative" type="checkbox" title="@{repeating_armor_${x}_cumulative}" value="cumulative"/> </label> </div> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_armor_${x}_notes}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> </div> </div> </div> <div class="augs pc-col"> <div class="pc-row"> <div class="header right-header"> <h1 data-i18n="augmentations">Augmentations</h1> <div class="right-tri"></div> </div> <div class="border-box"> <div class="pc-box medium-box"> <div class="row-long headers"> <h2 data-i18n="augmentations">Augmentations</h2> <h2 data-i18n="rating">Rating</h2> <h2 data-i18n="esscost">Ess Cost</h2> </div> <div class="rows repeating-container"> <fieldset class="repeating_augmentations"><span name="attr_augmentation"></span><span class="center" name="attr_rating"></span><span class="center" name="attr_essence_cost"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="Augmentations" title="Augmentations"> <input name="attr_augmentation" placeholder="name" title="@{repeating_augmentations_${x}_augmentation}" type="text" value=""/> </label> <label data-i18n-title="Rating" title="Rating"> <input name="attr_rating" placeholder="0" title="@{repeating_augmentations_${x}_rating}" type="number" value=""/> </label> <label data-i18n-title="Essence" title="Essence"> <input class="augmentation_essence" name="attr_essence_cost" placeholder="0" title="@{repeating_augmentations_${x}_essence_cost}" type="number" step='0.01' value=""/> </label> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_augmentations_${x}_notes}" type="text" value=""></textarea> </label> <h3 data-i18n="modifications">modifications</h3> <label data-i18n-title="modifications" title="modifications"> <textarea name="attr_modifications" placeholder="Mechanic: +/- mod" title="@{repeating_augmentations_${x}_modifications}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> </div> </div> </div> <div class="gear pc-col"> <div class="pc-row"> <div class="header right-header"> <h1 data-i18n="gear">Gear</h1> <div class="right-tri"></div> </div> <div class="border-box"> <div class="pc-box medium-box"> <div class="row-long headers"> <h2 data-i18n="item">Item</h2> <h2 data-i18n="rating">Rating</h2> <h2 data-i18n="quantity">Quantity</h2> </div> <div class="rows repeating-container"> <fieldset class="repeating_items"><span name="attr_item"></span><span class="center" name="attr_rating"></span><span class="center" name="attr_quantity"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="item" title="item"> <input name="attr_item" placeholder="Jammer" title="@{repeating_items_${x}_item}" type="text" value=""/> </label> <label data-i18n-title="rating" title="rating"> <input name="attr_rating" placeholder="3" title="@{repeating_items_${x}_rating}" type="text" value=""/> </label> <label data-i18n-title="quantity" title="quantity"> <input name="attr_quantity" placeholder="x3" title="@{repeating_items_${x}_quantity}" type="text" value=""/> </label> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_items_${x}_notes}" type="text" value=""></textarea> </label> <h3 data-i18n="modifications">modifications</h3> <label data-i18n-title="modifications" title="modifications"> <textarea name="attr_modifications" placeholder="Attribute: +/- mod" title="@{repeating_items_${x}_modifications}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> </div> </div> </div> <div class="magic pc-col"> <div class="pc-row spell-box"> <div class="header right-header"> <h1 data-i18n="magic">Magic</h1> <div class="right-tri"></div> </div> <div class="header right-header"> <div class="header htab"> <div class="triangle"></div> <input class="magic-toggle" name="attr_magic_toggle" title="@{magic_toggle}" type="radio" value="spells" checked="checked"/> <h1 data-i18n="spells">Spells</h1> <div class="right-tri"></div> </div> <div class="header htab"> <div class="triangle"></div> <input class="magic-toggle" name="attr_magic_toggle" title="@{magic_toggle}" type="radio" value="preps"/> <h1 data-i18n="prep">Prep...</h1> <div class="right-tri"></div> </div> <div class="header htab"> <div class="triangle"></div> <input class="magic-toggle" name="attr_magic_toggle" title="@{magic_toggle}" type="radio" value="rituals"/> <h1 data-i18n="rituals">Rituals</h1> <div class="right-tri"></div> </div> </div> <div class="border-box"> <div class="pc-box medium-box"> <input class="magic-toggle" name="attr_magic_toggle" type="hidden" value="spells"/> <div class="magic-spells spellsFormulas"> <div class="row-long"> <button data-i18n="drain" name="roll_drain" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{spell} ^{drain}}}{{dice=[[((@{spell_drain_attribute_1}+@{spell_drain_attribute_2}+@{spell_drain_modifier})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"></button> <select class="attribute-select" name="attr_spell_drain_attribute_1" title="@{spell_drain_attribute_1}"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}">Willpower</option> <option data-i18n="logic" value="@{logic}" selected="selected">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select><span>+</span> <select class="attribute-select" name="attr_spell_drain_attribute_2" title="@{spell_drain_attribute_2}"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}" selected="selected">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select> <h3 data-i18n="modifier">modifier</h3> <label data-i18n-title="modifier" title="modifier"> <input name="attr_spell_drain_modifier" title="@{spell_drain_modifier}" type="number" value="0"/> </label> </div> <div class="rows repeating-container"> <div class="row-long headers"> <h2 data-i18n="spell">Spell</h2> <h2 data-i18n="type">Type</h2> <h2 data-i18n="range">Range</h2> <h2 data-i18n="duration">Duration</h2> <h2 data-i18n="drain">Drain</h2> </div> <fieldset class="repeating_spell"> <input name="attr_dicepool" type="hidden" value="0"/> <button name="roll_spell" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{name}}}{{base=@{category} ^{magic}}}{{effecttype=@{effect_type}}}{{dice=[[((@{skill}+@{magic}+@{dicepool_modifier}+@{specialization}+@{expertise})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{ampup=[[?{Amp Up|0|1|2|3|4|5|6|7|8|9|10}]]}}{{increasearea=[[?{Increase Area|0m,0|2m,1|4m,2|6m,3|8m,4|10m,5|12m,5|14m,6|16m,8|18m,9|20m,10}*2]]}}{{drain=[[?{Amp Up}*2+?{Increase Area}+(@{drain})]]}}{{desc=@{notes}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_name"></span></button> <span class="center" name="attr_type"></span> <span class="center" name="attr_range"></span> <span class="center" name="attr_duration"></span> <span class="center" name="attr_drain"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox" checked="checked"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="name" title="Name"> <input name="attr_name" placeholder="Fireball" title="@{repeating_spell_${x}_name}" type="text"/> </label> <select name="attr_type" title="@{repeating_spell_${x}_type}" value="physical"> <option data-i18n="mana" value="Mana">mana</option> <option data-i18n="physical" value="Physical" selected="selected">physical</option> </select> <select name="attr_range" title="@{repeating_spell_${x}_range}" value="los"> <option data-i18n="los" value="LOS" selected="selected">los</option> <option data-i18n="los (a)" value="LOS (A)">los (a)</option> <option data-i18n="special" value="Special">special</option> <option data-i18n="t" value="T">t</option> <option data-i18n="t (a)" value="T (A)">t (a)</option> </select> <select name="attr_duration" title="@{repeating_spell_${x}_duration}" value="instant"> <option data-i18n="instant" value="Instant" selected="selected">Instant</option> <option data-i18n="sustained" value="Sustained">Sustained</option> <option data-i18n="limited" value="Limited">Limited</option> <option data-i18n="permanent" value="Permanent">Permanent</option> </select> <label data-i18n-title="drain" title="Drain"> <input name="attr_drain" placeholder="1" title="@{repeating_spell_${x}_drain}" type="number"/> </label> <div class="row"> <h3 data-i18n="category">Category</h3> <select name="attr_category" title="@{repeating_spell_${x}_category}" value="combat"> <option data-i18n="combat" value="Combat" selected="selected">combat</option> <option data-i18n="detection" value="Detection">detection</option> <option data-i18n="health" value="Health">health</option> <option data-i18n="illusion" value="Illusion">illusion</option> <option data-i18n="manipulation" value="Manipulation">manipulation</option> </select> <h3 data-i18n="effecttype">Effect Type</h3> <select name="attr_effect_type" title="@{repeating_spell_${x}_effect_type}" value=""> <option data-i18n="none" value="" selected="selected">None</option> <option data-i18n="directcombat" value="Direct Combat">Direct Combat</option> <option data-i18n="directcombatarea" value="Direct Combat">Direct Combat, Area</option> <option data-i18n="indirectcombat" value="Indirect Combat">Indirect Combat</option> <option data-i18n="indirectcombatarea" value="Indirect Combat">Indirect Combat, Area</option> <option data-i18n="singlesense" value="Single-Sense">Single-Sense</option> <option data-i18n="multisense" value="Multi-Sense">Multi-Sense</option> </select> </div> <div class="row"> <h3 data-i18n="skill">Skill</h3> <select name="attr_skill" title="@{repeating_spell_${x}_skill}" value="@{spellcasting}"> <option data-i18n="conjuring" value="@{conjuring}" selected="selected">Conjuring</option> <option data-i18n="enchanting" value="@{enchanting}">Enchanting</option> <option data-i18n="sorcery" value="@{sorcery}">Sorcery</option> </select> <h3 data-i18n="specialization">Specialization</h3> <label data-i18n-title="specialization" title="Specialization"> <input name="attr_specialization" title="@{repeating_spell_${x}_specialization}" type="checkbox" value="2"/> </label> <h3 data-i18n="expertise">Expertise</h3> <label data-i18n-title="expertise" title="Expertise"> <input name="attr_expertise" title="@{repeating_spell_${x}_expertise}" type="checkbox" value="3"/> </label> </div> <div class="row"> <h3 data-i18n="modifierdice">modifier dice</h3> <label data-i18n-title="modifierdice" title="modifier dice"> <input name="attr_dicepool_modifier" placeholder="0" title="@{repeating_spell_${x}_dicepool_modifier}"/> </label> </div> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_spell_${x}_notes}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> <div class="magic-preps spellsFormulas"> <div class="row-long"> <button data-i18n="drain" name="roll_drain" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{preparation} ^{drain}}}{{dice=[[((@{spell_drain_attribute_1}+@{spell_drain_attribute_2}+@{spell_drain_modifier})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"></button> <select class="attribute-select" name="attr_spell_drain_attribute_1" title="@{spell_drain_attribute_1}"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}">Willpower</option> <option data-i18n="logic" value="@{logic}" selected="selected">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select><span>+</span> <select class="attribute-select" name="attr_spell_drain_attribute_2" title="@{spell_drain_attribute_2}"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}" selected="selected">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select> <h3 data-i18n="modifier">modifier</h3> <label data-i18n-title="modifier" title="modifier"> <input name="attr_spell_drain_modifier" title="@{spell_drain_modifier}" type="number" value="0"/> </label> </div> <div class="rows repeating-container prepared-preparations"> <div class="row-long headers"> <h3 data-i18n="preparation">preparation</h3> <h3 data-i18n="magic">magic</h3> <h3 data-i18n="potency">potency</h3> <h3 data-i18n="trigger">trigger</h3> </div> <fieldset class="repeating_preparations"> <button name="roll_preparation" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{name}}}{{base=^{base}}}{{dice=[[((@{magic}+@{potency}+@{expert}+@{spec})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{notes}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_name"></span></button> <span class="center" name="attr_magic"></span> <span class="center" name="attr_potency"></span> <span class="center" name="attr_trigger"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="name" title="name"> <input name="attr_name" placeholder="Name" title="@{repeating_preparations_${x}_name}" type="text" value=""/> </label> <label data-i18n-title="magic" title="magic"> <input name="attr_magic" placeholder="1" title="@{repeating_preparations_${x}_magic}" type="number" value=""/> </label> <label data-i18n-title="potency" title="potency"> <input name="attr_potency" placeholder="1" title="@{repeating_preparations_${x}_potency}" type="number" value=""/> </label> <select name="attr_trigger" title="@{repeating_preparations_${x}_trigger}" value="Command"> <optgroup label="Trigger">Trigger <option data-i18n="command" value="Command">command</option> <option data-i18n="contact" value="Contact" selected="selected">contact</option> <option data-i18n="time" value="Time">time</option> <option data-i18n="special" value="Special">special</option> </optgroup> </select> <div class="row"> <h3 data-i18n="specialization">Specialization</h3> <label data-i18n-title="specialization" title="Specialization"> <input name="attr_spec" title="@{repeating_preparations_${x}_specialization}" type="checkbox" value="2"/> </label> <h3 data-i18n="expertise">Expertise</h3> <label data-i18n-title="expertise" title="Expertise"> <input name="attr_expert" title="@{repeating_preparations_${x}_expertise}" type="checkbox" value="3"/> </label> </div> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_preparations_${x}_notes}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> <div class="magic-rituals"> <div class="row-long"> <button data-i18n="drain" name="roll_drain" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{ritual} ^{drain}}}{{dice=[[((@{spell_drain_attribute_1}+@{spell_drain_attribute_2}+@{spell_drain_modifier})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"></button> <select class="attribute-select" name="attr_spell_drain_attribute_1" title="@{spell_drain_attribute_1}"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}">Willpower</option> <option data-i18n="logic" value="@{logic}" selected="selected">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select><span>+</span> <select class="attribute-select" name="attr_spell_drain_attribute_2" title="@{spell_drain_attribute_2}"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}" selected="selected">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select> <h3 data-i18n="modifier">modifier</h3> <label data-i18n-title="modifier" title="modifier"> <input name="attr_spell_drain_modifier" title="@{spell_drain_modifier}" type="number" value="0"/> </label> </div> <div class="rows repeating-container"> <div class="row-long headers"> <h2 data-i18n="ritual">Ritual</h2> <h2 class="center" data-i18n="threshold">Threshold</h2> </div> <fieldset class="repeating_ritual"> <input name="attr_dicepool" type="hidden" value="0"/> <button name="roll_ritual" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{name}}}{{base=Sorcery + Magic + Teamwork Hits}}{{dice=[[((@{skill}+@{magic}+@{spec}+@{expert}+@{dicepool_modifier}+?{Teamwork test hits?|})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Threshold: @{threshold}, Teamwork Test Hits: ?{Teamwork test hits?|}\nNotes:@{notes}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_name"></span></button> <span class="center" name="attr_threshold"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="name" title="name"> <input name="attr_name" placeholder="Ritual Name" title="@{@{repeating_undefined_${x}_name}" type="text"/> </label> <label data-i18n-title="threshold" title="threshold"> <input name="attr_threshold" title="@{@{repeating_ritual_${x}_threshold}" type="number" value="1" step="1"/> </label> <div class="row"> <input type="hidden" name="attr_skill" value="@{sorcery}"> <h3 data-i18n="specialization">Specialization</h3> <label data-i18n-title="specialization" title="specialization"> <input name="attr_spec" title="@{@{repeating_ritual_${x}_spec}" type="checkbox" value="2"/> </label> <h3 data-i18n="expertise">Expertise</h3> <label data-i18n-title="expertise" title="expertise"> <input name="attr_expert" title="@{@{repeating_ritual_${x}_expert}" type="checkbox" value="3"/> </label> <h3 data-i18n="mod">mod</h3> <label data-i18n-title="modifier" title="modifier"> <input name="attr_dicepool_modifier" title="@{@{repeating_ritual_${x}_dicepool_modifier}" type="number"/> </label> </div> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_ritual_${x}_notes}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> </div> </div> </div> <div class="pc-row powers-box"> <div class="header right-header"> <div class="header htab"> <div class="triangle"></div> <input class="powers-toggle" name="attr_powers_toggle" title="@{powers_toggle}" type="radio" value="adept" checked="checked"/> <h1 data-i18n="adept">Adept</h1> <div class="right-tri"></div> </div> <div class="header htab"> <div class="triangle"></div> <input class="powers-toggle" name="attr_powers_toggle" title="@{powers_toggle}" type="radio" value="conjuring"/> <h1 data-i18n="conjuring">Conjuring</h1> <div class="right-tri"></div> </div> <div class="header htab"> <div class="triangle"></div> <input class="powers-toggle" name="attr_powers_toggle" title="@{powers_toggle}" type="radio" value="meta"/> <h1 data-i18n="meta">Meta</h1> <div class="right-tri"></div> </div> </div> <div class="border-box"> <div class="pc-box medium-box"> <input class="powers-toggle" name="attr_powers_toggle" type="hidden" value="adept"/> <div class="powers-adept"> <div class="row-long"> <button data-i18n="drain" name="roll_drain" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{adept} ^{power} ^{drain}}}{{dice=[[((@{adept_drain_attribute_1}+@{adept_drain_attribute_2}+@{adept_drain_modifier})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"></button> <select class="attribute-select" name="attr_adept_drain_attribute_1" title="@{adept_drain_attribute_1}"> <option data-i18n="body" value="@{body}" selected="selected">Body</option> <option data-i18n="agility" value="@{agility}">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select><span>+</span> <select class="attribute-select" name="attr_adept_drain_attribute_2" title="@{adept_drain_attribute_2}"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}" selected="selected">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select> <h3 data-i18n="modifier">modifier</h3> <label data-i18n-title="modifier" title="modifier"> <input name="attr_adept_drain_modifier" title="@{adept_drain_modifier}" type="number" value="0"/> </label> </div> <div class="row-long headers"> <h2 data-i18n="name">Power</h2> <h2 class="center" data-i18n="level">Level</h2> <h2 class="center" data-i18n="act">Act</h2> </div> <div class="rows repeating-container powers"> <fieldset class="repeating_powers"> <span name="attr_name"></span> <span class="center" name="attr_rating"></span> <span class="center" name="attr_activation"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="name" title="name"> <input name="attr_name" placeholder="name" title="@{repeating_powers_${x}_name}" type="text" value=""/> </label> <label data-i18n-title="rating" title="rating"> <input name="attr_rating" placeholder="rating" title="@{repeating_powers_${x}_rating}" type="number" value=""/> </label> <label data-i18n-title="activation" title="activation"> <select class="attribute-select" name="attr_activation" title="@{repeating_powers_${x}_activation}"> <option data-i18n="major" value="Major">Major</option> <option data-i18n="minor" value="Minor">Minor</option> <option data-i18n="passive" value="Passive">Passive</option> </select> </label> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_powers_${x}_notes}" type="text" value=""></textarea> </label> <h3 data-i18n="modifications">modifications</h3> <label data-i18n-title="modifications" title="modifications"> <textarea name="attr_modifications" placeholder="Attribute: +/- mod" title="@{repeating_items_${x}_modifications}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> <div class="powers-conjuring"> <div class="row-long"> <button data-i18n="drain" name="roll_drain" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{conjuring} ^{drain}}}{{dice=[[((@{conjuring_drain_attribute_1}+@{conjuring_drain_attribute_2}+@{conjuring_drain_modifier})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}"></button> <select class="attribute-select" name="attr_conjuring_drain_attribute_1" title="@{conjuring_drain_attribute_1}"> <option data-i18n="body" value="@{body}" selected="selected">Body</option> <option data-i18n="agility" value="@{agility}">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select><span>+</span> <select class="attribute-select" name="attr_conjuring_drain_attribute_2" title="@{conjuring_drain_attribute_2}"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}" selected="selected">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select> <h3 data-i18n="modifier">modifier</h3> <label data-i18n-title="modifier" title="modifier"> <input name="attr_conjuring_drain_modifier" title="@{conjuring_drain_modifier}" type="number" value="0"/> </label> </div> <div class="row-long headers"> <h2 data-i18n="spirit">Spirit</h2> <h2 class="center" data-i18n="force">Force</h2> </div> <div class="rows repeating-container conjuration"> <fieldset class="repeating_conjurations"> <button name="roll_conjuring" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{conjuring} @{spirit}\nForce @{force}}}{{dice=[[((@{conjuring}+@{magic}+@{dicepool_modifier}+@{spec}+@{expert})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{notes}}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_spirit"></span></button> <span class="center" name="attr_force"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="spirit" title="spirit"> <input name="attr_spirit" placeholder="spirit" title="@{repeating_conjurations_${x}_spirit}" type="text" value=""/> </label> <label data-i18n-title="force" title="force"> <input name="attr_force" placeholder="force" title="@{repeating_conjurations_${x}_force}" type="number" value=""/> </label> <div class="row"> <input type="hidden" name="attr_skill" value="@{conjuring}"> <h3 data-i18n="specialization">Specialization</h3> <label data-i18n-title="specialization" title="specialization"> <input name="attr_spec" title="@{repeating_conjurations_${x}_spec}" type="checkbox" value="2"/> </label> <h3 data-i18n="expertise">Expertise</h3> <label data-i18n-title="expertise" title="expertise"> <input name="attr_expert" title="@{repeating_conjurations_${x}_expert}" type="checkbox" value="3"/> </label> <h3 data-i18n="mod">mod</h3> <label data-i18n-title="modifier" title="modifier"> <input name="attr_dicepool_modifier" title="@{repeating_conjurations_${x}_dicepool_modifier}" type="number"/> </label> </div> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_conjurations_${x}_notes}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> <div class="powers-meta"> <div class="row-long mage-setup"> <select class='mage-type' name='attr_mage_type' title='@{mage_type}'> <option data-i18n="mage" value="Mage" selected="selected">Mage</option> <option data-i18n="adept" value="Adept">Adept</option> <option data-i18n="mysticadept" value="Mystic Adept">Mystic Adept</option> </select> <h3 data-i18n="initiategrade">Initiate Grade</h3> <label data-i18n-title="initiategrade" title="initiategrade"> <input name="attr_initiate_grade" placeholder="-" title="@{initiate_grade}" type="number" min="0" step="1" value=""> </label> <h2 class="magic-aspect" data-i18n-title="aspect" title="aspect">Aspect</h2> <select class="magic-aspect" name='attr_aspect' title='@{aspect}'> <option data-i18n="non-aspected" value="Non-Aspected">Non-Aspected</option> <option data-i18n="sorcery" value="Sorcery">Sorcery</option> <option data-i18n="conjuring" value="Conjuring">Conjuring</option> <option data-i18n="enchanting" value="Enchanting">Enchanting</option> </select> <br> <h2 data-i18n="tradition">Tradition</h2> <label data-i18n-title="tradition" title="tradition"> <select name='attr_tradition' title='@{tradition}'> <option data-i18n="hermeticism" value="Hermeticism">Hermeticism</option> <option data-i18n="shamanism" value="Shamanism">Shamanism</option> </select> </label> <h2 data-i18n="magicar">Magic AR</h2> <input type="hidden" name="attr_magic_ar" value="0"> <span name="attr_magic_ar"></span> </div> <div class="row-long headers"> <h2 data-i18n="metamagic">Metamagic</h2> <h2 class="center" data-i18n="level">Level</h2> </div> <div class="rows repeating-container metamagic"> <fieldset class="repeating_metamagic"> <span name="attr_name"></span> <span class="center" name="attr_rating"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="name" title="name"> <input name="attr_name" placeholder="name" title="@{repeating_powers_${x}_name}" type="text" value=""/> </label> <label data-i18n-title="rating" title="rating"> <input name="attr_rating" placeholder="rating" title="@{repeating_powers_${x}_rating}" type="number" value=""/> </label> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_powers_${x}_notes}" type="text" value=""></textarea> </label> <h3 data-i18n="modifications">modifications</h3> <label data-i18n-title="modifications" title="modifications"> <textarea name="attr_modifications" placeholder="Attribute: +/- mod" title="@{repeating_items_${x}_modifications}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> </div> </div> </div> </div> <div class="matrix pc-col"> <div class="pc-row matrix-box"> <div class="header right-header"> <h1 data-i18n="persona">Persona</h1> <div class="right-tri"></div> </div> <div class="border-box"> <div class="pc-box medium-box"> <div class="cyberdeck"> <div class="row-long row-matrix-combat-stats"> <input type="hidden" name="attr_matrix_device_rating" value="0"> <input type="hidden" name="attr_matrix_defense_rating" value="0"> <input type="hidden" name="attr_matrix_attack_rating" value="0"> <input type="hidden" name="attr_matrix_device_initiative_bonus" value="0"> <input type="hidden" name="attr_matrix_device_essence_cost" value="0"> <span> </span> <label><button type="roll" class="techno-hide" name="roll_matrix_device_rating" value="&{template:rolls}{{header=@{character_name}}}{{base=Matrix Device Rating}}{{rating=@{matrix_device_rating}}}" title="Matrix Device Rating"><span data-i18n="devicerating">Device Rating</span><span name='attr_matrix_device_rating'></span></button></label> <span> </span> <label><button type="roll" name="roll_matrix_attack_rating" value="&{template:rolls}{{header=@{character_name}}}{{base=Matrix Attack Rating}}{{rating=[[(@{attack}+@{sleaze})]]}}{{desc=Attack + Sleaze}}" title="Matrix Attack Rating"><span data-i18n="attackrating">Attack Rating</span><span name='attr_matrix_attack_rating'></span></button></label> <span> </span> <label><button type="roll" name="roll_matrix_defense_rating" value="&{template:rolls}{{header=@{character_name}}}{{base=Matrix Defense Rating}}{{rating=[[@{matrix_defense_rating}]]}}{{desc=Data Processing + Firewall}}" title="Matrix Defense Rating"><span data-i18n="defenserating">Defense Rating</span><span name='attr_matrix_defense_rating'></span></button></label> <span> </span> </div> <div class="row-long technomancer-attributes techno-see"> <span> </span> <label data-i18n="attributearray">Attribute Array</label> <input type="number" name="attr_attack_base" step="1" min="0" value="" placeholder="A" /> <input type="number" name="attr_sleaze_base" step="1" min="0" value="" placeholder="S" /> <input type="number" name="attr_data_processing_base" step="1" min="0" value="" placeholder="D" /> <input type="number" name="attr_firewall_base" step="1" min="0" value="" placeholder="F" /> <span> </span> </div> <div class="row-long"> <h3 data-i18n="total">Total</h3> <h3 data-i18n="temp">Temp</h3> <h3 data-i18n="modifier">modifier</h3> <h3 data-i18n="base">Base</h3> <h3 data-i18n="baseslider">Base slider</h3> <br /> <label><button type="roll" name="roll_matrix_attack" value="&{template:rolls}{{header=@{character_name}}}{{base=^{matrix} ^{attack}}}{{dice=[[(@{attack}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}" title="Roll attack" data-i18n="attack">Attack</button></label> <div class="matrix-tot" title="@{attack}" ><span name="attr_attack"></span></div><span> = </span> <input type="number" name="attr_attack_temp" min="0" value="" placeholder="0" title="@{attack_temp}" /> + <input type="number" name="attr_attack_modifier" min="0" value="" placeholder="0" title="@{attack_modifier}" /> + <input type="number" name="attr_attack_base" min="0" value="" placeholder="7" title="@{attack_base}" /> <div class="device-attr"> <div class="matrix-bubble matrixAttack"> <input type="radio" name="attr_attack_base" value="0" /><span></span> <input type="radio" name="attr_attack_base" value="1" /><span></span> <input type="radio" name="attr_attack_base" value="2" /><span></span> <input type="radio" name="attr_attack_base" value="3" /><span></span> <input type="radio" name="attr_attack_base" value="4" /><span></span> <input type="radio" name="attr_attack_base" value="5" /><span></span> <input type="radio" name="attr_attack_base" value="6" /><span></span> <input type="radio" name="attr_attack_base" value="7" /><span></span> <input type="radio" name="attr_attack_base" value="8" /><span></span> <input type="radio" name="attr_attack_base" value="9" /><span></span> <input type="radio" name="attr_attack_base" value="10" /><span></span> </div> </div> </div> <div class="row-long"> <label><button type="roll" name="roll_matrix_sleaze" value="&{template:rolls}{{header=@{character_name}}}{{base=^{matrix} ^{sleaze}}}{{dice=[[(@{sleaze}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}" title="Roll sleaze" data-i18n="sleaze">Sleaze</button></label> <div class="matrix-tot" title="@{sleaze}" ><span name="attr_sleaze"></span></div><span> = </span> <input type="number" name="attr_sleaze_temp" min="0" value="" placeholder="0" title="@{sleaze_temp}" /> + <input type="number" name="attr_sleaze_modifier" min="0" value="" placeholder="0" title="@{sleaze_modifier}" /> + <input type="number" name="attr_sleaze_base" min="0" value="" placeholder="6" title="@{sleaze_base}" /> <div class="device-attr"> <div class="matrix-bubble matrixSleaze"> <input type="radio" name="attr_sleaze_base" value="0" /><span></span> <input type="radio" name="attr_sleaze_base" value="1" /><span></span> <input type="radio" name="attr_sleaze_base" value="2" /><span></span> <input type="radio" name="attr_sleaze_base" value="3" /><span></span> <input type="radio" name="attr_sleaze_base" value="4" /><span></span> <input type="radio" name="attr_sleaze_base" value="5" /><span></span> <input type="radio" name="attr_sleaze_base" value="6" /><span></span> <input type="radio" name="attr_sleaze_base" value="7" /><span></span> <input type="radio" name="attr_sleaze_base" value="8" /><span></span> <input type="radio" name="attr_sleaze_base" value="9" /><span></span> <input type="radio" name="attr_sleaze_base" value="10" /><span></span> </div> </div> </div> <div class="row-long"> <label><button type="roll" name="roll_matrix_data_processing" value="&{template:rolls}{{header=@{character_name}}}{{base=^{matrix} ^{data_processing}}}{{dice=[[(@{data_processing}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}" title="Roll data processing" data-i18n="dataproc">Data Proc.</button></label> <div class="matrix-tot" title="@{data_processing}" ><span name="attr_data_processing"></span></div><span> = </span> <input type="number" name="attr_data_processing_temp" min="0" alue="" placeholder="0" title="@{data_processing_temp}" /> + <input type="number" name="attr_data_processing_modifier" min="0" value="" placeholder="0" title="@{data_processing_modifier}" /> + <input type="number" name="attr_data_processing_base" min="0" value="" placeholder="5" title="@{data_processing_base}" /> <div class="device-attr"> <div class="matrix-bubble matrixData"> <input type="radio" name="attr_data_processing_base" value="0" /><span></span> <input type="radio" name="attr_data_processing_base" value="1" /><span></span> <input type="radio" name="attr_data_processing_base" value="2" /><span></span> <input type="radio" name="attr_data_processing_base" value="3" /><span></span> <input type="radio" name="attr_data_processing_base" value="4" /><span></span> <input type="radio" name="attr_data_processing_base" value="5" /><span></span> <input type="radio" name="attr_data_processing_base" value="6" /><span></span> <input type="radio" name="attr_data_processing_base" value="7" /><span></span> <input type="radio" name="attr_data_processing_base" value="8" /><span></span> <input type="radio" name="attr_data_processing_base" value="9" /><span></span> <input type="radio" name="attr_data_processing_base" value="10" /><span></span> </div> </div> </div> <div class="row-long"> <label><button type="roll" name="roll_matrix_firewall" value="&{template:rolls}{{header=@{character_name}}}{{base=^{matrix} ^{firewall}}}{{dice=[[(@{firewall}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}" title="Roll firewall" data-i18n="firewall">Firewall</button></label> <div class="matrix-tot" title="@{firewall}" ><span name="attr_firewall"></span></div><span> = </span> <input type="number" name="attr_firewall_temp" min="0" value="" placeholder="0" title="@{firewall_temp}" /> + <input type="number" name="attr_firewall_modifier" min="0" value="" placeholder="0" title="@{firewall_modifier}" /> + <input type="number" name="attr_firewall_base" min="0" value="" placeholder="4" title="@{firewall_base}" /> <div class="device-attr"> <div class="matrix-bubble matrixFirewall"> <input type="radio" name="attr_firewall_base" value="0" /><span></span> <input type="radio" name="attr_firewall_base" value="1" /><span></span> <input type="radio" name="attr_firewall_base" value="2" /><span></span> <input type="radio" name="attr_firewall_base" value="3" /><span></span> <input type="radio" name="attr_firewall_base" value="4" /><span></span> <input type="radio" name="attr_firewall_base" value="5" /><span></span> <input type="radio" name="attr_firewall_base" value="6" /><span></span> <input type="radio" name="attr_firewall_base" value="7" /><span></span> <input type="radio" name="attr_firewall_base" value="8" /><span></span> <input type="radio" name="attr_firewall_base" value="9" /><span></span> <input type="radio" name="attr_firewall_base" value="10" /><span></span> </div> </div> </div> <div class="con-hex techno-hide"> <input type="hidden" name="attr_condition_monitor_link" value=""> <input type="hidden" name="attr_matrix_hex_max" value="12"> <input type="radio" name="attr_matrix_hex" value="0" /><h2 data-i18n="conditionmonitor">Condition Monitor</h2> <input type="radio" name="attr_matrix_hex" value="1" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="2" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="3" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="4" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="5" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="6" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="7" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="8" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="9" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="10" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="11" /><span class="hexagon"></span> <input type="radio" name="attr_matrix_hex" value="12" /><span class="hexagon"></span> </div> </div> <div> </div> <div class="rows repeating-container devices"> <div class="row-long headers"> <h2 data-i18n="device">Device</h2> <h2 data-i18n="rtg">RTG</h2> <h2 data-i18n="primary">Primary</h2> <h2> </h2> <h2> </h2> </div> <fieldset class="repeating_devices"> <span name="attr_device"></span> <span name="attr_device_rating"></span> <span name="attr_primary_device"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="persona-attribute-buttons techno-hide"> <div class="row3"> <span> </span> <span> <input type="checkbox" name="attr_attack_primary" value="1"> <button name="attack"><span data-i18n="attack">Attack</span> <span name="attr_attack"></span></nobr></button> </span> <span> <input type="checkbox" name="attr_sleaze_primary" value="1"> <button name="sleaze"><span data-i18n="sleaze"></span> <span name="attr_sleaze"></span></button> </span> <span> <input type="checkbox" name="attr_data_processing_primary" value="1"> <button name="dataproc"><span data-i18n="dataproc"></span> <span name="attr_data_processing"></span></button> </span> <span> <input type="checkbox" name="attr_firewall_primary" value="1"> <button name="firewall"><span data-i18n="firewall"></span> <span name="attr_firewall"></span></button> </span> <span> </span> </div> </div> <div class="collapse"> <span name="attr_notes"></span> </div> <div class="settings"> <div class="rows"> <div class="row1"> <label data-i18n-title="device" title="device"> <input name="attr_device" title="@{repeating_devices_${x}_device}" type="text" value="" placeholder="Fairlight Excalibur"/> </label> <label data-i18n-title="devicerating" title="devicerating"> <input name="attr_device_rating" placeholder="6" title="@{repeating_devices_${x}_device_rating}" type="number" value=""/> </label> <label data-i18n-title="primary" title="primary"> <input type="checkbox" name="attr_primary_device" title="@{repeating_devices_${x}_primary_device}" value="1"> </label> </div> <div class="row2"> <span> </span> <h3 data-i18n="devicetype">Device Type</h3> <label data-i18n-title="devicetype" title="Device Type"> <select name="attr_type" title="@{repeating_devices_${x}_device}"> <option data-i18n="commlink" value="Commlink">Commlink</option> <option data-i18n="cyberdeck" value="Cyberdeck">Cyberdeck</option> <option data-i18n="cyberjack" value="Cyberjack">Cyberjack</option> <option data-i18n="commandconsole" value="Command Console">Command Console</option> </select> </label> <span> </span> <h3 data-i18n="activeprogramslots">Program Slots</h3> <label data-i18n-title="activeprogramslots" title="Program Slots"> <input type="text" name="attr_active_program_slots" value="" title="@{repeating_devices_${x}_active_program_slots" type="number" step="1" value="0"> </label> <span> </span> </div> <div class="row3"> <span> </span> <label data-i18n-title="attack" title="attack"> <span data-i18n="attack"></span> <input type="number" name="attr_attack" value="" placeholder="9" title="@{repeating_devices_${x}_attack" type="number" step="1"> </label> <label data-i18n-title="sleaze" title="Sleaze"> <span data-i18n="sleaze"></span> <input type="number" name="attr_sleaze" value="" placeholder="9" title="@{repeating_devices_${x}_sleaze" type="number" step="1"> </label> <label data-i18n-title="dataproc" title="Data Proc"> <span data-i18n="dataproc"></span> <input type="number" name="attr_data_processing" value="" placeholder="9" title="@{repeating_devices_${x}_data_processing" type="number" step="1"> </label> <label data-i18n-title="firewall" title="Firewall"> <span data-i18n="firewall"></span> <input type="number" name="attr_firewall" value="" placeholder="9" title="@{repeating_devices_${x}_firewall" type="number" step="1"> </label> <span> </span> </div> <div class="row4"> <span> </span> <h3 data-i18n="matrixinitiativebonus">Matrix Initiative Bonus</h3> <label data-i18n-title="matrixinitiativebonus" title="Matrix Initiative Bonus"> <input type="number" name="attr_matrix_initiative_bonus" value="" title="@{repeating_devices_${x}_matrix_initiative_bonus" type="number" step="1"> </label> <span> </span> <h3 data-i18n="essencecost">Essence Cost</h3> <label data-i18n-title="essencecost" title="Essence Cost"> <input type="number" name="attr_essence_cost" value="" title="@{repeating_devices_${x}_essence_cost" type="number" step=".01"> </label> <span> </span> </div> <div class="row-condition-monitor"> <span> </span> <h3 data-i18n="conditionmonitor">Current Condition Monitor</h3> <label data-i18n-title="conditionmonitor" title="conditionmonitor"> <input type="number" name="attr_condition_monitor" value="" title="@{repeating_devices_${x}_condition_monitor}" type="number" step="1"> </label> <span> </span> <h3 data-i18n="conditionmonitormax">Condition Monitor Max</h3> <label data-i18n-title="conditionmonitormax" title="conditionmonitormax"> <input type="number" name="attr_condition_monitor_max" value="" title="@{repeating_devices_${x}_condition_monitor_max}" type="number" step="1"> </label> <span> </span> </div> <div class="row5"> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_devices_${x}_notes}" type="text" value=""></textarea> </label> </div> <div class="row5"> <h3 data-i18n="modifiers">modifiers</h3> <label data-i18n-title="modifiers" title="modifiers"> <textarea name="attr_modifiers" placeholder="Attribute: +/-mod" title="@{repeating_devices_${x}_modifiers}" type="text" value=""></textarea> </label> </div> </div> <!-- end rows --> </fieldset> </div> <div class="rows repeating-container programs"> <h2 data-i18n="programs">Programs</h2> <fieldset class="repeating_programs"><span name="attr_program"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="programs" title="programs"> <input name="attr_program" placeholder="Program name" title="@{repeating_programs_${x}_program}" type="text" value=""/> </label> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_programs_${x}_notes}" type="text" value=""></textarea> </label> <h3 data-i18n="modifiers">modifiers</h3> <label data-i18n-title="modifiers" title="modifiers"> <textarea name="attr_modifiers" placeholder="Attribute: +/-mod" title="@{repeating_programs_${x}_modifiers}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> </div> </div> <div class="pc-row techno-see"> <div class="header right-header"> <h1 data-i18n="complexforms">Complex Forms</h1> <div class="right-tri"></div> </div> <div class="border-box"> <div class="pc-box medium-box complex-forms-rolls"> <input type="hidden" name="attr_complex_form_attack_rating" value="0"> <button type="roll" name="roll_complex_forms_attack_rating" value="&{template:rolls}{{header=@{character_name}}}{{base=Complex Form Attack Rating}}{{rating=[[@{electronics}+@{resonance}]]}}{{desc=Electronics + Resonance}}" title="Complex Form Attack Rating"><span data-i18n="attackrating">Attack Rating</span><span name='attr_complex_form_attack_rating'></span></button> <button data-i18n="resistfade" name="roll_fade" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{resistfade}}}{{dice=[[(@{willpower}+@{logic}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{wilddie=[[@{wild_die}d6]]}}{{desc=Willpower + Logic}}"></button> <div class="rows repeating-container complex-forms"> <div class="row-long headers"> <h2 data-i18n="complexform">Complex Form</h2> <h2 data-i18n="duration">Duration</h2> <h2 data-i18n="fade">Fade</h2> </div> <fieldset class="repeating_forms"> <input name="attr_dicepool" type="hidden" value="0"/> <span class='hide-roll-button' name='attr_skill'></span><span class='show-name' name='attr_name'></span><button name="roll_complex_form" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{complexform} @{name}}}{{dice=[[((@{skill}+@{resonance}+@{dicepool_modifier}+@{spec}+@{expert})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{notes}}}{{fade=[[@{fade}]]}}{{wilddie=[[@{wild_die}d6]]}}"><span name="attr_name"></span></button> <span class="center" name="attr_duration"></span> <span class="center" name="attr_fade"></span> <input class="collapse-flag" name="attr_display_flag" type="checkbox"/><span class="pictos">i</span> <input class="settings-flag" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <div class="collapse"><span name="attr_notes"></span></div> <div class="settings"> <label data-i18n-title="name" title="name"> <input name="attr_name" placeholder="name" title="@{repeating_forms_${x}_name}" type="text" value=""/> </label> <select name="attr_duration" title="@{repeating_forms_${x}_duration}" value="Instant"> <option data-i18n="instant" value="Instant">Instant</option> <option data-i18n="sustained" value="Sustained">Sustained</option> <option data-i18n="permanent" value="Permanent">Permanent</option> <option data-i18n="other" value="Other">Other</option> </select> <label data-i18n-title="fade" title="fade"> <input name="attr_fade" placeholder="-1" title="@{repeating_forms_${x}_fade}" type="number" value=""/> </label> <div class="row"> <h3 data-i18n="skill">skill</h3> <select name="attr_skill" title="@{repeating_forms_${x}_skill}" value="@{software}"> <option data-i18n="noroll" value="">No Roll</option> <option data-i18n="cracking" value="@{cracking}">Cracking</option> <option data-i18n="electronics" value="@{electronics}">Electronics</option> <option data-i18n="tasking" value="@{tasking}">Tasking</option> <option data-i18n="other" value="@{other}">Other</option> </select> <h3 data-i18n="specialization">Specialization</h3> <label data-i18n-title="specialization" title="Specialization"> <input name="attr_spec" value="2" title="@{repeating_forms_${x}_spec}" type="checkbox"/> </label> <h3 data-i18n="expertise">Expertise</h3> <label data-i18n-title="expertise" title="Expertise"> <input name="attr_expert" value="3" title="@{repeating_forms_${x}_expert}" type="checkbox"/> </label> </div> <div class="row"> <h3 data-i18n="modifier">modifier</h3> <label data-i18n-title="modifier" title="modifier"> <input name="attr_dicepool_modifier" title="@{repeating_forms_${x}_dicepool_modifier}" type="number"/> </label> </div> <h3 data-i18n="notes">notes</h3> <label data-i18n-title="notes" title="notes"> <textarea name="attr_notes" placeholder="Notes" title="@{repeating_forms_${x}_notes}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> </div> </div> </div> <div class="social pc-col"> <div class="pc-row"><!-- ~~~~~~~~ Start of Lifestyles Row ~~~~~~~~ --> <div class="header right-header"> <h1 data-i18n="idslifestylecurrency">IDs/Lifestyles/Currency</h1> <div class="right-tri"></div> </div> <div class="border-box repeat-box lifestyle"> <div class="pc-box small-box social-box"> <div class="row-long"> <h3 data-i18n="nuyen">Nuyen</h3> <input type="text" name="attr_nuyen" placeholder="-" title="@{nuyen}" /> </div> <div class="row-long"> </div> <div class="row-long sins-headers"> <h3 data-i18n="sinname">SIN Name</h3> <h3 data-i18n="rtg">RTG</h3> <h3 data-i18n="lifestylelicensesnotes" class="center">Lifestyle / Licenses / Notes</h3> </div> <fieldset class="repeating_lifestyle"> <input type="hidden" class="settings-toggle" name="attr_flag" value="settings" /> <div class="settings"> <div> <h3 data-i18n="fakeid">Fake ID</h3> <input type="text" name="attr_name" placeholder="SIN Name" title="SIN Name"> <h3 data-i18n="rating">Rating</h3> <input type="number" name="attr_rating" placeholder="1" title="Rating"> <h3 data-i18n="relatedlifestyle">Related Lifestyle</h3> <textarea name="attr_lifestyle" placeholder="Middle" title="Related lifestyle"></textarea> <h3 data-i18n="licenses">Licenses</h3> <textarea name="attr_licenses" placeholder="Technomancer, Pistols" title="Licenses"></textarea> <h3 data-i18n="notes">Notes</h3> <textarea name="attr_notes" placeholder="Notes" title="Notes"></textarea> </div> </div> <div class="display"> <input class="display-flag" type="checkbox" name="attr_display_flag" /> <div class="display-row" title="SIN Name"> <span name="attr_name"></span> <span class="center" name="attr_rating"></span> </div> <div class="collapsable"> <span class="desc-lifestyle" name="attr_lifestyle"></span> <span class="desc-lifestyle" name="attr_licenses"></span> <span class="desc-lifestyle" name="attr_notes"></span> </div> </div> <button class="pictos settings-button" name="act_lifestyle" type="action">x</button> </fieldset> </div> </div> </div> <!-- ~~~~~~~~ End of Lifestyle Row ~~~~~~~~ --> <!-- ~~~~~~~~ Start Contacts Row ~~~~~~~~ --> <div class="pc-row"> <div class="header right-header"><h1 data-i18n="contacts">Contacts</h1><div class="right-tri"></div></div> <div class="border-box repeat-box contacts"> <div class="pc-box small-box"> <div class="row-long"> <h3 data-i18n="name">Name</h3><h3 data-i18n="loyalty">Loyalty</h3><h3 data-i18n="influence">Influence</h3><h3 data-i18n="favor">Favor</h3> </div> <fieldset class="repeating_contacts"> <input type="hidden" class="settings-toggle" name="attr_flag" value="settings" /> <div class="settings"> <div> <input type="text" name="attr_name" placeholder="Contact Name" title="Contact name" /> <input type="number" name="attr_loyalty" min="1" placeholder="1" title="Loyalty" /> <input type="number" name="attr_influence" min="1" placeholder="1" title="Influence" /> <input type="number" name="attr_favors" placeholder="-" title="Favors" /> <h3 data-i18n="notes">Notes</h3> <textarea name="attr_notes" value="" placeholder="Notes"></textarea> </div> </div> <div class="display"> <input class="display-flag" type="checkbox" name="attr_display_flag" /> <div class="display-row" title="Contact name"><span name="attr_display"></span></div> <div class="display-row" title="Loyalty"><span name="attr_loyalty"></span></div> <div class="display-row" title="Influence"><span name="attr_influence"></span></div> <div class="display-row" title="Favors"><span name="attr_favors"></span></div> <div class="collapsable"> <div class="desc" title="Notes"><span name="attr_notes"></span></div> </div> </div> <button class="pictos settings-button" name="act_contacts" type="action">x</button> </fieldset> </div> </div> </div><!-- ~~~~~~~~ End of Contacts row ~~~~~~~~ --> </div> <div class="vehicle pc-col"> <div class="pc-row"> <div class="header right-header"><h1 data-i18n="vehicle">Vehicle</h1><div class="right-tri"></div></div> <div class="border-box repeat-box vehicle-box"> <div class="pc-box medium-box"> <fieldset class="repeating_vehicle"> <input type="hidden" class="settings-toggle" name="attr_flag" value="settings" /> <div class="settings"> <div> <div class="row-long"> <label style="width: 10%;" data-i18n="vehicle">Vehicle</label> <input style="width: 30%;" type="text" name="attr_name" placeholder="name" title="Vehicle name" /> <span> </span> <span> </span> <span> </span> <span> </span> <span> </span> <label data-i18n="type" style="width: 10%; text-align: right;">Type</label> <select class="attribute-select" style="width: 30%" name="attr_type" title="@{repeating_vehicle_${x}_type}"> <option data-i18n="bike" value="Bike">Bike</option> <option data-i18n="car" value="Car">Car</option> <option data-i18n="truck" value="Truck">Truck</option> <option data-i18n="van" value="Van">van</option> <option data-i18n="boat" value="Boat">Boat</option> <option data-i18n="submarine" value="Submarine">Submarine</option> <option data-i18n="fixedwingaircraft" value="Fixed Wing Aircraft">Fixed Wing Aircraft</option> <option data-i18n="rotorcraft" value="Rotorcraft">Rotorcraft</option> <option data-i18n="vtolvstol" value="VTOL/VSTOL">VTOL/VSTOL</option> <option data-i18n="microdrone" value="Microdrone">Microdrone</option> <option data-i18n="minidrone" value="Minidrone">Minidrone</option> <option data-i18n="smalldrone" value="Small Drone">Small Drone</option> <option data-i18n="mediumdrone" value="Medium Drone">Medium Drone</option> <option data-i18n="largedrone" value="Large Drone">Large Drone</option> <option data-i18n="other" value="Other">Other</option> </select> </div> <div class="row-long"> <label data-i18n="handling">Handling</label> <input type="hidden" name="attr_handling" /> <input type="number" name="attr_handling_onroad" placeholder="On" title="Handling On-Road" /> <input type="number" name="attr_handling_offroad" placeholder="Off" title="Handling Off-Road" /> <input type="number" name="attr_handling_modifier" placeholder="Mod" title="Handling Temp Modifier" /> <input type="hidden" name="attr_display_handling" placeholder="#" /> <input type="hidden" name="attr_seats" /> <label data-i18n="seats" style="width: 14%;" >Seats</label> <input type="number" name="attr_seats" placeholder="#" title="# Seats" /> </div> <div class="row-long"> <label data-i18n="acceleration">Acceleration</label> <input type="hidden" name="attr_acceleration" /> <input type="number" name="attr_acceleration_base" placeholder="Base" title="Acceleration Base" /> <input type="number" name="attr_acceleration_modifier" placeholder="Mod" title="Acceleration Modifier" /> <input type="hidden" name="attr_display_acceleration" placeholder="#" /> <span> </span> <label data-i18n="speed">Speed</label> <input type="hidden" name="attr_speed" /> <input type="number" name="attr_speed_base" placeholder="Base" title="Speed Interval" /> <input type="number" name="attr_speed_modifier" placeholder="Mod" title="Speed Modifier" /> <input type="number" name="attr_speed_max" placeholder="Max" title="Speed Max" /> <input type="hidden" name="attr_display_speed" placeholder="#" /> </div> <div class="row-long"> <label data-i18n="body">Body</label> <input type="hidden" name="attr_body" /> <input type="number" name="attr_body_base" placeholder="Base" title="Body Base" /> <input type="number" name="attr_body_modifier" placeholder="Mod" title="Body Modifier" /> <span> </span> <input type="hidden" name="attr_display_body" placeholder="#" /> <label data-i18n="armor">Armor</label> <input type="hidden" name="attr_armor" /> <input type="number" name="attr_armor_base" placeholder="Base" title="Armor Base" /> <input type="number" name="attr_armor_modifier" placeholder="Mod" title="Armor Modifier" /> <span> </span> <input type="hidden" name="attr_display_armor" placeholder="#" /> </div> <div class="row-long"> <label data-i18n="pilot">Pilot</label> <input type="hidden" name="attr_pilot" /> <input type="number" name="attr_pilot_base" placeholder="Base" title="Pilot Base" /> <input type="number" name="attr_pilot_modifier" placeholder="Mod" title="Pilot Modifier" /> <span> </span> <input type="hidden" name="attr_display_pilot" placeholder="#" /> <label data-i18n="sensor">Sensor</label> <input type="hidden" name="attr_sensor" /> <input type="number" name="attr_sensor_base" placeholder="Base" title="Sensor Base" /> <input type="number" name="attr_sensor_modifier" placeholder="Mod" title="Sensor Modifier" /> <span> </span> <input type="hidden" name="attr_display_sensor" placeholder="#" /> </div> <h3 data-i18n="notes">Notes</h3> <textarea name="attr_notes" value="" placeholder="Notes"></textarea> </div> <div><br><br></div> </div> <div class="display"> <input class="display-flag" type="checkbox" name="attr_display_flag" /> <div class="row-long"> <div class="display-row" title="Vehicle"> <h3 data-i18n="vehicle">Vehicle</h3> <div> <span name="attr_name"></span> </div> </div> <div class="display-row" title="Type"> <h3 data-i18n="type">Type</h3> <div> <span name="attr_type"></span> </div> </div> </div> <div class="row-long"> <div class="display-row" title="Handling"> <h3 data-i18n="handling">Handling</h3> <div class="vehicle-stat"> <span name="attr_display_handling"></span> </div> </div> <div class="display-row" title="Seats"> <h3 data-i18n="seats">Seats</h3> <div class="vehicle-stat"> <span name="attr_seats"></span> </div> </div> </div> <div class="row-long"> <div class="display-row" title="Acceleration"> <h3 data-i18n="acceleration">Acceleration</h3> <div class="vehicle-stat"> <span name="attr_display_acceleration"></span> </div> </div> <div class="display-row" title="Speed"> <h3 data-i18n="speed">Speed</h3> <div class="vehicle-stat"> <span name="attr_display_speed"></span> </div> </div> </div> <div class="row-long"> <div class="display-row" title="Body"> <h3 data-i18n="body">Body</h3> <div class="vehicle-stat"> <span name="attr_display_body"></span> </div> </div> <div class="display-row" title="Armor"> <h3 data-i18n="armor">Armor</h3> <div class="vehicle-stat"> <span name="attr_display_armor"></span> </div> </div> </div> <div class="row-long"> <div class="display-row" title="Pilot"> <h3 data-i18n="pilot">Pilot</h3> <div class="vehicle-stat"> <span name="attr_display_pilot"></span> </div> </div> <div class="display-row" title="Sensor"> <h3 data-i18n="sensor">Sensor</h3> <div class="vehicle-stat"> <span name="attr_display_sensor"></span> </div> </div> </div> <div class="collapsable"> <div class="desc"><span name="attr_notes"></span></div> </div> </div> <button class="pictos settings-button" name="act_vehicle" type="action">x</button> </fieldset> </div> </div> </div> </div> <div class="options pc-col"> <div class="pc-row"> <div class="header right-header"><h1 data-i18n="options">Options</h1><div class="right-tri"></div></div> <div class="border-box"> <div class="pc-box"> <div class="op-col"> <div> <h2 data-i18n="character">Character</h2><br /> <label data-i18n="mundane">Mundane</label><input class="character-type" type="checkbox" name="attr_flag_special" value="mundane" title="@{flag_special}" checked /><br /> <label data-i18n="awakened">Awakened</label><input class="character-type" type="checkbox" name="attr_flag_special" value="magic" title="@{flag_special}" /><br /> <label data-i18n="technomancer">Technomancer</label><input class="character-type" type="checkbox" name="attr_flag_special" value="resonance" title="@{flag_special}" /> </div> <hr /> <div> <h2 data-i18n="sheetselect">Sheet Select</h2><br /> <select name="attr_sheet_type" title="@{sheet_type}"> <option value="pc" data-i18n="pc">PC</option> <option value="grunt" data-i18n="grunt">Grunt</option> <option value="host" data-i18n="host">Host</option> <option value="sprite" data-i18n="sprite">Sprite</option> <option value="vehicle" data-i18n="vehicle">Vehicle</option> </select> </div> </div> <div class="op-col"> <div> <h2 data-i18n="temporarymodifiers">Temporary Modifiers</h2><br /> <label data-i18n="defense">Defense</label><input type="number" name="attr_defense_temp" title="@{defense_temp}" /><input type="checkbox" name="attr_defense_temp_flag" value="on" checked /> <label data-i18n="soak">Soak</label><input type="number" name="attr_soak_temp" title="@{soak_temp}" /><input type="checkbox" name="attr_soak_temp_flag" value="on" checked /> <hr /> <label data-i18n="body">Body</label><input type="number" name="attr_body_temp" title="@{body_temp}" /><input type="checkbox" name="attr_body_temp_flag" value="on" checked /> <label data-i18n="agility">Agility</label><input type="number" name="attr_agility_temp" title="@{agility_temp}" /><input type="checkbox" name="attr_agility_temp_flag" value="on" checked /> <label data-i18n="reaction">Reaction</label><input type="number" name="attr_reaction_temp" title="@{reaction_temp}" /><input type="checkbox" name="attr_reaction_temp_flag" value="on" checked /> <label data-i18n="strength">Strength</label><input type="number" name="attr_strength_temp" title="@{strength_temp}" /><input type="checkbox" name="attr_strength_temp_flag" value="on" checked /> <label data-i18n="willpower">Willpower</label><input type="number" name="attr_willpower_temp" title="@{willpower_temp}" /><input type="checkbox" name="attr_willpower_temp_flag" value="on" checked /> <label data-i18n="logic">Logic</label><input type="number" name="attr_logic_temp" title="@{logic_temp}" /><input type="checkbox" name="attr_logic_temp_flag" value="on" checked /> <label data-i18n="intuition">Intuition</label><input type="number" name="attr_intuition_temp" title="@{intuition_temp}" /><input type="checkbox" name="attr_intuition_temp_flag" value="on" checked /> <label data-i18n="charisma">Charisma</label><input type="number" name="attr_charisma_temp" title="@{charisma_temp}" /><input type="checkbox" name="attr_charisma_temp_flag" value="on" checked /> <label data-i18n="magic">Magic</label><input type="number" name="attr_magic_temp" title="@{magic_temp}" /><input type="checkbox" name="attr_magic_temp_flag" value="on" checked /> <label data-i18n="resonance">Resonance</label><input type="number" name="attr_resonance_temp" title="@{resonance_temp}" /><input type="checkbox" name="attr_resonance_temp_flag" value="on" checked /> <hr /> <label data-i18n="initiative">Initiative</label><input type="number" name="attr_initiative_temp" title="@{initiative_temp}" /><input type="checkbox" name="attr_initiative_temp_flag" value="on" checked /> <label data-i18n="initiativedice">Initiative Dice</label><input type="number" name="attr_initiative_dice_temp" title="@{initiative_dice_temp}" /><input type="checkbox" name="attr_initiative_dice_temp_flag" value="on" checked /> <label data-i18n="astralinitiative">Astral Initiative</label><input type="number" name="attr_astral_initiative_temp" title="@{astral_initiative_temp}" /><input type="checkbox" name="attr_astral_initiative_temp_flag" value="on" checked /> <label data-i18n="astralinitiativedice">Initiative Dice</label><input type="number" name="attr_astral_initiative_dice_temp" title="@{astral_initiative_dice_temp}" /><input type="checkbox" name="attr_astral_initiative_dice_temp_flag" value="on" checked /> <label data-i18n="matrixinitiative">Matrix Initiative</label><input type="number" name="attr_matrix_initiative_temp" title="@{matrix_initiative_temp}" /><input type="checkbox" name="attr_matrix_initiative_temp_flag" value="on" checked /> <label data-i18n="matrixinitiativedice">Matrix Initiative Dice</label><input type="number" name="attr_matrix_initiative_dice_temp" title="@{matrix_initiative_dice_temp}" /><input type="checkbox" name="attr_matrix_initiative_dice_temp_flag" value="on" checked /> </div> </div> </div> </div> </div> </div> </div> <!-- NPC SHEET --> <div class="npc"> <div> <h1 style="color: red;">THIS IS COMPLETELY UNTESTED AND ROLLS ARE INCORRECT. DATA WILL BE CHANGING AS IT IS EDITED. USE KNOWING THE DATA WILL BE LOST.</h1> </div> <img class="shadowrun-logo" alt="Shadowrun sixth edition logo" src="https://s3.amazonaws.com/files.d20.io/images/204802539/QInmmma8HvUBA90c8e8H8Q/max.png?1614545502"/> <input name="attr_stats_toggle" type="hidden" value=""/> <div class="tabs border-box"> <div class="pc-box"> <div class="header-nav"> <input name="attr_stats_toggle" type="checkbox" value="settings" checked="checked"/> <span class="pictos">y</span> <select name="attr_sheet_type" title="Sheet Type"> <option value="pc" data-i18n="pc">PC</option> <option value="grunt" data-i18n="grunt">Grunt</option> <option value="host" data-i18n="host">Host</option> <option value="sprite" data-i18n="sprite">Sprite</option> <option value="vehicle" data-i18n="vehicle">Vehicle</option> </select> <span> </span> </div> <div class="header-toggles pc-box"> <span> </span> <button name="d6" title="Roll D6s" type="roll" value="@{gm_toggle} &{template:rolls}{{header=^{d6}}}{{base=^{d6}}}{{dice=[[(?{d6s|0}d6>5)]]}}">L</button> <h2 data-i18n-title="whispergm">/w GM</h2> <label class="switch" data-i18n-title="whispergm" title="Whisper rolls to GM"> <input class="whisper-toggle" name="attr_gm_toggle" type="checkbox" value="/w gm"/><span class="slider"></span> </label> <h2 data-i18n-title="wounds">Wounds</h2> <label class="switch" data-i18n-title="wounds" title="Wounds"> <input class="whisper-toggle" name="attr_wounds_toggle" type="checkbox" value="@{wounds}"/><span class="slider"></span> </label> <h2 data-i18n-title="dicepoolmodifiers">Modifiers</h2> <label class="switch" data-i18n-title="dicepoolmodifiers" title="Dicepool Modifiers"> <input class="whisper-toggle" name="attr_modifiers_toggle" type="checkbox" value="?{Modifiers +/-|0}"/><span class="slider"></span> </label> <h2 data-i18n-title="addedgetodicepool">Edge</h2> <label class="switch" data-i18n-title="addedgetodicepool" title="Add Edge to your dice pool and exploding 6's"> <input class="whisper-toggle" name="attr_edge_toggle" type="checkbox" value="@{edge}"/><span class="slider"></span> </label> <h2 data-i18n-title="wilddie">Wild Die</h2> <label class="switch" data-i18n-title="wilddie" title="Roll a single wild die"> <input class="whisper-toggle" name="attr_wild_die" type="checkbox" value="1"/><span class="slider"></span> </label> <span> </span> </div> </div> </div> <div class="border-box"> <div class="grunt attribute pc-box"> <button data-i18n="body" name="roll_body" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{body}}}{{dice=[[((@{body})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">b</button><span name="attr_display_body"></span> <label class="settings" data-i18n-title="Body" title="Body"> <input name="attr_body_base" placeholder="3" title="@{body_base}" type="number" value="3"/> </label> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_body_modifier" placeholder="+" title="@{body_modifier}" type="number" value=""/> </label> <button data-i18n="agility" name="roll_agility" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{agility}}}{{dice=[[((@{agility})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">a</button><span name="attr_display_agility"></span> <label class="settings" data-i18n-title="Agility" title="Agility"> <input name="attr_agility_base" placeholder="3" title="@{agility_base}" type="number" value="3"/> </label> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_agility_modifier" placeholder="+" title="@{agility_modifier}" type="number" value=""/> </label> <button data-i18n="reaction" name="roll_reaction" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{reaction}}}{{dice=[[((@{reaction})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">r</button><span name="attr_display_reaction"></span> <label class="settings" data-i18n-title="Reaction" title="Reaction"> <input name="attr_reaction_base" placeholder="3" title="@{reaction_base}" type="number" value="3"/> </label> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_reaction_modifier" placeholder="+" title="@{reaction_modifier}" type="number" value=""/> </label> <button data-i18n="strength" name="roll_strength" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{strength}}}{{dice=[[((@{strength})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">s</button><span name="attr_display_strength"></span> <label class="settings" data-i18n-title="Strength" title="Strength"> <input name="attr_strength_base" placeholder="3" title="@{strength_base}" type="number" value="3"/> </label> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_strength_modifier" placeholder="+" title="@{strength_modifier}" type="number" value=""/> </label> <button data-i18n="willpower" name="roll_willpower" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{willpower}}}{{dice=[[((@{willpower})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">w</button><span name="attr_display_willpower"></span> <label class="settings" data-i18n-title="Willpower" title="Willpower"> <input name="attr_willpower_base" placeholder="3" title="@{willpower_base}" type="number" value="3"/> </label> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_willpower_modifier" placeholder="+" title="@{willpower_modifier}" type="number" value=""/> </label> <button data-i18n="logic" name="roll_logic" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{logic}}}{{dice=[[((@{logic})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">l</button><span name="attr_display_logic"></span> <label class="settings" data-i18n-title="Logic" title="Logic"> <input name="attr_logic_base" placeholder="3" title="@{logic_base}" type="number" value="3"/> </label> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_logic_modifier" placeholder="+" title="@{logic_modifier}" type="number" value=""/> </label> <button data-i18n="intuition" name="roll_intuition" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{intuition}}}{{dice=[[((@{intuition})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">i</button><span name="attr_display_intuition"></span> <label class="settings" data-i18n-title="Intuition" title="Intuition"> <input name="attr_intuition_base" placeholder="3" title="@{intuition_base}" type="number" value="3"/> </label> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_intuition_modifier" placeholder="+" title="@{intuition_modifier}" type="number" value=""/> </label> <button data-i18n="charisma" name="roll_charisma" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{charisma}}}{{dice=[[((@{charisma})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">c</button><span name="attr_display_charisma"></span> <label class="settings" data-i18n-title="Charisma" title="Charisma"> <input name="attr_charisma_base" placeholder="3" title="@{charisma_base}" type="number" value="3"/> </label> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_charisma_modifier" placeholder="+" title="@{charisma_modifier}" type="number" value=""/> </label> <button data-i18n="edge" name="roll_edge" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{edge}}}{{dice=[[((@{edge})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">e</button><span name="attr_edge"></span> <label class="settings" data-i18n-title="edge" title="edge"> <input name="attr_edge" placeholder="3" title="@{edge}" type="number" value="3"/> </label> <h1 data-i18n="ess">ess</h1><span name="attr_essence"></span> <label class="settings" data-i18n-title="essence" title="essence"> <input name="attr_essence" placeholder="6" title="@{essence}" type="number" step='0.01' min='-6.00' max='6.00' value="6"/> </label> <h1 class="hide-magic" data-i18n="magic">m</h1><span class="hide-magic" name="attr_magic"></span> <label class="hide-magic" data-i18n-title="magic" title="magic"> <input name="attr_magic" placeholder="6" title="@{magic}" type="number" value="6"/> </label> <h1 class="hide-spirit" data-i18n="magic">m</h1><span class="hide-spirit" name="attr_magic"></span> <label class="hide-spirit" data-i18n-title="magic" title="magic"> <input name="attr_magic" placeholder="0" title="@{magic}" type="number" value="6"/> </label> <h1 class="hide-spirit" data-i18n="force">f</h1><span class="hide-spirit" name="attr_force"></span> <label class="hide-spirit" data-i18n-title="force" title="force"> <input name="attr_force" placeholder="0" title="@{force}" type="number" value="6"/> </label> <h1 class="hide-resonance" data-i18n="resonance">r</h1><span class="hide-resonance" name="attr_resonance"></span> <label class="hide-resonance" data-i18n-title="resonance" title="resonance"> <input name="attr_resonance" placeholder="6" title="@{resonance}" type="number" value="6"/> </label> </div> <div class="host attribute pc-box"> <button data-i18n="host_rating" name="roll_host_rating" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{host_rating}}}{{base=^{host_rating}}}{{dice=[[((@{host_rating}+@{host_rating})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">host_rating</button><span name="attr_host_rating"></span> <label class="settings" data-i18n-title="host_rating" title="Host Rating"> <input name="attr_host_rating" placeholder="5" title="@{host_rating}" type="number" value=""/> </label> <button data-i18n="attack" name="roll_attack" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{attack}}}{{base=^{host_rating}}}{{dice=[[((@{host_rating}+@{attack})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">attack</button><span name="attr_attack"></span> <label class="settings" data-i18n-title="attack" title="Attack"> <input name="attr_attack" placeholder="5" title="@{attack}" type="number" value=""/> </label> <button data-i18n="sleaze" name="roll_sleaze" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{sleaze}}}{{base=^{host_rating}}}{{dice=[[((@{host_rating}+@{sleaze})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">sleaze</button><span name="attr_sleaze"></span> <label class="settings" data-i18n-title="sleaze" title="Sleaze"> <input name="attr_sleaze" placeholder="6" title="@{sleaze}" type="number" value=""/> </label> <button data-i18n="data_processing" name="roll_data_processing" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{data_processing}}}{{base=^{host_rating}}}{{dice=[[((@{host_rating}+@{data_processing})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">data_processing</button><span name="attr_data_processing"></span> <label class="settings" data-i18n-title="data_processing" title="Data Processing"> <input name="attr_data_processing" placeholder="7" title="@{data_processing}" type="number" value=""/> </label> <button data-i18n="firewall" name="roll_firewall" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{firewall}}}{{base=^{host_rating}}}{{dice=[[((@{host_rating}+@{firewall})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">firewall</button><span name="attr_firewall"></span> <label class="settings" data-i18n-title="firewall" title="Firewall"> <input name="attr_firewall" placeholder="8" title="@{firewall}" type="number" value=""/> </label> </div> <div class="vehicle attribute pc-box"> <h1 data-i18n="hand">Hand</h1><span name="attr_handling"></span> <label class="settings" data-i18n-title="hand" title="Handling"> <input name="attr_handling" placeholder="3" title="@{handling}" type="number" value=""/> </label> <h1 data-i18n="handoff">Hand (Off)</h1><span name="attr_handling_offroad"></span> <label class="settings" data-i18n-title="handoff" title="Handling (Offroad)"> <input name="attr_handling_offroad" placeholder="3" title="@{handling_offroad}" type="number" value=""/> </label> <h1 data-i18n="interval">Interval</h1><span name="attr_interval"></span> <label class="settings" data-i18n-title="interval" title="Speed Interval"> <input name="attr_interval" placeholder="3" title="@{interval}" type="number" value=""/> </label> <h1 data-i18n="maxspeed">Max Speed</h1><span name="attr_speed_max"></span> <label class="settings" data-i18n-title="maxspeed" title="Max Speed"> <input name="attr_speed_max" placeholder="3" title="@{speed_max}" type="number" value=""/> </label> <h1 data-i18n="accel">Accel</h1><span name="attr_acceleration"></span> <label class="settings" data-i18n-title="accel" title="Accel"> <input name="attr_acceleration" placeholder="3" title="@{acceleration}" type="number" value=""/> </label> <h1 data-i18n="body">Body</h1><span name="attr_body"></span> <label class="settings" data-i18n-title="body" title="Body"> <input name="attr_body" placeholder="3" title="@{body}" type="number" value=""/> </label> <button data-i18n="pilot" name="roll_pilot" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{pilot}}}{{base=^{pilot}}}{{dice=[[((@{pilot}+@{pilot})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">pilot</button><span name="attr_pilot"></span> <label class="settings" data-i18n-title="pilot" title="Pilot"> <input name="attr_pilot" placeholder="3" title="@{pilot}" type="number" value=""/> </label> <h1 data-i18n="sensor">Sensor</h1><span name="attr_sensor"></span> <label class="settings" data-i18n-title="sensor" title="Sensor"> <input name="attr_sensor" placeholder="3" title="@{sensor}" type="number" value=""/> </label> <h1 data-i18n="seat">Seat</h1><span name="attr_seating"></span> <label class="settings" data-i18n-title="seat" title="Seat"> <input name="attr_seating" placeholder="3" title="@{seating}" type="number" value=""/> </label> </div> <div class="sprite attribute pc-box"> <button data-i18n="level" name="roll_level" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{level}}}{{base=^{level}}}{{dice=[[((@{level}+@{level})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">level</button><span name="attr_level"></span> <label class="settings" data-i18n-title="level" title="Level"> <input name="attr_level" placeholder="5" title="@{level}" type="number" value=""/> </label> <button data-i18n="attack" name="roll_attack" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{attack}}}{{base=^{level}}}{{dice=[[((@{level}+@{attack})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">attack</button><span name="attr_attack"></span> <label class="settings" data-i18n-title="attack" title="Attack"> <input name="attr_attack" placeholder="5" title="@{attack}" type="number" value=""/> </label> <button data-i18n="sleaze" name="roll_sleaze" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{sleaze}}}{{base=^{level}}}{{dice=[[((@{level}+@{sleaze})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">sleaze</button><span name="attr_sleaze"></span> <label class="settings" data-i18n-title="sleaze" title="Sleaze"> <input name="attr_sleaze" placeholder="6" title="@{sleaze}" type="number" value=""/> </label> <button data-i18n="data_processing" name="roll_data_processing" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{data_processing}}}{{base=^{level}}}{{dice=[[((@{level}+@{data_processing})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">data_processing</button><span name="attr_data_processing"></span> <label class="settings" data-i18n-title="data_processing" title="Data Processing"> <input name="attr_data_processing" placeholder="7" title="@{data_processing}" type="number" value=""/> </label> <button data-i18n="firewall" name="roll_firewall" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=^{firewall}}}{{base=^{level}}}{{dice=[[((@{level}+@{firewall})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">firewall</button><span name="attr_firewall"></span> <label class="settings" data-i18n-title="firewall" title="Firewall"> <input name="attr_firewall" placeholder="8" title="@{firewall}" type="number" value=""/> </label> </div> </div> <div class="mid body"> <div class="column"> <input name="attr_pr" type="hidden" value=""/> <div class="rows grunt"> <h2 data-i18n="pr">Professional Rating</h2><span name="attr_pr" style="margin-left: 2%;"></span> <label class="settings" data-i18n-title="pr" title="Professional Rating"> <input name="attr_pr" title="@{pr}" type="number"/> </label> </div> <div class="rows grunt vehicle sprite host"> <h2 data-i18n="actions">Actions</h2> <label class="settings" data-i18n-title="majoractions" title="Major Actions"> <span data-i18n="a">A</span><input name="attr_major_actions" placeholder="1" title="@{major_actions}" type="number" value="1"/> </label> <span class="settings">, </span> <label class="settings" data-i18n-title="minoractions" title="Minor Actions"> <span data-i18n="i">I</span><input min="0" name="attr_minor_actions" placeholder="2" title="@{minor_actions}" type="number" value="2"/> </label> <span data-i18n="a">A</span><span name="attr_major_actions"></span><span class="tiny-span">, </span><span data-i18n="i">I</span><span name="attr_minor_actions"></span> </div> <div class="rows grunt"> <button data-i18n="initiative" name="Initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{initiative}}}{{dice=[[((@{initiative_base})+@{wounds_toggle}+@{modifiers_toggle})+(@{initiative_dice})d6cf0 &{tracker}]]}}">Initiative</button> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_initiative_base" placeholder="0" title="@{initiative_base}" type="number" value="0"/> </label><span class="settings">+</span> <label class="settings" data-i18n-title="initiativedice" title="Initiative Dice"> <input min="0" max="4" name="attr_initiative_dice" placeholder="0" title="@{initiative_dice}" type="number" value="0"/> </label><span class="settings" data-i18n="d6">d6</span><span class="settings tiny-span">=</span><span name="attr_display_initiative_base"></span><span class="tiny-span">+</span><span name="attr_initiative_dice"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> <div class="rows grunt hide-magic"> <button data-i18n="astralinitiative" name="Astral Initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{astralinitiative}}}{{dice=[[((@{astral_initiative_base})+@{wounds_toggle}+@{modifiers_toggle})+(@{astral_initiative_dice})d6cf0 &{tracker}]]}}">Astral Initiative</button> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_astral_initiative_base" placeholder="0" title="@{astral_initiative_base}" type="number" value="0"/> </label><span class="settings">+</span> <label class="settings" data-i18n-title="astral_initiative_dice" title="Astral Initiative Dice"> <input min="0" max="4" name="attr_astral_initiative_dice" placeholder="0" title="@{astral_initiative_dice}" type="number" value="0"/> </label><span class="settings" data-i18n="d6">d6</span><span class="settings tiny-span">=</span><span name="attr_display_astral_initiative_base"></span><span class="tiny-span">+</span><span name="attr_astral_initiative_dice"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> <div class="rows grunt vehicle sprite host"> <button data-i18n="matrixinitiative" name="Matrix Initiative" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{matrixinitiative}}}{{dice=[[((@{matrix_initiative_base})+@{wounds_toggle}+@{modifiers_toggle})+(@{matrix_initiative_dice})d6cf0 &{tracker}]]}}">Matrix Initiative</button> <label class="settings" data-i18n-title="modifier" title="modifier"> <input name="attr_matrix_initiative_base" placeholder="0" title="@{matrix_initiative_base}" type="number" value="0"/> </label><span class="settings">+</span> <label class="settings" data-i18n-title="matrix_initiative_dice" title="Matrix Initiative Dice"> <input min="0" max="4" name="attr_matrix_initiative_dice" placeholder="0" title="@{matrix_initiative_dice}" type="number" value="0"/> </label><span class="settings" data-i18n="d6">d6</span><span class="settings tiny-span">=</span><span name="attr_matrix_initiative_base"></span><span class="tiny-span">+</span><span name="attr_matrix_initiative_dice"></span><span class="tiny-span" data-i18n="d6">d6</span> </div> <div class="rows grunt"> <h2 data-i18n="movement">Movement</h2> <label class="settings" data-i18n-title="move speed" title="Move Speed"> <input name="attr_move_speed" placeholder="0" title="@{move_speed}" type="number" value="10"/> </label><span class="settings"> / </span> <label class="settings" data-i18n-title="sprint speed" title="Sprint Speed"> <input name="attr_sprint_speed" placeholder="0" title="@{sprint_speed}" type="number" value="0"/> </label><span class="settings"> / + </span> <label class="settings" data-i18n-title="sprint modifier" title="Sprint Modifier"> <input name="attr_sprint_modifier" placeholder="2" title="@{sprint_modifier}" type="number" value="1"/> </label><span class="settings"></span><span class="settings tiny-span">=</span><span name="attr_move_speed" title="@{move_speed}"></span><span> / </span><span name="attr_sprint_speed" title="@{sprint_speed}"></span><span> / + </span><span name="attr_sprint_modifier" title="@{sprint_modifier}"></span><span></span> </div> <div class="rows grunt"> <button data-i18n="conditionmonitor" name="act_cond_reset" type="action">Condition Monitor</button> <label class="settings" data-i18n-title="conditionmonitor" title="Condition Monitor"> <input name="attr_physical" placeholder="0" title="@{physical}" type="number" value=""/> </label> <span class="settings tiny-span">=</span><span name="attr_physical" title="@{physical_modifier}"></span> </div> <div class="rows vehicle"> <button data-i18n="conditionmonitorpm" name="act_cond_reset" type="action">Condition Monitor (P/M)</button> <label class="settings" data-i18n-title="physicalbonus" title="physicalbonus"> <input name="attr_physical_modifier" placeholder="0" title="@{physical_modifier}" type="number" value="0"/> </label><span class="settings">/</span> <label class="settings" data-i18n-title="matrixbonus" title="matrixbonus"> <input name="attr_matrix_modifier" placeholder="0" title="@{matrix_modifier}" type="number" value="0"/> </label><span class="settings tiny-span">=</span><span name="attr_physical" title="@{physical_modifier}"></span><span>/</span><span name="attr_matrix" title="@{matrix_modifier}"></span> </div> <div class="rows host sprite"> <button data-i18n="conditionmonitorm" name="act_cond_reset" type="action">Condition Monitor (M)</button><span name="attr_matrix"></span> </div> <div class="rows vehicle"> <div class="rows"> <h2 data-i18n="data_processing">key</h2> <label class="settings" data-i18n-title="data_processing" title="data_processing"> <input name="attr_data_processing" min="0" placeholder="0" title="@{data_processing}" type="number" value=""/> </label><span class="settings tiny-span">=</span><span name="attr_data_processing"></span> </div> <div class="rows"> <h2 data-i18n="firewall">key</h2> <label class="settings" data-i18n-title="firewall" title="firewall"> <input name="attr_firewall" min="0" placeholder="0" title="@{firewall}" type="number" value=""/> </label><span class="settings tiny-span">=</span><span name="attr_firewall"></span> </div> <div class="rows"> <h2 data-i18n="devicerating">key</h2> <label class="settings" data-i18n-title="devicerating" title="devicerating"> <input name="attr_device_rating" min="0" placeholder="0" title="@{device_rating}" type="number" value=""/> </label><span class="settings tiny-span">=</span><span name="attr_device_rating"></span> </div> </div> </div> <div class="column"> <div class="rows"> <button data-i18n="armorrating" name="roll_dr" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{defenserating}}}{{rating=@{armor_rating}}}">defenserating</button> <label class="settings" data-i18n-title="armorrating" title="armorrating"> <input name="attr_armor_rating" placeholder="9" title="@{armor_rating}" type="number" value="0"/> </label> </div> <div class="rows"> <button data-i18n="defense" name="roll_defense" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{defense} = ^{reaction} + ^{intuition}}}{{dice=[[((@{reaction}+@{intuition}+@{defense_modifier})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">defense</button> <label class="settings" data-i18n-title="defense" title="defense"> <input name="attr_defense_modifier" placeholder="9" title="@{defense_modifier}" type="number" value="0"/> </label> </div> <div class="rows"> <button data-i18n="soak" name="roll_soak" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{soak} ^{damage}}}{{dice=[[(@{body}+@{soak_modifier}+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}">soak</button> <label class="settings" data-i18n-title="soak" title="soak"> <input name="attr_soak_modifier" placeholder="0" title="@{soak_modifier}" type="number" value="0"/> </label><span name="attr_soak_modifier"></span> </div> <div class="rows"> <span class="pictos3 chem">d</span><span class="chem"> Chem </span> <label class="settings" data-i18n-title="chemprotection" title="chemprotection"> <input name="attr_chem_modifier" placeholder="0" title="@{chem_modifier}" type="number" value="0"/> </label> </div> <div class="rows"> <span class="pictos cold">b</span><span class="cold"> Cold </span> <label class="settings" data-i18n-title="coldprotection" title="coldprotection"> <input name="attr_cold_modifier" placeholder="0" title="@{cold_modifier}" type="number" value="0"/> </label> </div> <div class="rows"> <span class="pictos elec">e</span><span class="elec"> Elec </span> <label class="settings" data-i18n-title="elecprotection" title="elecprotection"> <input name="attr_elec_modifier" placeholder="0" title="@{elec_modifier}" type="number" value="0"/> </label> </div> <div class="rows"> <span class="pictos3 fire">j</span><span class="fire"> Fire </span> <label class="settings" data-i18n-title="fireprotection" title="fireprotection"> <input name="attr_fire_modifier" placeholder="0" title="@{fire_modifier}" type="number" value="0"/> </label> </div> </div> <!--/- OPTIONS--> <div class="column"> <div class="rows"> <h1 class="settings" data-i18n="options">Options</h1> </div> <div class="rows grunt"> <label class="settings" data-i18n-title="archetype" title="Archetype"> <h2 data-i18n="archetype">Archetype</h2> <select name="attr_flag_special"> <option value="mundane" data-i18n="mundane" selected="selected"> <option value="magic" data-i18n="awakened"> <option value="spirit" data-i18n="spirit"> <option value="resonance" data-i18n="technomancer"> </select> </label> <label class="settings" data-i18n-title="paintolerance" title="Pain Tolerance"> <h2 data-i18n="paintolerance">Pain Tolerance</h2> <select name="attr_pain_tolerance"> <option value="+1" data-i18n="highpaintolerance"> <option value="0" data-i18n="none" selected="selected"> <option value="-1" data-i18n="lowpaintolerance"> </select> </label> </div> <div class="rows host grunt vehicle"> <label class="settings" title="Has Matrix Device"> <input class="character-type" name="attr_flag_matrix" title="@{flag_matrix}" type="checkbox" value="matrix"/> <h2 data-i18n="hasmatrixdevice">Has Matrix Device</h2> </label> </div> <div class="rows grunt"> <label class="settings" title="Grunt Group"> <input class="grunt-group-member" name="attr_grunt_group_member" title="@{grunt_group_member}" type="checkbox" value="grunt_group_member"/> <h2 data-i18n="gruntgroupmember"></h2> </label> </div> <div class="rows vehicle"> <label class="settings" title="Drone"> <input class="character-type" name="attr_flag_drone" title="@{flag_drone}" type="checkbox" value="drone"/> <h2>Drone</h2> </label> </div> </div> </div> <div class="end body"> <input name="attr_quality" type="hidden" value=""/> <div class="textrow grunt"> <h1 data-i18n="qualities">Qualities</h1> <span name="attr_quality"></span><br> <label class="settings" data-i18n-title="quality" title="Qualities"> <textarea class="full-row" name="attr_quality" placeholder="Qualities" title="@{quality}"></textarea> </label> </div> <input name="attr_augmentations" type="hidden" value=""/> <div class="textrow grunt"> <h1 data-i18n="augmentations">Augmentations</h1> <span name="attr_augmentations"></span><br> <label class="settings" data-i18n-title="augmentations" title="Augmentations"> <textarea class="full-row" name="attr_augmentations" placeholder="Augmentations" title="@{augmentations}"></textarea> </label> </div> <input name="attr_gear" type="hidden" value=""/> <div class="textrow grunt vehicle"> <h1 data-i18n="gear">Gear</h1> <span name="attr_gear"></span><br> <label class="settings" data-i18n-title="gear" title="Gear"> <textarea class="full-row" name="attr_gear" placeholder="Gear" title="@{gear}"></textarea> </label> </div> <input name="attr_programs" type="hidden" value=""/> <div class="textrow vehicle"> <h1 data-i18n="programs">Programs</h1> <span name="attr_programs"></span><br> <label class="settings" data-i18n-title="programs" title="Programs"> <textarea class="full-row" name="attr_programs" placeholder="Programs" title="@{programs}"></textarea> </label> </div> <input name="attr_modifications" type="hidden" value=""/> <div class="textrow vehicle"> <h1 data-i18n="modifications">Modifications</h1> <span name="attr_modifications"></span><br> <label class="settings" data-i18n-title="modifications" title="Modifications"> <textarea class="full-row" name="attr_modifications" placeholder="Modifications" title="@{modifications}"></textarea> </label> </div> <input name="attr_powers" type="hidden" value=""/> <div class="textrow grunt hide-magic"> <h1 data-i18n="powers">Powers</h1> <span name="attr_powers"></span><br> <label class="settings" data-i18n-title="powers" title="Powers"> <textarea class="full-row" name="attr_powers" placeholder="Powers" title="@{powers}"></textarea> </label> </div> <div class="textrow grunt hide-magic"> <input name="attr_initiate" type="hidden" value=""/> <h1 data-i18n="initiation">Initiation</h1> <span name="attr_initiate"></span><br> <label class="settings" data-i18n-title="initiate" title="Initiate"> <input name="attr_initiate" placeholder="initiate" type="number" title="@{initiate}"/> </label><br/><span name="attr_metamagic"></span> <label class="settings" data-i18n-title="metamagic" title="metamagic"> <textarea class="full-row" name="attr_metamagic" placeholder="metamagic" title="@{metamagic}"></textarea> </label> </div> <div class="textrow grunt hide-resonance"> <input name="attr_submersion" type="hidden" value=""/> <h1 data-i18n="submersion">key</h1><span name="attr_submersion"></span> <label class="settings" data-i18n-title="submersion" title="Submersion"> <input name="attr_submersion" placeholder="submersion" type="number" title="@{submersion}"/> </label><br/><span name="attr_echos"></span> <label class="settings" data-i18n-title="echos" title="echos"> <textarea class="full-row" name="attr_echos" placeholder="echos" title="@{echos}"></textarea> </label> </div> <div class="rows grunt repeating inline-repeating"> <h1 data-i18n="skills">skills</h1> <fieldset class="repeating_active"> <input name="attr_display_rating" type="hidden"/> <input name="attr_specialization" type="hidden" value=""/> <input name="attr_expertise" type="hidden" value=""/> <input name="attr_display_limit" type="hidden" value="Physical"/> <input name="attr_display_attribute" type="hidden" value="Agility"/> <input name="attr_dicepool" type="hidden" value="0"/> <input class="toggle" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <button name="roll_skill" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{display_limit}}}"><span name="attr_display"></span></button> <button name="roll_specialization" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute}+2)+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Spec: @{specialization}}}"><span name="attr_specialization"></span></button> <button name="roll_expertise" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{skill}}}{{base=@{display_attribute}}}{{dice=[[((@{dicepool}+@{attribute}+3)+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=Expert: @{expertise}}}"><span name="attr_expertise"></span></button><span class="tiny">, </span> <div class="settings"> <h2 data-i18n="skill">Skill</h2> <h2 data-i18n="rating">Rating</h2> <h2 data-i18n="mod">Mod</h2> <h2 data-i18n="attribute">Attribute</h2> <select class="skill-select" name="attr_skill" title="@{repeating_active_${x}_skill}" value="Close Combat Group"><option value="Astral Combat" data-i18n="Astral">Astral</option> <option value="Astral" data-i18n="astral">Astral</option> <option value="Athletics" data-i18n="athletics">Athletics</option> <option value="Biotech" data-i18n="biotech">Biotech</option> <option value="Close Combat" data-i18n="closecombat">Close Combat</option> <option value="Con" data-i18n="con">Con</option> <option value="Conjuring" data-i18n="conjuring">Conjuring</option> <option value="Cracking" data-i18n="cracking">Cracking</option> <option value="Electronics" data-i18n="electronics">Electronics</option> <option value="Enchanting" data-i18n="enchanting">Enchanting</option> <option value="Engineering" data-i18n="engineering">Engineering</option> <option value="Exotic Weapons" data-i18n="exoticweapon">Exotic Weapons</option> <option value="Firearms" data-i18n="firearms">Firearms</option> <option value="Influence" data-i18n="influence">Influence</option> <option value="Outdoors" data-i18n="outdoors">Outdoors</option> <option value="Perception" data-i18n="perception">Perception</option> <option value="Piloting" data-i18n="piloting">Piloting</option> <option value="Sorcery" data-i18n="sorcery">Sorcery</option> <option value="Stealth" data-i18n="stealth">Stealth</option> <option value="Tasking" data-i18n="tasking">Tasking</option> </select> <label data-i18n-title="rating" title="rating"> <input name="attr_rating" min="0" placeholder="0" title="@{repeating_active_${x}_rating}" type="number"/> </label> <label data-i18n-title="ratingmodifier" title="Rating Modifier"> <input name="attr_rating_modifier" min="0" placeholder="0" title="@{repeating_active_${x}_rating_modifier}" type="number"/> </label> <select class="attribute-select" name="attr_attribute" title="@{repeating_active_${x}_attribute}"> <option data-i18n="body" value="@{body}">Body</option> <option data-i18n="agility" value="@{agility}" selected="selected">Agility</option> <option data-i18n="reaction" value="@{reaction}">Reaction</option> <option data-i18n="strength" value="@{strength}">Strength</option> <option data-i18n="willpower" value="@{willpower}">Willpower</option> <option data-i18n="logic" value="@{logic}">Logic</option> <option data-i18n="intuition" value="@{intuition}">Intuition</option> <option data-i18n="charisma" value="@{charisma}">Charisma</option> <option data-i18n="magic" value="@{magic}">Magic</option> <option data-i18n="resonance" value="@{resonance}">Resonance</option> </select> <h2 class="full-row" data-i18n="specialization">Specialization (+2)</h2> <label class="full-row" data-i18n-title="specialization" title="specialization"> <input name="attr_specialization" placeholder="Specalizations" title="@{repeating_active_${x}_specialization}" type="text"/> </label> <h2 class="full-row" data-i18n="expertise">Expertise (+3)</h2> <label class="full-row" data-i18n-title="expertise" title="expertise"> <input name="attr_expertise" placeholder="Expertise" title="@{repeating_active_${x}_expertise}" type="text"/> </label> </div> </fieldset> </div> <div class="rows grunt repeating inline-repeating"> <h1 data-i18n="knowledge">knowledge</h1><br> <fieldset class="repeating_knowledge"> <input class="toggle red" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <button name="roll_skill" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=@{name} (@{type})}}{{desc=@{notes}}}"><span name="attr_name"></span></button> <div class="settings"> <h2 data-i18n="skill">Skill</h2> <label data-i18n-title="name" title="Name"> <input name="attr_name" placeholder="Name" title="@{repeating_knowledge_${x}_name}" type="text"/> </label> <label data-i18n-title="type" title="Type"> <select class="center" data-i18n-title="type" name="attr_type" value="active" title="skill_type"> <option data-i18n="knowledge" value="Knowledge">Knowledge</option> <option data-i18n="language" value="Language">Language</option> </select> </label> <label data-i18n-title="notes" title="notes"><span data-i18n="notes">Notes</span> <textarea class="full-row" name="attr_notes" value="" placeholder="Notes" title="undefined_notes}"></textarea> </label> </div> </fieldset> </div> <div class="rows sprite repeating inline-repeating"> <h1 data-i18n="skills">skills</h1> <fieldset class="repeating_active"> <input class="toggle" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <button name="roll_skill" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{skill}}}{{base=^{level}}}{{dice=[[((@{level}+@{level})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}"><span name="attr_display"></span></button> <div class="settings"> <h2 class="full-row" data-i18n="skill">Skill</h2> <select class="skill-select" name="attr_skill" title="@{repeating_active_${x}_skill}"> <option value="Cracking" data-i18n="cracking"></option> <option value="Electronics" data-i18n="electronics"></option> <option value="Engineering" data-i18n="engineering"></option> </select> </div> </fieldset> </div> <div class="rows sprite repeating inline-repeating"> <h1 data-i18n="powers">Powers</h1> <fieldset class="repeating_powers"> <input class="toggle" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <button name="roll_power" type="roll" value="@{gm_toggle} &{template:rolls}{{header=@{character_name}}}{{base=@{name}}}{{desc=@{notes}}}"><span name="attr_name"></span></button> <div class="settings"> <h2 class="full-row" data-i18n="name">name</h2> <label data-i18n-title="name" title="name"> <input name="attr_name" placeholder="name" title="@{repeating_powers_${x}_name}" type="text"/> </label> <h2 class="full-row" data-i18n="notes">Notes</h2> <label class="full-row" data-i18n-title="notes" title="notes"> <textarea class="full-row" name="attr_notes" placeholder="Powers notes" title="@{repeating_powers_${x}_notes}" value=""></textarea> </label> </div> </fieldset> </div> <div class="rows grunt vehicle repeating weapons"> <h1 data-i18n="weapons">Weapons</h1> <fieldset class="repeating_weapon"> <input name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <input name="attr_weapon" type="hidden" value=""/><span name="attr_weapon_dice"></span> <button name="roll_weapon" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=@{weapon_type}}}{{dice=[[((@{weapon_dice})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=DV @{weapon_dv}}}"><span name="attr_weapon_name"></span></button><span name="attr_weapon"></span> <div class="settings"> <input name="attr_weapon_range" type="hidden" value="range"/> <h2 data-i18n="range">Range</h2> <h2 data-i18n="dice">Dice</h2> <h2 data-i18n="name">Name</h2> <h2 data-i18n="type">Type</h2> <h2 data-i18n="dam">Dam</h2> <h2 data-i18n="modes">Modes</h2> <h2 data-i18n="ammo">Ammo</h2> <select name="attr_weapon_range" title="@{repeating_weapon_${x}_weapon_range}" value="range"> <option data-i18n="range" value="range" selected="selected">range</option> <option data-i18n="melee" value="melee">melee</option> </select> <label data-i18n-title="dice" title="Dice"> <input name="attr_weapon_dice" placeholder="18" title="@{repeating_weapon_${x}_weapon_dice}" type="number" value=""/> </label> <label data-i18n-title="name" title="Name"> <input name="attr_weapon_name" placeholder="Ares Predator" title="@{repeating_weapon_${x}_weapon_name}" type="text" value=""/> </label> <label data-i18n-title="type" title="Type"> <input name="attr_weapon_type" placeholder="Heavy Pistol" title="@{repeating_weapon_${x}_weapon_type}" type="text" value=""/> </label> <label data-i18n-title="dam" title="Dam"> <input name="attr_weapon_dv" placeholder="9P" title="@{repeating_weapon_${x}_weapon_dv}" type="text" value=""/> </label> <label data-i18n-title="modes" title="Modes"> <input name="attr_weapon_mode" placeholder="SA/BF/FA" title="@{repeating_weapon_${x}_weapon_mode}" type="text" value=""/> </label> <label data-i18n-title="ammo" title="Ammo"> <input name="attr_weapon_ammo" placeholder="15" title="@{repeating_weapon_${x}_weapon_ammo}" type="number" value=""/> </label> <label data-i18n-title="notes" title="Notes"> <input name="attr_weapon_note" placeholder="w/ 3 clips of explosive rounds" title="@{repeating_weapon_${x}_weapon_note}" type="text" value=""/> </label><span>(c)</span> </div> </fieldset> </div> <div class="rows grunt repeating spells hide-magic"> <h1 data-i18n="spells">Spells</h1> <fieldset class="repeating_NPCspell"> <input name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <input name="attr_spell" type="hidden" value=""/><span name="attr_dice"></span> <button name="roll_spell" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=@{name}}}{{dice=[[((@{dice})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=@{category}?{Force|}, Drain [[?{Force|}+(@{drain})]]}}"><span name="attr_name"></span></button><span name="attr_spell"></span> <div class="settings"> <input name="attr_category" type="hidden" value=""/> <h2 data-i18n="category">Category</h2> <h2 data-i18n="dice">Dice</h2> <h2 data-i18n="name">Name</h2> <h2 data-i18n="type">Type</h2> <h2 data-i18n="range">Range</h2> <h2 data-i18n="duration">Duration</h2> <h2 data-i18n="drain">Drain</h2> <h2 data-i18n="combat">Combat</h2> <h2 data-i18n="dam">Dam</h2> <select name="attr_category" title="@{repeating_NPCspell_${x}_category}" value="combat"> <option data-i18n="combat" value="Combat" selected="selected">combat</option> <option data-i18n="detection" value="Detection">detection</option> <option data-i18n="health" value="Health">health</option> <option data-i18n="illusion" value="Illusion">illusion</option> <option data-i18n="manipulation" value="Manipulation">manipulation</option> </select> <label data-i18n-title="dice" title="Dice"> <input name="attr_dice" placeholder="18" title="@{repeating_NPCspell_${x}_dice}" type="number"/> </label> <label data-i18n-title="name" title="Name"> <input name="attr_name" placeholder="Fireball" title="@{repeating_NPCspell_${x}_name}" type="text"/> </label> <select name="attr_type" title="@{repeating_NPCspell_${x}_type}" value="P"> <option data-i18n="mana" value="M">mana</option> <option data-i18n="physical" value="P">physical</option> </select> <select name="attr_range" title="@{repeating_NPCspell_${x}_range}" value="LOS"> <option data-i18n="los" value="LOS">los</option> <option data-i18n="los (a)" value="LOS (A)">los (a)</option> <option data-i18n="special" value="Special">special</option> <option data-i18n="t" value="T">t</option> <option data-i18n="t (a)" value="T (A)">t (a)</option> </select> <select name="attr_duration" title="@{repeating_NPCspell_${x}_duration}" value="Instant"> <option data-i18n="instant" value="Instant">instant</option> <option data-i18n="permanent" value="Permanent">permanent</option> <option data-i18n="special" value="Special">special</option> <option data-i18n="sustained" value="Sustained">sustained</option> </select> <label data-i18n-title="drain" title="Drain"> <input name="attr_drain" placeholder="-1" title="@{repeating_NPCspell_${x}_drain}" type="number"/> </label> <select name="attr_combat_type" title="@{repeating_NPCspell_${x}_combat_type}" value="Force"> <option data-i18n="direct" value="Direct, Force ">direct</option> <option data-i18n="indirect" value="Indirect, Force ?{Force|}, AP -">indirect</option> </select> <label data-i18n-title="dam" title="Dam"> <input name="attr_damage" placeholder="P" title="@{repeating_NPCspell_${x}_damage}" type="text"/> </label> <label data-i18n-title="notes" title="Notes"> <input name="attr_note" placeholder="may start fires" title="@{repeating_NPCspell_${x}_note}" type="text"/> </label> </div> </fieldset> </div> <div class="rows grunt repeating forms hide-resonance"> <h1 data-i18n="complexform">Complex Forms</h1> <fieldset class="repeating_form"> <input name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <input name="attr_form" type="hidden" value=""/><span name="attr_form_dice"></span> <button name="roll_complex form" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=f@{orm_name}}}{{base=^{base}}}{{dice=[[((@{form_dice})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=?{Level|}, Fade [[?{Level|}+(@{form_fade})]]}}"><span name="attr_form_name"></span></button><span name="attr_form"></span> <div class="settings"> <h2 data-i18n="dice">Dice</h2> <h2 data-i18n="name">Name</h2> <h2 data-i18n="target">Target</h2> <h2 data-i18n="duration">Duration</h2> <h2 data-i18n="fade">Fade</h2> <label data-i18n-title="dice" title="Dice"> <input name="attr_form_dice" placeholder="18" title="@{repeating_form_${x}_form_dice}" type="number"/> </label> <label data-i18n-title="name" title="Name"> <input name="attr_form_name" placeholder="Editor" title="@{repeating_form_${x}_form_name}" type="text"/> </label> <select name="attr_form_target" title="@{repeating_form_${x}_form_target}" value="device"> <option data-i18n="device" value="Device" selected="selected">device</option> <option data-i18n="file" value="File">file</option> <option data-i18n="host" value="Host">host</option> <option data-i18n="ic" value="IC">ic</option> <option data-i18n="persona" value="Persona">persona</option> <option data-i18n="self" value="Self">self</option> <option data-i18n="sprite" value="Sprite">sprite</option> </select> <label data-i18n-title="duration" title="Duration"> <input name="attr_form_duration" placeholder="Permanent" title="@{repeating_form_${x}_form_duration}" type="text"/> </label> <label data-i18n-title="fade" title="Fade"> <input name="attr_form_fade" placeholder="+2" title="@{repeating_form_${x}_form_fade}" type="number"/> </label> <label data-i18n-title="notes" title="Notes"> <input name="attr_form_note" placeholder="edit files" title="@{repeating_form_${x}_form_note}" type="text"/> </label> </div> </fieldset> </div> <div class="rows host repeating ic"> <h1 data-i18n="intrusioncountermeasures">Intrusion Countermeasures</h1> <fieldset class="repeating_IC"> <input name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <input name="attr_IC" type="hidden" value=""/> <button name="roll_IC" type="roll" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=@{character_name}}}{{base=^{ic}: @{IC_name}}}{{dice=[[((@{IC_attack})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{desc=vs. @{IC_attribute}+@{IC_matrix}}}"><span name="attr_IC_name"></span></button><span name="attr_IC"></span> <div class="settings"> <h2 data-i18n="name">Name</h2> <h2 data-i18n="defense attribute">Defense Attribute</h2> <h2 data-i18n="defense matrix attribute">Defense Matrix Attribute</h2> <label data-i18n-title="name" title="Name"> <input name="attr_IC_name" placeholder="Black" title="@{repeating_IC_${x}_name}" type="text"/> </label> <select name="attr_IC_attribute" title="@{repeating_IC_${x}_attribute}"> <option data-i18n="intuition" value="Intuition">intuition</option> <option data-i18n="logic" value="Logic">logic</option> <option data-i18n="willpower" value="Willpower" selected="selected">willpower</option> </select> <select name="attr_IC_matrix" title="@{repeating_IC_${x}_matrix}"> <option data-i18n="attack" value="Attack">attack</option> <option data-i18n="sleaze" value="Sleaze">sleaze</option> <option data-i18n="data_processing" value="Data Processing">data_processing</option> <option data-i18n="firewall" value="Firewall" selected="selected">firewall</option> </select> <label data-i18n-title="notes" title="Notes"> <input name="attr_IC_note" placeholder="deploy the ic" title="@{repeating_IC_${x}_note}" type="text"/> </label> </div> </fieldset> </div> <div class="textrow host slaved-devices"> <h1 data-i18n="slaveddevices">Slaved Devices</h1><br> <span name='attr_slaved_devices'></span> <label class="settings" data-i18n-title="slaveddevices" title="Slaved Devices"> <textarea class="full-row" name="attr_slaved_devices" placeholder="Cameras, door locks, elevator controls..." title="@{slaved_devices}"></textarea> </label> </div> <div class="textrow host sculpting"> <h1 data-i18n="sculpting">Sculpting</h1><br> <span name='attr_sculpting'></span> <label class="settings" data-i18n-title="sculpting" title="Sculpting"> <textarea class="full-row" name="attr_sculpting" placeholder="In VR, the host is designed to look like a large black pyramid..." title="@{sculpting}"></textarea> </label> </div> <div class="textrow host security-procedures"> <h1 data-i18n="securityprocedures">Security Procedures</h1><br> <span name='attr_security_procedures'></span> <label class="settings" data-i18n-title="securityprocedures" title="Security Procedures"> <textarea class="full-row" name="attr_security_procedures" placeholder="Patrol IC running at all times, Once alarmed, the host launches IC in this order..." title="@{security_procedures}"></textarea> </label> </div> <div class="textrow host pay-data"> <h1 data-i18n="paydata">Pay Data</h1><br> <span name='attr_pay_data'></span> <label class="settings" data-i18n-title="paydata" title="Pay Data"> <textarea class="full-row" name="attr_pay_data" placeholder="Housekeeping codes worth 500nuyen if sold within a week..." title="@{pay_data}"></textarea> </label> </div> </div> <input name="attr_flag_matrix" type="hidden" value=""/> <div class="matrix body matrix-device"> <div class="rows"> <h1 data-i18n="matrixdevice">Matrix Device</h1> <label data-i18n-title="device" title="device"> <input name="attr_device_name" placeholder="Sony CIY-720" type="text"/> </label> <button data-i18n="devicerating" name="device rating" value="@{gm_toggle} &{template:rolls}{{mod=[[@{modifiers_toggle}]]}}{{wound=[[@{wounds_toggle}]]}}{{edge=[[@{edge_toggle}]]}}{{header=Matrix Resistance}}{{base=^{base}}}{{dice=[[((@{device_rating}+@{firewall})+@{wounds_toggle}+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}" type="roll">Device Rating</button> <label class="round" data-i18n-title="devicerating" title="devicerating"> <input name="attr_device_rating" placeholder="4" type="number" value=""/> </label> </div> <div class="rows"> <button data-i18n="attack" name="Attack" value="&{template:rolls}{{header=^{attack}}}{{base=^{base}}}{{dice=[[(@{attack}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" type="roll">Attack</button> <div class="matrix-bubble matrixAttack"> <input name="attr_attack" value="0" type="radio"/><span></span> <input name="attr_attack" value="1" type="radio"/><span></span> <input name="attr_attack" value="2" type="radio"/><span></span> <input name="attr_attack" value="3" type="radio"/><span></span> <input name="attr_attack" value="4" type="radio"/><span></span> <input name="attr_attack" value="5" type="radio"/><span></span> <input name="attr_attack" value="6" type="radio"/><span></span> <input name="attr_attack" value="7" type="radio"/><span></span> <input name="attr_attack" value="8" type="radio"/><span></span> <input name="attr_attack" value="9" type="radio"/><span></span> <input name="attr_attack" value="10" type="radio"/><span></span> <input name="attr_attack" value="11" type="radio"/><span></span> <input name="attr_attack" value="12" type="radio"/><span></span> <input name="attr_attack" value="13" type="radio"/><span></span> <input name="attr_attack" value="14" type="radio"/><span></span> <input name="attr_attack" value="15" type="radio"/><span></span> <input name="attr_attack" value="16" type="radio"/><span></span> <input name="attr_attack" value="17" type="radio"/><span></span> <input name="attr_attack" value="18" type="radio"/><span></span> <input name="attr_attack" value="19" type="radio"/><span></span> <input name="attr_attack" value="20" type="radio"/><span></span> </div> <label class="round" data-i18n-title="attack" title="attack"> <input name="attr_attack" placeholder="4" type="number" value=""/> </label> </div> <div class="rows"> <button data-i18n="sleaze" name="Sleaze" value="&{template:rolls}{{header=^{sleaze}}}{{base=^{base}}}{{dice=[[(@{sleaze}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" type="roll">Sleaze</button> <div class="matrix-bubble matrixSleaze"> <input name="attr_sleaze" value="0" type="radio"/><span></span> <input name="attr_sleaze" value="1" type="radio"/><span></span> <input name="attr_sleaze" value="2" type="radio"/><span></span> <input name="attr_sleaze" value="3" type="radio"/><span></span> <input name="attr_sleaze" value="4" type="radio"/><span></span> <input name="attr_sleaze" value="5" type="radio"/><span></span> <input name="attr_sleaze" value="6" type="radio"/><span></span> <input name="attr_sleaze" value="7" type="radio"/><span></span> <input name="attr_sleaze" value="8" type="radio"/><span></span> <input name="attr_sleaze" value="9" type="radio"/><span></span> <input name="attr_sleaze" value="10" type="radio"/><span></span> <input name="attr_sleaze" value="11" type="radio"/><span></span> <input name="attr_sleaze" value="12" type="radio"/><span></span> <input name="attr_sleaze" value="13" type="radio"/><span></span> <input name="attr_sleaze" value="14" type="radio"/><span></span> <input name="attr_sleaze" value="15" type="radio"/><span></span> <input name="attr_sleaze" value="16" type="radio"/><span></span> <input name="attr_sleaze" value="17" type="radio"/><span></span> <input name="attr_sleaze" value="18" type="radio"/><span></span> <input name="attr_sleaze" value="19" type="radio"/><span></span> <input name="attr_sleaze" value="20" type="radio"/><span></span> </div> <label class="round" data-i18n-title="sleaze" title="sleaze"> <input name="attr_sleaze" placeholder="4" type="number" value=""/> </label> </div> <div class="rows"> <button data-i18n="data_processing" name="Data Processing" value="&{template:rolls}{{header=^{data_processing}}}{{base=^{base}}}{{dice=[[(@{data_processing}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" type="roll">Data Processing</button> <div class="matrix-bubble matrixData"> <input name="attr_data_processing" value="0" type="radio"/><span></span> <input name="attr_data_processing" value="1" type="radio"/><span></span> <input name="attr_data_processing" value="2" type="radio"/><span></span> <input name="attr_data_processing" value="3" type="radio"/><span></span> <input name="attr_data_processing" value="4" type="radio"/><span></span> <input name="attr_data_processing" value="5" type="radio"/><span></span> <input name="attr_data_processing" value="6" type="radio"/><span></span> <input name="attr_data_processing" value="7" type="radio"/><span></span> <input name="attr_data_processing" value="8" type="radio"/><span></span> <input name="attr_data_processing" value="9" type="radio"/><span></span> <input name="attr_data_processing" value="10" type="radio"/><span></span> <input name="attr_data_processing" value="11" type="radio"/><span></span> <input name="attr_data_processing" value="12" type="radio"/><span></span> <input name="attr_data_processing" value="13" type="radio"/><span></span> <input name="attr_data_processing" value="14" type="radio"/><span></span> <input name="attr_data_processing" value="15" type="radio"/><span></span> <input name="attr_data_processing" value="16" type="radio"/><span></span> <input name="attr_data_processing" value="17" type="radio"/><span></span> <input name="attr_data_processing" value="18" type="radio"/><span></span> <input name="attr_data_processing" value="19" type="radio"/><span></span> <input name="attr_data_processing" value="20" type="radio"/><span></span> </div> <label class="round" data-i18n-title="data_processing" title="data_processing"> <input name="attr_data_processing" placeholder="4" type="number" value=""/> </label> </div> <div class="rows"> <button data-i18n="firewall" name="Firewall" value="&{template:rolls}{{header=^{firewall}}}{{base=^{base}}}{{dice=[[(@{firewall}+(?{Attribute|Willpower,@{willpower}|Logic,@{logic}|Intuition,@{intuition}})+@{modifiers_toggle}+@{edge_toggle})d6>5@{explode_toggle}]]}}{{mod=[[@{modifiers_toggle}]]}}{{edge=[[@{edge_toggle}]]}}" type="roll">Firewall</button> <div class="matrix-bubble matrixFirewall"> <input name="attr_firewall" value="0" type="radio"/><span></span> <input name="attr_firewall" value="1" type="radio"/><span></span> <input name="attr_firewall" value="2" type="radio"/><span></span> <input name="attr_firewall" value="3" type="radio"/><span></span> <input name="attr_firewall" value="4" type="radio"/><span></span> <input name="attr_firewall" value="5" type="radio"/><span></span> <input name="attr_firewall" value="6" type="radio"/><span></span> <input name="attr_firewall" value="7" type="radio"/><span></span> <input name="attr_firewall" value="8" type="radio"/><span></span> <input name="attr_firewall" value="9" type="radio"/><span></span> <input name="attr_firewall" value="10" type="radio"/><span></span> <input name="attr_firewall" value="11" type="radio"/><span></span> <input name="attr_firewall" value="12" type="radio"/><span></span> <input name="attr_firewall" value="13" type="radio"/><span></span> <input name="attr_firewall" value="14" type="radio"/><span></span> <input name="attr_firewall" value="15" type="radio"/><span></span> <input name="attr_firewall" value="16" type="radio"/><span></span> <input name="attr_firewall" value="17" type="radio"/><span></span> <input name="attr_firewall" value="18" type="radio"/><span></span> <input name="attr_firewall" value="19" type="radio"/><span></span> <input name="attr_firewall" value="20" type="radio"/><span></span> </div> <label class="round" data-i18n-title="firewall" title="firewall"> <input name="attr_firewall" placeholder="4" type="number" value=""/> </label> </div> <div class="rows repeating"> <h1 data-i18n="programs">Programs</h1> <fieldset class="repeating_programs"> <input class="toggle" name="attr_flag" title="Settings toggle" type="checkbox" checked="checked"/><span class="pictos">x</span> <input class="toggle" name="attr_program_on" type="checkbox" checked="checked"/><span class="pictos">Q</span> <button name="roll_program" type="roll" value="@{gm_toggle} &{template:rolls}{{header=@{program}}}{{desc=@{program_note}}}"><span name="attr_program"></span></button><span name="attr_program_note"></span> <div class="settings"> <h2 data-i18n="name">name</h2> <label data-i18n-title="name" title="name"> <input name="attr_program" placeholder="Program Name" title="@{repeating_programs_${x}_program}" type="text" value=""/> </label> <h2 data-i18n="notes">notes</h2> <label data-i18n-title="notes" title="notes"> <textarea name="attr_program_note" placeholder="Program Description" title="@{repeating_programs_${x}_program_note}" type="text" value=""></textarea> </label> </div> </fieldset> </div> </div> </div> <div class="footer"> <div> <span data-i18n="copyrightfooter">The Topps Company, Inc. has sole ownership of the names, logo, artwork, marks, photographs, sounds, audio, video and/or any proprietary material used in influence with the game Shadowrun. The Topps Company, Inc. has granted permission to use such names, logos, artwork, marks and/or any proprietary materials for promotional and informational purposes on its website but does not endorse, and is not affiliated with any official capacity whatsoever. </span> <span>Version </span><span name="attr_version"></span> </div> <!-- <img src="https://raw.githubusercontent.com/clevett/SheetTemplate/master/images/EProd_Emerald_Gloss.png" /> --> </div> <div class="rolltemplates"> <!--Roll Template for rolling without Focus--> <rolltemplate class="rolltemplate-rolls"> <div class="template-body"> <div class="template-header"> {{#header}}{{header}}{{/header}}{{#spec}}<span> ({{spec}})</span>{{/spec}}<br /> {{#arm}}<span>{{arm}}</span>{{/arm}} {{#base}}<span>{{base}}</span>{{/base}} {{#rollLess() wound 0}}<span> & </span><span data-i18n="wounds">Wounds</span>{{/rollLess() wound 0}} {{#rollLess() mod 0}}<span> & </span><span data-i18n="modifier">Modifier</span>{{/rollLess() mod 0}} {{#rollGreater() mod 0}}<span> & </span><span data-i18n="modifier">Modifier</span>{{/rollGreater() mod 0}} {{#rollGreater() edge 0}}<span> & </span><span data-i18n="edge">Edge</span>{{/rollGreater() edge 0}} {{#effecttype}}<br /><span>{{effecttype}}</span>{{/effecttype}} </div> {{#dice}}<div class="template-row">Hits: {{dice}}</div>{{/dice}} {{#rollGreater() wilddie 0}} <div class="template-row">Wild Die Rolled! {{wilddie}}<br> {{#rollLess() wilddie 2}} <div class="template-row"><span class="red">Remove all 5s!</span></div> {{/rollLess() wilddie 2}} {{#rollBetween() wilddie 2 4}} <div class="template-row">No Change!</div> {{/rollBetween() wilddie 2 4}} {{#rollGreater() wilddie 4}} <div class="template-row green"><span class="green">+3 Hits!</span></div> {{/rollGreater() wilddie 4}} </div> {{/rollGreater() wilddie 0}} {{#rating}}<div class="template-row">{{rating}}</div>{{/rating}} {{#ampup}}{{#rollGreater() ampup 0}} <div class="template-row"> <span class="template-desc">Amp Up: {{ampup}}</span> </div> {{/rollGreater() ampup 0}}{{/ampup}} {{#drain}}{{#rollGreater() drain 0}} <div class="template-row"> <span class="template-desc">Drain: {{drain}}</span> </div> {{/rollGreater() drain 0}}{{/drain}} {{#increasearea}}{{#rollGreater() increasearea 0}} <div class="template-row"> <span class="template-desc">Increase Area: {{increasearea}}m</span> </div> {{/rollGreater() increasearea 0}}{{/increasearea}} {{#fade}}{{#rollGreater() fade 0}} <div class="template-row"> <span class="template-desc">Fade: {{fade}}</span> </div> {{/rollGreater() fade 0}}{{/fade}} {{#desc}} <div class="template-row"> <span class="template-desc"> {{desc}} {{#rollGreater() rea 0}}, <span data-i18n="reach">Reach<span> {{rea}}{{/rollGreater() rea 0}} {{#rollLess() drain 2}}, <span data-i18n="drain-2">Drain 2<span>{{/rollLess() drain 2}} </span> </div> {{/desc}} {{#opp}}<div class="template-row">{{opp}}</div>{{/opp}} </div> </rolltemplate> <!--Roll Template for rolling without Focus--> <rolltemplate class="sheet-rolltemplate-rolls"> <div class="sheet-template-body"> <div class="sheet-template-header"> {{#header}}{{header}}{{/header}}{{#spec}}<span> ({{spec}})</span>{{/spec}}<br /> {{#arm}}<span>{{arm}}</span>{{/arm}} {{#base}}<span>{{base}}</span>{{/base}} {{#rollLess() wound 0}}<span> & </span><span data-i18n="wounds">Wounds</span>{{/rollLess() wound 0}} {{#rollLess() mod 0}}<span> & </span><span data-i18n="modifier">Modifier</span>{{/rollLess() mod 0}} {{#rollGreater() mod 0}}<span> & </span><span data-i18n="modifier">Modifier</span>{{/rollGreater() mod 0}} {{#rollGreater() edge 0}}<span> & </span><span data-i18n="edge">Edge</span>{{/rollGreater() edge 0}} {{#effecttype}}<br /><span>{{effecttype}}</span>{{/effecttype}} </div> {{#dice}}<div class="sheet-template-row">Hits: {{dice}}</div>{{/dice}} {{#rollGreater() wilddie 0}} <div class="sheet-template-row">Wild Die Rolled! {{wilddie}}<br> {{#rollLess() wilddie 2}} <div class="sheet-template-row"><span class="sheet-red">Remove all 5s!</span></div> {{/rollLess() wilddie 2}} {{#rollBetween() wilddie 2 4}} <div class="sheet-template-row">No Change!</div> {{/rollBetween() wilddie 2 4}} {{#rollGreater() wilddie 4}} <div class="sheet-template-row green"><span class="sheet-green">+3 Hits!</span></div> {{/rollGreater() wilddie 4}} </div> {{/rollGreater() wilddie 0}} {{#rating}}<div class="sheet-template-row">{{rating}}</div>{{/rating}} {{#ampup}}{{#rollGreater() ampup 0}} <div class="sheet-template-row"> <span class="sheet-template-desc">Amp Up: {{ampup}}</span> </div> {{/rollGreater() ampup 0}}{{/ampup}} {{#drain}}{{#rollGreater() drain 0}} <div class="sheet-template-row"> <span class="sheet-template-desc">Drain: {{drain}}</span> </div> {{/rollGreater() drain 0}}{{/drain}} {{#increasearea}}{{#rollGreater() increasearea 0}} <div class="sheet-template-row"> <span class="sheet-template-desc">Increase Area: {{increasearea}}m</span> </div> {{/rollGreater() increasearea 0}}{{/increasearea}} {{#fade}}{{#rollGreater() fade 0}} <div class="sheet-template-row"> <span class="sheet-template-desc">Fade: {{fade}}</span> </div> {{/rollGreater() fade 0}}{{/fade}} {{#desc}} <div class="sheet-template-row"> <span class="sheet-template-desc"> {{desc}} {{#rollGreater() rea 0}}, <span data-i18n="reach">Reach<span> {{rea}}{{/rollGreater() rea 0}} {{#rollLess() drain 2}}, <span data-i18n="drain-2">Drain 2<span>{{/rollLess() drain 2}} </span> </div> {{/desc}} {{#opp}}<div class="sheet-template-row">{{opp}}</div>{{/opp}} </div> </rolltemplate> </div> <input type="hidden" name="attr_wounds" value="0" /> <input type="hidden" name="attr_explode_toggle" value="" /> <input type="hidden" name="attr_attribute_roll" value="" /> <input type="hidden" name="attr_armor_name" value="select a Primary in Arms" /> <input type="hidden" name="attr_soak" min="0" value="3" /> <input type="hidden" name="attr_armor" min="0" value="3" /> <input type="hidden" name="attr_chem_protection" min="0" value="3" /> <input type="hidden" name="attr_cold_protection" min="0" value="3" /> <input type="hidden" name="attr_elec_protection" min="0" value="3" /> <input type="hidden" name="attr_fire_protection" min="0" value="3" /> <input type="hidden" name="attr_radiation_protection" min="0" value="3" /> <input type="hidden" name="attr_primary_range_weapon" value="select a Primary in Arms" /> <input type="hidden" name="attr_primary_range_weapon_skill" /> <input type="hidden" name="attr_primary_range_weapon_damage" /> <input type="hidden" name="attr_primary_range_weapon_dicepool" /> <input type="hidden" name="attr_primary_range_weapon_acc" /> <input type="hidden" name="attr_primary_range_weapon_ap" /> <input type="hidden" name="attr_primary_range_weapon_recoil" /> <input type="hidden" name="attr_primary_range_weapon_ammo" /> <input type="hidden" name="attr_shots_fired" value="1" /> <input type="hidden" name="attr_primary_melee_weapon" value="select a Primary in Arms" /> <input type="hidden" name="attr_primary_melee_weapon_skill" /> <input type="hidden" name="attr_primary_melee_weapon_damage" /> <input type="hidden" name="attr_primary_melee_weapon_dicepool" /> <input type="hidden" name="attr_primary_melee_weapon_acc" /> <input type="hidden" name="attr_primary_melee_weapon_ap" /> <input type="hidden" name="attr_primary_melee_weapon_reach" /> <input type="hidden" name="attr_initiative_mod" value="0" /> <input type="hidden" name="attr_initiative_dice" min="1" max="5" value="1" /> <input type="hidden" name="attr_astral_mod" value="6" /> <input type="hidden" name="attr_astral_dice" max="5" value="2" /> <input type="hidden" name="attr_matrix_mod" value="0" /> <input type="hidden" name="attr_matrix_dice" max="5" /> <input type="hidden" name="attr_matrix_dice_mod" value="0" /> <input type="hidden" name="attr_cold_sim_mod" value="0" /> <input type="hidden" name="attr_cold_sim_dice" max="5" /> <input type="hidden" name="attr_cold_sim_dice_mod" value="0" /> <input type="hidden" name="attr_hot_sim_mod" value="0" /> <input type="hidden" name="attr_hot_sim_dice" max="5" /> <input type="hidden" name="attr_hot_sim_dice_mod" value="0" /> <input type="hidden" name="attr_walk" value="12" /> <input type="hidden" name="attr_run" value="24" /> <input type="hidden" name="attr_physical" value="10" /> <input type="hidden" name="attr_stun" value="10" /> <input type="hidden" name="attr_physical_max" min="0" value="10" /> <input type="hidden" name="attr_stun_max" min="0" value="10" /> <input type="hidden" name="attr_matrix" value="10" /> <input type="hidden" name="attr_matrix_max" min="8" value="10" /> <input type="hidden" name="attr_defense" value="6" /> <input type="hidden" name="attr_acting" min="0" value="0" /> <input type="hidden" name="attr_aeronauticsmechanic" min="0" value="0" /> <input type="hidden" name="attr_alchemy" min="0" value="0" /> <input type="hidden" name="attr_animalhandling" min="0" value="0" /> <input type="hidden" name="attr_arcana" min="0" value="0" /> <input type="hidden" name="attr_archery" min="0" value="0" /> <input type="hidden" name="attr_armorer" min="0" value="0" /> <input type="hidden" name="attr_artificing" min="0" value="0" /> <input type="hidden" name="attr_artisan" min="0" value="0" /> <input type="hidden" name="attr_assensing" min="0" value="0" /> <input type="hidden" name="attr_astralcombat" min="0" value="0" /> <input type="hidden" name="attr_athletics" min="0" value="0" /> <input type="hidden" name="attr_automatics" min="0" min="0" value="0" /> <input type="hidden" name="attr_automotivemechanic" min="0" value="0" /> <input type="hidden" name="attr_banishing" min="0" value="0" /> <input type="hidden" name="attr_binding" min="0" value="0" /> <input type="hidden" name="attr_biotech" min="0" value="0" /> <input type="hidden" name="attr_biotechnology" min="0" value="0" /> <input type="hidden" name="attr_blades" min="0" value="0" /> <input type="hidden" name="attr_chemistry" min="0" value="0" /> <input type="hidden" name="attr_closecombat" min="0" value="0" /> <input type="hidden" name="attr_clubs" min="0" value="0" /> <input type="hidden" name="attr_compiling" min="0" value="0" /> <input type="hidden" name="attr_computer" min="0" value="0" /> <input type="hidden" name="attr_con" min="0" value="0" /> <input type="hidden" name="attr_conjuring" min="0" value="0" /> <input type="hidden" name="attr_counterspelling" min="0" value="0" /> <input type="hidden" name="attr_cracking" min="0" value="0" /> <input type="hidden" name="attr_cybercombat" min="0" value="0" /> <input type="hidden" name="attr_cybertechnology" min="0" value="0" /> <input type="hidden" name="attr_decompiling" min="0" value="0" /> <input type="hidden" name="attr_demolitions" min="0" value="0" /> <input type="hidden" name="attr_disenchanting" min="0" value="0" /> <input type="hidden" name="attr_disguise" min="0" value="0" /> <input type="hidden" name="attr_diving" min="0" value="0" /> <input type="hidden" name="attr_electronics" min="0" value="0" /> <input type="hidden" name="attr_electronicwarfare" min="0" value="0" /> <input type="hidden" name="attr_enchanting" min="0" value="0" /> <input type="hidden" name="attr_engineering" min="0" value="0" /> <input type="hidden" name="attr_escapeartist" min="0" value="0" /> <input type="hidden" name="attr_etiquette" min="0" value="0" /> <input type="hidden" name="attr_exoticmelee" min="0" value="0" /> <input type="hidden" name="attr_exoticrange" min="0" value="0" /> <input type="hidden" name="attr_firearms" min="0" value="0" /> <input type="hidden" name="attr_firstaid" min="0" value="0" /> <input type="hidden" name="attr_flight" min="0" value="0" /> <input type="hidden" name="attr_forgery" min="0" value="0" /> <input type="hidden" name="attr_freefall" min="0" value="0" /> <input type="hidden" name="attr_gunnery" min="0" value="0" /> <input type="hidden" name="attr_gymnastics" min="0" value="0" /> <input type="hidden" name="attr_hacking" min="0" value="0" /> <input type="hidden" name="attr_hardware" min="0" value="0" /> <input type="hidden" name="attr_heavyweapons" min="0" value="0" /> <input type="hidden" name="attr_impersonation" min="0" value="0" /> <input type="hidden" name="attr_industrialmechanic" min="0" value="0" /> <input type="hidden" name="attr_influence" min="0" value="0" /> <input type="hidden" name="attr_instruction" min="0" value="0" /> <input type="hidden" name="attr_intimidation" min="0" value="0" /> <input type="hidden" name="attr_leadership" min="0" value="0" /> <input type="hidden" name="attr_locksmith" min="0" value="0" /> <input type="hidden" name="attr_longarms" min="0" value="0" /> <input type="hidden" name="attr_medicine" min="0" value="0" /> <input type="hidden" name="attr_nauticalmechanic" min="0" value="0" /> <input type="hidden" name="attr_navigation" min="0" value="0" /> <input type="hidden" name="attr_negotiation" min="0" value="0" /> <input type="hidden" name="attr_outdoors" min="0" value="0" /> <input type="hidden" name="attr_palming" min="0" value="0" /> <input type="hidden" name="attr_perception" min="0" value="0" /> <input type="hidden" name="attr_performance" min="0" value="0" /> <input type="hidden" name="attr_pilot" min="0" value="0" /> <input type="hidden" name="attr_pistols" min="0" value="0" /> <input type="hidden" name="attr_registering" min="0" value="0" /> <input type="hidden" name="attr_ritualspellcasting" min="0" value="0" /> <input type="hidden" name="attr_running" min="0" value="0" /> <input type="hidden" name="attr_sneaking" min="0" value="0" /> <input type="hidden" name="attr_software" min="0" value="0" /> <input type="hidden" name="attr_sorcery" min="0" value="0" /> <input type="hidden" name="attr_spellcasting" min="0" value="0" /> <input type="hidden" name="attr_stealth" min="0" value="0" /> <input type="hidden" name="attr_summoning" min="0" value="0" /> <input type="hidden" name="attr_survival" min="0" value="0" /> <input type="hidden" name="attr_swimming" min="0" value="0" /> <input type="hidden" name="attr_tasking" min="0" value="0" /> <input type="hidden" name="attr_throwingweapons" min="0" value="0" /> <input type="hidden" name="attr_tracking" min="0" value="0" /> <input type="hidden" name="attr_unarmedcombat" min="0" value="0" /> <input type="hidden" name="attr_sheet_version" value="0.25"> <script type="text/worker"> //Sheet workers on("sheet:opened", function() { getAttrs(['sheet_type', 'sheet_version'], (v) => { console.log(`%c Shadowrun 6th World v${v['sheet_version']}`, "color: blue; font-weight:bold"); console.log(`%c Sheet Type: ${v['sheet_type']}`, "color: red; font-weight:bold"); }); }); on("clicked:shots_remove clicked:shots_add", (eventinfo) => { getAttrs([`shots_fired`], (v) => { let shots = parseInt(v[`shots_fired`]) || 0; const trigger = eventinfo.triggerName; setAttrs({ shots_fired: (shots > 0 && trigger.includes("remove")) ? shots -= 1 : trigger.includes("add") ? shots += 1 : shots }); }); }); on("clicked:primary_ammo", (eventinfo) => { getAttrs([`primary_range_weapon_ammo`, `shots_fired`], (v) => { let ammo = parseInt(v[`primary_range_weapon_ammo`]) || 0; const shots = parseInt(v[`shots_fired`]) || 0; setAttrs({ primary_range_weapon_ammo: ammo -= shots }); }); }); on("change:primary_range_weapon_mode", (eventinfo) => { var mode = eventinfo.newValue; var rounds = 1; switch(mode) { case "FA": rounds = 10; break; case "BF": rounds = 4; break; case "SA": rounds = 2; break; case "SS": default: rounds = 1; } setAttrs({ shots_fired: rounds }); }); on("clicked:reload", (eventinfo) => { getAttrs([`primary_range_weapon_ammo_max`], (v) => { const reload = parseInt(v[`primary_range_weapon_ammo_max`]) || 0; setAttrs({ primary_range_weapon_ammo: reload }); }); }); ["active", "knowledge", "language"].forEach((attr) => { on(`clicked:repeating_${attr}:skill`, (eventinfo) => { settingsToggle(eventinfo); }); }); ["quality", "martial", "items", "range", "melee", "armor", "spell", "preps", "ritual", "powers", "forms", "vehicle", "augementations", "lifestyle", "contacts", "programs"].forEach((attr) => { on(`clicked:repeating_${attr}:${attr}`, (eventinfo) => { settingsToggle(eventinfo); }); }); const settingsToggle = (eventinfo) => { const split = eventinfo.sourceAttribute.split("_"); const source = `${split[0]}_${split[1]}_${split[2]}`; getAttrs([`${source}_flag`], (v) => { setAttrs({ [`${source}_flag`]: (v[`${source}_flag`] === "settings") ? "display" : "settings" }); }); }; [`core`, `arms`, `augs`, `gear`, `magic`, `matrix`, `social`, `vehicle`, `options`].forEach(attr => { on(`clicked:tab_${attr}`, () => { setAttrs({tab: attr}); }); }); //Watch for Updates and Run the needed functions on("change:agility change:walk_modifier change:run_modifier", () => { }); on("change:body change:strength change:lift_carry_modifier", (eventinfo) => { const source = eventinfo.sourceAttribute; update_common_rolls(["body", "willpower", "lift_carry_modifier"]); //ONLY RUN ON BODY CHANGE if (source.includes("body")) { update_common_rolls(["body", "body", "overflow_modifier"]); update_common_rolls(["body", "armor_rating", "soak_modifier", "soak_temp", `soak_temp_flag`]); update_track("physical"); }; }); on("change:reaction change:intuition", (eventinfo) => { const source = eventinfo.sourceAttribute; update_common_rolls(["reaction", "intuition", "defense_modifier", "defense_temp", `defense_temp_flag`]); update_initiative(); //ONLY RUN ON INTUITION CHANGE (source.includes("intuition")) ? update_common_rolls(["willpower", "intuition", "judge_intentions_modifier"]) : false; }); on("change:willpower", () => { update_common_rolls(["charisma", "willpower", "composure_modifier"]); update_common_rolls(["body", "willpower", "lift_carry_modifier"]); update_track("stun"); }); on("change:logic change:memory_modifier", (eventinfo) => { const source = eventinfo.sourceAttribute; update_common_rolls(["logic", "intuition", "memory_modifier"]); }); on("change:intuition change:memory_modifier", (eventinfo) => { const source = eventinfo.sourceAttribute; update_common_rolls(["logic", "intuition", "memory_modifier"]); }); on("change:charisma change:composure_modifier change:judge_intentions_modifier", (eventinfo) => { const source = eventinfo.sourceAttribute; //CHARISMA & COMPOSURE UPDATE COMPOSURE (source.includes("charisma") || source.includes("composure")) ? update_common_rolls(["charisma", "willpower", "composure_modifier"]) : false; //CHARISMA & JUDGE INTENTIONS UPDATE JUDGE INTENTIONS (source.includes("charisma") || source.includes("judge")) ? update_common_rolls(["willpower", "intuition", "judge_intentions_modifier"]) : false; }); on("change:essence", () => { // This shouldn't be manually changed by the player it's a calculated value. See the update_essence function. }); on("change:physical_modifier change:flag_drone", () => { update_track("physical"); }); on("change:stun_modifier", () => { update_track("stun"); }); on("change:defense_modifier change:defense_temp change:defense_temp_flag", () => { update_common_rolls(["reaction", "intuition", "defense_modifier", "defense_temp", `defense_temp_flag`]); }); on("change:armor_rating change:soak_modifier change:soak_temp change:soak_temp_flag", () => { update_common_rolls(["body", "armor_rating", "soak_modifier", "soak_temp", `soak_temp_flag`]); }); on("change:pain_tolerance", () => { update_wounds(); }); // Update the name of the attribute used when rolling Unskilled Skill Use on("change:default_attribute", (eventinfo) => { var new_attr = eventinfo.newValue; // newValue will be something like "@{attribute_name}" so we cut out the @{ and } and capitalize the first letter setAttrs({ 'default_display': new_attr.charAt(2).toUpperCase() + new_attr.slice(3, -1) }); }); //Calculate ATTRIBUTES ['body', 'agility', 'reaction', 'strength', 'willpower', 'logic', 'intuition','charisma','magic', 'resonance'].forEach(attr => { // Attach listener on(`change:${attr}_base change:${attr}_modifier change:${attr}_temp change:${attr}_temp_flag`, () => { // Load attribute values getAttrs([`${attr}_base`, `${attr}_modifier`, `${attr}_temp`, `${attr}_temp_flag`], (v) => { // Do some math to calculate the total const bas = parseInt(v[`${attr}_base`]) || 0; const mod = parseInt(v[`${attr}_modifier`]) || 0; const tem = (v[`${attr}_temp_flag`] === "on") ? parseInt(v[`${attr}_temp`]) || 0 : 0; const bon = mod + tem; const stat = bas + bon; // Update the finalized total setAttrs({ [attr]: stat, [`display_${attr}`]: bon === 0 ? bas : `${bas} (${stat})` }); }); }); }); // Update the essence count (6 - aug_mods - calculated augmentation costs = total) var update_essence = () => { let ess = 6; let aug_ess_cost = 0; getSectionIDs("augmentations", (ids) => { _.each(ids, (id) => { getAttrs([`repeating_augmentations_${id}_essence_cost`], (aug_ess) => { aug_ess_cost += aug_ess[`repeating_augmentations_${id}_essence_cost`]; setAttrs({ aug_essence_cost: parseFloat(aug_ess_cost).toFixed(2) }); ess -= aug_ess[`repeating_augmentations_${id}_essence_cost`]; setAttrs({ essence: parseFloat(ess).toFixed(2) }); }); }); getAttrs(['essence_mod', 'magic', 'matrix_device_essence_cost'], (a) => { var em = 0; if(! isNaN(a['essence_mod']) && a['essence_mod'] !== '') { em = a['essence_mod']; } ess += parseFloat(em); ess -= parseFloat(a['matrix_device_essence_cost']) || 0; // Trying to update magic as essence drops but it's not a simple process will revisit later // var magic = 0; // if(! isNaN(a['magic']) && a['magic'] !== '') { // magic = a['magic']; // } setAttrs({ essence: parseFloat(ess).toFixed(2) }); }); }); }; //This function watches for changes to augmentations and updates recalculates essence on("change:essence_mod remove:repeating_augmentations change:repeating_augmentations:essence_cost change:matrix_device_essence_cost", (eventInfo) => { update_essence(); }); // Catch changes to magic, tradition, logic or charisma to update magic AR on("change:magic change:tradition change:logic change: charisma", (eventinfo) => { getAttrs(["magic", "tradition", "logic", "charisma"], (v) => { var magic_ar = v.magic; switch(v.tradition) { case "Hermeticism": magic_ar += v.logic; break; case "Shamanism": magic_ar += v.charisma; break; default: magic_ar = 0; break; } setAttrs({ 'magic_ar': magic_ar }); }); }); /********************************************************/ /* MATRIX TAB SHEET WORKERS */ /********************************************************/ //This function watches for changes to repeating_devices and updates the ASDF and Device Rating as needed on("change:repeating_devices remove:repeating_devices", (eventInfo) => { const source = eventInfo.sourceAttribute; const newV = eventInfo.newValue; // sum repeating device matrix initiative bonuses and essence costs getSectionIDs('devices', function(ids) { var matrix_bonus = 0; var essence_cost = 0; ids.forEach(id => { getAttrs([`repeating_devices_${id}_matrix_initiative_bonus`, `repeating_devices_${id}_essence_cost`], (a) => { matrix_bonus += parseInt(a[`repeating_devices_${id}_matrix_initiative_bonus`]) || 0; essence_cost += parseFloat(a[`repeating_devices_${id}_essence_cost`]) || 0; setAttrs({ matrix_device_initiative_bonus: matrix_bonus, matrix_device_essence_cost: essence_cost }); }); }); // If the device list is empty update these to 0 which triggers recalculations. if(ids.length == 0) { setAttrs({ matrix_device_initiative_bonus: 0, matrix_device_essence_cost: 0, matrix_device_rating: 0 }); } }); // Get a bunch of attributes (device rating, primary, ASDF, condition monitor, condition monitor max) getAttrs(['attr_matrix_con', 'attr_condition_monitor_link', 'repeating_device_device', 'repeating_device_device_rating', 'repeating_device_primary_device', 'repeating_device_attack', 'repeating_device_attack_primary', 'repeating_device_sleaze', 'repeating_device_sleaze_primary', 'repeating_device_data_processing', 'repeating_device_data_processing_primary', 'repeating_device_firewall', 'repeating_device_firewall_primary', 'repeating_device_condition_monitor', 'repeating_device_condition_monitor_max', 'repeating_device_matrix_initiative_bonus'], (v) => { var toUpdate = {}; // Check if the event was related to the primary flag being turned on (we'll need to recalculate if(source.includes('primary_device') && newV == '1') { // Update the attr_matrix_device_rating toUpdate['matrix_device_rating'] = v['repeating_device_device_rating'] || 0; // Update condition_monitor_link with the full id of this device toUpdate['condition_monitor_link'] = eventInfo.triggerName; // Update matrix_hex with the new condition toUpdate['matrix_hex'] = v['repeating_device_condition_monitor'] || 0; // Update matrix_hex with the new condition toUpdate['matrix_hex_max'] = v['repeating_device_condition_monitor_max'] || 0; // Uncheck 'primary' from other devices getSectionIDs('devices', function(ids) { var updates = {}; ids.forEach(id => { if('repeating_devices_'+id != eventInfo.triggerName) { updates[`repeating_devices_${id}_primary_device`] = 0; } }); setAttrs(updates); }); } /* When the device rating changes so should the Condition Monitor Max ONLY IF they haven't entered something there already*/ if(source.includes('device_rating')) { if(! v['repeating_device_condition_monitor_max']) { var device_condition_monitor_max = 8 + Math.ceil(v['repeating_device_device_rating'] / 2) toUpdate[`${eventInfo.triggerName}_condition_monitor_max`] = device_condition_monitor_max; if(typeof(v['repeating_device_condition_monitor']) == 'undefined') { toUpdate[`${eventInfo.triggerName}_condition_monitor`] = device_condition_monitor_max; } } } /* If they changed the device's condition monitor update the hexes ONLY IF THIS IS THE PRIMARY DEVICE */ if(source.includes('condition_monitor') && v['repeating_device_primary_device'] == '1') { // Update matrix_hex with the new condition toUpdate['matrix_hex'] = v['repeating_device_condition_monitor'] || 0; } /* If they changed an attribute If the attribute from this device is used by the persona Update the persona attribute as well */ ['attack', 'sleaze', 'data_processing', 'firewall'].forEach(attr => { if(source.includes(`${attr}`)) { // one of the attrs changed, is it the primary for the persona? if(v[`repeating_device_${attr}_primary`] == '1') { toUpdate[`${attr}_base`] = v[`repeating_device_${attr}`] || 0; } if(source.includes(`${attr}_primary`) && newV == '1') { // If they selected the button uncheck the attribute button from other devices getSectionIDs('devices', function(ids) { var updates = {}; ids.forEach(id => { if('repeating_devices_'+id != eventInfo.triggerName) { updates[`repeating_devices_${id}_${attr}_primary`] = 0; } }); setAttrs(updates); }); } } }); // update everything in toUpdate setAttrs(toUpdate); }); }); on("change:attack change:sleaze", (eventInfo) => { getAttrs(['attack', 'sleaze'], (v) => { const attack = v['attack'] || 0; const sleaze = v['sleaze'] || 0; setAttrs({ matrix_attack_rating: parseInt(attack + sleaze) }); }); }); on("change:data_processing change:firewall", (eventInfo) => { getAttrs(['data_processing', 'firewall'], (v) => { const data_processing = v['data_processing'] || 0; const firewall = v['firewall'] || 0; setAttrs({ matrix_defense_rating: parseInt(data_processing + firewall) }); }); }); on("change:willpower change:logic change:intuition change:charisma change:flag_special", (eventInfo) => { getAttrs(['willpower', 'logic', 'intuition', 'charisma', 'flag_special'], (v) => { if(v['flag_special'] == 'resonance') { setAttrs({ attack_base: v['charisma'], sleaze_base: v['intuition'], data_processing_base: v['logic'], firewall_base: v['willpower'], }); } }); }); /* condition monitor hex change updates device condition monitor */ on("change:matrix_hex", (eventInfo) => { getAttrs(['matrix_hex', 'condition_monitor_link'], (v) => { setAttrs({ [`${v['condition_monitor_link']}_condition_monitor`]: v['matrix_hex'] }); }); }); /* Complex Forms Sheetworkers */ on("change:electronics change:resonance", (eventinfo) => { console.log(eventinfo); getAttrs(['electronics', 'resonance'], (v) => { var complex_forms_attack_rating = parseInt(v['electronics']) || 0; complex_forms_attack_rating += parseInt(v['resonance']) || 0; setAttrs({ 'complex_form_attack_rating': complex_forms_attack_rating }); }); }); //This function checks changes to repeating_armor and updates the Primary Armor if needed on("change:repeating_armor", (eventInfo) => { const source = eventInfo.sourceAttribute; const newV = eventInfo.newValue; const arm = ["repeating_armor"]; const armors = [`${arm}_name`, `${arm}_rating`, `${arm}_chem_modifier`, `${arm}_elec_modifier`, `${arm}_cold_modifier`,`${arm}_fire_modifier`, `${arm}_dicepool_modifier`]; //Check if the event was related to the primary flag & armor is set to primary if (source.includes('primary') && newV === 'primary') { //Get attributes from the repeating_armor getAttrs(armors, (v) => { let update = {}; //Update the hidden static Primary Armor attributes with the repeating_armor attributes _.each(armors, (armor) => { const name = (armor.includes("name") || armor.includes("rating")) ? armor.split("repeating_")[1] : armor.split(`${arm}_`)[1]; update[`${name}`] = v[`${armor}`]; }); setAttrs(update); }); //Set the other repeating_armor primary flags to 0 aka unchecked getSectionIDs(`${arm}`, function(ids) { let IDs = []; let update = {}; for(var i=0; i < ids.length; i++) { IDs.push(`${arm}_` + ids[i] + "_primary"); }; IDs.forEach(id => { if (id != source) { update[`${id}`] = 0; }; }); setAttrs(update); }); //Check if the event was for a relevant Primary Armor attribute } else if (source.includes('name') || source.includes('rating') || source.includes('dicepool') || source.includes('chem') || source.includes('cold') || source.includes('elec') || source.includes('fire')) { //Get the primary flag attribute for this armor. Also get the repeating_armor attribute we'll need for an update, doing it now is more efficient. getAttrs([`${arm}_primary`, `${source}`], (v) => { //Check if this armor is the designated Primary Armor. if (v[`${arm}_primary`] === 'primary') { let update = {}; //Apply the repeating_armor attribute to its static counterpart switch (true) { case /name/.test(source) : update["armor_name"] = v[`${source}`]; break; case /rating/.test(source) : update["armor_rating"] = v[`${source}`]; break; case /dicepool/.test(source) : update["soak_modifier"] = v[`${source}`]; break; case /chem/.test(source) : update["chem_modifier"] = v[`${source}`]; break; case /cold/.test(source) : update["cold_modifier"] = v[`${source}`]; break; case /elec/.test(source): update["elec_modifier"] = v[`${source}`]; break; case /fire/.test(source) : update["fire_modifier"] = v[`${source}`]; break; default: console.log(`Source ${source} was invalid`); } setAttrs(update); }; }); } // Update DR and resists on Core Combat Info -> Armor section getSectionIDs("armor", function(ids) { // Update rating and resist totals let ratingTot = 0, chemTot = 0, coldTot = 0, elecTot = 0, fireTot = 0; getAttrs(['body'], (v) => { ratingTot = v['body']; }); ids.forEach(id => { var armorFields = [`${arm}_${id}_rating`, `${arm}_${id}_chem`, `${arm}_${id}_cold`, `${arm}_${id}_elec`, `${arm}_${id}_fire`, `${arm}_${id}_primary`, `${arm}_${id}_cumulative`]; getAttrs(armorFields, (af) => { if(af[`${arm}_${id}_primary`] != 0 || af[`${arm}_${id}_cumulative`] != 0) { ratingTot += parseInt(af[`${arm}_${id}_rating`]); } chemTot += parseInt(af[`${arm}_${id}_chem`]); coldTot += parseInt(af[`${arm}_${id}_cold`]); elecTot += parseInt(af[`${arm}_${id}_elec`]); fireTot += parseInt(af[`${arm}_${id}_fire`]); setAttrs({ 'armor_rating': ratingTot, 'resist_cold_total': coldTot, 'resist_chem_total': chemTot, 'resist_elec_total': elecTot, 'resist_fire_total': fireTot, }); }); }); }); }); // COMMON ROLLS: MEMORY, JUDGE INTENTIONS, COMPOSURE, LIFT & CARRY, OVERFLOW, DEFENSE, & SOAK ROLLS const update_common_rolls = (attrs) => { getAttrs(attrs, (v) => { const found = attrs.find((mod) => { return mod.includes("_modifier") }); const name = found.split("_modifier")[0]; let numbers = []; //DEFENSE & SOAK HAVE TWO EXTRA ATTRIBUTES. TEMP IS NEEDED BUT ONLY IF THE FLAG IS CHECKED IN SETTINGS const array = (name === "defense" || name === "soak") ? (v[`${name}_temp_flag`] === "on") ? attrs.splice(0, 4) : attrs.splice(0, 3) : attrs; _.each(array, (attr) => { numbers.push(parseInt(v[`${attr}`]) || 0); }); const add = (a, b) => a + b, sum = numbers.reduce(add); setAttrs({[`${name}`]: sum}); }); }; //Update condition tracks const update_track = (track) => { let attrs = [`${track}_modifier`, `${track}_damage`]; (track === "stun") ? attrs.push("willpower") : attrs.push("body", "sheet_type", "flag_drone"); getAttrs(attrs, (v) =>{ const attr1 = attrs[2], stat1 = parseInt(v[`${attr1}`]) || 0; //Willpower or Body const mod = parseInt(v[`${track}_modifier`]) || 0; const dam = parseInt(v[`${track}_damage`]) || 0; let update = {}; if (track === "stun" || v["sheet_type"] === "pc" || v["sheet_type"] === "grunt") { tot = Math.ceil(stat1/2) + 8 + mod; } else if (v["sheet_type"] === "vehicle" && v["flag_drone"] === "drone") { tot = (Math.ceil(stat1/2) + 6 + mod); } else if (v["sheet_type"] === "vehicle") { tot = (Math.ceil(stat1/2) + 12 + mod); } else { tot = 0; //Sprites don't have Stun or Physical track }; const current = (dam != 0) ? tot - dam : tot; update[`${track}`] = current; update[`${track}_max`] = tot; setAttrs(update, {silent:true}); }); }; //Calculate Device Rating Track on("change:device_rating change:matrix_modifier", () => { getAttrs(["device_rating","matrix_modifier","matrix"], (v) =>{ const dev = parseInt(v.device_rating) || 0, mod = parseInt(v.matrix_modifier) || 0; const dam = parseInt(v.matrix) || 0; const tot = Math.ceil(dev/2) + 8 + mod; const current = (dam > 0) ? dam : tot; setAttrs({matrix: current}); setAttrs({matrix_max: tot}); }); }); //Convert physical into the physical damage track boxes and reverse ['physical', 'stun'].forEach(attr => { on(`change:${attr} change:${attr}_damage`, (eventinfo) => { getAttrs([`${attr}`, `${attr}_damage`, `${attr}_max`], (v) => { const stat = parseInt(v[`${attr}`]) || 0, dam = parseInt(v[`${attr}_damage`]) || 0, max = parseInt(v[`${attr}_max`]) || 0, source = eventinfo.sourceAttribute; const wou = (source === `${attr}`) ? max - stat : max - dam; if (source === `${attr}`) { (dam === wou) ? false : ((stat < max && dam != wou) ? setAttrs({[`${attr}_damage`]: wou}, {silent: true}) : setAttrs({[`${attr}_damage`]: 0}, {silent: true})); } else { (stat === wou) ? false : setAttrs({[`${attr}`]: wou}, {silent: true}); }; update_wounds(); }); }); }); const update_wounds = () => { getAttrs(["stun_damage", "physical_damage", "pain_tolerance"], (v) => { const stu = parseInt(v.stun_damage) || 0, phy = parseInt(v.physical_damage) || 0, pai = parseInt(v.pain_tolerance) || 0; pMod = (phy > 0) ? (Math.floor(phy/3)) : 0; sMod = (stu > 0) ? (Math.floor(stu/3)) : 0; wou = Math.floor(-(pMod) + -(sMod)); if(pai < 0) { wou = wou * 2; } else if(pai > 0 && wou < 0) { wou = wou + 1; } setAttrs({wounds: wou}); }); }; // Trigger initiative updates ['initiative_mod', 'initiative_dice_mod', 'initiative_dice', 'initiative_temp', 'initiative_temp_flag', 'initiative_dice_temp', 'initiative_dice_temp_flag'].forEach(attr => { on(`change:${attr}`, (eventinfo) => { update_initiative(); }); }); //Calculate Initiative var update_initiative = () => { getAttrs(["reaction", "intuition", "initiative_mod", "initiative_temp", "initiative_temp_flag", "initiative_dice_mod", "initiative_dice_temp", "initiative_dice_temp_flag"], (v) => { const rea = parseInt(v.reaction) || 0; const int = parseInt(v.intuition) || 0; const mod = parseInt(v.initiative_mod) || 0; const tmp = (v.initiative_temp_flag === "on") ? parseInt(v.initiative_temp) || 0 : 0; const bas = rea + int; const tot = rea + int + mod + tmp; const dice_mod = parseInt(v.initiative_dice_mod) || 0; const dice_tmp = (v.initiative_dice_temp_flag === "on") ? parseInt(v.initiative_dice_temp) || 0 : 0; const dice_tot = 1 + dice_mod + dice_tmp; let update = {}; update["initiative_base"] = tot; update["display_initiative_base"] = (mod != 0 || tmp != 0) ? `${bas} (${tot})` : bas; update["initiative_dice"] = dice_tot; setAttrs(update); }); }; // Trigger astral initiative updates ['astral_initiative_mod', 'astral_initiative_dice_mod', 'astral_initiative_dice', 'astral_initiative_temp', 'astral_initiative_temp_flag', 'astral_initiative_dice_temp', 'astral_initiative_dice_temp_flag'].forEach(attr => { on(`change:${attr}`, (eventinfo) => { update_astral_initiative(); }); }); //Calculate Astral Initiative var update_astral_initiative = () => { getAttrs(["intuition", "logic", "astral_initiative_mod", "astral_initiative_temp", "astral_initiative_temp_flag", "astral_initiative_dice_mod", "astral_initiative_dice_temp", "astral_initiative_dice_temp_flag"], (v) => { const int = parseInt(v.intuition) || 0; const log = parseInt(v.logic) || 0; const mod = parseInt(v.astral_initiative_mod) || 0; const tmp = (v.astral_initiative_temp_flag === "on") ? parseInt(v.astral_initiative_temp) || 0 : 0; const bas = int + log; const tot = int + log + mod + tmp; const dice_mod = parseInt(v.astral_initiative_dice_mod) || 0; const dice_tmp = (v.astral_initiative_dice_temp_flag === "on") ? parseInt(v.astral_initiative_dice_temp) || 0 : 0; const dice_tot = 2 + dice_mod + dice_tmp; let update = {}; update["astral_initiative_base"] = tot; update["display_astral_initiative_base"] = (mod != 0 || tmp != 0) ? `${bas} (${tot})` : bas; update["astral_initiative_dice"] = dice_tot; setAttrs(update); }); }; //Calculate Matrix Initiatve. on("change:host_rating change:data_processing change:pilot change:intuition change:reaction change:level change:matrix_initiative_mod change:matrix_initiative_dice_mod change:matrix_initiative_temp change:matrix_initiative_temp_flag change:matrix_initiative_dice_temp change:matrix_initiative_dice_temp_flag change:matrix_device_initiative_bonus", () => { getAttrs(["sheet_type", "data_processing", "pilot", "intuition", "reaction", "host_rating", "level", "matrix_initiative_mod", "matrix_initiative_dice_mod", "matrix_initiative_temp", "matrix_initiative_temp_flag", "matrix_initiative_dice_temp", "matrix_initiative_dice_temp_flag", "matrix_device_initiative_bonus"], (v) => { const dat = parseInt(v.data_processing) || 0; const pil = parseInt(v.pilot) || 0; const int = parseInt(v.intuition) || 0; const rea = parseInt(v.reaction) || 0; const hos = parseInt(v.host_rating) || 0; const lev = parseInt(v.level) || 0; const dev = parseInt(v.matrix_device_initiative_bonus) || 0; const init_mod = parseInt(v.matrix_initiative_mod) || 0; const mod = init_mod + dev; const dice_mod = parseInt(v.matrix_initiative_dice_mod) || 0; const tmp = (v.matrix_initiative_temp_flag === "on") ? parseInt(v.matrix_initiative_temp) || 0 : 0; const dice_tmp = (v.matrix_initiative_dice_temp_flag === "on") ? parseInt(v.matrix_initiative_dice_temp) || 0 : 0; let update = {}; matrix_dice = 1; cold_sim_dice = 2; hot_sim_dice = 3; switch(v.sheet_type) { case 'pc': matrix_tot = rea + int + mod + tmp; matrix_dice = 1 + dice_mod + dice_tmp; cold_sim_tot = int + dat + mod + tmp; cold_sim_dice = 2 + dice_mod + dice_tmp; hot_sim_tot = int + dat + mod + tmp; hot_sim_dice = 3 + dice_mod + dice_tmp; break; case 'vehicle': matrix_tot = dat + pil; cold_sim_tot = dat + pil; hot_sim_tot = dat + pil; break; case 'host': hot_sim_tot = dat + dat; cold_sim_tot = hot_sim_tot; matrix_tot = hot_sim_tot; break; case 'sprite': matrix_tot = dat + lev; cold_sim_tot = dat +lev + pil; hot_sim_tot = dat +lev + pil; break; default: matrix_tot = rea + int; cold_sim_tot = int + dat; hot_sim_tot = int + dat; break; } update["matrix_initiative_base"] = matrix_tot; update["matrix_initiative_dice"] = matrix_dice; update["cold_sim_initiative_base"] = cold_sim_tot; update["cold_sim_initiative_dice"] = cold_sim_dice; update["hot_sim_initiative_base"] = hot_sim_tot; update["hot_sim_initiative_dice"] = hot_sim_dice; setAttrs(update); }); }); //Edge toggle to include ! for exploding dice on("change:edge_toggle", () => { getAttrs(["edge_toggle"], (v) =>{ edg = (v.edge_toggle != 0) ? "!" : ""; setAttrs({explode_toggle: edg}); }); }); //Calculate Reset Condition Track on("clicked:cond_reset", () => { getAttrs(["sheet_type","physical_max","stun_max", "matrix_max"], (v) => { var phy = parseInt(v.physical_max) || 0; var stun = parseInt(v.stun_max) || 0; var mat = parseInt(v.matrix_max) || 0; let update = {}; if (v.sheet_type === "grunt" || v.sheet_type === "pc") { update["physical"] = phy; update["stun"] = stun; } else if (v.sheet_type === "sprite") { update["matrix"] = mat; } else if (v.sheet_type === "vehicle") { update["physical"] = phy; update["matrix"] = mat; } else { return "Not a grunt or vehicle"; }; setAttrs(update); }); }); on("clicked:cond_reset_physical clicked:cond_reset_stun", (eventinfo) => { const attr = eventinfo.triggerName.split("_")[2]; setAttrs({ [`${attr}_damage`] : 0 }); }); //Weapon displays set into an Array // Builder function to display details properly // Note that since undefined are falsey if there's no label or sign we can leave the parameters blank function repeatingStringBuilder(v, keyBase) { return function(key, label, sign) { // fetch the attr from v checking if it has a value const val = v[`${keyBase}${key}`]; if (!val) return ''; // Apply the sign if needed const disp = sign && val > 0 ? `+${val}` : val; // Apply label if needed return label ? `${label} ${disp}` : disp; } } on("change:repeating_weapon", () => { const source = "repeating_weapon_weapon"; getAttrs([`${source}_range`, `${source}_type`, `${source}_reach`, `${source}_acc`, `${source}_dv`, `${source}_ap`, `${source}_mode`, `${source}_rc`, `${source}_ammo`, `${source}_note`, `${source}_primary`], (v) => { // Local builder putting the needed variables into scope for repeatingStringBuilder const b = repeatingStringBuilder(v, `${source}_`); // Determine fields to display and in their proper order and formatting // Anonymous function is purely stylistic and adds more overhead than just a simple switch/case. Personally I find the function looks cleaner and hides any internal scope that might conflict with outside const display = (() => { // 0 for weapon_range is a ranged weapon. A 1 is a melee weapon. switch(v.repeating_weapon_weapon_range) { case '0': // Not a fan of how ammo has to be handled. Could potentially be placed in the repeatingStringBuilder if used more often for other change:repeating functions as some sort of suffix parameter const ammo = b('amm'); return [ b('type'), b('acc', 'ACC'), b('dv', 'DV'), b('ap', 'AP', true), b('mode'), b('rc', 'RC'), ammo ? `${ammo} (c)` : '', b('note') ]; case '1': return [ b('type'), b('reach', 'Reach', true), b('acc', 'ACC'), b('dv', 'DV'), b('ap', 'AP', true), b('note') ]; default: return [ b('type'), b('acc', 'ACC'), b('dv', 'DV'), b('ap', 'AP', true), b('note') ]; } })() // Remove all empty strings .filter(s => s) // Concat all the strings and add comma between .join(', '); let update = {}; update[`${source}`] = `[${display}]`; // Finally wrap square brackets around the weapon display setAttrs(update); }); }); //Spell displays set into an Array on("change:repeating_NPCspell", () => { getAttrs(["repeating_NPCspell_combat_type", "repeating_NPCspell_type", "repeating_NPCspell_range", "repeating_NPCspell_damage", "repeating_NPCspell_duration", "repeating_NPCspell_drain", "repeating_NPCspell_note"], (v) =>{ const com = v.repeating_NPCspell_combat_type; const typ = `Type ${v.repeating_NPCspell_type}, `; const ran = `${v.repeating_NPCspell_range}, `; const dam = `Damage ${v.repeating_NPCspell_damage}, `; const dur = `Duration ${v.repeating_NPCspell_duration}, `; const not = `, ${v.repeating_NPCspell_note}`; const dra = v.repeating_NPCspell_drain; const drain = (dra > 0) ? `F+${dra} ` : (dra < 0) ? `F${dra} ` :"F "; const info = `[${typ}${ran}${dam}${dur}${drain}${not}]`; display = (com === "Direct, Force ") ? ` (Direct) ${info}` : (com === "Indirect, Force ?{Force|}, AP -") ? ` (Indirect) ${info}` : `${info}`; setAttrs({repeating_NPCspell_spell: display}); }); }); //Complex Form displays set into an Array on("change:repeating_form", () => { getAttrs(["repeating_form_form_duration", "repeating_form_form_target", "repeating_form_form_fade", "repeating_form_form_note", ], (v) =>{ const tar = `Target ${v.repeating_form_form_target}, `; const dur = `Duration ${v.repeating_form_form_duration}, `; const not = `, ${v.repeating_form_form_note}` || ''; const fad = (v.repeating_form_form_fade > 0) ? `L+${v.repeating_form_form_fade}` : (v.repeating_form_form_fade < 0) ? `L${v.repeating_form_form_fade}` : "L"; setAttrs({ repeating_form_form: ` [${tar}${dur}${fad}${not}]` }); }); }); //IC displays are set into an Array on("change:repeating_IC", () => { getAttrs(["attack", "data_processing", "repeating_IC_IC_limit", "repeating_IC_IC_attribute", "repeating_IC_IC_matrix", "repeating_IC_IC_note"], (v) =>{ const att = parseInt(v.attack) || 0; const data = parseInt(v.data_processing) || 0; const attr = v.repeating_IC_IC_attribute; const mat = v.repeating_IC_IC_matrix; const not = v.repeating_IC_IC_note; setAttrs({ repeating_IC_IC: (v.repeating_IC_IC_limit === "@{data_processing}") ? ` ([${data}] vs. ${attr} + ${mat}, ${not})` : `([${att}] vs. ${attr} + ${mat}, ${not})` }); }); }); //IC Attack Dice & Condition Track on("change:host_rating", () => { getAttrs(["host_rating"], (v) => { var hos = parseInt(v.host_rating) || 0; var tot = 8 + Math.ceil(hos/2); var atk = Math.min(hos + hos); setAttrs({matrix: tot}); setAttrs({ic_attack: atk}); }); }); //Sprite Condition Track on("change:level", () => { getAttrs(["level"], (v) => { var lev = parseInt(v.level) || 0; var tot = 8 + Math.ceil(lev/2); setAttrs({matrix: tot}); }); }); on("change:repeating_skills:name", (eventInfo) => { const skill = eventInfo.newValue; const prefix = eventInfo.triggerName.replace('_name', ''); switch(skill) { case 'Athletics': case 'Close Combat': case 'Exotic Weapons': case 'Firearms': case 'Stealth': setAttrs({[`${prefix}_attribute`]: '@{agility}'}); break; case 'Con': case 'Influence': setAttrs({[`${prefix}_attribute`]: '@{charisma}'}); break; case 'Astral': case 'Outdoors': case 'Perception': setAttrs({[`${prefix}_attribute`]: '@{intuition}'}); break; case 'Biotech': case 'Cracking': case 'Electronics': case 'Engineering': setAttrs({[`${prefix}_attribute`]: '@{logic}'}); break; case 'Conjuring': case 'Enchanting': case 'Sorcery': setAttrs({[`${prefix}_attribute`]: '@{magic}'}); break; case 'Piloting': setAttrs({[`${prefix}_attribute`]: '@{reaction}'}); break; case 'Tasking': setAttrs({[`${prefix}_attribute`]: '@{resonance}'}); break; default: setAttrs({[`${prefix}_attribute`]: '@{agility}'}); break; } }); //REFACTORED Skills ['repeating_skills','repeating_active','repeating_knowledge','repeating_language'].forEach(field => { on(`change:${field}`, (eventinfo) => { const source = eventinfo.sourceAttribute; const type = eventinfo.sourceType; if (source.includes("rating")) { getAttrs([`${field}_rating`, `${field}_rating_modifier`, `${field}_name`], (v) => { const bas = parseInt(v[`${field}_rating`]) || 0; const mod = parseInt(v[`${field}_rating_modifier`]) || 0; const tot = bas + mod; const skill = v[`${field}_name`] || ''; // Update repeating melee weapon skill and rating values getSectionIDs("melee", function(ids) { for(var i = 0; i < ids.length; i++) { let skillIdName = "repeating_melee_" + ids[i] + "_skill"; let skillRating = "repeating_melee_" + ids[i] + "_rating"; getAttrs([skillIdName], (v2) => { if(v2[skillIdName] == v[`${field}_name`]) { setAttrs({ [skillRating]: bas }); } }); } }); // Update repeating range weapon skill and rating values getSectionIDs("range", function(ids) { for(var i = 0; i < ids.length; i++) { let skillIdName = "repeating_range_" + ids[i] + "_skill"; let skillRating = "repeating_range_" + ids[i] + "_rating"; getAttrs([skillIdName], (v2) => { if(v2[skillIdName] == v[`${field}_name`]) { setAttrs({ [skillRating]: bas }); } }); } }); setAttrs({ [`${field}_dicepool`]: tot, [`${field}_rating`]: bas, [`${field}_display_rating`]: (mod === 0) ? bas : `${bas} (${tot})`, [skill]: bas }); }); } else if (source.includes("attribute") && type === "player") { getAttrs([`${source}`], (v) => { const attribute = v[`${source}`].slice(2, -1); const translation = getTranslationByKey(`${attribute}`); setAttrs({ [`${field}_display_attribute`]: translation }); }); } else if (source.includes("spec") && type === "player") { getAttrs([`${source}`], (v) => { const bas = v[`${source}`]; const size = bas.length; let display = (size >= 0 && size <= 15) ? `${bas}` : "(" + bas.slice(0, 15) + "...)"; setAttrs({ [`${field}_display_spec`]: display }); }); } else if (source.includes("expert") && type === "player") { getAttrs([`${source}`], (v) => { const bas = v[`${source}`]; const size = bas.length; let display = (size >= 0 && size <= 15) ? `${bas}` : "(" + bas.slice(0, 15) + "...)"; setAttrs({ [`${field}_display_expert`]: display }); }); } else if (source.includes("skill")) { getAttrs([`${source}`], (v) => { const bas = v[`${source}`]; const size = bas.length; let display = (size > 0 && size <= 20) ? bas : (size > 20 ) ? bas.slice(0, 20) + "..." : " "; setAttrs({ [`${field}_display`]: display }); }); } else if (source.includes("dicepool")) { getAttrs([`${source}`, `${field}_skill`], (v) => { const skill = v[`${field}_skill`]; let lowercase = skill.toLowerCase(); let removeGroup = (lowercase.includes("group")) ? lowercase.slice(0, -6) : lowercase; let skillSet = (removeGroup.includes(" ")) ? removeGroup.replace(/ /g,"") : removeGroup; setAttrs({ [`${skillSet}`]: v[`${source}`] }); }); } else { console.log(`Change to ${field} did not set attr`); }; }); }); //REFACTORED Range & MELEE UPDATES ['repeating_range','repeating_melee'].forEach(weap => { on(`change:${weap}`, (eventInfo) => { const source = eventInfo.sourceAttribute; const newV = eventInfo.newValue; const type = weap.slice(-5); getAttrs([`${weap}_dicepool_modifier`, `${weap}_spec`, `${weap}_expert`, `${weap}_skill`], (v) => { const mod = parseInt(v[`${weap}_dicepool_modifier`]) || 0; const spec = parseInt(v[`${weap}_spec`]) || 0; const expert = parseInt(v[`${weap}_expert`]) || 0; const skill = v[`${weap}_skill`] || ''; getAttrs([`${skill}`], (s) => { rating = s[`${skill}`]; const tot = mod + spec + expert + rating; setAttrs({ [`${weap}_rating`]: s[`${skill}`], [`${weap}_dicepool`]: tot }); }); }); if (source.includes('primary')) { if (newV === 'primary') { //Shared attributes names. let array = ["dicepool", "dicepool_modifier", "weapon", "damage", "skill", "rating", "close", "near", "medium", "far", "extreme", "spec", "expert"]; //Add the range or melee specific ones if(type === "range") { array.push("ammo", "ammo_max", "mode"); } if(type === "melee") { } //Add the repeating section to the begining of each attribute let attrs = []; for(var i=0; i < array.length; i++) { attrs.push(`${weap}_` + array[i]); }; getAttrs(attrs, (v) => { let update = {}; //Primary weapon name does not follow the naming scheme. update[`primary_${type}_weapon`] = v[`${weap}_weapon`]; _.each(array, (value) => { if (value != undefined || value != "weapon") { update[`primary_${type}_weapon_${value}`] = (value === "ammo_max") ? v[`${weap}_ammo`] : v[`${weap}_${value}`]; }; }); setAttrs(update); }); //Set the other repeating_weapon primary flags to 0 aka unchecked getSectionIDs(`${weap}`, function(ids) { let IDs = []; let update = {}; for(var i=0; i < ids.length; i++) { IDs.push(`${weap}_` + ids[i] + "_primary"); }; IDs.forEach(id => { if (id != source) { update[`${id}`] = 0; }; }); setAttrs(update); }); }; } else if (source.includes('dicepool') || source.includes('weapon') || source.includes('damage') || source.includes('skill') || source.includes('rating') || source.includes('ammo') || source.includes('mode') || source.includes('close') || source.includes('near') || source.includes('medium') || source.includes('far') || source.includes('extreme')) { getAttrs([`${weap}_primary`, `${source}`], (v) => { if (v[`${weap}_primary`] === 'primary') { let update = {}; //This whole process needs refactored in the future. Its working for now. if (source.includes('ammo')) { update[`primary_${type}_weapon_ammo`] = v[`${source}`]; update[`primary_${type}_weapon_ammo_max`] = v[`${source}`]; } else { console.log(eventInfo); }; setAttrs(update); }; }); } else { console.log("Change was not relevant."); }; }); }); //PC SPELLS/PREPS/RITUALS ['repeating_spell','repeating_preps','repeating_ritual'].forEach(field => { // Attach listener on(`change:${field}`, (eventInfo) => { const source = eventInfo.sourceAttribute; if (source.includes("dicepool") || source.includes("specialization")) { getAttrs([`${field}_spec`, `${field}_dicepool_modifier`], (v) => { const spec = parseInt(v[`${field}_spec`]) || 0; const mod = parseInt(v[`${field}_dicepool_modifier`]) || 0; const tot = spec + mod; setAttrs({ [`${field}_dicepool`]: tot }); }); } else { console.log(`Change to ${field} did not set attr`); }; }); }); //Repeating contacts for PC sheet on("change:repeating_contacts", () => { getAttrs(["repeating_contacts_name"], (v) => { const name = (v.repeating_contacts_name); ((name).length > 0 && (name).length <= 30) ? setAttrs({repeating_contacts_display: (name)}) : ((name).length > 30) ? setAttrs({repeating_contacts_display: (name).slice(0, 30) + "..."}) : setAttrs({repeating_contacts_display: " "}); }); }); //Cyberdeck Calculations ['attack', 'sleaze', 'data_processing', 'firewall'].forEach(attr => { on(`change:${attr}_base change:${attr}_modifier change:${attr}_temp`, () => { update_common_rolls([`${attr}_base`, `${attr}_modifier`, `${attr}_temp`]); }); }); on("change:repeating_vehicle", (eventinfo) => { const id = eventinfo.triggerName; getAttrs([`${id}_handling_onroad`, `${id}_handling_offroad`, `${id}_handling_modifier`, `${id}_acceleration_base`, `${id}_acceleration_modifier`, `${id}_speed_base`, `${id}_speed_modifier`, `${id}_speed_max`, `${id}_armor_base`, `${id}_armor_modifier`, `${id}_body_base`, `${id}_body_modifier`, `${id}_pilot_base`, `${id}_pilot_modifier`, `${id}_sensor_base`, `${id}_sensor_modifier`, `${id}_seats`], (v) => { Object.keys(v).forEach(k => { if(isNaN(parseInt(v[`${k}`]))) { v[`${k}`] = 0; } }); var handling = parseInt(v[`${id}_handling_onroad`]) + parseInt(v[`${id}_handling_modifier`]); if(v[`${id}_handling_offroad`] != 0) { handling = handling + ' (' + v[`${id}_handling_offroad`] + ')'; } var speed = parseInt(v[`${id}_speed_base`]) + parseInt(v[`${id}_speed_modifier`]); speed = speed + ' (' + v[`${id}_speed_max`] + ')'; setAttrs({ "repeating_vehicle_display_handling": handling, "repeating_vehicle_display_speed": speed, "repeating_vehicle_display_acceleration": parseInt(v[`${id}_acceleration_base`]) + parseInt(v[`${id}_acceleration_modifier`]), "repeating_vehicle_display_body": parseInt(v[`${id}_body_base`]) + parseInt(v[`${id}_body_modifier`]), "repeating_vehicle_display_armor": parseInt(v[`${id}_armor_base`]) + parseInt(v[`${id}_armor_modifier`]), "repeating_vehicle_display_pilot": parseInt(v[`${id}_pilot_base`]) + parseInt(v[`${id}_pilot_modifier`]), "repeating_vehicle_display_sensor": parseInt(v[`${id}_sensor_base`]) + parseInt(v[`${id}_sensor_modifier`]) }); }); }); /* ['acceleration', 'armor', 'body', 'data_processing', 'handling_onroad', 'handling_offroad', 'pilot', 'sensor','speed'].forEach(attr => { // Attach listener on(`change:repeating_vehicle:${attr}_base change:repeating_vehicle:${attr}_modifier change:repeating_vehicle:${attr}_temp change:repeating_vehicle:${attr}_max`, () => { // Load attribute values getAttrs([`repeating_vehicle_${attr}_base`, `repeating_vehicle_${attr}_modifier`, `repeating_vehicle_${attr}_temp`, `repeating_vehicle_${attr}_max`], (v) => { // Do some math to calculate the total const bas = parseInt(v[`repeating_vehicle_${attr}_base`]) || 0; const mod = parseInt(v[`repeating_vehicle_${attr}_modifier`]) || 0; const tem = parseInt(v[`repeating_vehicle_${attr}_temp`]) || 0; const max = parseInt(v[`repeating_vehicle_${attr}_max`]) || 0; const bon = mod + tem; const stat = bas + bon; // Update the finalized total setAttrs({ [attr]: stat, [`repeating_vehicle_display_${attr}`]: bon === 0 ? bas : `${bas} (${stat})` }, {silent: true}); }); }); }); */ // CHARACTERMANCER IMPORTER on("clicked:import_launch", (eventinfo) => { startCharactermancer("importer"); }); on("page:importer", () => { setAttrs({builder: "Chummer"}); setCharmancerText({ "directions" : chummerDirections }); }); on("clicked:import", () => { const mancerData = getCharmancerData(); const mancerValues = mancerData["importer"].values; let applyEnabled = true; let setText = {}; // Verify the user entered a JSON in the textarea. If not, provide user feedabck. if (mancerValues.jsonData) { const parsedData = JSON.parse(mancerValues.jsonData) || false; setText[`import-feedback`] = ""; // There is a value in the textarea! Check to see if its a valid JSON. Provide users feeadback if (parsedData) { setText[`import-feedback`] += `<p class="feedback">A valid JSON was imported for ${mancerValues.builder}.</p>` // Send the parsed data to the selected importer or let users know something went wrong if (mancerValues.builder && mancerValues.builder === "Chummer") { if (parsedData.characters && parsedData.characters.character) { importChummer(parsedData.characters.character); } else { setText[`import-feedback`] += `<p class="warning">Parsed JSON is missing character data.</p>`; applyEnabled = false } } else if (mancerValues.builder && mancerValues.builder === "Hero Lab") { importHeroLab(); setText[`import-feedback`] += `<p class="warning">Coming Soon....</p>`; } else { setText[`import-feedback`] += `<p class="warning">A character builder was not selected. Try changing your selection then change it back if needed.</p>`; applyEnabled = false } } else { setText[`import-feedback`] += `<p class="warning"><span>The text imported is not a valid JSON. Verify the JSON is formatted correctly. Check the format at,</span> JSONLint.com.</p>`; applyEnabled = false }; } else { setText[`import-feedback`] = `<p class="warning">No information was entered in the JSON text area.</p>`; applyEnabled = false }; let buttonStatus = (applyEnabled) ? "" : "disabled"; setText[`finish-button`] = `<button class="finish" type="finish" value="apply" data-i18n="apply" ${buttonStatus}>Apply</button>`; setCharmancerText(setText); }); const chummerDirections = `<ol> <li>In Chummer mark your character as created</li> <li>Go to File -> Export -> Export JSON</li> <li>Copy the JSON in the file</li> <li>Paste it into the textfield below</li> <li>Click the Import button</li> <li>Review the data. Use the checkbox <strong>Show Hidden Inputs</strong> to fix data.</li> <li>Click Apply to <u>overwrite</u> information on the character sheet</li> </ol>`; const herolabDirections = ` <ol> <li>Download the file "HLtoRoll20Export.hl" from: https://drive.google.com/file/d/0B3E3jkp51s8aRmpTU1NMRjRIVkk/view</li> <li>Double click the file. Hero Lab will import it automatically now.</li> <li>Load a character</li> <li>Go to File/Save Custom Output and select the "Roll20 Export"</li> <li>Save the file. It should open automatically in your browser</li> <li>Follow the directions.</li> </ol>`; on("change:builder", (eventinfo) => { let setText = {}; setText[`directions`] = (eventinfo.newValue === "Chummer") ? chummerDirections : herolabDirections; setCharmancerText(setText); }); const clean = () => { ['active', 'knowledge', 'language', 'quality', 'martial', 'range', 'melee', 'weapon', 'armor', 'augementations', 'items', 'NPCspell', 'spell', 'rituals', 'preps', 'powers', 'contacts', 'vehicle', 'lifestyle', "programs", "forms"].forEach(group => { getSectionIDs(`repeating_${group}`, (ids) => { ids.forEach((id) => { removeRepeatingRow(`repeating_${group}_${id}`); }); }); }); }; //USEFUL FUNCTIONS const capitialize = (string) => { return string.charAt(0).toUpperCase() + string.slice(1); }; const addFeedback = (attribute, value) => { return `<p class="feedback"><strong>${capitialize(attribute)}:</strong> ${value} </p>` }; const alphabatizeKeys = (unsortedJSON) => { let alphabeticalKeys = {}; Object.keys(unsortedJSON).sort().forEach((key) => { alphabeticalKeys[key] = unsortedJSON[key]; }); return alphabeticalKeys }; const getValInParen = (value) => { return value.split("(")[1].split(")")[0]; }; const getArray = (array) => { return Array.isArray(array) ? array : [ array ]; }; const getSplitNum = (value) => { return value.split("/")[0]; } mylog = function(msg) { let d = new Date(); let lines = new Error().stack.split("\n"); log(d.toUTCString() + " " + lines[2].trim() + " " + msg); } </script> </div>