SlideShare a Scribd company logo
ASYNCHRONOUS MULTIPLAYER:
AUTHORATIVE SERVER
ON SLOW NETWORK
Ivan Dolgushin
Game developer at Appturn
Maze Mash
Maze Mash
Time-keeping in games
Synchronous and asynchronous
If the attainment of a win
as a part of a loop
depends on the actions
of more than one player,
•that loop is synchronous;
•if not, it is asynchronous.
Step 1: Turn-based games
Synchronization:
• once a turn (on commit);
• network latency does not matter;
• race conditions do matter.
Remote Procedure Call (RPC)
Send action, reliably, with turn number.
Return nothing on success.
Parallel simulation
Client Server
Compare world states regularly:
as check-sum or any other way
De-synchronization
Checksum failure strategies:
• Stop the game
• Take client world as correct one
• Take server world as correct one
Step 2: Real-time games
Turn-base ->
-> timed turn-base ->
-> time per turn < 1/30 sec
-> real-time game ^_^
Synchronizability requirements:
• “Fixed” update time-step
• “Fixed” call order in the update-frame
• “Fixed” data types
• “Fixed” math
• “Predictable” randomness
Network latency
Re-synchronization strategies:
• Logical state synchronization
• Lerp visuals in several frames
Step 3: Predictive RT
When the game turn duration is way shorter than network
latency, the network messages never gets to the remote in
time
Server
Client
A
A
B
B
C
C
Time shift
Server
Client
A
A
B
B
C
CLTNCY
Jitter
Server
Client
A
A
B
B
C
CLTNCY
Input caching
Server
Client
A B C
LTNCYJB
QUEUE
A B C
AB C
|0
|0 |100
|100
State synchronization
Server
Client
A B C
LTNCYJB
QUEUE
A B C
AB C
|0
|0 |100
|100
? ?
PREDICTION
PREDICTION
Prediction
Server
Client A B C
LTNCYJB
QUEUE
A B C
AB C
|0
|0 |100
|100
QUEUE A B C
PREDICTION
PREDICTION
Timestamps
Server
Client A B C
LTNCYJB
QUEUE
A B C
AB C
|0
|0 |100
|100
QUEUE A B C
Prediction issues
• Make sure your logic is “prediction-aware”.
No irreversible actions should be done, e.g. object should
not be actually destroyed a while after their “visual death”.
• Make sure your FX logic is “prediction-aware”.
Some action may happen several times in one frame just
because of prediction.
Pros and Cons
Pros:
• is working on a wide range of
network qualities
• load depends on actual
prediction duration (low load
on low-latency networks)
• high security
• moderate server load
• almost out-of-the-box replays
Cons:
• prediction requires relatively
large amount processing time
(a bunch of “frame” amounts)
• load depends on actual
prediction duration (high load
on high-latency networks)
• does not work for synchronous
multiplayer games
• quite hard to implement
• horribly hard to debug
• require predictable and
synchronizable random
numbers
Thank you!
Ivan Dolgushin
Game developer at Appturn
ivand@appturn.com

More Related Content

PPTX
Артем Оробец «На пути к low-latency»
PDF
High performance in react native
PDF
Get into less by tess hsu
PDF
Continuous delivery while minimizing performance risks (dutch web ops meetup)
PPTX
Unity networking
PPTX
Cloud War Stories
PDF
OSMC 2014: Naemon 1, 2, 3, N | Andreas Ericsson
PDF
Continuous Delivery and MarkLogic
Артем Оробец «На пути к low-latency»
High performance in react native
Get into less by tess hsu
Continuous delivery while minimizing performance risks (dutch web ops meetup)
Unity networking
Cloud War Stories
OSMC 2014: Naemon 1, 2, 3, N | Andreas Ericsson
Continuous Delivery and MarkLogic

Viewers also liked (9)

