Bad Game + Bad Game = Goede leerervaring

Wat je gaat creëren

Voor mijn One Game a Month-projecten heb ik ervoor gekozen om een ​​unieke uitdaging aan te gaan. Elke andere maand kies ik een "slecht" videogame en maak het opnieuw in iets speelbaars en hopelijk zelfs vermakelijk.

Voor mei besloot ik de NES-klassieke Hyldide opnieuw te maken en te combineren met zijn officiële remake, Virtual Hydlide. Samen zouden ze creëren Vrijwel Super Hydlide Special!

Terwijl Hydlide wordt beschouwd als een baanbrekende klassieker in Japan, maakte de late Amerikaanse release het een spotgoedkope spot voor AVGN. Virtual Hydlide, aan de andere kant, was vrijwel universeel gepand. In het beste geval was het een slecht geïmplementeerd spel met enkele goede ideeën.

  • AVGN op Hydlide
  • ProJared On Virtual Hydlide

Door een spel te combineren dat de helft van de wereld haat met een spel dat de hele wereld haat ... Wat zou er mis kunnen gaan?

Het plan

Een van de grootste problemen die spelers hebben met Hydlide is het vechtsysteem. Lang voor Zelda's spannende mix van actie en onderzoek, draaide Hydlide helemaal over het tegen dingen aanlopen.

Nee, ik maak geen grapje.

Om een ​​vijand in de waterglijbaan aan te vallen, loop je hem tegen het lijf. Jij en de vijand elke trade blaast elke keer dat je op zijn tegel stapt of andersom. De diepste strategie die u kunt toepassen, is om de EEN om de aanvalsmodus te activeren. In de aanvalsmodus legt de speler meer schade aan, maar lijdt ook meer. Als het erop lijkt dat je de strijd zou verliezen, kun je gewoon weggaan en wachten tot je HP zich herstelt.

Gelukkig hebben we een genre van games dat geliefd is ondanks het vergelijkbare gebrek aan gameplay: de MMO. 

In het klassieke MMO-formaat kiest de speler een vijand en ruilt automatisch, totdat de speler sterft of de vijand sterft. Dit was eigenlijk het kernconcept dat ik gebruikte toen ik aan deze remake begon, omdat het was opgelost veel kwesties:

  • Als ik deze eerste persoon zou maken, zou ik geen aangepaste aanval-animaties nodig hebben en zou ik me in de Virtual Hydlide-stijl van de gameplay kunnen integreren.
  • Omdat gevechtsstijl MMO-gevechtsstijlen vergelijkbaar zijn met de oude stijl, kon ik de statistieken exact hetzelfde houden en de oorspronkelijke balans behouden.
  • Ik zou zelfs onderscheid kunnen maken tussen de Attack Mode en Defence Mode, en ervoor zorgen dat het hetzelfde blijft.

Het andere grote voordeel is dat ik de vorige maand aan een 3D-sprite-engine had gewerkt, en dit zou me in staat stellen om de originele NES-sprites in een 3D-wereld te gebruiken!

Opmerking: de gameplay-afbeeldingen in dit artikel gebruiken aangepaste sprites om auteursrechtproblemen te voorkomen. Vrijwel Super Hydlide Special maakt gebruik van de originele NES-sprites.

Ten slotte kon ik met de sprite-engine kaarten van een bitmap direct importeren. Om de kaarten van mijn spel te maken, hoefde ik alleen de oorspronkelijke kaarten met effen kleuren te traceren en de afbeelding te verkleinen tot een redelijk formaat. De motor doet de rest.

De daadwerkelijke wereldkaart waarin mijn spel wordt geladen

Terugkijkend was het eigenlijk een behoorlijk goed plan. Maar je weet wat ze zeggen over de beste plannen ...

Wat ging vreselijk fout

Ik heb mijn motor enorm overschat

Ik had mijn motor gebouwd voor old-school kerkercrawls. De grootste kaart die ik had gebouwd was ongeveer 30x30. De kleinste die ik de wereldkaart van Hydlide kon maken met behoud van dat uitgebreide gevoel was 83x83. 

Bij bijna drie keer de geteste maat leidde dit tot een lange laadvolgorde. Dit is problematisch, omdat de kerkers niet groot zijn en je de wereldkaart vaak zult laden. Uiteindelijk heb ik een paar dagen besteed aan het implementeren van een streamingkaart, maar pas later heb ik de functie uitgeschakeld omdat ik me realiseerde dat de laadschermen een goede manier waren om de speler informatie te geven die ze nodig hadden.

