Farming often gets a bad rap in City of Heroes
, but sometimes it does the game a major favor. For example, a player working the same map with the same enemies over and over is in a perfect position to notice when random events - the dropping of loot, for example - aren't as random as they should be.
This was exactly the situation that a forum regular called KeepDistance encountered. Every time they ran a particular map, they would get exactly the same number of salvage and recipe drops
, distributed exactly the same way. That's not supposed to happen.
It's also not rocket science to figure out how this could be used to a player's advantage; if you know which maps give the best yields, then you can farm those to death, getting much better results than randomness would dictate.
This discovery led to a massive thread full of detective work
. More and more maps were identified that displayed the same behavior. It seemed they were all maps populated with one type of enemy: all Fortunatas, all Behemoths, and so on.
When it was pointed out that knowledge of these predictable drop patterns could work in the farmers' favor, KeepDistance made his position very clear. This was full disclosure, in the hope that the bug would get fixed.
Players devoted hours of their time to testing. Patterns were detected again and again. There was only one conclusion: a random numbers generator somewhere in the game was broken. This was confirmed when resident forum numbers genius Arcanaville, who is known to keep in regular touch with the Devs, dropped by to add her contribution:
'Well, I have to say this was a pretty impressive amount of testing. Your efforts have not gone unnoticed: it seems that in fact, the reward table doesn't use a proper rand() like most random rolls in the game. Apparently whatever junior college compsci intern that wrote that code decided to write their own random number generator. This is never a good idea in the general case.'
And yes, the Devs were working on it. It wasn't talked about in the beta testing much, for obvious reasons, but it was quietly being fixed in the background.
The bug is now fixed properly with the release of Issue 12. With that out of the way, developer Pohsyb has revealed the full extent of the issue. Every single map in the game was affected, though in the majority of cases, the mixture of enemy spawn types would mean it wasn't noticeable.
What will this mean for future drops? Has the market been skewed by drop rates that should have been random but weren't? At this stage, it's impossible to say. The bug only affected whether you got a given reward of a given type or not, not the rarity of the reward. What it does mean is that the system will now, finally, be working as designed. Many CoX players may never be aware of the hard, voluntary work that went into tracking it down, but they'll certainly benefit from the results.