PGZero Level Maker

Design levels visually. Export to Pygame Zero.

A visual level editor for students creating Pygame Zero games. Draw rectangles, circles, and place actors on a canvas, then export to JSON for use in your games.

Download for Windows

Includes editor, Python helper library, and example game

Features

Shape Tools

Draw rectangles and circles with customizable colors, sizes, and fill options. Perfect for platforms, obstacles, and collectibles.

Actor Placement

Add your own images as actors. Set anchor points matching Pygame Zero's system for precise positioning.

Grid Snapping

Align elements precisely with configurable grid sizes (10, 25, or 50 pixels). Edge snapping for pixel-perfect layouts.

JSON Export

Save levels as clean JSON files. Load them in Pygame Zero with the included Python helper library.

Easy to Use in Your Game

from pgzlevel import Level

level = Level("levels/level1.json")
WIDTH = level.width
HEIGHT = level.height

def draw():
    screen.fill(level.background_color)
    level.draw(screen)        # Draw shapes
    level.draw_actors(screen) # Draw actors

pgzrun.go()

Workflow

  1. Design - Use the visual editor to create your level layout
  2. Add Images - Drop your game images into the images folder
  3. Export - Save your level as a JSON file
  4. Load - Use pgzlevel.py to load the level in your Pygame Zero game

Requirements