Blog post no. 4: Minnesluckor och…. Power ups!

Tjenare,

Den här veckan har det inte varit lika mycket arbete på funktioner i spelet som det brukar vara. I början utav veckan så insåg vi att spelet laggade en del efter att vi gjorde den fullständiga kartan att spela på. En karta som var ungefär fem gånger så stor som den tidigare, och vi kom fram till att minnesluckor kan vara en del av problemet.

Genom att ladda ned Visual Leak Detector så kunde jag implementera dom filerna i projektet för att sedan hitta dom minnesluckor vi hade. När jag gjorde det första gången så såg jag att vi hade nästan 6600 stycken. Detta är ofantligt många, och minnet dom tog upp var ungefär vårt hela spel gånger 2. Jag hittade var dom största problemen fanns och detta var i entitets-listorna. Jag loopade då igenom dom och raderade alla när spelet skulle stängas av och då var jag helt plötsligt nere på runt 8 minnesluckor. Efter lite sökande i projektet så kunde jag få bort dom också.

Detta gav mig tyvärr ingen bättre visuell presentation och det var knappt bättre FPS på spelet, men vi tror att om jag inte hade gjort detta så hade spelet till slut kraschat under ett speltest vilket hade varit katastrofalt.

Det jag härnäst ska prata om är ännu fler power ups. Då vi har definierat flertalet power ups i designdokumentet, närmare 11 st om jag inte minns fel. Några av dom är mindre power ups som inte förändrar spelet så mycket samt att vi har några som förändrar spelet mycket mer. Nästan alla har helt olika sätt dom spelförändrar på så det kräver en del bakgrundsarbete innan man faktiskt kan implementera dom.

Det jag har arbetat mest på den här veckan är amuletten. När man använder amuletten så ökar det värdet på alla objekt man tar upp med 30% i 30 sekunder. Detta krävde att jag skapade nya funktioner i vår Score-klass som skulle ändra på värdet av alla objekt man kan plocka upp. Sedan pekare från att man aktiverade amuletten som startade en timer samt satte den nyskapade funktionen till true för att den i sin tur skulle aktivera alla ändringar i värde på objekten.

Amulet

Med tanke på att vårt spel baseras på både tid och poäng så är den här power up:en en kraftig spelförändrare. Den kommer göra så att spelaren blir lite mindre försiktig gällande var fienden är någonstans då spelaren vill använda sig utav amuletten så effektivt som möjligt. Detta ökar poängen samtidigt som det ökar risken väldigt mycket.

Till nästa gång,

Alex

About Alex Henningsson

2014  Programming