Ascension
About ASCENSION:

In ASCENSION a lonely ghost has one last journey to escape from the forest and save the princess until he can rest in everlasting peace. It is your job to help guide him through the forest of his peril and into the sky and beyond. Start on the forest floor and gather the mysterious orbs that will slowly grant the ghost his power to fly. Climb through the branches of the dark woods and make your way above the canopy. Once in the light of the sun, feeling more powerful push on through the treetops to find your path to the heavens. At the end of this last leg of the trip the ghost now has his strength, and he can ascend.

This game serves as the introduction and a test for the game. Obviously, the story has not ended here as the character has not found out who killed him and where the princess is. Therefore, when I have time I would definitely come up with a sequel, hopefully after I have gained better knowledge and skills in coding.

The game was started during Midterms, but it wasn’t complete without a story, concept, design, accurate interactivity and instructions. So for the final, I have added more keyClicked interactivity, camera panning during video, and having a start menu, cinematic(which can be skipped) and an ending which can be restarted to the menu page. I have also fixed the accuracy of clickable items, added a keyClicked H for users to get thoughts from the character as hint if they are lost.

I used cos() to make my character float up and down. I used a lot of Booleans to activate levels and make things happen, words appear in the game. PImage was fairly used throughout the sketch for backgrounds and character, to allow easier movement, especially when changing stages. Pfont was used to set custom font to make the game more customized. Movie was used to play the cinematic before starting the game to tell a story. Audio Player was used to add music and sound effects. Audio Sample’s trigger() helps activating sound effect at a specific time.

PushMatrix() and popMatrix() are used throughout to have custom translation and rotation. I created a rest Boolean that runs setup() again so that everything goes back in place to be restarted. I also used millis() to calculate the time the sketch was started to determine when to make words disappear after it is being activated with the H key. Constrain() was used to allow camera panning with mouseX during the cinematic, but to only a certain range.

For someone coding for the first time in this semester, it was a pretty tough semester but I enjoyed the challenge and luckily everything could be explained logically. So it is not that difficult to find a solution, the problem is it just takes up a lot of time. I spend almost 10 to 20 hours per week to get some difficult assignments in this class done. And it opened up my eyes to the world of coding, which I am very much interested in.

I will continue to implement the java concept into my scripting and rigging career in the future. Next semester, I will be taking the scripting class and eventually I hope I can be the problem solver in a great studio

Code: Soure Code

Info
Year: Fall 2014
Type: Game Design
Class:
Intro to Programming, Academy of Art University
Tools: Processing

Concept Design, Visual Development, User Experience Design: Andrea Goh
Instructor: Yoon Chung Han