PuzzleScript
Most puzzle games, from crate pushers to sliding blocks, come down to a few rules about what happens when one thing moves into another. PuzzleScript is a small language for writing exactly those rules. It opens on Greenhouse Shuffle, a three-level game: push the flower pots into the sunlight, then find the one line of code that makes pushing work and change it. Free, in the browser, no account needed to try it.
Using this with a class? Make a free class and add your students yourself: each gets a username and password, with no email or Google account needed. Or give them one join code. Using Google Classroom? Post the link there; with a free class, the link also puts each student in your class, so you see their work. mytekDev is also available from the Google Workspace Marketplace, so your school's Google admin can install it for everyone.A first lesson: Everyone plays Greenhouse Shuffle, changes one rule, then swaps seats with a neighbor, who has to work out what changed by playing it.
Set up a free class Share to Google ClassroomWhat a student actually does
They start inside a working game. Click it, press X, and push the flower pot into the sunlight with the arrow keys. Z takes back a move and R restarts the level. By level three there are two pots, a locked gate, and a key on the floor that opens it. Then they look at the code on the left, find the RULES section, change a line, press RUN, and play the version they just made.
From there it is the real PuzzleScript. They draw their own objects as 5 by 5 pixel grids, give each one a letter, and lay out levels as rows of letters, by typing or in the level editor (press E). They write rules for ice, crates that stick together, or monsters that chase the player, set what counts as a win, and pick sound effects from the generator buttons above the console. HELP opens the full PuzzleScript documentation inside the editor. With a free account the game saves, and a share link opens a page where anyone can play it in the browser.
This one line is the whole push. Read it as a before and after: on the left, a player moving toward a pot next to it; on the right, the same player and the pot both moving that way. The engine looks for that pattern on every move. Delete the line and the pots stop moving, because nothing says they should. Change both arrows to < and the player pulls pots instead.
What they are learning while they play
Nothing here is presented as a lesson. This is what the activity is made of.
| What the student does | What it is |
|---|---|
| Walks into a pot and watches it slide | Rules as patterns. A rule is a picture of a before and an after. Every move, the engine looks for the before and swaps in the after. |
| Deletes the push rule and tries again | Cause and effect in code. Pots only move because one line says so. Take it away and the game behaves differently, which is how programmers find out what a line does. |
| Presses Z to undo a move | Game state. The whole board after each move is one state. Undo steps back to the one before, which works because the game keeps a record of every state. |
| Draws a sprite on a 5 by 5 grid | Pixel graphics. Each object is 25 cells, and each number in the grid picks one of its colors. A dot means the cell is see-through. |
| Edits the WINCONDITIONS line | Win conditions. All Pot on Sun is a logical statement the game checks after every move. Change it and the goal of the game changes. |
| Puts three levels in order | Difficulty curve. The first level teaches one idea, the next combines it with another, the last adds something new. Good puzzle games teach without a tutorial. |
| Reads an error in the console | Debugging. When a line does not make sense, the compiler says which line and why. Fixing it one error at a time is most of programming. |
| Hands a level to a neighbor | Playtesting. The designer always knows the answer. Only someone else can show whether a level is fair or just confusing. |
How to tell whether it landed
Ask, and let them show you. A student who has understood it can answer these without help.
- What does the push rule say, in your own words?
- If you delete that rule, why can the player no longer walk through a pot?
- What exactly does All Pot on Sun check, and when does it check it?
- Your level can be solved in three moves. How could you make it harder without making it bigger?
- A friend got stuck on your third level. Is the level broken, or did the first two not teach what it needs?
Use it in your subject
Not a technology class? Then the app is how students show what they learned in your unit. More projects for every subject.
Math
Find the fewest moves that solve a level, prove nobody can do it in fewer, then change one wall and see how the count changes.
English
A story told in a puzzle game: message lines between levels carry the plot, and each level is one scene the player has to get through.
Computer science
Rules as pattern matching. Write the push rule as an if-then statement in plain words, then write a new rule from a plain-words description.
Practical notes
- AgesAges 10 through high school. Younger students play the starter, change a rule and draw new levels; older ones write their own rules and build a whole game.
- TimeA minute to the first push. A small game of their own, with three or four levels, takes forty-five minutes to an hour.
- EquipmentA computer or Chromebook with a keyboard and a modern browser. Nothing to install.
- CostFree. The app has no paid tier.
- PrepNone. Open the page and go. Reading this page first takes about three minutes.
- In a groupEveryone can start from the same game and change one rule, then play each other's versions and guess what changed.
For co-ops, microschools, and classrooms
Give everyone the same starter game and one rule to change. The games that come out play very differently, and students see right away that a single line of code can change what a game is about. Then they build levels for each other, and the playtesting does the teaching.
- A starter game with three levels and rules a student can read and change.
- Pixel sprites, a level editor and a sound effect generator, all built in.
- The full PuzzleScript documentation inside the editor.
- No install, no per-seat license. Student work is private by default.
Common questions
Is this the original PuzzleScript?
It is PuzzleScript by Stephen Lavelle (increpare), the open-source game engine and editor, used under the MIT license and still maintained on GitHub. The language and the engine are the same. Our additions: saving games to a free account, a share link where anyone can play the game in the browser, the documentation inside the editor under HELP, and colors that follow the site's light or dark setting. A game is plain text, so it can be copied into any other PuzzleScript editor.
Do I need to download anything?
No. It runs in the browser on Chromebooks, Windows, Mac and Linux. There is nothing to install.
Is it only for students?
No. It is the full PuzzleScript editor for anyone. Much of this page is written for teachers and parents because many of the people who use it are students.
Is PuzzleScript free?
Yes. It runs in your browser and there is no paid tier. A free account adds saving and sharing, but nothing on this page is behind a paywall.
Do I need an account to try it?
No. The demo on this page is the complete editor with a starter game. Make a free account and the game you changed comes with you as your first project.
What ages is it for?
Ages 10 through high school. Playing and changing a rule works for anyone who can read the code; writing new rules and a whole game suits older students.
Is a student's work public?
No. Saved games are private by default. A student can choose to share one, and the share link opens a page where anyone with the link can play it.
What subject can I log this as?
Most families log it as computer science. Writing rules, reading compiler errors and testing a game are programming, and designing levels is logic. The table above lists specifically what is covered, so you can pick the label your records need and point at the evidence.
Still have a question? Ask us, and a person will write back.
Where to go next
Start with PuzzleScript
Trying it costs nothing and takes about five minutes. An account is what makes the work last.
PuzzleScript is one of the making apps on the platform. It is a place to make things, not a course, and it is not a substitute for a teacher: it is at its best when an adult asks the questions above and takes the answers seriously.
PuzzleScript is by Stephen Lavelle (increpare), used under the MIT license. Source.
Page last reviewed October 2026.
Google, Google Classroom and Chromebook are trademarks of Google LLC.