Rolls are all d10, with a combination of regular and Hunger dice. Example: PC has a 5 die pool, her Hunger is 2. She rolls 3 regular and 2 Hunger dice.

1-5 on a regular die fails; 6-10 succeeds.

Any pair of 10s is a critical, worth 4 successes.

A failure (not enough total successes to beat the difficulty number) where a Hunger die is 1 is a special "Bestial Failure". A success where a Hunger die is 10 is a special "Messy Critical".

Partial solution:

Code: Select all

```
Parameter 1: Regular dice
Parameter 2: Hunger dice
Parameter 3: Difficulty (not used yet)
@1 ← #1Kd10@.
@2 ← #2Rd10@.
@3 ← count10(@1).
@4 ← count10(@2).
@5 ← count6(@1, @2) + count7(@1, @2) + count8(@1, @2) + count9(@1, @2).
@6 ← sum(@3, @4).
@7 ← sum(@5, @6 × 2) - (@6 % 2).
if (@3 ≥ 1 ∧ @4 ≥ 1) ∨ (@4 ≥ 2) then
“\rMessy Critical: ” + @7 + “ successes”
elif (@3 ≥ 1 ∧ @4 ≥ 1) ∨ @6 ≥ 2 then
“Critical: ” + @7 + “ successes”
elif (sum(@5, @6) < 1) ∧ count1(@2) then
“\rBestial Failure”
elif @7 = 1 then
@7 + “ success”
elif @7 = 0 then
“Failure”
else
@7 + “ successes”
end
```

I think I've got it now, even if @5 is clunky. I don't see a better way, though. Thoughts?