About 2D Game Maker

Build 2D platformer levels in the browser. Paint tiles from Kenney tilesets, place sprites, save/load levels as JSON, export as PNG. Imports from Tileset Maker and Sprite Sheet Maker. Free, no sign-up.

How to use

  1. Pick a material from the left panel — six built-in Kenney New Platformer Pack terrains (grass, dirt, stone, sand, snow, lava) ship preloaded so you can paint a complete level without importing anything.
  2. Choose a tile from the palette grid. Single tiles paint one cell; multi-tile blocks (3-wide TL/T/TR patterns) auto-fill corners and edges so platforms look correct without manual edge tiling.
  3. Click or drag on the central grid to paint, hold Shift to erase, scroll to zoom, and middle-click drag to pan. Adjust grid width and height in the right panel — the canvas resizes without losing existing tiles.
  4. Use Tileset Maker upstream to generate a custom 5-color palette tileset, then load that PNG sheet into 2D Game Maker to swap out Kenney art for your own materials while keeping the same auto-tile logic.
  5. Place sprite props from your Sprite Sheet output on top of the terrain layer for enemies, decorations, or interactive objects. The grid keeps both layers aligned to the same tile size for clean engine import.
  6. Click Save to push the level state (tile-id grid plus tileset reference) into your 3D Assets dashboard via Save to My Assets, where it lives alongside other game-ready outputs across browsers and devices.
  7. Export the level as JSON to feed any 2D engine — the file packs a 2D tile-id array with the active tileset slug, so Phaser, Godot, GDevelop, or a custom canvas renderer can rebuild the scene pixel-perfect.

Examples

Build a full platformer prototype in a weekend
Sketch a tower-climb level by painting stone platforms with grass tops, scattering lava floors at the bottom, and saving as JSON. Drop the file into a fresh Phaser project, point the Tilemap at the Kenney sheet, and you have a playable level the same day — perfect for a 48-hour game jam.
Design a tutorial scene for your students
Paint a small 16-by-10 grid showing one safe platform, one hazard, and one goal block. Export the PNG for the lesson handout and the JSON for the runnable Phaser starter. Students see the level visually, then poke at the array to learn how tile IDs map to art.

Frequently asked questions

What format is the exported level?
The JSON export contains a 2D array of tile IDs plus the active tileset reference and grid dimensions. Any engine that supports tile-id maps can rebuild the level pixel-perfect — Phaser, Godot, GDevelop, MonoGame, or even a custom canvas renderer. The PNG export is a flat raster snapshot of the entire painted area, useful for design docs and itch.io storefront screenshots.
Can I import the levels into Phaser, Godot, or GDevelop?
Yes. The JSON layout matches standard tile-id grid conventions. For Phaser, parse the array into a Tilemap layer; for Godot, paste the array into a TileMap node and assign the matching atlas; for GDevelop, use the Tilemap object and reference your tileset PNG. The Kenney terrain is CC0, so you can ship the bundled tiles in commercial games without a credit line (though Kenney appreciates one).
Are the bundled Kenney tiles free for commercial use?
Yes. The included Kenney New Platformer Pack art is CC0 public domain, so you can ship it in free or commercial games on Steam, itch.io, mobile stores, or anywhere else without royalties. Levels you paint and export inside 2D Game Maker are yours — ToolFluency claims no rights to your output. Crediting Kenney for the source art is optional but recommended.
How does it pair with Tileset Maker and Sprite Sheet Generator?
Tileset Maker produces a 5-by-5 atlas of edges, corners, and centers from one palette — drop that PNG into 2D Game Maker to replace Kenney terrain with custom art that auto-bevels edges. Sprite Sheet Generator outputs character and prop frames sized to the same tile pitch, so heroes, enemies, and decorations sit naturally on the painted ground without scaling artifacts.
Does my level save anywhere I can come back to?
Click Save to push the level into your 3D Assets dashboard via Save to My Assets — you can reopen it from any browser signed into the same ToolFluency account. The JSON download is the canonical exchange format for moving levels between accounts, machines, or into your engine. Both routes preserve every painted tile plus the tileset reference.
Can I undo a stray paint stroke?
Yes — Ctrl+Z undoes the last paint or erase action and Ctrl+Y redoes it. The history buffer is generous so you can experiment with layout changes without losing earlier work. If you need to wipe the whole grid and start over, Clear Grid in the right panel zeros every cell while keeping your active material and grid size intact.

Part of ToolFluency’s library of free online tools for Creative. No account needed, no data leaves your device.