What The Tide Brought In

An atmospheric narrative game about perception and memory.

My Roles: Unity Developer, C# Programmer and Sound Designer

A cartoon metal detector searching along a beach.
Cartoon beach with rocks, trees, and a body of water in the distance, viewed from a first-person perspective holding a metal detector.
Text overlay describing a day spent searching for lost items on the beach, encountering a storm, and finding something stranger.

About

This was a game I made for the Season of the Dev game jam in 48 hours alongside friends and colleagues Jackson Smollen and Jas Perry. The theme was ‘Astonishing, Beach, and Connection.’ We settled on a game about using a metal detector on the beach to uncover relics with a strange connection to the player, leading to an astonishing realization.

My Contributions

  • Metal detector and digging mechanic

  • Item inspector (akin to the Amnesia series)

  • Dialogue system

  • Post processing manipulation

  • Sound design

  • Voice overs (that's me!)

  • Dynamic audio that reacts to game state

  • [REDACTED]

Planning

Three young people sitting on a wooden porch in a forested area, engaged in conversation and smiling, wearing blue shirts with white text, with trees and outdoor furniture in the background.

When brainstorming on a tight deadline I like to make a mind-map of the core idea and branch out with anything related. Through this process game ideas naturally emerge as interesting connections are discovered. Each idea then had to pass three filters:

Is it small in scope?

Do we have the required skills?

Does the game have appeal?

We decided on a game about using a metal detector to find items on a beach that are connected to the player in astonishing ways.

The player walks along the beach in first person hovering their metal detector over the sand. When it beeps, the player can switch to their shovel and dig up the item, revealing a nugget of story and prompting the character to occasionally react.

While initially presented as an innocent cozy game about collecting trinkets, What the Tide Brought In subverts these expectations to deliver on it’s experience goals. The game toys with the players perception through intentional ‘bugs’ and strange occurrences that make them question their memory. It uses uncertainty, confusion, and dread to immerse players in a story of a lost soul coming to terms with their demise.

Development

A classroom or conference room with students seated at long tables, listening to a presenter at a podium in front of a large screen displaying a presentation.

We started development by plotting the narrative beats we wanted the player to experience and thought of what items could tell that story indirectly.

The artists then got to work on the item models while I started on the core mechanics: the metal detector, shovel, and item inspection.

The first problem we ran into was how to guide players towards the items. Metal detectors beep (screech?) when hovering over metallic objects or have some sort of visual indicator. Unfortunately, this only lets the user know when they’ve found something, not where they should look to find something. There were only so many items to collect and with each item the player collected, the harder it was to find the next. How do we stop the player aimlessly walking around an empty beach, finding nothing?

The first trick was to modulate the pitch and speed of the metal detector’s beep to give the player constant feedback. (“Warmer, warmer, colder, HOT!”)

The next trick was to use a forgiving radius around the item and teleport it underneath the shovel when the player starts digging. This reduces the margin for error and subsequent frustration when just too far away.

The last trick was to add a subtle prompt at the top of the screen when within the dig radius. Importantly, this only appears when using the shovel, meaning players still needed to use the metal detector to get close enough to trigger it.

Screenshot of programming code in a text editor, including functions for pinging, calculating distance, playing sounds, and starting coroutines.
Screenshot of C# programming code for a light and sound effect in a game, including functions for toggling lights and playing a beep sound based on distance.
Screenshot of a computer code snippet in C# for calculating pitch and beep interval based on distance, with comments about adjusting pitch within a range.

Once the main mechanics were finished, I created a simple dialogue system using scriptable objects. Each dialogue object contains the text and audio for that line, as well as which node to go to next. An event bus then listens for anything that triggers the dialogue, passing in the starting node. If a dialogue node isn’t connected to another node, the event bus ends the dialogue.

With no real audio equipment, I resorted to recording my voice lines on an iPhone under the bed of our bungalow. I stuffed it with blankets and pillows for absorption and a little soundproofing.

With a solid framework in place, I was free to work on features that enhanced the tone and completed the experience.

It rained the entire weekend. The light pattering on the roof and overcast sky bled into our game; the character fell victim to a terrible storm. As the character uncovers polaroid’s, the storm becomes more intense. I used audio of thunder synced to an animation curve that controlled the strength of a bright white light to simulate the lightning and a particle system around the player to simulate rain drops.

I created a post-processing modulator that could be triggered through code to create some otherworldly effects. I used this whenever the player collected a polaroid - one of the games key story items - to reflect the character noticing something that breaks their perceived reality.

One trick we used a lot is objects that teleport or disappear when the player isn’t looking. This creates moments of ‘wait, was that always there?’ that mimic the player characters confusion.

After some internal playtesting, we felt the game needed a bigger reveal for it’s final moment. The entire experience hinged on the players sudden realization that they’re playing as a ghost.

The ‘stalkers’ were added to foreshadow this reveal and guide the player gracefully to the games climax: using the metal detector to find your own skeleton.

The stalkers are present from the start of the game but hide in the treeline and vanish when you look away. We wanted the player to feel like they we’re being watched but unable to figure out why. As the game progresses, the stalkers become more obvious, prompting the player to walk towards them and visit sections of the beach that contain the polaroids. This culminates in them standing around the location of your buried skeleton, like friendly ghosts helping you reach the afterlife.

Screenshot of a Lightning VFX script in a game development interface, showing animation curves and sound list for lightning effects.
Screenshot of C# code for handling lightning strike animations and timing in a Unity project.
Early prototype visuals of a beach with trees, rocks, a boat, and a cloudy sky.
Nighttime scene with a boat on sandy shore and two dark, shadowy creatures with glowing eyes near trees.

Outcomes

Two men are setting up a computer game in a dark, fiery themed room with silhouettes of crosses and smoke on the walls. One man is seated at a table with a computer monitor, and the other is standing, leaning over to look at the screen.
  • Released on Itch.io

  • Showcased at Netherworld Indie Dev Night

Screenshot of a game development webpage titled 'What The Tide Brought In'. It includes text about a day on the beach turning strange, game controls, credits for art and programming, a download link, and four in-game screenshots of a beach scene with dunes, water, and some objects.
View on Itch