Game Design
Multiplayer Fundamentals
Why is lag frustrating in some online games but barely noticeable in others? Why does matchmaking sometimes create stomps? Multiplayer design is not just 'connect players', but a system of decisions about latency, fairness, and trust.
- **Clash of Clans** - async attacks. Attack when you want, defender isn't even online. Perfect for casual mobile
- **Fighting games rollback** - Killer Instinct's netcode revolution. Same latency feels way better with prediction
- **Valorant's anti-cheat** - Vanguard runs at kernel level. Controversial but effective. Design + tech approach
Synchronous vs Asynchronous
**Synchronous multiplayer** - all players online simultaneously, interacting in real time. **Asynchronous** - players take turns, not necessarily together. Different design, technology, and player commitment requirements.
**Mobile games and async.** Clash of Clans attacks = async. You attack a base whenever you want, the defender isn't even online. Perfect for mobile - no commitment to a specific time.
**Choosing model:** - Target audience availability (casual = async) - Core gameplay requirements (twitch = sync) - Technical resources (servers cost) - Social goals (strong bonds = sync)
Words With Friends is successful on mobile because...
Designing for Latency
**Latency (ping)** - delay between action and server response. 20ms = excellent, 100ms = noticeable, 200ms+ = frustrating. Game designers must design AROUND latency, not ignore it.
**Rollback netcode revolution.** Fighting games switched from delay-based (wait for opponent input) to rollback (predict, correct if wrong). Same latency feels 3x better. Killer Instinct → industry standard.
**Design for latency:** - Test at high ping (simulate 200ms) - Slower gameplay = more forgiving - Hide latency with animation (wind-up) - Communicate when lag affects gameplay
In an FPS you pressed 'move', the character moves instantly, but the server hasn't confirmed yet. This is...
Anti-Cheat Design
**Cheating** - breaking game rules for an unfair advantage. Aimbots, wallhacks, speed hacks, item duplication. Designer's role: make the game resistant to cheats BY DESIGN, not only through technical solutions.
**Fog of war server-side.** In old RTS games, fog of war was client-side - maphacks simply showed hidden units. Modern games: server doesn't send enemy positions until visible. No data = no hack.
**Design anti-cheat:** - Minimize client authority - Hide information until needed - Validate all critical actions - Design systems robust to exploitation
A wallhack shows enemies through walls. How can game design (not software) prevent this?
Matchmaking Systems
**Matchmaking** - a system for pairing players for fair, fun matches. Skill-based (SBMM), connection-based, or hybrid. Goal: minimize one-sided games without long queue times.
**SBMM controversy.** Casual players love it (fair games). Streamers/pros hate it (no stomps for content). COD: hidden SBMM + lobbies disband = constant recalibration. Transparent vs hidden debate.
**Matchmaking design:** - Balance queue time and match quality - Protect new players (separate pools) - Consider parties (premade vs randoms) - Transparency builds trust
Multiplayer just means 'more than one player'
Multiplayer design involves latency compensation, anti-cheat architecture, matchmaking systems, and social dynamics. Each requires specific design decisions
Adding multiplayer isn't just networking code. Game design must account for latency feel, cheat resistance, fair matching. Singleplayer design doesn't transfer directly
Matchmaking search starts strict (±50 rating) and expands over time (±200). Why not search broadly from the start?
Summary
- **Sync vs async** - real-time requires latency compensation. Async = flexible schedule, lower tech requirements
- **Latency design** - client prediction, server reconciliation, lag compensation. Design around latency, not ignore it
- **Anti-cheat** = authoritative server + validation + hide info from client. 'Never trust the client'
Related Topics
Multiplayer fundamentals connect to specific modes:
- Competitive Design — Ranked systems, esports readiness
- Cooperative Design — Co-op specific challenges
Вопросы для размышления
- In which online game did you feel lag the most? How did the game handle (or not handle) it?
- Have you ever been matched against a much stronger opponent? How did it feel?
- If you designed a mobile multiplayer game, sync or async? Why?