latest

RNG hates us all - Random Number Generators in games

If it's not a lack of critical hits despite 75% chance in your favorite MOBA, then it's landing a critical hit only when the opponent's pokémon has already been wrestled down to 5 HP. RNG based Luck factors can be frustrating as hell, and yet we still see it all over the place, especially when least expected. I'm gonna try and highlight some of the facets of luck-based mechanisms in gaming, I'm also going to try and give tips on how games can actually make it work!

So, to start with, why do we have Random Number Generation? Well, in most games, the key reason is to create variety, Sometimes pretty blatantly. Take Hearthstone's bomber cards, they deal damage to a random enemy. If they didn't have this randomisation, they'd just be rehashes of other cards that deal damage when they're played, like the Shaman's Fire Elemental.

Sometimes, though, it can be a bit more subtle in the way that it affects us. Most MMORPGs, particularly the ones that are getting up there in age, have a tendency to fall into an almost turn-based system of combat. You rattle off your skills in the correct order over and over until your opponent is dead. Wonderful. The random number generator plays a part here in the form of a sort of damage wiggle zone. The first hit may deal 20 damage, the next 19, It's a minute difference really. Why does this exist? I'd surmise it's because if you deal extremely consistent damage, that can actually be really boring. It helps your immersion if you don't fall into an extremely repetitive pattern, and seeing if you can hit just 22 damage on one of your hits to try and kill an enemy with 62 HP in three hits does add just the tiniest bit of variety. In short, it's to maintain the illusion of actual combat, rather than a boring DPS check.

[caption id="attachment_8752" align="alignnone" width="590"]Do you have the numbers to kill it before it kills you? The damage wiggle adds just a little bit of diversity in gameplay. Do you have the numbers to kill it before it kills you? The damage wiggle adds just a little bit of diversity in gameplay.[/caption]

There's also the curious case of the critical strike and mechanisms like it. Those also add variety, but that's more in the vein of the first form. Critical Strike is basically a stat that a player can invest in for a high-risk, high-reward gameplay style. Something that can triumph or flop on the turn of a dime. It is essentially an additional archetype: You've got healers, multi-target DPS, single-target DPS, tanks, and crit-strikers.

Now on to the implementation in games. I'm first going to list some pitfalls and things I would personally advise against.

To start off with, the oversized damage wiggle. If your damage bracket ranges from, say, 18-22 then that looks okay. If it ranges from 10-30 then that's starting to look pretty awful. Particularly if it's your base damage value, which leaves the player no way out and hoping too much for luck. As someone with notably bad luck, I can tell you that that is not a good thing.

It's arguable whether or not it's a good thing if the width of the damage bracket is governed by another stat that the player can influence, like perception. In my opinion, it's still kind of a bad thing. I'd personally say that players need to invest to get the RNG into their gameplay, not out of it.

Another one I consider a bad representation is the use of critical strikes in some MOBAs. Now there are MOBAs that manage to get it somewhat right, but there's also some that were... Just plain bad with it.

Now, I quit League of Legends quite a long time ago so I don't know if the situation has changed, but when I quit, critical strike was pretty much a requirement for any auto-attack based champion. You just wouldn't be able to get enough damage output without getting your critical hits. This created a really awkward situation where the entire class was governed almost as much by luck as it was by skill. Allegedly, RIOT did invest in a behind-the-scenes mechanism that was supposed to balance it out, so kudos to them if they managed it, but if that isn't in place, I'd call it bad form.

Now, two examples that managed to sidestep this issue are DotA and SMITE. The first managed to take the weight off the critical strike by making it one of several options, an alternative, not the crux of the build. A little extra spice on top rather than the core focus. While the critical strike option in DotA is definitely popular, it is not impossible to get by without it.

SMITE did put weight on the critical strike but they put in an item, that was core to any critical strike build, that employed a mechanism to specifically counter bad luck: Rage. The blade of Rage would raise a player's critical strike chance considerably every time they failed to get a critical strike. This effect would reset to 0 every time they did get a crit. The effect of this is that it puts a hard limit on just how horrible your luck can get. No more five non-crits in a row on 50% crit rate, because you hit 100% crit rate after your third non-crit!

[caption id="attachment_8645" align="alignnone" width="590"]Heroes of the Storm changed critical hits from luck to a more sure-fire system. Instead of getting lucky, a crit just means you Heroes of the Storm changed critical hits from luck to a more sure-fire system. Instead of getting lucky, a crit just means you've satisfied the conditions for bonus damage, such as attacking an enemy while they're slowed or stunned, or expending mana for more powerful attacks.[/caption]

