Twin Stick JukeboxTwin Stick Shooter
You are the queen bee trying to get back all her honey that
explosive wasps and speedy bugs stole by throwing knives at them.
They each drop honey that makes you stronger through leveling up,
thus being able to get power-ups.
This was a solo system design focused project, where I got to
design and implement a game mode, an enemy, and a weapon. We were
given a project template that already had some weapons and enemies
implemented. We had to pick a reference game, sketch the elements
we wanted to implement, create and give a pitch presentation, then
finally work on the assignment. We had to update a Conditions of
Satisfaction document weekly based on playtesting results.
Challenges
Boring Initial Gameplay
Since I chose Vampire Survivors as my reference game, the main
gameplay was practically back paddling. Doing this with the only
goal being to survive as long as possible can quickly become
boring. This is why I brought in the power-up system, as a way
for the players to always have something to look forward to and
slowly getting stronger. This gave the players another reason to
keep playing and based on the playtesting feedback, was
enjoyable too.
Power-Up System Implementation
When I started working on the power-up system, I found it hard
to implement what I had in mind. This might have been due to
working with a new engine and coding language. To help myself, I
made a breakdown of this system, which helped me understand what
steps I needed to take in order to successfully implement my
feature.
Playtesting Feedback: Too Many Enemies
Towards the end of the project, when I was playtesting more
often, I noticed that players would usually only survive for
about a minute on average. This encouraged me to balance out the
spawning of the enemies, adjusting it per game phase. There
would be less enemies at the start of the game, gradually adding
more as time went on, so that the players still had a challenge.
MY CONTRIBUTIONS
Developed The Bombee Enemy
I created an enemy inspired by Minecraft's creeper, designed
to follow and explode near the player, with the blast
serving as a means to generate more in-game currency
(honey). This explosive enemy contributes to a faster player
progression through power-ups, fostering a sense of
empowerment. The implementation involves a simple function
to track the player and a collision detection mechanism,
triggering an explosion if the player remains within a
radius for 1.5 seconds, leading to the elimination of nearby
enemies through signals.
Bombee In-Game
Bombee Sketch
Bombee Script
DEVELOPED THE KNIVES WEAPON
The weapon is a projectile that does 1 damage, utilizing
inspiration from Vampire Survivors. The simplicity of the
weapon allowed me to use power-ups to make it more
intricate, such as "piercing bullets" or "extra knife
projectile". This is so that the intended player experience
can be achieved through upgrading the weapon. To implement
it, I spawn a knife projectile every second in the direction
that the player is facing in, which has a base health of 1.
Upon upgrading "piercing bullets", the health is increased
by 1, which allows it to pass through more enemies.
Knives In-Game
Knives Sketch
Knives Script
Developed The
Survival Game Mode
The game mode I chose is survival and it implies staying
alive for as long as possible in the given 10 minutes,
ensuring the game does not continue forever. The goal is to
get the highest score, which is determined by the amount of
enemies killed. I made use of signals again for the score,
increasing it by one every time an enemy dies.
Game Mode Sketch
Developed The
Power-Up System
The power-up system also gets a lot of inspiration from Vampire
Survivors. When the player collects enough honey, they will
level up and be met with 3 upgrade choices. The whole point of
this system is to give the player the decision in what they want
to power-up while they become more and more powerful, so they
start feeling more in control.
Power-Up Sketch
Implementation wise, I got to create a power-up manager script
that held all the power-up functionality. I used functions
that take care of the processes such as selecting 3 different
random power-ups on level up, handling player input, handling
the UI, and more.
In-Game Power-Up System
Power-Up Screen Script
Created and kept Project
Documentation up to date
Starting from the initial proposal for my game concept to the
Conditions of Satisfaction Document, I've developed several
documents to keep track of various aspects of the project. Using
the Conditions of Satisfaction Document, I was able to track my
weekly progress and validate it through playtesting.
Conditions Of Satisfaction Document (W3 vs W6)
Achievements
Throughout this project, I was able to work with an engine and a
coding language that were completely new to me. However, having
experience with Unity and C#, I quickly adapted to the
challenge, implementing the key elements of my game within the
first 3 weeks. This gave me enough time to figure out how to
efficiently implement my stretch goal, the power-up system. My
work was recognized when I playtested my game at the end of the
7 weeks and had people tell me it is fun and someone even said
they were impressed and it was the best year 2 game they played.