$ nix-shell # Only on NixOS
$ mkdir build
$ cd build/
$ cmake ..
$ make
$ ./nothing ../levels/level-01.txt
$ ./nothing_test
Generally creating a level looks like:
SVG File -> Custom Level File -> Game
To convert SVG to the level file install xqilla and run svg2rects.xqe script:
$ xqilla ./devtools/svg2rects.xqe -i <svg-file> -o <level-file>
All of the levels reside in the ./levels/ folder. Use ./levels/Makefile to automatically rebuild all levels.
$ inkscape ./levels/level.svg &
$ ./build/nothing ./levels/level.txt &
$ cd ./levels/
$ make watch
- Edit Level in Inkscape and Save
- Switch to the Game and reload level by pressing Q
- Go to 5
Regex of id | Description |
---|---|
player |
Defines the position of the Player. Size is ignored. |
rect.* |
Defines the size and position of an impenetrable platform block |
box.* |
Defines the size and position of a rigid box that obeys the physics of the game |
region(.*) |
Defines the size and position of a region that hides the Goals. \1 defines the id of the Goal to hide. |
goal(.*) |
Defines the position of the goal. Size is ignored. \1 defines the id of the region that hides the goal. |
lava.* |
Defines the position and size of a lava block. |
background |
Defines the color of the background. Position and size are ignored. |
backrect.* |
Defines the size and position of a solid block in the background. |
Regex of id | Description |
---|---|
label.* |
Defines position and text of a in-game label. Size is ignored. |
You need to install conan and Visual Studio 2017.
Current version of SDL2/2.0.5@lasote/stable in the conan-transit repository is not compatible with the latest conan, so you'll need to install it locally from the git repository:
$ git clone https://github.com/lasote/conan-sdl2.git # temporary, I hope hope hope
$ cd conan-sdl2
$ conan export SDL2/2.0.5@lasote/stable
Execute the following commands inside of the nothing
directory:
$ conan install --build missing --install-folder build
$ cd build
$ cmake .. -G "Visual Studio 15 2017 Win64"
After that, build the build/nothing.sln
file with Visual Studio.
You can support my work via
- Twitch channel: https://www.twitch.tv/subs/tsoding
- Patreon: https://www.patreon.com/tsoding