All Projects → yvt → Openspades

yvt / Openspades

Licence: gpl-3.0
Compatible client of Ace of Spades 0.75

Projects that are alternatives of or similar to Openspades

Etlegacy Deprecated
Archived repository. For current repo, see: https://github.com/etlegacy/etlegacy
Stars: ✭ 470 (-38.88%)
Mutual labels:  multi-platform, game, multiplayer-game, opengl, fps
Openrct2
An open source re-implementation of RollerCoaster Tycoon 2 🎢
Stars: ✭ 10,115 (+1215.34%)
Mutual labels:  cmake, game, multiplayer, opengl, sdl2
Frag.exe
Multiplayer First-Person Shooter written in C++ using my own engine, Qor
Stars: ✭ 8 (-98.96%)
Mutual labels:  game, multiplayer, multiplayer-game, opengl, fps
Open Builder
Open "Minecraft-like" game with multiplayer support and Lua scripting support for the both client and server
Stars: ✭ 569 (-26.01%)
Mutual labels:  cmake, game, multiplayer, opengl, voxel
Etlegacy
ET: Legacy is an open source project based on the code of Wolfenstein: Enemy Territory which was released in 2010 under the terms of the GPLv3 license.
Stars: ✭ 212 (-72.43%)
Mutual labels:  multi-platform, game, multiplayer-game, opengl, fps
Soldat
Soldat is a unique 2D (side-view) multiplayer action game
Stars: ✭ 1,199 (+55.92%)
Mutual labels:  game, multiplayer, opengl, sdl2
Gdk For Unity Fps Starter Project
SpatialOS GDK for Unity FPS Starter Project
Stars: ✭ 119 (-84.53%)
Mutual labels:  online, game, multiplayer, fps
Betterspades
BetterSpades, an Ace of Spades client targeted at low end systems (GL/ES 1.1). Runs on your grandmother's rig!
Stars: ✭ 112 (-85.44%)
Mutual labels:  game, multiplayer, opengl, voxel
Teeworlds
A retro multiplayer shooter
Stars: ✭ 1,712 (+122.63%)
Mutual labels:  game, multiplayer, opengl, sdl2
Mrboom Libretro
Mr.Boom is an 8 player Bomberman clone for RetroArch/Libretro
Stars: ✭ 162 (-78.93%)
Mutual labels:  multi-platform, multiplayer, multiplayer-game, network
Openjk
Community effort to maintain and improve Jedi Academy (SP & MP) + Jedi Outcast (SP only) released by Raven Software
Stars: ✭ 1,641 (+113.39%)
Mutual labels:  multi-platform, game, multiplayer-game, fps
Openage
Free (as in freedom) open source clone of the Age of Empires II engine 🚀
Stars: ✭ 10,712 (+1292.98%)
Mutual labels:  cmake, game, multiplayer, opengl
Engine
A basic cross-platform 3D game engine
Stars: ✭ 208 (-72.95%)
Mutual labels:  cmake, game, opengl, sdl2
Tprpix
a Cross-Platform, 2D Survival Sandbox Game Project. Based on C++17/cmake/OpenGL/SQLite3.
Stars: ✭ 448 (-41.74%)
Mutual labels:  cmake, game, opengl
Team-Capture
Team-Capture - A multiplayer FPS game, inspired by games like Quake and TF2. Done in Unity
Stars: ✭ 81 (-89.47%)
Mutual labels:  fps, multiplayer, multiplayer-game
Lasercrabs
Launch your LASERCRAB at walls, ceilings, and enemy heads in this indie multiplayer shooter where "move" and "attack" are synonymous.
Stars: ✭ 465 (-39.53%)
Mutual labels:  game, multiplayer, opengl
liblast
A libre multiplayer FPS game created in Godot Engine
Stars: ✭ 92 (-88.04%)
Mutual labels:  fps, multiplayer, multiplayer-game
Freeorion
Source code repository of the FreeOrion project.
Stars: ✭ 507 (-34.07%)
Mutual labels:  game, multiplayer, opengl
Gdk For Unity
SpatialOS GDK for Unity
Stars: ✭ 296 (-61.51%)
Mutual labels:  online, game, multiplayer
Stuntrally
The main repository containing Stunt Rally sources and game data. A 3D racing game based on VDrift and OGRE with track editor.
Stars: ✭ 314 (-59.17%)
Mutual labels:  cmake, game, multiplayer

OpenSpades Build status All releases downloads Latest release Crowdin

OpenSpades banner

Official websiteDownloadCommunityTrello board

What is it?

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.

How to Build/Install?

Before you start: In case you're having issues to build OpenSpades, it may be because this README file is outdated, if so:

  1. See the Building Guide, which may be up to date
  2. Or open an issue if the problem persists

On Linux

Snap package

On snap enabled systems, the latest pre-built stable release of OpenSpades can be installed with:

sudo snap install openspades

Once installed, you'll be able to launch OpenSpades from inside the desktop menu or from your terminal with the openspades

Flatpak package

On flatpak enabled systems, OpenSpades can be installed with:

flatpak install flathub jp.yvt.OpenSpades

Once installed, you'll be able to launch OpenSpades from inside the desktop menu or from your terminal with flatpak run jp.yvt.OpenSpades

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 other distributions: Install corresponding packages from your repository (or compile from source).

  2. Clone OpenSpades repository:

    git clone https://github.com/yvt/openspades.git && cd openspades
    
  3. Create directory openspades.mk in cloned/downloaded openspades repo and compile:

    mkdir openspades.mk
    cd openspades.mk
    cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo && make
    
  4. Install OpenSpades (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/openspades.mk; bin/OpenSpades and enjoy

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/bootstrap-vcpkg.bat
    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. 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/bootstrap-vcpkg.sh

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

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

    mkdir openspades.mk
    cd openspades.mk
    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
    ninja
    
  5. Launch:

    open bin/OpenSpades.app
    

    (Universal builds aren't supported yet.)

Network usage during building

OpenSpades' build process automatically downloads prebuilt game assets and libraries as needed. 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/bootstrap-vcpkg.sh command.

Troubleshooting

For troubleshooting and common problems see TROUBLESHOOTING.

Licensing

Please see the file named LICENSE.

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].