Sounds a bit like "normal distribution", or "the bell curve." You can generate numbers that act like that using the "Box–Muller transform." Look up these things.
This is what we did on Kingdoms for the mystery boxes (for determining which item you got). If you need more code samples, I can dig up our implementation as well.