Coder Social home page Coder Social logo

moeinen / cosmic-combat Goto Github PK

View Code? Open in Web Editor NEW
11.0 1.0 0.0 47.34 MB

Project for the Fundamentals of Programming Course at Amirkabir University of Technology (AUT)

License: MIT License

C 50.46% C++ 49.54%
allegro c class-project cpp game space-shooter

cosmic-combat's Introduction

Cosmic Combat: Your Favorite Space Shooter's Favorite Space Shooter

Welcome to Cosmic Combat, the ultimate 2D space shooter game that even other space shooters look up to. Developed as a unique project for the Fundamentals of Programming Course at Amirkabir University of Technology (AUT), this game takes you on an interstellar journey where you battle against an array of cosmic enemies. Crafted with the Allegro 5 game library, Cosmic Combat is not just a game; it's an immersive experience into programming, game development, and space warfare.

Getting Started

Prerequisites

To join the cosmic battle, you'll need:

  • Nothing but your enthusiasm for space shooters! The game is ready to play right out of the box.

Installation

  1. Clone or download the repository to your local machine.
  2. Extract the .rar file.
  3. Find and execute the Cosmic Combat.exe file to launch the game. No compilation needed, just straight to the action!

For Developers and Enthusiasts: Compiling the Game

If you're inclined to dive into the source code or need to make adjustments:

  • Using CodeBlocks: The project file .cbp is located in the src folder. Open it with CodeBlocks, and you're set to compile. If you're new to CodeBlocks, find more information on getting started here.
  • Using Other IDEs: Ensure Allegro 5.0.x or higher is properly configured on your system. You'll need to manually set up the project in your preferred IDE and link the Allegro library. The source .cpp files are located in the src folder. Follow your IDE's documentation for details on compiling projects with external libraries. For Allegro's GitHub repository, visit Allegro GitHub.

Dive Into the Cosmos

Prepare yourself for a showdown against the universe's most challenging adversaries:

  • Bomber: Patrols horizontally, unleashing a barrage of bombs.
  • Cargo Ship: A flying loot crate that drops health boosts, gun upgrades, or shields upon destruction.
  • Drone: This pesky follower will chase your spaceship relentlessly.
  • Bug: Quick and agile, capable of firing in multiple directions.
  • Warrior: Speeds vertically across the screen, with a rapid attack rate.
  • THICCBOI: A tanky adversary requiring significant firepower to defeat.
  • Mine: Invisible threats that explode on contact, immune to your attacks.

Game Highlights

  • Optimized Performance: Enjoy seamless gameplay on both discrete (AMD and NVIDIA) and integrated GPUs. Look forward to updates for even smoother experiences.
  • Loot and Upgrades: Enhance your ship's firepower and defenses by picking up items from downed cargo ships.
  • Varied Enemy Tactics: Each enemy type presents a unique challenge, demanding strategic thinking and quick reflexes.

Screenshots

Cosmic Combat Menu

Cosmic Combat Gameplay 1

Cosmic Combat Gameplay 2

Cosmic Combat Gameplay 3

Please Note

The game's code is a product of dedicated effort, but many of the assets used, including sprites, music, and sound effects, come from external sources. Therefore, Cosmic Combat is intended strictly for educational use and personal enjoyment.

Future Updates

We're constantly working to enhance Cosmic Combat by bringing you new features, optimizing gameplay, and fixing any bugs. A significant update in the pipeline is the addition of a compelling story mode, which will immerse players even deeper into the cosmic universe of the game. This narrative will provide a rich backdrop to the battles, adding context and depth to your interstellar adventures. Stay tuned for an even more engaging cosmic experience!

Educational Foundation

The development of Cosmic Combat was significantly inspired by the programming principles and techniques outlined in George Foot's tutorial. For those interested in the foundational aspects of game programming that influenced this project, you can explore the tutorial here.

Acknowledgments

  • A heartfelt thanks to George Foot for the invaluable programming tutorial that laid the groundwork for Cosmic Combat. His guide on game development has been a cornerstone in understanding the intricacies of game programming. You can find the tutorial here.
  • Hats off to Amirkabir University of Technology (AUT) for the platform to innovate and learn.
  • A big thank you to the Allegro 5 library for making this cosmic adventure possible. Explore more about Allegro on their official website and their GitHub repository.

Cosmic Combat is not just a game; it's a testament to the thrill of space shooters, promising endless hours of intergalactic fun. Your journey through the stars begins now. Are you ready to become the ultimate cosmic champion?

cosmic-combat's People

Contributors

moeinen avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.