/phaser-shooting-game

Guardian of the Galaxy is a shooter game inspired by the guardian of the Galaxy movie. The game is browser based, and designed on the Phaser 3 game library. The game uses a collection of amazing art designed by various game designers from OpenGameArt website( Please Refer to the acknowlegment section for more Informations). The main goal of this game is to score the highest possible score, while killing invading alien ships.

Primary LanguageJavaScriptMIT LicenseMIT

Contributors Forks Stargazers Issues


Logo

Guardian Of The Galaxies

A Shooter Game created in the fulfillment of Microverse mandatory Javascript capstone project.
View Demo · Report Bug · Request Feature

Table of Contents

About The Project

Guardian of the Galaxy is a shooter game inspired by the guardian of the Galaxy movie. The game is browser based, and designed on the Phaser 3 game library. The game uses a collection of amazing art designed by various game designers from OpenGameArt website( Please Refer to the acknowlegment section for more Informations). The main goal of this game is to score the highest possible score, while killing invading alien ships.

Guardian of The Galaxies

Live Demo

Click here for a live demo of the app.

Game Developement Process

The app had a five day deadline. What follows is a breakdown of how I was able to utilize the five days in delivering the game.

  1. Day-one: Deep dive on Phaser-3 documentation and supplementery tutorials.
  2. Day-two: Game Desing. With the help of Open Game Art webiste, I was able to reuse some of the phaser sprites and game mechanics under the free the license in exchange of acknowledging the author.
  3. Third-day: I was able to start curving out the game scenes based on my sprite template.
  4. Fourth-day: Finalizing on the major section of the game.
  5. Testing and documenting the game.

Despite having a 5 day deadline, the time frame wasn't enough to implement all the objectives of the game, as scheduled before. Here are some of the missing functionalities:

  • Game optimization for speed

I was However, able to implement the core game functionalities.

  • Player, Enemy Motions and Interactions.
  • Player Score
  • Leader's Board using external api( which is a well curated list of the players with the best scores)
  • Game audio and cool sound effects.

Features

  • Player username Input
  • Leader Board listing the first 10 player with the highest score.

Future Functionalities

  • more animations.
  • Player health status

Game Instruction

KEY ACTION
SPACE Shoot Enemy Ship
W Move up
A Move Left
S DownWard Motion
D Right Motion

Built With

The project was built using the following languages stacks:

Front-End(client)

Getting Started

To get a local copy up and running follow these simple example steps.

Prerequisites

  • Node

  • Basic knowledge of npm/yarn

Installation

  1. Clone the repo
git clone https://github.com/Cyrus-Kiprop/phaser-shooting-game

2. CD into the project root directory

```sh
cd ./phaser-shooting-game
  1. Install Dependencies and packages
yarn
  1. Build the files
Development server
yarn start
Production server
yarn build

Usage

Check your browser

The game is served at localhost:8080
http//localhost:8080

Enjoy the shooting game

Testing Frameworks
  • Jest
How to test

The game was tested using Jest framework. The test were necessary to ensure a robust system is achieved. The api utilized by the game to get and store player score, and the game logic (player/ animation ) were some of the core targets while testing.

$ pass

If you like to get started on testing please run the following command

yarn test

Roadmap

See the open issues for a list of proposed features (and known issues).

Contributing

Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.

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

Contact

Cyrus Kiprop - cyruskiprop254@gmail.com

Project Link: https://github.com/Cyrus-Kiprop/phaser-shooting-game

Authors

👤 Cyrus Kiprop

Acknowledgements

License

Distributed under the MIT License. See LICENSE for more information.