I made this for my upcoming system rework, but it's really useful for any system, so I might as well post it now.

The roller itself takes the form of a PDF file, available through Google Docs here. Note that Google Docs does not (at least as far as I can tell) allow scripts in pdf files (and of course a roller is all about the scripts), so in order to use the roller it will be necessary to download the file and open it with Adobe Reader or some similar program.

A bit of explanation for the various features seems advisable, so here goes:

-The first feature is a Bell Curve roller (using the Box-Muller transform). If you want to roll a bell curve for whatever reason (maybe to approximate a really huge roll, maybe because there's some feature you think should have a bell curve distribution), just put in the mean (average), and either the standard deviation or the variance (the square of the standard deviation, often more straightforward to calculate), and press the button that says "Roll It!" The result shows up in the box marked "result".

-The second feature is a mass testing roller. If you've decided, for instance, that each adventurer should have a 10% chance of being a wizard, and want to know how many wizards are found in a gathering of 1000 adventurers, rolling 1d10 a thousand times and counting the 1s could get a bit tiresome, and saying it's just 100 can seem a bit forced. With this, you simply need to put in the number of rolls, and the chance of each roll giving the result you're looking for, and it will roll it and tell you how many got that result. It makes use of an algorithm* to handle even very large numbers quickly, but once you start pushing a quadrillion rounding errors will mean slight inaccuracies will pop up.

-The third feature is an event timer for encounters and similar events. Instead of just rolling a die each hour or day (meaning that you can't have two events occur within one rolling period), just put in the average rate (the first box is for the number, the second is for the time period), click the button, and it will give you the time until your next event (using the same units as you used).

Note that the time period box is optional; if you don't put in the time period, it will give you the answer as a number, and you can add the units yourself (with the same units you used when determining the rate).

Any feedback (if you have any) is welcome.

*Ahrens, J. H., and U. Dieter. 1974. Computer methods for sampling from gamma, beta, Poisson and binomial distributions. Computing, 12, 223-246.