I am also using bloodydeath API to mark the tokens at half health and with a cross when they are dead but it isn't working when applying damage through Applydamage. Any one have any idea why and how to fix it? Here is bloody death as it is not one click /* global TokenMod */ on('ready',()=>{ // CONFIGURE const bar = 3; const bloodied = "red"; const dead = "dead"; // no edit below here // const unpackSM = (stats) => stats.split(/,/).reduce((m,v) => { let p = v.split(/@/); p[0]=p[0].toLowerCase(); let n = parseInt(p[1] || '0', 10); if(p[0].length) { m[p[0]] = Math.max(n, m[p[0]] || 0); } return m; },{}); const packSM = (o) => Object.keys(o) .map(k => ('dead' === k || true === o[k] || o[k]<1 || o[k]>9) ? k : `${k}@${parseInt(o[k])}` ).join(','); const handleBarChange = (obj) => { const bv = parseFloat(obj.get(`bar${bar}_value`)); const bm = parseFloat(obj.get(`bar${bar}_max`)); if(Number.isNaN(bm)){ return; } let sm = unpackSM(obj.get('statusmarkers')); if(bv <= (bm / 2) && bv > 0) { sm[bloodied] = true; } else{ delete sm[bloodied]; } if(bv <= 0) { sm[dead] = true; } else { delete sm[dead]; } obj.set({ statusmarkers: packSM(sm) }); }; on(`change:graphic:bar${bar}_value`, handleBarChange); if('undefined' !== typeof TokenMod && TokenMod.ObserveTokenChange){ TokenMod.ObserveTokenChange(handleBarChange); } });