PDF
Introduction to AI - Seventh Lecture
PPTX
Approaches to game AI overview
PDF
Artificially Intelligent Design(er). The End of User Experience as we know it?
PDF
Game Design Dokumentation und Projekt Management
PPTX
Game playing in artificial intelligent technique
PDF
Practical AI in Games
PDF
Artificial Intelligence in games
PDF
Game design document template for serious games
PPT
Game Playing in Artificial Intelligence
Introduction to AI - Seventh Lecture
Approaches to game AI overview
Artificially Intelligent Design(er). The End of User Experience as we know it?
Game Design Dokumentation und Projekt Management
Game playing in artificial intelligent technique
Practical AI in Games
Artificial Intelligence in games
Game design document template for serious games
Game Playing in Artificial Intelligence
Ad

Similar to Asynchronous Multiplayer on Mobile Network (20)

PDF
Scalability & Big Data challenges in real time multiplayer games
PDF
Akka for realtime multiplayer mobile games
PDF
Akka for realtime multiplayer mobile games
PDF
Jan Hloušek, Keen Software House
PDF
CS4344 09/10 Lecture 2: Consistency
PPT
Realtime html5 multiplayer_games_with_node_js
PPTX
Game Networking for Online games
PDF
Lets Play Together
PPT
Multiplayer Game Programming Chapter 1.ppt
PDF
Game network programming
PDF
CS4344 09/10 Lecture 1: Introduction
PPT
Realtime html5 multiplayer_games_with_node_js
PPT
Multiplayer Games Chapter 6 Network Topologies.ppt
PPTX
Developing Multiplayer Games in Unity3D
KEY
Networked physics 2011
KEY
GDC Networked Physics 2011
ZIP
GDC Networked Physics 2011
KEY
Networked Physics 2011
PPTX
MIGS18 Transforming from peer-to-peer to dedicated servers on a live game
PDF
CS4344 Lecture 3: Dead Reckoning and Local Perception Filter
Scalability & Big Data challenges in real time multiplayer games
Akka for realtime multiplayer mobile games
Akka for realtime multiplayer mobile games
Jan Hloušek, Keen Software House
CS4344 09/10 Lecture 2: Consistency
Realtime html5 multiplayer_games_with_node_js
Game Networking for Online games
Lets Play Together
Multiplayer Game Programming Chapter 1.ppt
Game network programming
CS4344 09/10 Lecture 1: Introduction
Realtime html5 multiplayer_games_with_node_js
Multiplayer Games Chapter 6 Network Topologies.ppt
Developing Multiplayer Games in Unity3D
Networked physics 2011
GDC Networked Physics 2011
GDC Networked Physics 2011
Networked Physics 2011
MIGS18 Transforming from peer-to-peer to dedicated servers on a live game
CS4344 Lecture 3: Dead Reckoning and Local Perception Filter
Ad

Recently uploaded (20)

PDF
Digital Systems & Binary Numbers (comprehensive )
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
PPTX
Computer Software and OS of computer science of grade 11.pptx
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PDF
2025 Textile ERP Trends: SAP, Odoo & Oracle
PDF
PTS Company Brochure 2025 (1).pdf.......
PPTX
assetexplorer- product-overview - presentation
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
PDF
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PDF
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
PDF
Design an Analysis of Algorithms II-SECS-1021-03
PDF
medical staffing services at VALiNTRY
PDF
System and Network Administraation Chapter 3
PDF
Designing Intelligence for the Shop Floor.pdf
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
Upgrade and Innovation Strategies for SAP ERP Customers
Digital Systems & Binary Numbers (comprehensive )
Navsoft: AI-Powered Business Solutions & Custom Software Development
Computer Software and OS of computer science of grade 11.pptx
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
2025 Textile ERP Trends: SAP, Odoo & Oracle
PTS Company Brochure 2025 (1).pdf.......
assetexplorer- product-overview - presentation
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Claude Code: Everyone is a 10x Developer - A Comprehensive AI-Powered CLI Tool
Raksha Bandhan Grocery Pricing Trends in India 2025.pdf
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
How to Choose the Right IT Partner for Your Business in Malaysia
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
SAP S4 Hana Brochure 3 (PTS SYSTEMS AND SOLUTIONS)
Design an Analysis of Algorithms II-SECS-1021-03
medical staffing services at VALiNTRY
System and Network Administraation Chapter 3
Designing Intelligence for the Shop Floor.pdf
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
Upgrade and Innovation Strategies for SAP ERP Customers

Asynchronous Multiplayer on Mobile Network