IJsfontein Homepage

31 mei 2015

Bij IJsfontein werken wij steeds vaker in een software pakket genaamd Unity. Je kunt er games in maken in 2D of 3D die werken op vrijwel alle denkbare platformen: Tablet, web, PC, smartphone. Het gebruiken van een Game Engine, zoals Unity, neemt een programmeur veel werk uit handen. Veel van de gebruikelijke systemen die nodig zijn om een game aan de praat te krijgen zijn namelijk al aanwezig. Een ander groot voordeel is dat iedereen Unity kan uitbreiden met plugins. Voor de leken: een plugin is eigenlijk een brokje extra software, die je in Unity kunt gebruiken ter uitbreiding van wat Unity zelf al kan. Unity gebruikt een store waar mensen hun eigen plugins kunnen verkopen aan andere ontwikkelaars. Zo ook Adventure Creator. Een plugin bedoeld om sneller games te kunnen maken, en dan specifiek games van het genre RPG (Role Playing Games). In deze blogpost bespreek ik de voor- en nadelen van de Unity plugin Adventure Creator.

Bouwblokken van een role playing game

Een typische RPG bevat een wereld waarin de speler kan rondlopen, gevuld met mensen en objecten waarmee hij kan interacteren. Deze interactie neemt meestal de vorm aan van een conversatie, met stukken tekst gevolgd door een serie multiple choice antwoorden. Op deze manier beleeft de speler een verhaal en leert hij steeds meer over de wereld waarin hij zich bevindt. Verder hebben spelers in RPG’s vaak een Inventory; een virtuele rugzak met Items. Sleutels, notities, een zwaard, een magisch voorwerp… van alles kan er in zitten. De typische gameplay in een RPG bestaat uit het oplossen van puzzels, converseren en exploreren. De puzzels nemen de vorm aan van sleutels die je moet zien te vinden voor gesloten deuren, mensen die je moet overhalen in een conversatie of een object wat iemand van je wilt hebben dat je ergens moet zien te vinden.

Adventure Creator helpt doordat de vaste bouwblokken van een RPG al voor je klaar worden gezet. Je kunt een speler aanwijzen, deze animeren en items geven voor in zijn inventory, een wereld voor hem maken met interactieve objecten en conversaties toevoegen aan al deze objecten.

Voordelen

  • Het grote voordeel voor mij als Game Designer is dat ik zonder een programmeur een speelbaar prototype van een game kan maken. Ik hoef niet meer te wachten op iemand anders. Dit scheelt veel tijd en zo is er meer ruimte om een hogere kwaliteit gameplay neer te zetten.
  • Het systeem is veelzijdig genoeg om een grote verscheidenheid aan games in te kunnen maken.
  • Het systeem ondersteunt het toevoegen van vertalingen van alle teksten.
  • Je kunt eventueel voor alle conversaties ook gesproken tekst toevoegen in de vorm van audiobestanden.
  • Het is geschikt voor zowel 2D als 3D games, en voor die laatste in zowel vogelperspectief of vanuit de ogen van het karakter van de speler (third person en first person).
  • Het kan je spel halverwege opslaan en later weer inladen, zodat je verder kunt spelen waar je was gebleven. Dit klinkt heel normaal, maar dit is een enorme klus is om zelf te bouwen.
  • Het staat totaal los van de visuele laag die je gebruikt in de wereld. Wil je hyperrealistische graphics? Of toch liever ouderwetse pixel art? Het kan allemaal. Je wordt als team hierin geheel vrijgelaten.
  • Adventure Creator heeft een eigen systeem voor het maken van interacties. Je kunt het zien als filmscripts. Deze scripts zet je in elkaar met kleine blokjes functionaliteit die al voor je klaarstaan. Je kunt bijvoorbeeld zeggen: Als ik op deze persoon klik dan wil ik dat de volgende acties worden uitgevoerd: Loop naar deze plek in de wereld, draai met je hoofd naar de persoon in kwestie, laat de camera zakken naar dit punt, zet alle menu’s uit, start deze conversatie en speel dit geluid af. Als de speler een optie kiest in de conversatie dan moet hij dit Item in zijn Inventory krijgen. Dan wil ik de controle teruggeven aan de speler en de camera weer terugzetten naar dit punt. Al deze acties zijn kleine blokjes functionaliteit die je als een ketting aan elkaar kunt rijgen om zo het verhaal te vertellen.
  • Het gebruik van Adventure Creator verplaatst productietijd van de programmeur naar de game designer, wat ervoor zorgt dat een team tijdens de hele productietijd samen aan het project kan werken zonder dat iemand lang moet wachten op werk van een ander. Tijdens game development is het gelijktijdig kunnen werken aan een project vanuit meerdere specialismes een zeer groot voordeel.
  • Tot slot, niet onbelangrijk: de originele maker van Adventure Creator is goed bereikbaar via internet en reageert erg snel op vragen en bugs.

