Skip to content

rsashacode/breakout

Repository files navigation

Breakout

A simple and fun breakout game to relive your childhood. Based on pygame framework. Game requires python 3.11.

Table of Contents

Configuration

It is possible to change the size of the game window by changing the value of SELECTED_RESOLUTION in the settings file here

Controls

Menu

  • up-arrow - go up
  • down-arrow - go down

Game

  • left-arrow - move paddle to the left
  • right-arrow - move paddle to the right
  • space - launch the ball
  • esc - pause the game

There are two methods of installation:

Installation

Method 1 (pip)

pip install -r -requirements.txt
python start.py

Method 2 (setuptools)

python -m pip install --upgrade setuptools
python setup.py install
python -c "import breakout_game; breakout_game.start()"

Feature

The game has three difficulty levels. Challenge three unique game modes, beyond the traditional paddle, ball, and blocks, We've also added special power-ups to enhance your gaming experience even more!

Prerequisites

Required libraries:

  • matplotlib==3.8.3
  • pygame==2.5.2
  • pydantic==2.6.3
  • pytest==8.0.2
  • pytest-mock==3.12.0
  • pylint==3.1.0

Git Commit History

UML Diagrams

Unit Tests

To run tests:

python -m pytest ./tests

References

All assets used in the game are open-source, Terms of Use can be found via the links below.

Graphics

Background Music

All background music tracks sourced from Pixabay, with usage rights defined under the Pixabay Terms of Service:

Menu Music

All Menu music tracks sourced from FesliyanStudios, with usage rights defined under the FesliyanStudios - FAQ / Policy:

Effect Sounds

All effect sounds sourced from Pixabay:

Power up icons

  • Power up icons and blocks designed using PowerPoint.

Codebase Reference

The final version is a fully original work.

Some early commits may contain parts of code based on the tutorial Breakout in python tutorial by Clear Code.

About

A simple breakout game written in python

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages