Čo potrebujete na vytvorenie hry na počítači. Výber programu na vytvorenie hry

Každým rokom sa zvyšuje počet ľudí, ktorí hrajú počítačové alebo mobilné hry. Ľudia ich nazývajú hráčmi, ktorí si nevedia predstaviť svoj život bez hračiek. Mnohí ich považujú za chorých ľudí, ktorých treba liečiť. Zároveň však existujú ľudia, ktorí sa naučili zarábať na hráčoch tvorbou nových hier. V tomto prípade mnohí hráči premýšľajú o vytvorení hry sami.


Dnes si vytváranie hier vyžaduje menej času a úsilia ako pred 5-10 rokmi. Na tento účel boli vyvinuté rôzne programy na modelovanie trojrozmernej grafiky a motory na vytváranie hier. Len treba byť trpezlivý.

Ak si chcete vytvoriť vlastnú hru, musíte mať nejaké herné skúsenosti. Ak používateľ hrá veľmi zriedkavo, bude dosť ťažké vyrobiť kvalitný produkt. Ak chcete vytvoriť správnu hru, musíte dodržiavať hernú logiku a byť si vedomí všetkých aspektov herného sveta.

Aby ste vytvorili dostatočne dobrú hru, musíte si predstaviť hru a prísť s novými nápadmi. Ak vytvoríte jedinečnú hru, bude ľahšie nájsť hráčov. Je potrebné pripomenúť, že na vytvorenie hry musíte mať v tejto oblasti určité znalosti. Musíte sa naučiť programovacie jazyky, naučiť sa používať trojrozmerné editory. Na tento účel môžete na internete nájsť množstvo rôznych článkov a programov.

Vytvorenie hry

Najprv musíte vybrať žáner, v ktorom bude hra vytvorená. Hlavná myšlienka je dôležitou súčasťou každej hry. Najbežnejšie hry sú založené na žánri strieľačiek z pohľadu prvej osoby. Veľmi obľúbené sú aj preteky. Ak chcete zistiť obľúbenosť konkrétnej hry, stačí spočítať ich počet v určitej kategórii.

Akčné hry a strieľačka je strieľačka, v ktorej musíte zabiť všetkých nepriateľov. Veľmi obľúbené sú aj stratégie a RTS. Okrem toho stále existuje obrovské množstvo žánrov, ktoré majú tiež právo na život.

Po výbere žánru musíte začať vytvárať scenár. Toto je veľmi dôležitá súčasť tvorby hry. Scenár by mal mať zápletku, hlavnú postavu, nepriateľov či súperov, koniec. Oplatí sa popracovať aj na rozhraní a grafike hry.

Ak začiatočník začne vytvárať hru, bude to pre neho dosť komplikovaný proces, pretože si to vyžaduje motor, ktorý začiatočník nedokáže vytvoriť. Ak to chcete urobiť, mali by ste použiť špeciálneho herného dizajnéra. Môžete sa pokúsiť naučiť sa programovacie jazyky a napísať motor sami alebo použiť hotový.

Začiatočníkom sa odporúča používať konštruktory. Ide o špeciálny program, ktorý má štruktúru budúcej hry. Prvky a objekty musia byť umiestnené a musia byť zahrnuté skripty. Takéto konštruktory neustále rozširujú počet svojich funkcií, pričom cena programu rastie. Ak nechcete míňať peniaze na herného dizajnéra, môžete použiť bezplatné nástroje.

Ak používate herné motory, musíte mať určité znalosti v programovaní. Keďže engine je súbor funkcií a objektov, vývojár nemusí vytvárať žiadne akcie. Všetko, čo potrebujete, je už v motore. Na vytvorenie grafiky a jej prepojenie so skriptami budete musieť použiť špeciálne editory.

Vytvorenie vlastnej hry je veľmi zložitý a zdĺhavý proces. Začínajúcim používateľom sa to neodporúča, ale ak sú peniaze navyše, môžete si hru objednať v špecializovaných štúdiách. Programátori zároveň zohľadnia všetky želania.

Táto príručka podrobne popisuje, ako vytvoriť hru: vypracovať nápad, vybrať si súpravu nástrojov a zorganizovať proces vývoja tak, aby plynul ľahko a viedol k výsledku.

Čaute ľudia. V tomto článku k vám budem mimoriadne úprimný a poviem vám, ako vytvoriť hru sami. Vopred upozorňujem, že tvorba videohry je náročná a časovo veľmi náročná. A ak vaším cieľom nie je ďalší klon hada, Tetris alebo akákoľvek iná hra z návodu krok za krokom, budete musieť vynaložiť veľké úsilie.

Príliš veľa ľudí, ktorí sa pokúšali urobiť svoju prvú hru, sa bezhlavo vrhlo do enginu a opustili túto myšlienku, pretože je to „príliš ťažké“, „som unavený“, „nevidím pokrok“. V skutočnosti je to len kopa hlúpych výhovoriek, ktoré sa objavujú kvôli „podhľadu“, teda túžbe okamžite robiť hry veľkého kalibru, ako je The Witcher alebo Final Fantasy.

Ide o projekty, na ktorých pracujú celé tímy špecialistov, tímy stoviek ľudí, už niekoľko rokov, takže aj keby ste veľmi chceli a strávili celý život, nedokážete vyrobiť rovnaký rozsiahly produkt.

Vaša prvá hra je tréning, draft, ale nie majstrovské dielo. Dokonca aj vytvorenie jednej úrovne najjednoduchšej pixelovej hry môže byť spočiatku zdrvujúce a výber niečoho obrovského, jednoducho nebudete mať predstavu, kde začať, takže strávite veľa času na detailoch, na ktorých absolútne nezáleží.

Hlavnou úlohou je vytvoriť produkt, ktorý môžete hrať sami. Je mi jedno, či je to dvojfarebná lineárna plošinovka, ktorej dokončenie trvá 7 minút. Dokázali ste to, nestratili ste odvahu, nerozhodli ste sa so všetkým skončiť, čo vás už robí lepšími, nie ste jedným z tých, ktorí si zúfali a vzdali sa!

Nechajte to hrať svoju mamu, brata, priateľov, koho chcete. Budú kritizovať, pretože sú zvyknutí vnímať hry ako masívne projekty. Ignorujte, pretože po prvé: svoju prvú hru ste si sami vytvorili, po druhé, nabudúce ju zrýchlite a vylepšíte a po tretie, čoskoro dosiahnete úroveň zručností, ktorú budú všetci žiadať, aby ste ich nechali hrať.

Vaša hra by mala odrážať vaše schopnosti. Všetko je potrebné robiť dôsledne: objavil sa nápad - skontrolujete možnosť jeho realizácie - ak nie je možnosť, skúste sa naučiť - po získaní zručnosti implementujete nápad. A takto by sa to malo robiť zakaždým. Postupom času sa mrknite na Asset Store, možno sa tam už nachádza fragment, nad ktorým sa niekoľko dní hrbíte.

Nakoniec - niečo ako slová na rozlúčku: s najväčšou pravdepodobnosťou sa snažíte rozvíjať súbežne so štúdiom alebo prácou. Niekedy to bude trvať týždne, kým si nájdete čas, ale ak chcete byť v tejto oblasti naozaj úspešní, nájdite si tie hodiny a zvýšte svoje schopnosti. Pamätajte, že každý sa môže vzdať, ale nie každý môže dosiahnuť koniec.

