Samuel Cairns
BSc Games Programming - First Class with Honours
C#/C+ Programmer & Unity Game Developer
BSc Games Programming - First Class with Honours
C#/C+ Programmer & Unity Game Developer
Hello, I’m Sam - a Game Developer and Programmer with 11 years of programming experience, including 3 years focused on game development and 1 year of professional gameplay programming experience. I specialise in C++ and C# gameplay systems, with experience in Unity, Godot, and low-level graphics programming using DirectX and OpenGL. I also have experience designing gameplay systems using Entity Component System (ECS) architecture and modular, data-driven design patterns inspired by modern game engine architecture.
I have shipped two games - one as a solo developer and one as part of a team, and worked professionally as a gameplay programmer at Goblin Games on a client-funded project for the Women’s Rugby World Cup 2025. I also maintain a portfolio of completed game projects developed across both academic and professional contexts.
My background spans over a decade of programming experience, with a focus on game development since 2023, during which I have built 20+ game projects and prototypes. I also run an independent indie studio, Arcadium LTD, where I continue to develop and experiment with gameplay systems.
Outside of development, I compete in Rubik’s Cube solving, play chess, and practice speed typing - activities that reinforce my interest in pattern recognition, optimisation, and performance under constraints.
Scrum Showdown is a game developed by Goblin Games, a team that I worked for 1 year with as part of a promotion for the Woman's Rugby World Cup 2025, contracted by West Northamptonshire Council.
The game runs on an arcade machine which was built in-house, and is suitable for one or two players. I worked as one of two programmers, primarily developing the gameplay aspects of two of the four minigames included within Scrum Showdown.
One of the minigames I developed, 'Kick-Off' involves Player vs CPU or Player vs Player interactions, in which both players must choose the speed and direction to kick their ball, in order to hit targets at the other end of the playing field in order to score points. I specifically developed systems for target spawning and respawning, target movement, the input and control system, ball kicking, score-keeping and CPU AI.
In the other minigame I developed, 'Tackle', the player(s) receive input prompts on their side of the screen indicating what button they must press in order to successfully tackle the training dummy. Failing to hit the correct button would slow the player, giving the opponent an advantage. As the game progresses, the player(s) move faster, therefore the prompts appear quicker. The closer prompts are hit to the training dummy, the higher the accumulated score is for that input. For this, I worked on systematic training dummy spawning, player movement with a fair speed curve, an AI system for how accurate the CPU's inputs are, and the system for spawning prompts and relaying this to the player in an engaging and interactive manor.
Upon completion of this project, the arcade machine was taken to tour various libraries and locations within Northamptonshire, for public events and continued promotion of the WRWC 2025.
Unity, C#, Arcade Machine Game
School of Fish - 2D Aquatic Ecosystem Simulator
School of Fish is a 2D aquatic ecosystem simulation comprised of 16 different species of fish all with unique behaviour.
The game is targeted towards the secondary education industry and covers topics surrounding Natural Geography and Biology at a GCSE level. It includes a default state ecosystem which can be observed by the player, as well as a complete editor mode which allows the user to control the state of the ecosystem through the ability to add and remove different species from the environment.
There are 5 ocean layers within the game, representing various light levels, temperature ranges, and depth ranges. A comprehensive tutorial also guides the user through all gameplay dynamics.
Natural processes within an aquatic ecosystem are depicted such as the food chain (predator and prey), growth, hunger, breeding and natural end of life.
This was an individual project which was completed over the course of 3 months whilst undertaking 3 other projects simultaneously.
A WebGL version of the game can be played here: https://arcadiumltd.itch.io/school-of-fish
Unity, C#, PC & WebGL Game
PULSE is a racing game which was originally developed for Xbox but is currently being overhauled and converted for PC usage.
This game was developed by a team of 6, where I was one of two programmers. I worked on the following systems:
Vehicle Selection UI
Vehicle Physics (unique to each vehicle)
Drifting Physics
VFX & SFX Implementation
Progress Tracking & In-game Checkpoint System
Vehicle Controller & Input Maps
Accessibility and Sound Settings
Realistic Tachometer, Speedometer
Gearbox and Engine simulation
Pixelisation shader parameterisation
Performance Optimisation
Unity, C#, Xbox Game
Road Rage - Multiplayer Game
Road Rage is a 3D multiplayer game created using Unity Relay.
Programmed in C#, this game facilitates two formats of multiplayer connectivity: P2P Unity Relay Server, and LAN server.
Using Unity Relay, a host user initiates a server and obtains a join code which can be given to other prospective users. Upon entering the join code, players enter a lobby. Similarly, the LAN server can be initiated, and the host can supply their local IPv4 address to other users on the same network.
The game features NPC traffic which obey networked traffic lights. These lights change automatically, but can also be changed by player by clicking on them. Players collect coins around the map, and coins are deducted for red light traffic infractions. Each player gets 3 lives, and lives are deducted upon collision with other players or NPC traffic. Once the player loses all lives, they become a spectator for the remainder of the game instance.
All aspects of this application were programmed and implemented single-handedly, culminating in a cohesive online gameplay experience. The multiplayer back-end utilises a server-authoritative model operated using Remote Procedure Calls (RPC) and server-side verification.
Unity, C#, Online Multiplayer PC Game
Fun in Fifth is a mobile game which has been released in the public domain on Google Play. It is a indie game which I created for Android (and eventually iOS) from the ground up. This is the first release under the company title Arcadium LTD, a small indie-games studio which I created in 2024. Arcadium LTD is already working on its second public release.
Fun in Fifth has 3 core gameplay modes: Race mode, time trials and free play. There are also 4 maps with unique racetracks for the player to use. By default, the player has access to only one map, and race mode. They must collect coins which can be used to purchase the other gamemodes and maps. There is also a shop, where the player can purchase 4 vehicles in addition to the default car. Each vehicle can be upgraded in terms of vehicle colour, wheel colour, engine power, braking torque and tyre traction.
In race mode, the player races against 4 NPC's to the finish line. In time trials, the user races none other than themselves in order to beat their personal best. In free play mode, all racetrack restrictions are removed, granting the player access to roam the entire game map as they desire.
Fun in Fifth utilises a number of gameplay and application features such as: a vehicle controller, lap timer, lap progress detection, player place detection, day and night conditions, an optimised offline storage solution, a comprehensive shop and upgrade system, a settings and in-game reset function, and an anti-cheat system which currently remains unbroken. There is also a major update planned for the future, which will contain a large number of new features.
I released Fun in Fifth on Google Play to provide a free application (with no adverts) for any audience. The game has a low PEGI rating (3+) and is considered family-friendly by Google Play.
Unity, C#, Mobile Game (Published on Google Play, Arcadium LTD)
Fun in Fifth - Android Mobile Game -
Unity / C#
I created this Fireboy and Watergirl clone using C++ and the SFML high-level games multimedia library. The game contains a main menu, level selector, two fully playable levels and basic settings.
Since this was not created using a game engine, I prototyped scalable systems for producing any number of levels for the game. This included level data storage, as well as reusable functions for in-game mechanics such as moving platforms, doors (with and without triggers), lava, fire, green goo, text prompts, boulders and teleporters.
I designed the level system using a scalable architecture relating to physics updates, collision detection and gameplay mechanics could be called within classes which contains logic specific to each level. This would also allow for expanding upon the level with functions which exist only within a single level, where repeatability is not essential. As such, this served to maintain the code overhead for the engine code I had written for the specific purpose of creating more levels with ease.
The game extends upon the functionality of the original game by simply containing mechanics which are not found in the original game. It is one of the first game projects I completed.
C++ / SFML, PC Game