Hugo Bonacci over indiegamen

Schrijver: Louise Ward
Datum Van Creatie: 12 Februari 2021
Updatedatum: 17 Kunnen 2024
Anonim
Hugo Bonacci over indiegamen - Creatief
Hugo Bonacci over indiegamen - Creatief

.net: Wat was je aan het doen voordat je Kung-Fu Clash begon te ontwikkelen?
HB: Op dit moment werk ik als UX-consultant, maar het grootste deel van mijn carrière ben ik een full-stack webontwikkelaar geweest die voornamelijk ASP.NET (MVC) gebruikte. De meeste van mijn avonden en weekenden werk ik aan persoonlijke projecten, dus ik vind nog steeds tijd om code te schrijven.

In juni 2012 probeerde ik te beslissen waar ik vervolgens aan wilde werken. Ik was net klaar met het schrijven van een webapplicatie voor het bedrijf van mijn vader, dus ik wilde een tijdje iets heel anders doen.

.net: Waarom ben je aan Kung-fu Clash gaan werken? Was dit je eerste game?
HB: Nee, maar Kung-Fu Clash is mijn eerste met succes gepubliceerde game - en ik heb het al vele malen eerder geprobeerd.

Videogames maakten een groot deel uit van mijn leven. Ik ben opgegroeid rond de tijd dat de NES-console echt populair begon te worden in Amerika. Het duurde niet lang voordat ik zelf games wilde gaan maken.

Zolang ik me kan herinneren, heb ik geprobeerd games te maken. Toen ik jong was, was ik beperkt tot dingen als bordspellen maken van karton of sleutelen aan de Commodore 64 van mijn ouders. Naarmate ik ouder werd, begon ik me meer te concentreren op kunst en programmeren, omdat ik dacht dat ik ze allebei nodig zou hebben als ik dat wilde om een ​​game-ontwerper te worden.

Uiteindelijk begon ik veel meer aan webontwikkeling te doen totdat het mijn carrière werd en het grootste deel van mijn tijd besteedde aan het leren van JavaScript, CSS of server-side talen. Ik werkte nog steeds aan games als ik kon, normaal met Flash, maar uiteindelijk stopte ik om de een of andere reden met de projecten.

Ik heb ook geprobeerd games te gebruiken om te leren programmeren. Ik heb ProjectRU gemaakt om een ​​vriend van mij te helpen JavaScript te leren. We hadden er veel plezier mee, maar het ging niet veel verder dan dat.

Toen ik aan Kung-Fu Clash begon te werken, besloot ik dat ik het simpel zou houden en realistische doelen zou stellen. Het duurde ongeveer vier maanden van nachten en weekenden om te eindigen, maar ik ben blij dat ik eindelijk een doel uit mijn kindertijd heb gehaald.

.net: Waar kwam het idee voor Kung-Fu Clash vandaan?
HB: Toen ik op de universiteit zat, volgde ik een cursus "Inleiding tot webontwikkeling" die een paar weken besteedde aan het leren van Flash. Onze laatste opdracht was om een ​​animatie te maken met alle technieken die we hadden geleerd.

Mijn plan was om een ​​dojo-scène te creëren met een Kung-Fu-meester in het midden van de kamer, omringd door ninja's. Terwijl de ninja's de meester naderden, voerde hij een verscheidenheid aan willekeurige aanvallen uit en sloeg ze uiteindelijk van het scherm.

Tijdens het testen van de animatie heb ik deze zo bedraad dat het klikken op de ninja ervoor zorgt dat de meester aanvalt. Het was onverwacht bevredigend om een ​​ninja te slaan en hem vervolgens van het scherm te zien vliegen.

Na veel brainstormen herinnerde ik me dit project en dacht dat het een perfect thema voor de game zou zijn. Toen ik eenmaal het basisidee voor de game had, was het gemakkelijk om ideeën te bedenken voor nieuwe ninja's en power-ups.

.net: Had je Corona eerder gebruikt?
HB: Voordat ik met de ontwikkeling begon, heb ik ongeveer een week besteed aan het evalueren van verschillende beschikbare frameworks. Het was belangrijk voor mij om een ​​raamwerk te vinden waarmee ik me kon concentreren op creatief zijn en minder op het begrijpen van de eigenaardigheden van het ontwikkelen voor mobiele apparaten.

Met Corona kun je alles in Lua schrijven en vervolgens je applicatie implementeren op zowel iOS als Android (evenals de Kindle Fire en Nook). Het behandelt zelfs het hele bouw- / ondertekeningsproces wanneer u klaar bent om uw app uit te brengen, en dat is een ding minder dat u hoeft uit te zoeken.

