WoW BlueTracker Home | RSS | News | Contact
Recent | Search | Archive | CS Posts
Poster: Hellrot at 3/7/2005 1:23:14 PM PST
Subject: Roll Hacks
   There have been a bunch of questions, a lot of concern, and a ton of speculation about how WoW's "rolling for loot" works. I want to give you guys some info to help everyone better understand this system.

- The random numbers are generated on the server, not the client
- The packet for a loot roll contains this info: which corpse, which item, and boolean (yes/no) if you want to roll or pass; there is no roll, range, etc...
- There is no "re-roll" mechanism. You tell the server you want to roll and it generates a single random roll for you. Network retries will not make it re-roll, nor can the client ask for one. If you asked it to roll again, it knows you have already rolled and will not do it.
- The server sends the roll results (or pass) to all the party members. You could hack it to make your client see the wrong roll, but the server would still know what you really rolled and award the loot accordingly.
- The problem with tied rolls causing FFA looting has been fixed for the next patch. If there is a tie, the server will randomly pick one of the tied players as the winner.
- The loot and /random rolsl do not use the same packets. A /random roll just sends the low and high values for the range requested. Those values are checked on both the client and server to enforce that low >= 0, high >= low, and as of the next patch, high <= 1,000,000.
- As with the loot rolls, the random roll is generated only on the server (and only once) and then sent to players in the vicinity.
- /random results are displayed in yellow text to distinguish them from emotes which are orange. We will look into further distinguishing these messages to prevent "roll spoofing".
- WoW currently uses the IBAA pseudo-random number generation algorithm. We have a library of generators and can switch at any time if the need were to arise.

Another popular theory I want to touch on is "streaks". People like to see patterns where none exist. They also like to look at some statistics but not others. Let's take an example. What are the chances of rolling 98 or higher? Simple: 3%. What are the chances of rolling 98 or higher 5 times in a row? About 1 in 4.1 million. If you stop there you would think that if you saw somebody roll 98+ 5 times in a row, they *must* be cheating! But let's not stop there. How many random rolls are there each night? Many millions. So what are the chances that a noticable number of people did indeed roll 98+ 5 times in a row? Virtually guaranteed.

It is true that we are dealing with pseudo-random numbers as opposed to true randoms. It is also true that all pseudo-random number generators do have a pattern to them; they will eventually repeat themselves. You need to keep in mind that their periods (number of iterations before they repeat) are very long. It varies by algorithm, but the length of the period is one of the key attributes of any good random number generator. Each server process has it's own unique random number generator and everyone being served by a process is sharing that generator. So while the numbers can not be truly random, we have done what we can to make them as random as possible.

At the first reports of suspected roll hacking, we did a review of the loot rolling code and found no vulnerabilities. We still decided to go ahead and log all loot rolls so that we can address suspected roll hacks with real information. Since that time we have checked these logs against claims of roll hacking and have as yet found nothing to substantiate any of the claims. In some cases we have seen direct evidence that the claims were false.

In summary, there are no known roll hacks. We will continue to monitor and investigate these issues.
  http://forums.worldofwarcraft.com/thread.aspx?fn=wow-general&t=1806053&p=#post1806053

View all recent official Blue Posts

WoW Blue Tracker: Archiving World of Warcraft Blue Posts
since March 2005
Home | RSS | News | Contact
Recent | Search | Archive | CS Posts
 

Why Ads?