Merge Seige

📱 Merge Seige

A merge stragergy game where you merge units and place them to win simulated fights.


Summary

Role: Programmer
Team Size: 4
Engie: Unity
Platforms: Android
Studio: 🔗 Fumb Games

Get it on Google Play

Merge Seige is a prototype game where you strategize placing troops ona grid and watch them battle.


This was a filler project while other projects were tested for their market value. I worked on this for about 3-4 weeks only and the code reflected the tiem spent on it.

The most challenging part here was the AI setup for the game. As the entire fight was AI I had to make the logic for movement and attacking for both the player and enemy units. The movement proved to be a big pain as detecting if a unit was ahead of the unit moving was really trickey to nail down. I did eventually get it working with raycasting and a slight delay to the logic for each line by a frame.

Other than that the game went rather well. There were few bugs with the combat and the scene transitions etc. As this wqas just a prototype it only had 3 levels on loop so not the most complex of game to produce.

Bitcoin Tycoon

📱 Bitcoin Tycoon

A Idle tycoon games themed around mining fake crypto currencies.


Summary

Role: Programmer
Team Size: 7
Engie: Unity
Platforms: Android
Studio: 🔗 Fumb Games

Get it on Google Play

Bitcoin Tycoon is a idle tycoon game where you manage your office of staff who mine crypto currencies with the aim of becoming a bitcoin millionare.


This was my first main project of the year. I worked with another programmer to produce the code side for the project with the art team working on all the visuals. I ended up programming most of the gameplay with the exception of the crypto market simulation & its UI. This included the:

  • Tutorial System
  • Dialogue System
  • Workstations (Upgrades, Props, Eco Generation etc.)
  • Economy System
  • Enviroment Unlocking
  • Idle Mechanics
  • AI Navigation

By far one of the most challenging parts of this project was the tutorial. Making a tutorial system that is truely modular is surprisingly difficult. The solution I wrote for this version was pretty good but did have a few flaws, most notably the system for saving the last place the user was at as I used an int when it should’ve been a string. As the int setup meant if I moved bits around it could break the user’s progress through the tutorial as it would return them to a different step than the one they were on.

The project had a few bugs with it during development, but turned out pretty good. Running really well compared to some of my previous projects and is by far one of the best looking & running projects to date.

Persona 5 Royal Combat Project

🎮 Persona 5 Royal Combat Project

A personal project where I replicate the Persona 5 Royal Turn-Based Combat system as best I can for fun.



Summary

Role: Sole Developer
Team Size: 1
Engie: Unity
Platforms: PC


This project is a side project where I intended to make the Persona 5 combat system in Unity to test my skills a bit as I have no idea if I’ll mange it. The development of this project will be only in small chunks so I will be updating this page with the latest progress as I go.

There will be builds & some source code down the line, but the project is still early days so I have nothing that is ready for the public just yet.


Multi Scene

🟣 Multi Scene

A multi-scene workflow/tool for using multiple scenes in one go in Unity.


Summary

Role: Sole Developer
Team Size: 1
Engie: Unity
Platforms: Unity
Studio: 🔗 Carter Games


Multi scene is a scene management tool I first developed while in my job as Fumb Games & later took on as a personal project to release. The idea is to make working with multi scene workflows a bit easier in Unity with a few editor tools & systems.


The development of the tool started with the 🎮 Merge Motors project at Fumb Games, with the game split into 2 main scene groups with an extra group for entering the game. This proved to help a little with merge conflicts and more, however did prove to not be overly useful for the studio at the time as most projects just had 1 developer and the art team hovering between projects. That didn’t stop me from going on to develop it further, having used it in a variety of personal projects that I haven’t released. Its most useful for bigger titles on platforms with more resources like PC. While mobile does work, it does take a little longer to long on older devices that can hinder the game overall.

Currently the tool has a fair few features that include:

  • Multi scene management
    • Loads groups of scenes together
    • Some helper methods for getting if a scene is loaded
    • Events for when scenes are loaded
    • All static
  • Scene grouping system
    • Scriptable object based
    • Custom inspector for ease of use
    • Group scenes together to be loaded by the manager
  • Scene group loader window with categories & sorting
    • Load a scene group in the editor at the press of a button via a custom editor window
    • Organise & group scene groups together
    • Show or hide groups of scene groups
  • Easy to configure & use
  • Cross scene referencing helper script
    • Use familiar methods such as GetComponent between scenes with a custom version of those methods
  • Custom Awake, Enable & Start interfaces
    • Simulates the normal methods of the same name when all scenes have been loaded
    • Can be used to sync any logic to multi scene loading
  • Do not destory scene accessor
    • Allows access to the do not destroy scene with all cross scene reference methods to match
  • URP camera stacking support between scenes
    • Stack URP camera between scenes

