Skip to content

streakh/CosmicDefender

Repository files navigation

Project Name: Cosmic Defender

Author: Streak Honey

Description: Cosmic Defender is a modern remake and remodel of the classic arcade game Space Invaders. It includes the some of the original game mechanics: the player controls a cannon at the bottom of the screen that can move horizontally, there are bunkers that protect the player but can take fire and be damaged from either side, the aliens or invaders move both horizontally and vertically coming towards the player, the game ends if the player is killed or if the aliens reach the bottom (land on the planet). The variations from the original game will be the fact that the alien behavior is modified, not just merely spawning in rectangles that move in unison, they have different movement speeds and fire randomization rates depending on the type, they move in based off a flocking algorithm towards the user or low health bunkers, and there is also a random chance for the spawning of asteroids, which destroy objects in its path and drop a random power-up for the player.


How to run:
   * Open folder in editor, then run program through CosmicDefender_TP3.py file. All source images, animations, and readable files are in either the main folder, icons sub folder, or within the explosionFrames folder. These are initialized within loadImages.py, so as long as they stay in the main folder when you run the program they will be read.

Libraries: No external python libraries used.

Shortcut commands:
   * a = spawn asteroid (random chance is 5% times the current level, so if you don't want to wait)
   * l = givePowerUp (get from shooting down asteroid, but same point as above)


Font(s):
   * Joystix
      * joystix monospace.otf provided in this folder
      * install to local computer by importing into FontBook (Mac) or Control Panel -- Appearance -- Fonts (Windows)


Enjoy Cosmic Defender, thank you!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages