De grondslagen leggen Het ontwerpdocument schrijven De game verfijnen Assets creëren Je werk publiceren Beginnen met programmeren De game testen
Alle succesvolle games zijn op hun eigen manier uniek, maar bijna allemaal passen ze in een specifiek genre. Beslis welk type game je wil ontwikkelen, en kijk goed naar andere games in hetzelfde genre. Hieronder een paar veelvoorkomende genres.  Arcade Shooter (schietspel) Puzzel Platformer Racen Adventure (avonturenspel) Endless Running (eindeloos-rennenspel) RPG (Role Playing Game – rollenspel) First Person Shooter (schietspel met eerste persoon-gezichtsveld) Verhaal/Manga-JRPG (Japanese Role Playing Game – Japans rollenspel) Tower Defense (Torenverdediging) Horror Fighters (Vechtmachines) Humor Het platform is sterk bepalend voor de ontwikkeling van de game. Het bepaalt bijvoorbeeld de bedieningsvorm van de game; smartphone-games worden bediend door aanraken en bewegen van het touch-screen, PC-games over het algemeen door toetsenbord en muis, en spelconsoles door gamepads.  Er zijn uitzonderingen op deze regels, maar over het algemeen is het gemakkelijker om een game speciaal voor een specifieke bedieningsmethode te ontwikkelen. Als je een game voor de iPhone wil maken, moet je dit via een Mac in de Apple Store publiceren. Het zal maar een paar pagina's lang zijn, maar het is de basis van de speelervaring die je gaat creëren. Het bevat de basisideeën van je game, en laat zien of wat je in gedachten hebt een levensvatbaar computerspel kan worden. Van dit idee zal de rest van de game worden afgeleid. Het gaat hier om een eenvoudige zin die de essentie van de game weergeeft. Lees het vaak terug om te controleren dat de game op het rechte pad blijft. Een paar voorbeelden van onderliggende ideeën:  deze game bootst de economie van een ruimtestation na in deze game speel je een levende auto deze game toetst de reflexen van de speler Deze eigenschappen onderscheiden jouw game van alle andere in hetzelfde genre. Maak eerst een lijstje van je ideeën en concepten. Noteer die concepten dan in zinnen in de actieve vorm. Probeer tussen de 5-15 eigenschappen te bedenken. Ter voorbeeld:  concept: de bouw van een ruimtestation. eigenschap: bouw en onderhoud je eigen ruimtestation concept: schade veroorzaakt door planetoïden eigenschap: voer een overlevingsstrijd tegen gevaren in de omgeving, zoals planetoïden, zonnevlammen en kometen. Als je eerst een lijstje van deze eigenschappen maakt kunnen deze later in het ontwerpdocument worden uitgewerkt. Door je eigenschappen in het begin op te schrijven houd je je project gefocust en voorkom je “feature-creep”: het steeds maar toevoegen van nieuwe ideeën of eigenschappen gedurende het proces. Blijf de eigenschappen herzien tot je overtuigd bent dat ze de game die je in gedachten hebt goed weergeven. Stop het voorlopige ontwerp in de kast en denk er gedurende zo'n twee weken even niet aan. Daarna kan je het weer met frisse ogen bekijken. Dit helpt je te bepalen of je verder kan met het project, of dat je het moet herzien. Het ontwerpdocument is de ruggengraat van je computerspel. Het bevat de uitgebreide beschrijvingen van de mechanismen, plot, plaats van handeling, esthetisch ontwerp enz. De opmaak van het document is minder belangrijk dan de inhoud.  Het belang van ontwerpdocumenten is nog groter als je een team van programmeurs en ontwerpers leidt. Zorg dat het document op hen gericht is, niet op de eindgebruiker. Wees concreet en beschrijf zeer uitvoerig hoe de game in elkaar moet steken. Niet voor iedere game wordt een ontwerpdocument gecreëerd, en ieder ontwerpdocument is anders. De onderstaande stappen moet je beschouwen als een richtlijn, waaraan je zelf een invulling geeft die past bij jouw game. Ieder onderdeel van de game moet in de inhoudsopgave genoemd worden. De enige uitzondering hierop is de plot, tenzij die in grondslag verweven is met het spelmechanisme.  Pak de inhoudsopgave op dezelfde manier aan als een gamehandleiding. Begin met de overkoepelende secties, zoals Aanmaak van Personages, Vechtmechanisme, en Hoofdinterface, en verdeel die secties vervolgens onder in subsecties. Beschouw de inhoudsopgave als een overzicht van de game. Elk punt van de inhoudsopgave wordt later uitvoerig behandeld. Na de inhoudsopgave beschrijf je de spelmechanismen gedetailleerd. Neem de tijd om ieder aspect te behandelen zodat er geen verwarring optreedt bij het programmeren. Ieder onderdeel van de spelmechanismen moet minutieus worden beschreven, zodat het zonder verwarring kan worden geïmplementeerd. Afhankelijk van hoe je het aanpakt, kan het ontwerpen van een game een bijzonder collaboratief proces zijn. De inzichten van anderen kunnen je gefocust houden op de game, en je wijzen op aspecten die nog niet goed doordacht zijn. Speel iedere keer als je een nieuw aspect aan de game toevoegt zodat je het plezierig en samenhangend kan houden. Verfijn onderdelen of ideeën die niet goed aanvoelen of slecht zijn uitgevoerd. Speel de hele game als alle levels of puzzels af zijn, en let erop dat het van begin tot eind vermaak biedt. Houd tijdens het gehele ontwikkelingsproces in de gaten dat je game aan de idee blijft voldoen. Zorg dat je niet afwijkt van je lijst van kenmerkende eigenschappen, en dat je niet overvoerd raakt door nieuwe toevoegingen. Bekijk je afbeeldingen, geluid, en spelontwerp keer op keer met een kritisch oog om ze bij te schaven en de unieke kanten van je game te benadrukken. Hoe snel dat bijschaven gaat hangt af van de visuele stijl die je hebt gekozen. Hoe de afbeeldingen ontwikkeld moeten worden kan enorm verschillen al naar gelang de omvang van je project. Sommige games hebben alleen simpele vormen en kleuren, andere uitgebreide werelden gecreëerd door omvangrijke teams van visuele kunstenaars en geluidsontwerpers. Wees realistisch bij het bepalen wat je wil bereiken met de assets van de game, en huur aan de hand daarvan personeel in.  De meeste onafhankelijke games worden door kleine teams gemaakt, en vaak zelfs door een enkele persoon. Als je het hele project alleen doet kan je een enorm beslag op je tijd verwachten, vooral als je ook de assets zelf maakt. Via de ontwikkelaarscommunity kan je op het internet gratis assets bemachtigen. Let er altijd op dat je geen auteursrecht overschrijdt. Om een idee te krijgen van de visuele esthetiek van de game kan je de afbeeldingen in het prototype beginnen te integreren, en vandaar het prototype tot de echte game uitbreiden.  Je hebt een keuze uit verschillende visuele stijlen. Onafhankelijke ontwikkelaars gebruiken vaak pixels (opzettelijk retro), aangezien het de snelste en goedkoopste visuele stijl is die nog steeds een goed uitziende game produceert.  Als je over meer tijd en mankracht beschikt, kan je eventueel ook aan 3D-afbeeldingen denken. Simpele 3D-modellen kan je in je eentje maken, maar ingewikkelde details nemen een behoorlijke tijd in beslag. Bij 3D-modellen moet bovenop het model zelf ook nog eens textuur worden aangebracht. Als je eenmaal afbeeldingen hebt die je kan gebruiken, kan je beginnen de game zelf op te bouwen. Afhankelijk van het genre van de game moet je wellicht ook levels (niveaus) of speelgebieden creëren. Als je een puzzelgame maakt kan je nu beginnen je puzzels te ontwerpen. Afhankelijk van je visuele stijl kan je verschillende programma's gebruiken om je art assets te creëren. Een paar populaire programma's zijn:  Blender – Dit opensourceprogramma is één van de populairste 3D-modelleringsprogramma's. Op het Internet kan je een enorme hoeveelheid handleidingen vinden die je snel op weg kunnen helpen.  Photoshop – Dit programma is een absolute must voor het aanbrengen van textuur en ook voor het maken van de meeste 2D-afbeeldingen. Het is ook prijzig, dus je krap bij kas zit is GIMP wellicht een goed alternatief – het is opensource, gratis en biedt bijna dezelfde functionaliteit als Photoshop. Paint.net – Een opensource-alternatief voor Paint Shop Pro waarmee je gratis 2D-afbeeldingen kan maken. Het is een bijzonder goed programma voor het creëren van 2D-pixelafbeeldingen. Geluidsontwerp is een essentieel onderdeel van het opgaan in de game. In hoeverre de speler een band opbouwt met de game hangt af van of er wel of geen muziek is, hoe en wanneer geluidseffecten worden toegepast, en gesproken dialoog.  Op het internet zijn uitstekende gratis geluidsopnames en nieuwe muziek te vinden, die je kan gebruiken als je een klein budget hebt of een onafhankelijke ontwikkelaar bent. Maak je eigen geluidseffecten met voorwerpen in huis. Iedere engine is toegespitst op specifieke platformen, en sommige hebben verschillende licenties nodig om naar verschillende platformen te mogen publiceren. Ter voorbeeld: met de standaardversie van Game Studio kan je naar Windows en Mac OS X publiceren, maar voor een mobiel platform moet je tegen extra kosten de Pro versie aanschaffen. Begin, naarmate de publicatiedatum dichterbij komt, aandacht voor de game te creëren. Plaats screenshots en videoclips van de gameplay op populaire gamingfora. Neem contact op met websites die gespecialiseerd zijn in gamingnieuws, en laat ze weten dat je game binnenkort gepubliceerd wordt (zorg dat je ze een samenvatting van de game geeft, evenals gegevens over waar de game te koop is, en tegen welke prijs). Bouw tijdens het ontwikkelingsproces al een gamewebsite zodat je volgers kan aantrekken. Een forum voor de game is een uitstekende manier om fans met elkaar in contact te brengen, en als je je site regelmatig actualiseert kan je steeds meer interesse creëren. Sommige onafhankelijke ontwikkelaars bieden hun game via hun eigen website aan, maar bij grote vraag kan je een behoorlijk bedrag kwijtraken aan de kosten van hosting. Bovendien raken de meeste webhosts overbelast als de game populair wordt.  Een aantal populaire distributiecentra voor het publiceren van onafhankelijke games op PC en Mac OS X zijn:  Steam Desura Humble Store GOG Mobiele games worden over het algemeen gedistribueerd via hun betreffende winkels (Apple App Store, Google Play Store enz.). Dat geldt ook voor consolegames (Xbox Live, PlayStation Network, enz.). De vergoedingen die verschillende dienstverleners vragen voor het verkopen van je game variëren. Ga na welke voor jou geschikt zijn. De meeste dienstverleners hebben vertegenwoordigers die rechtstreeks met jou als ontwikkelaar kunnen praten. Ondersteun je game na publicatie zo veel als financieel mogelijk, door bugs te corrigeren en nieuw materiaal toe te voegen. Doordat we in een tijd van digitale distributie leven is het tegenwoordig een stuk sneller om games te actualiseren. Wanneer het massapubliek eenmaal toegang krijgt tot je game komen er ongetwijfeld bugs tevoorschijn; corrigeer deze zo veel mogelijk en zo snel mogelijk. De engine is de basis van de game. Het bestaat uit een groot aantal programmeerhulpmiddelen die het ontwikkelen van de game vergemakkelijken. Het kost een stuk minder tijd, en het is veel minder ingewikkeld om een game te ontwikkelen met behulp van een bestaande engine, dan om een hele nieuwe te bouwen. Er zijn verscheidene engines beschikbaar voor onafhankelijke ontwikkelaars.  Met een engine is het stukken eenvoudiger om afbeeldingen, geluid en KI te manipuleren. Iedere engine heeft zo zijn sterke en zwakke punten. Sommige zijn beter geschikt voor 2D-afbeeldingen, andere voor 3D-afbeeldingen. Sommige engines vereisen zeer veel programmeerkennis; voor andere hoef je zelfs helemaal geen programmeerervaring te hebben. Populaire onafhankelijke engines zijn:  GameMaker: Studio – een van de populairste 2D-game engines. Unity – een 3D-engine die populariteit geniet door zijn gebruiksgemak en portabiliteit. RPG Maker VX – een script-engine speciaal ontwikkeld voor 2D-RPG's in de traditionele JRPG-opmaak. Unreal Development Kit – een 3D-engine die zeer breed ingezet kan worden. Source – een bijzonder populaire 3D-engine die doorlopend wordt geactualiseerd en gemodificeerd. Project Spark – een geoptimaliseerde 3D-engine gericht op de gemiddelde gebruiker. Afhankelijk van welke engine je kiest, kan er een flinke hoeveelheid programmeerwerk bij komen kijken. Het vergt tijd om met zelfs de eenvoudigste engines te leren omgaan. Als je niet kan programmeren, leer het of huur iemand in.  Vervolgens vorm je je team. Als je niet kan programmeren, moet je allereerst een programmeur inhuren. Het visuele ontwerp en geluidsontwerp komen later wel; voordat het project verder kan moet je eerst een werkend prototype hebben. Er bestaat een grote gemeenschap (community) van onafhankelijke gameontwikkelaars met wie je kan netwerken. Deze ontwikkelaars sluiten zich om verschillende redenen en met verschillende beloningswensen bij projecten aan. Hier kan een sterk ontwerpdocument van groot voordeel zijn, daar het bewijst hoe toegewijd je aan je idee bent. Als je eenmaal vertrouwd bent met je gekozen engine, bouw dan een prototype van de game. Dit prototype is een eerste toets van hoe goed de basisfunctionaliteit van de game werkt. Je hebt voor het prototype nog geen afbeeldingen of geluid nodig: kleine, eenvoudige plaatsbewaarders (zoals een blokje of een lucifermannetje) en een klein testgebied volstaan.  Blijf het prototype keer op keer toetsen en verfijnen tot je zeker weet dat het spelen ervan vermaak biedt. Noteer alle aspecten die niet werken of gewoon niet goed aanvoelen, en pas de onderliggende mechanismen aan. Als het prototype niet met plezier te spelen is, zal het eindspel dat waarschijnlijk ook niet zijn. Het zal altijd gebeuren dat aspecten van de game die in eerste instantie simpel of gemakkelijk leken, toch niet functioneren tijdens de ontwikkelingsfase. Wees erop voorbereid dat het prototype erg vaak zal veranderen door het sleutelen aan onderdelen die al dan niet naar behoren werken. De basisfunctionaliteit van de game is de interactie van de speler met de game via een bepaalde bedieningsmethode. Gebruik het prototype om de best mogelijke bediening te ontwikkelen. Games met slecht geïmplementeerde bediening zijn een bron van frustratie voor spelers. Als de bediening daarentegen uitstekend werkt, wordt de speler juist beloond voor zijn vaardigheden. Als je game eenmaal van begin tot eind geprogrammeerd is, is het tijd om te proberen het de fout in de laten gaan. Om zoveel mogelijk mensen in staat te stellen de game te spelen is het noodzakelijk dat je de bugs in je game vindt en corrigeert. Letterlijk iedere interactie die een speler met de game kan hebben moet getest worden. Voer voortdurend aanvallen uit op de spelregels om je ervan te verzekeren dat een speler ze niet kan omzeilen of breken. Bugtesten kan bijzonder veel tijd in beslag nemen, even lang als het creëren van de game. Hoe meer mensen je kunnen helpen met testen, des te meer problemen je kan vinden en corrigeren. Als je een lange lijst van bugs hebt, en onvoldoende tijd om alles te corrigeren, pak dan eerst de bugs aan die de ernstigste schade aan je game aanrichten (“showstoppers”). Als je bijvoorbeeld een bug hebt waardoor de speler een oneindig hoge score kan behalen in een scoregame, hoor je die direct te corrigeren. Vraag je vrienden om de game uit te proberen, en observeer hoe ze met de opdrachten en de spelwereld omgaan. Tien tegen één dat ze dingen uitproberen die je nooit verwacht had.
Kies je genre. Kies je platform. Stel het voorlopige ontwerp op schrift. Begin met het onderliggende idee. Noteer je kenmerkende eigenschappen (features). Las een pauze in. Hierin komen uitgebreide en zeer gedetailleerde beschrijvingen te staan. De inhoudsopgave. Beschrijf ieder onderdeel van je document tot in de puntjes. Laat het door iemand anders, of door je team nalezen. Speel je game zo vaak mogelijk. Blijf gefocust op de onderliggende idee. Blijf schaven. Denk na over wat je project nodig heeft. Maak een ruwe schets van een paar van de afbeeldingen. Ontwerp de gamewereld of gamestructuur. Ontwikkel je art assets. Neem je geluidsassets op. Onderzoek de regels van je engine voor het publiceren van gecompileerde programma's. Creëer een hype rond je game. Bedenk hoe je de game wil distribueren. Bied ondersteuning (support) aan voor je game. Beslis welke engine je wil gebruiken. Leer de engine kennen, of zoek iemand die al over deze kennis beschikt. Ontwikkel een prototype. Verfijn de bediening. Zoek naar bugs (programmeerfouten). Verricht ongebruikelijke handelingen. Rangschik het corrigeren van de bugs aan de hand van hun prioriteit. Observeer hoe andere mensen de game spelen.
https://www.wikihow.com/Make-Your-Own-Video-Game https://www.wikihow.com/Make-Your-Own-Video-Game https://www.wikihow.com/Make-Your-Own-Video-Game https://www.wikihow.com/Make-Your-Own-Video-Game https://www.wikihow.com/Make-Your-Own-Video-Game https://www.wikihow.com/Make-Your-Own-Video-Game https://www.wikihow.com/Make-Your-Own-Video-Game
Laying the Foundations Writing the Design Document Putting it All Together Creating Assets Releasing Your Work Starting to Program Testing the Game