you are an ant
Bitmap Game
Making a bitmap game in p5.js.
In this game you play as an ant who likes material things and is trying to find its own identity through that,
initially listening to outside instruction and eventually left on its own to find what it likes.
→ link to code
Instructions
Mouse click advances the cutscenes, arrow keys move the ant, "C" key picks up the items.
There's a total of 6 levels, a mission accompanies each (excluding the final level).
The mission instructs which items are required and how many you need to pick up.
In order to advance to the next level, you need to pick up all the required items and have total 15 items in your intentory.
In the first level, the required items fulfill all 15 inventory slots, so you have no choice but to follow along.
As the levels progress, the required items decrease, leaving you space to pick up things of your choosing.
In the last two levels, some items (that are more obscure references) will run away from you, preventing you from picking them up.
This is meant to portray how the previous power of the mission requirements still lingers and influences you, preventing you from
achieving true free will: the illusion of freedom and control.
There is no reset button, item locations are set randomly.
Design Process
This game was to be autobiographcal, to some degree. I wanted to do something more lighthearted, so I decided to explore my tendency to desire and collect material things and trinkets and objects, myself represented by a tiny ant, and the things represented by, things. It wasn't supposed to be that deep and introspective but somehow started to go in that direction as I started working and thinking more about how the gameplay would relate to and indicate concept.
For the items, I used everyday household objects, things that are around me, and things that I'm interested in. The order/level in which they're displayed is arbitrary, but I tried to include a mix of both everday and "weird" things for each level. I added the run away function at the end to try and clarify my messaging, but I don't think it was too effective. I had wanted to add a reset button per level, but I never got the time to work it out. This document details more of my documentation, process, problem solving, etc. All visuals and assets were drawn by me.
Reflection
This game took a lot out of me, and there's still a lot of probelms with the current version, in both concept delivery and actual functions.
I think this was a case of, the concept and idea is much more interesting than the actual output material,
which is kind of disappointing and unfulfilling. I asked a couple of my friends to play it as well and they all gave me mediocre to bad scores.
My problem is most likely in the incomplete inital concept and lack of scope, and my lack of coding ability to carry out
my solutions to problems caused by that.
My code is also extremely inefficient and repetitive.
I kind of figured out a better way to organize everything by talking with my CS friend, but it was already way too late.
I was too focused on just getting things to work rather than trying to write clean code.
Also, the game's instructions seemed to be extremely unclear or did not stick with anyone besides me,
so I need to either make them more clear or add something like a tutorial stage.
In general, there's a lot of problems. The most successful aspect is probably either the ending or the visuals/assets.
Drawing everything was very fun, especially since I hadn't drawn seriously in a while.
Credits
This project got code help from this sketch by Xin Xin about JavaScript splice().