We were inspired by the classic game Snake (aka Centipede) and wanted to add a twist of our own!
What it does
ICEA (pronounced eye-key-uh) is a game where you play as Alan, a low-paid employee at ICEA. The ICEA is inter-dimensional, so there are lots of things about it you won’t see at a store on Earth! You can move in an 8x8 grid, where you try to collect as many coins as you can. In doing so, you must avoid bumping into alien customers. However, there are also power ups! There are 3 types of power-ups you will encounter that will help you avoid enemies and collect more coins! Also, this is interdimensional, so the 8x8 grid you’re on changes periodically! The customers stay in the grid they’re in, but you move to the next one! So be careful with where you’re positioned before moving to the next grid.
How we built it
We used Unity to build the game in a single scene by manipulating the camera. This allowed us to avoid load times, but made it more difficult to program. We then used the WebGL option in Unity to build the game for browsers. You can play it by clicking the “Try it out” link!
Challenges we ran into
Having 3 different maps and powerups was difficult to juggle around because whenever we disabled a map to switch to the next, it would also disable the powerup item. To get around this, we had to create a new powerup item when the Player picked it up, so that it wouldn’t get disabled. Building the project in WebGL turned out to be more difficult than expected, and we encountered a lot of strange bugs that appeared in the browser, but not in the editor. The errors were mostly due to compression, but a different compiler was used in WebGL, which also caused issues.
Accomplishments that we're proud of
This was a new type of game that none of us was familiar with when it came to designing and programming. Particularly, using a grid to restrict the player’s movement. However, we synthesized our knowledge with our goals, and were able to make innovative gameplay! One specific example was implementing map switching. We created a switch statement that had 3 cases, one for each grid. This was combined with our implementation of these grids, which was with tilemaps. Setting each tilemap active and inactive also set its children as well, which was very convenient for keeping the children customers in the same position for a given tilemap whenever there was a map switch. Using tilemaps made everything significantly smoother.
What we learned
How to build a Unity game in WebGL, and upload it to itch.io! We refined our tilemap, scripting, and particle system skills as well!
What's next for ICEA (Interdimensional Convenience Emporium for Aliens)
Adding custom controls Adding a new type of enemy that stays constant in all maps Enemies bounce off of each other instead of sharing a tile Adding shelves that act like a barrier, but don’t end the game when hit Increasing enemy movement speed as the game progresses