Patch Notes Page 88
Patch Notes Index
Return to the patch-note index.
Previous Page
Newer entries.
Next Page
Older entries.
v0.0.665
Section titled “v0.0.665”- Improved Discord join flow feedback and connect gating.
- Discord activity join callbacks now only transition to the Lobby view after a successful direct-connect handshake start.
- Added a Join menu inline error surface for failed/rejected connect attempts, including host rejection reasons.
- Added multiplayer rejection-state observability in
NetSession. - Added
consumeLastJoinError()so game UI can react to host-side rejections instead of relying on logs only. - Added automated network rejection regression coverage.
- Added
tests/NetSessionJoinTests.cppandnet_session_join_teststarget. - Test cases now assert host rejection behavior for build mismatch, lobby-full, and match-in-progress joins.
v0.0.664
Section titled “v0.0.664”- Expanded Discord integration into activity join-token and invite foundations.
- Added
game/discord/DiscordJoinService.*and data-driven rules in Discord runtime configuration.json` for join-token generation/validation (prefix, TTL, skew, build-match policy, and join eligibility gates). - Added Discord activity-join callback plumbing in
engine/platform/discord/DiscordRuntime.*so join secrets are captured from Discord and surfaced to the game layer. - Wired Discord join callbacks in
GameRootto route accepted tokens into existing direct-connect flow, with graceful rejection logs for invalid/expired/mismatched tokens. - Hardened multiplayer join safety checks in
NetSession. - Host now rejects join attempts when lobby is full, match is already in progress, password is invalid, or client build does not match.
- Client now handles host rejections cleanly via
Welcomemetadata (accepted+rejectReason) instead of silently retrying forever. - Added Discord join automated coverage.
- Added
tests/DiscordJoinServiceTests.cppand CMake targetdiscord_join_tests.
v0.0.662
Section titled “v0.0.662”- Added Discord identity bootstrap (Milestone 1 foundation).
- Added
game/discord/DiscordIdentityService.*to map runtime state into linked/unlinked identity diagnostics. - Extended
engine/platform/discord/DiscordRuntime.*with current-user identity caching and Connected Games settings hooks. - Added menu-safe Discord status surfaces.
- Main, Host, Join, and Lobby menus now display live Discord state text (for example Off/Connecting/Linked/Link Required).
- Status details are exposed via UI element tooltips and continue to degrade gracefully when Discord is unavailable.
- Added automated coverage for identity state mapping.
- Added
tests/DiscordIdentityServiceTests.cppanddiscord_identity_testsCMake target.
v0.0.661
Section titled “v0.0.661”- Started Discord Social SDK foundation integration (Milestone 0).
- Added optional engine-level Discord runtime adapter (
engine/platform/discord/DiscordRuntime.*) with init, per-frame callback pumping, status logging, and shutdown handling. - Wired Discord lifecycle into game startup/update/shutdown with graceful fallback when disabled or unavailable.
- Added build-time Discord SDK wiring and runtime staging.
- Added CMake option
ZETA_ENABLE_DISCORD(defaultOFF) and local SDK include/link detection fordiscord_social_sdk. - Windows builds now stage
discord_partner_sdk.dllnext to the game executable when Discord integration is enabled. - Added initial Discord runtime config and docs.
- Added Discord runtime configuration.json` for data-driven enablement, app id, connect policy, and SDK log settings.
- Updated README and GAME_SPEC with Discord foundation setup notes.
v0.0.657
Section titled “v0.0.657”- Fixed a main-menu idle crash caused by dynamic enemy spawns.
- Stabilized ECS component iteration when systems spawn or destroy entities during update loops.
- Prevented Dragon encounter and special-enemy runtime spawns from invalidating active ECS iteration state.
v0.0.656
Section titled “v0.0.656”- Hardened Dragon encounter protection against Kaboom powerups.
- Kaboom no longer drops from enemy powerup rolls while a Dragon encounter is active.
- Kaboom detonation now explicitly excludes Dragon and Dragon pylon entities as a fail-safe.
- Improved Dragon pylon combat readability.
- Pylon world health/shield bars are now drawn above the full pylon asset instead of only the lower base.
v0.0.655
Section titled “v0.0.655”- Expanded Dragon encounter regression coverage.
- Added automated flame-breath burn verification in
enemy_special_tests. - Added minimap custom-blip color verification in new
minimap_hud_tests(covers blue objective blip rendering path used by Dragon pylons). - Improved test target wiring for encounter scope validation.
- Added
tests/MiniMapHUDTests.cppand registeredminimap_hud_testsinCMakeLists.txt. - Extended
tests/EnemySpecialSystemTests.cppwith explicit Dragon fire-breath burn behavior checks.
v0.0.654
Section titled “v0.0.654”- Added the Dragon encounter objective phase.
- Dragon phase now spawns a persistent Dragon Gate entrance and a scripted emerge path.
- Spawned 4 Dragon pylons as objective entities with split lower/upper visuals and solid lower collision.
- Dragon health floor is now unlocked in 25% steps per destroyed pylon (100/75/50/25/0).
- Expanded encounter combat behavior and support roles.
- Dragon Gate now periodically summons goblin/orc battalions and healer variants.
- Added goblin/orc healer archetypes with support AI (Dragon-first heal priority, ally fallback, avoid-player movement).
- Added pylon defender guard behavior (orbit while idle, engage when players approach).
- Dragon now heals while disengaging in aerial phases and Dragon flame breath now applies burn DoT on hero hits.
- Improved encounter readability and HUD signaling.
- Added always-front world-sprite slices for gate/pylon upper sections.
- Minimap now supports per-blip color data and renders pylons as blue objective markers.
- Pylon kills now grant XP only and skip loot/copper/item drop paths.
- Added automated regression coverage for Dragon encounter logic.
- Extended
dragon_immunity_testsfor Dragon health-floor clamp progression checks. - Added
enemy_special_testscovering Dragon encounter gate lifecycle and healer target priority.