Skip to content

A clone of Contra, with new mechanics and power ups

License

Notifications You must be signed in to change notification settings

cool-mist/Contra

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A 2d side-scroller clone of Contra (1988) game created using python and pygame library.

Run 🏃

Requires python-3 and pip installed.

pip install -r requirements.txt
python main.py

Fullscreen

You can start the game in fullscreen mode by passing the "-f" argument

python main.py -f

Game Instructions

Controls 🎲

Key Action
A Move Left
D Move Right
S Drop to a lower platform
R Quick restart
SPACE Jump
Left Mouse Button Shoots in the direction determined by the mouse position
Right Mouse Button Dash
Mouse Move Direction of shooting

Powerups 🍹

Powerup Effect
F Resets cooldown of Dash
B +1 Health
Bird (Powerdown). Causes the player to drop down if taken when on a platform

Rules

  • Get to the end of the Level and defeat the bot tanks
  • You will die if you lose all your health
  • Each bullet hit will decrease your Health by 1
  • Hitting an enemy unit will INSIANTLY KILL you

Notes on mechanics

  • Running soldiers will be difficult to see underwater. (Only their head is visible )
  • Jump, Right and Dash for longer distance
  • The bird powerup will trigger only if you are walking on a platform while activating.
  • Hence jumping directly on top of the powerup will not activate as you are not on a platform. This can be used to prevent unwanted drops to death
  • Trying to drop when on water will cause you to drown and die !!
  • Direction of shooting is determined by the mouse position. Mouse above/below the player shoots a bullet at an angle of +/- 45 degrees from the ground.
  • RMB activates Dash when it is out of cooldown. Its cooldown is depicted in top center of the screen Use this ability to cross broken bridges for example.
  • A random powerup drops in front of the player every 2 seconds. If it goes out of screen behind the player, it disappears
  • Snipers shoot only when the player is infront of them
  • Soldiers who run across the screen are generated randomly every 3 seconds in front of the player
  • All global settings are present in the 'settings.py'. They can be changed by the player to make the game more interesting and/or challenging

Assets

Asset Credits
Background Zephiel87
BGM Jake Kaufman on ocremix
Sprite sounds Effects from bfxr
Sprites Google images

Thank you for playing