DESIGNING A MULTIPLAYER GAME
The game is a multiplayer twist on the classic whack-a-mole. Players aim to score as many points as possible by completing quick-time events (QTEs) and avoiding explosive or point-stealing moles. Potions add strategic depth, allowing players to steal opponents’ points, counter attacks, and more, offering a variety of tactics to outplay their rivals.
- Designed and implemented the complete multiplayer networking infrastructure using Unity Netcode, Lobby, and Relay services.
- Designed and developed all core gameplay systems and features.
- Designed and maintained a scalable, modular code architecture leveraging the Singleton and Observer design patterns to promote code reuse, loose coupling, and maintainability.
- Established and maintained a structured Git workflow using SourceTree, managing feature branches, build releases, version tagging, and code integration.
Technical Overview
- Dynamic Leaderboard – Designed a live ranking system that updates player standings throughout the match using synchronized score data. Podium & End-of-Match System – Implemented synchronized end-game results, winner determination, podium presentation, and final statistics.
- Network Data Synchronization – Designed server-authoritative synchronization for gameplay events, player statistics, game state, UI elements, and match progression using Unity Netcode.
- Lobby Management – Built multiplayer lobby functionality using Unity Lobby Services, including player data synchronization, ready states, and match initialization. Server Creation & Match Initialization – Implemented matchmaking flow, Relay integration, server creation, player connections, and seamless game session transitions.
- Skins Management System – Developed a cosmetic management system allowing players to customize their appearance while synchronizing selections during multiplayer sessions.
- Quick-Time Event (QTE) System – Created responsive QTE mechanics that validate player inputs, reward precision, and synchronize successful interactions over the network.
- Life System – Implemented player health management, damage handling, elimination logic, and synchronized state changes.
- Enemy Spawning System – Designed a dynamic spawning system responsible for managing mole behavior, spawn timing, difficulty progression, and synchronized spawning across all clients.
- Scoring System – Developed a server-authoritative points system supporting score gains, penalties, and real-time synchronization between players.
- Potion & Attack System – Designed and implemented offensive abilities allowing players to steal points, trigger negative effects, and disrupt opponents’ gameplay.
- Defense & Block System – Developed defensive mechanics enabling players to counter incoming attacks through timing-based gameplay. Slowdown Mechanic – Implemented temporary debuffs that reduce an opponent’s gameplay speed, increasing strategic opportunities.
- User Experience & Interface – Designed and implemented responsive UI systems that communicate gameplay information, player status, cooldowns, rankings, and match progression.
Design Exploration
One feature I envisioned for Mole Royal was an environmental affinity system where each character’s abilities would interact differently with the arena.
Depending on the selected character or skin, certain abilities could be strengthened or weakened based on environmental conditions or arena-specific modifiers. This system would encourage players to adapt their strategies to both their character choice and the current map, adding another layer of depth, replayability, and strategic decision-making beyond mechanical skill alone.