Mutualism 3D is a foundation for a co-op puzzle platformer with a merge mechanic.
Goals:
- Create a foundation for a co-op game.
- Design and develop co-op game mechanics
- Create puzzles with the mechanics
- Create characters and assets
- Recreate a Unity game in Unreal.
Overview:
- Solo project
- 8 weeks
- Made in Unreal Engine 5
- Uses the UE5 third-person character controller with modifications by me.
- 3D assets made in Blender
- Based on a 2019 project of mine: Mutualism
- Both games use the same core mechanic: Merging
Development
Idea
I wanted to have both a puzzle and a game design piece in my portfolio.
With Mutualism 3D I aimed to tackle both at once.
I decided to reuse an old game idea of mine: Mutualism
. With this as the foundation I could make something new and personal, and also work with recreating game mechanics in a different engine.
Priorities
- Main priorities:
- Merge mechanic
- Synergising mechanics for puzzle making
- Lower priorities:
- Characters
- Animation
- Combat + AI
Game description
You play as 2 blobs, wielding swords.
You can play separately or together by merging your characters into 1 stronger, slower, and heavier blob – allowing for different challenges to be overcome.
You must communicate and strategise about when to be merged and when to be separate.

Mechanics & puzzle design
Merging
The mechanics decide what puzzles and challenges are possible, so this was the first step.
The gameplay is centered around the idea of playing merged and separate for different abilities and capabilities. So the merge mechanic is core to the experience and was the first thing developed.
When both players hold their merge button, the characters will be forcefully moved towards each other, and combine upon touching.
Character controller
Second was the character controller. I use Unreal’s third person template as a base, but have modified jump, gravity, move speed, to fit and feel good for the character.
I also added a sword attack allowing for combat and puzzles such as hitting levers, boxes and other obstacles.
Enemies
AI and enemies were taken from the original game.
I added a small enemy that is easily defeated alone, and a large enemy that is necessary to be defeated while merged.
I added one combat area where there are several of each type.
Levers, doors, & moving platforms
At this point, I had achieved my minimum requirements for the game. It was time to get creative with what mechanics would play well with the others.
I first added doors and and moving platforms to work with the levers.
Heavy levers
I added a heavy lever, so it would require players to be together to toggle it.
This allows for puzzles such as putting the players on different paths and finding their way together before they can use the lever.
Color gates
However, as the players have the same abilities, I needed a way to separate them.
I then came up with the color gates. Each player can only go through the gate matching their own color.
Additionally, a teal colored gate can only be entered when merged.
Advanced uses of mechanics
Puzzles can be built with very few and simple mechanics, so I decided to stop developing additional mechanics here and think about what opportunities were now available to me.
It resulted in 2 particular cases:
- Merging mid-air to reach platforms.
This puzzle arose from realising I could use the attraction that gets applied when players attempt to merge. - Teal gates as blockers.
This came to mind when I wanted to explore the opportunities of combining moving platforms and color gates.
Mechanics conclusion
The uses of the mechanics can no doubt be explored further for additional use cases. I have already thought of a few. Adding other mechanics (such as special character abilities, power-ups, or timed challenges) could give exponentially many more combinations to work with.
Framework for puzzle designs
I developed this set of questions to help me design meaningful puzzles/challenges:
- Can I beat the challenge by just taking turns with a single character?
- I generally want to avoid this, but I consider making exceptions. This can be done to test the players’ “natural cooperation”, mimicking real life tasks that can be done alone but faster together. Can be a fuel for conflict if not used carefully.
- Can I beat the challenge without merging?
- The merge mechanic is in focus, but the main goal of the experience is cooperation. I want the players to play both apart and merged throughout the experience.
- If yes, can it be beaten solo?
- See point 1. Players need to need each other.
- Does this explore or expand on the mechanics?
- I explore new uses of the mechanics by combining them in different ways, and by looking at how playtesters interact with them in ways that may be different from my own.
Process and testing
Communicating the merge mechanic
I needed to communicate that something is happening when a player attempts to merge with the other. I created a glowing material, so as long as the merge button is held your character is glowing.
If the two are close enough, they will be forced towards each other and merge.
Playtests showed me that this wasn’t enough. Especially the mid-air merging puzzle was difficult to figure out.
My fix was to add an additional force on the player, moving it towards the other, even if the other player isn’t holding the button.
I also had a jump for a goofy effect at first, but this made the button seem like an additional jump button. Removing the jump made it look more like a magnetic attraction which made the use of it much clearer.
Art & visual communication
Much of my new work branches from successes from the original game, particularly the character designs. Them being gooey blobs is an attempt to communicate the idea that they can merge.
This also helps making the world abstract and goofy enough that I could get away with not giving them arms – as this would require more complex animations for attacks. In both games, the sword just floats around them.
One change I made was to use the same blob material on the sword as on the characters – suggesting that the sword is actually a part of the character. I thought this made more sense than a sword and shield randomly flying around. This helps answering the question of where the sword goes when the characters merge.