De dagen die ik besteedde aan het maken van de kaartstroom waren verspild. Als ik de tijd had genomen om na te denken over de dingen voordat ik het probleem probeerde op te lossen, had ik tijd en stress bespaard.

De andere reeks problemen kwam van het aanpassen van de engine om een ​​looping-kaart te gebruiken. De tegels die ik gebruikte waren erg klein en ik moest tekenen lot van deze om een ​​redelijke trekkingsafstand te vullen. Dit leidde tot zichtbare vertraging omdat de kaarttegels eromheen liepen.

Mijn oplossing? Ik heb meer tegels geladen!

Tijdens het laadscherm heb ik ongeveer twee keer de tegels geladen die ik nodig had om de trekkingsafstand te vullen. Dit betekent dat, terwijl u loopt, de kaart al volledig is geladen en op zijn plaats is, maar tegels in de verte in realtime worden geladen.

Op dit punt heb ik het systeem aangepast om slechts een paar tegels per frame te laden. Voor de speler lijkt het alsof de kaart naadloos rond stroomt, maar buiten de camera zijn er gaten in de wereld waar het eigenlijk een beetje tegelijk wordt gebouwd.


Over het algemeen werkte de motor, maar hij was zeker niet zo soepel als ik had bedoeld. Ik wilde dat mijn kernspel door Dag Zeven zou worden geïmplementeerd, maar kwam pas bijna een week later ten einde.

Ik onderschat de conversie naar 3D

Omdat ik zoveel tijd besteedde aan het laten werken van de wereldkaart, heb ik dit tweede belangrijke probleem niet voorzien tot ik me goed in het project verdiepte. Ik heb genoeg ervaring dat ik het op anderhalve kilometer had moeten zien aankomen.

De kerkers in de oorspronkelijke waterglijbaan zijn doolhoven: de originele kerkerkaarten

Het was te vergeven in het originele spel, omdat je met een overzicht in vogelvlucht de juiste paden kunt zien. Maar als een first-person-game zou het direct frustrerend zijn om de kaarten van de kerkers direct te gebruiken zoals ik had gepland.

Ik kon de niveaus niet importeren zoals ik had gepland, en dus moest ik nieuwe maken. Hoewel het maken van korte en functionele kaarten geen groot probleem was, was het een niet-geplande uitgave.

Ik was overmoedig en dit maakte me dom

Twee maanden eerder was mijn vorige remake-project, Ghostbusters Inc., geweldig vanuit een werkstandpunt. Alles viel op zijn plek en uiteindelijk heb ik bijna alle functies geïmplementeerd waar ik op had gehoopt, terwijl ik nog steeds een redelijk schema hanteerde.

Mijn laatste # 1GAM-project verliep ook uiterst soepel. Ik heb Tactical Strike Micro in een week volledig ontworpen en geïmplementeerd. Het had dezelfde motor als Hydlide gebruikt en alles werkte goed.

Ik ging deze maand naar binnen met goede projecten over het brein, en ik negeerde een van mijn belangrijkste hulpmiddelen: planning!

Ik ben meestal een fanatiekeling wanneer ik de tijd neem om een ​​schema op te schrijven, functies en afhankelijkheden te plannen en alles op de juiste manier prioriteit te geven. Ik heb gezien en heb vaak deelgenomen aan de stompzinnigheid die komt van "winging it".

Op de 13e> implementeerde ik nog steeds de belangrijkste gameplay-functies die nu geïmplementeerd of afgekapt zouden moeten zijn. Stress begon me te raken en ik voelde de ontwikkelaarstunnelvisie over me komen. Ik was hard aan het werk, ondanks het zicht op het grote geheel uit het oog te verliezen.

Eerlijk gezegd wist ik niet zeker of ik op tijd klaar zou zijn. Een halve maand op een klein project lijkt een lange tijd, maar er moest veel gebeuren, en het ging niet goed.

Ik waarschuw mensen vaak voor de gevaren van blinde passie, maar dit project was een goede herinnering dat ik er niet bovenuit sta.

De goede

Ik heb geen paniek

Ik heb genoeg met mezelf samengewerkt om te weten dat dit een prestatie is. Wanneer dingen naar het zuiden gaan, ga ik meestal een puur reactieve emotionele toestand in - zeer effectief, maar misleidend. Maar ik heb dat hier niet gedaan.

