Multiplayer snake game writen on python with support for 3 clients: web, console (cli) and pygame (gui)
- Console client (ascii graphics)
- GUI client (pygame library)
- Web client (writen on JS)
- Mobile web client (optimize for mobile devices)
See screenshots
git clone https://github.com/Arizel79/Multiplayer-snake-game.git
cd Multiplayer-snake-game
python -m venv .venv
source .venv/bin/activate # on Windows: .\.venv\Scripts\activate
Tested on python 3.11
python pip install -r requirements.txt
python server --address 0.0.0.0 --port 8090 --server_name "My test server"
Running server options:
usage: server [-h] [--address ADDRESS] [--port PORT] [--server_name SERVER_NAME] [--server_desc SERVER_DESC] [--max_players MAX_PLAYERS] [--map_width MAP_WIDTH]
[--map_height MAP_HEIGHT] [--food_perc FOOD_PERC] [--default_move_timeout DEFAULT_MOVE_TIMEOUT] [--logging_level {DEBUG,INFO,WARNING,ERROR,CRITICAL}]
open web/game.html in browser
python client --name TestPlayer --color white;red,green,blue --mode gui
python client --name TestPlayer --color white;red,green,blue --mode cli
Running console & gui clients options:
--mode {cli,gui}, -m {cli,gui}
Game mode
--name NAME, --n NAME
Snake name
--color COLOR, --c COLOR
Snake color
--server SERVER, --s SERVER
Server address
--log_lvl {DEBUG,INFO,WARNING,ERROR,CRITICAL}
Level of logging
--interactive, --i Enable interactive prompting (default: False)
Colors (--color argument):
red,orange,yellow,lime,green,turquoise,cyan,light_blue,blue,violet,magenta