908eebefdd
basic matchmaking flow
2025-11-26 16:09:58 +05:30
0fb448dd45
feat: add rpc_find_match for basic 2-player matchmaking
...
- Implement rpc_find_match Nakama RPC function
- Search for existing authoritative TicTacToe matches via MatchList
- Return first match with available slot (size < 2)
- Create new match using MatchCreate when none available
- Add request/response structs for future extensibility
- Log match search, selection, and creation flow
- Gracefully handle optional JSON payload and invalid input
2025-11-26 16:09:48 +05:30
fa4d4d00be
setup player
2025-11-26 16:04:27 +05:30
22993d6d37
minor prints
2025-11-26 15:57:56 +05:30
de4bfb6c07
changed sequence of join match and listener
2025-11-26 15:57:44 +05:30
d260c9a1ef
refactor: abstract WebSocket handling into shared base class
...
- Introduce WebSocketHandler for reusable socket lifecycle management:
• login, connect, close, start_listener
• continuous receive loop with on_message callback
• background listener task support
- Create PlayerWebSocketHandler subclass implementing TicTacToe behavior:
• match_create, match_join, send_move helpers
• parse match_data opcodes and pretty-print board state
- Move shared logic (auth, recv loop, WS decoding) out of gameplay module
- Simplifies test scenario execution & enables future bot/test clients
- Reduces duplication and improves separation of concerns
2025-11-26 15:43:25 +05:30
1b4e7a5ee0
feat(test): add comprehensive TicTacToe gameplay scenario flows
...
- Introduce multiple async test paths for simulation-based validation:
• happy_path (P1 top-row win)
• p2_wins_diagonal
• draw_game (full board, no winner)
• illegal_occupied_cell
• illegal_out_of_turn
• illegal_out_of_bounds
• midgame_disconnect
• abandoned_lobby (no opponent joins)
• spam_moves (anti-flood behavior)
• random_game (stochastic stress playthrough)
- Add TEST_SCENARIOS registry for automated execution
- Improve coverage of server-side match logic, validation, and cleanup
- Enables CI-driven load, rule enforcement, and termination testing
2025-11-26 14:51:10 +05:30
cb23d3c516
feat: add PlayerWebSocket class abstraction for Nakama TicTacToe client
...
- Introduce PlayerWebSocket class to encapsulate player behavior
- Handle login, websocket connect, message listening, and cleanup
- Add helpers: create_match, join_match, send_move
- Remove global websocket/session handling
- Update main() to use object-oriented player flow
- Improves readability, scalability, and multiplayer orchestration
2025-11-26 14:34:19 +05:30
37b20c6c36
fixes
2025-11-25 19:15:46 +05:30
97d355464a
status update
v0.0.1
2025-11-25 19:15:02 +05:30
1af186783f
fixes
2025-11-25 18:50:04 +05:30
d3e3036d20
fixes
2025-11-25 18:49:25 +05:30
b0f127e61f
fixes for game flow and MOVE logs
2025-11-25 18:49:14 +05:30
e74f15c781
game flow basic
2025-11-25 18:23:05 +05:30
34fbe28b93
ignoring .venv files
2025-11-25 17:50:31 +05:30
69fde11346
ignoring run files
2025-11-25 17:44:24 +05:30
f5e51e4bf2
match.go for tictactoe
2025-11-25 17:44:16 +05:30
7c3e544956
hello world
2025-11-25 17:09:00 +05:30
298efd403e
Initial commit
2025-11-25 10:00:58 +00:00