Skip to content

DRKCTRLDEV/powder-nx

 
 

Repository files navigation

The Powder Toy - Switch Port

powder-nx

Have you ever wanted to blow something up? Or maybe you always dreamt of operating an atomic power plant? Do you have a will to develop your own CPU? The Powder Toy lets you to do all of these, and even more!

The Powder Toy is a free physics sandbox game, which simulates air pressure and velocity, heat, gravity and a countless number of interactions between different substances! The game provides you with various building materials, liquids, gases and electronic components which can be used to construct complex machines, guns, bombs, realistic terrains and almost anything else. You can then mine them and watch cool explosions, add intricate wirings, play with little stickmen or operate your machine. You can browse and play thousands of different saves made by the community or upload your own – we welcome your creations!

Get the latest version from the releases GitHub page.

The official website is powdertoy.co.uk. You can also visit the official TPT forum.

Instructions

Touch on the screen to draw like in MS Paint. Change materials from the icons in the sidebar and the bottom of the screen. The rest of the game is learning what happens next.

Controls

Key Action
L/R Bigger/smaller brush size
ZL + touch Paint with secondary brush
ZR Change view mode
X Switch between circle/square/triangle brush
Y Zoom
Left/Right Dpad Undo/Redo
Plus Pause
Minus Show/hide HUD
Left thumbstick press Sample element (mapped to Alt)
Right thumbstick press Draw line (mapped to Shift)
Up/Down Dpad Copy/Paste Area
A Show intro text

Missing features in Switch Port

  • Simulation Options
  • Stamps
  • Save Browser, saving & loading
  • Online functionality
  • Screenshots

These might be worked on in later versions.

Build instructions

This project supports cross-platform development on Linux, macOS, and Windows (WSL/MSYS2).

Quick Setup

Recommended - Use Docker:

# Build using the official devkitPro Docker image
docker run --rm -v $(pwd):/src -w /src devkitpro/devkita64 ./build.sh

Alternative - Manual Installation: Follow the installation instructions below for your platform, then run:

./build.sh

Manual Setup

Prerequisites

  • devkitPro with Switch development tools
  • SCons build system
  • Python 3

Platform-specific installation:

Linux/WSL (Recommended - Docker):

# Use the official devkitPro Docker image (no installation needed)
docker run --rm -v $(pwd):/src -w /src devkitpro/devkita64 ./build.sh

Linux/WSL (Manual):

# Follow the official devkitPro documentation:
# https://devkitpro.org/wiki/devkitPro_pacman

# Install scons
sudo apt-get install scons  # or pip install scons

macOS:

# Install Xcode command line tools
xcode-select --install

# Download and install devkitPro from:
# https://github.com/devkitPro/pacman/releases/latest

# Install Switch packages (after installation)
sudo dkp-pacman -S switch-dev
sudo dkp-pacman -S switch-sdl2 switch-mesa switch-glad
sudo dkp-pacman -S switch-libdrm_nouveau switch-curl
sudo dkp-pacman -S switch-mbedtls switch-bzip2 switch-zlib

# Install SCons
brew install scons  # or pip install scons

Windows:

# Download and run the devkitPro installer:
# https://github.com/devkitPro/installer/releases/latest

# Or use Docker with WSL2
# Install SCons: pip install scons

Building

# Build for Nintendo Switch
./build.sh

# Clean intermediate files (preserves final .nro/.nso outputs)
./build.sh clean

# Complete clean (removes everything including final outputs)
./build.sh cleanall

# Show help
./build.sh help

Output Files

  • build/powder-nx.nro - Homebrew launcher format
  • build/powder-nx.nso - Atmosphere/CFW format

Installation on Switch

  1. Copy powder-nx.nro to /switch/ folder on your SD card
  2. Launch via Homebrew Launcher
  3. Or use powder-nx.nso for CFW installations

Credits

Original The Powder Toy:

  • Stanislaw K Skowronek (creator)
  • Simon Robertshaw
  • Skresanov Savely
  • cracker64
  • Catelite
  • Bryan Hoyle
  • Nathan Cousins
  • jacksonmj
  • Felix Wallin
  • Lieuwe Mosch
  • Anthony Boot
  • Matthew "me4502"
  • MaksProg
  • jacob1
  • mniip
  • LBPHacker

Switch Port:

  • VelocityRa

Dependencies Updated for Latest Firmware:

  • DRKCTRLDEV

About

Nintendo Switch port of "The Powder Toy"

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • C++ 93.9%
  • C 4.3%
  • Python 1.0%
  • Objective-C 0.3%
  • Lua 0.2%
  • Shell 0.2%
  • Other 0.1%