Internet je dnes plný rôznych návodov, školiacich videí a bezplatného softvéru. To všetko umožňuje každému, kto má veľa voľného času a nápad, vytvoriť si vlastnú počítačovú hru. Je však tiež potrebné jasne pochopiť samotný proces a jeho postupnosť.

Akú hru urobiť?

S najväčšou pravdepodobnosťou osoba, ktorá sa zaujíma o "Ako urobiť hru sami?" už máte nápad. Najčastejšie ide o nejakú modifikáciu jednej z hier, ktoré hral. Možno vašej obľúbenej hre niečo chýba a rozhodnete sa to pridať (premyslite si, či má vaša hra možnosti úpravy: vstavaný editor alebo nástroj MOD).

Napríklad žáner MOBA hier vznikol v editore WarCraft 3 (teraz populárna Dota sa objavila práve vďaka širokým možnostiam editora).

V každom prípade bude východiskom myšlienka. To je miesto, kde by ste mali začať.

Nápad

Ale pre každý prípad, ak sa pýtate „Akú hru urobiť?“ - článok vám pomôže s hľadaním nápadov.

Herná zložka vášho herného nápadu určí žáner hry a platformu.

Žáner a platforma budúcej hry

Pri výbere žánru myslite na to, že by ste mali začať niečím krátkym a jednoduchým. Prvá palacinka je najčastejšie hrudkovitá, ale ak dokážete upiecť túto palacinku, posilnia sa vám rozvojové svaly a nabudúce budete môcť urobiť niečo viac.

Potom sa rozhodnite pre platformu. To je nesmierne dôležité, pretože hrateľnosť závisí od platformy. Napríklad robiť dynamickú strieľačku, kde presnosť výstrelu závisí od reakcie a zaostrovať na mobilné zariadenia s dotykovým displejom, nie je dobrý nápad.

koncepcia

Keď budete mať nejaké myšlienky, sadnite si a popíšte koncept hry. Najprv to môžu byť len tézy, ktoré sa potom menia na logicky vyslovené myšlienky. Ak to nebolo možné, prehodnoťte svoj nápad a zbavte sa rozporov.

Určiť, čo by malo potenciálnych hráčov prilákať, teda jej samotnú filozofiu. Ponúknite napríklad, že sa stanete jediným vládcom malej ostrovnej krajiny, alebo budete ovládať bojové lietadlo priamo z kokpitu a včas prepínať potrebné prepínače.

Teraz k funkciám vašej hry. S najväčšou pravdepodobnosťou sa vo vašom žánri už vyskúšalo veľa experimentátorov, ale stále musíte prísť s niečím vlastným, inak o projekt nebude záujem. Tu je malý príklad:

Príklad

koncepcia: simulátor malého obchodu.
Zvláštnosť: Vy osobne rokujete s dodávateľmi, priťahujete nových zákazníkov a zúfalo sa snažíte prežiť v krutej realite.
Vysvetlite, aké faktory ovplyvňujú úspech, a porozprávajte sa aj o kľúčových vlastnostiach hernej mechaniky.
Nepokúšajte sa pridávať položky, ktoré nechcete implementovať. Vaša hra by mala byť niečo, za čo by ste chceli zaplatiť.
Posledným krokom je vložiť všetky koncepty do priečinka a potom do zásuvky. Po niekoľkých týždňoch sa k nim vráťte, pretože môžete stratiť túžbu aj splynutie a je lepšie prejsť touto fázou pred začiatkom projektu, ako nechať všetko v polovičnom stave.

Plán rozvoja


Jasný plán vývoja je pevným základom pre váš projekt a pevným základom pre váš rast ako vývojára hier

Tento plán bude kostrou vašej hry, preto by ste tu mali spomenúť každý detail, každý mikromoment, všetko, čo považujete za dôležité. Tí, ktorí robia hry sami, sa zaobídu bez plánov (za predpokladu, že majú veľa skúseností), ale ak pod vami nie je veľa tímu alebo skúseností, potom by sa malo všetko zaznamenávať.

Jasný rozvrh, kedy začať programovať alebo kresliť úplne prvé umenie, môžete vlastniť iba vy, preto sa s vami podelím o všeobecné body, ktorých porušenie sa môže zastaviť pred niekoľkými týždňami alebo dokonca vás prinútiť opustiť myšlienku ​vytvorenie vašej prvej hry.

  1. Váš plán by mal byť navrhnutý na mesiac, nie viac. Verte preto svojej intuícii a začnite jednoducho. Je lepšie skončiť skôr, ako zmeškať termín.
  2. Hneď ako pochopíte, že vás tento produkt nemôže nič naučiť, odložte ho na poličku a zabudnite. Svoje schopnosti si môžete otestovať spustením podobného projektu od začiatku.
  3. Dokonca aj tí najlepší vývojári sa snažia stať sa ešte chladnejšími, takže každá nová hra by mala začínať myšlienkou „Urobím to lepšie ako minule“.
  4. Neignorujte plánovanie. Pri vývoji akéhokoľvek projektu existujú malé „vyššie moci“ a je takmer nemožné ich predvídať, takže je jednoduchšie jednoducho zohľadniť čas strávený ich odstránením v harmonograme. Naplánované na 8 hodín? Neváhajte ich premeniť na 12.
  5. Dizajn je jedna z posledných vecí, na ktorú by mal začínajúci vývojár hier myslieť. Vašou úlohou je "rozšíriť svoje zručnosti", takže strávte víkend implementáciou niekoľkých nových mechaník (doteraz neznámych) namiesto maľovania.
  6. Rozdeľte svoj plán na niekoľko častí. Dosiahnutie týchto míľnikov je dobrý spôsob, ako zvýšiť motiváciu. Ak nemôžete splniť svoje týždenné požiadavky, zjednodušte si celkový plán.
  7. Neklaďte si príliš abstraktné úlohy. Namiesto „Vylaďte postavu“ napíšte „zaveďte novú mechaniku streľby“ alebo „zmeňte vzhľad počas dopadu“ – jasné ciele sa dosahujú oveľa ľahšie.
  8. Posielajte si listy, nie e-maily každý pondelok. Mali by obsahovať všetky akcie vykonané za posledný týždeň. Porovnaním všetkých e-mailov za mesiac môžete vizuálne vidieť pokrok.
  9. Strávte hraním svojho produktu aspoň hodinu týždenne. V konečnom dôsledku nikto nemôže urobiť VAŠE hry lepšími ako vy.
  10. Po dvoch týždňoch bez práce na projekte budete zmätení a stratíte niť, čo vás prinúti začať odznova. Práve v tomto bode sa väčšina ľudí vzdáva a vzdáva sa myšlienky vytvorenia vlastnej hry.
  11. Strácať čas zvukom a atmosférou vo vašej úplne prvej hre je neuveriteľne zbytočné. Hlavná vec: rozvíjať hru, pretože existujú majstrovské diela pozostávajúce z obyčajných pohyblivých pixelov.
  12. Ak niečo robíte viac ako hodinu a stále to nejde, požiadajte o pomoc. Prečo týždeň stagnovať, pretože ste sa hanbili založiť tému na fóre?
  13. Nechajte ostatných vyskúšať si vašu hru. Áno, kritika sa okamžite naleje, ale nemali by ste jej venovať pozornosť. Dokonca aj projekty popredných štúdií sú často opradené blatom, ale to im nebráni pokračovať vo vytváraní majstrovských diel, však?
  14. Nemáte neobmedzené zdroje – preto si musíte stanoviť realistické, dosiahnuteľné ciele.
  15. Keď vyleštíte svoju prvú hru, okamžite príďte s niekoľkými novými nápadmi a pustite sa do nového projektu. Nezabudnite použiť to, čo ste sa predtým naučili.
  16. Odhlásiť sa .

