Skip to content

A modern, console-based Snake game that combines classic arcade gameplay with modern features like asynchronous game logic, dynamic menus, audio integration, high score tracking, and achievements.

License

Notifications You must be signed in to change notification settings

Exonymos/snake-game-adventure

Repository files navigation

Snake Game Adventure

A modern, console-based Snake game that combines classic arcade gameplay with modern features like asynchronous game logic, dynamic menus, immersive audio integration, detailed high score tracking, comprehensive game statistics, and achievements. Built with Python's asyncio and pygame for an immersive experience.

GitHub license GitHub issues GitHub last commit Github release
GitHub stars GitHub forks

Table of Contents

About

Snake Game Adventure is an engaging console-based game that reinvents the classic snake game with modern twists. The game not only features asynchronous gameplay and dynamic menus but also introduces:

  • Comprehensive Game Statistics: Track total playtime, longest game, collisions, and more.
  • Enhanced Achievements & Stats: A dedicated section to view high scores, achievements, and detailed performance insights.
  • New Start Screen Art Options: Personalize your experience with multiple ASCII art styles at startup.

The project is modular, with separate files handling settings, achievements, UI menus, game logic, and audio, making it easy to maintain and extend.

(back to top)

Preview

Click to expand
Snake Game Menu Preview Snake Game Mode Select Preview
Snake Game Play Preview Snake Game Settings Preview
Snake Game Achievements & Stats Screen Preview Snake Game High Scores Preview
Snake Game Achievements Preview Snake Game Statistics Preview

Features

  • Asynchronous Gameplay: Utilizes Python's asyncio to ensure responsive and smooth gameplay.
  • Dynamic Menus: Navigate through a variety of menus including game start, instructions, about, settings, high scores, and achievements.
  • Immersive Audio: Background music and sound effects are initialized using pygame’s mixer.
  • High Score & Achievement Tracking: Keep track of your best scores and in-game achievements.
  • Detailed Game Statistics: Records additional metrics like total playtime, longest game, collision count, and more.
  • Enhanced Achievements & Stats Section: View high scores, achievements, and comprehensive statistics in one place.
  • New Start Screen Art Options: Personalize your start screen with multiple ASCII art designs.
  • Modular Code Design: Clean separation of concerns with dedicated modules for settings, UI, game logic, audio, and achievements.

(back to top)

Getting Started

Follow these steps to set up a local copy of Snake Game Adventure:

Prerequisites

Installation

  1. Clone the Repository:
    git clone https://github.com/username/snake-game-adventure.git
  2. Navigate to the Project Directory:
    cd snake-game-adventure
  3. Install Required Dependencies:
    pip install -r requirements.txt

Running the Game

  1. Start the Game:
    python main.py
  2. Follow the On-Screen Prompts:
    Use the interactive menus to start the game, adjust settings, view high scores, or check achievements.

(back to top)

Contributing

Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

  1. Fork the Project.
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature).
  3. Commit your Changes (git commit -m 'Add some AmazingFeature').
  4. Push to the Branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request.

(back to top)

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

About

A modern, console-based Snake game that combines classic arcade gameplay with modern features like asynchronous game logic, dynamic menus, audio integration, high score tracking, and achievements.

Topics

Resources

License

Stars

Watchers

Forks

Languages