Mizukage Bugil __exclusive__

| | | - REST/GraphQL endpoints: GET /companion , POST /companion/level-up , POST /companion/skill-use , POST /companion/skin-purchase . - Validation of XP gain, cooldowns, and purchase receipts. - Use existing player session service for authentication. | | Client‑Side | - Unity (or Unreal) component WaterCompanionController attached to player prefab. - Uses Physics2D/3D for fluid movement; integrates with Particle System for trails. - UI built with existing UI framework (UGUI/Slate). | | Persistence | - Companion state saved on login via GET /companion . - Updates pushed at key events (level‑up, skill use, skin change) using POST . | | Performance | - Companion visual assets use LOD and Sprite Atlas to keep draw calls low. - Particle effects limited to 30 max on mobile; scalable via quality settings. | | Multiplayer Sync | - In PvP, companion state (level, active skills) is sent in the matchmaking packet. - Server authoritative for skill cooldowns and buffs. | | Monetisation | - Integrate with existing in‑app purchase SDK (Google Play, Apple Store, Steam). - Offer bundles (e.g., “Aqua Starter Pack” includes first skin + 500 crystals). | | Analytics | - Use EventBridge (or equivalent) to fire events: CompanionUnlocked , CompanionLeveled , CompanionSkinPurchased , CompanionSkillUsed . | | Testing | - Unit tests for XP calculations, level thresholds, and cooldown logic. - Integration tests for API endpoints (mock auth). - UI regression tests (automated screenshots). - Performance profiling on low‑end devices. | | Localization | - All UI strings go through i18n pipeline; placeholder keys: COMPANION_UNLOCKED , COMPANION_LEVEL_UP , COMPANION_SKIN_PURCHASED . | | Accessibility | - Companion voice lines have subtitles. - HUD color contrast meets WCAG AA. - Option to disable companion sound. |