Dead Tired

🎮 Dead Tired

A horror/puzzle game where you can access a spirit realm.



Summary

Role: Programmer & Team Leader
Team Size: 5
Engie: Unity
Platforms: PC, Mac, Linux
Jam Theme: Leave Something Behind
Jam Length: 7 Days


Dead Tired is the result of a 1-week game jam between the 14th – 21st of November 2021. I took a week off work to take part in this jam as I had the days spare to use up and felt I could practice some of skills I had picked up over the last 8 months in industry at this point.

After working a 14-hours shift, all you want to do is go home. However this is not so easy at spirit corp. Just getting from your desk to the exit is a gauntlet. Your dead tired, so much so your own spirit is keep to help out. Can you leave the office?


Awards


Approach & Post Motrem

Our approch to this jam was a very relaxed one. While others like to crunch and push to make the most of the week. We focused instead on the rule that our lives came first. So we all worked normal hours, not pulling all nighters or stressing too much over getting every last feature in. We focused on a small scope of 3 levels, which was achieved with most of the mechanics we wanted in, in. Though as always, some elements of the game were cut for the sake of having a finished product. 

This jam went well, though I know I can do better. I took the week off to take part in the jam though I could’ve used the time off honestly. It was good to try out stuff I have picked up at work in a non-mobile game setting and I certain found a few issues I need to fix with the system packages I used in the jam. The industry feedabck was also great and is about what I expected from my own opinion on the game which was it was a good idea that needed more work really.

Merge Motors

📱 Merge Motors

A merge game where you merge car parts & manage a garage.



Summary

Role: Programmer
Team Size: 3-6
Engie: Unity
Platforms: Android & IOS
Studio: 🔗 Fumb Games

Get it on Google Play
Donwload on the App Store

Merge Motors is a merge/idle game where you get to repair & manage a garage. You play as Lando the machanic, who’s twin brother gets into a bad crash one race ending up in a coma, leading to you fixing up his car, racing it and earning better cars to fix & race.


As this is a larger project than some of the others I have worked on, I was working with a consistent team of 3 with the occasional help from others when it was needed. Given I was the main dev on the project, the majority of the programming was on me as well as setting up the UI based on mockups provided. While most of the design & art was done by other team members. Though we often discussed the design of new features over with the team to make sure we were all happy with it.

My Contribution

Initially I started out working on this project as a side developer, working on some racing mini-games to compliment a more traditional merge game. However after a few months I ended up taking over the project in full and developing it into what it is now.

My main contributions are the main mechanics & gameplay of the game. Systems such as game saving, merge logic & idle logic are handled by the company’s internal code library. Some of the mechanics I worked on include:

  • Jobs system (requirements & rewards)
  • Story system (chapters, dialogue, cutscenes)
  • Store (both IAP & local purchases)
  • Ecomony (buy/sell/unlock)
  • Levelling (xp, levels)
  • Daily challenges (daily reset, requirements, 5-day streak)
  • Achievements (tracking data points, awarding achivements)

This game also uses my work in progress scene management tool which allows the game to be split into multiple scenes that run additively, which helps seperates different sections of the game such as the mergeboard from the garage.

Build Versions

🟢 Build Versions

A build versioning automation solution for Unity.



Summary

Role: Sole Developer
Team Size: 1
Engie: Unity
Platforms: Unity
Studio: 🔗 Carter Games


This asset is a automation tool that saves developers from needing to manually update their project build numbers. Handy to both manage the version numbers of a project but to also ensure it happens on each build made.


This asset was mostly made while I was at work. I felt the need to make this as I was getting really annoyed at myself for not updating the build number when making builds to test. So I decided to automate it. The actual code to do this is pretty simple, its just a interface implementation really. I had a working version at work really quickly and I found it rather useful. Because of this I decided to check the market for any asset that do this and found only one that does something similar, but saves it differently and wasn’t free.

Because for these factors I decided to make it into a public asset. which is this project, the asset if free like my other assets and requires zero user setup which is thanks to some cool editor scripting that generates the scriptable objects for the user if they don’t exsist. I’m pretty proud with how this turned out and am happy to support it into the future.