De SDK vereenvoudigt mobiele ontwikkeling door gebruiksvriendelijke bibliotheken te bieden voor onder andere het bestandssysteem, hardware, geluid, netwerk. Corona bevat ook een ingebouwde physics-engine op basis van de populaire Box 2D-engine, die maakt.

Het maken van games is voor het grootste deel heel eenvoudig en gemakkelijk te doen. In wezen begint u met het maken van sprites op het scherm, verplaatst u ze met behulp van x- en y-coördinaten en reageert u vervolgens op gebruikersinteracties via luisteraars. Het is echt zo simpel.

Corona heeft ook een grote gemeenschap van ontwikkelaars die code bijdragen en aanvullende bibliotheken om de ontwikkeling gemakkelijker te maken. Als het niet in het framework is ingebouwd, is de kans groot dat u het in de Code Exchange zult vinden.

.net: Welke voorbereiding heb je gedaan voordat je begon met coderen?
Voor het grootste deel doe ik mijn brainstorm door in een stille kamer te zitten en naar het plafond te staren. Soms, als ik een idee uit mijn hoofd moet krijgen, pak ik een notitieboekje en begin ik dingen te schetsen. Ik krabbel wat UI-ideeën op of maak een paar onleesbare aantekeningen, maar meestal probeer ik te visualiseren wat ik in mijn hoofd heb.

Hetzelfde geldt voor personageontwerpen. Meestal schets ik nieuwe personage-ideeën snel tot het moment dat ik er niet blij mee ben. Ga dan gewoon naar een nieuw idee. Ik heb bijvoorbeeld 18 verschillende versies van de basisninja geprobeerd voordat ik er een vond die ik leuk vond.

Ik gebruikte dezelfde aanpak ook voor het plannen van achtergronden met Blender 3D. Ik zou ruwe scènes met basisvormen maken en ze vervolgens in de game bekijken voordat ik veel tijd aan details zou besteden.

Er waren veel ontwerpwijzigingen die voortkwamen uit codering, of meer specifiek codeerfouten. De turbomodus is geïnspireerd door per ongeluk een aanvalsgebeurtenis af te vuren bij zowel indrukken als loslaten. Het idee voor de Storm Ninja-aanval werd ontdekt toen ik de sprite-kleuren omkeerde en probeerde iets anders te doen.

.net: Is Lua een goede keuze voor iemand die bekend is met JavaScript of zijn er betere opties?
Lua is net als elke andere taal in die zin dat het goede en slechte delen heeft. Het is net zo dynamisch als JavaScript, maar het lijkt erop dat de overeenkomsten beperkt zijn tot dingen die de meeste talen sowieso doen.

Een belangrijk verschil is dat Lua niet probeert om typen te converteren bij het vergelijken van waarden, dus "1" == 1 komt nooit terug als waar. In JavaScript heeft u een expliciete operator nodig om de conversie te vermijden. Ik kwam ook het probleem tegen dat methoden niet altijd zijn waar je ze zou verwachten. Objecten hebben bijvoorbeeld geen '.toString ()' - methode zoals de meeste talen, maar worden in plaats daarvan aangeroepen met een globale functie 'tostring (obj)'.

Ik denk niet dat Lua net als JavaScript genoeg is om het op te pikken zonder naar een enkele referentiegids te kijken, maar het is echt een behoorlijk interessante taal en heeft veel handige functies om de ontwikkeling te versnellen.

Als je echt JavaScript wilt gebruiken, ben je misschien geïnteresseerd in het gebruik van Unity, dat er onder andere ondersteuning voor heeft, maar over het algemeen gaat het leren van een nieuwe taalsyntaxis veel sneller vooruit dan het leren van de SDK die het gebruikt.

Ten slotte zijn .NET-ontwikkelaars mogelijk geïnteresseerd in MonoGame omdat het Mono (platformonafhankelijk .NET) en XNA gebruikt voor het ontwikkelen van games. Het ondersteunt zowel 2D- als 3D-game-ontwikkeling, evenals een groot aantal platforms, waaronder iOS, Android en andere.

.net: Hoe heb je muziek en geluidseffecten voor het spel gevonden?
HB: Ik vind het leuk om mijn eigen bronnen voor mijn games te maken, maar helaas ben ik geen muzikant. Ik heb veel uren verspild met het maken van muziek voor mijn games en het komt er altijd vreselijk uit. Als je de enige persoon bent die aan een project werkt, is het belangrijk om geen tijd te verspillen, dus deze keer besloot ik om in plaats daarvan stockmuziek te zoeken - en de resultaten waren fantastisch.

De twee sites die ik gebruikte waren Pond5.com en AudioJungle.net. Het was geweldig om aandachtig naar elk nummer te kunnen luisteren en het nummer te vinden dat perfect bij de dojo paste.