Prejdime k vytvoreniu nadpisu. Napodiv, dej je tu takmer úplne ignorovaný. Hlavná vec je spísať všetky aspekty herných mechanizmov a vysvetliť, ako fungujú. V podstate je to obsah, ktorý je základom manuálu k hre.

Teraz každú tézu obsahu dopĺňame podrobným popisom každej maličkosti a robíme to čo najjasnejšie, inak môžu vzniknúť problémy s implementáciou.

Nakoniec musíte svoj plán ukázať všetkým, ktorých budete používať pri vývoji. Je možné, že niektoré nápady nebudú zrealizované, alebo vám budú ponúknuté pohodlnejšie alternatívy. Po získaní jasnej predstavy o svojej časti práce skúsený odborník okamžite urobí niekoľko komentárov.

Výber vývojových nástrojov



Engine je srdcom vašej hry, vyberajte zodpovedne, pozrite si článok

Pre začiatočníka bude jednoduchšie vziať si hotový motor, ako vyvinúť svoj vlastný.
Každý motor má svoje vlastné charakteristiky. Niektorí vás prinútia naučiť sa programovať a niektorí ani nepotrebujú rozlíšiť procedúru od funkcie, majú vizuálne programovacie nástroje.

Ak uvedieme extrémne širokú klasifikáciu, potom možno motory rozdeliť do dvoch typov: pre dvojrozmerné projekty (GameMaker: Studio, RPG Maker XV) a pre trojrozmerné hry (Unity, Unreal Development Kit a Source)

Pozrite si niekoľko oficiálnych videonávodov a skúste si niečo do motora vyrobiť sami. Ak sa vám táto úloha zdala zdĺhavá, skúste spolupracovať s programátorom, niektorí chalani sa možno inšpirujú vaším nápadom a pomôžu vám ho doladiť.

Prototyp

Ďalšou fázou je testovacia verzia. Zvuk a grafika tu nehrá rolu, hlavné je, že všetky funkcie fungujú presne tak, ako ste si predstavovali. Mimochodom, buďte trpezliví, pretože budete musieť urobiť zmeny, kým si hru nezačnete užívať.

Pripravte sa aj na potrebu vytvorenia hotového prototypu od začiatku. Okamžite nakalibrujete ovládanie: malo by byť čo najpohodlnejšie a najintuitívnejšie. V opačnom prípade bude sklamaný hráč hľadať tlačidlo odchodu.

Táto fáza je leštením vášho herného dizajnu. Fáza hľadania a skúšania rôznych možností.

Grafika a zvuk

Okamžite sa rozhodnite, aké spektrum farieb potrebujete. Ak ide o jednoduchú 2D plošinovku plnú pixelov, potom nemá zmysel najať si orchester a celý tím grafikov – strata času a peňazí. Zároveň by ste nemali šetriť na zdrojoch, ak sú skutočne potrebné na plné vyjadrenie vašej myšlienky. Nebojte sa kombinovať nápady iných ľudí. Jediným zákazom je porušovanie autorských práv.

Tu musíte načrtnúť návrh umenia. Mimochodom, nie je potrebné vedieť kresliť, pretože väčšina nezávislých projektov využíva pixel art, kvôli jeho jednoduchosti a popularite. Ak sa stále rozhodnete pre trojrozmerný projekt, budete musieť najať profesionálov na vytvorenie zložitých modelov postáv.

Nakoniec vytvorte nejaké fragmenty herného vesmíru. Toto sú koncepty toho, ako vyzerá úroveň alebo ako postavy interagujú mimo hry. Je čas uviesť svoje nápady do života!

Blender je jednoduchý a bezplatný editor na vytváranie 3D modelov.
Photoshop je nevyhnutný na spracovanie dvojrozmerných obrázkov a tiež robí skvelú prácu s textúrami.
net vám umožňuje rýchlo vytvárať pixel art.
Zvuky spolu s grafikou vytvárajú vo vašej hre atmosféru. K vašim službám je obrovská sada hotových zvukových knižníc pre bezplatné programy a chýbajúce melódie si môžete nahrať doma, hlavnou vecou je získať mikrofón.

Spresnenie

Hrajte to, čo ste vytvorili, a čo najčastejšie. Takže môžete vidieť všetku drsnosť. Naučte sa jedno pravidlo – prvok buď finalizujte do ideálneho stavu, alebo ho odstráňte. Ak sa vám napríklad zdá hranie úrovne príliš monotónne, skúste to urobiť pestrejším.
Neustále sa odvolávajte na filozofiu hry, aby ste sa vyhli momentu, kedy sa projekt zmení na hromadu nesúrodých úrovní a postáv.
Vyleštite grafiku a zvuk – proces je časovo veľmi náročný, ale závisí od toho atmosféra.

Testovacia fáza

Keď budete mať predbežnú verziu hry (nezamieňajte si ju s prototypom), prejdite na hľadanie chýb a chýb. Bude lepšie, ak ich nájdete vy, a nie potenciálni hráči hneď prvý deň po vydaní.

Zamerajte sa na veci, ktoré sa vymykajú vášmu hernému štýlu. Napríklad prejdite na časti mapy, ktoré nie sú zahrnuté počas hlavnej hry. Testovanie niekedy zaberie viac času ako samotný vývoj a jeho rýchlosť závisí od počtu a profesionality testerov.

Ak existuje neuveriteľné množstvo chýb, najskôr opravte tie najambicióznejšie. Začnite ich preto hľadať čo najskôr – získate tak viac času na vykonanie zmien. Okrem toho ponúknite hru s priateľmi a známymi. Pohľad zvonku vám umožní všimnúť si mnohé nuansy, ktoré by ste sami nikdy neuhádli. Navyše je to úplne zadarmo.

Uvoľnite

Zorganizujte promo kampaň: vzbudzujte záujem na sociálnych sieťach, objednávajte recenzie pre herných blogerov a nezabudnite na webovú stránku s fórom, pretože fanúšikovia sa budú musieť niekde zhromaždiť!
Vyberte distribučnú platformu. Je nepravdepodobné, že budete chcieť okamžite investovať do hostingu alebo dedikovaných serverov, takže venujte pozornosť populárnym stránkam ako Steam, GOG, Humble, Play Market a podobne. Pamätajte, že majitelia účtujú určité percento nákladov, takže tento problém si vyžaduje podrobnú štúdiu.
Nezabudnite na podporu hry aj po vydaní. Pokračujte v odstraňovaní chýb, vydávaní ďalšieho obsahu alebo skočte rovno do pokračovania!

V článku je všetko uvedené veľmi téza, ale zároveň je uvedená všeobecná predstava o úplnom cykle vydania hry. Nemali by ste okamžite počítať so zárobkami v miliónoch dolárov, pretože hry sú predovšetkým kreativita.

Mnohí vám možno neveria. Čo tam je: určite sa nájde pár večerov, keď sa budete chcieť všetkého vzdať, ale nemali by ste sa vzdávať. Pamätajte: naozaj dobrý produkt si vyžaduje veľa času, peňazí a vašich nervov.

P.S.

Ak máte nejaké otázky alebo potrebujete pomoc - napíšte do sekcie fórum, dostávam upozornenia - vždy odpoviem a pomôžem akýmkoľvek spôsobom.

