MAXIM CALLAGHAN

Game Designer  •  BA (Hons) 2:1  •  On-Call Playtester @ Keywords Studios
23largest team led
6+games shipped
🟢 AvailableFor work
← Portfolio

PROBLEMS SOLVED.
NOT JUST GAMES MADE.

These aren't feature lists. Each card covers what I was trying to do, what went wrong, and what I changed because of it.

23 People led on one project
3 Engines shipped in
6+ Games from concept to build
AAA Titles playtested
at Keywords Studios
// Professional Keywords Studios On-call freelance playtester
invited for occasional paid playtests across AAA & AA titles, under strict NDA.
2025–present.
On-Call · Freelance QA
// University Projects
001 Project Lead · 23-Person Team · Unity

Building a Shared Design Language Across a 23-Person Team

Mayday Racers — Unity arcade racing game, 2024–2025. The design challenge wasn't the game, it was getting 23 people to build the same one.

🌟 Project Lead 🎮 UI Designer 📋 Documentation
Unity
C#
📋 Notion
Agile / Scrum
Unity · 2024–2025 Final Year Collab
// Gameplay & Visuals
Hill Track
Pier Track
Character Select Screen
Underwater Section
// Context
Mayday Racers was a 3rd Year collabrative project made by a 23 strong group of Game Designers, Programmers and Artists. It was built in Unity and was meant to be a combat Mario Kart-esque racer.

My Role was the Project Lead, I was responsible for making sure the development process went smoothly between all 3 departments.
// Project Lead Goals
  • Establish a shared vision between all departments, all of us needed to LIKE the idea of the game
  • Confer with the 3 department leads to make sure everything ran smoothly, each team would use a shared notion tracker to be kept up to date with each other
  • Identify issues that could spawn from lack of communication, leadership, etc and develop a solution to fix them as quick as possible.
  • Towards the contribution of the game itself, I would work on workshopping the UI of the game, conferring with each department to make sure it looks good
// Learning Outcomes
  • A team as large as ours needed proper documentation that would be kept up to date, one that can be accessed easily by anyone should they need to
  • Design decisions needed to be tested in real time as well as be understood by the team why certain choices were necassary
  • As project lead, I had to make sure I would make the whole team run smoothly and not worry about my individual contribution to the team.
// Process — In My Own Words
How I did it

To start with, we needed a way for every member to be able to communicate with each other. To do this we made a discord server with everyone in it and gave everyone the suitable roles within it. This was to ensure we can effectively and quickly locate anyone if we needed to as well as see who is absent. I had organised the discord with multiple channels as well all being made for certain sections such as splitting discussion channels between each team.

To add on to that, I created the initial beginning of the Notion Wiki which would be given to everyone so they can add content to it. The leads would have admin but everyone can access and add things to it. It was imperative that we had proper documentation to look back on so our vision of the game remained consistent in all manners. Within the notion, I had also created a task list for each team to use to make it clear who was assigned to what during the project all with a timeline we had to follow to meet the project's deadlines.

On top of that, I had created the initial Git repository for the project to be stored on. This was majorly important as there would be many people working on the project and being able to branch off different versions would help smooth out the process. The tech lead would have control over the whole repository as the tech department would be the people using it the most.

Overall, my main mission was making sure the creation of the game went smoothly as project lead and help manage 3 departments of 23 people for the final goal of our vision, one we created together.
▶ Outcome & Evidence

The outcome from the project was an almost finished project. We had run into a few issues regarding the communication between departments which were sorted out closer to the end of the project, which heavily limited us for time. In order to deliver our final working product, we would have to cut a lot of original content out from our initial plan. Our tutor's had given us feedback on our vertical slice which would carry on towards the completion of our project, namely that we needed more collaboration and needed to ask for help more when it was needed while also managing our time far better.

Overall our final collaboration project came out well, with a well designed map alongside a responsive player controller. More content would've been planned and implemented had we had more time/learned to collaborate earlier within the project.

// My Contributions
Sprint planning & Agile structure Notion Game Wiki UI design Cross-team dependency mapping Playtesting facilitation
002 Solo · Horror Narrative · Unreal Engine 5

Designing Horror Atmosphere With Emphasis on Audio

The Captain's Pyre — solo PSX-style horror prototype in Unreal Engine 5, 2024–2025. Create genuine dread with focus on audio and pyschological horror elements.

