# Generacja proceduralna w grach: jak to działa
Source: https://thelockoftime.world/pl/blog/procedural-generation-in-games
Czym jest generacja proceduralna, jakie typy i algorytmy budują poziomy i światy oraz czym różni się od zwykłej losowości.


Generacja proceduralna to technika, w której gra tworzy swoją treść — poziomy, teren, łup, wrogów, całe planety — za pomocą algorytmów i reguł w czasie działania, zamiast by projektant stawiał każdy element ręcznie. Nakarm system liczbą startową (**ziarnem**), a złoży on świeży, grywalny wynik, który mieści się w granicach wyznaczonych przez twórców.

To dlatego roguelike może podać ci inny loch na setnym biegu, a Minecraft może wygenerować świat o większej powierzchni niż Ziemia. Poniżej wyjaśniamy, co ten termin naprawdę znaczy, jak algorytmy działają w prostych słowach i gdzie całe podejście się rozpada.

## Czym jest generacja proceduralna?

Słowo, po które większość ludzi sięga, to "losowa", i właśnie to nieporozumienie warto najpierw wyprostować. Generacja proceduralna jest bliższa **wyselekcjonowanej losowości**. Projektanci budują surowe materiały — szablony pokojów, zestawy kafelków, pule przedmiotów, typy wrogów, reguły terenu — i piszą instrukcje, jak te klocki pasują do siebie. Algorytm następnie je łączy, zwykle startując od ziarna, w coś nowego, co wciąż jest posłuszne regułom.

Więc gdy gra jest opisywana jako *generowana proceduralnie*, nie oznacza to, że twórcy rzucili kostką i wypuścili to, co wypadło. Oznacza, że stworzyli system składający treść w locie, zamiast tworzyć każdy gotowy poziom bezpośrednio. Ziarno to kluczowy szczegół: to samo ziarno zawsze daje ten sam wynik, dlatego gracze mogą wymieniać się kodami ziaren, by zagrać w dokładnie ten sam świat znajomego, a twórca może odtworzyć błąd, uruchamiając ponownie układ, który go wywołał.

Rzemiosło tkwi w ograniczeniach. Słaby system rodzi papkę; silny rodzi różnorodność, która wciąż wydaje się zamierzona.

## Generacja proceduralna vs generacja losowa

Bywają używane zamiennie, ale to nie to samo, a ta różnica jest całym powodem, dla którego generacja proceduralna działa.

**Generacja losowa** wybiera wartości bez żadnych reguł. Wylosuj liczbę, postaw ścianę, ruszaj dalej. Pozostawione samo sobie takie podejście ochoczo zamknie wyjście za niezniszczalną ścianą, wrzuci cię do pokoju bez drzwi albo spiętrzy trzech elitarnych wrogów na startowym polu.

**Generacja proceduralna** owija tę losowość regułami i ograniczeniami stosowanymi do wyselekcjonowanych klocków. Wciąż może losować pokój, ale sprawdza, że istnieje ścieżka od wejścia do wyjścia, że oferowany łup pozwala wygrać i że trudność ląduje w akceptowalnym paśmie. Losowość jest silnikiem; ograniczenia są kierownicą.

Prościej: losowość to rzut monetą, generacja proceduralna to rzut monetą z projektantem stojącym nad nią i mówiącym "nie ten". Każdy dobry system proceduralny to tak naprawdę zestaw barier ochronnych wokół liczby losowej.

## Typy generacji proceduralnej

"Generacja proceduralna" to parasol. Gry stosują ją do bardzo różnych części swojej treści, a większość dużych tytułów używa kilku rodzajów naraz.

- **Poziomy i lochy.** Klasyczne zastosowanie. Roguelike'i jak Spelunky, [Dead Cells i The Binding of Isaac](/pl/blog/best-roguelike-games) zszywają nowy układ z ręcznie tworzonych pokojów przy każdym biegu, więc przestrzeń, którą uczysz się czytać, nigdy nie jest całkiem taka sama. Naturalnie łączy się to z [permadeath](/pl/blog/permadeath-in-games), bo stała mapa plus trwała śmierć byłyby po prostu testem pamięci.
- **Teren i światy.** Minecraft, No Man's Sky i Valheim generują lądy, biomy, jaskinie i planety z matematyki, zamiast je rzeźbić. To właśnie umożliwia praktycznie nieskończone światy dla małego zespołu.
- **Łup i przedmioty.** Diablo i Borderlands losują statystyki broni i sprzętu z tabel — typ bazowy, modyfikatory, rzadkość — więc dwie giwery "tego samego" modelu mogą grać zupełnie inaczej. Słynny slogan "Borderlands ma 87 biliardów giwer" to łup proceduralny w pigułce.
- **Tekstury i modele.** Funkcje szumu potrafią malować marmur, słoje drewna, chmury czy rdzę bez rysowania przez artystę każdego piksela oraz rozsiewać skały, trawę i drzewa po mapie.
- **Zadania i narracja.** Najrzadszy i najtrudniejszy rodzaj. Dwarf Fortress symuluje całe historie — wojny, migracje, urazy — podczas gdy AI Director w Left 4 Dead przekształca fale wrogów i dropy przedmiotów w locie, by utrzymać wysokie napięcie. Generacja narracji to miejsce, gdzie systemy proceduralne najczęściej pokazują szwy.

