Dice roll "whammy" formula

I have a game that uses a bit different of a dice mechanic. It uses multiple D12s and you need to roll under your stat for each success - all good there !(5d12<=5)

Where it gets tricky is that any 1 rolled is a “crit” or rather a “bonus success” which doesn’t count as just one success but two successes - `!(5d[2,1,1,1,1,0,0,0,0,0,0,0]) does the trick

However, if any 12 is rolled it negates the “bonus success” of any 1s making the ones only worth 1 success. We lovingly call this the “whammy” rule. That I am not sure can be done in Astral.


Hi @Rahabib and welcome to the forums.

Modiphius’ 2d20 system works in a similar way, sans the negative count, and Astral does not support that but we can make it easy for your users to work out.


This counts anything 5 or under as a success (including the 1), and counts a 1 as a success (so giving you 2 successes if a 1 is rolled. Then it counts any fumbles (12) rolled and displays that count as well.

Now your users just need to subtract the fumbles from the successes.

That is very helpful!

Is there a way to use the cr/fr to color code them? It seems to only color code when all successes are a 1 instead of one or more. That would make it easier to tell the players to if its green and has at least 1 fumble you need to hover over it, otherwise you can just take the number of successes.


If you are counting the fumbles, the players will have no excuse to not know it is there.
But you can use the cr and fr flags with the exact same settings as the cs and cf flags.

it not just counting the fumbles its knowing when a 1 is rolled when they see a fumble in the output.

For instance if the following is rolled with my formula !(5d12cs<=5cs=1cf=12cr=1fr=12):
1, 1, 4, 11, 12
it will output in white, “8(5 successes, 1 fumbles)”
however this is incorrect, the 1s should not count as two successes each because of the 12. the actual number should be (3 successes, 1 fumbles). Simply counting the number of fumbles and subtract, doesn’t work. Because at least one success was not a critical, it still displays as white.

So what the player has to do is anytime a fumble is rolled, they have to roll over the result to see if any 1s are rolled and recalculate in their heads the actual number - not the end of the world, I suppose.

Alternatively, what I was looking for is if at least one 1 is rolled, it will show as green. Then whenever a fumble is attached, we know to rollover to check and recalculate in their head. The likelyhood of a result thats green and has a fumble is less than just a result that has a fumble, so there is less frequencies for the players to have to do the rollover thing.

Ideally, there should be a way to conditionally do this check

{!(5d12cs<=5cs).includes(12) ? fr=12 : cs=1cr=1}
or something like that

Unfortunately Astral does not support removing successes, so your users will need to subtract the fumbles from the Successes.