De stemmen waren een dubbele inspanning tussen mijn 11-jarige dochter en mijzelf. We nemen onze stemmen op en bewerken ze vervolgens in Audacity.

Als kanttekening raad ik je aan om je volledige aandacht te schenken aan de muziekselectie. Als je een andere activiteit doet, zoals programmeren of kunst, mis je de subtiele details van een nummer waardoor je weet dat het precies goed is.

.net: Welke andere tools heb je gebruikt?
Sublime Text 2 is de teksteditor die ik voor vrijwel alles gebruik. Het is een absoluut fantastische teksteditor met veel unieke functies voor het vinden van bestanden, navigatiefuncties, het bewerken van tekst op meerdere locaties, om maar een paar van mijn favorieten te noemen. Een ander groot voordeel is dat u met een enkele snelkoppeling kunt bladeren en plug-ins of ondersteuning voor nieuwe talen kunt installeren zonder uw editor te verlaten.

Een extra bonus is dat er al een aantal pakketten beschikbaar zijn die functies toevoegen zoals syntaxisaccentuering, automatisch aanvullen en build / run-functionaliteit voor Corona SDK rechtstreeks in Sublime Text 2.

Ik gebruik nog steeds Flash voor het ontwerpen van personages en het maken van animaties. Hoewel ik het niet meer aanbeveel voor webontwikkeling, is het nog steeds een geweldig hulpmiddel voor het maken van vectorkunst. Met Flash kun je elk animatieframe exporteren als een apart PNG-bestand dat perfect werkt met applicaties zoals TexturePacker en Zwoptex.

Photoshop is gebruikt om de gebruikersinterface en enkele achtergronden te maken. Ik had ook een paar "macro's" die ik had gebruikt om wat aanpassingen toe te passen op voltooide sprite-sheets om de contouren rond de karakters te benadrukken.

Verschillende van de achtergronden, bijvoorbeeld de Temple of Frost en Luminous Halls, zijn gemaakt met Blender 3D. Het is wat extra werk, maar normaal gesproken zijn de resultaten fantastisch.

Audacity werd gebruikt voor alles wat met audio te maken had, hoewel ik niet veel meer deed dan wat geluiden mixen of toonhoogte en snelheid aanpassen.

TexturePacker en Zwoptex worden gebruikt om sprite-vellen te genereren (soms textuuratlassen genoemd) waarmee u veel sprites op dezelfde afbeelding kunt plaatsen, wat op zijn beurt de prestaties verbetert. Bovendien genereren deze toepassingen automatisch een .lua-bestand met instructies die specifiek zijn voor Corona om elke sprite weer te geven.

Ten slotte zijn ImageAlpha en ImageOptim ongelooflijk belangrijke toepassingen voor het verkleinen van de bestandsgrootte van alle middelen. ImageAlpha converteert PNG-bestanden naar geïndexeerde versies met behoud van hun alfatransparantie. ImageOptim verkleint de afbeeldingsformaten verder door er extra compressie op uit te voeren. In de meeste gevallen kan dit de beeldformaten met maar liefst 80 procent verkleinen zonder merkbaar kwaliteitsverlies.

.net: Had je een marketingplan voordat je de game uitbracht?
HB: Het grootste deel van het marketingplan bestond erin mensen Kung-Fu Clash met hun vrienden te laten delen. Ik heb accounts op Twitter en Facebook gemaakt en ook de website KungFuClash.com gemaakt.

De game zelf heeft een aantal manieren waarop mensen de sociale accounts kunnen ontdekken of hun scores kunnen delen (via tweet). Net als bij de meeste apps wordt de spelers na een bepaalde tijd ook om een ​​game-rating gevraagd.

Ik ben ook begonnen mijn game in te dienen bij een handvol app-beoordelingssites. In wezen geef je een korte beschrijving, een paar schermafbeeldingen en enkele promotiecodes en, als je geluk hebt, zullen ze je game op hun site beoordelen.