Merge Mobile


📱 Merge Mobile

A merge game where you merge apps on a virtual phone to earn notifications.


Summary

Role: Programmer
Team Size: 2
Engie: Unity
Platforms: Android
Studio: 🔗 Fumb Games


Merge Mobile is a merge idle game prototype where you merge apps together & collection notifications to upgrade your phone, unlock cosmetics & more!


So this was a filler project that I designned and asked to develop while other projects were in limbo pending their design being fleshed out. I had the idea to make a merge game based on a smartphone display. We look at them everyday and there is a merge board right there if you think about it. So that was the idea in a nutshell. My goal with the project is the make the UX be as close to an actual phone as possible for farmiliarity. It was a nice project to practice with and try out a different idea for a merge game.

Merge Conquest

📱 Merge Conquest

A risk style merge game that I designed and made a prototype for as a work project.



Summary

Role: Programmer
Team Size: 2
Engie: Unity
Platforms: Android
Studio: 🔗 Fumb Games


Merge conquest is similar to risk but you merge troops to get more powerful ones to place on the field. The idea was to make the traditional game more dynamic, with extra strategy of holding some units back to have stronger ones down the line.


So this was my second fully solo project, I came up with the idea for this one as well, as well as a few other ideas that were set aside for another time. The elevator pitch is pretty much risk but with merging and that is pretty much what I made. I had the creative freedom to go with it how I wanted with a little basic design given to me to base the game off.

I based some of the design off the Lord of the Rings Battle For Middle Earth 2: War of the Ring game and Risk: Factions. The phases were setup to allow the player to go about their turn. I set the game into 3 phases per player per turn, which seemed common for games on the genre.

Planning Phase
This is where the players woudl gain their units for their current holdings (territory count and region bonuses). Merge their units to gain stronger units and add units to terriories they currently own ready for battle.

Battle Phase
This is where player can attack territories and manage units into conquered territories. Each battle lets the user either auto-roll the encounter until 1 player wins or by rolling each roll as you would do in the board game manually. Once the user has finished their attacks, they can move to the last phase.

Regroup Phase
This phase is optional and allows the user to move 1 group of units from 1 territoriy to a neighbouring territory.

The menu I had a little help with as I’m not that good at 3D modelling, so the globe is a custom model for the game. The rest of the art was done my me with all the maps being drawn up my me too, with a map generator making the basic shape for me to then edit and add the territory boundries for by hand.

I added an accessability feature in this game too. This being a colour blind mode. This was needed as there was no other way to distinguish between each player if the user couldn’t tell the difference between the colours. I made the mode change the shape the strength of each territory was shown as, as well as some prompts to remind them who they were playing as.


Art

As I worked solo on the project, I also did almost all of the art for the game. Below is some the best bits I worked on, given I’m not an artist I felt it all came together pretty well.

Maps

Each map was setup as a .psd so it could be setup in layers which Unity would recornise. Each layer would hold a territory with a layer for the water, regions & map lines. Each territory would be coloured and controls in engine. The map Shattered Lands was used a lot in development as a testing map along with This Land. Some of the maps had some references to TV/Film/Games series in their territory names for a bit of fun as well.

Ranks

There are 4 teirs of ranks in game which are denoted by the colour, while the pips/chevrons/stars would denote each rank. Below is the art used to make all the rank shileds, they were assembled in engine just like the maps.

Memory Match

📱 Memory Match

A card matching merge game.



Summary

Role: Programmer
Team Size: 2
Engie: Unity
Platforms: Android
Studio: 🔗 Fumb Games


A merge game where you play a typical memory match game but you merge cards when successfully merging.


This was my first fully solo project working at Fumb, I was given a short but simple breif to make a matching game where the user had to merge cards in order to complete the levels. The idea was somewhat based on an old card match game from the Mario series, but for the most part I had full control on how this project would end up. I made most of the game to follow Actions which made it really easy to follow the flow of the game and reduced the update calles needed. On top of that I also made some custom editors to make working with some of the scripts and scriptable objects a little easier which was well worth to time spent on it.

I chose to keep the art style nice a simple in order to make that side of the project easier, I did most of the art minus the card art itself. I had to do a little work with shader graph to make the a shader where I could have two sprites on a UI image to make them two sided for the front and back as well as having a cover image with an icon placed on top for the front face. A few online tutorials plus my own knowledge of shader graph made this not to challenging for once.