Tag: java
All the articles with the tag "java".
-
Validation Logic for PLACE_FREE_SETTLEMENT Action
Writing validation logic for the `PLACE_FREE_SETTLMENT` action, which requires checking the current game's graph state. Returning 409 if the requested action is illegal.
-
Designing the Graph Data Structure to Manage Board Pieces
Adding `PLACE_SETTLEMENT` action to the backend service and command line testing tool. Starting design of graph data structures and algorithms for piece placement.
-
Roll-for-Order Gameplay and Finite State Machine Cleanup
Implementing roll-for-order functionality, updating player and game state models with join order tracking, and refactoring the FSM base from an interface to an abstract class to cleanly support free transitions.
-
Adding Player Join Order, Colors, and a Game Event Log
Tracking the order players join the lobby to automatically assign game colors, recording every FSM action and free transition in a running event log on the game model, and adding a minimum-player SKIP shortcut for the lobby.
-
Connecting Angular Frontend to Spring Backend with a Randomized Board
Synchronizing GameState models between the Angular frontend and Java backend to enable live polling, and implementing Catan-rules-compliant random board shuffling using Java's Collections.shuffle.
-
Pseudo-Coding OOP Relationships Between FSM States and Actions
Translating the finalized game flow design into concrete Java class relationships—how FSM States and Actions relate to GameService and GameController—while safely deferring auth and persistence until game logic is stable.
-
Mapping REST API Design to the Catan Finite State Machine
A focused design session working through the full Catan ruleset and sketching how a REST API maps to the proposed FSM—what actions the API should expose and how the state machine handles them in a scalable, maintainable way.
-
Implementing the Game Service and Discovering the Bruno API Client
Creating the CatanGameService with game state and action enums as the backbone of the eventual FSM, and switching to Bruno as a local-first, open-source alternative to Postman for making REST requests.