Upload
agate-studio
View
185
Download
0
Embed Size (px)
DESCRIPTION
Citation preview
Multiplayer Game
• Play with friends in one device (PC, console, etc)
• Cramped on 1 screen
4/12/2014 Talent Development Saturday
Internet
• Online multiplayer
• Play with online friend over the world
• Connected via game servers
4/12/2014 Talent Development Saturday
Game Server
• A server for hosting game
• A authoritative source of events
• Where client connect to retrieve and send data
• Handling synchronization of data among players
4/12/2014 Talent Development Saturday
Asynchronous Communication
• Not real time. Real time is not necessary
• There’s lag between action and response
4/12/2014 Talent Development Saturday
Asynchronous Communication
• Less load and traffic on server
• More easy to make
Up Side
4/12/2014 Talent Development Saturday
Asynchronous Communication
• Lack sense of immediacy
• User need to wait for reply
Down Side
4/12/2014 Talent Development Saturday
Synchronous Communication
• Real-time action
• Playing at the same time
4/12/2014 Talent Development Saturday
Synchronous Communication
• Sense of immediacy
• Fast feedback
Up Side
4/12/2014 Talent Development Saturday
Synchronous Communication
• More server load
• More complex logic
Down Side
4/12/2014 Talent Development Saturday
Web Service
• Communication over WWW
• Communicate with a web server
• Provide web API to access
• Request based communication
• Asynchronous communication
Definition
4/12/2014 Talent Development Saturday
Web Service
• Easier. Many interest and plenty of support
• Plenty of frameworks and tools
Advantage
4/12/2014 Talent Development Saturday
Web Service
• Bigger payload
• String based message communication
• Slower communication. Bigger latency
• TCP
Disadvantage
4/12/2014 Talent Development Saturday
Socket
• Low latency. Faster communication
• Binary based message communication
• TCP + UDP
Advantage
4/12/2014 Talent Development Saturday
Socket
• More complex algorithm. More lower level
• Challenge on scalability
• Security. All client can connect
Disadvantage
4/12/2014 Talent Development Saturday
Which to Use
• Consider each advantage and disadvantage
• Timeline
• Future plan
4/12/2014 Talent Development Saturday
Client Server
• Clients connect to a server
• Usually, client listen to what server says
4/12/2014 Talent Development Saturday
Peer to Peer
• Client connect to other client
• One client may act as server or all client are server
• Challenges • Not all client can connect to others
4/12/2014 Talent Development Saturday
Which to Use
• Consider game needs
• Peer to peer have a big disadvantage • Connecting
• Quality is not guaranteed
4/12/2014 Talent Development Saturday
Conclusion
• Plenty of option
• Adjust according to your needs
• Consider each advantage and disadvantage
• Cost?
4/12/2014 Talent Development Saturday