All Projects → Unvanquished → Unvanquished

Unvanquished / Unvanquished

Licence: other
An FPS/RTS hybrid game powered by the Daemon engine (a combination of ioq3 and XreaL)

Projects that are alternatives of or similar to Unvanquished

Ark
ARK is a lightweight, agility, elastic, distributed plugin framework written in C++,make it easier and faster to create your own application service.
Stars: ✭ 370 (-37.82%)
Mutual labels:  game, game-development
Ebiten
A dead simple 2D game library for Go
Stars: ✭ 5,563 (+834.96%)
Mutual labels:  game, game-development
Game
⚔️ An online JavaScript 2D Medieval RPG.
Stars: ✭ 388 (-34.79%)
Mutual labels:  game, game-development
Gdk For Unity
SpatialOS GDK for Unity
Stars: ✭ 296 (-50.25%)
Mutual labels:  game, game-development
Texturepanner
This repository hosts a shader for Unity3D whose main goal is to facilitate the creation of neon-like signs, conveyor belts and basically whatever based on scrolling textures
Stars: ✭ 528 (-11.26%)
Mutual labels:  game, game-development
Games
🎮 A list of popular/awesome video games, add-ons, maps, etc. hosted on GitHub. Any genre. Any platform. Any engine.
Stars: ✭ 18,676 (+3038.82%)
Mutual labels:  game, game-development
Kengine
Entity-Component-System (ECS) with a focus on ease-of-use, runtime extensibility and compile-time type safety and clarity.
Stars: ✭ 417 (-29.92%)
Mutual labels:  game, game-development
Games
Create interesting games by pure python.
Stars: ✭ 3,431 (+476.64%)
Mutual labels:  game, game-development
Etlegacy Deprecated
Archived repository. For current repo, see: https://github.com/etlegacy/etlegacy
Stars: ✭ 470 (-21.01%)
Mutual labels:  game, game-development
Fheroes2
Free implementation of Heroes of Might and Magic II game engine
Stars: ✭ 471 (-20.84%)
Mutual labels:  game, game-development
Terasology
Terasology - open source voxel world
Stars: ✭ 3,247 (+445.71%)
Mutual labels:  game, game-development
Entitas Csharp
Entitas is a super fast Entity Component System (ECS) Framework specifically made for C# and Unity
Stars: ✭ 5,393 (+806.39%)
Mutual labels:  game, game-development
Defaultecs
Entity Component System framework aiming for syntax and usage simplicity with maximum performance for game development.
Stars: ✭ 286 (-51.93%)
Mutual labels:  game, game-development
Ssvopenhexagon
C++14 FOSS clone of "Super Hexagon". Depends on SSVStart, SSVEntitySystem, SSVLuaWrapper, SSVMenuSystem, JSONcpp, SFML2.0. Features JSON/LUA customizable game files, a soundtrack by BOSSFIGHT, pseudo-3D effects.
Stars: ✭ 364 (-38.82%)
Mutual labels:  game, game-development
Minigolf
A minigolf game written without a game engine in C
Stars: ✭ 282 (-52.61%)
Mutual labels:  game, game-development
Cpp 3d Game Tutorial Series
C++ 3D Game Tutorial Series is a YouTube tutorial series, whose purpose is to help all those who want to take their first steps in the game development from scratch.
Stars: ✭ 400 (-32.77%)
Mutual labels:  game, game-development
Noahgameframe
A fast, scalable, distributed game server engine/framework for C++, include the actor library, network library, can be used as a real time multiplayer game engine ( MMO RPG/MOBA ), which support C#/Lua script/ Unity3d, Cocos2dx and plan to support Unreal.
Stars: ✭ 3,258 (+447.56%)
Mutual labels:  game, game-development
Quiz Game
Multiple choice questions answer game for android (Quiz game).
Stars: ✭ 277 (-53.45%)
Mutual labels:  game, game-development
Gideros
Gideros Release version
Stars: ✭ 442 (-25.71%)
Mutual labels:  game, game-development
Anything about game
A wonderful list of Game Development resources.
Stars: ✭ 541 (-9.08%)
Mutual labels:  game, game-development

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.

