/microspace

Primary LanguageJavaScriptMIT LicenseMIT

Contributors Forks Stargazers Issues License: MIT LinkedIn


MicroSpace

Space Shooter Game build with Phaser 3
Explore the docs »

View Demo · Report Bug · Request Feature

Table of Contents

About the Project

Top Page Screenshot

This is a Space Shooter game build with **Phaser 3** library. It was build for a Javascript capstone projet at Microverse.

For this project, the requirements are:

  • Implement it with Phaser library
  • Implement a scoring system and using a provided api to save the user name and score
  • Deploy the game on a server to make it accessible online
  • Include description of the game desing
  • Provide instruction on how to run the game in local environment

In addition, I added the following features:

  • 20 level weapons for the player
  • 20 level stage to play

Built With

Game Design Document

Game Design Document (GDD) Link

Live Demo

The demo is deployed on Heroku. You can access it here.

Getting Started

To get the game on your own computer, please do the following steps

Prerequisites

This app require: nodejs. If you don't have not installed yet, do the following commands in your terminal.

  • git
  • nodejs & npm
npm install npm@latest -g
  • yarn (Optional)
npm install --global yarn

Installation

Once your computer meets all the requirements you can proceed to the next steps.

  1. Open your command terminal

  2. Clone the repo from github

git clone https://github.com/tigamadou/microspace
  1. Browse to the cloned folder
cd microspace
  1. Install NPM packages using npm or yarn
npm install 'or' yarn 
  1. All the game files will be installed. You'll be now able to build the game and run it.

Tests

All the tests in this project are done with Jest. To run the tests, do

npm test 'or' yarn test

What is MicroSpace

MicroSpace is a Space shooter browser game. To score points, the player need to shoot the enemies and proceed to the next Stage.

How to run the Game

Once all the precious steps completed, and you have built the game, run the following command

  1. Build the game
npm run build 'or' yarn build
  1. Run the start command in your terminal
npm run start 'or' yarn start
  1. Your browser will automatically open with the address http://127.0.0.1:8050

  2. If you don't want to build the game first, you can run the Development server:

npm run dev 'or' yarn dev
  1. The development server will start and automatically open a new tab in your browser with the address http://127.0.0.1:8051

How to Play the Game

  1. Run The game using the instructions above
  2. On the Title Scene
    • Start to start a new game
    • Options to enter the game options
    • LeaderBoard to see the top players
    • Credits to see the closing credits of the game
  3. Click Start to run a new game
    • Chose a name and click save
    • Read your mission details and instructions. Click Accept to proceed
      • You can move with both W S A D keys and UP DOWN LEF RIGHT arrows key
      • Use space to shoot
      • Good Luck
    • If you complete the stage you'll progress to the next Stage

Game Rules

  1. A player can be moved using arrow keys but also common w a s d keys.
  2. The Player use the space bar to shoot lasers.
  3. There are 4 types of lasers each one having 5 speed level.
  4. There are 4 types or enemies
  5. The score is increased each time an enemy is destroyed. The score gained depends on the enemy and the level.
  6. The game is over when the player is destroyed by a laser shoot or a colision with an enemy

Author

👤 Amadou Ibrahim

Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the issues page.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Show your support

Give a ⭐️ if you like this project!

License

This project is MIT licensed.

Acknowledgements