OpenSoldat is a unique 2D (side-view) multiplayer action game. It has been influenced by the best of games such as Liero, Worms, Quake, Counter-Strike, and provides a fast-paced gaming experience with tons of blood and flesh.
This repository contains the source code of the so-called 1.8 version. Compared to the original version, the code has undergone many changes but is not in a finished state. We hope that by open-sourcing Soldat we can empower our community to improve the game at a faster pace.
OpenSoldat compiles on Windows, Linux and macOS.
This approach automates some build steps. OpenSoldat's assets will be downloaded for you, and you will not have to worry about downloading pre-built libraries. This is the simplest way to build OpenSoldat for Linux.
CMake 3.14+ is required.
sudo apt-get install build-essential g++ cmake git fpc libprotobuf-dev protobuf-compiler libssl-dev libsdl2-dev libopenal-dev libphysfs-dev libfreetype6mkdir build && cd buildcmake ..makevcpkg.exe --triplet x64-windows install sdl2 physfs openssl protobuf freetype openal-softset PATH=%PATH%;C:fpc3.2.2bini386-win32set OPENSSL_ROOT_DIR=C:vcpkginstalledx64-windowsset PHYSFSDIR=C:vcpkginstalledx64-windowsmkdir buildcd buildcmake -G "NMake Makefiles" -DCROSS_WINDOWS_64=1 -DCMAKE_TOOLCHAIN_FILE="C:vcpkgscriptsbuildsystemsvcpkg.cmake" -DSDL2_BUILDING_LIBRARY=1 ..nmakebrew install openssl@3 protobuf fpc cmake sdl2 physfs freetype2mkdir build && cd buildexport PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/opt/openssl@3/lib/pkgconfigcmake -DOPENSSL_ROOT_DIR=$(brew --prefix openssl@3) ..makeThe build can be customized by passing flags to cmake command. For example, you can choose whether you want to build the client, the server, or both. You can decide if you want to include OpenSoldat's assets in the build. There are also options for cross-compilation.
Check the CMakeLists.txt files in this repository to see the available options and their default values.
Example: cmake .. -DCMAKE_BUILD_TYPE=Release -DADD_ASSETS=1 -DBUILD_CLIENT=0 to get a release build of the server with OpenSoldat's assets
If you decide to follow the approaches below, you will have to download OpenSoldat's assets and pre-built libraries for the game to work.
client/build and server/buildsoldat.smod file to client/build and server/buildplay-regular.ttf file from base repository from the latest releaseplay-regular.ttf file to client/buildserver/opensoldatserver.lpi with Lazarus, press CTRL + F9 to compile the serverclient/opensoldat.lpi with Lazarus, press CTRL + F9 to compile the game clientYou need to start the server first, and then join the game with client.
opensoldatserveropensoldat -join 127.0.0.1 23073 (more generically -join ip port)