The Big VS Them All
The goal of this project was to create an online asymmetrical PVP game where one player controls a MOBA style kaiju and the other controls an RTS style army. I completed this project with a 6 person team. My main role was gameplay and AI programming for this project. I opted to implement the Mixin design pattern to create an easy to use, data driven system for modularity. I then created a custom interface to allow designers to create and modify gameplay features without needing to modify the code. Download the game Here
Racing Game
This networked racing game has a team of 3 players competing against AI cars. Player 1 Controllers the car using a steering wheel, player 2 has a top-down view and drops power-ups, and player 3 uses a VR headset to ride on top and shoot at targets. I completed this project with two other classmates. For this project I created a tool to generate the road mesh using a catmull rom spline. I also created the car controller used by the player and AI drivers. Finally I also impleted steering behaviours to create three drivers each with their own unique driving style.
Graceful Tree Game
This is the game I made in Unity using C# based on the graceful tree math conjecture. In the game players must fill the tree nodes with numbers in a way that all differences are unique. The game has a time trial in which when you run out of time you lose. It also has a casual game mode, where you cannot lose, and can determine if you want the difficulty to increase or decrease. You can find the game on Google Play Google
Downhill Drift
This project started with me trying to learn procedural mesh generation in Unity with C#. I was able to create a potentailly "infinite" road by shifting the mesh as the car drove. Once the mesh generation was working as intended I started add more features to the game. Player options like vibration and rear view mirrors are saved with playerprefs. Current vehicle and unlocked cars are saved in a binary file. This demo video is the game in its current state. All models were made by me in Blender. I am hoping to release it as a mobile game once everything is completed.
MiniMax AI
I have a great interest in video game AI. So, I decided to implement my own MiniMax algorithm for some simple board games. The two game AI I decided to create were Tic-Tac-Toe and connect four. The Tic-Tac-Toe algorithm is working as intended all games result in a tie or the computer winning.In Tic-Tac-Toe the player is always "X". The connect four however there is still a chance to beat the computer. The connect four algorithm is still a work in progress. In connect four the player is always yellow. I hope to continue updating it until I can make it unbeatable.
Arcade Shooter Clone
This was a school project where we were tasked with creating an arcade inspired shooter in unity. I got all animations from Mixamo. Root Motion was used to move all game characters.
A* Pathfinding
The purpose of this project was to impliment the A* pathfinding algorithm in Unity using C#. The A* pathfinding algorithm is an extension of Dijkstra's algorithm. It works by factoring in a "cost" while finding the shortest path. This cost is determined by two factors. The first is the G cost which is based on the distance from the starting node. The second cost is the H cost, which is a heuristic value from the node to the end point. The algorithm than goes through each node with the lowest overall cost to determine links from node to node. Once the end goal is reached a path is then traced back based on links to previous nodes. Check out the code here : Github