Studentská tvůrčí a odborná činnost STOČ 2017 Programování v GameMakeru Štěpán Rožník GJP a SOŠ Slavičín, Školní 822., 763 21 Slavičín 20. dubna 2017 FAI UTB ve Zlíně
Klíčová slova: GameMaker, programování, Android, aplikace, hry Anotace: V mé práci se věnuji jednomu z nejznámějších multiplatformních nástrojů zaměřených na tvorbu her, GameMaker Studiu od firmy YoYo Games. Zahrnul jsem informace o programu samotném a jeho komunitě, dále představuji moji vlastní tvorbu, mezi kterou patří několik mobilních aplikací. Nejvíce se zde budu věnovat hře KUŘE, kterou považuji za nejpropracovanější a nejúspěšnější z těchto aplikací. Účelem práce je vyvolat pozornost lidí na existenci GameMakeru, neboť by v něm mohli nalézt využití k realizaci svých plánů a snů, stejně jako kdysi pomohl k jejich realizaci mně. 2
OBSAH 1 O GameMakeru... 4 1.1 GameMaker studio... 4 1.2 Gamemaker Studio 2... 5 2 Jak funguje GameMaker... 6 3 Export a testování... 7 4 Má tvorba... 8 4.1 Proč Android... 8 4.2 Dat Ball... 8 4.2.1 Výběr levelů... 8 4.2.2 První level... 9 4.2.3 Další levely... 9 4.3 BMI Kalkulačka... 10 4.3.1 záznam aplikace na Google Play... 10 4.4 Cognitive functions for MBTI... 11 4.4.1 Co je to MBTI?... 11 4.4.2 Kognitivní funkce... 12 4.4.3 Účel aplikace... 13 4.4.4 záznam aplikace na Google Play... 14 4.5 KUŘE... 15 4.5.1 Záznam aplikace na Google Play... 16 4.6 Zpeněžení aplikací... 17 5 Komunita... 18 5.1 Tvorba jiných vývojářů... Chyba! Záložka není definována. 5.1.1 Hyper Light Drifter... Chyba! Záložka není definována. 5.1.2 Undertale... Chyba! Záložka není definována. 5.1.3 Ostatní herní tituly... Chyba! Záložka není definována. 5.2 Rozšíření... 19 6 Závěr:... 20 Použitá literatura... 21 3
1 O GAMEMAKERU Na úvod si řekněme, co to vlastně GameMaker je. Toto je podstatná a neopomenutelná část práce, jelikož právě tomuto programu se budu v ostatních kapitolách věnovat. GameMaker je aplikace na tvorbu her pod operačním systémem Microsoft Windows a OS X pro tyto a řadu dalších platforem. Autorem programu je Mark Overmars a je napsán v programovacím prostředí Delphi. První verze byla uvolněna 19. listopadu 1999. Nyní spadá pod společnost YoYo Games. Ve verzi pro Windows program přímo vytváří EXE soubory a obsahuje vlastní programovací jazyk GML (GameMaker Language), primární je však grafický editor založený na Obr. č. 1 logo YoYo Games objektově orientovaném a drag-and-drop systému, který uživateli dovoluje vše intuitivně řadit na obrazovce vedle sebe. Podporováno je mnoho grafických formátů, zvuky a hudbu lze importovat ve formátech WAV, MP3 i Ogg Vorbis. V registrované (placené) verzi jsou i funkce pro 3D grafiku. 1.1 GameMaker studio Současná verze GameMakeru se jmenuje GameMaker Studio a má stále svou bezplatnou i placenou verzi. Bezplatná verze exportuje spustitelné soubory pouze pro Windows a chybí jí některé pokročilé možnosti v samotném vývojovém prostředí (např. Texture Management). Placená verze exportuje pro řadu platforem (ios, Android, Xbox atd.) systémem samostatně dokupovaných plug-inů. Existuje také tzv. Master Collection verze, která obsahuje všechny existující i budoucí plug-iny. Obr. č. 2 Ceny placených verzí GMS Ceny jednotlivých placených verzí jsou sice poměrně vysoké (od cca 3600 Kč), avšak na internetu se často objevují různé akční slevy a reklamní kampaně, nabízející placené verze GameMaker Studia za mnohem levnější cenu. Jedné takové slevy jsem při koupi tohoto programu využil i já. 4
Oproti GameMakeru 8 a nižším, GameMaker Studio klade mnohem větší důraz na jazyk GML, který je zde rozšířen o nové možnosti, zatímco možnosti ikon zůstávají v téměř nezměněné podobě. 1.2 GameMaker Studio 2 V listopadu 2016 vypustilo YoYo Games betaverzi nového GameMaker Studia 2. Ta s sebou přinesla kompletně změněné vývojové prostředí a spoustu nových užitečných funkcí, jako třeba rozšířený grafický editor, zvukový editor, vylepšený drag-and-drop systém a tutoriálovou knihovnu. Nezměněny zůstávají všechny ostatní klíčové funkce, které z GameMakeru dělají GameMaker. Obr. č. 3 GameMaker Studio 2 Přestože je nové prostředí velmi praktické a práce v něm je skutečně rychlejší, upgrade na něj je příliš drahý, a tak jsem si musel vystačit pouze se zkušební verzí. Pokud mi v následujících měsících mé aplikace vydělají více peněz, rozhodně je do nového GameMaker Studia 2 investuji. 5
2 JAK FUNGUJE GAMEMAKER Základním prvkem GameMakeru jsou objekty (1). Objektem může být ve vytvářené hře jakýkoliv interaktivní prvek (hlavní postavy, nepřátelé, předměty, zdi nebo také speciální kontrolní objekty či tlačítka). Vlastnosti těchto objektů jsou popsány pomocí vestavěných lokálních proměnných, mezi něž patří například pozice (x, y), viditelnost nebo sprite (2), což je některý z obrázků načtených do hry a následně určující vzhled a tvar objektu. 7 Obr. č. 4 Uvnitř GameMakeru Ke každému objektu je možné přiřadit různé události (events) (3). Tyto události mohou být například vytvoření (nebo zničení) objektu, stisk klávesy (nebo tlačítka myši), dopočítání alarmu, vykreslování či událost prováděná opakovaně při každém kroku. K jednotlivým událostem jsou formou ikonek přiřazovány akce (actions) (4), např. vytvoř (znič) objekt, začni se pohybovat určitým směrem určitou rychlostí, nastav alarm, vykresli (text, sprite, geometrický tvar). Tyto akce nejsou ničím jiným než nahrazením několika řádků kódu v jazyce GML (5). Kód v tomto jazyce se přidá k události jako jedna speciální akce (6) nebo jako volání tzv. skriptu (script). Dalším nepostradatelným prvkem tvorby her v GameMakeru jsou místnosti (rooms) (7), které představují prostor, v němž hra probíhá. V mnoha hrách to jsou tzv. levely. Do těchto místností jsou vkládány objekty, které zde po spuštění hry reagují akcemi na události. U místnosti lze definovat velikost v pixelech, obrázek pozadí či popředí (použije se background) nebo další vlastnosti. GameMakerová hra se nespustí, pokud neobsahuje alespoň jednu místnost. Do hry je také možné vkládat zvukové a hudební soubory, které lze v průběhu hry přehrát pomocí akcí nebo GML příkazů k tomu určených. Stejně tak je možné přidat písma (fonts), timelines (složitější časování), cesty (paths) a skripty (scripts). Skripty obsahují kód v jazyce GML a jsou spouštěny objekty pomocí akce k tomu určené nebo napsáním jejich názvu se závorkami, které mohou obsahovat argumenty skriptu. 6
3 EXPORT A TESTOVÁNÍ Poté, co se nám ze zmíněných komponent podaří poskládat hra, je třeba ji vypustit na svět. GameMaker Studio umožňuje vytvářet hry pro mnoho různých platforem (1), avšak export pro většinu z nich (všechny kromě Windows desktop) je třeba si dodatečně zakoupit. Zakoupením exportovacího modulu však práce nekončí. Aby hra fungovala na jiných platformách, musí vývojář stáhnout potřebné systémové balíčky pro daný operační systém. U Androidu je to Android SKD, Android NDK a Java JDK (2). Obr. č. 5 Nastavení exportu a testování Pokud je všechno správně nastaveno, stačí kliknout na malou bílou ikonu v levém horním rohu programu (3) a během několika sekund či minut (v závislosti na velikosti hry) se v příslušném formátu vygeneruje aplikace, kterou lze okamžitě nainstalovat a spustit. Testování her probíhá velice podobným způsobem, jako jejich export. Také je zde potřeba mít zakoupené exportovací moduly a rovněž musí být připraveny stejné systémové balíčky. Při testování na Androidu můžeme zvolit dvě cesty, kterými hru do zařízení dostaneme. Buďto ji zde nahrajeme připojením zařízení do počítače pomocí USB kabelu, nebo vytvoříme server na místním internetovém připojení (4) (tzv. LANem neboli přes Wi-Fi). V obou případech je třeba ve vývojářském nastavení Androidového zařízení povolit tzv. ladění. Oproti testování a exportování hry na Androidu je to Windowsové poměrně snadné. Před příchodem multiplatformního GameMaker Studia byl totiž GameMaker určený pouze pro Windows. Není tedy potřeba stahovat žádné přídavné balíčky. Všechno též probíhá mnohem rychleji než na Androidu, proto pro testování svých aplikací používám primárně Windows. 7
4 MÁ TVORBA Je tomu už několik let, co jsem v GameMakeru vytvořil svoji první plnohodnotnou hru. Za tuto dlouho dobu jsem na počítače Gymnázia rozšířil už několik originálních herních titulů, které zde o zdlouhavých přestávkách bavily mé spolužáky. Kdybych se jich zeptal, určitě by vzpomenuli hry jako Erkerun, Crazyballs nebo třeba mobilní hru Nikidu. V této práci však budu demonstrovat úplně jiné příklady mé tvorby, které lépe ukazují, co GameMaker dokáže. 4.1 Proč Android Jako výchozí platformu, pro kterou bude hra určená, jsem si tentokrát zvolil operační systém Android. Už nyní je Android nejrozšířenějším mobilní operačním systémem, a tak věřím, že vzhledem k neustále narůstajícímu počtu mobilních zařízení by se má tvorba nejlépe uchytila právě tam. Některé z aplikací jsem již nahrál do obchodu s aplikacemi Google Play, odkud si je může kdokoliv zdarma stáhnout. S přidáním reklamy do aplikace se navíc tvorba dala jednoduše zpeněžit. 4.2 Dat Ball První aplikací, kterou jsem se v mé práci rozhodl zmínit je jednoduchá hra Dat Ball. Je to jediná z aplikací, kterou jsem před odevzdáním práce nestihl dokončit, proto ji ještě nenajdeme v obchodě Google Play. Otevřeme-li zmíněnou hru, vyskočí na nás první místnost neboli hlavní menu. Zde se můžeme přenést dále do hry stisknutím tlačítka Play, ostatní tlačítka (Settings a Theme) jsou v aktuální verzi hry pouze pro ozdobu a po kliknutí na ně se zatím nikam nedostaneme. 4.2.1 Výběr levelů Obr. č. 6 Hlavní menu Řekněme, že jsme se rozhodli stisknout první tlačítko, tedy Play. V okamžiku jsme se tak octli v další místnosti, kterou jsem nazval Výběr levelů. Můžeme si zde zvolit jednu ze šestnácti dalších místností (levelů), ve kterých se samotná hra odehrává. Jelikož jsme však aplikaci otevřeli poprvé, přístupný je nám zatím pouze první level. Jeho úspěšným dokončením bychom si odemkli level 2, dokončením levelu 2 level 3, atd. Chceme-li tento proces urychlit, stačí kliknout na bílé tlačítko v pravém horním rohu obrazovky. Tím se nám odemknou všechny dostupné levely a přičte se nám vysoké skóre za jejich dokončení. Nechceme ale podvádět a tak se vrátíme zpátky do původního stavu stisknutím sousedního černého tlačítka, Obr. č. 7 Výběr levelů které nám skóre opět vynuluje. Tato tlačítka jsem do hry přidal pouze pro pomoc při vývoji a ve verzi pro veřejnost budou odebrána. Jedním z rozdílů mezi těmito dvěma obrázky je množství získaných mincí. Jejich počet je zobrazen na indikátoru v levém horním rohu obrazovky. Za každý z levelů je možné získat až 3 mince. První se přičítá za 60 a více bodů, druhá za 80 a více a třetí za 100 a více bodů za level. Za získané mince si později odemkneme různá grafická schémata. 8 Obr. č. 8 Odemčené levely
4.2.2 První level Otevřeli jsme první level a před námi se objevila malá kulička, obíhající okolo většího kruhu. Okolo ní jsou rozmístěny drobné trojúhelníčky, které se otáčejí na místě. Cílem každého levelu je posbírat s kuličkou všechny tyto trojúhelníčky a spotřebovat při tom co nejméně paliva. Abychom kuličku rozpohybovali, podržíme na okamžik prst na displeji, načež se kulička okamžitě vydá dál od středu kruhu. Číslo uvnitř kruhu, které udává množství zmíněného paliva, se v ten moment nepatrně zmenšilo. Dojde-li toto číslo k nule, neuspěli jsme a jsme nuceni level opakovat. Stejný případ by nastal, pokud bychom nedopatřením opustili prostor vnějšího kruhu. Jakmile se nám podaří tímto způsobem posbírat všechny trojúhelníčky, chytrá animace nám prozradí, že jsme úspěšně splnili první level a přenese nás zpět k výběru levelů. Zde nám bylo přičteno bonusové skóre za zbylé Obr. č. 9 První level palivo a podle toho též příslušný počet mincí. Pokud jsme dosáhli alespoň 60 bonusových bodů, získali jsme červenou minci. Modrou minci získáme za 80 a zlatou za 100 bodů. Můžeme si všimnout, že se nám též otevřel přístup do druhého levelu a pokud chceme ve hraní pokračovat, vydáme se právě tam. Pro lepší představu si můžeme celý první level zrekapitulovat v krátkém videu: https://www.youtube.com/watch?v=t0xh3uxs9ku&feature=youtu.be 4.2.3 Další levely Aby hra nebyla tolik monotónní, jsou do dalších levelů postupně přidávány různé překážky a obtížnost tak narůstá. Hned v druhém levelu si například můžeme všimnout zvláštních šedých krystalů, které kuličku při kontaktu zlikvidují. Obr. č. 10 Všechny levely seřazené od prvního po poslední Windowsová verze hry je nyní volně dostupná ke stažení na adrese: https://uloz.to/xgiihfqo/hra-exe 9
4.3 BMI Kalkulačka Přestože primární účel GameMakeru je tvorba her, je možné v něm snadno vytvořit i jiné programy. Pro demonstraci toho jsem vytvořil jednoduchou aplikaci pro výpočet BMI, neboli Body Mass Indexu. BMI je číslo používané jako indikátor podváhy, normální tělesné hmotnosti, nadváhy a obezity, umožňující statistické porovnávání tělesné hmotnosti lidí s různou výškou. Index se spočítá vydělením hmotnosti daného člověka druhou mocninou jeho výšky. Do aplikace stačí zadat vlastní hodnoty a v okamžení vám bude vypsána vaše hodnota BMI včetně jejího zhodnocení. Běžně se používají následující hranice: Kategorie Rozsah BMI [kg/m²] těžká podvýživa 16,5 podváha 16,5 18,5 ideální (zdravá) váha 18,5 25 nadváha 25 30 mírná obezita 30 35 střední obezita 35 40 morbidní obezita > 40 Obr. č. 11 Aplikace BMI Kalkulačka Dole mezitím číhá graf, který zobrazuje riziko úmrtí podle aktuálního BMI. Největší překážkou při tvorbě této aplikace byla nemožnost zadávat hodnoty váhy a výšky za pomocí softwarové klávesnice na Androidu. GameMaker funkci otevření klávesnice zkrátka nepodporuje. Nahradila ji tlačítka + a -. Na první pohled se tento systém může zdát zdlouhavý a složitý, ale stačí jedno z tlačítek podržet a hodnoty začnou naskakovat mnohem rychleji. 4.3.1 záznam aplikace na Google Play Jelikož aplikaci považuji za dokončenou, neváhal jsem ji nahrát na obchod androidových aplikací Google Play, kde je volně dostupná ke stažení od 22. ledna 2017: https://play.google.com/store/apps/details?id=com.companyname.bmi_calc Popis aplikace v obchodě: Jednoduchá aplikace pro výpočet Body Mass Indexu. Nevyžaduje žádná zvláštní oprávnění, neobsahuje reklamy. Vznikla jako součást závěrečné maturitní práce. 10
Verze pro Windows: https://uloz.to/!w2laikb1qnzg/bmi-calc-default-1-0-0-0-exe 4.4 Cognitive functions for MBTI Dalším příkladem využití GameMakeru pro tvorbu výpočetních programů místo her je aplikace Cognitive functions for MBTI. Člověku neznalému osobnostní typologie MBTI je účel tohoto programu těžké vysvětlit. Rozhodně by se však měl stát součástí této práce, jelikož dobře zobrazuje další vymoženosti a schopnosti GameMakeru. 4.4.1 Co je to MBTI? Myers-Briggs Type Indicator (MBTI) je osobnostní test navržený pro určení osobnostních typů. Zaměřuje se na to, jak různí lidé vnímají svět a činí svá rozhodnutí. Typologie osobnosti MBTI vznikla rozšířením Obecných typů C. G. Junga (8 typů) na celkových 16 osobnostních typů. Každý z 16 typů je označen čtyřmi písmeny podle převažující preference: Vnímání okolního prostředí Extraverze (E, Extraversion): Extroverti intenzivně vnímají okolí a jsou zaměřeni na kontakt s lidmi a realitou, rádi mluví a vyjadřují své pocity. Introverze (I, Introversion): Introverti se dokáží soustředit na maličkosti, a hlavně na myšlenky a pocity. Nevyhledávají tolik kontakt s okolím, který jim někdy může být i nepříjemný, a raději poslouchají, než aby se zapojili do konverzace. Raději promyslí, co řeknou, než aby ze sebe chrlili nesourodé informace. Získávání informací Smysly (S, Sensing): Smysly upřednostňují fakta a současnou situaci. Lidé s touto charakteristikou jsou více spřaženi se skutečností, raději věci používají, než aby se zabývali tím, proč a jak fungují. Intuice (N, intuition): Intuice upřednostňuje myšlenky, teorie a fantazii. Intuitivové rádi dělají věci pokaždé jinak, zkoumá, co se proč a jak děje, a jak by se to dalo dělat lépe. Spíše než praxe a to, co je, je přitahuje budoucnost a různé abstraktní teorie. Zpracování informací Myšlení (T, Thinking): Tito lidé lépe pracují s daty a čísly než s pocity a lidmi, bývají neústupní a neohleduplní. Myšlení vede k lepšímu řešením problémů a zakládá se na číslech, faktech a logice: pravdivý nepravdivý, jestliže, pak. Cítění (F, Feeling): Cítění rozhoduje podle pocitu z věci: více, nebo méně, lepší horší. Citově založení lidé dávají přednost dohodám, často jsou empatičtí a rádi dělají ostatním radost. Životní styl Usuzování (J, Judging): Lidé s dominantním usuzováním inklinují k postupným řešením a snaží se rychle věci dokončit. Rádi si před výletem naplánují, které památky navštíví, a předem si rezervují hotel. 11
Vnímání (P, Perceiving): Lidé vnímající spoléhají na subjektivní mínění a nechávají si všechny možnosti otevřené. Nejlépe se jim daří pod tlakem, v časové tísni, když už je poslední možnost něco udělat. Pokud usuzující výlet dobře promysleli, vnímající jsou přesným opakem. Ráno se probudí, usmyslí si, že si udělají výlet, a všechno začnou řešit teprve, až k tomu nastane potřeba. Skládáním těchto písmen dojdeme k následujícím osobnostním typům: ISTJ, ISTP, ISFJ, ISFP, INTJ, INTP, INFJ, INFP, ESTJ, ESTP, ESFJ, ESFP, ENTJ, ENTP, ENFJ, ENFP 4.4.2 Kognitivní funkce Podle C. G. Junga existuje 8 způsobů (funkcí, mentálních nástrojů), jakým se orientujeme v realitě. Intuice (N) a vnímání (S) nám zprostředkovávají vstupní data, zatímco myšlení (T) a cítění (F) nám umožňují se na základě těchto dat nějakým způsobem rozhodovat. Každá z funkcí může být orientována více dovnitř (i - introvertně, do subjektivního světa "uvnitř") nebo ven (e - extravertně, do objektivního světa "venku"). Každý člověk disponuje potenciálně všemi funkcemi, ale v odlišné hierarchii. Ke zjištění hierarchie možno použít MBTI test. ESTJ ESTP ISTP ISTJ 1. dominantní Te Se Ti Si 2. pomocná Si Ti Se Te 3. terciální Ne Fe Ni Fi 4. nejslabší Fi Ni Fe Ne ESFJ ESFP ISFP ISFJ 1. dominantní Fe Se Fi Si 2. pomocná Si Fi Se Fe 3. terciální Ne Te Ni Ti 4. nejslabší Ti Ni Te Ne ENFJ ENFP INFP INFJ 1. dominantní Fe Ne Fi Ni 2. pomocná Ni Fi Ne Fe 3. terciální Se Te Si Ti 4. nejslabší Ti Si Te Se ENTJ ENTP INTP INTJ 1. dominantní Te Ne Ti Ni 2. pomocná Ni Ti Ne Te 3. terciální Se Fe Si Fi 4. nejslabší Fi Si Fe Se Obr. č. 12 16 osobnostních typů a jejich kognitivní funkce Zatímco (první) dominantní funkce představuje naši nejvýraznější kvalitu, funkce k ní protikladná (nejslabší) obvykle představuje naši achillovu patu. (Je-li dominantní funkcí např. introvertní myšlení, pak bude pravděpodobně nevědomé extravertní cítění). 12
4.4.3 Účel aplikace Aplikace Cognitive Functions for MBTI dokáže vykreslit kognitivní funkce pro každý ze zmíněných osobnostních typů. To by z ní ovšem nedělalo nic unikátního, vzhledem k tomu, že se všechny tyto informace se dají snadno dohledat na internetu. Jedinečnou funkcí této aplikace je však vykreslit tyto kognitivní funkce i pro X osobnostní typy, tedy typy, které balancují mezi růzmými písmeny. Obr. č. 13 Prostředí aplikace K ovládání aplikace slouží deset čtvercovitých tlačítek, které můžeme vidět na obrázcích. Tlačítka I, N, T, P, E, S, F a J jsou určená k zadání našeho osobnostního typu, který se nad tlačítky podle našeho zadání průběžně aktualizuje. Dole pod nimi se mezi tím vykreslují naše zmíněné kognitivní funkce. Čtyři různě vybarvené kosočtverce zobrazují každou z našich čtyř funkcí. Jejich velikost a číslo uvnitř odráží jejich prioritu. Tak můžeme rozlišit funkci dominantní, pomocnou, terciální a nejslabší. Jejich posun doprava a doleva pak určuje, jestli se jedná o extrovertní nebo introvertní funkci. Například na prvním obrázku tak vidíme ENTP s jeho dominantní extrovertní intuicí (Ne), dále introvertním myšlením (Ti), extrovertním cítěním (Fe) a introvertním vnímáním (Si). Tlačítko IxE nám umožňuje specifičtější výběr nerozhodné MBTI osobnosti. Po kliknutí na tlačítko se nám ze tří bodů mezi I a E (a dalšími hodnotami) stane jedenáct. Tlačítko s kosočtvercem nám vykreslené kosočtverce pro lepší přehled změní na kruhy. 13
4.4.4 záznam aplikace na Google Play Tato aplikace si též našla cestu na obchod aplikací Google Play, a to přesně 20. února 2017. Podle dat z vývojářské konzole si dosud našla více zájemců mezi zahraničními uživateli. Stáhnout a vyzkoušet si ji na vašem androidovém zařízení můžete na následující stránce: https://play.google.com/store/apps/details?id=com.stever68.cognitive_functions Popis aplikace v obchodě: Aplikace vykreslí model kognitivních funkcí pro daný typ osobnosti podle MBTI. Aplikace věnovaná všem těm nerozhodným sněhovým vločkám, které balancují mezi dvěma či více různými osobnostními typy. Ovládání aplikace a její průzkum nechám na vaší intuici a zvědavosti. Zaručuji ale, že najde využití v rukou každého blázna do typologie MBTI a Jungových kognitivních funkcí. Anglický popis: Shows cognitive functions for selected MBTI type. App made for all those indecisive snowflakes who balance between two or more MBTI types. No further explanations needed, the app is very easy to control. I hope your curiosity will give it a try. Verze pro Windows: https://uloz.to/!taauvmidkdc8/cognitive-functions-default-1-0-0-1-exe 14
4.5 KUŘE Za nejpropracovanější a nejúspěšnější z mých aplikací považuji hru KUŘE (v anglické verzi KURE). V ní se pokouším demonstrovat především grafické dovednosti GameMakeru. Po spuštění aplikace se nám zobrazí její úvodní obrazovka s velkým nápisem KURE. Pod ním se vznáší velké červené kuře, které má na těle vepsáno naše dosud nejvyšší dosažené skóre. Níže můžeme vidět tlačítko Play v tenkém rámečku. Po jeho stisknutí začíná samotná hra. Obr. č. 14 Ikona hry KUŘE Obr. č. 15 Uvnitř hry KUŘE Jejím cílem je co nejrychleji klikat na neustále se objevující červená kuřata, dokud jim nevyprchá zdraví označené zeleným health barem. Kliknutím na kuře je hráč odstraní z obrazovky a přičte se mu jeden bod k jeho skóre. Musí přitom být dost rychlý, protože s přibývajícím skóre ubývá zdraví v health barech čím dál rychleji. Pokud se hráči kuře nepodaří odstranit dost rychle, kuře se nadále neudrží ve vzduchu a začne padat. Jakmile takto kuře opustí herní obrazovku, hra končí. Stejná situace nastává, pokud hráč omylem klikne na modré mračící se kuře, které se začne ve hře objevovat po dosažení 25 bodů. Všechna červená kuřata okolo něj pak okamžitě ztratí jejich veškeré zbývající zdraví. Pro dosažení co nejvyššího skóre je tak lepší modrá kuřata ignorovat a nechat je odletět. Jakmile hráč překročí hranici 120 bodů, začnou se ve hře objevovat vzácná zlatá kuřata. Jejich chování je stejné jako chování červených kuřat, s rozdílem, že za jejich odstranění je hráči přičteno pět bodů namísto jednoho. Přestože se hra na první pohled tváří jednoduše, za její tvorbou stálo velké a dlouhodobé úsilí. Každá animace o šedesáti snímcích za sekundu je vytvořena v externím grafickém programu, veškerý design (krom obrázku farmy a venkova) jsem vytvářel sám. Do hry byla též integrována reklama a systém ukládání nejvyššího skóre (vyobrazeno v kuřeti na úvodní obrazovce). 15
4.5.1 Záznam aplikace na Google Play Aplikace KUŘE (v anglické verzi KURE) se na Google Play objevila 21. března 2017. Již několik dní po jejím vydání se hra rozšířila mezi stovky různých androidových zařízení z různých okruhů světa, a toto číslo stále narůstá. Největší úspěch nalezla mezi netrpělivými středoškolskými a vysokoškolskými studenty, kteří si pomocí ní zkracují dlouhá čekání. https://play.google.com/store/apps/details?id=com.stever68.kure Popis aplikace v obchodě: Jednoduchá, zábavná, návyková hra. Značně zkrátí čekání v dlouhé řadě. Pokud vás vaše neodolatelná touha ťukání do kuřat dohání k šílenství, KUŘE je pro vás jako stvořené. S touto velmi jednoduchou návykovou hrou vám čas na nudné přednášce uteče rychleji. Její roztomilý a sofistikovaný design vás dostane. Zkrátka co nejrychleji klikejte na všechna červená kuřata, dokud se dokáží udržet ve vzduchu. Pozor na ta modrá, od těch prsty pryč. Zardousí všechna červená okolo sebe. Schválně, jestli překonáte náš rekord - 330. Anglický popis: Simple, fun, time wasting game. Proves useful when you're waiting in a line. If your irresistible urge of tapping some chickens drives you crazy, KURE was made just for you. It is a very simple addictive game for your time to run faster. You will love the cute sophisticated design and animations. Just tap all the red chickens as fast as you can, before their health bar completely drains. Avoid tapping the blue chickens, as they would instantly kill all the red ones. Bet you can't beat our 330 high-score. Pro účely testování jsem hru vydal i pro Windows. Není však zdaleka tak snadné ji ovládat myší. Zde je k dispozici ke stažení: https://uloz.to/!c4xlfcfdd0kl/kure-exe 16
4.6 Zpeněžení aplikací Chce-li si vývojář GameMakerových aplikací pro Android za svou tvorbu vydělat peníze, nabízejí se mu dvě možnosti, jak toho docílit. Tou první a snazší z nich je zpoplatnit aplikaci přímo z vývojářské konzole na Google Play. Každý, kdo si potom bude chtít aplikaci stáhnout, bude muset zaplatit požadovanou částku. Takový čin však vyžaduje důvěru lidí, kteří o aplikaci mají zájem, a tudíž alespoň minimální popularitu na poli vývojářů aplikací. Obr. č. 16 Vývojářská konzole Google Play Proto je mnohem jistější využít možnosti druhé, tedy vložit do aplikace reklamy. Záleží jen nás, jak agresivní reklamy v aplikaci budou, tzn., jak často se budou v aplikaci zobrazovat. Za každé zobrazení a kliknutí na reklamu se nám na náš Google AdMob účet přičte malá částka (řádově v haléřích). Výdělek za jednotlivá použití aplikace sice není velký, ale s přibývajícími aktivními uživateli se peníze hromadí do vyšší a vyšší částky. GameMaker jako takový bohužel přidání reklam do aplikace nativně nepodporuje a je třeba do něj nejprve nainstalovat rozšíření Google Play Services. Tento proces obvykle kvůli problémům s kompatibilitou zabírá zbytečně mnoho času. Popisované reklamy používají aplikace BMI Kalkulačka, Cognitive Functions for MBTI a KUŘE. Obr. č. 17 Aplikace s reklamou 17
5 KOMUNITA V dnešní době již používá GameMaker Studio rozsáhlá skupina zkušených vývojářů. Někteří z nich jsou ochotni poradit nováčkům s jejich nejrůznějšími problémy. K předávání takovýchto rad nejčastěji dochází na oficiálním fóru gmc.yoyogames.com. Kromě tohoto účelu se fórum též využívá k předávání důležitých oznámení ze strany tvůrců GameMakeru komunitě, k distribuci a zviditelnění výtvorů nadějných programátorů, nebo například k nabídkám prací v oblasti programování v GameMakeru. Má osobní zkušenost s tímto fórem je velmi pozitivní a doporučil bych ho každému, kdo si aktuálně neví rady s jakýmkoliv problémem při vyvíjení své hry. Většinou ani není třeba zakládat nový příspěvek na fóru, jelikož většina častých problémů už zde byla probrána a úspěšně vyřešena. Obr. č. 18 Vzhled fóra 18
5.1 Rozšíření Dalším příkladem pilné práce komunity jsou tzv. rozšíření (extensions). Balíček s rozšířením (extension package) přidává do programu několik dodatečných funkcí, které umožňují vývojářům obohatit svoji hru o úplně nové vymoženosti. S příchodem GameMaker Studia YoYo Games vydalo obchod s rozšířeními (Marketplace), kde mohou vývojáři svá rozšíření zpeněžit. Mezi důležitá a oblíbená rozšíření patří například: Google Play Services umožňuje propojení Android a ios aplikací se službami Google Play a přidání reklam do mobilní aplikace Platformer Engine velice oblíbené rozšíření, zjednodušuje tvorbu plošinových her Free Shaders obohacuje hru o tzv. shadery, které různě manipulují s vizuální částí hry (rozmazání obrazu, pixelizace, odstíny šedi, ) TMC Frame Skip umožňuje přeskakování jednotlivých snímků (kroků), ze kterých je hra poskládána. Výrazně tak zlepší hratelnost na méně výkonných zařízeních. 19
6 ZÁVĚR: Bavilo mě s GameMakerem opět pracovat, tentokrát v rámci této práce. Rok od roku se tento program stává více rozmanitým a užitečným, a tak rozhodně nelituji, že jsem do něj kdysi investoval své peníze. Určitě bych jej doporučil každému začínajícímu programátorovi, ale s radostí i pokročilejšímu vývojáři, který by rád vyzkoušel něco nového. Doufám, že má práce splní svůj účel a přiláká do GameMakerové komunity nové originální tvůrce. Obr. č. 21 logo GameMakeru 20
POUŽITÁ LITERATURA 1 Wikipedie: Otevřená encyklopedie: GameMaker [online]. c2016 [citováno 29. 05. 2016]. Dostupný z WWW: <https://cs.wikipedia.org/w/index.php?title=game_maker&oldid=13497043> 2 Wikipedie: Otevřená encyklopedie: Index tělesné hmotnosti [online]. c2017 [citováno 26. 01. 2017]. Dostupný z WWW: <https://cs.wikipedia.org/w/index.php?title=index_t%c4%9blesn%c3%a9_hmotnosti&ol did=14566358> 3 Wikipedie: Otevřená encyklopedie: Myers-Briggs Type Indicator [online]. c2017 [citováno 2. 02. 2017]. Dostupný z WWW: <https://cs.wikipedia.org/w/index.php?title=myers- Briggs_Type_Indicator&oldid=14592126> 4 FRANČE, Vojtěch. ografologii.blogspot.com [online]. [cit. 23. 2. 2017]. Dostupný na WWW: <http://ografologii.blogspot.cz/2013/03/8-kognitivnich-stylu-mbti.html> 5 Wikipedia contributors, 'Hyper Light Drifter', Wikipedia, The Free Encyclopedia, 22 March 2017, 00:32 UTC, <https://en.wikipedia.org/w/index.php?title=hyper_light_drifter&oldid=771522933> 6 Wikipedia contributors, 'Undertale', Wikipedia, The Free Encyclopedia, 12 March 2017, 04:53 UTC, <https://en.wikipedia.org/w/index.php?title=undertale&oldid=769883755> 7 NEZNÁMÝ. Servimg [online]. [cit. 29. 3. 2017]. Dostupný na WWW: http://i82.servimg.com/u/f82/17/36/75/26/mbti-b10.jpg 21