Een top-down 2D dungeon game. Je loopt door een dungeon, verzamelt kristallen en verslaat vijanden. Je kan ook wisselen tussen twee rollen tijdens het spelen.
In Crystal Depths loop je door een donkere dungeon en moet je 5 kristallen verzamelen. Als je ze allemaal hebt gaat de uitgang open en win je. Er zijn 4 soorten vijanden die je proberen te stoppen.
Dit heb ik gemaakt voor de module Reusable Components op ROC van Twente. Het ging erom dat je code goed opdeelt in kleine stukken die je kan hergebruiken.
Ik heb de hele game zelf gemaakt. Het leukste stuk is het role wisselen met Tab. Als Warrior vecht je van dichtbij, als Archer schiet je van ver. Dit wisselt echt de componenten op het karakter zonder dat de scene opnieuw laadt.
Ik heb ook een AI gemaakt voor de vijanden. Ze lopen een patrouilleroute, spotten de speler als die dichtbij komt en gaan dan aanvallen. Er zijn 4 vijandtypes: melee, ranged, shielded en een turret.
De game heeft 4 interfaces en elke interface heeft 2 versies. Zo kan je componenten makkelijk combineren en wisselen zonder de rest van de code aan te passen.
Ik heb ook een generieke Singleton<T> klasse gemaakt en gebruik C# events zodat systemen niet direct aan elkaar vastzitten. Er zijn meer dan 22 unieke combinaties van componenten, dat is meer dan de eis van 20.
Gameplay: speler in de dungeon
Archer rol: projectiel aanval
Vijanden in actie
Win scherm na alle kristallen