Download presentation
Presentation is loading. Please wait.
Published byDeanna Howitt Modified over 10 years ago
1
Comp763: Modern Computer Games Cheat-Proof Playout for Centralized and Distributed Online Games Nathaniel E. BaughmanBrian Neil Levine Irwin Chiu Hau Computer Science McGill University Winter 2004
2
Comp763: Modern Computer Games Overview Introduction Assumptions and Terminology Fair Playout Cheat-Proof Game Interaction Performance Analysis Supporting Cell-Based Architecture Conclusion
3
Comp763: Modern Computer Games Introduction Cheating in multiplayer online games RTS FPS Anti-cheat techniques Cheat detection techniques Warcraft 3 UT 2003 source: blizzard.com source: unrealtournament.com
4
Comp763: Modern Computer Games Overview Introduction Assumptions and Terminology Fair Playout Cheat-Proof Game Interaction Performance Analysis Supporting Cell-Based Architecture Conclusion
5
Comp763: Modern Computer Games Assumptions We grant cheaters the ability to read, insert, modify block messages involved with the game protocol We assume that Application Software is readable by user and performs its functions as originally intended
6
Comp763: Modern Computer Games Assumptions Beyond the scope of this paper Protecting against attacks on existing transport-layer and network-layer protocols denial-of-service attacks –flooding a network –disrupt service, connection –cause a login to be refused Client modifications However, the specific cheat-proof techniques are tolerant against these modifications
7
Comp763: Modern Computer Games Terminology A set of information that describes the game at any time is called game state, which is composed of entity An entity may consist of several in-game objects and is controlled by a player A player is a person playing a game as well as the objects that person controls in the game
8
Comp763: Modern Computer Games Game state partitioning Control
9
Comp763: Modern Computer Games Terminology Players make decisions they decide on events that change their own states When an interaction occurs, multiple players’ decisions must be resolved by computing the resulting state
10
Comp763: Modern Computer Games Terminology frame progression of in-game time The simulator computes game state for each frame Players take exactly one turn during each frame
11
Comp763: Modern Computer Games Architectures Multiplayer games are coordinated through either Centralized client-server or decentralized distributed architectures The architectures differ by where Game state is maintained Which involves Effecting changes and coordinating interactions
12
Comp763: Modern Computer Games Centralized-Control Client-Server Server maintains all the entity states Server computes game states based on clients’ inputs Clients request for the server to change the client’s entity state
13
Comp763: Modern Computer Games Decentralized-Control Client-Server The client informs the server of update decisions that have affected its entity state The server resolves any interactions between game objects and coordinate global game state
14
Comp763: Modern Computer Games Distributed Serverless or Peer-to-Peer Clients are referred as hosts Each host Maintains its own entity state Informs other hosts of decisions Resolves any interactions without the use of any centralized authority
15
Comp763: Modern Computer Games Some Facts Distributed games are much more prone to cheating Cheats are possible within a client-server game Many games are designed around the client- server architecture which provides some implicit security along with centralized control of game state.
16
Comp763: Modern Computer Games Overview Introduction Assumptions and Terminology Fair Playout Cheat-Proof Game Interaction Performance Analysis Supporting Cell-Based Architecture Conclusion
17
Comp763: Modern Computer Games Fair Playout A correct playout of real-time interaction means that the game is identically perceived by every player A Fair games is one where players see events occurs as would be expected by games rules and taken actions A player cheats by causing updates that defy rules of the games or gain an unfair advantage
18
Comp763: Modern Computer Games Irresolvable Interactions Dead Reckoning Can be used in client-server or distributed environments Problems centralized case distributed case
19
Comp763: Modern Computer Games Centralized Case Interactions are resolved by the server uniformly, but unfairly Server has authority over game states to resolve interactions, so all clients are updated with the same resulting view of the world
20
Comp763: Modern Computer Games Centralized Case Resolving an interaction with Dead Reckoning The server’s decision may differ from the expectation of the dead-reckoned player The dead-reckoned player may view the server decisions as unfair Player’s true actions were not used by the server Due to unreliability and latency of the Internet unfairness is not tolerated by game players
21
Comp763: Modern Computer Games Distributed Case Unfair decisions becomes damaging Interactions based on dead-reckon state may damage the global state The result of resolving an interaction based on dead- reckoned state = incorrectness of overall game state
22
Comp763: Modern Computer Games Irresolvable Interactions An irresolvable interaction problem results when Dead-Reckoning is used Interactions are either determined unfairly by a server potentially incorrectly by a distributed host
23
Comp763: Modern Computer Games Suppress-Correct cheat Dead-Reckoning One security flaw under bucket synchronization is what we term the suppress-correct cheat
24
Comp763: Modern Computer Games Cheating Under Dead Reckoning Under some Dead Reckoning policy n buckets are allowed to be dead reckoned before the player is considered to have lost connection With such policy, a cheating player 1.can purposely drop n – 1 update packets 2.uses knowledge of the current game state 3.constructs an update packet for the nth bucket that provides some advantage
25
Comp763: Modern Computer Games Example A sluggish player S chase a more agile player A 1.S begins pursuit, then drop n – 1 updates 2.A dead reckons S’s missing state, but cannot confirm where S really is 3.For the nth bucket, S sends a constructed update that places S behind A
26
Comp763: Modern Computer Games Example (continued) As long as S sends plausible updates every nth bucket A cannot confirm that S is cheating S simply claims to be on a congested and lossy network This cheat applies both to client-server architecture distributed architecture
27
Comp763: Modern Computer Games Lookahead cheat Most RTS (using stop-and-wait protocol) Requires interaction resolution at each discrete time unit of time, or turn, in game Before time advances 1.players must stop and wait for others 2.players make state change decisions 3.players send that decision to each other player Another cheating opportunity called lookahead cheat A cheating player can simply wait until all other players have sent their decision
28
Comp763: Modern Computer Games Example Player B take a lethal shot towards A This decision is sent to server Normal human reaction is not quick enough to defend against this Player A ‘s cheating agent will automatically raise shields in time UT 2003 source: unrealtournament.com
29
Comp763: Modern Computer Games Overview Introduction Assumptions and Terminology Fair Playout Cheat-Proof Game Interaction Performance Analysis Supporting Cell-Based Architecture Conclusion
30
Comp763: Modern Computer Games Cheat-Proof Game Interaction The paper proposes a protocol that prevents lookahead cheats suppress-correct cheats by disallowing Dead-Reckoning Called Lockstep Protocol stop-and-wait type protocol
31
Comp763: Modern Computer Games Lockstep Protocol Each player 1.makes a decision but do no announce it 2.one-way hashes the decision 3.sends the encrypted decision Once all encrypted decisions have been received 1.Players reveal their decision in plain text 2.Hosts can easily verify the reveal decision by comparing hashes
32
Comp763: Modern Computer Games Lockstep Protocol Trade-Off Performance Penalty Minor optimization last player can simply reveal its decision immediately Correct playout is preserved All players will run at the speed of slowest player
33
Comp763: Modern Computer Games Asynchronous Synchronization AS is a synchronization technique that relaxes the requirements of lockstep synchronization by decentralizing the game clock guarantees fair playout and correctness provides better performance Each host advances in time asynchronously from other hosts enters in lockstep-style mode when interaction is required
34
Comp763: Modern Computer Games Sphere of Influence Each player’s host keeps track of each other player’s advancement in time and space within a Sphere Of Influence ( SOI ) base: maximum area that may influence or be influenced on any one turn delta: the change in influence area that may occur in subsequent turns
35
Comp763: Modern Computer Games Asynchronous Synchronization Protocol For an each game turn t 1.A player determines a decision 2.A player sends the hashed decision to all players 3.Commitments that are one frame past the last revealed frame are accepted 4.Before revealing its commitment, the local player determines which remote players it is waiting for within a SOI 5.If no other remote host are in wait state, the local host reveals its state for this turn t
36
Comp763: Modern Computer Games Secret Possessions Objects that are not revealed immediately to other players weapon, key, … ex: think about battleship Solution Define a promise as a place to store these secret possessions Promises can be encrypted or hashed NWN source: Bioware
37
Comp763: Modern Computer Games Cheat Detection Logger Service: a trusted, centralized entity that records promised information to be verified later Observer Service: a trusted, centralized entity that receives secret information via secure channels verifies it real-time Promise Service: a trusted, centralized entity that receives secret and non-secret information
38
Comp763: Modern Computer Games Overview Introduction Assumptions and Terminology Fair Playout Cheat-Proof Game Interaction Performance Analysis Supporting Cell-Based Architecture Conclusion
39
Comp763: Modern Computer Games Performance Analysis Xpilot Simulation players control ships in 2-D space Test Run for about 4000 frames of gameplay Traces of 10, 18, 30 and 37 players Asynchronous Synchronization protocol Lockstep protocol
40
Comp763: Modern Computer Games Performance Analysis One unit of simulator time = 10 ms Lower cap players could not take turns more often than every 4 units of the simulation Upper cap players could not advance in turns more than once every 10 units of simulator time Simulate a game running at 10 fps
41
Comp763: Modern Computer Games Performance Analysis Distribution of milliseconds stalled between frames due to lockstep interaction.
42
Comp763: Modern Computer Games Performance Analysis Distribution of milliseconds stalled between frames due to lockstep interaction.
43
Comp763: Modern Computer Games Performance Analysis The simulation shows that the performance of AS and lockstep protocols degrades slowly With the AS protocol at least 50% of the turns can be taken without delay due to player coordination
44
Comp763: Modern Computer Games Overview Introduction Assumptions and Terminology Fair Playout Cheat-Proof Game Interaction Performance Analysis Supporting Cell-Based Architecture Conclusion
45
Comp763: Modern Computer Games Supporting Cell-Based Architecture In order for MMO games to scale amount of communications processing per client must remain low Solutions Separate multicast addresses or separate servers based on geometric position Virtual Playing Field may be broken into cells to increase scalability
46
Comp763: Modern Computer Games Supporting Cell-Based Architecture AS couples together nicely with cell-based technique while maintaining cheat prevention and cheat detection A player must perform AS for the players inside the same cell
47
Comp763: Modern Computer Games Overview Introduction Assumptions and Terminology Fair Playout Cheat-Proof Game Interaction Performance Analysis Supporting Cell-Based Architecture Conclusion
48
Comp763: Modern Computer Games Conclusion Cheat-proof protocols Lockstep Provides cheat proof and fair playout Asynchronous Synchronization Improves performance Can be used in combination with cell-based architecture
49
Comp763: Modern Computer Games Questions?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.