Introducing WAGDICE: On-Chain, Verifiably Random Dice Rolls

Hello citizens of the conclave, today a new tool has appeared!

WAGDICE is a simple building block that might not be exciting on its own but will be leveraged in interesting ways in the future.

We will also be rolling out a graphical dice roll tool on soon that will be usable by WAGDIE holders.

The contract implementation can be found here and is open for all to use:

All of our community builders are encouraged to use this contract in any way they see fit.

Use the rollDice() function and specify up to 10 rolls with:

  • Number of dice per roll
  • Number of dice faces (4, 6, 10 etc.)
  • Any fixed bonuses

Results are emitted as events.

Why Polygon?
Gas and LINK costs. Using a new VRF request per roll is not affordable on L1.

Whats it Cost?
If you are calling the contract directly or building it into your own app, expect gas to cost around 1 cent per-roll in MATIC. We cover all LINK fees for VRF.

If you are using our implementation on there will be 0 cost, we cover the MATIC and LINK fees.

There is always the potential for outside parties abusing this contract. If it becomes an issue, we will add the ability to allowlist addresses that can call the rollDice() function. The process for getting added to the list will likely be as simple as posting a request in this thread.

Give it a try, report any issues, and build something interesting.


This is very exciting!!!

Cannot wait to play with it and def a fan of polygon, layer 2s/ZK rollups will be the best path forward for such things.


Ah good news. Polygon was a great choice! I’ve never experienced any kind of issue while interacting on that L2 so far. Looking forward to play with the new tool.