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.

Files for snake-wars, version 0.3.0
Filename, size File type Python version Upload date Hashes
Filename, size snake-wars-0.3.0.tar.gz (11.0 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page