These are good ways to circumvent a bad impact of the random number generator, don't put too much weight on it and try to limit the extent that bad luck can ruin your game. Hearthstone employs something similar by allowing players to re-draw cards from their opening hand, if they choose to.

What are other good ways to implement the RNG into your game? Well, one is to have it be completely optional. Although it can be tricky to balance, making a luck-based build a viable alternative to other builds can be a great way to offer players variety without making bad luck players throw their monitor out the window. Those that want stability can choose a safer build, those that want the thrill of the gamble can pick something with more risk.

Wakfu generally doesn't deal too much with luck. There's a few chance based effects here and there, mostly in the form of add-ons. Abilities will do X with a chance to also do Y. It's played pretty carefully, except with the Ecaflip. Now there's practically a big neon sign over the Ecaflip class that warns players that it is a luck-oriented class.

Aggressive, attack oriented, Ecaflips would find a luck-based bonus effect on all of their attacks. Deal damage, and roll the dice. Automatically cast a spell again if you roll a six! Hit target enemy, then hit two more enemies if the initial hit was a critical strike! Hit an enemy, and if you roll a seven with two dice, the damage is doubled! They even had an ability that would double or heal the last instance of damage dealt.

[caption id="attachment_8647" align="alignnone" width="590"]Although a recent update had most of the luck factor taken out, the Ecaflip used to be able to obliterate enemies with a roll of the dice. Or bring them back from the brink of death. Although a recent update had most of the luck factor taken out, the Ecaflip used to be able to obliterate enemies with a roll of the dice. Or bring them back from the brink of death.[/caption]

On top of that they had a card drawing mechanism, Ecaflip's Tarot, which would create all kinds of effects by making the Ecaflip draw a card at the start of each turn. The effects were pretty extensive and could be good or bad, really bad. But, fortunately, the player had to actively invest to activate the Tarot mechanism, it wasn't a requirement.

The result is that while the fun and thrill of a gambler class was present in the game, people that didn't like the luck factor could just choose a different class and not engage with it at all.

Finally, there's probably one more point that needs addressing: RNG in player versus player. Honestly, this one has me largely stumped. Without a lot of stabilising, like the Rage mechanism from SMITE, I don't see much of a solution for these luck based mechanisms. It's one of the things I really don't like about Hearthstone, everything is partially decided by luck. If a card-less mage is facing an armada, and the warlock behind it has six health, every card she draws determines whether she wins or loses. If she's lucky she'll draw the card she needs and Fireball her way to victory. If she's not, she draws cards she really doesn't need or want right then and there.

That's luck as a base mechanism, but as a class mechanism it's also going to be difficult. Balance dictates that luck oriented classes would have to average out at the same point as other classes, which means their design must dictate that their good and bad luck must have similar amounts of influence. You could start twisting the numbers, but you'll probably always end up making the battle look like luck. You could also try to give the luck factor less space and make good or bad luck have minimal influence, but then the player is not going to get that gambler's rush.

[caption id="attachment_8753" align="alignnone" width="590"]Luck in PvP can make an already varied game even more varied, and there is little as satisfying as getting all the aces in your hand. Luck in PvP can make an already varied game even more varied, and there is little as satisfying as getting all the aces in your hand.[/caption]

It would probably be best to find some way to separate PvP and PvE and sacrifice that gambling thrill for the sake of balance. PvP just does not fare too well with luck, since it puts both the player and his or her opponent at the sidelines while RNGsus takes the wheel. You could, for example, introduce a PvP only effect akin to the Rage system: Every bit of good luck increases the chances of bad luck, every bit of bad luck increases the chances of good luck. It would ensure a steady back and forth of the two and might make the class easier to balance.

At the end of the day, while it is important that the player gets to play the slot machine, rather than the slot machine playing him, there is a bit of fun in not knowing what's going to happen. Luck is one of those rare excuses that flies for something being utterly overpowered, going way beyond the boundaries that other characters run into. There's an addicting quality to it, and that makes it worthwhile to explore, even in spite of the challenges!

RNGSus hates us all, but we still cross our fingers in prayer whenever we roll the dice.

Author image
Autistic gamer, training to become a voice-over. Love to play games and discuss lots of things, not afraid to talk about Autism either, if anyone has questions.