
Enigma Machine, 2019
​
Based off of the WWII era German Enigma design, it features 5 rotor options, 3 reflector options, and full control of the plugboard. Each of the rotor's wire connections and their turnover points are authentic, as are the reflectors.
​
It was created fully with Unity, and Unity UI to allow user control of the settings and rotor choices. As with the original machine, the current flows through the plugboard, then through the rotors right to left, goes through the reflector, then back left to right through the rotors before finally coming back out through the plugboard.

Enigma Machine

Robosynthesis
Robosynthesis, 2018
​
I built the power objects and their charging and draining systems, did much of the audio programming, as well as implemented some special limb functionality such as the Extendo Arm and much of the Grippy Arm functionality. I also programmed the unique input/output of the rotating objects puzzle. I fixed many major and minor bugs throughout the game.
​
In level design I contributed large parts of the layout and puzzle design of level 2, and almost all the design of level 3, as well as work implementing the design of things such as power objects, checkpoints, and camera zones.
War Card Game, 2019
​
A simple game based on the basic card game War. Players each flip the first card in their deck, and the player with the higher card wins both cards. Aces high, Jokers highest. If the cards are equal, it begins a war, in which both players must play 3 cards (or less if they have fewer than 4 cards left), and then play their next cards and the higher of those 2 wins all the cards on the table. The game is functional on both PC and Android devices
​
The cards and card backs were found at this link https://tekeye.uk/free_resources/images/small_playing_cards.png They are temporary, and the intent is to create some custom cards.

War Card Game

Rubber Runner
Rubber Runner, 2017
​
A small game created over 3 days with a team of 4 for the Ottawa Game Jam in the summer of 2017. It's an infinite runner which fit the game jam's theme of "nothing can be undone". The player is a tire on the loose, and if they happen to run over a person, that can never be erased.
​
As the 4 of us in a team had worked on other games before, to keep our skills sharp we changed our roles, and so for this game I made the 3D models for all the props in the game. In terms of code, I also worked on implementing the 3D models I made, and the code to make them function properly, from obstacles destroying the player, to ramps, to objects the the player destroys.
Blinky Learns to Clone, 2019
​
A small game I built based on Pacman. As the player you move around through a maze collecting pellets - only instead of just collecting all the pellets, the pellets randomly respawn around the map.
​
And instead of being chased by 4 ghosts who have varying degrees of aggressiveness in their pursuit, you are only chased by 1 ghost - Blinky, the most aggressive. And for every 5 pellets you pick up, it gets a new clone.
​
The ghosts use A* Pathfinding to follow the player, and while the map layout is predetermined, it uses the A* grid to create the walls and pellets (and to randomly replace picked up pellets).

Blinky Learns to Clone
Panzers at Dawn, 2017
​
I did much of the programming for this small game; a simple networked game, I was one of 2 people working on the scout tank, and I worked on things such as turret rotation and ammo firing. I also did all the UI programming, the colour change on the text, countdowns on ammo change, etc.
​
In this case there was little level design to be done, it was mostly a full team discussion on the design. Outside of that I drew the scout's UI icon for health.

3D A* Pathfinding
3D A* Pathfinding, 2018
​
Originially created as part of the game Robosynthesis, it was eventually cut from the game. Repurposed into it's own project as a simple demo, it's a system that controls a flying AI which can go to a point, pick up an object, and then fly to another point.
​
The intention was to create a storyline as to why players could respawn, but it's fairly general in it's application and can be adapted to suit many purposes. This system was created solely by me.







