dice algorithm is clearly flawed

Forum rules
Please DO NOT POST BUGS on this forum. Please report (and vote) bugs on : https://boardgamearena.com/bugs
User avatar
Sinnerman88
Posts: 1
Joined: 30 July 2023, 17:16

dice algorithm is clearly flawed

Post by Sinnerman88 »

I play Catan because I love the game, but I am so frequently irritated by the dice algorithms. It's a BGA flaw that is maddening. The rolls are ridiculously streaky and disproportionate to the probabilities. Please fix this problem that everybody complains about.
User avatar
Jontia
Posts: 266
Joined: 06 March 2014, 22:59

Re: dice algorithm is clearly flawed

Post by Jontia »

Sinnerman88 wrote: ↑28 October 2026, 03:20 Please fix this problem that everybody complains about.
A few people complain about it regularly. Everybody would be a lot more noisey considering that roughly 5,000 games a day of Catan are played on the site.
User avatar
Theodicifier
Posts: 1
Joined: 03 May 2020, 02:10

Re: dice algorithm is clearly flawed

Post by Theodicifier »

It's easier to implement a random number generator than to code up dice that are not random. I doubt there's an issue with the dice. Human beings, on the other hand, are very, very bad at judging whether something is truly random. In particular, random data is far more 'streaky' than most people intuitively expect.

This reminds of the discussion here, and the many 1 star reviews that backgammon apps receive...

https://www.njsoftware.com/note.html
User avatar
Kayvon
Posts: 1114
Joined: 17 October 2011, 01:39

Re: dice algorithm is clearly flawed

Post by Kayvon »

Here's an analysis of half a million random numbers generated by BGA:
https://boardgamearena.com/forum/viewto ... and#p59122

The dice are weighted exactly as expected. Sorry about your bad luck.
User avatar
Paddles
Posts: 109
Joined: 25 March 2012, 12:04

Re: dice algorithm is clearly flawed

Post by Paddles »

Ahh, this thread is different to the countless other threads, because the OP has thoughtfully provided not just an anecdote but supporting evidence and rigorous analysis. We won't need to call Lenny.

Oh.

Image
Goforit22
Posts: 4
Joined: 20 January 2026, 23:26

Re: dice algorithm is clearly flawed

Post by Goforit22 »

I completely agree with poster that a game of Catan can extremely frustrating due to biased dice. Its probably also true that the dice is random, but for many games the dice is still the deciding factor.

I dont get why BGA havent implemented a card deck dice generator. Imagine dice determined by a number of card decks, number of dice sets determined by their probability. When the deck(s) is depleted, it start over. Will still be randaom, but much closer to a normal distribution for every game. Will put strategy in the high seat, not lucky dice.

It will take 10minutes for a AI to write code, max. I can provide it :-)
User avatar
Bender3002
Posts: 91
Joined: 19 January 2024, 15:42

Re: dice algorithm is clearly flawed

Post by Bender3002 »

10 minutes are over, where are the results?
Goforit22
Posts: 4
Joined: 20 January 2026, 23:26

Re: dice algorithm is clearly flawed

Post by Goforit22 »

lol, it took me 6 minutes i think

const { randomInt } = require("node:crypto");
function startRound({ decks = 1 } = {}) {
if (!Number.isSafeInteger(decks) || decks < 1 || decks > 1000) {
throw new Error("decks must be an integer from 1 to 1000");
}
const shoe = [];
// Each deck contains all 36 ordered dice pairs.
for (let deck = 0; deck < decks; deck++) {
for (let die1 = 1; die1 <= 6; die1++) {
for (let die2 = 1; die2 <= 6; die2++) {
shoe.push([die1, die2]);
}
}
}
// Unbiased Fisher–Yates shuffle.
for (let i = shoe.length - 1; i > 0; i--) {
const j = randomInt(i + 1);
[shoe, shoe[j]] = [shoe[j], shoe];
}
return { decks, remaining: shoe };
}
function roll(round) {
if (round.remaining.length === 0) {
throw new Error("Round exhausted. Start a new round.");
}
const [die1, die2] = round.remaining.pop();
return {
die1,
die2,
total: die1 + die2,
rollsLeft: round.remaining.length
};
}
// Choose the number of decks for this round.
const settings = { "decks": 3 };
const round = startRound(settings);
console.log(JSON.stringify(roll(round)));
User avatar
Jellby
Posts: 3815
Joined: 31 December 2013, 12:22

Re: dice algorithm is clearly flawed

Post by Jellby »

Goforit22 wrote: ↑30 October 2026, 17:49 I dont get why BGA havent implemented...
Because

a) BGA does not implement games as a rule. It's either volunteer developers or developers paid by game publishers
b) Developers implement what they want to or what they're paid for
c) Even if they want to, developers can only implement what is sanctioned by the rights holder (typically the publisher)
User avatar
Strode
Posts: 324
Joined: 18 April 2020, 04:49

Re: dice algorithm is clearly flawed

Post by Strode »

Goforit22 wrote: ↑30 October 2026, 17:49 I completely agree with poster that a game of Catan can extremely frustrating due to biased dice. Its probably also true that the dice is random, but for many games the dice is still the deciding factor.

I dont get why BGA havent implemented a card deck dice generator. Imagine dice determined by a number of card decks, number of dice sets determined by their probability. When the deck(s) is depleted, it start over. Will still be randaom, but much closer to a normal distribution for every game. Will put strategy in the high seat, not lucky dice.

It will take 10minutes for a AI to write code, max. I can provide it :-)
How big is the deck? If it's really big, then you'd still have a lot of random variance. If small, then players might be able to say "we've just seen a couple 12s, so we know another is very unlikely"
Post Reply

Return to “Catan”