/snake

Classic Snake game written in Python with Arcade.

Primary LanguagePython

Snake

A Python implementation of the classic 🐍 game.

Note: the low frame rate here is due to the GIF recording not the game itself.

snake_demo_1

That's my first attempt on writing games in Python after implementing some 2D games in Ruby like Pong and Flappy Bird.

Particullarly, in this game my goal was not only to experiment game development in Python but also to wrap my head around how to start structuring scenes in 2D games which is something I haven't done in other games so far.

Installation

Install the awesome Arcade library:

pip install arcade

Clone this repo:

git clone https://github.com/tiagopog/snake

Run the game:

python snake/main.py

Enjoy!

TODOs

  • Implement the snake's movement mechanics;
  • Implement logic of the snake's food;
  • Implement collision detection + score system;
  • Grow the snake's body and speed when scoring;
  • Make sure the snake's movement mechanics work at any speed;
  • Create arena to limit where the snake can go;
  • Make sure the food doesn't appear over or beyond the arena's border;
  • Detect collision between the snake and the arena's borders;
  • Detect collision between the snake and its own body;
  • Implement game over;
  • Implement game reset;
  • Implement initial scene with the game control;
  • Implement scoreboard scene with best scores;
  • Generate a binary executable for the game.