Blacksite Deep Horizon
16 Dec - 7 Feb 2025
Summary
In this project, my primary focus was developing the AI companion, including its behavior tree, steering behaviors, and base class. However, due to some team absences, I also contributed to environment gameplay to keep development on track.
Beyond AI, I worked on level loading, ensuring it was properly set up and functioning based on our previous project. This allowed us to integrate additional content smoothly as development progressed. I also assisted a classmate in implementing PhysX collision filtering, making it easier to detect specific object interactions.
To enhance the game's visual depth, I created a fog shader and adjusted lighting values, refining the overall atmosphere and improving the game's appearance.
My contributions
AI companion
Environment game play
Level loading
Collision filtering
Fog shader
Order of the Roses
5 Sep - 6 Dec 2025
Summary
For Order of the Roses, we had the opportunity to collaborate with the Audio Production Academy, an audio school. This partnership added more depth and immersion to our game, which was an exciting experience.
My major contributions included setting up core systems in our engine, such as the state stack, my UI tool, level loading, and ensuring that the camera received the same information as the level designers required.
Due to some team absences, I also worked on environment gameplay, specifically designing the combat bubble. I implemented it as a prefab to allow level designers to rotate it freely while ensuring compatibility with our custom collision handling system, developed by a classmate. Additionally, I handled various collision checks to make sure they behaved differently depending on the situation.
Lastly, I contributed by creating an environment trigger system, allowing level designers to:
Hide objects when the player moves underneath them.
Trigger speech bubbles and in-game events.
Handle level transitions, such as jumping from Level 1 to Level 2.
My contributions
UI
Environment game play
Level loading
System / Engine
Audio
Carl off Duty
15 Apr - 7 Jun 2024
Summary
During the development of Carl Off Duty, I wanted to implement a UI tool that would allow our graphical designers to create and adjust the UI independently, without requiring programmers to manually tweak button, sprite, or HUD element positions by adjusting float values. My goal was to give them full creative control over UI placement, allowing them to move, scale, and rotate elements freely on a canvas.
This feature took a significant portion of the project's development time, as I wanted to ensure that HUD elements could also be adjusted dynamically. For example, if a potion was used, a text variable needed to update in real time, reflecting the remaining uses. To facilitate communication between different systems, we used a Postmaster system, allowing classes to interact with the UI, HUD, and other game components efficiently.
At the beginning of the project, my primary focus was on level loading. Our level designers worked in Unity, while the game engine provided by the school had its own format. To bridge this gap, I developed a JSON reader, allowing us to export level data from Unity and make it readable by the school’s engine. While we had a JSON reader from a previous project, I was dissatisfied with its limitations, particularly regarding lighting, rotation, and other constraints. My goal was to improve this system, ensuring greater flexibility and accuracy in level integration.
My contributions
Level loading
UI Tool
HUD
The Flame Within
15 Jan - 5 Apr 2024
Summary
Flames Within came with many challenges, but one of the most difficult was understanding our school's custom engine and its inner workings. With only a basic grasp of how the system functioned, a classmate and I took on the task of building a level-loading system in Unity using JSON.
Once we had basic object loading in place, our level designers requested additional features, including point lights and the ability to change the directional light’s color. This led me to dive deeper into the engine’s lighting system, figuring out how directional lights, point lights, and shadows functioned.
As production progressed, I also implemented animations and developed a simple AI system. The AI could patrol between two to four positions and, upon colliding with the player, would deal damage.
My contributions
Animation
Level loading
Lights
Shadows
AI
Out Foxed
6 Nov - 15 Dec 2023
Summary
While creating Out Foxed my first mobile game we decided to focus on specific areas rather than having everyone work on everything at once. This approach allowed us to specialize and refine our contributions.
I took on the task of developing the audio system, UI, level transitions, and overall backend code—areas where I could apply my skills effectively within Unity. This focus not only streamlined development but also gave me some experience in structuring game systems.
My contributions
UI
System
Audio
Ghost Run
18 Sep - 27 Okt 2023
Summary
Ghost Run was the first full game I created beyond simply experimenting in Unity apart from 2020 where I worked on my graduation project at NTI. Most of my time in Ghost Run was spent researching how to move objects in Unity, implementing tutorials, and integrating code snippets.
As I became more comfortable with C#, I wanted to enhance the gameplay by adding an AI that would chase the player throughout the endless runner. This not only made the game feel more suspenseful but also encouraged players to navigate obstacles more carefully rather than passing through them too often.
My contributions
AI
Basic Player movement