top of page
Honeysong Background_edited_edited_edited.png

Distraction Machine

PC | Unity | 3 year duration | Music Composition | Puzzle

Music Box

Composer

Song Builder

Dialog

The video below has some scrumptious audio you can listen to by hovering!

Project Details

Title

Unity Programmer

Roles

Programming

Game Design

UI & UX Design

Distraction Machine is a music composition sandbox/puzzle game about bringing people together in a post-apocalyptic world.

You are the Distractor - a warrior bard wielding the power to soothe the living and control the undead. But will your music save your people or lead them to ruin?

I was brought onto Miscellaneum Studio's team near the start of Distraction Machine's development to begin prototyping and iterating on core mechanics as its only programmer. The prototypes I wrote played a crucial role in securing funding in order to continue the project, including funding from Canada Media Fund and Code Coven's ELEVATE 2020 accelerator program.

By release, I wrote almost all of the code the game runs on: UI, gameplay, music creation & playback, animation, asset integration, save systems, and narrative content delivery.

In pre-production, I trained another teammate for help with integrating tutorials and localization. I also wrote tools for my team to use in production, including a narrative sequence editor, and saving tool for pre-written music.


I was also tasked with creating some design pitches to solve some of the challenges the team was facing at the time, including a pitch for the core game loop, and what would become the Request & Criteria system.

Takeaways

Game Design

Requests: Core Game Structure

Core to Distraction Machine's narrative is the role of the Distractor; an individual who uses music to fulfill the community's needs. A question arose during prototyping: How do we structure gameplay to fit this narrative? I designed the Request system in response to this need.

A request is the representation of a level in Distraction Machine. Players are given requests by NPCs: they are backed by narrative reasons (i.e. help my child fall asleep!) and require the player to create music in the music box system. Requests come with starting criteria, but additional criteria can usually be found by speaking with extra NPCs in the world. Completing more criteria earns the player an 'improved' narrative outcome.

A cutscene example of two different outcomes; one where you fail or succeed at creating a soothing lullaby.

Creating Content Tools

Creating Content Tools

In order for a request to function as a story, a request requires a flexible timeline which dicates when NPCs would appear, what they would say, and what Criteria they would give. I created the Request Editor, using Odin Inspector and custom Unity Editor scripts, to facilitate smooth creation and editing of Request content.

The Request Editor was pivotal in delivering all of our narrative and gameplay content. I learned much about what makes a good development tool thanks to valuable feedback from our designers.

A diagram of some of the Request data structure I created before developing the tool.

Maximalist UI

UX in a Maximalist UI

Distraction Machine's extraordinarily diagetic "analog" interfaces were a challenge for us to achieve. Extreme emphasis was put on visual heirarchy, and usage of color, motion, and sound became mandatory in order to cut through the striking, high-detail visuals. I took part in many of our feedback sessions, offering two solutions to some of the challenges a bustling artstyle brought to the game.

Red, shining reflectors are used as notifications to indicate required attachments for an instrument to function.

Large, visually complex UI elements are designed to move on/off screen at different intervals & slow enough to be followed by the eye easily, in order to be easier to track the differences between unique screens.

bottom of page