Skip to main content

A2SQuery is a python implementation of Valve's A2S protocol

Project description

A2SQuery A2SQuery Documentation Status

A2SQuery is a python implementation of Valve's A2S protocol.

Docs

View the full A2SQuery documentation here.

Features

A2SQuery can retrieve various information from any game server that implements the protocol. This includes all Source and GoldSource games. The library will handle connecting, parsing, and even automatically respond to challenge requests.

A2SQuery does not support multi-packet responses as they are impossible parse without knowing information about the server beforehand.

Prerequisites

  • Python >= 3.6

Installation

Install the library via pypi with

pip install a2squery

Getting Started

To start querying servers, we'll need an instance of a2squery.A2SQuery. We can either create one manually, or use a context manager. For this example, we will be using a context manager.

    >>> from a2squery import A2SQuery

    >>> with A2SQuery("127.0.0.1", 27015) as a2s:

Now, with the A2SQuery instance, we can query the game server.

When using a2squery.A2SQuery without a context manager. Remember to call a2squery.A2SQuery.close() when finished.

    >>> from a2squery import A2SQuery

    >>> with A2SQuery("127.0.0.1", 27015) as a2s:
    >>>     print(a2s.info())

    SourceInfo(
        protocol=17, name="Awp Bhop", map="awp_iceworld",
        folder="csgo", game="Counter-Strike: Global Offensive",
        app_id=730, players=43, max_players=64, bots=0,
        server_type=ServerType.Dedicated, environment=Environment.Linux,
        password=False, vac=True, version="1.38.4.4", extra_data_flag=177,
        mode=None, witnesses=None, duration=None,
        port=27015, steam_id=85568392924437989, spectator_port=None,
        spectator_name=None, keywords="awp,bhop,a2squeryiscool", game_id=730
    )

Supported Games

App ID Game Notes
... All Half-Life/Half-Life 2 mods and games
10 Counter-Strike 1.6
440 Team Fortress 2
550 Left For Dead 2
730 Counter-Strike: Global Offensive
1002 Rag Doll Kung Fu
2400 The Ship: Murder Party This game has various unique fields on a2squery.SourceInfo and a2squery.Player.
4000 Garry's Mod
17710 Nuclear Dawn
70000 Dino D-Day
107410 Arma 3 The query port is the server port + 1.
115300 Call of Duty: Modern Warfare 3
211820 Starbound
244850 Space Engineers The query port is the server port + 1.
304930 Unturned The query port is the server port + 1.
251570 7 Days To Die
252490 Rust
282440 Quake Live
346110 ARK: Survival Evolved
108600 Project: Zomboid

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

a2squery-0.0.0-py3-none-any.whl (10.1 kB view details)

Uploaded Python 3

File details

Details for the file a2squery-0.0.0-py3-none-any.whl.

File metadata

  • Download URL: a2squery-0.0.0-py3-none-any.whl
  • Upload date:
  • Size: 10.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.3

File hashes

Hashes for a2squery-0.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 36fc16e7633a6b3eacefe717c466b8443f4293201858dff17ff13754295a6a46
MD5 19a3586bcb6165f7fc3c68662121aa33
BLAKE2b-256 44a3e868f925314632513981b1871cbf5071606588e6d044e933cc76df699e68

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page