Challenges
1. Designing puzzles
I enjoyed trying to discover all the quirks and opportunities the mechanics provided.
However, it also proved difficult to make some truly meaningful puzzles in such short amount of time. Each puzzle has to make sense for the mechanics, can’t be redundant, and should not be able to be completed alone.
Running playtests revealed that many puzzles didn’t meet my requirements – didn’t give value to the meaning of the mechanic, or were too combat focused. This led me to create my puzzle design framework.
I had a playtester say “I really want to create levels for this game“, which made me feel I was on the right path.


2. Unreal logic issues
Making the merge logic work in Unreal proved to be a lot more difficult than it was in Unity. Switching from multiplayer to “single-player” (2 controllers for 1 character) was a mess. This is mainly due to how Unreal decides multiplayer “should” work for most games. I had to make a few hacky solutions, such as input-forwarding, to make the controllers work as intended.
Another issue was how players are spawned in by default, and how their controllers are assigned. Modularity was important to me, which made it harder but smarter – This is in case I want a character select in the future, or maybe 3-4 players co-op, or to assign visuals and outfits.
My solution in the end was to assign players with a trigger box that they land on when they spawn – Simply because the standard way of spawning players in Unreal doesn’t allow for much tracking of possession, especially if you need to control different characters at different times.
3. Controller tutorialisation
I also experienced some issues with players not realising what they control whenever they are merged. It currently works so one player controls the left side of their controller (movement) and the other controls the right (jump, attack, camera). This was an issue I had completely overlooked as it was not present in the original, where the only controls were movement and attacking.
Additionally, that game was designed for a hybrid controller, where players had to hold hands, naturally leaving only one hand left on the controller. It was surprisingly not much of a concern for most players during testing. However, I still find it highly problematic that some don’t understand their controls. I will need a fix for this, but as of writing, it is a lower priority.


4. Combat & AI
Enemy AI became another new challenge for me. I could have made do with a simpler script, not using behaviour trees, which probably would have caused less bugs, but I wanted to challenge myself with a deeper and more modern approach to AI development. I still have issues with the enemies getting stuck on the edges of nav-meshes, along with them being so small that they sometimes crawl under the players, causing all sort of bugs.
This will have to be a potential future fix, as combat is a lower priority.
Comparing to the original
- Made in Unity
- Programmed in C#
- 2D art made in ProCreate
- Animations made in Unity
- Genre: 2D co-op survival
- Blob characters
- Merge mechanic
- Solo project
- Made in Unreal Engine 5
- Made with Blueprints
- 3D assets made in Blender
- Sword animations and VFX made in Unreal
- Genre: 3D puzzle platformer
- Blob characters
- Merge mechanic
- Solo project
Makey Makey – The hybrid controller
The goal of the original game was to try and create a unique social mechanic. This became the act of physically holding hands, which I created with a Makey Makey device.
The new version has not been focused on this controller, however, I have kept it in mind during development, made it function, and playtested with it as well. Though one puzzle becomes harder playing this way.
It currently does work, but if I want anyone out there to be able to play my game – who does not own the required items – I have to let the game stand strong without this controller.

Future development
Additions and improvements I have thought of for future development:
- Improve puzzles & mechanics – This is the core of this project: The mechanics and how they are used. Most puzzles could use more playtesting and could be improved in various ways. I have since completion of the project thought of several new or smarter ways for utilising the mechanics.
- Character controller & animations – A smoother platformer and combat experience. Game feel is extremely important to me, as I believe this brings any game experience to the next level.
I would like to add visual “jelly-like” feedback from movement, jumping, attacking, and merging. Fun animations for all the same. As mentioned, this could potentially require an animator skilled with 3D, along with more particle effects and feedback from the environment and enemies – lots of game juice. - Controller tutorialisation – Some players lacked understanding of their controls while merged. I will need to find a way to explain this, or maybe even give full control to both players – or maybe the solution lies somewhere in between. Testing will tell.
- Combat & enemy AI – I feel this still holds a place in my game and allows for challenges that are not just puzzles. It requires a lot of polish and tweaks to work optimally.
- Narrative setting – I have written out a lighthearted narrative for the piece and would like to implement it in the form of sequences and NPCs talking to the characters. This could elevate the fun and immersion of the experience.