DnD Pasauļu Ģenerēšana
DnD jeb Dungeons & Dragons ir ('tabletop') RPG galda spēle, kas ir spēlējama, principā, ar papīra lapas un zīmuļa palīdzību. Liela sagatavošanās spēlei notiek vēl ilgi pirms tās sākuma, kad spēles vadītājs ('Dungeon Master DM') sagatavo spēles karti un izdomā spēles scenāriju, bet tās dalībnieki izveido savu personāžu. Šīs darbības notiek atbilstoši DnD spēles noteikumiem. Pati spēle notiek sarunājoties, t.i., skaļi paziņojot sava personāža darbības, uz ko DM atbild ar pasaules reakciju - dažādu spēles elementu mijiedarbību ar personāžu atbilstoši iepriekš sagatavotajam scenārijam. Nejaušības elementu spēles gaitā ievieš metamie kauliņi ar dažādu skaldņu skaitu.
Pastāv dažādu veidu DnD tipu spēles kā arī šo spēļu versijas. Pašlaik populārākās no tām ir DnD e5 (edition 5), Patfinder. Pārsvarā šī tipa spēles notiek vidusslaiku līdzīgam periodam. Taču ir arī citas spēles, kuras izmanto līdzīgus noteikumus un mehānismus, līdz ar to šādas spēles var notikt arī mūsdienās, nākotnē (piemēram uz kosmosa kuģiem).
Tātad, lai varētu spēlēt, ir jāiegulda liels sagatavošanās darbs. Mēs pētīsim iespējas šo sagatavošanās darbu automatizēt.
Pirmkārt, jānoskaidro, kas ir jau izdarīts tieši DnD jomā:
- donjon
- Redit resurss
- Kartes ģenerātors, ir pieejami pāris parametri pēc kuriem ģenerēt karti
- Kartes ģenerātors, tiek izmantoti seed, tādēļ var izveidot to pašu karti atkārtoti.
Viena no kartēm, kurā ir sava veida scenārijs automātiski uzģenerēts (piemēram, kas atrodas izstabās).
- Kartes ģenerātors, beta stadija, dažādi parametri
- Pieejami dažādi saiti, gan uz karšu ģenerēšanu, gan uz "briesmoņu" datu bāzi
Otrkārt, jānoskaidro, kas ir izdarīts pasauļu ģenerēšanas jomā spēlēm vispār:
- Joris Dormans darbi:
- Apakšnodaļa PCG grāmatā
- Designing Procedurally Generated Levels
- By David Adams: Automatic Generation of Dungeons for Computer Games
- University of Derby, By Becky Lavender: The Zelda Dungeon Generator: Adopting Generative Grammars to Create Levels for Action-Adventure Games
Ļoti labi aprakstīti dažādi karšu ģenerēšans veidi.
Jautājumi, iespējamās grūtības:
- Vai veicam 1 ģenerēšanu visai pasaulei un dungeoniem vai tomēr veicam atsevišķu generēšanu šīm lietām ?
- Vai ģenerējot karti arī automātiski pievienojam arī briesmoņus un lamatas ?
- Kvadrātu vai seštūru karti ? Vai abus (pēc izvēles) ?
- "Formu" sakritība starp ēkas stāviem (piemēram, 1. stāvs 10x10 laukums, bet otrajā 100x100, iespeājams ir šajās pasaulēs, bet nav īpaši ticami)
- Saistība ar pilsētu ģenerešanā, vajadzēs izdomāt noteikumus (piemēram, pils neatradīsies blakus bāram...). Dažādu veidu pilsētām un stiliem savi "noteikumi"
- Vai attēlojam tādus objektus kā galdus, letes, gultas... ?
- Dažādu dabas objektu attēlošana kartēs (meži, vulkāni, tundra, tuksneši, džungļi, kalni, ... -visticamāk katram savi noteikumi)
Mērķi:
- Izveidot programmu, kas ļautu uzģenerēt doto karti
- Karti var modificēt (gan manuāli, gan arī izvēloties darbības apgabalu kartē un izveidojot savu stāstu, šis kartes apgabals tiktu "pārakstīts")
- Jāvar dalīties ar savu stāstu (jāvar uzģenerēt doto karti tādu pašu ja ir nepieciešams)
- Izmantojot 1 stāstu var uzgenerēt dažādas kartes, kuras seko šī stāsta scenārijam
Ceturtkārt, jāatzīmē jebkāda interesanta lieta, ko sastapsim:
- TinyKeep spēles kartes ģenerātors
- Īpatnējs kartes ģenerātors, var mainīt tikai izmēru
Nav īpaši noderīgs priekš šī darba, bet vienkārsi interesanta lieta.
- DunGen karšu ģenerātors prieks Unity engine
- Graph Grammar and Voronoi based Level Generation for a Roguelike - Work in Progress.
Rakstam ir pievienots links uz video, kur tiek demonstrēts darbības princips (vismaz daļa).