Major Jam 6: Life · Multiple Applications

Apart

Two games in two browser tabs: a blue platformer and a red top down shooter. Each soul gets stuck until the player brings over information from the other.

Role
Game Designer · Programmer · Artist
Team
2 people
Engine
GameMaker / GML
Time
1 week
Result
#3 / 139

My Work

Experimental Game Design

I designed the two-tab structure, the puzzles that pass knowledge between souls, and the progression that keeps both games moving toward the same ending.

Gameplay Programming

I built both playable games, including the shooting and platforming systems, enemies, locks, puzzle interactions, progression, and two completely separate boss implementations.

Art & Level Design

I created the art, levels, effects, lost souls, encounters, and the visual progression from separate red and blue spaces into the white Soul Combination Lab.

Core Constraint

I couldn't make the tabs talk, so I made the player do it.

As soon as I saw “Multiple Applications,” I wanted to make two different games that only worked when played together in separate browser tabs.

I had only been using GameMaker seriously for about a year. After roughly an hour researching ways to make two HTML5 instances share state, I knew I could not build that system reliably in a one week jam.

That forced me to separate the idea from the implementation. The important part was not one tab changing a variable in the other. It was discovering something as one soul that mattered to the other.

So the player became the connection. The software never transfers the information. You do.

Blue Platformer
Traversal + survival
Blue Soul moving through Apart's platforming side
Blue moves through platforming spaces while trying to find clues to help red.
Red Top down Shooter
Combat + exploration
Red explores from a top down angle and shoots enemies with a gun.

Information Transfer

Every dead end pointed to the other tab.

I paced both routes around moments where one soul could not continue. A locked door, strange room, or blocked path taught the player when to switch tabs and look for information.

The clearest example is Red's maze. Red sees a room with four exits, but Blue finds the sequence that describes the correct route. The player reads it in Blue, switches tabs, and uses that knowledge to guide Red.

A second puzzle hides a passage behind a fake wall revealed in the other game. Passwords were the fastest reusable version of this structure, but I relied on them too often; the maze and false wall better use knowledge itself as the interaction.

Red The Maze
Has the problem
Red can move through the maze, but the room itself does not provide the route.
Blue The Instructions
Has the answer
Blue finds the route. Only the player can carry it back to Red.

Narrative Convergence

Two games, one payoff.

Lost souls in both games foreshadow the same monster, using recurring characters and threats to establish that Red and Blue occupy one shared afterlife.

Blue meets the monster first and can only survive its escalating attacks. Red arrives later with a gun and can fight back. The repeated character connects the stories while each genre changes what the encounter means.

I implemented the encounters as separate GameMaker bosses with different objects, movement, attacks, and win conditions. Their shared identity turns a technical constraint into narrative payoff.

Blue Survive
Platformer boss
Blue survives six rounds as three attack patterns get progressively faster.
Red Fight Back
Shooter boss
Red gets the gun, a health bar appears, and the same monster becomes a fight instead of an escape.

Final Handoff

Blue finishes first. Red has to catch up.

After Blue survives the boss, the route reaches the Soul Combination Lab and drops into the combine chamber. That tab is effectively finished, but before it stops it gives the player the password Red needs to enter the final boss room.

The player returns to Red, uses the password, defeats the monster, and reaches the machine where Blue is waiting. The final sequence repeats the core idea once: Blue cannot finish Red's route, but can provide the knowledge needed to complete it.

After defeating its boss, Blue enters the machine finishing the tab, and giving Red its password to enter the final boss room.

Other Systems

Smaller pieces that helped the strange format hold together.

These were not the main hook, but they made the two games easier to understand and more convincing as one world.

Onboarding Two Soul Setup
Make an unusual two tab setup understandable before the first puzzle.
Problem

Apart only works if the player opens the game twice and chooses a different soul in each tab. That is not a normal expectation for a browser game.

Solution

I open with a disclaimer explaining that Apart needs two tabs. The page then tells the player to keep both copies open, choose a different soul in each with the Red and Blue face buttons, and learn that soul's controls in a small opening room.

Why it matters

By the first real dead end, switching tabs already feels like a rule of the game rather than a workaround the player has to discover by accident.

Player Guidance Cross Tab Signposting
Teach the player that getting stuck means checking the other soul.
Problem

In a normal game, a dead end makes the player search the room they are already in. In Apart, the answer may literally be sitting in another browser tab.

Solution

I used signs, blocked routes, and direct early reminders such as “When you are stuck switch tabs/souls.” Password clues were even written as ---Password--- so the unusual formatting pulled the player's eye toward the word they were meant to try elsewhere.

Why it matters

The game had to teach an abnormal habit: when progress stops, leave the game you are currently playing. Clear early signposting lets later puzzles become less explicit without making the player think the route is simply broken.

Narrative Lost Souls and Early Narrative
My first attempt at putting narrative inside the game instead of only around it.
Problem

I wanted the afterlife to feel inhabited and the monster to exist in the player's head before the boss appeared. This was also my first real attempt at putting narrative into one of my games.

Solution

I made small grey souls that mirrored the player sprites and gave them a very basic dialogue system. Talking to one simply cycles text above its head. Those conversations introduce the monster, add some texture to the afterlife, and one NPC even becomes part of the maze puzzle.

Why it matters

The system is tiny, but I like seeing where that instinct started. I was already trying to make mechanics, world building, and progression support each other instead of treating story as a separate layer.

Audio Direction Separate Themes for Each Soul
Give Red, Blue, and the shared boss their own musical identity.
Problem

The two tabs needed to feel different immediately, even though they belonged to the same game.

Solution

John composed a main theme for each color plus a shared boss theme. Blue leans into an 8 bit sound that fits the platformer, while Red uses fuller synthesized instruments and more modern drums to match the gunplay.

Why it matters

The music reinforces the genre split without needing more UI, while the boss theme gives the shared monster one identity across both games.

Result

#3

out of 139 entries

#2 Enjoyment #4 Limitation #5 Concept #9 Presentation

Apart placed #3 overall. It also placed #2 in Enjoyment, #4 in Use of the Limitation, #5 in Concept, and #9 in Presentation. Reviewers repeatedly called out the two tab idea, the way the games connected, and the boss encounters.

Play Apart ↗

Team

Apart was a two person jam project. I handled the game, art, and design. John Johnson created the music.

John composed separate main themes for Red and Blue plus the shared boss theme, giving each side its own sound while keeping the final threat connected.

Programming + Design + Art

Harrison Alonso

I designed the concept and progression, programmed both games and both boss encounters, built the levels, and created all game art and effects.

Reflection

Apart was the first finished game where an unusual premise I cared about survived contact with production. Its code is rough; I was still learning GameMaker project organization. What held up was the decision to keep the tabs disconnected when the original technical plan became too large for a one-week jam.

If I rebuilt it now, I would use fewer passwords and create more situations where knowledge changes how the other game is played. Apart still represents an approach I use today: protect the experience that makes a project distinctive, even when the original implementation has to change completely.

Next Project Biscuit Bandits →