This is libre openspades, thus librespades! with all non-free assets removed and moved from GitHub to this libre software hosting platform.
Go to file
Fedja Beader e41b2ea662 Update README with status of this project 2022-04-30 20:38:15 +02:00
.github/workflows chore(ci): setup GitHub workflow for Windows builds 2020-12-18 04:40:23 -08:00
OpenSpades.xcodeproj Merge branch 'master' into patch-modernize 2021-05-02 23:39:03 +09:00
Resources The sole libre part of the external content package, see Resources/PakLocation.txt for license. 2022-03-26 18:40:30 +01:00
Sources package manager update proposal. 2022-02-18 19:33:41 +00:00
XSpades Bump version to 0.1.5-beta 2021-05-03 00:15:43 +09:00
cmake SDL2 few more paths proposal. (#939) 2021-01-21 15:01:29 +09:00
flatpak flatpak manifest: persist config to .local/share/openspades 2019-02-20 06:49:43 +08:00
snap Do not overwrite User Resource Directory on every snap launch 2018-08-18 02:45:07 -03:00
vcpkg@81b67c3878 Update vcpkg 2020-12-13 18:59:57 +09:00
.clang-format clang-format AngleScript source files 2019-07-13 23:45:47 +09:00
.editorconfig Added editorconfig file. 2016-11-30 22:40:16 +01:00
.gitignore chore: get rid of `Sources/Externals` 2020-12-18 04:54:27 -08:00
.gitmodules Add submodule `vcpkg` 2020-01-15 01:17:53 +09:00
AUTHORS Add a headshot bang sound like in classic (#648) 2017-09-05 18:27:05 +09:00
CMakeLists.txt Disable auto-downloading of non-free content. 2022-03-26 18:35:30 +01:00
LICENSE Update copyrights 2017-01-08 19:05:06 +09:00 Now getting resource directory from cmake instead of hardcode; also enabled RESDIR for Release builds 2014-05-09 02:59:35 +11:00 Add icon (made by JoJoe_Stinky) 2013-11-01 21:24:50 +01:00 Update README with status of this project 2022-04-30 20:38:15 +02:00 Update 2016-11-21 13:51:49 +02:00 Update translations 2020-04-20 00:08:05 +09:00
crowdin.yml feat(i18n): update translations 2020-12-20 15:43:44 +09:00
run-clang-format.ps1 clang-format AngleScript source files 2019-07-13 23:45:47 +09:00 ‘crowdin upload sources’ is now working 2017-02-11 18:08:36 +09:00
vcpkg_x86-windows.txt chore: link libraries statically when building for `x86-windows` 2020-12-18 04:40:23 -08:00
vcpkg_x86_64-darwin.txt Get vcpkg-based build working on macOS 2020-02-16 17:34:46 +09:00


Libregaming community chat Libregaming community matchmaker

What is it?

LibreSpades is a fork of OpenSpades aimed at removing all non-libre dependencies of OpenSpades. Feel free to substitute 'LibreSpades' wherever 'OpenSpades' is mention In this and other documents. OpenSpades is a compatible client of Ace of Spades 0.75.

  • Can connect to a vanilla/pyspades/pysnip server.
  • Uses OpenGL/AL for better experience.
  • Open source, and cross platform.

Liberation status and work to do:

  • Status: works, but...

    • needs new models for player characters. Currently, these are small red boxes floating about. This makes it hard to tell enemies/friendlies apart.

    • needs new models for weapons. Does not make it less playable.

    • needs new sounds/music

    • look into BetterSpades@proprietaryHub for potential asset replacements.

      • has GPL3? assets, but needs licensing checking
  • maintainer needed.

On Linux : Building and installing from source

GCC 4.9 / Clang 3.2 or later is recommended because OpenSpades relies on C++11 features heavily.

  1. Install dependencies:

    On Debian-derived distributions:

    sudo apt-get install pkg-config libglew-dev libcurl3-openssl-dev libsdl2-dev \
      libsdl2-image-dev libalut-dev xdg-utils libfreetype6-dev libopus-dev \
      libopusfile-dev cmake imagemagick

    (because of a bug in some distributions, you might also have to install more packages by sudo apt-get install libjpeg-dev libxinerama-dev libxft-dev)

    On Fedora or other RHEL-derived distributions:

    sudo dnf install pkgconf-pkg-config glew-devel openssl-devel libcurl-devel SDL2-devel SDL2_image-devel \
      freealut-devel xdg-utils freetype-devel opus-devel opusfile-devel \
      libjpeg-devel libXinerama-devel libXft-devel cmake ImageMagick

    On other distributions: Install corresponding packages from your repository (or compile from source).

  2. Clone LibreSpades repository:

    git clone && cd librespades
  3. Create directory build somewhere, change to it and compile:

    mkdir build
    cd build
    cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo && make
  4. Install LibreSpades (optional but recommended):

    sudo make install

    note: If you have a previous installation of OpenSpades, you have to uninstall it manually by sudo rm -rf /usr/local/share/games/openspades before installing a new one.

  5. Launch:

    openspades (if installed) or cd $REPO_DIRECTORY; ./build/bin/OpenSpades and enjoy. ATTENTION if you launch this program while in the build directory, the main menu text will be garbled.

On Windows (with Visual Studio)

  1. Get the required software if you haven't already:
  • CMake 2.8+
  • PowerShell 5.0
    • Integrated with Windows 10.
    • Older versions are not tested, but might work
  • Visual Studio 2017 or later
    • VS2015 is also supported, but VS2017 is more recommended
    • VS2013 is no longer supported, but might work
  1. Grab the source code:
  1. Checkout the source
  • All examples will assume E:/Projects/openspades, update paths in the examples to reflect yours
  • Make sure to update all git submodules, e.g., by git clone ... --recurse-submodules). Note that the GitHub website's ZIP download currently does not support submodules.
  1. Build libraries using vcpkg:

    cd E:/Projects/openspades
    vcpkg/vcpkg install @vcpkg_x86-windows.txt
  2. Run CMake:

  • Source: E:/Projects/openspades
  • Binaries: E:/Projects/openspades/OpenSpades.msvc
  • Generator:
    • For VS2019: Visual Studio 16 (2019)
    • For VS2017: Visual Studio 15 (2017)
    • For VS2015: Visual Studio 14 (2015)
  • Platform: Win32
  • Toolchain file: E:/Projects/openspades/vcpkg/scripts/buildsystems/vcpkg.cmake
  • Add a new string entry VCPKG_TARGET_TRIPLET=x86-windows-static
  1. Open E:/Projects/openspades/OpenSpades.msvc/OpenSpades.sln in Visual Studio.
  2. Build the solution.
  • The recommended build configuration is MinSizeRel or Release if you're not an developer
  • The default build output directory is E:/projects/OpenSpades/OpenSpades.msvc/bin/BUILD_TYPE/
  1. To get audio working, download a Windows release of OpenSpades, extract it, and copy the following dlls to the build output directory:
  • For OpenAL audio: openal32.dll
  • For YSR audio: YSRSpades.dll, libgcc_s_dw2-1.dll, libstdc++-6.dll, pthreadGC2.dll
  1. (Not recommended) download the Non-free pak, extract it, and copy Nonfree/pak000-Nonfree.pak to the Resources folder inside your build output directory, which is probably E:/Projects/openspades/openspades.msvc/bin/BUILD_TYPE/Resources. You can also copy the paks contained in Official Mods/ folder of OpenSpades 0.0.12b to add more fonts and improve localization support of your build.

On macOS (with Ninja)

  1. Get the latest version of Xcode and the OpenSpades source code. Install the following prerequisites:

    • Xcode's command-line tools. Install them by xcode-select --install and sudo xcodebuild -license.
    • CMake.
    • Install pkg-config by one of the following methods:
      • Homebrew: brew install pkg-config
      • Nix: add $(nix-build '<nixpkgs>' -A pkg-config-unwrapped --no-out-link)/bin to PATH.
  2. vcpkg/

  3. vcpkg/vcpkg install @vcpkg_x86_64-darwin.txt

  4. Create directory in the cloned/downloaded openspades repo and compile:

    cmake -G Ninja .. -D CMAKE_BUILD_TYPE=RelWithDebInfo -D CMAKE_OSX_ARCHITECTURES=x86_64 -D CMAKE_TOOLCHAIN_FILE=../vcpkg/scripts/buildsystems/vcpkg.cmake -D VCPKG_TARGET_TRIPLET=x64-osx
  5. Launch:

    open bin/

    (Universal builds aren't supported yet.)

Network usage during building

LibreSpades' build process downloads prebuilt game assets and libraries if requested. Specifically:

In addition, vcpkg (sort of package manager only used for Windows and macOS builds) collects and sends telemetry data to Microsoft. You can opt out of this behavior by passing -disableMetrics option when running vcpkg/ command.


For troubleshooting and common problems see TROUBLESHOOTING.


Please see the file named LICENSE.