Skip to content

Instantly share code, notes, and snippets.

$ gp
? \\ 2 rolls: reject fair d6
? 1 / 6.0
%1 = 0.16666666666666666666666666666666666667
? \\ 2 rolls: accept unfair d6 (75% 6, others equal)
? 1 - (.75^2 + 5 * (.25 / 6)^2)
%2 = 0.42881944444444444444444444444444444445
#!/usr/bin/env python3.5
import math
die = 6
mean = sum(range(1, die + 1)) / die
variance = sum([i * i for i in range(1, die + 1)]) / die - mean ** 2
max_roll = 30
for n in range(1, max_roll + 1):
best_diff = None
@weatherspud
weatherspud / fireball_approx.py
Created December 11, 2016 13:58
approximate a fireball roll with two dice
#!/usr/bin/env python3.5
import math
die = 6
mean = sum(range(1, die + 1)) / die
variance = sum([i * i for i in range(1, die + 1)]) / die - mean ** 2
max_roll = 30
for n in range(1, max_roll + 1):
best_diff = None
@weatherspud
weatherspud / 6-63.roll.txt
Created November 20, 2016 04:45
Ways to make a 6–63 roll
19d4-13
3d6+14d4-11
6d6+9d4-9
9d6+4d4-7
d8+d6+15d4-11
d8+4d6+10d4-9
d8+7d6+5d4-7
d8+10d6-5
2d8+2d6+11d4-9
2d8+5d6+6d4-7