Roll20 uses cookies to improve your experience on our site. Cookies enable you to enjoy certain features, social sharing functionality, and tailor message and display ads to your interests on our site and others. They also help us understand how our site is being used. By continuing to use our site, you consent to our use of cookies. Update your cookie preferences .
×
Create a free account

[Paladin] - buggy section of the sheet after HTML change

1709731886

Edited 1709733810
Hi folks, I've recently started updating the long unfinished character sheet for Paladin, on my own. I've made some much needed changes that are now in, and that were sorely missing (modifiers for rolls, logos, etc) One section of the sheet that was really non functional was the one for the character's sidekick squire. It had no modifiers to rolls, rolls didn't even work properly, repeating containers to add custom skills didn't either... Now after my changes, modifiers have been added, repeating containers do work, and age is a clickable button (it's specific to the rules). However some new issues have arisen : -Age button is clickable but when prompted returns an error in the chat > " No attribute was found for @{Apus Dryg|squire_age}" -The roll template is all wonky for the custom skills in the repeating containers - see for ex the standard "first aid" skill compared to one in the repeating containers  - there are other repeating container skills across the sheet and only that section has that issue: I am looking at the HTML and unless mistaken, everything seems OK. I can obviously share it here for review by wiser eyes than mine. What could cause these kinds of issues? Many thanks in advance for your tips & help :)
Here's the code for the section : <!-- *** SQUIRE *** ============================= --> <div class="squire"> <div class="header knight"> <h1 data-i18n="squire"></h1> </div> <div class="header woman"> <h1 data-i18n="servant"></h1> </div> <div class="row 2autocolumn"> <h2 data-i18n="name"></h2> <label data-i18n-title="enter squire name" title="enter squire name"> <input data-i18n-placeholder="squire name" name="attr_squire_name" placeholder="squire name" title="@{squire_name}" type="text" value=""/> </label> </div> <div class="row 3autocolumn knight"> <button class="text-capitalize" data-i18n="age" name="roll_age" type="roll" value="&{template:rolls} {{header=Squire's ^{age}}} {{dice=[[{1d20+({@{squire_age}+(?{Mod.|0})-20,0}kh1),1d0+20}kl1 [Roll]]]}} {{threshold=[[{@{squire_age}+(?{Mod.|0}),20}kl1[Threshold]]]}} {{fumbleVal=[[20+({@{squire_age}+(?{Mod.|0}),0}kl1)]]}}"></button> <label data-i18n-title="squire age check" title="squire age check"> <input name="attr_squire_age_check" placeholder="#" title="@{squire_age}" type="number" value=""/> </label> </div> <div class="row 3autocolumn knight"> <button class="text-capitalize" data-i18n="first aid" name="roll_first-aid" type="roll" value="&{template:rolls} {{header=Squire's ^{first aid}}} {{dice=[[{1d20+({@{squire_first_aid}+(?{Mod.|0})-20,0}kh1),1d0+20}kl1 [Roll]]]}} {{threshold=[[{@{squire_first_aid}+(?{Mod.|0}),20}kl1[Threshold]]]}} {{fumbleVal=[[20+({@{squire_first_aid}+(?{Mod.|0}),0}kl1)]]}}"></button> <label data-i18n-title="enter first aid" title="enter first aid"> <input name="attr_squire_first_aid" placeholder="#" title="@{squire_first_aid}" type="number" value=""/> </label> <label class="styled-checkbox grid" data-i18n-title="squire first aid check" title="squire first aid check"> <input name="attr_squire_first_aid_check" title="@{squire_first_aid_check}" type="checkbox" value="squire first aid check"/> <span class="pictos">3</span> </label> </div> <div class="row 3autocolumn knight"> <button class="text-capitalize" data-i18n="battle" name="roll_battle" type="roll" value="&{template:rolls} {{header=Squire's ^{battle}}} {dice=[[{1d20+({@{squire_battle}+(?{Mod.|0})-20,0}kh1),1d0+20}kl1 [Roll]]]}} {{threshold=[[{@{squire_battle}+(?{Mod.|0}),20}kl1[Threshold]]]}} {{fumbleVal=[[20+({@{squire_battle}+(?{Mod.|0}),0}kl1)]]}}"></button> <label data-i18n-title="enter battle" title="enter battle"> <input name="attr_squire_battle" placeholder="#" title="@{squire_battle}" type="number" value=""/> </label> <label class="styled-checkbox grid" data-i18n-title="squire battle check" title="squire battle check"> <input name="attr_squire_battle_check" title="@{squire_battle_check}" type="checkbox" value="squire battle check"/> <span class="pictos">3</span> </label> </div> <div class="row 3autocolumn knight"> <button class="text-capitalize" data-i18n="horsemanship" name="roll_horsemanship" type="roll" value="&{template:rolls} {{header=Squire's ^{horsemanship}}} {dice=[[{1d20+({@{squire_horsemanship}+(?{Mod.|0})-20,0}kh1),1d0+20}kl1 [Roll]]]}} {{threshold=[[{@{squire_horsemanship}+(?{Mod.|0}),20}kl1[Threshold]]]}} {{fumbleVal=[[20+({@{squire_horsemanship}+(?{Mod.|0}),0}kl1)]]}}"></button> <label data-i18n-title="enter horsemanship" title="enter horsemanship"> <input name="attr_squire_horsemanship" placeholder="#" title="@{squire_horsemanship}" type="number" value=""/> </label> <label class="styled-checkbox grid" data-i18n-title="squire horsemanship check" title="squire horsemanship check"> <input name="attr_squire_horsemanship_check" title="@{squire_horsemanship_check}" type="checkbox" value="squire horsemanship check"/> <span class="pictos">3</span> </label> </div> <div class="repeating-container"> <fieldset class="repeating_squireskills"> <div class="row"> <label data-i18n-title="enter name" title="enter name"> <input data-i18n-placeholder="name" name="attr_name" placeholder="name" title="@{name}" type="text" value=""/> </label> <label data-i18n-title="enter squire skill" title="enter squire skill"> <input name="attr_squire_skill" placeholder="#" title="@{squire_skill}" type="number" value="0"/> </label> <label class="styled-checkbox grid" data-i18n-title="check" title="check"> <input name="attr_check" title="@{check}" type="checkbox" value="check"/> <span class="pictos">3</span> </label> <button class="d20" name="roll_squire_skill" type="roll" value="&{template:rolls}{{header=@{name}}}{dice=[[{1d20+({@{squire_skill}+(?{Mod.|0})-20,0}kh1),1d0+20}kl1 [Roll]]]}} {{threshold=[[{@{squire_skill}+(?{Mod.|0}),20}kl1[Threshold]]]}} {{fumbleVal=[[20+({@{squire_skill}+(?{Mod.|0}),0}kl1)]]}}"></button> </div> </fieldset> </div> </div> </div>
1709732056

