Ninja Kiwi Event Viewer
Research and Development Paper
Agile
ASP.NET
C#
CSS
Databases
Git/GitHub
HTML
Jira
Project Management
Razor Pages
Scrum

In my final year at AUT I completed a Research and Development project in a team of four for the New Zealand video game company Ninja Kiwi. We were tasked to design and produce an internal prototype of a web tool which allowed viewing of community events within their games. This system allowed easy access to see important information for upcoming and past events such as start/end times, the type of event, and the game its from. The project used C# and the ASP.NET (Razor Pages) framework. I mainly worked on the event viewing area (shown in the image). This included taking in the data, filtering out unneeded data, sorting it and then generating the HTML code which displays it.

AT PT Viewer
Personal Project
CSS
Git/GitHub
HTML
JavaScript
OpenStreetMaps
Public APIs
React

This is a React-based website which shows Auckland Transport (AT) vehicle data. The data is sourced from AT's public API and the routes are drawn by OpenStreetMap's public API. The map is from Leaflet via React Leaflet. You can view all routes at once or click to view details of a one route. Viewing a route allows you to see the vehicle's route and where it stops at. Hovering over a vehicle also allows you to see more information about it.

Last Alert
Software Development Project Paper
Agile
C#
File Management
Git/GitHub
Project Management
Scrum
Teamwork
Trello
Unity

In my second year at AUT I completed a software project in a team of four while completing the Software Development Practices paper. In this project, we designed and created a timed escape game in Unity. The idea of the game is that you are stuck on a ship which you are trying to get off as it has been hit by an asteroid. The game is in 3D and uses a first-person controller. It also has multiple internal systems such as a saving and loading system, settings system, holding system (can pick up, move, and drop objects), time limit system, and different gravity system. The project was completed over a semester, and we completed multiple sprints via Scrum. We planned and ran the whole project as if it was a real development project.

Keep On Rolling
Personal Project
C#
Game Design
Git/GitHub
Unity

I first started this project during my final years college as I wanted to learn more about Unity and the systems that would need to be learnt for developing a video game. In 2023, I picked up the project again to clean it and upgraded it to the latest version of Unity, I did this so it would fit the current Unity standards and would work with Unity's Universal Render Pipeline. This is a simple game where you are a ball and must roll down a hill without hitting anything on the way. It has a saving/loading system, a player skin/material system where you can switch and buy skins, a currency system, two game modes – an infinite one and a levelled one. This project taught me a lot about animations, particles, GUI, sound, lighting, and game design within the Unity Engine. Below are some images of the game. You can also play it online via clicking the “Play Online” button to the right.

Dungeon Crawl
Program Design and Construction Paper
File Management
Gameplay Logic
Git/GitHub
Java
Java Swing

This project was my PDC (Program Design & Construction) paper's main project. It is a Java text based game (which was then upgraded to a GUI based game) where the player has to move around a grid to get to the exit. There are enemies on the way and items which you can pick up. If you walk into an enemy you must fight them. There is a combat system, item collection system, saving system, and local leaderboard system. The game can be found on my GitHub (link to the right).

Money Clicker Game
Personal Project
JavaScript
Code.org
Game Design
Game Logic

This was one of the first projects I ever did. I learnt a lot from it, but it has a lot to improve on such as switching to JavaScript objects and simplifying the code. This project is a money clicker game built on Code.org using JavaScript. You are able to click the money button to earn money then buy buildings and upgrades to make money quicker. Some of the systems within the project include; a custom saving system, a customisation system (change colours), an achievement system, and a reset and start again system.

Networked Drawing Board
Algorithm Design and Analysis Paper - Assessment 1
Git/GitHub
Java
Java Swing
Network Programming
TCP Sockets
Threads

This project was my answer to my first assignment for my Algorithm Design & Analysis paper. The assignment was about creating a networked program which uses a thread pool which processes tasks. I decided to create a pixel drawing board which uses a server to pass information of the board between clients. The project is on my GitHub (link to the right).

Land Division
Algorithm Design and Analysis Paper - Assessment 2
Dynamic Programming
Greedy Programming
Java
Java Swing
Recursion

This project was my answer to my second assignment for my Algorithm Design & Analysis paper. The assignment was about using three different methods (Brute Force, Greedy, Exact) to find the highest profit for the division of a M by N piece of land. More information about the working of each method is on the project page on my GitHub (link to the right).