Is luck fun?
Games, and those who play them, have a somewhat tense and delicate relationship with luck and randomness. In the best case, adding some randomness to a game can create unexpected and delightful variations on the basic challenge of a game, forcing players to improvise through bad situations and capitalize on favorable ones. In Spelunky, the behavior of all in-game objects is – hypothetically, and aside from minor programming inconsistencies – completely predictable: However, the placement of these objects in relation to each other is randomized, and what at first seems like a commonplace challenge can quickly spiral out of control as the objects interact on each other causing a hectic chain reaction. The skills of recognizing how these situations can arise, recognizing the warning signs, and taking appropriate precautions, far outweigh the demands of pure platforming skill when it comes to performing well in Spelunky.
In the worst case, however, randomness can arbitrarily punish players for making what is actually statistically the best choice: If you know that nine times out of ten saving up for a cloaking device is the best path to victory in FTL, and you play accordingly – only to find out that this is that one time in ten where the resources you gave up cost you the game – it feels frustrating and random, like losing at a slot machine masquerading as a game of skill. Another example: By default Team Fortress 2 has a randomized +/-10% damage range on all weapons, with a randomized chance of occasionally doing a “critical hit” which does 300% damage: What this basically means is that no matter how carefully you’ve planned an engagement, if you think “okay, I can get the drop on this guy, get one hit in, he’ll turn and shoot and even if he hits I’ll survive and hit him once more and drop him”, all planning is rendered irrelevant by the other player getting lucky and instantly killing you in one shot.
So what’s the difference? What’s good random and what’s bad random? What’s an engaging and unexpected twist and what’s an arbitrary and undeserved punishment or reward?
The key to whether randomness in a given game mechanic is fun or not primarily has to do with how much room the player has to react to it. This can come in the form of pre-knowledge, giving the player the exact odds of success or failure or the range of values an action might produce, so that they can integrate that into their strategy. However, if the consequences of that strategy failing are dire, then we’re in the FTL situation, where the player can easily be punished for making what is generally the best possible choice. If the player is being asked to create an optimal grand strategy around a set of statistical chances, then it is vital that the risk on each individual engagement be low – or, as is the case with Poker, the player have some degree of ability to determine how great the risk, and commensurate rewards, should be.
Better still, give the player post-knowledge, show them the numbers after they’ve been rolled and then give them a chance to formulate a strategy around them. Spelunky’s randomness is seldom frustrating, since you have plenty of time to survey the field and devise an approach.
Most card games use a combination of pre-knowledge (knowing which cards are in the deck and how many) and post-knowledge (knowing which cards are in your hand) to create a vibrant strategic space. Games like Magic further riff on that by hiding pre-knowledge of your deck from your opponent, while traditional card games like Poker add an additional layer of wagering to the game system as mechanism to account for the randomness.
By giving the player pre-knowledge and post-knowledge of your randomized systems, you’re enabling them to make informed gameplay decisions, and creating a more interesting strategic and tactical space. Without these elements, adding random factors to your game will only make it more tedious and arbitrary, rather than more exciting.