In the world of Buddhism, there are six realms. All creatures are going to reincarnate into one of the realms after they die according to what they did in the past. However, for those souls who have reached Nirvana, they don’t have to suffer from this pain of reincarnation. In this game, you are going to fight against six stages, which correspond to the six realms. Try to find the path to reach Nirvana and escape from this endless cycle.

This is my final project of MUSIC 256A (CS 476A) at Stanford University.

Introduction

In every realm, there will be several lighthouses that used to generate beautiful melodies. Unfortunately, they are somehow damaged, and the flame was lost. Pick up the wood stick (press enter) they provided and use it to carry back the flame with melody that fits the background music the most.

Also notice that you have to bring the flame back in time, or the light house will explode!! If you manage to complete the mission in time, you’ll achieve some good karma. After you finish repairing all the lighthouses, if the final harmony sounds good, congratulations, you get more good karma and that leads you to the next realm! If not, either will you stay in the same realm or go to a previous one.

Every realm has its own trap that you need to beware of. For example, Naraka (Hell Realm) has fire thrower, Manusya (Human Realm) has laser, and Preta (Hungry Ghost Realm) has some giant foods chasing you! (That’s because in this realm when you try to eat things, your throat will get burned.)

The game chooses to “light up lighthouses” because what Buddhism talks about is “enlightment”. Therefore, in this game you not only escape from the world but also “lighting up” and “harmonize” the world.

As for the purpose of this game, I wouldn’t expect the players to know more about Buddhism. Instead, just have some fun with it!

Technical Issues

  • This program is powered by Unity and ChucK (Chunity), and the code was written in C#.
  • I used the Update() function in MonoBehavior class of Unity codes to synchronize the time. It will draw the graph as well as telling ChucK what to generate next.
  • All the melodies and most of the sound are generated by ChucK.
  • To use ChucK in Unity, please see the Chunity reference.