Skip to content

Spu7Nix/spwn_docs

Repository files navigation

SPWN

Welcome to the SPWN language documentation!

Just in case you have just stumbled upon this website, and have no idea what SPWN is, here's a brief introduction for you: SPWN is a programming language that compiles to Geometry Dash levels. What that means is that you can create levels by using not only the visual representation in the GD-editor, but using a "verbal" and abstracted representation as well. This is especially useful for using GD triggers, which (if you want to make complicated stuff) are not really suited for the graphical workflow of the in-game editor.

If you have not worked with a programming language before, this might be a bit difficult to get into. However, you don't need much programming knowledge to get some basic things done using SPWN.

First off, you can click here to download the latest release of SPWN.

Practical

First off, let's get to know the basic workflow of using SPWN. SPWN is designed so that you can work in the editor and in SPWN at the same time, using the editor for its strengths, and SPWN for its.

To "compile" your SPWN program, you use the command spwn build [file], where [file] is the path to your SPWN script. This command will do the following:

  • Read your levels contents
  • Compile your SPWN program to Geometry Dash objects, making sure to not have them interfere with the things that are already in your level.
  • Append the new objects onto your level

To be clear, you do NOT have to delete and remake your level when running spwn build on it, it will automatically remove any old SPWN objects from the level before writing new ones. spwn build will by default run on the level at the top of your levels list. If you want it to run on a specific level, you can use the flag --level-name [name in quotation marks]. For example: spwn build script.spwn --level-name "my level"

Note: The standard file ending for SPWN scripts is .spwn

Note: SPWN generates triggers near the top of your level, so you might not see any difference.

The first part of this documentation is an introduction to the features of SPWN, divided into courses. Read the Trigger Language course to get started!