Op de 13e realiseerde ik me dat ik problemen had en ben ik teruggegaan om mijn proces te beoordelen. Het duurde niet lang om te zien dat ik zo gefocust was op het besturen van het stuurwiel dat ik niet naar de weg keek. Ik loste problemen op zonder rekening te houden met de manier waarop ze in het uiteindelijke product passen.

Ik nam de hele dag van de 14e af van de ontwikkeling om een ​​goed plan te schetsen:

  • Data waarop elk onderdeel gereed moet zijn.
  • Een geprioriteerde lijst met functies en bugfixes.
  • Vragen waar ik aan moest denken, zoals "Hoe kan ik de speler helpen zonder NPC's te begeleiden?" Met deze lijst wist ik waar ik aan moest denken als ik niet aan het werk was.

Toen het plan gereed was, ging ik zitten en ontspande ik de rest van de avond. Ik wist dat stress mijn denken begon te beïnvloeden en ik moest mijn hoofd opruimen.

Vanaf de 15e kwam mijn productiviteit omhoog. Ik heb meer bereikt in de komende drie dagen dan in de vorige week.

De stijl

Ik was verbaasd over hoe goed de 2D NES-sprites er in de 3D-wereld uitzagen. Alle vijanden, kerkerwanden en terreintegels komen rechtstreeks uit het NES-spel en toch springen ze eruit en zien ze er uniek uit. 


Hoewel ik in de loop der jaren betere games heb ontworpen, leek deze de aandacht van de mensen te trekken. Ik heb eigenlijk veel positieve feedback ontvangen over hoe de game eruit ziet.

Mijn vroege veronderstellingen waren goed

Gelukkig waren de meeste van mijn oorspronkelijke aannames geldig. Het vechtsysteem werkte prima en was redelijk in balans, en zelfs met de gebreken deed de motor wat ik moest doen.

Ondanks alles dat slecht ging, is het spel leuk.

Hoewel ik het vechtsysteem heb aangepast om meer actiegericht en minder lastig te zijn, had ik een sterke start dankzij de links naar het originele spel.

My Dev Network

Hoewel dit een soloproject was dat ik alleen bouwde, deed ik het niet alleen. Veel van mijn vrienden zijn ervaren game-ontwikkelaars en ze waren een enorme hulp.

Het gevechtsherontwerp kwam nadat ik met mijn vriend Josh had gesproken over het gevecht in MMO-stijl. Hij drukte zijn bezorgdheid uit dat het niet spannend genoeg zou zijn. Naarmate het project vorderde, besefte ik dat hij gelijk had en dat ik moest afwijken van de oorspronkelijke visie.

Hetzelfde geldt voor andere functies, zoals de 'sprookjesgids' die ik heb geïmplementeerd nadat mijn vriend Rob de weg kwijt was geraakt, of de nieuwe aanvalsanimaties die ik codeerde bij zijn waarneming dat ik de sprites gewoon naar fatsoenlijk effect kon draaien. Zelfs Twitter kwam mij te hulp, door mij te koppelen aan informatie die ik nodig had om de speler zonder woorden te helpen.

Je kunt de waarde van mensen om mee te praten niet onderschatten, zelfs niet bij soloprojecten.

Mijn grootste afhaalmaaltijden

Papierwerk en planning zijn vervelend en zelden nauwkeurig, maar ze zijn nog steeds nuttig.

De tijd nemen om je plan op papier te zetten, dwingt je om het project als geheel te bekijken. Terwijl je het opsplitst in specifieke functies, zie je welke stukjes op elkaar zijn aangewezen, zodat je ze in een effectieve volgorde kunt aanpakken. Vervolgens kunt u in de zone tussen taken blijven omdat u niet hoeft te schakelen tussen taken gegevens denken en Grote foto het denken.

Het andere handige voordeel is dat het hebben van een lijst betekent dat je deze tijdens de ontwikkeling kunt toevoegen. Als u een bug of functie tegenkomt die moet worden geïmplementeerd, hebt u een plaats om het op te schrijven en georganiseerd te houden.

Ik dacht dat ik weg kon komen met het vermijden van de saaiheid, maar ik had het mis. Ongeacht hoe ervaren ik ook ben, ik ben niet immuun voor fouten. Pre-productie is een belangrijke stap, ongeacht hoe goed je denkt dat je bent.

Je kunt Virtually Super Hydlide Special Online spelen, of mij volgen op Twitter voor meer retro remakes.