Files
roll20-character-sheets/UnknownArmies/unknown-armies.html
T
lithl 29cc5da981 Fix drive|max
should be driving|max, sheetworker upgrades sheet to port existing value
2016-05-07 01:48:52 -05:00

587 lines
46 KiB
HTML

<script type="text/worker">
var version = 2.0,
TAS;
initTAS();
//TAS.debugMode();
on('sheet:opened change:violence-hardened change:the-unnatural-hardened change:helplessness-hardened change:isolation-hardened change:self-hardened',
TAS._fn(function updateHardened(e) {
TAS.debug('Updating hardened values', e);
getAttrs(['violence-hardened', 'violence-hardened_max', 'the-unnatural-hardened', 'the-unnatural-hardened_max',
'helplessness-hardened', 'helplessness-hardened_max', 'isolation-hardened', 'isolation-hardened_max',
'self-hardened', 'self-hardened_max'], TAS._fn(function getHardenedValues(values) {
var currentVals = _.chain(values)
.mapObject((v, k) => {
if (k.indexOf('_max') > 0) return parseInt(v);
if (parseInt(values[`${k}_max`]) === 1) return 0;
return parseInt(v);
}).filter((v, k) => k.indexOf('_max') < 0)
.sortBy((v) => -v)
.value(),
totalHardened = _.reduce(currentVals, (m, v) => m + v, 0),
callous = false,
callousSociopath = false,
hardenedSociopath = false,
sociopathy = 'are not callous or a sociopath';
if (currentVals.shift() === 10) {
callous = true;
if (currentVals.shift() === 10) {
callousSociopath = true;
}
}
if (totalHardened >= 35) {
hardenedSociopath = true;
}
if (callous && !(callousSociopath || hardenedSociopath)) {
sociopathy = 'have become a callous individual';
} else if (callousSociopath && !hardenedSociopath) {
sociopathy = 'have become a sociopath due to your callousness';
} else if (!callousSociopath && hardenedSociopath) {
sociopathy = 'have been hardened into a sociopath';
} else if (callousSociopath && hardenedSociopath){
sociopathy = 'have been hardened into a sociopath in addition to your callousness';
}
setAttrs({ 'sociopathy-description': sociopathy });
}));
}));
on('sheet:opened', TAS._fn(function upgradeVersion(e) {
TAS.debug('Checking version', e);
getAttrs(['version'], TAS._fn(function versionCheck(values) {
var v = parseFloat(values.version);
if (v !== version) {
switch (v) {
default: // version 1
upgradeV1toV2();
}
}
}));
}));
function upgradeV1toV2() {
TAS.debug('Upgrading from version 1');
getAttrs(['drive_max'], TAS._fn(function fixDrive(values) {
setAttrs({
driving_max: values.drive_max,
drive_max: '',
version: version
});
}));
}
/* ---- BEGIN: TheAaronSheet.js ---- */
// Github: https://github.com/shdwjk/TheAaronSheet/blob/master/TheAaronSheet.js
// By: The Aaron, Arcane Scriptomancer
// Contact: https://app.roll20.net/users/104025/the-aaron
// Minified with http://jscompress.com/
function initTAS() {
TAS=TAS||function(){"use strict";var e="0.2.4",n=1457098091,t={debug:{key:"debug",title:"DEBUG",color:{bgLabel:"#7732A2",label:"#F2EF40",bgText:"#FFFEB7",text:"#7732A2"}},error:{key:"error",title:"Error",color:{bgLabel:"#C11713",label:"white",bgText:"#C11713",text:"white"}},warn:{key:"warn",title:"Warning",color:{bgLabel:"#F29140",label:"white",bgText:"#FFD8B7",text:"black"}},info:{key:"info",title:"Info",color:{bgLabel:"#413FA9",label:"white",bgText:"#B3B2EB",text:"black"}},notice:{key:"notice",title:"Notice",color:{bgLabel:"#33C133",label:"white",bgText:"#ADF1AD",text:"black"}},log:{key:"log",title:"Log",color:{bgLabel:"#f2f240",label:"black",bgText:"#ffff90",text:"black"}},callstack:{key:"TAS",title:"function",color:{bgLabel:"#413FA9",label:"white",bgText:"#B3B2EB",text:"black"}},callstack_async:{key:"TAS",title:"ASYNC CALL",color:{bgLabel:"#413FA9",label:"white",bgText:"#413FA9",text:"white"}},TAS:{key:"TAS",title:"TAS",color:{bgLabel:"grey",label:"black;background:linear-gradient(#304352,#d7d2cc,#d7d2cc,#d7d2cc,#304352)",bgText:"grey",text:"black;background:linear-gradient(#304352,#d7d2cc,#d7d2cc,#d7d2cc,#304352)"}}},o={debugMode:!1,logging:{log:!0,notice:!0,info:!0,warn:!0,error:!0,debug:!1}},r=[],c={},a=function(e){switch(typeof e){case"string":return"string";case"boolean":return"boolean";case"number":return _.isNaN(e)?"NaN":e.toString().match(/\./)?"decimal":"integer";case"function":return"function: "+(e.name?e.name+"()":"(anonymous)");case"object":return _.isArray(e)?"array":_.isArguments(e)?"arguments":_.isNull(e)?"null":"object";default:return typeof e}},i=function(e,n,t){_.each(t,function(t){var o=a(t);switch(o){case"string":e(t);break;case"undefined":case"null":case"NaN":e("["+o+"]");break;case"number":case"not a number":case"integer":case"decimal":case"boolean":e("["+o+"]: "+t);break;default:e("["+o+"]:========================================="),n(t),e("=========================================================")}})},u=function(e){var n,t=e.key,r=e.title||"TAS",c=e.color&&e.color.bgLabel||"blue",a=e.color&&e.color.label||"white",u=e.color&&e.color.bgText||"blue",l=e.color&&e.color.text||"white";return n=function(e){console.log("%c "+r+": %c "+e+" ","background-color: "+c+";color: "+a+"; font-weight:bold;","background-color: "+u+";color: "+l+";")},function(){("TAS"===t||o.logging[t])&&i(n,function(e){console.log(e)},_.toArray(arguments))}},l=u(t.debug),f=u(t.error),g=u(t.warn),b=u(t.info),s=u(t.notice),d=u(t.log),p=u(t.TAS),h=u(t.callstack),m=u(t.callstack_async),y=function(e,n){var t=_.findIndex(r,function(t){return _.difference(t.stack,e).length===_.difference(e,t.stack).length&&0===_.difference(t.stack,e).length&&t.label===n});return-1===t&&(t=r.length,r.push({stack:e,label:n})),t},k=function(e){var n=_.defaults(e,o);n.logging=_.defaults(e&&e.logging||{},o.logging),o=n},x=function(){o.logging.debug=!0,o.debugMode=!0},A=function(){var e=new Error("dummy"),n=_.map(_.rest(e.stack.replace(/^[^\(]+?[\n$]/gm,"").replace(/^\s+at\s+/gm,"").replace(/^Object.<anonymous>\s*\(/gm,"{anonymous}()@").split("\n")),function(e){return e.replace(/\s+.*$/,"")});return n},w=function(e){var n,t;_.find(e,function(e){return(n=e.match(/TAS_CALLSTACK_(\d+)/))?(t=r[n[1]],m("===================="+(t.label?"> "+t.label+" <":"")+"===================="),w(t.stack),!0):(h(e),!1)})},F=function(){var e;o.debugMode&&(e=A(),e.shift(),p("==============================> CALLSTACK <=============================="),w(e),p("========================================================================="))},S=function(e,n,t){var r;return"function"==typeof e&&(t=n,n=e,e=void 0),o.debugMode?(r=A(),r.shift(),function(e,n,t,o){var r=y(t,o);return new Function("cb","ctx","TASlog","return function TAS_CALLSTACK_"+r+"(){TASlog('Entering: '+(cb.name||'(anonymous function)'));cb.apply(ctx||{},arguments);TASlog('Exiting: '+(cb.name||'(anonymous function)'));};")(e,n,p)}(n,t,r,e)):function(e,n){return function(){e.apply(n||{},arguments)}}(n,t)},T=function(e,n){c[e]=n},v=function(){setAttrs(c),c={}},L=function(e,n){return _.chain(e).reduce(function(n,t){return"string"==typeof t?n.push(t):(_.isArray(e)||_.isArguments(e))&&(n=L(t,n)),n},_.isArray(n)&&n||[]).uniq().value()},j=function(e,n){Object.defineProperty(e,"id",{value:n,writeable:!1,enumerable:!1})},C=function(e,n,t,o){!function(){var r=_.contains(["S","F","I","D"],n)?"_"+n:n,c=o||n,a=t;_.each(["S","I","F"],function(n){_.has(e,n)||Object.defineProperty(e,n,{value:{},enumerable:!1,readonly:!0})}),_.has(e,"D")||Object.defineProperty(e,"D",{value:_.reduce(_.range(10),function(e,n){return Object.defineProperty(e,n,{value:{},enumerable:!0,readonly:!0}),e},{}),enumerable:!1,readonly:!0}),Object.defineProperty(e,r,{enumerable:!0,set:function(e){e!==a&&(a=e,T(c,e))},get:function(){return a}}),Object.defineProperty(e.S,r,{enumerable:!0,set:function(e){var n=e.toString();n!==a&&(a=n,T(c,n))},get:function(){return a.toString()}}),Object.defineProperty(e.I,r,{enumerable:!0,set:function(e){var n=parseInt(e,10)||0;n!==a&&(a=n,T(c,n))},get:function(){return parseInt(a,10)||0}}),Object.defineProperty(e.F,r,{enumerable:!0,set:function(e){var n=parseFloat(e)||0;n!==a&&(a=n,T(c,n))},get:function(){return parseFloat(a)||0}}),_.each(_.range(10),function(n){Object.defineProperty(e.D[n],r,{enumerable:!0,set:function(e){var t=(parseFloat(e)||0).toFixed(n);t!==a&&(a=t,T(c,t))},get:function(){return(parseFloat(a)||0).toFixed(n)}})})}()},O=function(e){return function(e){var n=e,t=[],o=[],r=[],c=[],a=function(){return t=L(arguments,t),this},i=function(){return o=L(arguments,o),this},u=function(e,n,t,o){return r.push({type:"reduce",func:e&&_.isFunction(e)&&e||_.noop,memo:_.isUndefined(n)&&0||n,"final":t&&_.isFunction(t)&&t||_.noop,context:o||{}}),this},l=function(e,n,t){return r.push({type:"map",func:e&&_.isFunction(e)&&e||_.noop,"final":n&&_.isFunction(n)&&n||_.noop,context:t||{}}),this},f=function(e,n,t){return r.push({type:"each",func:e&&_.isFunction(e)&&e||_.noop,"final":n&&_.isFunction(n)&&n||_.noop,context:t||{}}),this},g=function(e,n){return r.push({type:"tap","final":e&&_.isFunction(e)&&e||_.noop,context:n||{}}),this},b=function(e,n){return c.push({callback:e&&_.isFunction(e)&&e||_.noop,context:n||{}}),this},s=function(e,a){var i={},u={},l=[],f=[];b(e,a),getSectionIDs("repeating_"+n,function(e){l=e,f=_.reduce(l,function(e,t){return e.concat(_.map(o,function(e){return"repeating_"+n+"_"+t+"_"+e}))},[]),getAttrs(_.uniq(t.concat(f)),function(e){_.each(t,function(n){e.hasOwnProperty(n)&&C(u,n,e[n])}),i=_.reduce(l,function(t,r){var c={};return j(c,r),_.each(o,function(t){var o="repeating_"+n+"_"+r+"_"+t;C(c,t,e[o],o)}),t[r]=c,t},{}),_.each(r,function(e){var n;switch(e.type){case"tap":_.bind(e["final"],e.context,i,u)();break;case"each":_.each(i,function(n){_.bind(e.func,e.context,n,u,n.id,i)()}),_.bind(e["final"],e.context,i,u)();break;case"map":n=_.map(i,function(n){return _.bind(e.func,e.context,n,u,n.id,i)()}),_.bind(e["final"],e.context,n,i,u)();break;case"reduce":n=e.memo,_.each(i,function(t){n=_.bind(e.func,e.context,n,t,u,t.id,i)()}),_.bind(e["final"],e.context,n,i,u)()}}),v(),_.each(c,function(e){_.bind(e.callback,e.context)()})})})};return{attrs:a,attr:a,column:i,columns:i,field:i,fields:i,reduce:u,inject:u,foldl:u,map:l,collect:l,each:f,forEach:f,tap:g,"do":g,after:b,last:b,done:b,execute:s,go:s,run:s}}(e)},D=function(e,n,t){O(e).attr(t).field(n).reduce(function(e,t){return e+t.F[n]},0,function(e,n,o){o.S[t]=e}).execute()};return console.log("%c?.??.?*??`*?.??.?*??`*?.? The Aaron Sheet v"+e+" ?.?*??`*?.??.?*??`*?.??.?","background: linear-gradient(to right,green,white,white,green); color:black;text-shadow: 0 0 8px white;"),console.log("%c?.??.?*??`*?.??.?*??`*?.? Last update: "+new Date(1e3*n)+" ?.?*??`*?.??.?*??`*?.??.?","background: linear-gradient(to right,green,white,white,green); color:black;text-shadow: 0 0 8px white;"),{repeatingSimpleSum:D,repeating:O,config:k,callback:S,callstack:F,debugMode:x,_fn:S,debug:l,error:f,warn:g,info:b,notice:s,log:d}}();
}
</script>
<div class="sheet-content">
<div class="sheet-3colrow">
<div class="sheet-col sheet-border">
<h3 class="sheet-right">Personality</h3>
<textarea name="attr_personality" class="sheet-full" style="height: 107px"></textarea>
<h3 class="sheet-right">Trigger Event</h3>
<textarea name="attr_trigger-event" class="sheet-full" style="height: 107px"></textarea>
</div>
<div class="sheet-col sheet-border">
<img src="http://i.imgur.com/WhTlGCB.png" class="sheet-logo" />
<h3 class="sheet-center">Your Name</h3>
<input type="text" name="attr_character_name" class="sheet-full" />
<h3 class="sheet-center">School or Archetype</h3>
<input type="text" name="attr_school-archetype" class="sheet-full" />
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-left">Description</h3>
<textarea name="attr_description" class="sheet-full" style="height: 107px"></textarea>
<h3 class="sheet-left">Cabal Notes</h3>
<textarea name="attr_cabal-notes" class="sheet-full" style="height: 107px"></textarea>
</div>
</div>
<div class="sheet-center sheet-vspace">
<h3 class="sheet-center">Your Obsession</h3>
<input type="text" name="attr_obsession" class="sheet-full" />
<h3 class="sheet-center">Taboos</h3>
<input type="text" name="attr_taboos" class="sheet-full" />
</div>
<hr />
<div class="sheet-3colrow sheet-vspace">
<div class="sheet-col sheet-border">
<h3 class="sheet-right">Rage Stimulus</h3>
<input type="text" name="attr_rage-trigger" class="sheet-full" />
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Fear Stimulus</h3>
<input type="text" name="attr_fear-trigger" class="sheet-full" />
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-left">Noble Stimulus</h3>
<input type="text" name="attr_noble-trigger" class="sheet-full" />
</div>
</div>
<div class="sheet-4colrow sheet-vspace">
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Body <input type="number" name="attr_body" min="20" max="99" value="55" /></h3>
<div class="sheet-2colrow">
<div class="sheet-col">
<h4 class="sheet-center">Body Skills</h4>
<input type="text" name="attr_general-athletics" placeholder="General Athletics" value="General Athletics" class="sheet-full" />
<input type="text" name="attr_struggle" placeholder="Struggle" value="Struggle" class="sheet-full" />
<input type="text" name="attr_body-skill-3" class="sheet-full" />
<input type="text" name="attr_body-skill-4" class="sheet-full" />
<input type="text" name="attr_body-skill-5" class="sheet-full" />
<input type="text" name="attr_body-skill-6" class="sheet-full" />
<input type="text" name="attr_body-skill-7" class="sheet-full" />
<input type="text" name="attr_body-skill-8" class="sheet-full" />
<input type="text" name="attr_body-skill-9" class="sheet-full" />
</div>
<div class="sheet-col">
<h4 class="sheet-center">%</h4>
<div class="sheet-skill">
<input type="number" name="attr_general-athletics_max" min="0" max="99" value="15" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="0" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_struggle_max" min="0" max="99" value="15" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="1" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_body-skill-3_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="2" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_body-skill-4_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="3" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_body-skill-5_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="4" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_body-skill-6_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="5" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_body-skill-7_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="6" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_body-skill-8_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="7" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_body-skill-9_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="8" />
</div>
</div>
</div>
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Speed <input type="number" name="attr_speed" min="20" max="99" value="55" /></h3>
<div class="sheet-2colrow">
<div class="sheet-col">
<h4 class="sheet-center">Speed Skills</h4>
<input type="text" name="attr_dodge" placeholder="Dodge" value="Dodge" class="sheet-full" />
<input type="text" name="attr_driving" placeholder="Driving" value="Driving" class="sheet-full" />
<input type="text" name="attr_initiative" placeholder="Initiative" value="Initiative" class="sheet-full" />
<input type="text" name="attr_speed-skill-4" class="sheet-full" />
<input type="text" name="attr_speed-skill-5" class="sheet-full" />
<input type="text" name="attr_speed-skill-6" class="sheet-full" />
<input type="text" name="attr_speed-skill-7" class="sheet-full" />
<input type="text" name="attr_speed-skill-8" class="sheet-full" />
<input type="text" name="attr_speed-skill-9" class="sheet-full" />
</div>
<div class="sheet-col">
<h4 class="sheet-center">%</h4>
<div class="sheet-skill">
<input type="number" name="attr_dodge_max" min="0" max="99" value="15" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="9" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_driving_max" min="0" max="99" value="15" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="10" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_initiative_max" min="0" max="99" value="27" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="11" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_speed-skill-4_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="12" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_speed-skill-5_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="13" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_speed-skill-6_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="14" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_speed-skill-7_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="15" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_speed-skill-8_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="16" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_speed-skill-9_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="17" />
</div>
</div>
</div>
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Mind <input type="number" name="attr_mind" min="20" max="99" value="55" /></h3>
<div class="sheet-2colrow">
<div class="sheet-col">
<h4 class="sheet-center">Mind Skills</h4>
<input type="text" name="attr_general-education" placeholder="General Education" value="General Education" class="sheet-full" />
<input type="text" name="attr_notice" placeholder="Notice" value="Notice" class="sheet-full" />
<input type="text" name="attr_conceal" placeholder="Conceal" value="Conceal" class="sheet-full" />
<input type="text" name="attr_mind-skill-4" class="sheet-full" />
<input type="text" name="attr_mind-skill-5" class="sheet-full" />
<input type="text" name="attr_mind-skill-6" class="sheet-full" />
<input type="text" name="attr_mind-skill-7" class="sheet-full" />
<input type="text" name="attr_mind-skill-8" class="sheet-full" />
<input type="text" name="attr_mind-skill-9" class="sheet-full" />
</div>
<div class="sheet-col">
<h4 class="sheet-center">%</h4>
<div class="sheet-skill">
<input type="number" name="attr_general-education_max" min="0" max="99" value="15" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="18" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_notice_max" min="0" max="99" value="15" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="19" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_conceal_max" min="0" max="99" value="15" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="20" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_mind-skill-4_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="21" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_mind-skill-5_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="22" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_mind-skill-6_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="23" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_mind-skill-7_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="24" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_mind-skill-8_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="25" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_mind-skill-9_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="26" />
</div>
</div>
</div>
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Soul <input type="number" name="attr_soul" min="20" max="99" value="55" /></h3>
<div class="sheet-2colrow">
<div class="sheet-col">
<h4 class="sheet-center">Soul Skills</h4>
<input type="text" name="attr_charm" placeholder="Charm" value="Charm" class="sheet-full" />
<input type="text" name="attr_lying" placeholder="Lying" value="Lying" class="sheet-full" />
<input type="text" name="attr_soul-skill-3" class="sheet-full" />
<input type="text" name="attr_soul-skill-4" class="sheet-full" />
<input type="text" name="attr_soul-skill-5" class="sheet-full" />
<input type="text" name="attr_soul-skill-6" class="sheet-full" />
<input type="text" name="attr_soul-skill-7" class="sheet-full" />
<input type="text" name="attr_soul-skill-8" class="sheet-full" />
<input type="text" name="attr_soul-skill-9" class="sheet-full" />
</div>
<div class="sheet-col">
<h4 class="sheet-center">%</h4>
<div class="sheet-skill">
<input type="number" name="attr_charm_max" min="0" max="99" value="15" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="27" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_lying_max" min="0" max="99" value="15" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="28" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_soul-skill-3_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="29" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_soul-skill-4_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="30" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_soul-skill-5_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="31" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_soul-skill-6_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="32" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_soul-skill-7_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="33" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_soul-skill-8_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="34" />
</div>
<div class="sheet-skill">
<input type="number" name="attr_soul-skill-9_max" min="0" max="99" class="sheet-full" />
<input type="radio" name="attr_obsession-skill" class="sheet-obsession" value="35" />
</div>
</div>
</div>
</div>
</div>
<hr />
<div class="sheet-5colrow">
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Violence</h3>
<h4 class="sheet-center">Hardened</h4>
<div class="sheet-madness">
<input type="checkbox" name="attr_violence-hardened_max" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-hardened" value="0" class="sheet-madness" checked="checked" />
<input type="radio" name="attr_violence-hardened" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-hardened" value="2" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-hardened" value="3" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-hardened" value="4" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-hardened" value="5" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-hardened" value="6" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-hardened" value="7" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-hardened" value="8" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-hardened" value="9" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-hardened" value="10" class="sheet-madness" /><span></span>
</div>
<h4 class="sheet-center">Failed</h4>
<div class="sheet-madness">
<input type="checkbox" name="attr_violence-failed_max" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-failed" value="0" class="sheet-madness" checked="checked" />
<input type="radio" name="attr_violence-failed" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-failed" value="2" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-failed" value="3" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-failed" value="4" class="sheet-madness" /><span></span>
<input type="radio" name="attr_violence-failed" value="5" class="sheet-madness" /><span></span>
</div>
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-center">The Unnatural</h3>
<h4 class="sheet-center">Hardened</h4>
<div class="sheet-madness">
<input type="checkbox" name="attr_the-unnatural-hardened_max" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-hardened" value="0" class="sheet-madness" checked="checked" />
<input type="radio" name="attr_the-unnatural-hardened" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-hardened" value="2" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-hardened" value="3" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-hardened" value="4" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-hardened" value="5" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-hardened" value="6" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-hardened" value="7" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-hardened" value="8" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-hardened" value="9" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-hardened" value="10" class="sheet-madness" /><span></span>
</div>
<h4 class="sheet-center">Failed</h4>
<div class="sheet-madness">
<input type="checkbox" name="attr_the-unnatural-failed_max" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-failed" value="0" class="sheet-madness" checked="checked" />
<input type="radio" name="attr_the-unnatural-failed" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-failed" value="2" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-failed" value="3" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-failed" value="4" class="sheet-madness" /><span></span>
<input type="radio" name="attr_the-unnatural-failed" value="5" class="sheet-madness" /><span></span>
</div>
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Helplessness</h3>
<h4 class="sheet-center">Hardened</h4>
<div class="sheet-madness">
<input type="checkbox" name="attr_helplessness-hardened_max" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-hardened" value="0" class="sheet-madness" checked="checked" />
<input type="radio" name="attr_helplessness-hardened" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-hardened" value="2" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-hardened" value="3" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-hardened" value="4" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-hardened" value="5" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-hardened" value="6" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-hardened" value="7" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-hardened" value="8" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-hardened" value="9" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-hardened" value="10" class="sheet-madness" /><span></span>
</div>
<h4 class="sheet-center">Failed</h4>
<div class="sheet-madness">
<input type="checkbox" name="attr_helplessness-failed_max" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-failed" value="0" class="sheet-madness" checked="checked" />
<input type="radio" name="attr_helplessness-failed" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-failed" value="2" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-failed" value="3" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-failed" value="4" class="sheet-madness" /><span></span>
<input type="radio" name="attr_helplessness-failed" value="5" class="sheet-madness" /><span></span>
</div>
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Isolation</h3>
<h4 class="sheet-center">Hardened</h4>
<div class="sheet-madness">
<input type="checkbox" name="attr_isolation-hardened_max" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-hardened" value="0" class="sheet-madness" checked="checked" />
<input type="radio" name="attr_isolation-hardened" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-hardened" value="2" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-hardened" value="3" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-hardened" value="4" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-hardened" value="5" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-hardened" value="6" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-hardened" value="7" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-hardened" value="8" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-hardened" value="9" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-hardened" value="10" class="sheet-madness" /><span></span>
</div>
<h4 class="sheet-center">Failed</h4>
<div class="sheet-madness">
<input type="checkbox" name="attr_isolation-failed_max" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-failed" value="0" class="sheet-madness" checked="checked" />
<input type="radio" name="attr_isolation-failed" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-failed" value="2" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-failed" value="3" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-failed" value="4" class="sheet-madness" /><span></span>
<input type="radio" name="attr_isolation-failed" value="5" class="sheet-madness" /><span></span>
</div>
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Self</h3>
<h4 class="sheet-center">Hardened</h4>
<div class="sheet-madness">
<input type="checkbox" name="attr_self-hardened_max" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-hardened" value="0" class="sheet-madness" checked="checked" />
<input type="radio" name="attr_self-hardened" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-hardened" value="2" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-hardened" value="3" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-hardened" value="4" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-hardened" value="5" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-hardened" value="6" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-hardened" value="7" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-hardened" value="8" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-hardened" value="9" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-hardened" value="10" class="sheet-madness" /><span></span>
</div>
<h4 class="sheet-center">Failed</h4>
<div class="sheet-madness">
<input type="checkbox" name="attr_self-failed_max" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-failed" value="0" class="sheet-madness" checked="checked" />
<input type="radio" name="attr_self-failed" value="1" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-failed" value="2" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-failed" value="3" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-failed" value="4" class="sheet-madness" /><span></span>
<input type="radio" name="attr_self-failed" value="5" class="sheet-madness" /><span></span>
</div>
</div>
</div>
<div class="sheet-vspace">
<h3>Sociopathy: You <span name="attr_sociopathy-description">are not callous or a sociopath</span>.</h3>
<p class="sheet-help">When you have 10 Hardened notches in a single stress, you become callous. Being callous in two stresses makes you a sociopath.</p>
<p class="sheet-help">When you have 35 Hardened notches total between all stresses, you become a sociopath.</p>
</div>
<hr />
<div class="sheet-2colrow">
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Firearms</h3>
<div>
<span class="sheet-header sheet-firearms-name">Name</span>
<span class="sheet-header sheet-firearms-caliber">Caliber</span>
<span class="sheet-header sheet-firearms-capacity">Capacity</span>
<span class="sheet-header sheet-firearms-damage" style="margin-left: 5px;">Max Damage</span>
</div>
<fieldset class="repeating_firearms">
<input type="text" name="attr_firearm-name" placeholder="Colt Viper" class="sheet-firearms-name" />
<input type="text" name="attr_firearm-caliber" placeholder=".38 Special" class="sheet-firearms-caliber" />
<input type="number" name="attr_firearm-capacity" min="1" value="6" class="sheet-firearms-capacity" />
<input type="number" name="attr_firearm-damage" min="1" value="50" class="sheet-firearms-damage" style="margin-left: 5px;" />
</fieldset>
<h3 class="sheet-center">Rituals</h3>
<div>
<span class="sheet-header sheet-rituals-name">Name</span>
<span class="sheet-header sheet-rituals-power">Power Level</span>
<span class="sheet-header sheet-rituals-cost">Charge Cost</span>
</div>
<fieldset class="repeating_rituals">
<input type="text" name="attr_ritual-name" placeholder="Plague of Hiccups" class="sheet-rituals-name" />
<select name="attr_ritual-power" class="sheet-rituals-power">
<option value="minor">Minor</option>
<option value="significant">Significant</option>
<option value="major">Major</option>
</select>
<input type="number" name="attr_ritual-cost" min="1" value="2" class="sheet-rituals-cost" />
</fieldset>
</div>
<div class="sheet-col sheet-border">
<h3 class="sheet-center">Hand-to-hand Weapons</h3>
<div>
<span class="sheet-header sheet-hand-to-hand-name">Name</span>
<span class="sheet-header sheet-hand-to-hand-damage">Damage Bonus</span>
</div>
<fieldset class="repeating_hand-to-hand">
<input type="text" name="attr_hand-to-hand-name" placeholder="Knife" class="sheet-hand-to-hand-name" />
<input type="number" name="attr_hand-to-hand-damage" min="0" max="9" step="3" value="3" class="sheet-hand-to-hand-damage" />
</fieldset>
<h3 class="sheet-center">Artifacts</h3>
<div>
<span class="sheet-header sheet-artifact-name">Name</span>
<span class="sheet-header sheet-artifact-power">Power Level</span>
</div>
<fieldset class="repeating_artifacts">
<input type="text" name="attr_artifact-name" placeholder="Lucky Charm" class="sheet-artifact-name" />
<select name="attr_artifact-power" class="sheet-artifact-power">
<option value="minor">Minor</option>
<option value="significant">Significant</option>
<option value="major">Major</option>
</select>
</fieldset>
</div>
</div>
<hr />
<div class="sheet-3colrow">
<div class="sheet-col">
<h3 class="sheet-center">Notes</h3>
<textarea name="attr_notes"></textarea>
</div>
<div class="sheet-col">
<h3 class="sheet-center">Items</h3>
<textarea name="attr_items"></textarea>
</div>
<div class="sheet-col">
<h3 class="sheet-center">Magick</h3>
<textarea name="attr_magick"></textarea>
</div>
</div>
</div>