Space Invaders Documentation

This Space Invaders game is a faithful remake of the classic arcade shooter, built using Pygame. It features smooth player controls, multiple enemy waves, dynamic enemy movement, and classic sound effects for an authentic retro experience.

Game Screenshots

Space Invaders Game Screenshot
Gameplay screenshot showing the player ship and enemy waves

Key Features

Classic Enemy Waves

Two enemy types moving side-to-side and down the screen in formation

Player Shooting

Shoot bullets with cooldown and laser sound effects

Player Lives & Game Over

Three lives with game over screen and restart option

Collision & Scoring

Bullet-enemy collision triggers explosions, enemy death, and score increment

Game Mechanics

The player controls a spaceship moving horizontally along the bottom of the screen, firing bullets to eliminate incoming alien enemies. Enemies move as a group, shifting direction when hitting screen edges and descending closer to the player over time.

When an enemy is hit, it triggers a falling animation line and explosion sound, adding visual feedback. The player has three lives and loses one if an enemy collides with the ship or its falling line touches the player. The game restarts once all lives are lost.

Technical Implementation

The game utilizes the following systems:

The game loop manages event handling, state transitions (menu, playing, game over), and rendering at a consistent 60 FPS for smooth gameplay.