←back to thread

76 points Fraterkes | 1 comments | | HN request time: 0.293s | source
1. kstenerud ◴[] No.46196317[source]
> Assuming both parties can come up with unbiased random numbers

When you're in competition, this cannot be assumed. You'll each bias the numbers you come up with towards your preferred outcome. Even with A + B mod N, you can still bias the results when you know what your opponent is trying for.

A fairer approach would be to make a long series of randomized values. Your opponent secretly chooses a starting offset, and you pick an offset to add.

So for 1d6:

    2 5 1 3 6 4
    4 3 5 2 1 6
    5 6 3 4 2 1
    1 4 3 2 5 6
    3 1 2 6 4 5
You don't need a ton of rows. Each possible roll value must appear once in each row.

Your opponent places a marker on one of those numbers and keeps that information hidden.

- Let's say they choose the "1" at row=2, col=5.

Now you pick a number from 1 to 6.

- Let's say you choose 5.

Now they reveal where the marker is set (row=2, col=5).

Now you advance from the marker by 5 (wrapping around in the row if necessary).

- so from row=2, col=5, you advance by 5 like so: 6, (wrap) 4, 3, 5, 2 (ending at row=2, col=4).

You "rolled" a 2.