Useful, why?
- Variety / Quantity: Well crafted algorithms can generated infinite quantities of content, presenting the player with new challenges and experiences each time they play. Particularly useful in indie projects where the team does not have enough manpower to produce enough hand crafted content.
- Mastery Over Memorisation: If for example, the level layout is different every time, it will promote mastery of game mechanics instead of memorisation of the game map layout.
- Replay Value: Without randomness the player can formulate a game plan that will work every time which in turn will render the game stale and not fun to replay. Replayability
- Balance Multiplayer/ Comeback mechanic: Lucky / Unlucky rolls can give new players a fighting chance against more skilled players. Game can be designed with odds that change in order to help losing players. This will to some degree prevent complete stomps and promote memorable game experiences where the losing player manages to clutch a win. Implementing this in a game should not negate players skill completely but be more of a little comeback mechanic to make the game remain interesting for both the losing and winning player. An example of this is present in Mario Kart where the odds of finding a good power up increase depending on how far behind a player is positioned in the race.
- Excitement: Can be used to give players a feelings of exhilaration and suspense. This is vastly used in Gacha games where you open character packs and in casino games.
The points mentioned above are not relevant for every game but are tools that should be kept in mind and employed when they will support the desired player experience.
Two types of Randomness
- Input Randomness: Happens before player acts (level generation for example), sets up the parameters of the game. Allows the player to devise a strategy according to the situation.
- Output Randomness: Happens after player takes action. Lessens feeling of agency from the player, causes luck to be the main factor for the player to be successful instead of skill. Taking away player control often causes frustration, hopelessness and a feeling of "Why play this when nothing of what I do really affects the outcome of the game?". A good example of output randomness is the tabletop game Snakes and Ladders.
In my opinion output randomness can lead to a positive gameplay experience if none of outcomes of said random is event is significantly worse than the others.
For the sake of visualisation lets entertain the following two scenarios:
- Scenario A) Player has a shooting attack with 30% chance of missing the target. At any given turn there is 30% chance the player did nothing. With the same odds there is 9% chance that the player will miss the target twice in a row. Now either the player lost due to luck and luck only or the game has to be designed to be so easy that missing two attacks in a row wont cause you to lose.
- Scenario B) Player has a shooting attack that will always land but 30% of the time it deals reduce damage and cripples the enemy movement. While the outcome might not be the one desired by the player, there will be player agency. If all the outcomes were balanced well it will result in a "Oh okay this happened now I need to adapt and do this" instead of a "The outcome I got wasn't the one I desired, I just lost the game due to rubbish randomness".
With Scenario B the player will have a chance to adjust and be successful instead of simply losing. Randomness is a good thing as long as it is implemented in a way that wont remove player agency.
% Based Odds
Human mind struggles to understand percentage based odds. Games are often biased to help players just so the gameplay experience is more enjoyable (Fire emblem does this). Two good alternatives for % based odds are Die (independent probability) and Cards (dependent probability) as humans tend to understand odds better if linked to physical objects like the sides of a die.
Sources:
Procedural Generation - How Games Create Infinite Worlds - Extra Credits
The Price of Randomness - Balancing RNG - Extra Credits
Lessons Learned About The Use Of Randomness In Games