Edugator is an intellectual multiplayer trivia arcade game featuring a vast library across 20 distinct academic and pop-culture categories. Players race against a 20-second dynamic countdown across three difficulty tiers, answering timed four-option questions in Solo Challenge, local pass-and-play, or room-code online matches
The user interface features a sleek portrait aesthetic powered by DOTween procedural micro-animations, tactile UI shake impacts on incorrect choices, and celebratory confetti particle bursts on victory. A dedicated UIOrientationManager executes smooth 180-degree viewport flips to enable head-to-head tabletop play on a single screen without device passing. Audio-haptic feedback, simulated AI solver thinking routines, and interactive audience poll percentage bars deliver high-stakes game-show tension.
Engineered for locked 60 FPS performance across low-end mobile devices and browser WebGL runtimes through zero-allocation runtime loops and in-memory JSON data caching. Gameplay viewports are decoupled from networking layers via an event bus, ensuring seamless Photon synchronization with minimal bandwidth overhead. Production-grade AdMob monetization with exponential retry backoff and PlayFab cloud synchronization maintain stutter-free frame pacing under all network conditions.
Abstracted input through IQuizInputHandler and the GameEvents bus to run Photon PUN 2 room synchronization and local pass-and-play through identical UI viewports with zero network code leakage.
Eliminated awkward physical device passing in local 2-player matches by leveraging UIOrientationManager to execute an automated 180-degree CanvasGroup fade-and-rotation transition that alternates viewports smoothly per turn.
Optimized QuestionManager with an in-memory dictionary cache and non-allocating shuffling routines, filtering 20 distinct JSON category pools and preventing garbage collector spikes during runtime.
How our team bypassed complex bottlenecks to achieve smooth frame execution and frictionless player retention.
Problem: Supporting three radically different game modes (single-player solo, local turn-based tabletop, and online lockstep rooms) risked turning QuizUIManager and core managers into monolithic branching codebases. Direct references between networking layers and UI components caused state leaks, race conditions, and maintenance bottlenecks. Solution: Engineered a polymorphic IQuizInputHandler abstraction implemented independently by QuizManager, MultiplayerQuizManager, and PhotonQuizManager. All gameplay state transitions publish strictly to the static GameEvents bus, ensuring QuizUIManager remains completely agnostic to whether input comes from a local button or a remote network packet.
Built a decoupled Model-View-Controller architecture with cached transform loops and compressed mesh streams to eliminate CPU bottlenecking.
Problem: Transmitting full question payloads over the network or waiting for authoritative server answer evaluations introduced network jitter, data serialization lag, and desynchronization on unstable mobile connections. Additionally, late submitters could hold up match progression or trigger race conditions during question changes. Solution: Designed a lightweight client-validated lockstep protocol where the room host pushes only compact question references (QuestionRef) via Room Custom Properties, while clients evaluate answers locally without latency. Clients broadcast only a lightweight submission token via Photon RaiseEvent; every client independently tracks the set of submitted actor numbers to advance questions simultaneously once all players complete their turn.
Engineered responsive input managers and a custom asset loading pipeline that keeps startup loading times under 3 seconds.
Engineered gameplay mechanics and custom technical pipelines powering Edugator.
Every production title at CubeStaX undergoes strict frame profiling, memory optimization, and compliance testing.
Locked Framerate on Budget Mobile & WebGL
GC Frame Drops During Active Question Rounds
Modular JSON Trivia Datasets Cached In-Memory
Optimized WebGL Data Payload Footprint
Photon PUN 2 Submission Synchronization Overhead
UI Component Reuse Across Solo, Local Tabletop & Online Modes




