The World Under

a game by Mikimation aka Miki Hakim

Controls: 

Left\Right - Walk

Up - Interact

Down - Defend

Z -Attack

X - Jump

Down + X - Roll Dodge


Dev notes

I am an animator by profession. I've had a big project this year in After Effects that made me required me to learn some programming. Around that time I discovered Pico 8 and fell in love with the platform and a lot of the games made by the community. I decided I want to fulfill a dream I've had for 20 years now and make a game, like the games I used to grow up on in the 90s. I've started doing some tutorials, and what started as a small project developed into making a full-on game. I have learned a lot through the process. With each mechanic I wanted to put on the game I needed to learn more about programming in Lua and math.

After I set up the engine, I found out what game design really is. Working with Pico 8's relatively small map, I've understood how I should lead the player in the area, and use the space to its maximum potential. I also had to learn technincs used by early games, such as pallete swapping, used in the sword animation, fade to black screen, and different level colors. Creating systems was really fun. Like the enemy system, and building modular enemies with modular ai. With these systems I could create a big amount of enemies while using a rather little sprites in the process. To be able to put alot of contents in Pico 8's code limitations, I've developed all kinds of compression methods that really let me squiz in alot, though I've had to let go of alot of ideas that I wanted to put in. The game is not perfect, but it's my first game, and I know you gotta stop at some point and move on to the next project. I did manage to create a full game, and I'm really proud of how The World Under came to be.


about the code

For an efficient way to place enemies on the map, I've made a script that scans the entire map, and look for tiles that will spawn enemies(first tab after the comment "map scan for enemy tiles".

controls are all shared by the enemies and the player, in order to save code tokens. It surprised me how well it worked out.

Actors management. the function create_enemies on the 4th tab is the properties of each actor(powerups, enemies, NPCs, etc...). Each actor has a type, and according to it's type, it gets it's custume properties, such as sprites, width, height, ai etc...

The Ai of the enemies is also modular, as each block of the ai can be called with it's name, in the AI table.

sprite_builder() is the function that builds each enemy from different sprties and handles it's animation properties. Took me some time to get it to work well, and I was able to do with some really amazing enemies.

In conclusion This game was really fun to made and I hope it will be fun for you to play

StatusReleased
PlatformsHTML5
Rating
Rated 5.0 out of 5 stars
(1 total ratings)
Authormikimation
GenreAction, Adventure, Platformer
Made withPICO-8
Tags8-Bit, Creepy, Horror, Metroidvania, Monsters, PICO-8, Pixel Art, Retro

Comments

Log in with itch.io to leave a comment.

p8 file, possible?

(1 edit)

game looks and plays absolutely great!

Pixel art is so beautiful! And the action was fun, like pushing the limits of PICO-8!

I made it to the beautiful reflection in the water, but couldn't go on from there. 

I can't even open the door :(

Presentation is excellent! I love the sprite work.