Samozrejme, moderné veľké herné projekty ako WoW či StarCraft sú výsledkom dlhoročnej práce skúsených programátorov, ktoré si vyžadujú aj nemalé finančné investície. Aby ste sa pustili do takéhoto projektu, musíte mať aspoň diplom, nejaké skúsenosti a organizačné nadanie. Zložitosť projektu však nie je vždy meradlom jeho úspechu a nezaručuje záujem hráčov. A každý si môže vyskúšať vytváranie hier, aj keď menej technicky zložitých, ale schopných vzbudiť záujem používateľov a prípadne veľkých spoločností vyrábajúcich hry. Na to nie je ani potrebné mať znalosti programovacích jazykov.

Po prvé, väčšina moderných hier je vybavená nástrojmi, ktoré vám umožňujú zmeniť herný svet: kresliť nové a labyrinty, transformovať vzhľad postáv a herných predmetov, dokonca navrhovať nové misie a úlohy. To umožňuje, na základe rovnakej StarCraft alebo 3D strieľačky, počítačovú hru vlastného dizajnu, v ktorej bude pôvodná hra mimoriadne náročná. Existujú herné motory špeciálne navrhnuté na vytváranie hier.

3D Game Maker je jedným z najpopulárnejších motorov, ktorý vám umožňuje vytvoriť si vlastnú 3D hru. Vďaka mimoriadnej jednoduchosti rozhrania je možné pomocou neho vytvoriť plnohodnotnú 3D hru len za 10 minút. Vyberieme si žáner vytváranej hry, určíme počet požadovaných úrovní (systém umožňuje navrhnúť až 20 rôznych úrovní), vyberieme hlavnú postavu spomedzi pripravených modelov. Hra už môže byť spustená a testovaná, aj keď práce na nej, samozrejme, ešte len začali. Hra je predsa len ochudobnená o to najdôležitejšie, čo udrží pozornosť a záujem užívateľa – o zápletku. Preto je potrebné vyberať aj oponentov, premýšľať o ďalších potrebných detailoch. Náklady na vývoj tejto hry sú 35 dolárov – pre tvorcov hier celkom zvládnuteľná suma.

3D Game Studio je najmocnejší nástroj na vytváranie 3D aj 2D hier a programovanie ako také prakticky nie je potrebné. Súbor najrôznejších šablónových situácií, príkladov a efektov dáva hernému dizajnérovi pomerne širokú paletu nástrojov na realizáciu svojich predstáv. Prírodné efekty, zrkadlové plochy, tiene, priehľadné plochy – všetky tieto atribúty možno naplno využiť pri vývoji herných interiérov. Vývojárovi sú poskytnuté aj hotové prvky herného rozhrania, ktoré používateľovi umožňujú komunikovať s hrou štýlovým a pohodlným spôsobom. Profesionálna verzia tohto motora bude stáť 900 dolárov, no verzia pre začiatočníkov je oveľa lacnejšia – iba 70 dolárov.

Ak vás 3D svety nelákajú, venujte pozornosť aplikácii Game Maker – tá vám dáva neobmedzený priestor pre fantáziu a umožňuje vám vytvoriť počítačovú hru v 2D formáte. Vyberáme predmety, premýšľame nad ich interakciou. Obrázky je možné kresliť v akomkoľvek grafickom editore a importovať do systému. Hra môže byť vybavená zvukovými efektmi a signálmi. Rozhranie je mimoriadne jednoduché a logické, ideálne pre začiatočníkov.

Program je určený na vytváranie dvojrozmerných hier bez použitia programovacích jazykov. Namiesto riadkov kódu sú nahradené hotové akcie herných postáv. Používateľovi stačí vytvoriť herné objekty, dodať im dvojrozmerné škriatky alebo animácie, vytvoriť pravidlá interakcie medzi objektmi, usporiadať objekty na úrovniach. Grafiku a animácie môžete kresliť priamo v Game Maker bez použitia programov tretích strán.

V tomto programe sú hry zhora nadol a plošinovky s bočným pohľadom vynikajúce.

„Game Maker“ zaujme aj pokročilých programátorov, možnosť pridania vlastného programového kódu je dostupná aj tu.

Bezplatná verzia programu v porovnaní s platenou verziou Game Maker Pro nijako neobmedzuje bežných používateľov. Platená verzia umožňuje prístup ku komplexným softvérovým modulom, ktoré sú zaujímavé len pre skutočných profesionálnych programátorov.


Veľmi jednoduchý dizajnér 2D hier. Nevyžaduje sa znalosť programovacích jazykov.

Na rozdiel od Game Maker dokáže Construct 2 vytvárať hry pre iOS, Android, Facebook, Chrome Web Store, Windows Desktop, Windows 8 Apps, Web (HTML5), Kongregate a mnoho ďalších platforiem.

Jedná sa o program vyššej kvality, ale aj viac chtivý peňazí. Program je bezplatný, kým nebudete chcieť svoju hru predať. V tomto prípade si budete musieť kúpiť licencovanú verziu. Na webovej stránke vývojárov je tiež špeciálny obchod, kde si môžete kúpiť stavebné prostriedky pre svoju hru: zvukové sady, hudbu, podrobné pokyny.

Odporúčame návod "TDS od A po Z" (vytvorenie strieľačky zhora nadol).


Programy na vytváranie 3D hier (stránka)

"3D Rad" je najlacnejšia možnosť medzi 3D hernými motormi. Program je možné používať vo všeobecnosti zadarmo a zaplatením 5 USD získate najnovšie aktualizácie v deň ich vydania (v bezplatnej verzii sa aktualizácie objavia až po troch mesiacoch). Najčastejšie sa tento motor používa na vytváranie závodných hier.

Program má jednoduché a intuitívne rozhranie, ktoré nie je zaťažené maličkosťami.

„3D Rad“ podporuje inštaláciu samostatných zásuvných modulov, má predinštalované modely AI, tieňové mapy a textúry. Je možné vytvárať online hry.


NeoAxis Game Engine SDK

Vynikajúci herný engine s jednoduchým rozhraním a kvalitnou grafikou. Navrhnuté na vytváranie hier takmer akéhokoľvek žánru.

Založené na motore Ogre3D. Programovacím jazykom je C# a C++ a platforma .NET, no dá sa zaobísť aj bez programovania vďaka špeciálnym knižniciam hotových akcií. Pre motor existujú rôzne doplnky a rozšírenia vyvinuté používateľmi tretích strán. Je možné exportovať pre 3dsMax a Maya, Autodesk Softimage a Blender. Podporované sú tiene, osvetlenie a tiene PSSM (Parallel-Split Shadow Map).

NeoAxis Engine je distribuovaný na základe 4 typov licencií: Nekomerčné - zadarmo pre nekomerčné projekty; Indie licencia - 95/295 dolárov (jednotlivec / tím); Komerčné - 395/995 USD (jednotlivec/tím); Zdrojová licencia - od 9 800 dolárov.

Hlavnou výhodou tohto herného enginu je maximálne pohodlie a jednoduchosť. Motor bol navyše vyvinutý domácimi programátormi, vďaka čomu má štandardne ruský jazyk. Keď si zakúpite licencovanú verziu, získate kvalitnú technickú podporu vo svojom rodnom jazyku.


Komplexný nástroj, ktorý obsahuje všetko, čo by ste mohli potrebovať na vytvorenie hry. Balík Unity 3D obsahuje grafický engine, ktorý plne využíva možnosti DirectX a OpenGL, vstavaný editor 3D modelov, samostatné programy na vytváranie a spracovanie shaderov, tieňov, krajiny, fyziky a zvukov, ako aj bohaté knižnice skriptov. S Unity 3D môžete úplne zabudnúť na programy tretích strán, prípadne obmedziť ich používanie na minimum.