## Popularne algorytmy i techniki

Nie musisz ich pisać, by zrozumieć, co robi gra. Oto konie robocze, w prostych słowach.

- **Funkcje szumu (Perlin, Simplex).** Zamiast surowych wartości losowych wyglądających jak śnieżenie, szum tworzy gładkie, naturalnie sprawiające wrażenie gradienty. Próbkuj go po siatce i odczytuj wartości jako wysokości, a dostaniesz faliste wzgórza, góry i doliny — to kręgosłup niemal każdego wygenerowanego krajobrazu, Minecrafta włącznie. Simplex to szybszy, mniej stronniczy wobec siatki następca Perlina.
- **Automaty komórkowe.** Zacznij od losowego rozsypu komórek "ściana" i "podłoga", potem wielokrotnie zastosuj prostą regułę sąsiedztwa (komórka staje się ścianą, jeśli dość sąsiadów to ściany). Po kilku przejściach szum osiada w organicznie wyglądające jaskinie. To ulubiony trik do naturalnych systemów jaskiń.
- **BSP i pokój-i-korytarz.** Binarny podział przestrzeni rekurencyjnie tnie prostokąt na mniejsze prostokąty, wrzuca do każdego pokój i łączy je korytarzami. To niezawodna, czytelna metoda stojąca za wieloma klasycznymi układami lochów.
- **Wave function collapse.** Nowszy faworyt. Dajesz mu małą próbkę kafelków i reguły, które kafelki mogą sąsiadować z którymi, a on wypełnia całą mapę tak, że każde lokalne ustawienie pozostaje legalne — jak rozwiązywanie sudoku z kafelków sztuki. Świetny do spójnych miasteczek, lochów i wzorów.
- **L-systemy.** Gramatyka przepisująca, która startuje od symbolu i wielokrotnie rozwija go regułami. Skieruj ją na struktury rozgałęzione, a tworzy przekonujące drzewa, rośliny, sieci rzek i błyskawice.

Większość prawdziwych gier łączy kilka z nich: szum na teren, automaty komórkowe na jaskinie w nim, L-system na lasy na wierzchu.

## Dlaczego gry jej używają

- **Regrywalność.** Jeśli poziomy i łup zmieniają się przy każdym biegu, gra pozostaje nieprzewidywalna długo po tym, jak opanujesz jej systemy. To bijące serce [roguelike'a](/pl/blog/what-is-a-roguelike) i jego lżejszego kuzyna [roguelite'a](/pl/blog/roguelike-vs-roguelite).
- **Skala.** Ręczne budowanie świata wielkości Minecrafta czy No Man's Sky jest po prostu niemożliwe. Generacja proceduralna pozwala małemu zespołowi wypuścić niemal nieskończoną ilość przestrzeni.
- **Pamięć.** Wygenerowany świat ledwo istnieje na dysku — przechowujesz ziarno i reguły, nie gotowe terabajty. No Man's Sky mieści osiemnaście trylionów planet w pobraniu normalnej wielkości, bo przechowuje przepis, a nie dania.
- **Zaskoczenie.** Nawet twórcy nie wiedzą dokładnie, co daje konkretne ziarno, więc gra wciąż potrafi zaskoczyć ludzi, którzy ją stworzyli.

## Kompromisy

Kosztem jest autorska intencja. Ręcznie budowany poziom może mieć zamierzony rytm — chwilę ciszy przed zasadzką, widok skadrowany dokładnie tak, wroga ustawionego, by dopadł cię akurat, gdy masz mało zdrowia. Wygenerowany wymienia część tego rzemiosła na różnorodność, a gdy ograniczenia są słabe, wynik wydaje się jednakowy, "bezduszny" czy niespójny, jak układanka złożona z niepasujących kawałków.

Uczciwym trybem porażki jest świat "szeroki, lecz płytki": technicznie nieskończony, emocjonalnie płaski. No Man's Sky w dniu premiery to przestroga — tryliony planet, które zaczęły się zlewać po kilkudziesięciu.