Workspace requirements

To fetch and build Unvanquished, you'll need: git, cmake, python = 2, python-yaml, python-jinja, and a C++11 compiler.

The following are actively supported: gcc ≥ 4.8, clang ≥ 3.5, Visual Studio/MSVC (at least Visual Studio 2017).

Dependencies

Required

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

Optional

ncurses, libGeoIP

MSYS2

base-devel

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

MSYS2 is an easy way to get MingW compiler and build dependencies, the standalone MingW on Windows also works.

Download instructions

Unvanquished requires several sub-repositories to be fetched before compilation. If you have not yet cloned this repository:

git clone --recurse-submodules https://github.com/Unvanquished/Unvanquished.git

If you have already cloned:

cd Unvanquished/
git submodule update --init --recursive

If cmake complains about the daemon/ folder being empty then you have skipped this step.

Build Instructions

Instead of -j4 you can use -jN where N is your number of CPU cores to distribute compilation on them. Linux systems usually provide an handy nproc tool that tells the number of CPU core so you can just do -j$(nproc) to use all available cores.

Enter the directory before anything else:

cd Unvanquished/

Visual Studio

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

Linux, macOS

Produced files will be stored in a new directory named build.

cmake -H. -Bbuild
cmake --build build -- -j4

MSYS2

cmake -H. -Bbuild -G "MSYS Makefiles"
cmake --build build -- -j4

Linux cross-compile to Windows

For a 32-bit build use the cross-toolchain-mingw32.cmake toolchain file instead.

cmake -H. -Bbuild -DCMAKE_TOOLCHAIN_FILE=cmake/cross-toolchain-mingw64.cmake
cmake --build build -- -j4

Launch Instructions

Linux, macOS, MSYS2

If Unvanquished's assets are already installed somewhere on your system

cd build
# <PATH> is the path to the “pkg/” directory that contains the game's assets.
./daemon -pakpath <PATH>

If you don't have the assets, you can download them first

The package downloader script can use aria2c, curl or wget, aria2c is recommended. You can do ./download-paks --help for more options.

./download-paks build/pkg
cd build
./daemon

Loading base asset package from sources

As a developer, you will want to load assets from repository. To do that:

cd build
./daemon -pakpath ../pkg -set vm.sgame.type 3 -set vm.cgame.type 3

Note that only the basic unvanquished_src.dpkdir asset package is provided that way, and running Unvanquished only with that package will bring you some warnings about other missing packages and you will miss soundtrack and stuff like that. You also need to load your own game code (using vm type switches) at this point.

This should be enough to start the game and reach the main menu and from there, join a server. If the server supports autodownload mechanism, Unvanquished will fetch all the missing packages from it.

If you are looking for the sources of the whole assets, have a look at the UnvanquishedAssets repository. Beware that unlike the unvanquished_src.dpkdir package most of them can't be loaded correctly by the engine without being built first.

Loading your own assets

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
mkdir assets_src.dpkdir

You can now put loose assets into assets_src.dpkdir or you can put additional dpkdir directories or dpk containers inside pkg and add their names (the format is <NAME>_<VERSION>.dpk[dir]) as lines to the DEPS file (the format is <NAME> <VERSION>). Version is required in package filename but optional in DEPS file. In order to launch Unvanquished, use one of the following commands:

# Runs the game and loads the “assets” package and its dependencies from “pkg/” directory:
./daemon -set fs_extrapaks assets

# Runs the game and loads the “assets” package and its dependencies from <PATH>
# when <PATH> is not one of the default Unvanquished paths:
./daemon -pakpath <PATH> -set fs_extrapaks assets

# In addition, load a shared-object gamelogic you compiled and allow it to be debugged,
# then launch the map “Platform 23” with cheats enabled after startup:
./daemon -pakpath <PATH> -set fs_extrapaks assets \
			-set vm.sgame.type 3 -set vm.cgame.type 3 \
			+devmap plat23

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.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].