Skip to content

tsoding/nothing

Repository files navigation

Tsoding Build Status Build Status

Nothing

Dependencies

Ubuntu

$ sudo apt-get install gcc cmake libsdl2-dev

MacOS

$ brew install gcc cmake sdl2

NixOS

For NixOS we have a development environment defined in default.nix with all of the required dependencies. You can enter the environment with nix-shell command:

$ nix-shell

Arch Linux

$ sudo pacman -S gcc cmake sdl2

Windows

Visual Studio

MinGW

Quick Start

Linux

CMake

$ mkdir build
$ cd build/
$ cmake ..
$ make
$ ./nothing

SCU

$ ./build-posix.sh
$ ./nothing

Windows

Visual Studio

> cd path\to\nothing
> 7z x SDL2-devel-2.0.9-VC.zip
> move SDL2-2.0.9 SDL2
> mkdir build
> cd build
> cmake ..
> cmake --build .
> .\nothing

MinGW (with MSYS)

$ cd path/to/nothing
$ wget https://www.libsdl.org/release/SDL2-devel-2.0.10-mingw.tar.gz
$ tar xzf SDL2-devel-2.0.10-mingw.tar.gz
$ mv SDL2-2.0.10 SDL2
$ rm SDL2-devel-2.0.10-mingw.tar.gz
$ mkdir build && cd build
$ cmake .. -G "MSYS Makefiles"
$ cmake --build .
$ ./nothing

MinGW (without MSYS)

> cd path\to\nothing
> 7z x SDL2-devel-2.0.10-mingw.tar.gz -so | 7z x -si -ttar
> move SDL2-2.0.10 SDL2
> del SDL2-devel-2.0.10-mingw.tar.gz
> mkdir build
> cd build
> cmake .. -G "MinGW Makefiles"
> cmake --build .
> .\nothing

Controls

Game

Keyboard

Key Action
d Move to the right
a Move to the left
w/SPACE Jump
c Open debug console
r Reload the current level including the Player's position
q Reload the current level preserving the Player's position
p Toggle game pause
l Toggle transparency on objects. Useful for debugging levels
TAB Switch to Level Editor
CTRL+q Quit the game

Gamepad

Button Action
Left Stick Movement of the Player
1 Jump

Consolé

Key Action
ESC Exit console
Enter Evaluate the expression
Up/Down Traverse console history
CTRL+L Clear
Ctrl+X, CTRL+W Cut
Ctrl+C, ALT+W Copy
Ctrl+V, CTRL+Y Paste

Level Editor

To access the Level Editor open a level and press TAB.

Key Action
s Save level
Mouse Wheel Zoom and pan
CTRL+z Undo
q Toggle snapping mode
SHIFT+Up/Down Change overlaping order of selected object
CTRL+c/v Copy/paste selected object
F2 Rename selected object
DELETE Delete selected object

Support

You can support my work via