This project is abandoned.

Whether this project is out of date or its author marked it as abandoned, this project is no longer maintained.

If you wish to take this project over, please report it and state your intentions.

LibTrueRandom-1.0 is a library that provides a way to asynchronously retrieve random values by making /roll requests.

Example code:

LibStub("LibTrueRandom-1.0").GetRandom(1, 1000, function(value)
    -- value will be a number >= 1 and <= 1000 here

API Documentation

Here's the use case for this library:

  • You're in a guild or a raid and you want to randomly choose someone to get loot or for some other reason
  • You can't use math.random, since other users in the group might think you are returning bad data thus weighting yourself or friends over them.
  • Doing a /roll is safe and secure, since it's executed server-side and can't be weighted by client-side code.
  • You print to the raid chat: "Rolling for phat lewt - 1: Monkeyman 2: Bananadude 3: Awesomeo"
  • /roll 1 3
  • Myguy rolled 2 (1-3) - executed server-side
  • Bananadude is awarded the "phat lewt" programmatically (with the callback function provided)
  • The three know that they had equal chances to get the item, knew what number they corresponded to, and knew who was the winner due to the public display of the /roll, so there is full transparency and hopefully no whining about "hax".

You must login to post a comment. Don't have an account? Register to get one!

  • Avatar of ckknight ckknight Sep 11, 2010 at 14:53 UTC - 0 likes

    @Road_Block: Go That's an addon, this is simply a library that has nothing to do with raids. If RaidRoll or others decide to use this library, more power to em.

  • Avatar of Road_Block Road_Block Sep 10, 2010 at 22:23 UTC - 0 likes

    Isn't that what RaidRoll and a couple other addons do?



Date created
Sep 10, 2010
Last update
Jan 14, 2011
Development stage
MIT License
Reverse relationships
Recent files