top of page

Software

Head to:
-> Games

-> Other Software

-> Extra

Games

Some of these games are playable via download or in the browser over on itch.io.

System Sprawl

Made in 2023.

Playable in web browser here.

A game about placing blocks to build a city.

Each turn the population increases by 2.
The game ends when 50 or more of the population do not have a home.

The player must place pieces of a city to facilitate the growing population. Money for the player can be earnt from a percentage of the income the city residents receive. The player can only place blocks adjacent to pre-existing blocks, and blocks that are unused by city residents for four consecutive turns will degrade into blocks with no value. Blocks can only effect each other within a radius of about 7 grid spaces. As the game continues, the rate at which the population grows will increase.

The game was developed in Unity and built for WebGL in browsers.

It provides a tactical puzzle game in an arcade game style, teaching the balance between supply and demand of housing and population, in the context of requiring income and paying for resources like food and water.

This project was built during my Computer Science and Games Technology course to help teach UN Sustainable Development Goals regarding sustainable city development and infrastructure in a way that doesn't feel like forced learning and is engaging for all ages.

image.png
image.png
image.png

3D gravity pong

image.png
image.png

Made in 2022.

A game about hitting a ball back into the air.

The paddle at the bottom moves via the WASD keys, it can jump using the space bar, and the power up menu can be navigated with the left and right arrow buttons, and the selected power up can be activated using the up arrow button.

The aim of the game is to keep the ball in the air for as long as possible. Every time the ball hits the paddle, the speed at which the ball hits the paddle is added to the total score, meaning the player gets higher scores for making balls fly higher.

Power ups can be collected when any balls in play pass through the randomly spawning power up cubes.

The power ups allow the paddle size to be increased, the balls to temporarily experience reversed gravity, the number of jumps the paddle can take before touching the ground again to increase, or the number of balls in play to increase.

The "Ball" power up also activates automatically as an extra life, if the current ball is lost.

Once all current balls in play have exited the play area below the paddle, and no new balls can be spawned via the "Ball" power up, the score resets, a new high-score is recorded if one was reached, and the game starts over.

All power ups only last temporarily, however their effects can be stacked and extended if used one after another within the current window of activation.

This can allow chaining powerups.

All entities in the game show their "shadow" on the horizontal plane of the paddle, and a vertical line connecting them to their shadow. This is to aid the player in understanding where in 3D space the balls and powerups are situated.

This game was made using Processing 3 for my Computer Science and Games Tech course, and aims to demonstrate understanding and application of physics concepts, mainly focusing on gravity and collisions.

Dice game

Made in 2022.

Playable in web browser here.

This project was developed in under 48 hours and submitted to the GMTK Game Jam 2022, under the theme of "Roll of the Dice".

The game has six levels, each completed when the player moves the die to the goal tile. The die moves via the WASD keys, rolling as it goes. This means that each movement also changes which side of the die is facing up. For the harder levels, certain tiles must be reached while a certain number is facing upward. This can require changing the rotation of the die through certain manoeuvres. The level design forces these manoeuvres to take place in certain positions, since these moves can only be performed with adequate space. The restricted space in which to rotate freely makes it more difficult as it progresses.

This project was mainly developed by myself, however some parts of the project were added and modified by three friends who chimed in over the weekend of development.

image.png
image.png
image.png

mage game

Made in 2022.

A game where the player is a fireball wielding mage, exploring a procedurally generated dungeon.

The game was made as an introduction to Unity during my Computer Science and Games Tech course. It features procedural map generation, collision physics, custom camera and player controls, a custom shader for the hard light effect on radius of light sources, and a camera rendering to a canvas with a limited resolution which processes the game's visuals in a pixelated manner.

The player explores the dungeon by shooting fireballs, which emit light and show the surroundings. The level is pitch black by default, and only the floor, walls and enemies can be seen if illuminated by the player or the player's fireballs. The fireballs provide both light and damage to enemies, but cost mana, which regenerates over time.

image.png
image.png

Map Generator made with Processing 3:

Game in Unity:

image.png
image.png
image.png
image.png
image.png

netrunner spread

Made in 2024.

Playable via download here.

This project was developed in two weeks and submitted to Pirate Software Game Jam 14, under the theme of "It's Spreading".

This game was not completed to a playable standard during the two week timespan due to the team available not being able to match the scope planned.

My participation in this group project of five of us, consisted of a large majority of all the coding involved. The project was created in Godot and this was my first project in Godot, so this all was a learning experience for me.

I created the entire network system, allowing devices to be hacked only if they are visible via the currently visible network, and for this network to dynamically update and respond to changes in real time.

I also created the visual effects, the control scheme, manually created and edited the map, managed the loading of assets into the correct objects, organised the assets into scenes for easy reuse of objects and custom scripts, the game's dynamic UI, and more.

The main area of the game I had minimal impact on was the title screen and the loading of new scenes via scripts to move the player between the title screen and the game scene.

All 3D models were created and textured by another member of the team.

For full credit information, please go the itch.io page linked above.

image.png
image.png
image.png
image.png

Software

VR instruments

Made in 2023.

This project was developed for my Computer Science and Games Tech course as a research project, researching into measuring how effective VR instruments could be in comparison to traditional or electronic instruments. The project was made for Valve Index VR.

The instruments included in this project are the Piano/Marimba, the Drum Kit and the Sound Changer.

The Piano/Marimba allows both hands to play the instrument by moving the orbs that float over the ends of the controllers into the collision boxes of the instrument, like how a marimba is played using mallets. The ability to press the analog trigger to separate two orbs from the centre position allows the player to have two "mallet" colliders on each hand, similar to how a marimba player may hold two mallets in one hand at different angles to play notes simultaneously or in quick succession by rotating the hand.

The Drum Kit operates similarly, but the layout is more evenly spaced for easy access to different sounds. Similarly to when playing a drum kit, each hand only has one collider, representing a drum stick.

The Sound Changer allows notes to be played only when the trigger is pressed and the controller's collider is inside the box collider of a note. This means notes can be glided between when holding the trigger and moving between notes. Other functions of the VR controllers like the track pads allow for live signals to be sent to change the timbre and sound design of the synth at play.

All three of these instruments rely on an OSC connection to a music DAW, where the OSC signals are received and sent to the relevant synths or digital instruments. This means the entire setup is very flexible and versatile in how it can be controlled or how the user wants it to sound, and is easily integrable into a musician's DAW workflow.

Virtual Piano/Marimba

image.png

Virtual Drum Kit

image.png

Virtual "Sound Changer"

image.png

VR 360 viewer

Made in 2023.

This project was developed for my Computer Science and Games Tech course as a demonstration of ability using Unreal Engine for VR. The VR system used was the original Oculus Quest.

The application was developed in Unreal and built for android, so it could be installed and run on an Oculus Quest system.

The app is built to be a demonstration of a potential further product, that would allow a tourist destination to be previewed in VR. The idea is that a map of the area would be available to the user, with selectable icons over various points of the map. When each of these icons are selected, a 360 image from the given location is displayed in the skybox around the viewer, showing the user a preview of the location on the map.

The location used for this demonstration product was Bradgate Park.

The images used to show Bradgate Park are from Google Maps, both the satellite image for the map and 360 images taken by users and uploaded for public use for when icons are selected to view the 360 image of the location.

image.png

Extra

bottom of page