This project is a Monopoly game implemented using Spring Boot. It allows players to create and play the game online with the following features:
- Create New Game: Ability for a host (also a player) to create a new game, therefore discarding the old one.
- Play with Another Player: Ability for a host (also a player) to play the game with another player.
- Cash System: Ability for a player to have their cash system, and start off with $1000.
- Roll Dice: Ability for a player to roll 2 dice and be informed of the place landed.
- Auto Purchase Place: Ability to auto purchase a place when landed and informed.
- Auto Pay Rent: Ability to auto pay to the person whose place was landed on and informed.
- Start Bonus: Ability to gain +$200 when the “start” is crossed.
- Declare Winner: Ability to declare who the winner of a game is based on bankruptcy or the player with the highest cash before turn 50.
- Person A : http://localhost:9999/create-game/ >> Game Created Successfully
- Person A : http://localhost:9999roll-die/p1 >> Die rolled 11 and landed on Place ABC, Unclaimed place and hence bought for $200. Remaining balance is $800.
- Person B : http://localhost:9999/roll-die/p2 >> Die rolled 4 and landed on Place DEF, Unclaimed place and hence bought for $150. Remaining balance is $850.
- Database Data Persistence: Data persistence ensures that even if the Spring application is restarted, the game can be played uninterrupted.
- Design Patterns: MVC design pattern is used for a highly maintainable and readable code base.
- Documentation: Documentation ensures a highly maintainable and readable code base.
- Frontend: React JS, Tailwind CSS, Jest
- Backend: Java, Spring Boot, MySQL, Junit
- Completed a minimal working model with documentation of the required features.
- Improvise working model to incorporate appropriate design/architectural patterns.
- Perform unit testing.
- Create and Push
guide.txt
. - Add User Interface to play and display messages.