For mine One Game a Month-prosjekter har jeg valgt å utføre en unik utfordring. Hver annen måned velger jeg ett "dårlig" videospill og gjenoppretter det til noe spillbart og forhåpentligvis selv underholdende.
I mai bestemte jeg meg for å gjenoppta NES klassisk Hyldide, og kombinere den med sin offisielle nyskaping, Virtual Hydlide. Sammen ville de skape Nesten Super Hydlide Special!
Mens Hydlide regnes som en banebrytende klassiker i Japan, gjorde den sene amerikanske utgivelsen det til en latterpremie for AVGN. Virtual Hydlide, derimot, var ganske mye universal panned. I beste fall var det et dårlig implementert spill med noen gode ideer.
Kombinere et spill som halvparten av verden hater med et spill, hater hele verden ... Hva kan muligens gå galt?
En av de største problemene spillerne har med Hydlide er kampsystemet. Langt før Zeldas spennende blanding av handling og utforskning handlet Hydlide om å gå inn i ting.
Nei, jeg tuller ikke.
Å angripe en fiende i Hydlide, går inn i ham. Du og fienden hver handel blåser hver gang du går inn på flisen eller omvendt. Den dypeste strategien du kan søke er å holde EN knappen for å angi angrepsmodus. I angrepsmodus påvirker spilleren mer skade, men lider også mer. Hvis det ser ut som om du kanskje mister kampen, kan du bare flytte bort og vente på at HP skal gjenopprette.
Heldigvis har vi en sjanger av spill som er elskede til tross for dens lignende mangel på gameplay: MMO.
I klassisk MMO-format velger spilleren en målfeil og handler blåses automatisk, til enten spilleren dør eller fienden dør. Dette var faktisk kjernekonseptet jeg brukte da jeg startet denne nyopprettingen, fordi den løst mange problemer:
Den andre store fordelen er at jeg hadde jobbet på en 3D-sprite-motor den forrige måneden, og dette ville tillate meg å bruke den opprinnelige NES sprites i en 3D-verden!
Merk: Spillbildene i denne artikkelen bruker egendefinerte sprites for å unngå opphavsrettsproblemer. Nesten Super Hydlide Special bruker den opprinnelige NES sprites.
Endelig tillater sprite-motoren meg å importere kart fra en direkte fra en bitmap. For å lage min spills kart var alt jeg trengte å gjøre, å spore de opprinnelige kartene med solide farger og krympe bildet til en rimelig størrelse. Motoren gjør resten.
Den egentlige verdenskart mitt spill laster innSer tilbake, det var egentlig en ganske god plan. Men du vet hva de sier om de bestlagte planene ...
Jeg hadde bygd min motor for dungeon crawls på grunnskolen. Det største kartet jeg hadde bygget var omtrent 30x30. Den minste jeg kunne lage Hydlides verdens kart mens du holdt den ekspansive følelsen var 83x83.
Ved nesten tre ganger den testede størrelsen, fører dette til en lang lastesekvens. Dette er problematisk, fordi fangehullene ikke er store, og du vil ofte laste verdenskartet. Jeg endte med å tilbringe noen dager med å implementere et streaming-kort, bare for å kutte funksjonen senere fordi jeg skjønte at lasteskjermer var en god måte å gi spilleren informasjonen de trengte.
Dagen jeg brukte til å lage kartstrømmen, var bortkastet. Hvis jeg hadde tatt deg tid til å tenke på ting før du forsøkte å jobbe gjennom problemet, hadde jeg spart tid og stress.
Det andre settet av problemer kom fra å endre motoren for å bruke et looping kart. Flisene som jeg brukte var veldig små og jeg trengte å tegne en mye av disse for å fylle en rimelig trekkavstand. Dette førte til synlig avmatning da kartene fløy rundt.
Min løsning? Jeg lastet flere fliser!
Under lasteskjermen lastet jeg om to ganger de fliser jeg trengte for å fylle trekkavstanden. Dette betyr at kartet, når du går, allerede er fullt lastet og på plass, men fliser i avstand lastes i sanntid.
På dette tidspunktet endret jeg systemet for å laste bare noen få fliser hver ramme. Til spilleren ser det ut til at kartet strekker seg sømløst, men utover kameraet er det hull i verden hvor det faktisk bygges litt om gangen.
Samlet arbeidet motoren, men det var sikkert ikke så glatt som jeg hadde tenkt. Jeg hadde ønsket at kjernen min skulle bli implementert av Day Seven, men ble faktisk ikke ferdig før nesten en uke senere.
Fordi jeg satte så mye tid på å få verdenskartet til å jobbe, forutså jeg ikke dette andre hovedproblemet før jeg var godt inn i prosjektet. Jeg har nok erfaring at jeg burde ha sett det komme en kilometer unna.
Fangehullene i det opprinnelige Hydlide er labyrinter: Original Dungeon Maps
Det var tilgivelig i det opprinnelige spillet, fordi fugleperspektivet gir deg mulighet til å se de riktige banene. Men som et førstepersonspill, som direkte brukte fangehullernes kart som jeg hadde planlagt ville gjøre ting frustrerende.
Jeg kunne ikke importere nivåene som jeg hadde planlagt, og så måtte jeg håndgjøre nye. Mens du opprettet korte og funksjonelle kart, var det ikke et stort problem, det var en uplanlagt utgift.
To måneder tidligere hadde mitt tidligere remake-prosjekt, Ghostbusters Inc., vært fantastisk fra et arbeidsperspektiv. Alt falt på plass, og jeg endte med å implementere nesten alle funksjonene jeg hadde håpet på, mens jeg fortsatt jobbet med en rimelig tidsplan.
Mitt siste # 1GAM-prosjekt hadde gått ekstremt jevnt også. Jeg har designet og implementert Tactical Strike Micro i en uke. Den hadde brukt samme motor som Hydlide, og alt fungerte bra.
Jeg gikk inn i denne måneden med gode prosjekter på hjernen, og jeg ignorert et av mine viktigste verktøy: planlegger!
Jeg er vanligvis en fanatiker om å ta deg tid til å skrive ned en tidsplan, planlegge funksjoner og avhengigheter, og prioritere alt riktig. Jeg har sett og ofte tatt del i dumheten som kommer fra "vinge det".
På den 13.> var jeg fremdeles i ferd med å implementere kjernespillfunksjoner som burde vært enten implementert eller kuttet av nå. Stress begynte å komme til meg, og jeg kunne føle utviklertunnelsynet som kom over meg. Jeg jobbet hardt, til tross for å ha mistet synet av det store bildet.
Ærlig talt var jeg ikke sikker på at jeg skulle fullføre i tide. En halv måned på et lite prosjekt virker som en lang tid, men det var mye som måtte gjøres, og det gikk ikke bra.
Jeg advarer folk ofte om farene med blind lidenskap, men dette prosjektet var en fin påminnelse om at jeg ikke er over den.
Jeg har jobbet med meg selv nok til å vite at dette er en prestasjon. Når tingene går sydover, går jeg vanligvis inn i en rent reaktiv følelsesmessig tilstand - svært effektiv, men misforstått. Men det gjorde jeg ikke her.
Den 13. innså jeg at jeg var i trøbbel, og jeg gikk tilbake for å gjennomgå prosessen min. Det tok ikke lang tid å se at jeg var så fokusert på å kontrollere rattet at jeg ikke så på veien. Jeg var å fikse problemer uten hensyn til hvordan de passer inn i sluttproduktet.
Jeg tok hele dagen av 14. av fra utvikling for å skissere en riktig plan:
Da planen var klar satte jeg seg og slapp av for resten av kvelden. Jeg visste at stresset hadde begynt å påvirke min tenkning og jeg trengte å rydde hodet mitt.
Fra og med den 15. flyttet produktiviteten min. Jeg oppnådde mer i de neste tre dagene enn jeg hadde i forrige uke.
Jeg ble overrasket over hvor god 2D NES sprites så i 3D-verdenen. Alle fiender, dungeon vegger og terreng fliser er rett fra NES spillet, men de skiller seg ut og gjør spillet se unikt ut..
Mens jeg har designet bedre spill gjennom årene, så syntes dette å få folk til å se øynene. Jeg mottok faktisk mye positiv tilbakemelding på hvordan spillet ser ut.
Heldigvis var de fleste av mine opprinnelige antagelser gyldige. Kampsystemet fungerte bra og var rimelig balansert, og selv med feilene, gjorde motoren det jeg trengte det å gjøre.
Til tross for alt som gikk dårlig, er spillet morsomt.
Mens jeg endret kampsystemet for å være mer actionorientert og mindre av en slipe, hadde jeg en sterk start takket være koblingene til det opprinnelige spillet.
Selv om dette var et soloprojekt som jeg bygget på egen hånd, gjorde jeg egentlig ikke det alene. Mange av vennene mine er erfarne spillutviklere, og de var en enorm hjelp.
Kamputformingen kom etter å ha snakket med min venn Josh om MMO-stilkampen. Han uttrykte bekymring for at det ikke ville være spennende nok. Da prosjektet fortsatte, innså jeg at han hadde rett, og at jeg måtte gå fra den opprinnelige visjonen.
Det samme gjelder for andre funksjoner, for eksempel "feguide" jeg implementerte etter at min venn Rob ble tapt, eller de nye angreps animasjonene jeg kodet på hans observasjon at jeg bare kunne rotere sprites til anstendig effekt. Selv Twitter kom til min hjelp, koblet meg til informasjon jeg trengte å hjelpe med å guide spilleren ordløst.
Du kan ikke undervurdere verdien av å ha folk til å snakke med, selv på soloprojekter.
Papirarbeid og planlegging er kjedelig og sjelden nøyaktig, men de er fortsatt fordelaktige.
Tar deg tid til å sette planen din på papir, vil tvinge deg til å undersøke prosjektet som helhet. Når du bryter den ned i bestemte funksjoner, vil du se hvilke stykker som er avhengige av hverandre, slik at du kan takle dem i en effektiv rekkefølge. Deretter kan du være i sonen mellom oppgaver fordi du ikke trenger å bytte mellom detaljer tenker og stort bilde tenker.
Den andre nifty fordelen er at å ha en liste betyr at du kan legge til det under utviklingen. Hvis du opplever en feil eller en funksjon som skal implementeres, har du et sted å skrive det ned og holde orden.
Jeg trodde jeg kunne komme seg unna med å unngå tedium, men jeg tok feil, uansett hvor erfaren jeg kunne være, jeg er ikke immune mot feil. Forproduksjon er et viktig skritt, uansett hvor bra du tror du er.
Du kan spille Virtuelt Super Hydlide Special Online, eller følg meg på Twitter for mer retro remakes.