Dlatego najsilniejsze gry proceduralne to zwykle **hybrydy**. Spelunky i Dead Cells generują ogólny układ, ale składają go z pokojów, które człowiek zaprojektował i wystroił, więc każdy bieg jest świeży, a każdy pokój sprawiedliwy. Generator zajmuje się układaniem; człowiek wciąż zajmuje się rzemiosłem wewnątrz każdego kawałka. Nawet Dwarf Fortress i Caves of Qud, mniej więcej tak proceduralne, jak gry tylko bywają, opierają się na ręcznie tworzonych systemach, sztuce i regułach pod spodem — generator zwielokrotnia pracę projektantów, zamiast ją zastępować. Zmienia to też, jak [odczuwa się śmierć i restart](/pl/blog/roguelike-death-mechanic): wygenerowany świat sprawia, że zaczynanie od nowa to nowy problem, a nie powtórka poprzedniego.

W KUTO: The Lock of Time — naszej grze — siedzimy na tym hybrydowym końcu spektrum. Epoki, przez które walczysz — starożytny Egipt, epoka wikingów, rozświetlone neonami cybermiasto — to ręcznie tworzone układy, a nie w pełni wygenerowane, potem urozmaicane, by starcia z Kosą Kronosa i twoimi wybranymi mocami czasu nie toczyły się identycznie za każdym razem. To autorska przestrzeń z miejscem na różnorodność, a nie proceduralny roguelike. [Dodaj KUTO do listy życzeń na Steam](https://store.steampowered.com/app/4755510).


## FAQ
**Czym jest generacja proceduralna w grach?**
Generacja proceduralna to gdy gra buduje treść — poziomy, teren, łup, wrogów — za pomocą algorytmów i reguł w czasie działania, zamiast by projektant stawiał każdy element ręcznie. Nakarmiony liczbą startową zwaną ziarnem, system tworzy świeży, grywalny wynik, który mieści się w granicach wyznaczonych przez twórców.

**Jakie są typy generacji proceduralnej?**
Popularne typy to układy poziomów i lochów (roguelike'i jak Spelunky), teren i całe światy (Minecraft, No Man's Sky), łup i statystyki przedmiotów (Diablo, Borderlands), tekstury i modele budowane z szumu oraz zadania czy wydarzenia narracyjne (Dwarf Fortress, AI Director w Left 4 Dead). Większość gier miesza kilka z nich.

**Czy generacja proceduralna to to samo co generacja losowa?**
Nie. Generacja losowa wybiera wartości bez żadnych reguł; generacja proceduralna stosuje reguły i ograniczenia do wyselekcjonowanych klocków. Czysta losowość może zamurować wyjście albo spiętrzyć niewygrywalną walkę — system proceduralny gwarantuje, że wynik da się ukończyć i jest sprawiedliwy w ramach zamierzonej trudności.

**Jakie algorytmy stosuje się w generacji proceduralnej?**
Podstawą są funkcje szumu jak Perlin i Simplex do wysokości terenu, automaty komórkowe do organicznych jaskiń, BSP oraz metoda pokój-i-korytarz do lochów, wave function collapse do układów kafelków posłusznych lokalnym regułom oraz L-systemy do struktur rozgałęzionych jak drzewa i rzeki.

**Czym jest ziarno w generacji proceduralnej?**
Ziarno to liczba startowa podawana algorytmowi. To samo ziarno zawsze daje ten sam wynik, dlatego gracze mogą wymieniać się kodami ziaren, by ponownie zagrać w swoje światy, a twórcy mogą odtworzyć konkretny układ, by go zdebugować.

**Dlaczego roguelike'i korzystają z generacji proceduralnej?**
Gry oparte na biegach potrzebują świeżej treści przy każdej próbie. Stała mapa zamienia dziesiątki restartów w ćwiczenie z zapamiętywania, więc generacja proceduralna czyni każdy bieg nowym problemem do rozwiązania — i to utrzymuje regrywalność gatunku po setkach godzin.

**Jakie są wady generacji proceduralnej?**
Kosztem jest autorska intencja. Ręcznie budowany poziom potrafi nieść precyzyjny rytm i idealnie ustawionego wroga; wygenerowany wymienia część tego rzemiosła na różnorodność. Słabe ograniczenia rodzą treść, która wydaje się jednakowa lub niespójna, dlatego większość studiów łączy ręcznie tworzone elementy z proceduralnym składaniem.

**Czy KUTO: The Lock of Time korzysta z generacji proceduralnej?**
KUTO leży na hybrydowym końcu. Jego epoki — starożytny Egipt, epoka wikingów, rozświetlone neonami cybermiasto — to ręcznie tworzone układy, a nie w pełni wygenerowane, potem urozmaicane, by starcia z Kosą Kronosa i twoimi mocami czasu nie toczyły się identycznie za każdym razem. To autorska przestrzeń z miejscem na różnorodność, a nie proceduralny roguelike.