Skip to content

Ultimate Ninja is a role-playing game commonly known as an RPG game. The game has been implemented in JavaScript with PhaserJS.

Notifications You must be signed in to change notification settings

ampaire/Ultimate-Ninja

Repository files navigation

JavaScript Capstone Project: Build an RPG game

Ultimate Ninja


screenshot

Contributors Issues

This is Microverse's final project for the Javascript section.

In this project I implemented an RPG game using Phaser 3, an open-source framework for Canvas and WebGL powered browser games. This project's objective was to build a platform game similar to GameDev Academy.The main objective was to use the tutorial create my own role play game.

Assignment Link.

How to play the game

  • Enter your name and click on the start button screenshot
  • You will be directed to the game menu screenshot
  • If you select play, you will be directed to the worldScene. screenshot
  • Use the left, right, up and down arrows screenshot to navigate through the scene and look for the enemies. Once you find them, you shall be directed to the battle scene to fight with the found enemies.

screenshot

  • You will then be directed to the battle scene and here you will fight against two enemies in each round.
  • You will use the arrows still to dodge the attacks and the space bar to launch attack
  • Enjoy

Design and thinking

Ultimate Ninja is a turn based role play game. The objective of this game is not only to give players a chance to enjoy playing for fun but also levelling the game to give them a feel of progression and at the same time challenge as they fight the different characters dubbed as enemies.

This is how I designed my game:

  • In the first two days, I had a lot of ideas for a game in my mind. I thought of creating this cool 3D game with characters fighting but I ended up creating a game where there are two game characters on one side fighting enemies on the other side.
  • I however, lost sometime in between and when I was able to catchup, I continued with the design process.
  • I decided to name my game Ultimate Ninja because the name sounded cool for a turn based game especially with characters fighting.
  • I used the available sprites, images and sounds from openGame Art

The game comprises of two scenes. That is the World Scene which has one player. To navigate through this scene, a player has to use the arrows screenshot to navigate through this scene. During the design process, my thinking was that the enemies are hiding and the player has to navigate through to look for them.

The battle Scene is where the action takes place and to dodge attack, we still use screenshot arrows.

The more the levels you win, the higher the score!.

players-characters

These are your player characters and you will interact with them very often.

Prospector

You will find this one in the worldScene and he is the one you will use to look for the enemies.

Ninja screenshot

This is your most powerful player and you ought to guard him well. He hits the enemy with a damage of 150 and 80 Hp

Herus screenshot

This one is your weakest and only hits with 50 damage and 200 Hp. But he can also handle more attack from the enemy than Ninja

Enemies

These are the characters that you are fighting against.

wizarus form 1 screenshot

You will meet him in level one of this game. He has 80 damage and 80 Hp. He takes more than one shape so lookout!

wizarus form 2 screenshot

You will also meet him in level one but its also possible to meet him in level two. He has 90 damage and 90 Hp

wizarus form 3 screenshot

You will meet him in level two and he is more powerful than the first two enemies 110 damage and 100 Hp

ghostus screenshot

You will find him in level 3 of this game. He is very powerful with 120 damage and 150 Hp

Master screenshot

This is the strongest and most powerful of all the enemies so you will definately want to defeat him! He has 150 damage and 200 Hp

Technologies used

  • HTML and CSS
  • JavaScript
  • Phaser 3
  • Webpack
  • Eslint
  • Babel
  • Jest for testing the game
  • Github
  • Netlify for the deployment
  • Leaderboard API service for the leaderboard

Project Setup

  • To use this project, clone this repositoy by running
$git clone https://github.com/ampaire/phaserRPG.git 
  • To install technologies used for this project, run
$npm install
  • Then run
$npm run build
  • Finally run
$npm run start

And you will be directed to the port where your project is cureently runing

Skills

Tools

  • Use linters (code standards) mast
  • Maintain professional Github repos mast
  • Deploy apps (Heroku or Netlify) mast

Soft skills

  • Strong English written communication mast
  • Ability to communicate information effectively to non-technical people mast
  • Ability to translate business requirements into software solutions mast
  • Sets high standards of performance to oneself mast
  • Shows a desire to take personal responsibility to complete tasks and solve problems mast
  • Ability to multitask and effectively manage time and prioritization mast

Technical skills

  • Create effective JavaScript code that solves the problem mast
  • Encapsulate JS code in modules mast
  • Use Webpack mast
  • Use EcmaScript+ mast
  • Deal with async code mast
  • Send and receive data from a back-end endpoint mast
  • Use JSON format mast
  • Use DOM (read/write data) listen to events mast
  • Test JS code mast

Overall Grade mast

Developer

👤 ** Phemia Ampaire**

🤝 Contributing

Contributions, issues and feature requests are welcome!

You can open a new issue on the issues page.

Show your support

Give a ⭐️ if you like this project!

Acknowledgements

About

Ultimate Ninja is a role-playing game commonly known as an RPG game. The game has been implemented in JavaScript with PhaserJS.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published