Randomness is one of the most critical factors in ensuring an engaging game. Random events turn the game into a strict uncertainty, causing players to analyze the opportunity costs of their choices.
LCRNG
Lagged Fibonacci methods
Carry methods
Mersenne Twister
Mother of all
Xoroshiro128+
PCG Family



Doom


Transport Tycoon


Lehmer RNG


Gaussian MOA


Xorshift
Uniform distribution
Gaussian (normal) distribution
Uniform distribution
Gaussian distribution
Seed
Loot
Spinning
Rarity Slotting
Random encounter
Final Fantasy 1 (1987)
Super Mario 64 (1996)
Pokémon series for GBA (2002)
Darkwing Duck

Pitfall! (1982)

Doom (1993)
XCOM: Enemy Unknown (2012)
No Man's Sky (2016+)
| 1 | unsigned char rndtable[256] = { |
| 2 | 0, 8, 109, 220, 222, 241, 149, 107, 75, 248, 254, 140, 16, 66 , |
| 3 | 74, 21, 211, 47, 80, 242, 154, 27, 205, 128, 161, 89, 77, 36 , |
| 4 | 95, 110, 85, 48, 212, 140, 211, 249, 22, 79, 200, 50, 28, 188 , |
| 5 | 52, 140, 202, 120, 68, 145, 62, 70, 184, 190, 91, 197, 152, 224 , |
| 6 | 149, 104, 25, 178, 252, 182, 202, 182, 141, 197, 4, 81, 181, 242 , |
| 7 | 145, 42, 39, 227, 156, 198, 225, 193, 219, 93, 122, 175, 249, 0 , |
| 8 | 175, 143, 70, 239, 46, 246, 163, 53, 163, 109, 168, 135, 2, 235 , |
| 9 | 25, 92, 20, 145, 138, 77, 69, 166, 78, 176, 173, 212, 166, 113 , |
| 10 | 94, 161, 41, 50, 239, 49, 111, 164, 70, 60, 2, 37, 171, 75 , |
| 11 | 136, 156, 11, 56, 42, 146, 138, 229, 73, 146, 77, 61, 98, 196 , |
| 12 | 135, 106, 63, 197, 195, 86, 96, 203, 113, 101, 170, 247, 181, 113 , |
| 13 | 80, 250, 108, 7, 255, 237, 129, 226, 79, 107, 112, 166, 103, 241 , |
| 14 | 24, 223, 239, 120, 198, 58, 60, 82, 128, 3, 184, 66, 143, 224 , |
| 15 | 145, 224, 81, 206, 163, 45, 63, 90, 168, 114, 59, 33, 159, 95 , |
| 16 | 28, 139, 123, 98, 125, 196, 15, 70, 194, 253, 54, 14, 109, 226 , |
| 17 | 71, 17, 161, 93, 186, 87, 244, 138, 20, 52, 123, 251, 26, 36 , |
| 18 | 17, 46, 52, 231, 232, 76, 31, 221, 84, 37, 216, 165, 212, 106 , |
| 19 | 197, 242, 98, 43, 39, 175, 254, 145, 190, 84, 118, 222, 187, 136 , |
| 20 | 120, 163, 236, 249 |
| 21 | }; |
| 22 | |
| 23 | int P_Random (void) { |
| 24 | prndindex = (prndindex+1)&0xff; |
| 25 | return rndtable[prndindex]; |
| 26 | } |

Games with procedural content



Terrain generators
Level generators
Pattern generators
Filling space
Partitioning space



Perlin Noise

Simplex Noise

Worley Noise
| 1 | float PerlinNoise2D(int x, int y, float persistence, int octaves, float zoom) { |
| 2 | float total = 0.0f; |
| 3 | // initial frequency and amplitude |
| 4 | float frequency = zoom; |
| 5 | float amplitude = 1.0f; |
| 6 | |
| 7 | for (int i = 0; i < octaves; i++) { |
| 8 | // calculate noise |
| 9 | total = total + InterpolatedNoise(x*frequency, y*frequency) * amplitude; |
| 10 | // update frequency and amplitude |
| 11 | frequency = frequency * 2; |
| 12 | amplitude = amplitude * persistence; |
| 13 | } |
| 14 | return total; |
| 15 | } |



| Unit Size | Smallest Unit | Upper Range [m] | Upper Range Area |
|---|---|---|---|
| 100m | Space Ship | 1.67 x 10^9 | Diameter of the Sun |
| 1m | Car | 1.67 x 10^7 | Asia |
| 1cm | Coin | 1.67 x 10^6 | Mexico |
| 1mm | Fluid Particle | 1.67 x 10^5 | Paris |
| 100μm | Dust | 1.67 x 10^4 | Manhattan |

Bounding volume
Spatial data structure
Implementations
Oct-tree
Types

Waypoint-based
Mesh-based





Grid-based

Pokémon series (Tile)

OpenTTD (Octile)

Heroes of M&M 3 (Hex)

Starcraft II

Stardew Valley
Properties
Environment type
NPC movement

Uniformed graph searches
Cost-based graph searches

Improvements

Mohu vycvičit experty černé magie na mistry, ovšem jen pokud splňují má kritéria. Budu učit jen opravdové zasvěcence, ty, kteří jsou tak zlí, že jejich reputace je ta nejhorší - prostě opravdové Miloše Zemany. Nedělám žádné výjimky a též nežádám žádné peníze, stačí ujištění, že budete po světě šířit zlo a zvyšovat daně.Might and Magic 6
I can bring experts of dark magic up to master, provided they meet my standards. I only teach the genuinely dedicated - those so evil their reputations are as bad as they can get. The truly notorious. I make no exceptions, and charge no fee in the interests of spreading darkness throughout the world.Might and Magic 6