• v1.1.0 1c31c489c7

    v1.1.0 — Generic Match Engine, Multi-Game Framework, Battleship Support, and Full Repository Refactor
    All checks were successful
    continuous-integration/drone/tag Build is passing

    aetos released this 2025-12-01 12:58:13 +00:00 | 0 commits to main since this release

    This is a major architecture release that replaces the single-game Tic-Tac-Toe backend
    with a fully generic, multi-game, extensible authoritative game engine.

    Key Changes:

    • Introduced GENERIC MATCH ENGINE

    • New “generic” match handler that delegates flow to per-game GameRules.
    • Supports arbitrary board sizes, player counts, and game modes.
    • Unified OpCodes, turn-handling, validation, and state broadcasting.

    • Multi-Game Support

    • Registry-based system allowing infinite games.
    • Tic-Tac-Toe migrated to GameRules interface.
    • NEW GAME: Full Battleship authoritative implementation.
    • Central GameConfig defining board sizes and player counts.

    • Matchmaking Rewrite (Generic)

    • MatchmakerMatched now validates both game and mode.
    • Automatically spawns “generic” matches with correct ruleset.
    • Strong error feedback for missing properties.

    • Player Model & Match State Overhaul

    • Unified Player struct: { user_id, username, index, metadata }
    • Unified MatchState with dynamic Board (rows × cols).
    • Metadata used for symbols (Tic-Tac-Toe) and boards (Battleship).

    • New Folder Structure

    • /plugins/games → Rules for each game.
    • /plugins/modules → Generic match + matchmaking.
    • /plugins/structs → Shared Board / Player / MatchState models.
    • Removed legacy match.go & matchmaking.go.

    • Battleship Implementation

    • Authoritative ship board + shot board logic.
    • Hit/miss, sinking detection, win condition.
    • Server-side board encoding/decoding.
    • Full turn-based enforcement.

    • Leaderboards Upgrade

    • Auto-creates multiple game-mode leaderboards:
    Downloads