Connections Project is a multiplayer, command-line word-grouping game developed in Java 17. Players connect to a central server, solve rotating puzzles, and compete through persistent scores, statistics, and leaderboards.
Architecture
- TCP handles synchronous client requests and server responses.
- UDP delivers asynchronous game-cycle notifications.
- A concurrent server manages multiple authenticated player sessions.
- JSON files persist accounts, game state, puzzle history, and statistics across restarts.
- Shared models and protocol messages keep the client and server in sync.
Game features
The client supports registration, login, credential updates, puzzle submissions, current and historical game information, player statistics, and leaderboards. Proposal validation distinguishes correct groups, valid-but-wrong guesses, and malformed input so scoring and penalties remain predictable.