Published in


How I created a GameBoy-like game in 13kb

History of Gravepassing — my entry for js13kgames 2022.

Inspirations and graphics

Some inspirations: NES games like Legend of Zelda and Pokemon Gold aesthetics were among them.
Building Sprites: Sprite is constructed from several emojis downscaled making it loose all the details.
Regular emojis rendered in very small sizes can get completely new meanings.
Rendering differences across the browsers. MacOS vs Windows vs Ubuntu Linux

Game Screen Structure

context.imageSmoothingEnabled = false;
createImageBitmap(ctx.getImageData(0, 0, ctx.canvas.width, ctx.canvas.height)) // This makes consecutive rendering faster


Visual representation of a quad-tree. The space gets divided into four subsections if there are too many items within its boundaries. Green rectangles represent the boundaries of the game objects.

Dithering Effect

Post Processing

Photo by ryuuji89 from Please show off what crt shaders can do!


Optimizing package size



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store