"Unity 3D" je vhodný na vytváranie hier akéhokoľvek žánru. Podporované platformy sú bežné počítače (Windows XP/Vista/7, OSX), mobilné zariadenia (Android, iOS, Blackberry), herné konzoly (Wii, Playstation 3, Xbox), internetové prehliadače (Flash, Web Player).

Existuje špeciálny systém spoločného vývoja - Asset Server, ktorý vám umožňuje vyvíjať hru ako súčasť celého tímu priamo cez internet.

Jediným negatívom je, že na používanie „Unity 3D“ potrebujete vedieť počítačové programovanie aspoň na priemernej úrovni. Napriek bohatej knižnici hotových praktických softvérových riešení a výkonnému skriptovaciemu jadru s okamžitou kompiláciou budete musieť časť kódu napísať sami v JavaScripte alebo C#.


Unreal Development Kit (UDK)

Jeden z najpopulárnejších herných enginov v profesionálnom prostredí herných vývojárov. Unreal Engine bol použitý na vytváranie hier, ako je séria Unreal Tournament, séria Mass Effect, XCOM, Borderlands 2, DmC: Devil May Cry a desiatky a stovky menších hier.

„UDK“ podporuje nasledujúce platformy: PC, Xbox 360, PlayStation 3, Wii, Android.

Tento engine bol pôvodne navrhnutý na vytváranie 3D strieľačiek, ale existujú aj príležitosti na vytváranie hier súvisiacich žánrov: slashers, adventúry, MMO hry.

Herný engine je výborný pri vytváraní animácií tváre, komplexnej architektúry budov, spracovania zložitých fyzických objektov. Ako súčasť "UDK" má všetky potrebné nástroje na vytváranie animácií, textúr, zvukov, úrovní, modelov, softvérových skriptov. K dispozícii je vstavaná knižnica obsahujúca viac ako 1000 štruktúr, ďalšie 3D modely, štandardné textúry a zvuky. Je tu možnosť programovania v špeciálnom jazyku "Unreal Script" (vytvorenom na báze C++).

„UDK“ môžete používať zadarmo, kým sa nerozhodnete oficiálne zverejniť svoju hru vytvorenú na tomto engine. V tomto prípade budete musieť získať drahú licenciu.


CryENGINE 3 Free SDK

„CryENGINE 3“ je vrcholom moderných herných enginov, ktoré prinášajú fotorealistickú grafiku s podporou DirectX 11 a shaderov tretej generácie. Tretia verzia motora bola vytvorená v roku 2009. Na tomto engine vznikli série hier Far Cry a Crysis, online hra Aion, ale aj desiatky menej známych počítačových hier.

Crytek sa rozhodol distribuovať tento už populárny herný engine zadarmo. Bezplatnosť však platí presne do momentu, kedy chcete oficiálne vydať hru vytvorenú na tomto engine. Licencovaná verzia je drahšia ako všetky podobné programy, ale stojí za to.

Na "CryENGINE 3" môžete vytvárať hry pre platformy: PC, PlayStation 3 a Xbox 360.

Textúry môžete importovať z grafických programov „3ds max“, „Maya“ a tiež z predchádzajúcich verzií enginu.

Motor CryENGINE 3 sa ukázal byť veľmi populárny, má celú rusky hovoriacu komunitu, vďaka ktorej môžete ľahko nájsť všetky druhy školiacich materiálov, ako aj odpovede na konkrétne otázky.


Ako vyvinúť RPG hru za týždeň od nuly a bez rozpočtu. Časť I

RPG za týždeň? Od nuly? Je to vôbec možné?
Išiel som do rizika a urobil som to.

Internet je plný informačných zdrojov dostupných pre malých, nezávislých (indi) vývojárov hier. Na jednom takom verejnom fóre som počas hádky mal tú nerozumnosť vyhlásiť, že keby som dostal týždeň času, počítač s čerstvou inštaláciou Windowsu a dobré internetové pripojenie, mohol by som vytvoriť slušnú hru bez toho, aby som utrácal peniaze. cent na to. Nie, určite nebude môcť konkurovať Halo 2 alebo niečomu rovnakému kalibru (ak by som dokázal urobiť takúto hru za týždeň, už dávno dám v práci výpoveď), ale bude to dosť zaujímavé a hrateľné.

Tom Bampton, autor mesačníka Game of the Day Game Reviews (www.gameinaday.com), povedal: "Do toho!" Potom pridal ďalšiu podmienku - musím to urobiť bez použitia existujúcich herných enginov. Mám povolené používať iba základné knižnice/rozhrania API.

Najprv som od tejto myšlienky upustil. Nemal som príliš veľa času na to, aby som si v práci dal týždeň pauzu od vývoja aktuálneho herného projektu. Ale potom som si pomyslel: do čerta, veď čo je to týždeň? V typickej spoločnosti, akou je EA, je pracovný týždeň 40 hodín. Prečo teda nespraviť hru nie za kalendárny týždeň, ale za 40 čistých hodín? Už je to reálnejšie - ale nechcel som vytvárať ďalší Tetris alebo Arkanoid. A čo hra na hranie rolí – jeden z najťažších herných žánrov? Je to možné?

Vedel som, že to bude nesmierne ťažké. Ale výzvu som prijal.

Okrem toho som si podrobne rozpísal, čo a ako robím, opísal vývojový progres. Myslel som si, že by to mohlo byť zaujímavé pre vývojárov hier – alebo aspoň získať zábavné záznamy o tom, ako som spadol na hubu do blata, ak zrazu zlyhám. Jediné, na čo som prišiel, bol dlhý, nesúrodý záznam mojej hodinovej aktivity. Snažil som sa to zmeniť tak, aby čítanie nespôsobovalo nudu. Ako sa to stalo, posúďte sami.

Takže takto som vytvoril hru za jeden týždeň od nuly a bez rozpočtu. Ak ste príliš leniví na čítanie a chcete rýchlo preskočiť na koniec príbehu, aby ste videli, ako konečný produkt vyzerá a uvidíte všetky jeho chyby, môžete si stiahnuť verziu hry pre Windows tu: http://www. .rampantgames.com/hackenslash.html

PLÁNOVANIE
Cieľ
Vytvorte si oldschoolové RPG v štýle starých hier zo začiatku 80. rokov s pohľadom zhora nadol, ako napríklad The Temple of Apshai, Ultima III a Telengard. Hráč sa bude pohybovať miestnosťami v typickom dungeone, bojovať s rôznymi príšerami s "mečom a mágiou". Postupne si bude vylepšovať svoje schopnosti získavaním skúseností, levelovaním, získavaním magického vybavenia.

Hra však bude pozostávať z viac než len samotného boja. Hráč bude mať tiež možnosť preplížiť sa popri príšerách alebo s nimi vyjednávať. K dispozícii budú zamknuté dvere a truhlice a jedinečné funkcie dungeonu, ktoré majú neočakávané účinky. Hra nebude mať dlhé popisy ani dialógy – väčšinou pôjde o typický hack & slash. Pôjdete po ceste, kým nebudete dostatočne silní na to, aby ste sa postavili poslednému šéfovi, dokončili úlohu a bezpečne sa vrátili domov (do svojej počiatočnej miestnosti).

Pravidlá vývoja

Pravidlo #1: Čas vývoja je obmedzený na jeden týždeň (vrátane 40 hodín)
Celkovo by sa vývoju hry nemalo venovať viac ako 40 hodín. Tie budú zahŕňať čas strávený skutočnou prácou na hre a premýšľaním o nej. Prestávky na rozvíjanie dlhšie ako desať minút sa nebudú počítať. To by bol „dokonalý“ pracovný týždeň so 40 hodinami s vysokým výkonom.

