AURAGAMI
Role: Lead Programmer, Designer • Tools Used: Unity, FMOD, GitHub Desktop • Duration: 8 months (Ongoing) • Team Size: 15 • Platform: PC VR
VR Rythm-Like Game with a focus on accessible fun and relaxation.
Some of my responsibilities include:
GAME DESIGN
Level structure and progression
Target designs
Target placement systems
Streak and multiplier system
VR movement mechanics
Accessibility focused design
Tutorial
Level balancing
GAME FEEL
With the game prioritizing flow and satisfaction, it was essential to nail its kinesthetics. I emphasized this with flexible and accessible controls, and fluid movement.
For controls, I knew that the game being based around motion controls was already greatly limiting its accessibility, so I needed to mitigate that by designing with accessibility in mind from the very beginning. I created a system that allows a player to set their desired playing height and range of movement, and the game will scale to that automatically. Depicted to the right are the player settings where they set these options.
I vastly improved the fluidity of the movement by adding creating a smoothing/banking system that helps the characters come to life.
BEFORE AND AFTER SMOOTHING/BANKING
Rigid movement makes the characters feel lifeless
Natural banking and leaning helps everything flow
X
✔
SCRIPTING (C#)
Wrote pseudocode when assigning other programmers tasks
Level designer tool
Character movement banking, leaning, and smoothing.
Various scriptable objects for level, song, and character data
Recording tool
Level architecture and behaviors
Parent and children classes for targets
Base
Multi-Hit
Threaded
Modular levels
Dynamic, collision detecting spline
Customizable controls
TECHNICALLY MINDED DESIGN
When creating the level editor, the key was ensuring that both the placement and type were comfortable to design with. To that end, I designed the structure of the game’s systems with the architecture of the level editor in mind. By choosing to place the targets around a circle, I reduced the complexity of the level editor such that only two key variables, angle and distance, were necessary for any basic target. This philosophy extends to the use of polymorphism informing the structure of the level scripts, and careful planning with inheritance allowing for efficiency with the target scripts.
VERSION CONTROL (GITHUB)
Created and managed a repository for Auragami (Linked Here)
Instructed all teammates in the operation of GitHub Desktop
Setup 100+ issues in an Auragami project for the team to complete
Setup temporary and permanent branches for teammates to work in
Managed all pull requests
Solved any merge conflicts
TRAINING
Removing any barriers impeding my teams work was a constant effort throughout the development of Auragami. Educating everyone on the use of GitHub was a huge part of that. I had a 1-on-1 with every team member working in the engine to help them set up and get comfortable with using GitHub desktop. I walked them through navigating branches, making commits, making pull requests, what push/pull meant, and other tips and tricks about using the software. These meetings, and ensuring I was available to consult when needed, gave my team a much needed agency that helped Auragami succeed.
AUDIO ENGINEERING (FMOD)
Setup markers and timeline events
Used parameters for adaptive SFX
Integrated FMOD into unity
Used post processing effects
Setup busses and mixing
Beat and marker tracking in game
MUSICAL TIMING
With music being so tightly integrated into gameplay, making sure that the musical transitions between stages were as smooth as possible was a huge focus of mine. By tracking beats and markers from the FMOD, I'm able to ensure stages end, transition, and start at perfect times, even accounting for the time it will take for the stages initial target to reach the player.
PLAY THE GAME HERE
CHECK OUT MY OTHER PROJECTS!
THE DESKTOP WIZARD
Designer / Programmer
A retro-fantasy puzzle platformer taking place in a faux desktop!