🏋 Solo Designer & Developer 📝 Narrative Systems 🌍 Environmental Design
Unreal Engine 5
Blueprints
📚 Twine
Unreal Engine 5 · 2024–2025 Case Study
// Gameplay & Visuals
Beginning environment

// Beginning environment

Example of dialogue

// Example of dialogue

Captain's Quarter's level

// Captain's Quarter's level

On the deck level

// On the deck level

// Context
The Captain's Pyre is a solo built pyschological horror narrative game wherein you play as a captain at sea slowly going insane with his crew around him.

My brief was to investigate how to create an effective sense of dread within the player utilising narrative techniques and audio.
// Design Goals
  • Create an effective narrative that would slowly build up the feeling of dread within the player
  • Utilise audio and environment design to keep the player feeling on edge, making them think twice about seeing or hearing something
  • For my last project, ship a full game from start to finish to showcase as the culmination of all my skills at university
// Learning Outcomes
  • Dread doesn't come from cheap jumpscares and scary monsters, it comes from making the player uncomfortable and making them second guess their actions.
  • Creating a branching narrative allows for replayability and for different ways each player can experience the story.
  • Playtesting solo made it hard to feel the dread, utilising new people made it easier to understand how other people would be affected and feel.
// Process — In My Own Words
How I did it

For this project, I had to focus on making the player feel dread. Doing so I had to think of a variety of factors including art direction, sounds and level design. To start with I used a PSX style of art as it is traditionally used in horror projects due to its low res uncanny gritty feeling. For the gameplay itself, I wanted to make simple puzzles alongside a simple inventory system. So I developed a basic inventory using data tables that can easily be accessed at any point I needed to to give each item an attribute I can call whenever I needed to for each puzzle. In terms of puzzle complexity, I focused on super simple pick up and place in the correct areas to unlock the next section as I wanted to focus on the build up on the narrative.

Narrative wise, I used twine to build up the story, its visual interface helped with seeing how each dialogue bit would branch out so I can create multiple endings for the player. It also helped with the basic "Karma" system I put in place, the more good choices you picked gave you the good ending and vice versa. Implementing the dialogue system was easy with the help of an asset I used which had its own blueprints that helped with streamlining the process.

Finally, on the audio side of things. I am not traditionally an audio designer, but I spent a lot of time finding and locating the right sounds that would play in certain times to invoke the dread feeling. For example, the creaking of the ship while the waves crashed in the dark would feel quite eerie to the player.
▶ Outcome & Evidence

The outcome of the project I felt was successful though lacked as much dread as I was hoping to achieve. On first playthroughs, player's would occasionally jump at the sound of something breaking or a loud bang, keeping them on edge. But as they reached the middle of the game, that novelty wore off, as they started to expect it more. The dread feeling had worn off and they were more interested in the dialogue rather than the gameplay itself.

Overall, the inital study was concluded as a success but I had not executed it as well as I had liked. Though this had provided me with valuable information for the future if I was to attempt a similiar project again. As noted in my GDD, I have wrote more in depth, details of the investigation and received a high mark for the submission.

// My Contributions
Full solo development Blueprint narrative systems Level layout & pacing Environmental storytelling Twine dialogue writing
003 Co-Designer · University Game Jam · Unity

Scope Under Pressure: Designing Atmosphere in a One-Week Jam

Sohvanii — PSX-style anomaly detection horror, made in one week for a university game jam. The challenge: build a complete, atmospheric experience with two people in seven days.

🎮 Game Designer 🅾 Level Design 📋 Documentation
Unity
1-Week Jam
👥 2-Person Team
Unity · University Jam Case Study
// Gameplay & Visuals
Sohvanii Main menu
Sohvanii Controls menu
Sohvanii gameplay 1
Sohvanii gameplay 2
// Context
Sohvanii is a short horror game where you're tasked with surviving the night from a ghost that creates anomalies that you must expell The theme of the jam was "Something seems amiss"
// Design Goals
  • Deliver a complete and fun game within the 7 days time limit we were given that followed the theme
  • Make the overall gameplay loop easy to pick up and understand without the need of an arbitary tutorial
  • Design an atmosphere that would create a feeling of dread within the player to motivate them to complete the night
