Just a question for the devs; how are the die rolls randomized? Also, is the number rolled determined randomly before the animation, ie. is the animation created recursively to accommodate a pre-determined random number? Just a curiosity.
I'm curious as well, especially considering the typical results of the inline forum RNG roller. From what I've seen so far, presumably the new dice roller uses a different RNG?
I play in a game with a bunch of high-level software developers who have very specific opinions about how random values are generated in code. I would love to hear a high-level explanation for how the randomness for DnD Beyond's Digital Dice is generated.
My inquiry is not in response to any empirical experience with the Digital Dice, this is purely food for a theoretical discussion.
I play in a game with a bunch of high-level software developers who have very specific opinions about how random values are generated in code. I would love to hear a high-level explanation for how the randomness for DnD Beyond's Digital Dice is generated.
My inquiry is not in response to any empirical experience with the Digital Dice, this is purely food for a theoretical discussion.
I always laugh at the comment that comes up like 'RNG's aren't really random!'. Because neither are dice. No die rolls true.
I believe it was mentioned on a recent dev update (I can't remember which one, but can't be that far back) that they actually use the physics of the simulated die to determine randomness, rather than predetermining the outcome using a pRNG generator and then reverse plotting the physics. Effectively this means that, given the relatively simple physics of dice rolling, the results are as close to random as real dice (maybe even more so as the virtual dice have impossibly uniform mass distribution and geometry)
I believe it was mentioned on a recent dev update (I can't remember which one, but can't be that far back) that they actually use the physics of the simulated die to determine randomness, rather than predetermining the outcome using a pRNG generator and then reverse plotting the physics. Effectively this means that, given the relatively simple physics of dice rolling, the results are as close to random as real dice (maybe even more so as the virtual dice have impossibly uniform mass distribution and geometry)
There's no way that whatever physics the have programmed in come close to all the factors that affect the outcome of a die roll. As a physics teacher, it's not something I would call relatively simple. There are so many things that would affect the outcome of a real die that would almost certainly have to be simplified. I'm also assuming that they are still using an RNG to determine the 'human factors' such as initial force magnitude and direction from the 'hand', the angle and height the die are dropped, etc...
And the fact remains that whatever RNG they use is going to be closer to true random than any physical die.
The dice are all physics based and not an animation. With it being physics, a lot of factors get involved. With how we throw the dice, what dice are thrown, how hard, and even the screen size will change how the dice collide with each other to give the final result. First we randomize the start rotation so even if we dropped the dice without throwing them it would be random. Second we also throw the dice in a random direction with a random force, this makes it even more random! Third we also add an additional throwing rotational spin so when things collide they will collide differently even if for some reason the force and start rotation happened to be the same which that makes it even more random!!
So while a randomizer seed can be the same for 2 people other factors that happen on your computer can and will change how the physics run and give you a different result.
If we ever see things with how the randomization works that cause an issue we will absolutely fix it to make sure its as 'random' as it can be. If we have to we will absolutely look into other things like https://blog.cloudflare.com/randomness-101-lavarand-in-production/ ... well maybe not that extreme but we will look into other ways if it ever becomes an issue.
I always find it really hard to trust digital dice. I always feel like they roll low.
Are you guys logging all the rolls to get massive stats about them to ensure a nice linear distribution per die?
My totally non-empiricalanecdotalconfirmation bias suggests that they roll lower than average most of the time, but your multifactor randomness generator (even screen size? Wow) suggests that they're more random than dice, as pointed out above. Data would be fun!
The dice are all physics based and not an animation. With it being physics, a lot of factors get involved. With how we throw the dice, what dice are thrown, how hard, and even the screen size will change how the dice collide with each other to give the final result. First we randomize the start rotation so even if we dropped the dice without throwing them it would be random. Second we also throw the dice in a random direction with a random force, this makes it even more random! Third we also add an additional throwing rotational spin so when things collide they will collide differently even if for some reason the force and start rotation happened to be the same which that makes it even more random!!
So while a randomizer seed can be the same for 2 people other factors that happen on your computer can and will change how the physics run and give you a different result.
If we ever see things with how the randomization works that cause an issue we will absolutely fix it to make sure its as 'random' as it can be. If we have to we will absolutely look into other things like https://blog.cloudflare.com/randomness-101-lavarand-in-production/ ... well maybe not that extreme but we will look into other ways if it ever becomes an issue.
Ok I gotta admit, that's pretty cool and way more comprehensive and complicated than I thought.
The dice are all physics based and not an animation. With it being physics, a lot of factors get involved. With how we throw the dice, what dice are thrown, how hard, and even the screen size will change how the dice collide with each other to give the final result. First we randomize the start rotation so even if we dropped the dice without throwing them it would be random. Second we also throw the dice in a random direction with a random force, this makes it even more random! Third we also add an additional throwing rotational spin so when things collide they will collide differently even if for some reason the force and start rotation happened to be the same which that makes it even more random!!
So while a randomizer seed can be the same for 2 people other factors that happen on your computer can and will change how the physics run and give you a different result.
If we ever see things with how the randomization works that cause an issue we will absolutely fix it to make sure its as 'random' as it can be. If we have to we will absolutely look into other things like https://blog.cloudflare.com/randomness-101-lavarand-in-production/ ... well maybe not that extreme but we will look into other ways if it ever becomes an issue.
So does this explain why we cannot (as currently implemented) have instant, results-only rolls?
My curse extends to digital dice. High rolls only when not observed by another person. Low rolls otherwise.🤦♂️
Rollback Post to RevisionRollBack
Human. Male. Possibly. Don't be a divider. My characters' backgrounds are written like instruction manuals rather than stories. My opinion and preferences don't mean you're wrong. I am 99.7603% convinced that the digital dice are messing with me. I roll high when nobody's looking and low when anyone else can see.🎲 “It's a bit early to be thinking about an epitaph. No?” will be my epitaph.
The dice are all physics based and not an animation. With it being physics, a lot of factors get involved. With how we throw the dice, what dice are thrown, how hard, and even the screen size will change how the dice collide with each other to give the final result. First we randomize the start rotation so even if we dropped the dice without throwing them it would be random. Second we also throw the dice in a random direction with a random force, this makes it even more random! Third we also add an additional throwing rotational spin so when things collide they will collide differently even if for some reason the force and start rotation happened to be the same which that makes it even more random!!
So while a randomizer seed can be the same for 2 people other factors that happen on your computer can and will change how the physics run and give you a different result.
If we ever see things with how the randomization works that cause an issue we will absolutely fix it to make sure its as 'random' as it can be. If we have to we will absolutely look into other things like https://blog.cloudflare.com/randomness-101-lavarand-in-production/ ... well maybe not that extreme but we will look into other ways if it ever becomes an issue.
Well, gotta tell you I don’t believe you. I have seen some cocked ass dice on this roller and it registers a number. I have seen it register numbers that are clearly not the topmost facing. If what you say is true you got glitches galore.
The dice are all physics based and not an animation. With it being physics, a lot of factors get involved. With how we throw the dice, what dice are thrown, how hard, and even the screen size will change how the dice collide with each other to give the final result. First we randomize the start rotation so even if we dropped the dice without throwing them it would be random. Second we also throw the dice in a random direction with a random force, this makes it even more random! Third we also add an additional throwing rotational spin so when things collide they will collide differently even if for some reason the force and start rotation happened to be the same which that makes it even more random!!
So while a randomizer seed can be the same for 2 people other factors that happen on your computer can and will change how the physics run and give you a different result.
If we ever see things with how the randomization works that cause an issue we will absolutely fix it to make sure its as 'random' as it can be. If we have to we will absolutely look into other things like https://blog.cloudflare.com/randomness-101-lavarand-in-production/ ... well maybe not that extreme but we will look into other ways if it ever becomes an issue.
That's way more interesting than I would have thought. Thanks for the response!
Background: I'm a dev who has got Nevada gaming approval implementing a random number generator for gaming devices. I'm also a old school DM who started DMing before the first DM's Guide was published (By the God's it was epic !!), and am a software architect today.
My observations for what ever they are worth: I finally got a chance to try and get a true sample of the randomness of the dice roll tonight by rolling multiple 9D6 fireballs (switch to edge as chrome performance was abysmal for what ever reasons) My finding where that the dice rolls tended to be a bit high, Mindful that given your approach to entropy in my case are based on static values (a PC, Same resolution and no velocity data) I would suggest adding in an additional entropy values such as client ticks or click mouse button down to mouse button up milliseconds to your seed values.
That feedback is from the software architect in me, the DM side say's it ok if the virtual dice are leaned somewhat in the players favor. After all we all deep inside want our players to roll well, We can always fudge things if we have to (carefully behind our shields). Or the more principled come up with a more creative way to make the game enjoyable.
My thanks to everyone for the communal effort to keep good imaginative Story telling alive.
The dice are all physics based and not an animation. With it being physics, a lot of factors get involved. With how we throw the dice, what dice are thrown, how hard, and even the screen size will change how the dice collide with each other to give the final result. First we randomize the start rotation so even if we dropped the dice without throwing them it would be random. Second we also throw the dice in a random direction with a random force, this makes it even more random! Third we also add an additional throwing rotational spin so when things collide they will collide differently even if for some reason the force and start rotation happened to be the same which that makes it even more random!!
So while a randomizer seed can be the same for 2 people other factors that happen on your computer can and will change how the physics run and give you a different result.
If we ever see things with how the randomization works that cause an issue we will absolutely fix it to make sure its as 'random' as it can be. If we have to we will absolutely look into other things like https://blog.cloudflare.com/randomness-101-lavarand-in-production/ ... well maybe not that extreme but we will look into other ways if it ever becomes an issue.
So does this explain why we cannot (as currently implemented) have instant, results-only rolls?
For instant, I think it does explain it -- if they need to wait for the physics to resolve, which happens when rendering the 3d dice, then they can't give instant answers. As for results-only you mean don't do the animations?
The dice are all physics based and not an animation. With it being physics, a lot of factors get involved. With how we throw the dice, what dice are thrown, how hard, and even the screen size will change how the dice collide with each other to give the final result. First we randomize the start rotation so even if we dropped the dice without throwing them it would be random. Second we also throw the dice in a random direction with a random force, this makes it even more random! Third we also add an additional throwing rotational spin so when things collide they will collide differently even if for some reason the force and start rotation happened to be the same which that makes it even more random!!
So while a randomizer seed can be the same for 2 people other factors that happen on your computer can and will change how the physics run and give you a different result.
If we ever see things with how the randomization works that cause an issue we will absolutely fix it to make sure its as 'random' as it can be. If we have to we will absolutely look into other things like https://blog.cloudflare.com/randomness-101-lavarand-in-production/ ... well maybe not that extreme but we will look into other ways if it ever becomes an issue.
Well, gotta tell you I don’t believe you. I have seen some cocked ass dice on this roller and it registers a number. I have seen it register numbers that are clearly not the topmost facing. If what you say is true you got glitches galore.
Second this....I am like- wait that was this number?!?
Just a question for the devs; how are the die rolls randomized? Also, is the number rolled determined randomly before the animation, ie. is the animation created recursively to accommodate a pre-determined random number? Just a curiosity.
I'd like to know this as well.
I'm curious as well, especially considering the typical results of the inline forum RNG roller. From what I've seen so far, presumably the new dice roller uses a different RNG?
Locke - V. Human Shadow Monk 3 / Undead Warlock 2 - [Pic] - [Traits] - in FOW - DMless West Marches
Nico - V. Human Swords Bard 5 - [Pic] - [Traits] - in Wysp's Hidden Tower
Sterling - V. Human Bard 2 - [Pic] - [Traits] - in Bards: Dragon Heist (w/ Mansion) - Jasper's [Pic]
Finn - V. Human Hexblade Warlock 5 - [Pic] - [Traits] - in Beneath the Mountain
Tooltips Post (2024 PHB updates)
>> New FOW threat & treasure tables: fow-advanced-threat-tables.pdf fow-advanced-treasure-table.pdf
I play in a game with a bunch of high-level software developers who have very specific opinions about how random values are generated in code. I would love to hear a high-level explanation for how the randomness for DnD Beyond's Digital Dice is generated.
My inquiry is not in response to any empirical experience with the Digital Dice, this is purely food for a theoretical discussion.
I always laugh at the comment that comes up like 'RNG's aren't really random!'. Because neither are dice. No die rolls true.
Here is a great analysis of standard a chessex die and an expensive game science die rolled 10,000 times.
I believe it was mentioned on a recent dev update (I can't remember which one, but can't be that far back) that they actually use the physics of the simulated die to determine randomness, rather than predetermining the outcome using a pRNG generator and then reverse plotting the physics. Effectively this means that, given the relatively simple physics of dice rolling, the results are as close to random as real dice (maybe even more so as the virtual dice have impossibly uniform mass distribution and geometry)
D&D Beyond moderator across forums, Discord, Twitch and YouTube. Always happy to help and willing to answer questions (or at least try). (he/him/his)
How I'm posting based on text formatting: Mod Hat On - Mod Hat Off
Site Rules & Guidelines - Homebrew Rules - Looking for Players and Groups Rules
There's no way that whatever physics the have programmed in come close to all the factors that affect the outcome of a die roll. As a physics teacher, it's not something I would call relatively simple. There are so many things that would affect the outcome of a real die that would almost certainly have to be simplified. I'm also assuming that they are still using an RNG to determine the 'human factors' such as initial force magnitude and direction from the 'hand', the angle and height the die are dropped, etc...
And the fact remains that whatever RNG they use is going to be closer to true random than any physical die.
Alright, thanks. I'll look back through Adam's updates on YouTube.
Hey all, one of the devs on the dice here.
The dice are all physics based and not an animation. With it being physics, a lot of factors get involved. With how we throw the dice, what dice are thrown, how hard, and even the screen size will change how the dice collide with each other to give the final result.
First we randomize the start rotation so even if we dropped the dice without throwing them it would be random.
Second we also throw the dice in a random direction with a random force, this makes it even more random!
Third we also add an additional throwing rotational spin so when things collide they will collide differently even if for some reason the force and start rotation happened to be the same which that makes it even more random!!
So while a randomizer seed can be the same for 2 people other factors that happen on your computer can and will change how the physics run and give you a different result.
If we ever see things with how the randomization works that cause an issue we will absolutely fix it to make sure its as 'random' as it can be. If we have to we will absolutely look into other things like https://blog.cloudflare.com/randomness-101-lavarand-in-production/ ... well maybe not that extreme but we will look into other ways if it ever becomes an issue.
That’s actually really good, in terms of ‘randomisation’ but also really cool.
"Most people are other people. Their thoughts are someone else's opinions, their lives a mimicry, their passions a quotation."
― Oscar Wilde.
I always find it really hard to trust digital dice. I always feel like they roll low.
Are you guys logging all the rolls to get massive stats about them to ensure a nice linear distribution per die?
My totally non-empirical anecdotal confirmation bias suggests that they roll lower than average most of the time, but your multifactor randomness generator (even screen size? Wow) suggests that they're more random than dice, as pointed out above. Data would be fun!
Ok I gotta admit, that's pretty cool and way more comprehensive and complicated than I thought.
So does this explain why we cannot (as currently implemented) have instant, results-only rolls?
My curse extends to digital dice. High rolls only when not observed by another person. Low rolls otherwise.🤦♂️
Human. Male. Possibly. Don't be a divider.
My characters' backgrounds are written like instruction manuals rather than stories. My opinion and preferences don't mean you're wrong.
I am 99.7603% convinced that the digital dice are messing with me. I roll high when nobody's looking and low when anyone else can see.🎲
“It's a bit early to be thinking about an epitaph. No?” will be my epitaph.
Well, gotta tell you I don’t believe you. I have seen some cocked ass dice on this roller and it registers a number. I have seen it register numbers that are clearly not the topmost facing. If what you say is true you got glitches galore.
Creating Epic Boons on DDB
DDB Buyers' Guide
Hardcovers, DDB & You
Content Troubleshooting
That's way more interesting than I would have thought. Thanks for the response!
Background: I'm a dev who has got Nevada gaming approval implementing a random number generator for gaming devices. I'm also a old school DM who started DMing before the first DM's Guide was published (By the God's it was epic !!), and am a software architect today.
My observations for what ever they are worth: I finally got a chance to try and get a true sample of the randomness of the dice roll tonight by rolling multiple 9D6 fireballs (switch to edge as chrome performance was abysmal for what ever reasons) My finding where that the dice rolls tended to be a bit high, Mindful that given your approach to entropy in my case are based on static values (a PC, Same resolution and no velocity data) I would suggest adding in an additional entropy values such as client ticks or click mouse button down to mouse button up milliseconds to your seed values.
That feedback is from the software architect in me, the DM side say's it ok if the virtual dice are leaned somewhat in the players favor. After all we all deep inside want our players to roll well, We can always fudge things if we have to (carefully behind our shields). Or the more principled come up with a more creative way to make the game enjoyable.
My thanks to everyone for the communal effort to keep good imaginative Story telling alive.
Be Safe and Enjoy.
For instant, I think it does explain it -- if they need to wait for the physics to resolve, which happens when rendering the 3d dice, then they can't give instant answers. As for results-only you mean don't do the animations?
Correct, no animations. Just show the results immediately!
Second this....I am like- wait that was this number?!?
WWW.WERERATSTUDIOS.COM
DND PODCAST - THE CHICAGO TABLE -
www.thomaskiserart.com