Text-Based Monopoly
2023 Year 1 Individual Project. Console-based Monopoly game for 2-10 players with full gameplay mechanics and banking logic.
Technologies Used
JavaGradleJUnitSLF4J
Overview
I implemented a complete, fully-functional Monopoly game engine in Java with comprehensive game mechanics, property management, and financial systems. The project demonstrates mastery of object-oriented programming principles and complex state management.
Game Features
- •Support for 2-10 players with sequential turn management
- •Complete Monopoly board with 40 squares
- •Property ownership, trading, and mortgage system
- •Accurate rent calculation based on property development
- •House and hotel placement mechanics
- •Chance and Community Chest card system
- •Jail mechanics with proper turn counting
- •Bankruptcy detection and player elimination
- •Game state persistence and round tracking
Technical Architecture
- •Object-Oriented Design: Polymorphic square hierarchy with specialized types
- •Design Patterns: Factory pattern, Dependency Injection, Encapsulation
- •Code Quality: Checkstyle enforcement with maximum 10 errors
- •Testing: JUnit 5 with parameterized tests and Mockito
- •Code Coverage: JaCoCo analysis with 50% minimum branch coverage
- •Build System: Gradle with Shadow JAR for executable packaging
Recognition & Achievement
Demonstrated exceptional understanding of OOP principles, design patterns, and software engineering best practices. The project showcased clean architecture, comprehensive testing, and professional code quality standards.