The Powder Toy
The Powder Toy: Physics Sandbox Game with 258 Elements
The Powder Toy is a free falling-sand physics sandbox game where players simulate materials, chemical reactions, and complex machines on a 2D grid. Originally built by Stanislaw K. Skowronek (also known as Skylark) and first released in 2008, it has grown into one of the most enduring physics playgrounds on the internet.
Often shortened to TPT, the game is written mostly in C++ and is open-source under the GNU General Public License v3.0. Today it’s maintained by jacob1, Simon, LBPHacker, and a wider group of GitHub contributors who keep pushing it forward.
What Makes The Powder Toy Different
At its core, this is a sandbox. There’s no goal, no score, no boss to beat. Players drop materials onto a canvas and watch how they behave — sand falls, water flows, fire spreads, gunpowder explodes. The simulation handles physics and chemistry in a surprisingly accurate way, which is part of why edgalaxy.com once described it as a strong science learning tool.
As of February 2025, the game ships with 258 distinct elements. Each one has its own behavior and reacts differently when it touches another. Mix the wrong two and things go sideways. Fast.
Build Almost Anything
The depth here is the real draw. Players have built working circulatory systems, nuclear power plants, nuclear bombs, and even functioning computers — all inside the simulation. That’s not marketing. People genuinely use this falling-sand game to model real-world systems.
Creations can be uploaded to the game’s public server, where the community votes them up or down. Anything breaking the rules can be reported to moderators. It’s a built-in level-sharing system that’s been running for years.
Credits:
made by jacob1, Simon, LBPHacker and various other GitHub contributors. powdertoy.co.uk.
Special Thanks:
- Stanislaw K. Skowronek (designed the original Powder Toy), Simon Robertshaw (wrote the website, current server owner), Skresanov Savely, Pilihp64, Catelite, Victoria Hoyle, Nathan Cousins, jacksonmj, Felix Wallin, Lieuwe Mosch, Anthony Boot, Me4502, MaksProg, jacob1, mniip, LBPHacker.
Libraries and other assets used:
Game Controls
- TAB — switch between circle, square, and triangle brush
- Space — pause and resume simulation
- Q or Esc — quit
- Z — zoom tool
- S — save stamp
- L — load last saved stamp
- K — open stamp library
- 0-9 — set view mode
- P or F2 — save screenshot as PNG
- E — bring up element search
- F — pause and step to next frame
- G — increase grid size (Shift + G to decrease)
- H — show or hide HUD
- Ctrl + H or F1 — show intro text
- D or F3 — debug mode
- I — invert pressure and velocity map
- W — cycle gravity modes
- Y — cycle air modes
- Ctrl + E — cycle edge modes
- B — open decoration editor (Ctrl + B to toggle decorations)
- N — toggle Newtonian gravity
- U — toggle ambient heat
- Backtick (`) — toggle console
- = — reset pressure and velocity map (Ctrl + = resets electricity)
- [ and ] — decrease and increase brush size
- Ctrl + C / V / X — copy, paste, cut
- Ctrl + Z — undo (Ctrl + Y to redo)
- Middle click or Alt + Left click — sample element
- Mouse scroll — change brush size
- R — rotate selected area when pasting stamps
- F11 — toggle fullscreen
As always, remember to have fun!
































































