Skip to main content

Snake game implementation for multiplayer and reinforcement learning

Project description

Snake Wars

Generic badge Travis CI Documentation Status

Snake game implementation for multiplayer and reinforcement learning.

Installation

pip install snake-wars

Get started - Solo player

Play alone, like a traditional snake

from snake_wars.server import Server
from snake_wars.client import Client

# Start a local server and connect the client to it
Server(slots=1).start()
Client(580, 580).start()

Get started - Multiplayer

Play with your friends on a remote server

from snake_wars.client import Client

# Replace the ip with the ip of your server
# Same for the port
Client(580, 580, ip='127.0.0.1', port=5071).start()

Launch a remote server

The easiest way to start a server on a VPS, Azure, AWS, ..., is to use the Docker Image of the server. You can start it with a docker-compose.yml file:

  snake:
    image: joffreybvn/snake-wars-server
    container_name: snake-wars-server
    restart: unless-stopped
    environment:
      PORT: 5071
      SLOTS: 2
      GRID_WIDTH: 20
      GRID_HEIGHT: 20
      FOOD_RATE: 0.15
    ports:
      - "5071:5071"

With this configuration, the game will start only when two players are connected.

Project details


Download files

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

Source Distribution

snake-wars-0.3.0.tar.gz (11.0 kB view details)

Uploaded Source

File details

Details for the file snake-wars-0.3.0.tar.gz.

File metadata

  • Download URL: snake-wars-0.3.0.tar.gz
  • Upload date:
  • Size: 11.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.1.2 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.8.7

File hashes

Hashes for snake-wars-0.3.0.tar.gz
Algorithm Hash digest
SHA256 8ed6684d737169b54c147efcc3354f397e75e579937e716c45f7a60c92ca0e62
MD5 5a24876ba6302e56ac1146771b341060
BLAKE2b-256 a3116546cb704e136138715714c3635effd098138d9ba40503f727744a46c88d

See more details on using hashes here.

Supported by

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