Eruption!

A Rhythmic Volcano Escape by Henry Thiemann

Description

Eruption is a combination of a rhythm game and an endless runner. The goal is to fly your music-powered ship out of an erupting volcano without crashing into the walls and becoming engulfed by lava. In order to successfully navigate the tight turns, you need to move along with the beat of the music. The current version of the game never ends, but one day it might be possible to actually escape from the volcano.


Screenshot Screenshot

Instructions

Up to start. Left and right to move.

Move along with the rhythm to avoid hitting the walls. If you die, you start over from the beginning, but the level stays the same. Try to memorize the melody to help you get through the beginning more easily.

Motivation

I wanted to make a combination of two of my favorite types of games. I also wanted to experiment with generating a melody based on user input (although the melody here is actually entirely computer generated).

Design

There are several design elements that I tried to incorporate in Eruption. Moving through a narrow passage with the aid of rhythm was the main goal, and the most obvious feature. The wall objects are also the data structure for the melody. Their appearance is generated based on the rhythm, duration, and pitch of each note.

Another key element is the randomly-generated melody, which was inspired by games like Flower and Space Invaders Extreme in which the players actions become part of the music. The notes are actually generated based on a scale and chord progression that can be changed very easily, resulting in a surprisingly musical random melody. This was the most difficult part of this project. Designing a data structure that could be easily changed to be any progression in any key was tricky, but now it's very easy to change the structure of the music. I'm hoping to add more levels where the chords change to reflect the design and feel of the level.

I also tried to make it hard to stop playing Eruption. It's very easy to start over when you die, and because the random level is repeated until the game is restarted, a skilled player can memorize portions of it, making it possible to play the game at very high speeds. I can personally attest to the addictiveness of Eruption, as it became a problem when I wanted to keep playing my game instead of working on it.

The tempo is currently static, defined when the game is launched, but I'd like to add a feature that would change the tempo based on how well the player is doing. This would make the game adjust its difficulty to the player, ensuring that a player of any skill level can have fun with Eruption.

Source

eruption.zip