Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/davidosky007/rpg-game
This is a Capstone project that signals the completion of the JavaScript module in the Microverse Curriculum. It is an RPG game, specifically a platform game
https://github.com/davidosky007/rpg-game
babel javascript jest netlify phaser3 webpack
Last synced: about 7 hours ago
JSON representation
This is a Capstone project that signals the completion of the JavaScript module in the Microverse Curriculum. It is an RPG game, specifically a platform game
- Host: GitHub
- URL: https://github.com/davidosky007/rpg-game
- Owner: Davidosky007
- License: mit
- Created: 2021-04-02T11:28:49.000Z (almost 4 years ago)
- Default Branch: development
- Last Pushed: 2021-05-05T08:01:20.000Z (over 3 years ago)
- Last Synced: 2023-03-04T23:49:15.929Z (almost 2 years ago)
- Topics: babel, javascript, jest, netlify, phaser3, webpack
- Language: JavaScript
- Homepage: https://wonderful-perlman-3b9600.netlify.app/
- Size: 19.1 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![](https://img.shields.io/badge/Microverse-blueviolet)
# Project Name
JavaScript / Capstone --> [False Ninja]
![screenshot](./src/assets/Screenshot1.png)
![screenshot](./src/assets/Screenshot2.png)
![screenshot](./src/assets/Screenshot3.png)## About The Project
This is a Capstone project that signals the completion of the JavaScript module in the Microverse Curriculum.
It is an RPG game, specifically a platform game. The main inspiration was from multiplayer online games.
In this particular game the action is mainly focused on collecting as many chests as possible while having to combat monsters.## Built With
* JavaScript
* Phaser3
* Webpack
* Jest### How to Play
The game can be played using the arrow keys for moving the player and the spacebar for attacking the monster.
By moving the player you will be able to collect chests that contain gold. Each chest will update the score with a random amount between 20 and 30 golds.
Each character has a health bar, player included. The monster's health bar will decrease each time the player attacks, but watch out, the monsters have a random movement and each time you will attack they will fight back making your health bar decrease.
As a bonus though, for each monster killed the player will have back some gold and some life to increase his health bar.### Design Process
False Ninja was designed on an initial, quite complex, webpack configuration specific for Phaser3. This allowed me to investigate Phaser and its tools from a specific perspective. The entire map was built with Tiled on a 32 x 32 collection of squares. The map then has been exported as a json file and used for placing chests, and monsters at random positions.
The player has a set velocity and can move across the map by using the arrow keys. Each time the player dies it will be spawned at a different random position to make the game more interesting. The monsters and the chests will be as well randomly generated and spawned on the map. Each spawned element has a random unique id used to interact with the user. The unique id is generated with the help of uuid npm package.
## Live Demo
[Live Demo Link](https://wonderful-perlman-3b9600.netlify.app/)
## Getting Started
To get a local copy up and running follow these simple example steps.
### Prerequisites
* [Node.js](https://nodejs.org/) is required to install dependencies and run scripts via npm.
* A modern browser### Clone
* [download](https://github.com/Davidosky007/Rpg-game/archive/refs/heads/feature-1.zip) or clone this repo:
* Clone with SSH:```
[email protected]:Davidosky007/Rpg-game.git
```* Clone with HTTPS
```
https://github.com/Davidosky007/Rpg-game.git### Setup
Install dependencies:
```
npm install
```## Potential future features
* Extend the game to a multiplayer online game
* Add authentication process### Usage
Start the local webserver:
```$ npm start``` > will open a local webserver at directly in your default browser with the game ready to be played
### Run tests
* Run the command and see the output:
```$ npm run test```## Author
👤 **David Bassey**
* GitHub: [@davidosky007](https://github.com/davidosky007)
* Twitter: [@davidosky2](https://twitter.com/Davidosky2)
* LinkedIn: [David Bassey](https://www.linkedin.com/in/david-bassey-akan/)## :handshake: Contributing
Contributions, issues and feature requests are welcome!
Feel free to check the [issues page](https://github.com/Davidosky007/Rpg-game/issues).
## Show your support
Give a :star: if you like this project!
## Acknowledgments
* [OpenGameArt](https://opengameart.org/)
* [Phaser3](https://phaser.io/phaser3) & [Phaser Template](https://github.com/photonstorm/phaser3-project-template)
* [Microverse](https://www.microverse.org/)## 📝 License
This project is [MIT](lic.url) licensed.