An FPS/RTS hybrid game powered by the Daemon engine (a combination of ioq3 and XreaL)
C++ C GLSL CMake Shell Python
Latest commit b48444d Aug 17, 2016 @DolceTriade DolceTriade committed on GitHub Merge pull request #957 from jaytersen/cleanup
Remove some unused cvars
Permalink
Failed to load latest commit information.
appveyor Try to fix appveyor again Nov 7, 2015
archlinux Archlinux: Don't handle unv:// URLs in starter script. Mar 3, 2015
daemon couple of mem leaks fixes Jul 19, 2016
debian Option for specifying the path to the NaCl helper binaries. Jan 14, 2015
libs Update libRocket Jul 12, 2016
macosx Version bump to Alpha 50. Apr 10, 2016
main Update default bindings. Jul 10, 2016
src Remove some unused cvars Aug 17, 2016
.gitattributes Enforce normalisation of line endings in source files. Jun 3, 2012
.gitignore Have CMake auto generate CBSE components. Remove autogen'd files from… Oct 25, 2015
.gitmodules Add recastnavigation submodule Jul 13, 2016
.travis.yml brew install nettle Apr 11, 2016
CMakeLists.txt Add an error at CMake time when building in the source directory Jul 13, 2016
COPYING.txt Make PNaCl a first class CMake toolchain; split engine and game build… Jul 16, 2015
GPL.txt Some clean-up of trailing white space. Jun 3, 2012
README.md remove references to sourceforge Jan 3, 2016
appveyor.yml Fix and use USE_PRECOMPILED_HEADER=0 Jan 14, 2016
basepak.sh Update basepak.sh for removal of qvms, game->sgame change and additio… Mar 1, 2015
build-macosx-app-single.sh Make PNaCl a first class CMake toolchain; split engine and game build… Jul 16, 2015
build-macosx-app-universal.sh Make PNaCl a first class CMake toolchain; split engine and game build… Jul 16, 2015
buildshaders.sh Remove use of perl from buildshaders.sh May 4, 2016
download-pk3-torrent.sh Download torrent file via SSL inside download-pk3-torrent.sh. Dec 8, 2014
download-pk3.sh Version bump to Alpha 50. Apr 10, 2016
libRocket.cmake Delete libRocket from repo. Add as submodule. Feb 20, 2016
src.cmake Add a SpectatorClassComponent that copies the playerstate of the spec… Dec 19, 2015
tarball.sh Config header Apr 11, 2016
update-version-number.sh Config header Apr 11, 2016

README.md

Unvanquished

GitHub tag GitHub release Github release

IRC

Windows OSX Linux
AppVeyor branch Travis branch Travis branch

This repository contains the gamelogic of the game Unvanquished. You need to download the game's assets in addition to that to make it run. See below for build and launch instructions.

Dependencies

zlib, libgmp, libnettle, libcurl, SDL2, GLEW, libpng, libjpeg ≥ 8, libwebp ≥ 0.2.0, Freetype, OpenAL, libogg, libvorbis, libtheora, libopus, libopusfile

Buildtime

cmake, python ≥ 2, python-yaml, python-jinja

Optional

ncurses, libGeoIP

MSYS2

base-devel

64-bit: mingw-w64-x86_64-{toolchain,cmake,aria2} or 32-bit: mingw-w64-i686-{toolchain,cmake,aria2}

Build Instructions

Instead of make, you can use make -jN where N is your number of CPU cores to speed up compilation.

Visual Studio

  1. Run CMake.
  2. Choose your compiler.
  3. Open Unvanquished.sln and compile.

Linux, Mac OS X

mkdir build && cd build
cmake ..
make

MSYS2

mkdir build && cd build
cmake -G "MSYS Makefiles" ..
make

Linux cross-compile to Windows

mkdir build && cd build
cmake -DCMAKE_TOOLCHAIN_FILE=../daemon/cmake/cross-toolchain-mingw32.cmake .. # ¹
make

¹ Use cross-toolchain-mingw64.cmake for a Win64 build.

Mac OS X universal app

mkdir build32 && cd build32
cmake -DCMAKE_OSX_ARCHITECTURES=i386 -DCMAKE_OSX_DEPLOYMENT_TARGET=10.7 ..
make
cd ..
mkdir build64 && cd build64
cmake -DCMAKE_OSX_ARCHITECTURES=x86_64 -DCMAKE_OSX_DEPLOYMENT_TARGET=10.7 ..
make
cd ..
./make-macosx-app.sh build32 build64

Launch Instructions

Linux, Mac OS X, MSYS2

If Unvanquished's assets are installed on your system

cd build
./daemon -pakpath PATH # ¹

¹ PATH is the path to the pkg directory that contains the game's assets.

If you don't have the assets

cd build
mkdir pkg

../download-pk3-torrent.sh pkg # ¹ or ../download-pk3.sh pkg # ²

./daemon

¹ Fast, requires aria2c. ² Unreliable speed, requires curl.

If you're a developer

As a developer, you will want to load your own assets in addition to those shipped with the game. To do that:

cd build
mkdir -p pkg; cd pkg
ln -s ../../main git_source.pk3dir
mkdir assets_source.pk3dir
echo git > assets_source.pk3dir/DEPS

You can now put loose assets into assets_source.pk3dir or you can put additional pk3dir directories or pk3 containers inside pkg and add their names (the format is NAME_VERSION.pk3(dir)) as lines to the DEPS file. In order to launch Unvanquished, use one of the following commands:

  • ./daemon -pakpath PATH -set fs_extrapaks assets # ¹
  • ./daemon -pakpath PATH -set fs_extrapaks assets -set vm.sgame.type 3 -set vm.cgame.type 3 -set vm.sgame.debug 1 -set vm.cgame.debug 1 +devmap plat23 # ²

¹ Runs the game and loads the assets package and its dependencies. PATH is the path to Unvanquished's base packages and maps. Omit -pakpath PATH if pkg contains these assets. ² In addition, load a shared-object gamelogic you compiled and allow it to be debugged. Launch the map Platform 23 with cheats enabled after startup.

Windows

If Unvanquished's assets are installed on your system

Run daemon.exe -pakpath PATH, where PATH is the path to the pkg directory that contains the game's assets.

If you don't have the assets

  1. Copy the pkg directory from the release zip (torrent | web) into your build directory.
  2. Run daemon.exe.