Download here: GBA emulator required
Lil Oculus is a working demo for a cartoony platformer designed for the Gameboy Advance.
Designed as the culminating project in Media Device Architecture class, the goal was to create a sample level for a game using the GBA as the platform of choice. The focus for this project was to write a working game in C that uses all of the modes of the GBA, has a beginning and end, and has an interesting concept to back it up. There was also a strong push for artistic creation, as well, so the I had to split my attention between solid programming and a cohesive artistic design.
For this particular game, my focus was on creating a solid platformer and working within the constraints of that genre. I wanted to play with all of the general trappings of a platformer to see how some of my favorite games were built and how hard it would be to recreate the mechanics that I was already so familiar with. A lot of time went into learning C and then how to apply that within the architecture of the GBA. The main obstacles were learning the various modes, learning how to place sprites and animate them, build environment images and set up the collision maps for the level. Once I learned these GBA-specific routines, the rest of the coding came together. I spent a lot of the time playing with the jumping control, trying to make him feel light and springy while still maintaining a sense of weight. I wanted him to be able to leap to great heights, but still make it a challenge to platform and jump over enemies.
The point of the game is to destroy the evil trashcans invading your backyard, so I had to have a way to vanquish the enemies. This came in the form of little laser pellets that shoot from his eyes when he sneezes. The most important aspects of this mechanic were how far the lasers shot, how fast they shot, and how manycould be shot at a time. After a lot of playtesting, I limited the distance to about a quarter of the screen and allowed only 5 shots in a row. They shoot quickly, but you have to be fairly close to the enemy to destroy them.
The goal of the demo is to work your way through the level, killing the mutated trashcans that patrol the backyard. The enemies are controlled by a basic patrol script that makes them wander back and forth within a set perimeter. It takes three shots to kill them, but one touch from them will kill you. Once you have made your way through the level and killed all of the evil cans, you have saved your backyard from imminent destruction.
A lot of time went into creating a fun, unique main character that would have a backstory and a purpose for the goal of the level. From the beginning of the project, I knew I wanted to create a platformer, so the main character was my top priority. No platformer is good without a fun protagonist! Little Oculus is the resulting amalgamation of zany thoughts and childhood influences rolled into one tiny superhero.
He is Milo, a mere 9 year-old boy who discovers the dangerous and exciting consequences of an unleashed sneeze! Playing by himself on the playground one day, a sneezing fit overwhealms him. His friends had recently begun discussing the age-old myth that sneezing with your eyes open will cause your eyes to explode out of their sockets! Just the kind of gruesome humor that fascinates young boys.
Milo takes this myth to heart and, for science's sake, decides to dispell the rumors. With such a fortuitous onset of sneeze after sneeze, Milo struggles to force his eyes open. After nearly 10 minutes of rapid-fire germ expulsion and much inner struggle, Milo musters all his strength for one final push. On the final sneeze, Milo forces his eyes open and BAM! The slide in front of him melts as a bright beam erupts from eyes that have exploded to four times their normal size! Milo sits in silence for a second, realizing that he has just disproved the fairytale while discovering that he has SUPERPOWERS! The rest is obvious, for the only thing a little boy with superpowers can think about is becoming a super hero: Thus, Little Oculus is born!
Starting from scratch, I based my character design around the one characteristic I knew for certain: Little Oculus' humongous, laser-shooting eyes. The needed to stand out, remain distinctive, yet blend with the rest of his design. He needed to look like a child trying to dress like a superhero by combining clothes from around his house.
In the design process, I unleashed my inner child. I drew inspiration from a lot of different sources of pleasure in my childhood, such as comics (Foxtrot, Calvin and Hobbes, X-Men), video games (Earthbound, Final Fantasy, Mega Man, etc.) and cartoons (Dexter's Lab, Doug, Recess, and many others). I tried a bunch of looks for Lil O, drawing various aspects from many of these works, whicle trying to create my own cohesive vision.
Ultimately, I decided that he would need a clear color scheme and a few distinctive items that would shape his silhouette. Drawing from my love affair with Earthbound, I knew he needed a red baseball cap. It is a distinctive piece that underlines the idea that he knows he is cool. After that, the most important part of superhero ensemble is that he needs to hide his identity. To cover face and give him that extra flair, I gave him a really long scarf that hides everything but his eyes and flows out behind him like a cape. These tw pieces lent to a very cool look that works well for a young hero.
After these two red pieces were added, the rest of his outfit needed to offset their boldness. Therefore, the rest of his clothes are more or less standard clothes that add a bit of minimalism and help ground the idea that he is still a kid. His blue t-shirt contrasts well with the red accent pieces, and the khaki cargo shorts are a childhood staple. With all of this combined into one outfit, I had my little superhero ready to get out and fight crime!