Our system could not be more random. The documents that represent the collectibles and packs don’t even know what a serial number is. Their IDs are unserialized random text. They are all minted up front and packed into packs randomly, then when someone buys a pack, one is chosen at random (with no insight into serials).
Odds of getting any serial are exactly the same (when all pack draws are taken together as one event) no matter how many packs a single user purchases.
If we wanted a uniform distribution of serials and items across all buyers (not random) we would need to know all buyers up front then create code to spread out the items evenly. When there are several people buying and packs are being distributed in real time, there is no way for us to ensure one person gets evenly distributed numbers.
We should also say that there is no Dapper code involved. It’s all built by Tibles. This is our third collectibles platform with blind pack draws (Topps and Quidd before), so we’ve done a lot of research and testing.