Blob-Man
Blob-Man is a maze-action arcade game inspired by Pac-Man. Control Blob-Man and navigate your way around a maze to collect as many coins as you can while avoiding all the robots.
Genre: Maze-action arcade
Engine: Pico-8
Team Size: 1
Duration: Nov. 2020 - Dec. 2020
Platform: PC (Itch.io) link to the game
Postmortem
I had learned an introduction of everything that goes into making a video game. Every little component takes time to create and is a necessary part of the whole picture. With this knowledge I have also learned how to communicate across disciplines, such as with artists and other programmers. This allows me to communicate with others more effectively, as I have some knowledge behind the creation of animations, programming practices, and audio design. However what I learned above all else is that problems should be anticipated. Bugs will arise, animations just won’t look right, or sounds may repeat indefinitely. I never expect that my first iteration would be perfect, and learned that the initial product isn’t a reflection of my own capabilities.
Notable Roles and Duties
Gameplay Programming:
Implemented Player movement and character controller w/Animations
Character collisions with the map
Title Menu and Death Menu
UI - Hi score, Current score, and life amount tracker
Player death respawn
Enemy movement patterns w/ Animations
Coin generation on the map and functionality of increasing player score
Audio:
Created the title and in-game music
Created all sound effects
Level Design:
Designed and implemented the maze level
Enemy and coin placement in the maze level
Gameplay Description
In Blob-Man, the player can use the arrow keys to move around the maze while avoiding enemies and collecting coins. Collecting coins will add 10 points to the player’s current score. If the player collects all of the coins in the maze, the maze will reset for the player to collect all of the coins again to further increase their score. Running into enemies will cost the player one of their lives, and when the life counter reaches zero the game is over.
Design Process
Blob-Man was developed in Lua within Pico-8 with minimal use of 3rd party sources. The game was originally meant to be a snake-game, however I wished to further challenge myself by creating a Pac-Man style arcade game. Also my late Grandfather had a love for the old Atari arcade games, so I wished for my first game to honor his influence on my life. The development cycle took place over the course of 1 month with myself as the Sole Developer. Aside from the sprite and animation of the character Blob-Man, all elements of the game were created by myself. This was an exciting experience, as I had never created a game from scratch, let alone using the Pico-8 game engine. The two biggest hurdles I had faced was the creation of the game’s music tracks, and learning the Lua programming language.
When creating the music tracks, I realized how important every note of the song was. If just one note was off, then either the loop was not seamless or the entire tone of the song was off. Because of this, I took a lot of time perfecting these tracks.
Learning Lua was a different experience altogether. At the time my programming knowledge was limited and I had no experience programming a game. To compensate for this, I started learning the engine and Lua about 3 months prior to development. This time period didn’t teach me everything about the engine and language, but it taught me enough to make my own discoveries during development.
Gameplay Programming
The biggest challenge I ran into was spawning all of the coins onto the map. All of the coins needed to spawn onto the floor tiles and ignore all of the wall tiles. So I created a table full of coins and a looping function that detected if a tile was a wall tile. If that tile was in fact a wall tile, then that position was removed from the table of coins, and the coin wasn’t drawn in that tile. A snippet of my code for this solution, as well as other code snippets, are shown below!
Code Snippets
Coin Placement Code Snippet
Enemy Traversal Code Snippet
Player Death Code Snippet