The skills I am working with are within a percentage based system. What I was hoping to do was hide (accessible with a checkbox) several of the skill related fields and have a "readonly" skill rating field that would display total skill rating after all the math was done. At the moment (there may be other things added later), the process is like this: Skill Rating = Skill Base + Skill Bonus + ((Skill Level - 1) * Skill Progression) Skill Base is the percentage the skill starts out as at level 1. Skill
Progression is how many percent you gain each level you advance past 1. Current html for the section: <fieldset class="repeating_skillocc"> <div class='skill-grid-container' > <button type="roll" name='roll_occskill' value="&{template:custom} {{color=green}} {{title=Character Name}} {{subtitle=@{skill_name}}} {{Check=[[d100cs<1cf>100]]}} {{Skill=@{skill_rating}}} {{desc=@{skill_reference}}}"></button> <input class='occ-field' type="text" value="" name="attr_skill_name" placeholder="Skill name"/> <input class='occ-field' type="number" title='Total Skill Percentage Rating' value="" name="attr_skill_rating" readonly/> <h6>%</h6> <input class="occ-field" type="number" title="Skill Bonus" value="0" name="attr_skillbonus"> <input type='checkbox' title='Show Bonus and Notes Fields' name='attr_occextras' value="1"> <input class='occextras-toggle' type='hidden' name='attr_occextras'> <div class='occextras-hide'> <div class="occextras-container"> <h5>Skill Lvl</h5> <h5>Skill Base</h5> <h5>Skill Prog</h5> <h5>Notes</h5> <input class="occ-field" type="number" title="Skill Base" value="0" name="attr_skill_base"> <input class="occ-field" type="number" title="Skill Progression" value="0" name="attr_skill_prog"> <input class='occ-field' type="number" title='Skill Level' value="1" name="attr_skill_level" /> <textarea class="skill-notes" type="text" value="" name="attr_skill_reference" ></textarea> </div> </div> </div> </fieldset> My attempt at a sheetworker to accomplish this: on("change:repeating_skill_base change:repeating_skill_level change:repeating_skill_prog change:repeating_skillbonus", function () { getAttrs(['repeating_skill_base','repeating_skill_level','repeating_skill_prog'], function (values) { const repeating_skill_base = parseInt(values['repeating_skill_base'])||0; const repeating_skill_level = parseInt(values['repeating_skill_level'])||0; const repeating_skill_prog = parseInt(values['repeating_skill_prog'])||0; const repeating_skillbonus = parseInt(values['repeating_skillbonus'])||0; const repeating_skill_rating = Math.round(repeating_skill_base + repeating_skillbonus + ((repeating_skill_level -1) * repeating_skill_prog)); setAttrs({ repeating_skill_rating: repeating_skill_rating }); }); }); Since I am script illiterate and this is my attempt to cobble together a couple scripts from my existing sheet, I'm not surprised my frankenstein doesn't walk... I first tried this without the "repeating_" on it, and that didn't work either. I also got thinking maybe it needs pointed at the correct repeating section, but I'm not sure how to do that. So, where am I going wrong on this? Also, is this going to slow down the sheet once someone has 20-30 skills, or will it only recalculate the actual section that changed? I could just leave the total box off and have the macro in the roll button calculate and display the total skill rating if this could cause issues down the line for characters with a lot of skills.