Skip to content

Treecase/SickleEditor

Repository files navigation

Sickle Editor

An open-source editor for GoldSrc maps. Both .MAP and .RMF formats are supported. Sickle Editor is released under the GPLv3 license.

Getting Started

There are a few things that must be set up to get started. Firstly, click Edit>Preferences in the menu to open the preferences window. There are four areas here: Game Definition, Game Root Path, Sprite Root Path, and Texture WADs.

The Game Definition is a file that tells the editor which Entity types are available in the game. Sickle needs to be pointed to this file in order to properly edit maps; for Half-Life, this file is called 'halflife.fgd'.

The game root path tells Sickle where to find the game data files like sprites and sounds.

The sprite root path tells Sickle where to find the sprite files used for entity icons (eg. lights).

GoldSrc maps use external data files called WADs to store texture data. Sickle doesn't know where these files are, so you'll have to point it to them.

Building

Sickle depends on gtkmm-3 and Lua 5.4. You'll also need to have flex and bison installed.

Before building, you must initialize the git submodules for the project:

$ git submodule update --init --recursive

To build the program:

$ mkdir build
$ cd build
$ cmake ..
$ cmake --build .

Windows

Currently, only building with mingw is supported. You may have to tell CMake to use the MinGW generator:

$ mkdir build
$ cd build
$ cmake -G 'MinGW Makefiles' ..
$ cmake --build .

I also had some problems getting CMake to find Flex and Bison, and had to manually add the paths to CMakeCache.txt:

BISON_EXECUTABLE:FILEPATH=C:/msys64/usr/bin/bison.exe
FLEX_EXECUTABLE:FILEPATH=C:/msys64/usr/bin/flex.exe
FL_LIBRARY:FILEPATH=C:/msys64/usr/lib/libfl.a

Installing

To install to /usr/local, run:

$ cmake --install .
# To install somewhere else:
$ cmake --install . --prefix=<install prefix>

On Linux, you'll also have to install the settings schema:

$ glib-compile-schemas <install prefix>/share/glib-2.0/schemas