Skip to content

Latest commit

 

History

History
209 lines (165 loc) · 7.72 KB

README.md

File metadata and controls

209 lines (165 loc) · 7.72 KB

Contributors Forks Stargazers Issues

Bomberman

Table of contents

  1. Introduction
  2. Game
  3. UML-diagram
  4. Features
  5. Challenges

Introduction

This is our Bomberman project for the Object-Oriented Programming course at HCMIU in semester 1 (2022-2023). We all knew that the game is a classic, but we wanted to make it more interesting and challenging. So we decided to add some new features to the game. We hope you enjoy it!

Team Members

Order Name Student ID
1 Tran Nguyen Phuc ITCSIU21097
2 Nguyen Mach Khang Huy ITCSIU21072
3 Nguyen Tuan Khoa ITCSIU21140
4 Nguyen Manh Viet Khoi ITCSIU21081
5 Pham Vu Quang ITITIU21096

How to run

  1. Clone this repository
    git clone https://github.com/tnphucccc/Bomberman
  2. Open the project with IntelliJ IDEA or VSCode and check the file status
    git status
  3. Run the project
  4. Enjoy the game

Task Allocation

Order Name Task Contribution
1 Tran Nguyen Phuc Controls, GUI, Maps, Entities, Sound, UML, git 20
2 Nguyen Mach Khang Huy Objects, Controls 20
3 Nguyen Tuan Khoa Entities, Controls 20
4 Nguyen Manh Viet Khoi GUI, Entities, Objects, Debugger 20
5 Pham Vu Quang GUI, Maps 20

Game

About The Game

Controls

Key Action
UP Move Up
DOWN Move Down
LEFT Move Left
RIGHT Move Right
SPACE Place Bomb
P Pause
The character is controlled by the arrow keys and the space bar. The player can move the character by pressing the arrow keys. The player can place a bomb by pressing the space bar. The player can pause the game by pressing the P key.

Items

Item Effect
Extra Bomb Increase the number of bombs
Blast Radius Increase the range of bombs
Boots of Hermes Increase the speed of the player

UML-diagram

Controls Diagram


Entities Diagram


Objects Diagram


GUI Diagram


Constant

Features

Unlike the original game, in this version, we decided to change something in the gameplay to make it a bit differ. We added some new features to the game, such as:
- The player can move faster by picking up the Boots of Hermes item.
- The player can place more bombs at the same time by picking up the Extra Bomb item.
- The player can increase the range of bombs by picking up the Blast Radius item.
- The player can pause the game by pressing the P key.
- There 2 maps currently in the game, with different obstacles and enemies.
- The boss will appear in map 2, with a lot of health and will track the player. To kill the boss, you have to be patient and wait for the right time to attack.
- After defeating the boss, you will win the game and become the "Hero of the BomberLand".

Challenge

The most challenging part of this project is the collision detection. We had to make sure that the player can't go through the walls, the enemies can't go through the walls and the bombs can't go through the walls. We also had to make sure that the player can't place a bomb on the wall.
Another challenging part is the boss. We had to make sure that the boss can track the player and attack the player. We also had to make sure that the boss can't go through the walls.
During the process, there were some bugs like:
- The player can place a bomb on the wall.
- Player and enemies can go through the walls.
- Bomb explode through the walls.
- Collision detection is not working properly.
Fixing these bugs took us a lot of time, but it help us learn a lot of things about the game.

(Back to top)