3 DarkPlaces is a game engine based on the Quake 1 engine by id Software. It
4 improves and builds upon the original 1996 engine by adding modern rendering
5 features, and expanding upon the engine's native game code language QuakeC, as
6 well as supporting additional map and model formats.
8 Developed by LadyHavoc. See [CREDITS](CREDITS.md) for a list of contributors.
13 #darkplaces on irc.anynet.org
15 ### [Matrix](https://matrix.org/docs/guides/introduction)
16 [![#darkplaces:matrix.org](https://img.shields.io/matrix/darkplaces:matrix.org?color=660000&label=%23darkplaces%3Amatrix.org)](https://matrix.to/#/#darkplaces:matrix.org)
18 ## Downloading and running
20 Linux x86_64 builds are available in [GitHub CI](https://github.com/DarkPlacesEngine/darkplaces/actions?query=branch%3Amaster) artifacts.
22 More complete builds are available in [xonotic.org](https://beta.xonotic.org/autobuild/) engine zips.
23 These support Windows, Linux and macOS, and include the current libraries needed for all features.
25 DarkPlaces supports many Quake-based games and you can select which it will run by renaming the executable so it's prefixed with the game's name, for example `rogue-sdl.exe`, or by passing a cmdline argument such as `-rogue`. The supported list and related details are defined in [com_game.c](https://github.com/DarkPlacesEngine/darkplaces/blob/master/com_game.c).
27 ## Build instructions (WIP)
29 These instructions are adequate for Quake, but for Xonotic please refer to [its wiki](https://gitlab.com/xonotic/xonotic/-/wikis/Compiling).
33 The minimum SDL version is 2.0.18 for Linux and 2.24.0 for Windows.
34 The following package names are for Debian, see below for Windows and Mac.
37 Build (mandatory): `build-essential` `libjpeg-dev` `libsdl2-dev`
38 Runtime (optional): `libcurl` `libpng` `libfreetype6` `libvorbisfile`
40 ##### Dedicated Server
41 Build (mandatory): `build-essential` `libjpeg-dev` `zlib1g-dev`
42 Runtime (optional): `libcurl` `libpng`
46 1. Install MSYS2, found [here](https://www.msys2.org/).
47 2. Once you've installed MSYS2 and have fully updated it, open a MinGW64 terminal (***not an MSYS2 terminal***) and input the following command:
50 pacman -S --needed gcc make mingw-w64-x86_64-{toolchain,libjpeg-turbo,libpng,libogg,libvorbis,SDL2}
53 3. See [Unix instructions](#unix-(general)).
56 1. Open a terminal and input `xcode-select --install`
57 2. Install [Homebrew](https://brew.sh)
58 3. In the same (or a different terminal), input the following command:
61 brew install sdl2 libjpeg-turbo libpng libvorbis curl
64 4. See [Unix instructions](#unix-(general)).
68 From a terminal, in the engine's root directory, input `make`. On macOS, input `make` with a target such as `make sdl-release`.
70 Input `make help` for options.
72 If you get errors (that don't seem to be about missing dependencies) try `make clean` before compiling, especially if you updated your system since the last time you compiled.
75 ### Windows (Visual Studio)
77 May work but not recommended due to lack of support for C standards, and lack of maintenance.
82 [DarkPlaces Contributing Guidelines](CONTRIBUTING.md)
86 Doxygen: https://xonotic.org/doxygen/darkplaces