piqueserver v0.1.0-rc.1 Release Notes

Release Date: 2017-09-04 // over 6 years ago
  • ๐Ÿš€ Installing this release

    ๐Ÿš€ This pre-release can be installed with git clone (see README.md) or via pip:

    pip install git+https://github.com/piqueserver/[email protected]
    

    ๐Ÿ”„ Changes

    ๐Ÿ”ง Configuration Enhancements

    ๐Ÿ”ง You can now use the piqueserver --copy-config option to copy the default config to your configuration directory.

    โšก๏ธ Scripts can now be loaded from the PYTHONPATH. This enables the installing and updating scripts with a single command, directly from pypi or github. No more abandoned scripts and lost patches! The goal is to make this even simpler next time.

    Built-in Version Detection

    ๐Ÿ‘ Piqueserver now supports built-in version detection. It does not currently support enhanced version detection though.

    Players can access version detection via the /client <username> command.

    Scripters can access version detection via the connection.client_info dictionary.

    ๐Ÿ‘Œ Support for OpenSpades Popup Messages

    ๐Ÿ‘ OpenSpades supports new popup messages. These can be sent via the following functions:

    connection.send\_chat\_notice(message) connection.send\_chat\_warning(message) connection.send\_chat\_error(message) connection.send\_chat\_status(message) protocol.broadcast\_chat\_notice(message, team=None) protocol.broadcast\_chat\_warning(message, team=None) protocol.broadcast\_chat\_error(message, team=None) protocol.broadcast\_chat\_status(message, team=None)
    

    Command System Rewrite

    The commands system has been rewritten from scratch.
    This is mainly a thing visible to script authors, but we managed to sneak in a few new features too:

    • commands will now return a helpful error message when used incorrectly. No more "Invalid Command".
    • commands taking player names will now refuse to work if multiple players match. No more accidental kicks of the wrong person.
    • commands now accept "yes", "no", "on", "off" in addition to "0" and "1"

    The new command interface can be used like this:

    from piqueserver import [email protected]()def do\_thing1(connection): do\_thing1()@commands.command("name", "alias", "another\_alias", "even\_more", "wew", "stop")def do\_thing2(connection): do\_thing2()
    

    Other Small Things

    • 4-8x increase in map download speed
    • ๐Ÿ›  merge several scripts into the base server (dynfog, bugfix.py, etc.)
    • ๐Ÿ‘ native support for bots
    • ๐Ÿ”€ merge changes from github.com/infogulch/pyspades
    • โšก๏ธ update dependencies
      • now uses pyenet pypi package
      • now uses ipaddr pypi package
    • ๐Ÿ›  various small fixes and improvements

    ๐Ÿง Some users have managed to get piqueserver running under windows, but due to lack of testers and demand, we currently only have official support for Mac OS X (Darwin) and GNU/Linux. If you are a Window user please feel free to help us change this!

    Instalation from PyPi

    Python 2.7 and pip are required.

    โœ… To install the latest version using pip:

    $ pip install piqueserver # Installs latest piqueserver from PyPi
    

    Installation from the source code

    Python 2.7, pip and virtualenv are required.

    ๐Ÿ— To build:

    $ virtualenv -p python2 venv &&. ./venv/bin/activate # Activate virtualenv session(venv) $ pip install -r requirements.txt # Install requirements(venv) $ ./setup.py install # Build and install piqueserver(venv) $ deactivate # Deactivate virtualenv session
    

    โš™ Running

    ๐Ÿ”ง You can specify the location of the configuration directory using the -d option. This allows you to have multiple configurations for different instances of piqueserver.

    0๏ธโƒฃ The default location is .config/piqueserver.

    To run:

    $ piqueserver # OR$ piqueserver -d YOUR\_CONFIGS\_FOLDER\_LOCATION
    

    ๐Ÿณ Docker support

    ๐Ÿ‘€ Please see our wiki page about Docker.