Getting Started

PuzzleScript is designed to make tile-based puzzle game development easy and fun. Using very simple tools, you can create complex and varied games. A well known example of a tile-based puzzle game is Sokoban, in which the player pushes crates to specific tiles in a maze-like map viewed from above. While Sokoban-esque games are easy to make in PuzzleScript, the scripting language is expressive enough to create games with entirely different mechanics. For example, you can create a platformer style game simply by adding a rule that simulates gravity.

PuzzleScript editor
The PuzzleScript editor is the best place to start creating your own puzzle game. It can currently be found at puzzlescript.net. It runs entirely in your browser, so there's no need to download or install any software. In fact, you can directly build and run your game without ever leaving the editor. As you create your game, your current progress will be saved locally on your computer.

The editor has many useful features, such as: examples projects for inspiration; a graphical level editor; the ability to share and export your game; sound effect generation; a log to help you debug. All of these features combine to give you a fun environment for making great games.

Scripting
PuzzleScript games are written in the PuzzleScript scripting language. It is a language tailored for making tile-based puzzle games and is accordingly much more succinct than alternative game development scripting or programming languages. Although simple in definition, it is very expressive and can be used to create a huge variety of games.

PuzzleScript is a declarative language, which means that it specifies the logical behaviour of a game without describing its control flow. A script contains declarations for the game's components, such as objects, sound effects, and levels. In addition, the script will provide a set of rules by which to update the game state at each turn.

The easiest way to write your PuzzleScript scripts is with the PuzzleScript editor. To learn how to write scripts, take a look at our PuzzleScript tutorials.

Game design
PuzzleScript is not intended to create any game concept you can imagine. It has a specific focus on tile-based puzzle games and has various constraints on the content that can be created with it. However, these constraints are not particular limiting, as the simple logic rules are extremely powerful when used in conjunction. Nonetheless, a good idea of what is and is not possible with PuzzleScript is very useful when designing your puzzle games.