
Kryx explains it here better than I can: "I'll explain how dice rolling works: When you click an attack button it sends a bunch of data to chat which is processed by the roll template. Here is a simplified version: &{template:5e-shaped} {{vs_ac=1}} @{roll_info} {{roll1=[[@{preroll}d20cs>@{crit_range}@{postroll}@{d20_mod} + @{attack_formula}]]}}
@{roll_setting}cs>@{crit_range}@{d20_mod} + @{attack_formula}]]}}
{{damage=[[@{damage_formula}]]}} {{damage_type=@{damage_type}}}
{{crit_damage=[[0d0 + @{damage}[damage] + @{damage_crit}[crit damage]]]}}
So in the normal case you have an attack roll (a d20), a damage roll, and a crit_damage roll. crit_damage is the offender that is sending the "extra" roll. The roll template then processes this data and shows certain sections or not based on criteria. That criteria in this case is "was the attack a crit". There is no way for me to resolve this. Roll20 must fix this on their end, but I'm pretty sure the way they've setup their system would prevent this kind of fix unless they delay all rolls until the template shows. Either way if you want 3d dice to work you have to take it up with them. This issue exists for every character sheet. " Is this on the already in the works by any chance?