top of page

Project Goals
-
2D platformer in Unity
-
Player uses different arrows to traverse obstacles
-
Stylized Pixel Art
-
Saves Progress through game
-
Fully Animated Player
3 Arrows

Team Members
Reece Enthoven - Gameplay Design and Programming
Cameron Marable - Game Art
To make the complex animation for firing a bow, a lot of different components were required. To account for all the different possible animation states, the player was split into 3 different parts, with these being the legs, the torso, and the arms. With these separated, each part of the body could be separately animated. From there the hardest part was keeping both of the player's arms on the bow at all times. This was accomplished by having 2 separate origins of rotation. The first was the player's arms, which would rotate to aim at the mouse until they reached a certain angle. At that certain angle the arms would stop rotating and the torso would begin to make the player lean. With both of these rotations combined, the player keeps both hands on the bow in a natural way.
Character Animation
Game Systems


Checkpoints
With the explosive arrow launch my goal in design was to create a feeling of consistency, while still having it be a skillful movement mechanic. This led to a final formula with clamping on both the maximum explosive force and a minimum explosive force. Essentially there is a minimum speed the explosion will always propel you to no matter your initial speed, and on the maximum end there is strong falloff in additional force after exceeding a certain value. This creates an explosive force that feels extremely consistent, while still having room to be performed well or terribly.



Explosive Arrow Launch
Project Motivation
For me the most interesting thing to program and design is movement in games. With 3 arrows I wanted to create a game that used unique bow mechanics together to create an interesting move set for the player. Through this project I learned a lot about creating compelling movement systems and complex animations. The lessons I learned from making this game paid dividends for my future game projects, especially Swift Evacuation, where I used the lessons from this game to create a more refined movement system with even more fluid animation!
For the checkpoint system the main challenge came in trying to keep the amount of data stored very low. In the final implementation there is only a single number used to store the player's progress, and based on this number the game will perform any updates needed in places the player has already been.




bottom of page