Het begin

Na een paar weken in dit project begint onze werkstijl al een beetje vast te liggen. Meestal zit een man of 4 via Skype te praten terwijl ze aan hun dingen werken, zodat we elkaar tips kunnen geven en helpen met moeilijke dingen. Sommige mensen zitten zelfs al tot diep in de nacht door te werken (Stef *kuch*), of tijdens hoorcolleges doodleuk code te schrijven.
Een ding staat vast, iedereen begint steeds meer lol te krijgen in het programmeren.
Sommige Skypesessies kunnen urenlang doorgaan en eindigen vaak in het gezamenlijk gamen om alle serieuze zaken af te ronden met wat ontspanning.

De game zelf begint ook al ergens op te lijken. De eerste sprites zijn gemaakt, de sprites van de character, en de basis voor het programmeerwerk is al zo’n beetje gelegd.
Het spel gaat zich afspelen in de ruimte. De character die je bestuurt is zoals je ziet een persoon met een jetpack. Hiermee moet je je basis verdedigen tegen enemies uit de ruimte. Deze enemies komen in waves naar je basis toe. Tussen de waves door heb je tijd om je basis te repareren, turrets te kopen/upgraden en je character te upgraden. Het geld dat je daar voor nodig hebt krijg je door geld op te pakken dat vijanden ‘droppen’ als je ze neerschiet. Het verdedigen van je basis hoef je niet alleen te doen, zoals ik net al zei is het mogelijk om turrets te kopen. Deze turrets kan je rond je basis plaatsen en doen dan hun best om enemies neer te schieten om te voorkomen dat je basis beschadigd raakt.

De artstyle waar we voor hebben gekozen is een cartoon-achtige style. Dit komt door de manier waarop we de sprite bewerken. Het origineel van de sprites is 32x32 pixels groot, maar wordt daarna 3x vergroot. Vervolgens wordt er met Photoshop een ‘Dry Brush’-filter op toegepast, waardoor het er best wel cool uitziet. Op deze manier kunnen we vrij makkelijk sprites maken van een redelijke grootte. We zijn op deze manier gekomen, omdat de sprites die Dirk had gemaakt eigenlijk wat te klein waren voor onze game. De game is namelijk bedoeld om in fullscreen te spelen. Wanneer je zo’n kleine sprite 3x vergroot ziet het er niet echt geweldig uit. Maar met het Photoshop filter er overheen zag het er wel cool uit, omdat het ervoor zorgt dat de pixels niet zo duidelijk zichtbaar zijn (zie afbeelding hierboven).

Stef en Gijs hebben de basis van het programmeerwerk gedaan. Zo hebben we de structuur van het spel beschreven en ook al beginnetjes aan de klassen gemaakt. Deze structuur is tijdens vergaderingen nog goed uitgelegd en later zijn er ook wat taken verdeeld. Zo heeft Wouter bijvoorbeeld een beginnetje gemaakt aan de menu’s, zoals een helpmenu en startmenu.

Tijdens vergaderingen hebben wij besloten om een middag gezellig met z’n allen te programmeren en zo het spel een stuk verder afgemaakt te krijgen. Op deze manier kunnen we ook vragen stellen aan elkaar en werkt dit ten goede van onze motivatie om er aan te werken. Ook kunnen we op die manier een nuttige en gezellige tijd hebben!

Naast onze vorderingen en plannen hebben we even nagedacht over eventuele problemen. Het is zo dat het werken en programmeren in groepen even wennen is, waarbij problemen zouden kunnen ontstaan. Wij denken echter dat hierbij geen problemen zullen ontstaan, zolang iedereen zijn best doet en we goed blijven communiceren op Skype. Tot nu toe is het best prima gedaan, dus dit is zeker iets om vol te blijven houden.

Ook al was het lastig  om een beetje op gang te komen, ging het sinds we de basis van de game hadden stukken beter en hebben we taken verdeeld. Ook aangezien er al wat resultaten werden bereikt, werd iedereen wat gemotiveerder en werd er beter gewerkt.

Zoals al eerder is gezegd zijn we al flink begonnen met programmeren, soms tot diep in de nacht. Natuurlijk betekent dat ook dat delen van onze game al werken. Hier volgt een korte samenvatting van wat we tot nu toe geprogrammeerd hebben.
We zijn begonnen met het framework maken. Dit is deels gekopieerd van een game die we hebben gemaakt in het vak Gameprogrammeren, maar met redelijk veel aanpassingen. Als eerste hebben we de GameStates geïmplementeerd waarna we door zijn gegaan met Entity’s maken (gameobjecten) hierna volgt natuurlijk de spriteEntity. De spriteEntity kan ook animaties bevatten, sterker nog meerdere animaties. Hierna begon het leuk te worden en hebben we de player gemaakt, dit is het eerste echt zichtbare bewijs dat er iets gedaan is. Deze speler kan bewegen en schieten, dit brengt me bij het volgende punt, Particles. Stef vond het leuk om om 3 uur ‘s nachts even een particle engine in elkaar te bouwen waardoor onze speler een gruwelijk mooie lightsaber heeft gekregen. Dit terwijl het de bedoeling was dat onze speler kan schieten maar dat hebben we ondertussen ook al opgelost. De classes voor de enemies en de base die onze game krijgt staan ook al klaar, maar daar zijn nog geen sprites voor en die zijn ook nog niet volledig uitgewerkt. Naast al dit programmeren aan de game is er ook al werk verricht aan de menu’s. Er is een Menu class en een Button class die het mogelijk maakt om heel snel en simpel een menuutje in elkaar te flansen.
Tot zover de update over hoe het staat met het programmeren van onze game. Zoals gezegd sluiten we onze programmeer sessies graag af met een potje League of Legends met als hoogtepunt voor mij persoonlijk de All for One-Poppy game van vorige week.