
About
Space Invaders is Taito's 1978 arcade shooter, one of the earliest fixed-shooter games, in which a moving laser cannon fends off waves of descending alien invaders. This is a Python/pygame rebuild of Space Invaders, built as a learning project to explore game-development concepts and software design patterns. Beyond the playable game, run via a main script, it also exposes a custom Gymnasium reinforcement-learning environment so an AI agent can play it programmatically, and the project has been published as a pip package.
Getting started
The game can be played directly by running the project's main script with Python. For automated play, it also registers a Gymnasium environment ('CustomSpaceInvaders-v0') that can be imported and stepped through by a reinforcement-learning agent, with configurable render mode, resolution, and reward values; game settings can also be tuned via a configuration file.
History
The author built this as a first attempt at game development, aiming to learn pygame and practice clean software design patterns along the way.