js13k game challenge

You can make games, right? But, Can you make them in less than 13 kilobytes?

13kb is a small amount. This means the assets such as music and art has to be limited. Also no game engines. It is quite a challenge and that’s why I am interested.

The moving parts:

1. A game loop

To handle the game update and draw. The basic game logic to power on the game.

2. Collision handler

For movement, attacks, etc… Most games rely on this and is not so difficult.

3. Sound engine

Since audio can take up a lot of space I am researching ways to add audio by generating it on-the-fly in the browser. So far I can play math equations. Maybe I will take a look on jsfxr.

4. Art engine

Usually I make pixel art, but this time I am looking to generate SVGs from pixel art. That would give more flexibility since colors can be swapped or even some asset mixing can be done. This is still under consideration.

5. Tile engine

Tiling is good for performance. Also allows creating the game graphic hierarchy in external more visual tools and import them directly into the game.


The basics could be “easily” covered and is now time to design. It will be good to have a playable game in less than 13kb, but it would be great to also have an engaging and fun game. Maybe something rogue-like or bullet-hell. Even a runner can be possible. 

I am also thinking about adding some simple AI to the game, since it is more heavy on the coding side where there is more free space.


Being limited is a common way to squeeze creativity. By having so little space to use, you are forced to make many things by yourself and rely as less as possible in 3rd parties. Which is good to learn how things really work.

After the game release I will make a post-mortem and will make explanations of each of the modules, since it can be useful for others and even myself, by having it well documented.

Live long and prosper.

2 thoughts on “js13k game challenge

  1. Hey, nice write up. Wishing you the best of luck with the compo!

    I love themes like elements, because they don’t lock you into a genre at all. I’m still in the idea phase, not quite there yet. Hope to get started coding soon.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s