https://github.com/cristianceamatu/js-phaser-shooter-game
Micro Shooters - Javascript Phaser 3 Game built in 5 days. AI enemies, droppings, boss level, infinity mode, weapon upgrades, lives count, leaderboard. Nice background music, enjoy!
https://github.com/cristianceamatu/js-phaser-shooter-game
boss es6 game javascript joystick leaderboard phaser3 shooting
Last synced: about 1 month ago
JSON representation
Micro Shooters - Javascript Phaser 3 Game built in 5 days. AI enemies, droppings, boss level, infinity mode, weapon upgrades, lives count, leaderboard. Nice background music, enjoy!
- Host: GitHub
- URL: https://github.com/cristianceamatu/js-phaser-shooter-game
- Owner: cristianCeamatu
- Created: 2020-10-20T11:26:02.000Z (over 4 years ago)
- Default Branch: development
- Last Pushed: 2020-10-27T07:58:54.000Z (over 4 years ago)
- Last Synced: 2025-04-28T20:56:11.040Z (about 1 month ago)
- Topics: boss, es6, game, javascript, joystick, leaderboard, phaser3, shooting
- Language: JavaScript
- Homepage:
- Size: 32.4 MB
- Stars: 11
- Watchers: 1
- Forks: 2
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
  
# Micro Shooters - Javascript Phaser 3 Game built in 5 days.
> In this project, we were required to build a space shooter game with the Phaser Javascript library.
>
> The player will have to kill different types of enemies with AI functionality. He can also pick droppings to increase his weapon level/lives or to enter in shield mode.
>
> The game currently has 7 levels (from which one is a Boss and the last one has an infinite spawn). The player can reach a maximum of 5 extra lives and level 7 laser.
>
> The game is tested using Jest for unit testing## Game design document
You can check the updated GDD in [PowerPoint](./gdd/Official_GDD.pptx) (recommended) and [pdf](./gdd/Official_GDD.pdf) versions, and some demos of the sprints (planning per day) used: [sprint1](./gdd/sprint1.txt), [sprint2](./gdd/sprint2.txt) and [sprint3](./gdd/sprint3.txt)## App functionality
- Users are required to choose a nickname when they visit the website
- Users can kill enemies to increase the score and level
- Current game levels by score:
- Level 0: 0 to 1000 points
- Level 1: > 1000 points
- Level 2: > 2500 points
- Level 3: > 5000 points
- Level 4: > 7000 points
- Level 5: > 10000 points
- Level Boss: > 150000 points
- Level Infinite: unlock after killing the Boss
- The game has an all time leaderboard, scores are submitted automatically and updated at each game over.
- The user can see the leaderboard on the right-side nav.## Controls
PC: `UP`, `DOWN`, `LEFT` and `RIGHT` arrow keys for movement and `SPACE` for shooting.
MOBILE: Use `joystick` displayed on the screen for the movement. Shooting is on auto mode.
Demo photo of the joystick:
## This web app is live, you can check it here: [Live demo](https://js-phaser-shooter-game.herokuapp.com/)
## Screenshots of the app.

## Built With
- HTML/SCSS
- Webpack/ES6/Javascript
- Phaser 3
- Node/Express## Prerequisities
To get this project up and running locally, you must have [node](https://nodejs.org/en/) installed locally. Node will automatically install [npm](https://www.npmjs.com/).
## Getting Started
**To get this project set up on your local machine, follow these simple steps:**
**Step 1**
Navigate through the local folder where you want to clone the repository and run
`[email protected]:cristianCeamatu/js-phaser-shooter-game.git`. It will clone the repo to your local folder.
or with https
`https://github.com/cristianCeamatu/js-phaser-shooter-game.git`.
**Step 2**
Run `cd js-phaser-shooter-game`
**Step 3**
Run `npm install` to install the npm packages from the `package.json` file.
**Step 4**
Run `npm run dev` to start the webpack server, you can now navigate to `http://localhost:3000` to view the app. The server refreshes the app every time you make a change to a file used by it.
**Step 5**
Most important, enjoy the app!## Tests
1. Open Terminal
2. Install dependencies (only if you did not install them previously):
`npm install`
3. Run the tests with the command:
`npm test`
## Future improvements
- Make the game playable on mobiles
- Add other worlds/levels/enemies## Authors
👤 **Cristian Viorel Ceamatu**
- Email: [[email protected]]([email protected])
- Github: [https://github.com/cristianCeamatu](https://github.com/cristianCeamatu)
- Twitter: [https://twitter.com/CristianCeamatu](https://twitter.com/CristianCeamatu)
- Linkedin: [https://www.linkedin.com/in/ceamatu-cristian/](https://www.linkedin.com/in/ceamatu-cristian/)## 🤝 Contributing
Our favourite contributions are those that help us improve the project, whether with a contribution, an issue, or a feature request!
## Show your support
If you've read this far....give us a ⭐️!
## 📝 License
This project is licensed by Microverse and the Odin Project