Browse Source

README done

pull/672/head
OGordoo 4 years ago
parent
commit
ee6579358d
  1. 29
      subjects/bomberman-dom/README.md

29
subjects/bomberman-dom/README.md

@ -10,20 +10,19 @@ For this project you have to create a bomberman alike game, where multiple playe
In the beginning there was 4 players, and only one came out alive. Each player will have to start in the different corners of the map and only one will be victorious.
You will have to follow more a less the same principles has the [make-your-game](https://public.01-edu.org/subjects/make-your-game/) project. But we will refresh some of the concepts you will have to respect and deal with.
You will have to follow more a less the same principles has the [make-your-game](https://public.01-edu.org/subjects/make-your-game/) project. But we will refresh one of the concepts you will have to respect and deal with:
1. [**Performance**](https://public.01-edu.org/subjects/good-practices/), is one of the most important aspects while developing a game, so lets respect it.\
- [**Performance**](https://public.01-edu.org/subjects/good-practices/), is one of the most important aspects while developing a game, so lets respect it.\
Just like make-your-game you will have to respect the policy of:
- Running the game at least at **60fps** at all time
- No frame drops
- Proper use of [**`requestAnimationFrame`**](https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame)
- Measuring performance to know if your code is fast
- Running the game at least at **60fps** at all time
- No frame drops
- Proper use of [**`requestAnimationFrame`**](https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame)
- Measuring performance to know if your code is fast
You must not use canvas neither [Web-GL](https://get.webgl.org/) or other framework, for this project you will use the framework you did on the [mini-framework](https://public.01-edu.org/subjects/mini-framework/) project.
You must not use canvas neither [Web-GL](https://get.webgl.org/) or other framework. For this project you will use the framework you did on the [mini-framework](https://public.01-edu.org/subjects/mini-framework/) project.
When the user opens the game, he/she should be presented to a page where he/she should enter a **nickname** to differentiate users. After selecting a nickname the user should be presented to a waiting page with a **player counter** that ends at 4. Once a user joins, the
player counter will increment by 1. As soon as there are 4 players, the game starts.
You will have to make also a chat that enables the different players to talk to each other. As you will have to use [WebSockets](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API), this chat will be the "Hello World" of the multiplayer feature for the **bomberman-dom**.
#### Game Mechanics
@ -34,15 +33,21 @@ player counter will increment by 1. As soon as there are 4 players, the game sta
2. The map should be fixed so that every player sees the whole map.
1. The maps should be generated randomly. There will be two types of blocks, the ones that can be destroyed and the the ones that can not.
1. The maps should be generated with a logical random structure (without blocking the player). There will be two types of blocks, the ones that can be destroyed and the ones that can not. Tip: the optional project [different maps](https://public.01-edu.org/subjects/make-your-game/different-maps) can be useful for this part.
2. The players should be placed in the corners as their starting positions.
3. Power ups (each power up must appear randomly after a block is destroyed):
3. Power ups (each time a player destroys a block, a random power up may or may not appear):
1. Bombs: Increases the amount of bombs dropped at a time by 1;
2. Flames: Increases explosion range from the bomb in four directions by 1 square;
2. Flames: Increases explosion range from the bomb in four directions by 1 block;
3. Speed: Increases movement speed;
4. Bomb Push: Ability to throw a bomb after it has been placed.
When the user opens the game, he/she should be presented to a page where he/she should enter a **nickname** to differentiate users. After selecting a nickname the user should be presented to a waiting page with a **player counter** that ends at 4. Once a user joins, the player counter will increment by 1.
If there are more than 2 players in the counter and it does not reach 4 players before 20 seconds, a 10 second timer starts, to players get ready to start the game.\
If there are 4 players in the counter before 20 seconds, the 10 seconds timer starts and the game starts.
This project will help you learn about:
- [`requestAnimationFrame`](https://developer.mozilla.org/en-US/docs/Web/API/window/requestAnimationFrame)

Loading…
Cancel
Save