I'm a gameplay programmer, passionate about every aspect of game development.
I love collaborating with and learning from all disciplines to build systems that empower creative game design, focusing heavily on game feel to craft incredibly polished and satisfying player experiences.
As an Abertay University 2026 Graduate, I am eager to join a passionate community where I can apply my skills and continue growing alongside others, building memorable games together.
A 2D grappling hook platformer prototyped in SFML C++, further developed in Godot C#.
Features:
• Complex player movement (pulling, swinging, swimming, walljumping, sliding).
• Screen wrap and room-based camera system.
• Dialogue systems, collectables.
• Many visual shaders that interact with the player, such as swaying grass and tree silhouette.
• Springs, gliders, bumpers, and many other movement based objects.
• Objects that interact uniquely with the hook, such as the cog that rotates the world.
• Ability to hold objects, some change player movement when held.
An incremental game about collecting gems and blowing everything up, set in a procedurally generated destructable world. Explores GPU-based falling sand simulations with playable mechanics, developed in Godot C# for my university honours project.
Features:
• Compute shaders for falling sand and fluid simulations.
• Interactable player character.
• Upgrade tree system with many visual shaders.
• Procedurally generated infinite world with different biomes and ores.
• Compute shader for collecting particles.
• Tutorial that waits for players inputs.
• Incredibly large explosions.
Play on Itch
A top down party game inspired by Bopl Battle and Wii tanks, prototyped in Unreal Engine C++,
further developed in C# Godot.
Powerups include:
• Movement: portals, grappling hook, dash.
• Attacks: suckerpunch, wall-spawning bullet,
bomb, bouncing bullet, growth ray, shrink ray, and mortar (arcing) bullet.
• System to swap out powerups, each with a unique cooldown.
Powerups are designed with combinations in mind, allowing for creative expression when playing.
• Wall spawning bullets hitting a bomb cause a wall explosion.
• Grappling hooks can go through multiple portals.
A 2D 'getting over it' style game with a bow, bounce on the bowstring and land on your arrows.
Features:
• Unique player movement with a bow that bounces the player when colliding with terrain.
• Custom keybind options that save across sessions.
• Dialogue system with unique voices, talking speeds, and player options.
• Adaptive music system based on progression and player movement.
• Multiple interactable NPCs and objects that give hints and items.
• Multiple 'enemies' that interact with arrows and the player.
• Different 'levels' with unique art and interactable elements, such as wind, moving platforms, NPCs etc.
Incremental style game where you click to turn a structure to sand,
collect and buy upgrades to destroy structures faster.
Features:
• Miner NPCs that move along an image to mine the image high columns.
• Collectors that move to the closest sand piles and collect them.
• Upgrade system to buy more little guys, deal more damage, and collect or damage in a larger area with the cursor.
• Construction system that builds on top of existing buildings with animations.
• Testing sandbox featuring many different interacting elements.
• Little guys that break, collect, and build.
A mobile roleplaying game made with Unity C# and published on the Playstore.
Features:
• An inventory of characters, each with unique stats, names, equipped items, and levels that all save across play sessions.
• Systems for showing the players specific penguins in the main menu ship scene, cutscenes, and battles.
• Datetime based offline rewards.
• Many special characters and enemies with unique attacks and status modifiers.
• 10 cutscenes, achievements, daily rewards.
• Optional reward ads.
A turn-based RPG where you cook the creatures you have slain, crafted in a team of 7 using Unity C#.
Features I created:
• Cooking simulation including chopping (implented using a package), marinating, skewering, frying.
• Cooking instructions that update with player actions.
• Polish, including the animation for moving ingredients to plate, background characters, initial customer pop-up, skewer, flipping kebabs etc.
• Hint system for cooking, including silhouettes of interactables.
• Cooking score based on players actions.
Play on Itch
A Mario Kart inspired racing game made in a team of 3 on PS5 devkits using a University in-house engine.
Features I created:
• Track system that allows for different layouts, visuals, and lap counts.
• Track terrain types: road, offroad, out-of-bounds with falling animation.
• Track objects: tree, wall obstacles, boostpad, itemboxes.
• Track design for majority of the tracks.
• Created and implemented models.
• Implemented sound effects and music.
• Animated results screen including positions and estimated times for NPCs that have not finished.
• Gamejam team of 5
• Procedurally generated sidescroller terrain
• Gamejam team of 4
• Procedurally generated top down terrain
• Player movement
• Gamejam team of 5
• Randomly generated mazes
• Enemy NPC logic
• Solo university project
• HLSL in DirectX11