// Learning Outcomes
  • Deciding what to keep and what to cut given the time limit we had
  • We had to quickly and reinforce the core loop as soon as possible to not take up much time
  • We focused on getting things completed that we both understood first to have a protoype ready, then iterate upon that for the final game
// Process — In My Own Words
How We did it

With this game jam, me and my friend Ben had decided to create a game that had a simple element to it. You are in a room, things will get disturbed and you need to notice it quick and fix it lest you be killed by the ghost. We designed a system where each object was within a struct we can access at anytime. They would all be given a random chance to convert into the 'Anomaly version' of themselves which the player had to notice or they would start taking damage. The player had a time of 3 minutes to survive which would mean they make it to 6am to unlock the good ending. Else if they die, they unlock the bad one.

We used a PSX art style as it would be effective in creating the feeling of horror due to its gritty and low res textures. Since we had a basic level consisting of one apartment, we hadn't need to worry too much on making too many assets, but we still took the time to place them in locations that made sense for the player to notice.

We managed to complete this for our internal ARU game jam within 7 days successfully and got good reviews from our fellow students, we had used sourcetree to make sure our project was saved in each commit we made.

▶ Outcome & Evidence

The outcome overall was good. We had delivered a working game from start to finish within 7 days that players enjoyed playing. We had gotten a few classmates to playtest beforehand and iron out the major bugs but when we released it the reviews we got were good. Some players found it hard with some objects being too subtle of a change and others found it easy so we felt that the balance had worked well in hour favour.

The lecturer who ran the jam also enjoyed it, we ended up being one of the top 3 projects being submitted due to its fun loop and simple gameplay, easy for anyone to pick up and play.

// My Contributions
Game design & systems Level layout Anomaly placement logic Tension curve design
// Also Shipped
// 004
Eco Island
Unreal Engine 5 · 7-person team. Shared survival game around resource depletion. Handled GDD and source control for the team.
// 005
Fishout Jim
Game jam duo · Unreal Engine 5. First jam. Mostly found out how differently everything works when you have 48 hours.
// 006
Unearthed
First lead role · Unity. Started too big, learned to scope properly, and got it finished. My first real lesson in production.

"Anyone can make a game. It takes real skill to design a fun one."

// Maxim Callaghan
🔍
Problem First
I try to understand what's actually broken before opening a tool. It saves a lot of time later.
Iterate to Evidence
Prototypes are for finding out what's wrong. I don't treat anything as final until someone else has played it.
📊
Document Everything
I keep my GDDs updated throughout the project. A document that goes stale by week two isn't much use to anyone.
If I don't know something, I find out. That's how most of this portfolio got made.
23
Largest team led.
Most other students max at 5.

PLAY MY GAMES

All three are free to download on itch.io. Worth playing alongside the case studies if you want to see how the design decisions landed in the actual game.

Mayday Racers
// 001 — lupasbelator.itch.io
Mayday Racers
Dangerous driving and missile launchers. Race through a city smashing your way through 23 people's worth of chaos.
Racing Unity Windows Free
Download & Play ↗
The Captain's Pyre
// 002 — mcall504.itch.io
The Captain's Pyre
Captain Edward Mercer must confront his past before it destroys his crew. PSX-style horror narrative in Unreal Engine 5.
Horror Puzzle PSX UE5 Free
Download & Play ↗
Sohvanii
// 003 — based-swordsman.itch.io
Sohvanii
Scan an anomaly-ridden apartment and survive until dawn. PSX first-person puzzle horror made in one week.
Horror Puzzle PSX Unity Free
Download & Play ↗

I'VE RUN TEAMS. NOT JUST BEEN IN THEM.

Leading a 23-person team through a production cycle isn't something most students get to do. Here's what came from it.

0
Largest team led
Mayday Racers, 2024–25. Most student projects cap at 5–6. Managing 23 cross-discipline contributors required systems, not personality.
30%
Club growth as Fencing President
Fencing is a niche sport. Getting people through the door meant posters, live demos at fresher's fair, and free open sessions for anyone curious. Membership grew 30% that year.
CPL
Corporal — Army Cadets
Junior Instructor certified. Learned quickly that if people don't understand what's expected of them, nothing gets done. Useful lesson for group projects.
ILM
Level 2 Award in Leadership
Gave me the theory to go with the practice. Useful to understand why certain approaches work rather than just knowing that they do.