Add a pinch of randomness to your game


With this short post I will try to convince you to use a little more randomness and procedural generation in your projects.

In any case, there will be many interesting resources.

Types of randomness in games

In general, I am in favor of using as much of this kind of content as possible, as this increases the replayability and the number of unique game situations for the user.

It is clear that this is worth doing without fanaticism. An example is No Man's Sky , where developers have elevated the idea of ​​procedural generation into an absolute and are still paying for it .

The problem, in my opinion, is that many take this concept too globally, for example, focusing on creating endless worlds or tons of unnecessary weapons. But at the same time they forget to pay attention to the little things, of which, in fact, is the player’s environment.

Since I myself am sitting on relatively small projects, I try to enter the maximum possible amount of random / procedural content so that the player does not get bored and can find something new every time.

Examples of used generation


Of course, I wanted to supplement the examples with illustrations, but, unfortunately, the NDA does not allow this.

  • Instead of a static background of the starry sky, I use a system of particles, thanks to which each time a unique landscape is created;
  • Instead of a single sprite of plants on the windowsills, I persuaded designers to draw several - in conjunction with a random house, each time a unique look of buildings is obtained;
  • , β€” , «» . , ;
  • , , , ;
  • , , , ;
  • . , , β€” , .

You can continue for a long time. I feel that many people will object that all this makes no sense: if the gameplay is crooked, then this will not save the game. I agree that such approaches should be used only when everything else is in order, but it’s better to connect them together with the main game mechanics in advance.

Below are examples with the absence and presence of variability. I tried to take situations that I personally encountered, and not which everyone heard.

Caution spoilers!


Situations where I would like variability
  • The Legend of Zelda: Breath of the Wild β€” : , , .., , .., , - , β€” .
  • The Legend of Zelda: Breath of the Wild β€” : β€” . , (, ), , , , , . , . , , .
  • Talos Principle β€” : Croteam , Portal, , , . , Β« Β», . ? , .

    ,
  • Control β€” : , , . , β€” . .. Β« Β» , . Control . , , 219 AAA . L4D2 . , , , . , , , , .

Situations where implemented cool
  • Dishonored β€” : 3 , β€” . .
  • Dishonored 2 β€” : , . . , , , , .
  • Borderlands β€” : , , , . , . , , - .


Most users will probably not even notice that you have taken care of them by implementing a slight variable logic. But believe me, they will notice its absence - because of such trifles the game is made up. And to implement it is very simple: do not be too lazy to write a couple extra lines of code or draw a couple more sprites. I hope I managed to convince you a little, or at least sow a grain of doubt.

All Articles