Game Development Projects
Mlem Mlem
Overview: Play as a chameleon traversing a dangerous tropical forest. Made in collaboration with Casey Lodge.
Genre: Top-down action adventure
Role: Programmer, Co-Designer
Year: Games MA Year 1
Development Time: 7.5 weeks
Octo-Ninja Hachimaru
Overview: Play as Teen Ninja Hachimaru as he & the Octopus Takuro use their powers to save a tycoon's daughter! A game designed and developed by Aisosa Ugiagbe.
​
Genre: Action Adventure, Platformer
Role: Programmer
Year: Games MA Year 2
Development Time: 8 Months
​
Features
Mlem Mlem
Chameleon Character Controller
Mlem Mlem is a top-down action adventure game where you play as a chameleon who uses his tongue both for eating bugs and grappling across gaps.
​
For this project, I was paired with Casey Lodge, who handled modeling and texturing for the main character and environment while I was in charge of programming the game logic and character controller.
The basis for the character controller is a concurrent state machine where states can coexist so long that they affect different parts of the Chameleon’s body. There are three of these body parts: Head, Body and Tail, this was conceived to diminish the total number of states allowing for code to be reused.
For example, with this system, the chameleon’s Body can have a moving and an immobile state which is independent of the Head’s state which determines whether the tongue is extended or not. Some states force other body parts to take on new states such as the Grappling state which forces the Body to stay immobile.
In order to integrate the management elements of this game, I had to implement a custom dialogue system. Because special events are triggered when characters reach a certain amount of drunkenness of dissatisfaction, a branching dialogue system would have been very ineffective as branches would have to be repeated.
​
Therefore, this system is based around a LIFO (Last In First Out) Queue which allows events to be introduced and resolved immediately without disrupting future events.
Workplace Hazard
Concave Mesh Cutting
Workplace Hazard is a casual game which combines cutting mechanics from Fruit Ninja and the dark comedy of games like Oddworld.
​
This was made as part of a short MA project focused on developing coding ability. As a result, I chose to focus on the problem of concave mesh cutting in Unity since the targets of the cutting are humanoid.​
​
The process can be summarized in three steps: convex decomposition, convex mesh cutting and stitching. Because of time constraints, step 1 was not done manually for the model used. The basic convex algorithm was provided curtesy of David Arayan. In order to reassemble the newly generated pieces, I had to keep track of each convex component's neighbors (components which touch each other) on each side of the cutting plane. The stitching step therefore consists of merging neighbor convex meshes into concave ones.
To improve this method in the future, I could attempt to do Step 1 programmatically at compile time which would result in a mesh-agnostic algorithm.
​​
​