Plne funkčná alfa verzia bude vyrobená za 40 hodín. Na ďalšie dokončovanie, ako je finálne ladenie hry, vytvorenie inštalátora na distribúciu v celkovom čase sa nebude brať ohľad, v tejto fáze nepribudne žiadna nová funkcionalita. Neberie sa do úvahy ani dokumentácia procesu vývoja.

Pravidlo č. 2: Používajte iba bezplatné nástroje
S výnimkou softvéru, ktorý je súčasťou inštalácie systému Windows, sa používa iba bezplatný softvér, pokiaľ možno open source. Cieľom je ukázať, že na vývoj hry nepotrebujete drahé (alebo dokonca lacné) nástroje. Na vybavenie ako skener, mikrofón a digitálny fotoaparát sa toto pravidlo nevzťahuje – ak ich nemáte, predpokladáme, že si ich môžete od niekoho požičať.

Pravidlo č. 3: Žiadne motory, iba štandardné knižnice/rozhrania API
Hra musí byť vytvorená „od nuly“ bez použitia existujúcich herných enginov. Žiadne podvádzanie a vytváranie hry alebo akejkoľvek jej časti pomocou herných dizajnérov alebo pomocou podobného softvéru.

Nástroje
kód:

Python 2.3 (http://www.python.org/)
Python Win
PyGame (http://www.pygame.org/)
Py2exe - na kompiláciu toho, čo sa stane, do spustiteľného súboru na distribúciu. (http://starship.python.net/crew/theller/py2exe/)

Gimp 2.0 (http://gimp-win.sourceforge.net/)
MS Paint (ten, ktorý sa dodáva so systémom Windows) - na prilepenie snímok obrazovky zachytených pomocou klávesu PrintScreen (GIMP to z nejakého dôvodu odmietol urobiť)
Voľné textúry boli prevzaté z (http://www.textureartist.net/textures/index.htm) a (http://www.mayang.com/textures/)

Audacity (http://audacity.sourceforge.net/) plus môj mikrofón alebo tie zadarmo.

Harmonogram (Plán) práce
Plány sa robia tak, aby sa neskôr porušili, ale stále sú potrebné na kontrolu postupu a riadkov a na vykonanie potrebných úprav.

1-10 hodina: Základná architektúra
Konštrukcia motora a hlavné komponenty. Získajte zobrazenie sveta na obrazovke. Musím implementovať schopnosť pohybovať sa testovacím hráčom po celom svete a pozerať sa na veci a potom premeniť to, čo sa stane, na herný editor.

Hodina 11-20: Možnosti hráčov
Implementácia všetkých hlavných funkcií pre hráča - pohyb, útok, otváranie dverí, smrť, zbieranie vecí a používanie inventára. Vytvorte drôtovú reprezentáciu všetkých objektov v prostredí, aby ste otestovali schopnosť hráča interagovať so svetom.

21-30 hodina: Revitalizácia sveta
Pridajte umelú inteligenciu, herné udalosti, pasce, špeciálne efekty. Do konca tohto obdobia by som mal mať celkom kompletné tech demo vrátane všetkých hlavných funkcií hry.

Hodina 31-40: Pridávanie obsahu a pravidiel
Získajte plnohodnotnú hru z techno dema. Pridajte všetok dodatočný obsah. Na dosiahnutie úplnosti a vyváženosti herných mechanizmov. Vyleštite všetko, na čo je dostatok času, pridajte špeciálne efekty, animáciu atď.

Po 40 hodinách: Testovanie a vydanie hry
Otestujte a opravte nájdené chyby (bez pridávania nových funkcií!) Zhromaždite všetko a dajte to na internet. Kompletná dokumentácia.

Hackenslash Dev Diary: Hra týždňa

Hodina 1 - Divoký dizajn a základné triedy
Táto hodina bola venovaná vytváraniu niekoľkých základných tried pre hru – a ich použitiu v ďalšom dizajne. Svet bude prezentovaný ako sled miestností prepojených portálom. Všetko na svete je založené na miestnostiach, rovnako ako to bolo v starých adventúrach alebo MUDoch. Väčšina predmetov v hre je reprezentovaná ako „GameObject“, ktorý má polohu a obsah (môže obsahovať aj iné predmety – mapa môže obsahovať miestnosti, miestnosť môže obsahovať truhlu, truhlica môže obsahovať meč.. a myslím si, že meč môže obsahovať niekoľko miestností, ale my to neurobíme.)

Vytváram objekty stvorenie (stvorenie) a hráča (hráč)
Vytváram súbor atribútov pre stvorenia a vkladám ich do triedy. Zrejme som šprt, ktorý hrá príliš veľa RPG hier. Ešte presne neviem, ako budú herné mechanizmy vyzerať a fungovať.
Vytváram objekt miestnosti, ktorý zdedí z GameObject. Izba má šírku, výšku a steny – a momentálne nič iné.

Postupne začínam chápať, ako bude všetko fungovať, a urobím potrebné opravy. V tejto fáze sa PyGame ani nepokúšam používať a program nezobrazuje nič okrem konzoly. Ale mám pocit, že všetko, čo sa urobilo, je veľký pokrok!

2. hodina – PyGame 101
Účelom tejto hodiny je inicializovať PyGame a začať kresliť aspoň niečo na obrazovku. V skutočnosti trávim väčšinu času čítaním dokumentácie PyGame, snažím sa zistiť, čo tam je a ako, keďže s PyGame alebo SDL nemám žiadne skúsenosti.

Táto hodina končí programom, ktorý zobrazuje prázdnu obrazovku vyplnenú čiernou farbou. Nie pôsobivé. V skutočnosti je za týmto oknom veľa. K dispozícii je herná slučka, prepínanie snímok, viacnásobné volania triedy a veľa nečinných výstrihov. To však nerobí čiernu obrazovku o nič pôsobivejšou.

3. hodina – Ak by steny mali uši, dôrazne by som ich pokarhal.
Účelom tejto hodiny je definovať obrysy miestnosti so stenami a zobraziť ich na stále čiernej obrazovke. Na to potrebujem priestor a grafiku. V GIMPe musíte stráviť veľa času úpravou textúr stiahnutých z internetu, aby sa zmenili na vhodné dlaždice. Vytváram triedu správcu textúr. A vyplním štruktúru vzorkovne. Tiež som strávil trochu viac času prezeraním dokumentácie PyGame, aby som našiel niečo iné, čo by som mohol použiť na uľahčenie práce.

Uplynula hodina. Stále mám tú istú čiernu obrazovku. Neboli tam žiadne steny a nie.

4. hodina - Hotel má voľnú izbu
Po boji s niektorými syntaktickými chybami sa mi konečne podarilo zobraziť steny na obrazovke. Je pravda, že sa zobrazujú nesprávne, nie sú na uvedenom mieste a dokonca aj so štrbinami medzi segmentmi. Je to hrozné. Ale s trochou ladenia a úprav som na obrazovke dostal niečo, čo vyzeralo ako miestnosť, 10 x 10 štvorcov.

Bez podrobného plánu projektu je naozaj celkom ľahké sa zmiasť, keď ste vykonali určitú prácu a pýtať sa: „Čo ďalej?“ Rozhodol som sa, že ak je dobré nakresliť jednu miestnosť, potom nakresliť dve je dvojnásobne lepšie.

Na uloženie vytvorených miestností som vytvoril súbor "minidungeon".
Začnem pridávať logiku pre "portály" - otvory v stenách, ktoré vedú do iných miestností (a poskytujúce všetky informácie o posune potrebné na správne zobrazenie susedných miestností).

5. hodina - Hackenslash dostane viac miestností

Zmenil som názov okna na "Hackenslash!". Len preto, že je to cool.
Vytvoril som mapu objektov na uloženie miestností a triedu MapMaster obsahujúcu niekoľko máp.
Pridal som druhú miestnosť a cez portál som sa pripojil k prvej.
Susedné miestnosti sú prepojené s aktuálnou cez portály a teraz sa zobrazujú na obrazovke.
Opravil som niektoré chyby orezania, aby sa správne zobrazovali steny, ktoré čiastočne presahujú okno.

6. hodina – počas ktorej sa zdokonaľujeme v kreslení

Pridaná trieda dverí a tiež nastavenie máp pre umiestnenie dverí (dvere musia byť spoločné pre dve miestnosti). (Edit: Škoda, že som to nikdy nepoužil!)
Vytvoril som ďalšie 3 obklady a spojil ich do jedného obrazu.
Grafický vzhľad stien sa líši v závislosti od typu.
Robím jednoduchú grafiku pre pohľad zhora nadol.

Hodiny 7-8 - Točenia a výkriky!

Prišiel som na to, ako otáčať bitmapy v PyGame.
Dosiahol som plynulú rotáciu testovacieho hráča. Na korekciu uhla natočenia je potrebných veľa úprav.
Naučil som sa používať fonty v PyGame a vytváram niekoľko tried na zobrazenie a animáciu textu.
Pridaná trieda pre automatické spracovanie textu, pretože táto funkcia sa bude v budúcnosti často používať.

Hodiny 9-11 - Elements - brrr!

A tu opäť potrebujem vyriešiť otázku „Čo ďalej?“.

Miestnosti potrebujú zaujímavejšie prvky, preto si ich musíte urobiť zoznam. Neviem, ako ich systematizovať, tak som sa rozhodol začať tými všeobecnými. Predstavil som tri statické prvky, ktoré možno nájsť v typickej kobke: koberec, stĺp (blok s rovnakou funkcionalitou ako steny) a rebrík (umožňuje vám presunúť sa na nové miesto)

Rozhodol som sa, že prvky môžu zaberať viac ako jednu dlaždicu a môžu sa otáčať o ľubovoľný stupeň. (Edit: Spätne veľmi hlúpe riešenie - strávil som príliš veľa času jeho implementáciou, ale ukázalo sa, že je takmer zbytočné.)

Celkovo som strávil asi tri hodiny prácou na prvkoch, rozpoltený medzi tvorbou grafiky a písaním kódu.

Hodiny 12 - 13 - Potrebujeme korisť!

Vytváram grafiku a kódy vecí. Je úžasné, ako dlho môže kreslenie trvať. Je to obzvlášť nepríjemné, keď obrázok vyzerá, ako keby kura kreslilo labkou, bez ohľadu na to, koľko úsilia sa do toho vložilo.

K položkám som pridal veľa štatistík vrátane ich ceny, veľkosti, slotov na vybavenie a ďalších. Zatiaľ sa s nimi nedá interagovať, no aspoň sa ukazujú na správnych miestach v miestnosti.

14. hodina - Koberce

Zaostávam za plánom, čo mám robiť?
Čierne pozadie sa mi zdá príliš škaredé, preto som podlahy vo vnútri miestnosti vydláždil kobercami – samostatnými dlaždicami.

Potom sa zrazu ukázalo, že som zabudol pridať priehľadné pozadie k škriatkom prehrávača a veciam. Musel som stráviť veľa času nápravou tohto prehliadnutia.

Ale úroveň teraz vyzerá v pohode. No, aspoň chladnejšie ako čierne.

Hodiny 15-16 - Kliknite! Kliknite!

Bol som zaneprázdnený ovládaním myšou a manipuláciou s udalosťami.
Pridané ovládanie myšou. Kým je pohyb trhaný, nedochádza k plynulému posúvaniu úrovne.
Hráč sa môže z miestnosti odsunúť, kontrola kolízie neexistuje.
Opravil som pár chýb.
Mučil GIMP a vytvoril krásne schody.
.
Už je skoro 17 hodín vývoja, takže začínam byť mierne nervózny. Pri tvorbe hry som prešiel 2/5 cesty – skončil sa druhý „pracovný deň“ vývoja. To, čo som už urobil, je pôsobivé, ale chápem, že toho ešte zostáva urobiť oveľa viac. Mám ešte štyri hodiny na to, aby som dokončil základné funkcie hráča a dostal sa podľa plánu. Bude to ťažké... ale aj tak neľutujem, že som strávil čas navyše kreslením grafiky!

17. hodina – Pomaly sa pohybujte, kým nenarazíme čelom na stenu

Väčšinu času strávi dolaďovaním grafiky a opravovaním chýb.
Pridaná detekcia kolízie a plynulé posúvanie pri pohybe hráča.
Hráč teraz môže v reakcii na akciu myši vykonať viacero krokov (otáčok).

18. hodina – Prekročenie prahov

Hráč teraz môže prejsť cez portály do iných miestností.
To spôsobuje kozmetickú chybu s prekrývajúcimi sa stenami a podlahami medzi priľahlými miestnosťami.
Opravených veľa chýb súvisiacich s rotáciou, kvôli ktorým boli portály nepriechodné.

19. hodina - Schodisko do neba, Pekelné menu

Môj brat sa dobrovoľne prihlásil, že bude robiť hudbu pre hru. Spravil hudbu pre Void War a celkom dobre to fungovalo. To mi pripomenulo prehrávanie zvuku (a hudby). Zdá sa, že je to celkom jednoduché urobiť v PyGame, takže by to nemalo trvať príliš dlho. (Edit: Nikdy som si na to nenašiel čas, bohužiaľ v Hackenslash nebudete počuť jediný zvuk.)

Mojím ďalším cieľom je zvládnuť interakcie s tvormi a predmetmi. Veľmi sa mi páči spôsob, akým je to urobené v The Sims a Neverwinter Nights, keď chcete interagovať s herným objektom, vyskočí kontextové menu. Niečo podobné plánujem zrealizovať.

Učenie po schodoch na presun hráča do novej miestnosti.
Trochu som prehrabával internet a dokumentáciu PyGame a hľadal som, či v PyGame neexistuje open source ponuka pre podobnú ponuku. A nenašiel nič.
Začal som si robiť vlastné menu.

Hodiny 20 - 21 - Čo je s menu?

Pokračujem v práci na menu. Menu sa dá jednoducho spojiť s objektom, presnejšie, objekt generuje menu, čo uľahčilo implementáciu spätnej väzby pre spracovanie hráčovej voľby.
Začal som pracovať na ponuke položiek. Už sa zobrazuje na správnom mieste a umožňuje vybrať nejakú položku, no po stlačení zatiaľ nič nerobí, funguje len tlačidlo na zatvorenie menu.

22. hodina – prebieha zaspávanie

Pokračujem v práci na veciach – snažím sa implementovať ich funkcionalitu a naučiť ich reagovať na príkazy menu, vrátane možnosti pridávať kontextové informácie. Teraz má málo funkcií, ale stále funguje a zobrazuje informácie o spustenom príkaze
Zlepšil som výpočet pohybu pri vykonávaní rôznych akcií, čím som získal väčšiu mobilitu.

Všimol som si, že je už neskoro a že som ďaleko prekročil hodinu určenú na túto prácu. Keby som si nedával pozor na celkový čas vývoja, asi by som sedel do rána. Ale keďže som časovo obmedzený, takmer premárnená hodina je naozaj zlá správa. Je zaujímavé, ako sa menia priority, keď nie je dostatok času. Vo všeobecnosti idem spať.

Hodina 23 - Parametre boja!

Upravujem (no, vlastne len začínam) niektoré atribúty triedy vytvorené počas prvej hodiny.
V pravom hornom rohu vytvorím panel, ktorý zobrazí možnosti prehrávača.
Toto okno som optimalizoval tak, že som ho zmenil na obrázok, ktorý sa kreslí rýchlejšie ako písma. Tento obrázok sa aktualizuje iba vtedy, keď sa zmenia súvisiace parametre postavy.

Hodina 24 - Menu hráča

Dokončil som optimalizáciu pre okno možností.
Vytvorená kontextová ponuka, ktorá sa zobrazí, keď hráč klikne na postavu.
Vytvoril som rýchle menu na používanie elixírov, čarovania atď.
Opravil som nejaké chyby v menu.

25. hodina - Pred (raz) pílením podláh a stien

Dnes ráno som mal v hlave nápad (naozaj mám taký veľký mozog, že sa doň zmestí toľko nápadov?), ako vyriešiť problém s prekrývajúcimi sa stenami vo vedľajších miestnostiach (pozri popis osemnástej hodiny). Čo ak namaľujem len polovicu stien? Týmto spôsobom nedôjde k žiadnemu prekrývaniu a nie je potrebné pridávať žiadnu zložitú logiku na detekciu a opravu prekrývania.

Začínam pracovať na realizácii tohto nápadu. Bohužiaľ, v skutočnosti vynájdené zjednodušenie ešte viac sťažuje nakreslenie miestnosti (najmä podlahy) a nemusí sa realizovať tak rýchlo, ako som dúfal. Vytvorenie a odladenie tohto systému trvalo asi hodinu. Ale stálo to za to.

Pri ladení kódu som našiel niekoľko ďalších chýb súvisiacich s prechodom medzi miestnosťami.

BREAK - Kríza!

Práve som si uvedomil, že uplynulo viac ako 3/5 času vývoja a že do konca hry zostáva menej ako pätnásť hodín. Keď som si prezrel plán potrebných funkcií hry a odhadol, že implementácia každej z nich bude trvať v priemere hodinu, uvedomil som si, že implementácia všetkého mi bude trvať asi dvadsaťpäť hodín. Desať hodín vopred. Projekt je oficiálne ohrozený.

Nemôžem prekročiť časový limit. Tiež nie je možné prilákať asistenta alebo kúpiť kód / zdroje, pretože je potrebné, aby som hru vytvoril sám za 40 hodín. Musím prísť na to, ako pracovať ešte efektívnejšie – ale už teraz pracujem na maximálnu produktivitu. Zdá sa, že nemám inú možnosť, budem musieť prehodnotiť funkčnosť a rozhodnúť sa, ktoré funkcie z hry vyhodiť.

Dvere: Rez! Naozaj chcem robiť dvere v hre. Je škoda rozlúčiť sa s touto funkciou - najmä keď na nej pracujem už nejaký čas. Stále je však príliš veľa práce, napríklad umelej inteligencie. A dostať ich do práce bude pravdepodobne trvať 2-3 hodiny, čo ja nemám.
Inventár: Zjednodušte! Zabudnite na dodatočný inventár a možnosť ľubovoľne meniť zbrane. Všetko, čo sa vyberie a nestane sa súčasnou výbavou, sa okamžite premení na peniaze.
Úskalia: Zjednodušte! Chcel by som mať veľa pascí so zaujímavými a rôznorodými dôsledkami na ich aktiváciu. Nie je to tak. Pasce budú mať jednoduchý vizuálny efekt, spôsobia poškodenie a dočasne zvýšia šancu, že narazíte na náhodné monštrum
Luky (malé zbrane): Rez! Hra bude mať iba zbrane na blízko, na diaľku môžete útočiť kúzlami.
Uložiť/Načítať hru: Zjednodušte! Zachrániť sa dá len postava, nie stav sveta. (EDIT: Ani ja som to neurobil!)
Systém častíc: Odložte! Vytvorenie časticového systému bolo presunuté na koniec zoznamu priorít. Pochybujem, že ich bude treba urobiť. Bolo by pekné mať pôsobivý vizuál s časticami kúziel... ale to asi nikdy nebude.
Kúzla: Zjednodušte! Mal som vážnu predstavu o kúzlach: možno ich nájsť vo forme zvitkov a ich počet je viac ako tucet. Je to smutné, ale bude tam len pár kúziel: Heal, Damage, Weaken, Empower a Restoration. Zvyšovaním úrovne môžete hráčovi umožniť vylepšiť kúzla zvýšením počtu magických bodov.
Animácia príšer a hráčov: Strihajte! Som slabý umelec, aby som to urobil dostatočne rýchlo.

Pri rozhodovaní o tom, čo neurobím (alebo čo odložím na neskôr), je rovnako dôležité rozhodnúť sa, čo treba urobiť ako prvé.

V hre je naplánovaných veľa vecí, ktoré považujem za veľmi dôležité – hľadanie pascí, tajných dverí (no, teraz tajných chodieb) a otváranie truhlíc. Ale aj tak je základom hry boj. Preto som sa rozhodol zamerať na to, aby to bolo najvyššou prioritou. Stanovil som si cieľ, za hodinu a pol moje príšery ožijú, aby ich bolo možné zabiť.

Skvelé, zistili sme priority, pokračujeme v rozvoji.

26. hodina – Hodme kockou

Pracujem na mechanike „kociek“, mechanizmu, ktorým sa do hry vnesie prvok náhodnosti. Keďže nemáme skutočné obmedzenie kocky, môžeme získať náhodné číslo v akomkoľvek požadovanom rozsahu. Napríklad od 1 do 33, alebo od 6 do 17. Môžem teda hádzať kockou, porovnávať, čo padlo s mojím útokom a obranou nepriateľa. Ak je hodené číslo vyššie ako obrana, útok je úspešný.

Povedzme napríklad, že mám celkovú hodnotu útoku 15. Útočím na monštrum, ktoré má 10 obrany. Moje šance sú 15 z 25 (25 = 15 +10), alebo 3 z 5. Hra teda vygeneruje náhodné číslo medzi 1 a 25 a ak bude vyššie ako desať, vyhrám.

Spôsobená škoda sa vypočítava trochu iným spôsobom. Obrancovi som pridal „brnenie“ a útočníkovi „poškodenie“. Vygenerujem náhodné číslo od 1 do ich súčtu a potom odčítam brnenie. Ak je výsledok menší ako jedna, neudeľuje sa žiadne poškodenie. V opačnom prípade sa rovná výsledku. Ak teda monštrum s 10 škodami zaútočí na hráča s 5 bodmi brnenia, hra vygeneruje číslo od 1 do 15, od ktorého odpočíta 5, čo sa stane, je udelené poškodenie.

Toto vysvetlenie a popis trvalo dlhšie ako jeho realizácia.

Na konci hodiny som zmenšil oblasť zobrazenia dungeonu, teraz je časť okna napravo úplne venovaná používateľskému rozhraniu, táto zmena priniesla mierne zvýšenie výkonu. Presvedčil som sa aj o tom, že pohyb hráča nezávisí od snímkovej frekvencie.