Edited 1709732791
To finish, here's what the actual section looks like in the character sheet (sorry it's translated in French but you get the idea - notice as well that the d20 on the buttons are not showing up
1709734947

Edited 1709734980
I think I found what is causing the error for Age. Code should be as follows - the input name section in the code that I included above refers to the checkbox that I removed as it's not necessary - doh! Still looking at the issue regarding the roll template </div> <div class="row 3autocolumn knight"> <button class="text-capitalize" data-i18n="age" name="roll_age" type="roll" value="&{template:rolls} {{header=Squire's ^{age}}} {{dice=[[{1d20+({@{squire_age}+(?{Mod.|0})-20,0}kh1),1d0+20}kl1 [Roll]]]}} {{threshold=[[{@{squire_age}+(?{Mod.|0}),20}kl1[Threshold]]]}} {{fumbleVal=[[20+({@{squire_age}+(?{Mod.|0}),0}kl1)]]}}"></button> <label data-i18n-title="enter age" title="enter age"> <input name="attr_squire_age" placeholder="#" title="@{squire_age}" type="number" value=""/> </label> </div>
1709765546

Edited 1709765777
vÍnce
Pro
Sheet Author
Looks like some of the button rolls in the 'Squire' html sample you posted are missing one of the required double curly brackets ' {dice=[[{ ' Roll template keys need to start and close with double curly brackets. ie '{{key=value}}' I would try correcting those first and see if that solves your roll template wonkiness.
1709767477

Edited 1709767537
Indeed that was what was causing the issue, I was playing around earlier on with the code in my custom sheet, and I saw the mistake - it solved the issue :) The dice pictos are not showing up however, no idea why :( Thanks for your reply! :)