

Roles
Designer
Programmer
Team Size
7
Tools
Unreal Engine 5
Blueprints
Github
ClickUp
Production Time
September - December 2024
Genre
3rd Action Adventure
Platform
Windows
Shadows Over Vizaria is a​ 3rd person hack-and-slash action adventure game developed by Arson Arcade over a 3 month development cycle. My role of lead programmer had me responsible for the functioning systems in the game including combat, animation, AI, and quest management.​
The vertical slice we produced showcased a level that had the player pickup weapons and fight enemies as they continue down the mountainside to liberate the town and defeat the final boss.
What I Did
-
Enemy AI Design & Scripting
-
Behavior Tree
-
AI Controller Scripting
-
Weapon Design & Scripting
-
Movement & Combos Design & Scripting
-
Character Controller Scripting
-
Animation Scripting & Setup
-
State Machines & Blend Spaces
AI
Vision
The goal was to create enemy AI that behaves dynamically given certain parameters such as:
-
If it has a patrol path
-
If it sees the player
-
If it should attack the player
​
AI In Action
The Behavior Tree
When a player changes seats, the system:
-
Searches for the next available seat using a loop, checking seat occupancy.
-
If no forward seat is available, it checks seats behind the current position.
-
Once a valid seat is found, it updates the player's seat index and executes the seat transition logic (attaching the character, updating UI, etc.).
Combat System
Vision
Create a responsive combat system that accomodate complex melee systems such as combos, 1 handed weapon, and dual weapon behavior. ed behavior.
Combat in Action
Animation System
Vision
Create a visually robust animation system that gives visual feedback to the different stance in the game ranging from combos to damage to simple movement.
Challenge
​Quite simply, the main challenge for implementing animations and a robust animation system that needed to look good fro various types of stances in combat that would always be seen on screen was that this team did not have an animator. None of us knew how to animate.
Solution
​It took a lot of trial and error but we found through the use of Mixamo animations that were cleverly combined in blend spaces, state machines, and animation montages we were able to come up with a large enough roster of animations that met our design goals. ​​
​
Key Takeaways
-
The main takeaway of this project came from the animation system. This proved to me that complex systems can be achieved with the right plan of action and creative, out-of-the-box thinking even if the most optimal tools (animators in this case) are not available. It took a lot of trial and error but we eventually landed on a system that met our needs.
-
This was also the true first time I had a role in a team with multiple moving parts and a set production schedule. Because of this, I came out with a better understanding of how (at least on a small scale) a game development team might collaborate, communicate, and work together.