Nadelen

  • Je neemt een risico. Het grote nadeel van het gebruiken van de code van iemand anders is dat je nooit precies weet of het goed in elkaar zit.  Als het breekt, dan moet een programmeur gaan zoeken in code die hij niet zelf geschreven heeft, om soms na uren werk te moeten concluderen: dit kan ik niet oplossen. Ook onze programmeurs zijn al een aantal bugs tegengekomen in de code van Adventure Creator. Gelukkig konden ze deze oplossen.
  • Als je eenmaal kiest voor een plugin, dan ben je ook beperkt tot de mogelijkheden van de tools die er in zitten. Ga je tóch nog zelf dingen toevoegen, dan is dat vragen om problemen. Iets toevoegen wat normaal gezien makkelijk is blijkt dan onverwacht heel erg moeilijk, omdat het moet kunnen samenwerken met de plugin.
  • Te veel features! Het is te gemakkelijk om helemaal los te gaan met alle fantastische functionaliteiten van een plugin als deze, omdat je denkt: Het is al gemaakt, ik hoef het alleen maar aan te zetten! Dit geeft de ontwerper de illusie dat je iets wel even snel in elkaar kunt zetten. Niet dus.
  • Het kost tijd om een plugin als deze volledig te leren kennen en om een optimale workflow te kunnen ontwikkelen als team. Gelukkig is deze investering grotendeels eenmalig.
  • Met meer mogelijkheden komt ook de vraag om meer/hoogwaardigere content. Normaal zou een team, gelimiteerd door technisch kunnen en tijd, kiezen voor bijvoorbeeld een 2D game met enkele animaties. Het feit dat je nu in diezelfde tijd een 3D game zou kunnen maken, legt meer druk bij de artists om ook hoogwaardigere visuals te produceren.
  • Wij zijn gewend om met elk project maatwerk te (kunnen) leveren. Maatwerk geeft je elk project de complete vrijheid om te bouwen wat je wilt, met als nadeel dat dat niet de goedkoopste werkwijze is. Tools als deze bieden erg veel vrijheid in de uiteindelijke werking van de game, maar vragen een zekere discipline van het team om niet meer te willen dan wat de tool goed kan.
  • Geen out-of-the-box online multiplayer. Het is offline wel goed mogelijk vanuit meerdere perspectieven of rollen te spelen, maar nooit meer dan 1 tegelijkertijd.
  • Je kunt nooit helemaal zonder een programmeur in je project. Adventure Creator is erg goed voor het maken van gameplay. Echter elk spel heeft niet alleen menu’s voor en na het spel, maar bijvoorbeeld ook een highscore list of achievements. Allemaal functionaliteiten die toch ook gebouwd moeten worden en (en dit is het lastige stuk…) moeten samenwerken met de toolkit die je hebt uitgekozen. Er wordt in zekere zin juist MEER beroep gedaan op de kunde van de programmeur, omdat hij/zij moet werken in andermans code.

Conclusies

Tools als Adventure Creator zijn fantastisch om in dezelfde tijd juist hoogwaardigere games neer te kunnen zetten. Al gebruik je maar 10% van de functionaliteiten uit het pakket, dan nog is het de investering waard. Echter, het gebruiken van een dergelijke toolkit werpt enkel zijn vruchten af als je binnen de grenzen blijft van de toolkit die je uitkiest. Je zult je Game Design dus moeten sturen richting de toolkit, in plaats van andersom. Wil je hier en daar net iets meer dan de toolkit kan, dan vraag je om problemen. Mijn eindconclusie is positief. Adventure Creator is een dermate veelzijdig product, dat ik er graag nog meer games in zou willen maken.

Interesse in wat wij kunnen maken in Adventure Creator? Of juist iets op maat? Neem dan contact met ons op.