Hey guys, sorry for the delayed response. It appears the API script is handling the dice rolls. All dice seem to use the same method and leverage Roll20's randomInteger() function, which is supposed to be more reliably random than using the straight-up JavaScript Math.random() function. See here . While I'm not 100% familiar with this game system or this script, it does appear you can short circuit the randomness of the dice roller by enabling ' diceTestEnabled', or set to 'true', under global variables. This will increment the dice roll serially, so all sides are "rolled" through in numerical order (i.e.1, 2, 3, 4, 5...etc.) Other than that, I'd have to say what you're experiencing is either a computer's lack of randomness (which is a real problem and briefly discussed in the aforementioned link), is perception (you're expecting more randomness than you seem to experience...which is arguably random! :P ), or a bit of both. I don't know if the sheet/script authors are still around, but I believe The Aaron is and he had a hand in this. You might PM him or take this to the API forum to move it forward. Hope that help, and good luck!