/piqueserver

An Ace of Spades 0.75 server based on PySnip.

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

piqueserver Build Status Build status Coverage Status

An Ace of Spades 0.75 server based on PySnip.

👉 Chat with us!

All of these are bridged together!

🎉 Features

  • Many administrator features
  • A lot of epic commands
  • A remote console (using SSH)
  • Map rotation
  • Map metadata (name, version, author, and map configuration)
  • Map extensions (water damage, etc.)
  • A map generator
  • An IRC client for managing your server
  • A JSON query webserver
  • A status server with map overview
  • Server/map scripts
  • Airstrikes
  • Melee attacks with the pickaxe
  • New gamemodes (deathmatch / runningman)
  • Rollback feature (rolling back to the original map)
  • Spectator mode
  • Dirt grenades
  • Platforms with buttons
  • Ban subscribe service
  • A ton of other features

🚀 Installation

Requirements

Piqueserver requires python3.5.3 and above

We currently provide builds for:
  • Linux 32 and 64bit, Python 3.5, 3.6
  • Windows 32 and 64bit, Python 3.5, 3.6

If your system is not one of the above, you will also need a recent C++ Compiler.

pip (stable version)

pip3 install piqueserver

Optional features:

  • ssh: enable ssh manhole server support
  • from: enable the from command to geolocate players by ip

To install with optional features with pip:

pip3 install piqueserver[ssh,from]

git (bleeding edge)

git clone https://github.com/piqueserver/piqueserver
cd piqueserver
python3 -m venv venv
source venv/bin/activate

# note: requirements.txt includes all optional deps too
pip install -r requirements.txt

python setup.py install

# now `piqueserver` will be available on the $PATH when venv active

Archlinux

An AUR package (git master) is available. Install manually or with your favourite AUR helper:

pacaur -y piqueserver-git

🚀 Running

Then copy the default configuration as a base to work off

piqueserver --copy-config

A-a-and lift off!

piqueserver

Custom config location

If you wish to use a different location to ~/.config/piqueserver/ for config files, specify a directory with the -d flag:

piqueserver --copy-config -d custom_dir
piqueserver -d custom_dir

💬 FAQ

What's the purpose?

The purpose of this repo is to be a continuation of PySnip.

What if PySnip development returns?

Then they would merge our changes and development would be continued there, I guess. The important thing is to keep AoS servers alive.

Why should I use piqueserver instead of PySnip/PySpades?

  • Multi config installation
  • Docker support
  • Bug fixes
  • Improvements
  • Better anti-hacking
  • New scripts

What about 0.76 support

Working with multiple versions is a pain. 0.76 will be suported in the future only.

Is that everything?

Please see also the Wiki for more information.

😊 Contribute

Don't be shy and submit us a PR or an issue! Help is always appreciated

🔧 Development

Use python3 and pip to setup the development environment:

$ python3 -m venv venv && source venv/bin/activate
(venv) $ pip install -r requirements.txt
(venv) $ pip install -r dev-requirements.txt # includes dev tools
(venv) $ python setup.py develop             # install in-place
(venv) $ deactivate # Deactivate virtualenv

Brought to you with ❤️ by the piqueserver team.