Skip to main content

A module Space Invaders clone in Python Pygame

Project description

Invader Clone

Kitty Invader PyPI GitHub Kitty Invader

Project Description

Invader Clone is a ridiculously configurable clone of Space Invaders written in Python. Just about every game setting is swappable using the many available command-line arguments.

If you really wish, you can even create your own sample level using the API.

Documentation that will help you do all of this is on its way. While you wait, here's the condensed version of the project's usage!

Install

There are two planned options for the installation of Invader Clone. You can install the game either by using pip, or by downloading a launcher for your OS in the Releases section on GitHub.

Pip

To install using pip, use the following command:

pip install invaderclone

If your system package manager manages your python packages, you can instead use the following command (PLEASE READ THE WARNING BELOW***):

pip install invaderclone --break-system-packages

***It's probably okay if you do this, but you should probably install python pygame using your system package manager BEFORE installing Invader Clone using this method.

Launcher

You can either build the launcher from source, or you can download the latest version from GitHub Releases.

There is a version available for Windows and Linux. A Mac version may or may not come in the future. I haven't quite figured out how I'd do that.

You can also find the Game's page on Itch.io. If you like the project, please make a donation through the Itch.io storefront! I won't buy a cup of coffee with it, I promise! I will probably put it towards gas in California.

Usage

If you've installed the game through Pip, you can type invaderclone into the terminal to run it.

If you downloaded a launcher, double click on the executable file launch it. You will need an internet connection the first time you run this, because the launcher will try to set up a virtual environment in you game directory, and it will install pygame as well.

Running the game without any arguments will simply run the game. To see the vast bounty of switches and options you can use to modify your copy of the game, you can type invaderclone --help into the command line.

Themeing

To learn how to theme your game in-depth, read the CREATING_THEMES.md file that can be found in this repository.

In summary, you can place your theme in the config directory chosen for your OS (~/.config/invaderclone on Linux, C:\users\YOU\Documents\invaderclone)

Custom Levels

Documentation will be written on creating custom levels, but it can be done! A custom level can be placed in your config directory (see above). Name your custom level levelN.py, where N is a postive integer that is not 0 (00 probably works).

In it, you must define a class that inherits from invaderclone.Scene, or it must inherit from a class that inherits from invaderclone.Scene that I will talk about in the Documentation to come. The class MUST BE NAMED LevelN, where N is the same number you named the script. There are no limits, if you know pygame, you can do anything you want.

If you need help creating your Scene, study the workings of the game in this repo.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

invaderclone-0.9.0.tar.gz (12.7 MB view details)

Uploaded Source

Built Distribution

invaderclone-0.9.0-py3-none-any.whl (12.8 MB view details)

Uploaded Python 3

File details

Details for the file invaderclone-0.9.0.tar.gz.

File metadata

  • Download URL: invaderclone-0.9.0.tar.gz
  • Upload date:
  • Size: 12.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for invaderclone-0.9.0.tar.gz
Algorithm Hash digest
SHA256 368f6b4980760bdb39aa36b645050f58ba9958671e55329268a1b342e52162a7
MD5 ee1319ff58abd2795916dbb65ea3d946
BLAKE2b-256 f464ac14e7d844b9fecf40ef94b3792d96120a860d6c536a425f01ccd0a46c5e

See more details on using hashes here.

File details

Details for the file invaderclone-0.9.0-py3-none-any.whl.

File metadata

  • Download URL: invaderclone-0.9.0-py3-none-any.whl
  • Upload date:
  • Size: 12.8 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for invaderclone-0.9.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8ab0c373c677cd94ecc8fb6aae6a40da8c01027d6404dedd5bc892f6a35192c3
MD5 d727e5dc2d6d00b5b38c9bf3574660f7
BLAKE2b-256 03ab5594c588761ac6e7bcbf75a763bb40af0773c7e3e2105bfe39703e4cc841

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page