.net: Welk advies zou je geven aan andere webdesigners die hun eigen indiegame willen maken?
HB: Verzin eerst een idee: begin pas met ontwikkelen als je een redelijk goed idee hebt van wat je gaat doen. Pak wat papier en schets gewoon ideeën en bepaal wat voor soort bronnen je nodig hebt (kunst, achtergronden, schermen, menu's). Een inventaris hebben van wat er moet gebeuren, helpt om georganiseerd te blijven, de voortgang bij te houden en het resterende werk te identificeren.

Houd het simpel: veel games worden tegenwoordig ontwikkeld met een heel team - je bent één persoon. Neem het eenvoudigste spelidee dat u kunt bedenken en begin daarmee. U zult er versteld van staan ​​hoe lang het duurt voordat het klaar is.

Wees uniek: zorg ervoor dat u zich onderscheidt van anderen. Het hoeft geen baanbrekend nieuw game-ontwerp te zijn. Soms is het enige dat nodig is om een ​​eenvoudig spelconcept te gebruiken en er vervolgens een unieke draai aan toe te voegen.

Kunst vóór code ... en vector gebruiken: het is leuk om zo snel mogelijk met coderen te beginnen, maar ik heb gemerkt dat het erg belangrijk is dat je zoveel mogelijk kunst maakt voordat je het gaat coderen. Het wisselen van context tussen het maken van kunstbronnen en het schrijven van code kan traag en moeilijk zijn.

Door applicaties zoals Flash te gebruiken, kun je mock-schermen maken met vectorgame-art en vervolgens een voorbeeld van het eindresultaat bekijken om te zien of je tevreden bent met hoe het eruit ziet. Dit helpt je de game als geheel te zien, terwijl je uit de code blijft en je op kunst concentreert.

Vectorkunst is ook belangrijk voor 2D-games, want als je een scherm met hoge resolutie (of een groter scherm in het algemeen) probeert te ondersteunen, kun je je kunst vergroten zonder dat je het helemaal opnieuw hoeft uit te voeren.

Neem geen genoegen: als je je game speelt en je iets bijzonder frustrerend vindt, of iets dat je gewoon niet leuk vindt, dan is de kans groot dat de mensen die je game spelen het ook niet leuk zullen vinden. Neem zo vaak als nodig is om het aan te passen totdat u er tevreden mee bent.

Wees voorzichtig met het toevoegen van complexiteit: het is verleidelijk om meer en meer aan je game toe te voegen, maar houd er rekening mee dat een 'moeilijkere uitdaging' voor veel mobiele gamers doorgaans gelijk staat aan minder plezier. Het vertaalt zich ook in meer code, meer werk en meer tijd voordat u klaar bent. Als je iets wilt toevoegen, bedenk dan eerst hoe belangrijk het werkelijk is voordat je dingen gaat veranderen.

Spelers geven niet om code-ontwerppatronen: laat u niet meeslepen in het over-engineering van uw game. Programmeer defensief, herhaal jezelf niet, maar concentreer je op het maken van vooruitgang met je spel. De mooiste, perfect geabstraheerde codebasis die nooit wordt verzonden, is nog steeds een mislukking.


.net: Is Kung-Fu Clash een succes geweest? Had u een doel of definitie van ‘succes’ voordat u aan het project begon?
HB: Mijn doel was altijd om eindelijk een game te maken en te publiceren, en in die zin was Kung-Fu Clash het succes waarop ik had gehoopt. Ik ben blij met het eindresultaat, en op basis van de recensies zijn de spelers er ook best blij mee.

Ik zou natuurlijk heel blij zijn als Kung-Fu Clash ook succesvol wordt op de markt. Ik zou graag meer tijd besteden aan het maken van games of misschien zelfs mijn eigen studio beginnen.

.net: Heb je plannen voor je volgende game?
HB: Ja! Ik heb een paar ideeën gehad, maar ik ben er vrij zeker van dat ik heb besloten waar ik nu aan ga werken. Ik heb veel van deze ervaring geleerd en hopelijk helpt het de volgende keer.

Maar eerst hebben mijn dochters hard gewerkt om kunst te maken voor hun eigen games. Ik ben van plan om een ​​paar weken te besteden om hen te helpen hun ideeën tot leven te brengen voordat ik verder ga met iets anders.


Fascinerende Berichten
BEOORDELING: Samsung Galaxy S3
Verder

BEOORDELING: Samsung Galaxy S3

Het andere grote am ung-toe tel dat momenteel wordt aangeboden en veel te bieden heeft voor ontwerper , i de Galaxy 3. Op dit moment draait Ice Cream andwich nog teed , maar verwacht nel genoeg een up...
De allerbeste pennen voor kunstenaars in 2021
Verder

De allerbeste pennen voor kunstenaars in 2021

Het gebruik van de allerbe te pennen kan uw werk al kun tenaar totaal veranderen. Maar be li en welke pen voor u i , kan la tig zijn, omdat pennen voor zoveel ver chillende dingen worden gebruikt. We ...
Bouw een geanimeerde AngularJS-website
Verder

Bouw een geanimeerde AngularJS-website

Deze tutorial i oor pronkelijk gepubliceerd in 2014. Mogelijk zijn ommige detail gewijzigd.AngularJ i ont taan ​​uit de behoefte om een ​​betere manier te vinden om zakelijke webapplicatie te maken en...