top of page

Thesis - Midnight Island

Engine: Unity 4

Platform: Android

Genre: Audio game/ adventure

Development Time: 80 hours

Summary

Overview

Midnight Island is an audio game for Android devices. Players are trapped on an island where all they can see is their compass. They only way to get off the island is by collect crystals that emit a unique sound.

Using only their hearing and a compass, players must navigate the island, avoid dangerous beasts, and collect all the crystals.

I decided to make an audio game for my thesis because audio is such an important part of game and level design, but I felt I didn't have enough audio experience.

Game Design

Design Goals

  • Audio Gameplay & Atmosphere - The primary goal for my thesis was to make a game where audio was the primary source of player feedback. This meant that the game was playable by ear alone. I also wanted to use audio to create an emersive environment.

  • Limited Visuals - Although I wanted the core game to be playable with audio alone, I knew there were some areas, such as UI and Tutorials, where I wanted to use visuals. The visuals are only there to enhance the experience.

  • Open Design - I wanted to create a game where players find their own path and don't just respond to audio cues. Although there is a clear goal for players to head towards, it's up to them to find their way around obstacles.

Mechanics

Midnight Island has very simple mechanics:

  • Players turn their phone to turn

  • Tap to take a step forward

  • Collect crystals

  • Avoid beasts and barriers

I was initially concerned that a game where all you do is move wouldn't be fun, however, testers enjoyed the unique auditory experience and immersive soundscape. Trying to locate where the goals are and where the enemies are using sound proved to be an engaging, and sometimes tense experience.

Level Design

Tutorial

Out of all the levels, the tutorial took the most time to design. I relied on text to teach players; I wanted to teach players everything they need to know to play in the tutorial so they wouldn't need text in the rest of the levels.

  1. The tutorial instructs players how to hold their phone

  2. When players hold the phone properly, the tutorial tells players turn to face the crystal.

  3. The tutorial tells players to tap to move

    1. The message leaves after 10 taps

  4. When players get close to the beast, the tutorial tells them to avoid beasts

    1. The message leaves after players get out of the beast’s growl distance or enter the forest or river

  5. When players enter the river, the tutorial tells them they can move through rivers

    1. The message leaves when players exit the river

  6. When players get close to the crystal, the tutorial tells them to collect crystals

Main Levels

Technical Design

Compass

The compass is the main visual element of Midnight Island, and shows where the player is facing. Although the game is playable without it, the compass helps players navigate around obstacles, shows that they turn when their phone turns, and gives them a frame of reference when determining when a sound is coming from.

During production, the compass changed both in visuals and implementation. I started off using the phones compass to control the in-game compass and player rotation, I found out that the phone's compass was twitchy and susceptible to interface, and I needed the compass to be as accurate as possible. Eventually I settled on using the gyroscope to manual turn the player.

The initial design for the compass was standard, where the needle turns to show what direction you're facing. During testing, one player thought that whenever he heard a sound to the right, he was supposed to go east because east was on the right side of the screen. I changed the compass so the needle stays still and the directions rotate to prevent players from associating directions on the compass with forward, back, left, and right.

Ocean Sound

Creating position ocean sounds was challenging because the sound needed to come from around the island, rather than from a point.

I solved this by creating a script that moves the sound source to the closest point on the shore. This way, the sound of the ocean can be heard all along the shore, but is still positional. The island is a circle centered on the original, simplifying the math involved for this solution. 

For the tutorial, which is essentially a rectangle with the ocean on one side, the ocean sound simply follows the player along the x-axis.

bottom of page