Not sure I fully understand the question, but roll templates have a lot of flexibility if the template uses the helper functions (e.g. rollWasCrit, rollTotal, rollGreater, rollBetween, etc). But to be clear, it's the HTML that would have to do the heavy lifting. As an example, I'm currently working on the Stormbringer character sheet and this is how I'm accomplishing the success/failure stuff: <rolltemplate class="sheet-rolltemplate-sb">
<h2 class="sheet-caption">{{header}}</h2>
<div class='sheet-template'>
{{#roll}}
<div class='sheet-templaterow'>
<div class='sheet-left'>
Roll:
</div>
<div class='sheet-right'>
{{roll}}
</div>
</div>
{{#target}}
<div class='sheet-templaterow'>
<div class='sheet-left'>
Target:
</div>
<div class='sheet-right'>
{{target}}
</div>
</div>
<div class='sheet-templaterow'>
<div class='sheet-left'>
Result:
</div>
<div class='sheet-right' style='font-weight: bold;'>
{{#rollLess() roll 2}}Critical Success!{{/rollLess() roll 2}}
{{#rollGreater() roll 99}}Critical Failure!{{/rollGreater() roll 99}}
{{#rollGreater() roll 1}}
{{#rollBetween() roll 2 target}}Sucess!{{/rollBetween() roll 2 target}}
{{/rollGreater() roll 1}}
{{#rollLess() roll 100}}
{{#rollGreater() roll target}}Failure!{{/rollGreater() roll target}}
{{/rollLess() roll 100}}
</div>
</div>
{{/target}}
{{/roll}}
{{#damage}}
<div class='sheet-templaterow'>
<div class='sheet-left'>
Damage{{#dmgdice}} <span style='font-size: .75em;'>({{dmgdice}})</span>{{/dmgdice}}:
</div>
<div class='sheet-right'>
{{damage}}
</div>
</div>
{{/damage}}
</div>
</rolltemplate>
To accomplish some of it, I need to use a bunch of nested helper functions, but...it's one way of checking things. Again, not sure I fully understand the question, so not sure if this helps...