Juosta
A Viking-themed Top-Down 2D Shooter Rogue-lite Dungeon Crawler. Inspired by games such as Enter the Gungeon, Boxhead and Pokemon Mystery Dungeon.​​
Roles
Lead Gameplay Programmer:
As the Lead Gameplay Programmer of the team, I was responsible for the implementation of the core gameplay features of the game, which are the player movement and attack in the game.
Features
Aim and Shoot:
The “aim and shoot” mechanic was implemented by rotating the player towards the direction of the mouse cursor, which requires rotation matrix transformation calculation to determine the direction the player should face, providing clear accuracy of where the bullets would travel to.
Player Movement:
The basic movement utilizes the input key for the movement direction, allowing the player to smoothly move in all 8 directions. It also utilizes the velocity from the rigidbody that was provided by the physics framework, allowing the player to move at varying speeds in the game.
Shield Bash:
The Shield Bash mechanic was implemented as an addition to the basic movement mechanic and the “aim and shoot” mechanic. The Shield Bash was designed and developed to dash a certain distance towards the direction where the player is facing. Upon bashing into enemy, it would stagger them and stun them in place, giving players the advantage over them.
Once the shield bash is performed, I implemented it such that there is a short cooldown before the player could use it again, to prevent players from constantly spamming the shield bash.
Muzzles:
The Muzzles provides the guns a unique upgrade in the game. Each muzzle allows players to shoot bullets in different patterns, while being able to shoot more bullets in one shot.
​
This was implemented using polymorphism and inheritance, giving each muzzle different unique behaviours to spice up the gameplay.