Detecting Synchronisation Problems in Networked Lockstep Games

The complexity associated with development of networked video games creates a need for tools for verifying a consistent player experience. Some networked games achieve consistency through the lockstep protocol, which requires identical execution of sent commands for players to stay synchronised. In...

Full description

Bibliographic Details
Main Author: Liljekvist, Hampus
Format: Others
Language:English
Published: KTH, Skolan för datavetenskap och kommunikation (CSC) 2016
Subjects:
AI
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-189593
id ndltd-UPSALLA1-oai-DiVA.org-kth-189593
record_format oai_dc
spelling ndltd-UPSALLA1-oai-DiVA.org-kth-1895932018-01-11T05:11:53ZDetecting Synchronisation Problems in Networked Lockstep GamesengUpptäcka synkroniseringsproblem i nätverksuppkopplade lockstep-spelLiljekvist, HampusKTH, Skolan för datavetenskap och kommunikation (CSC)2016DetectingFindingSynchronisationDesynchronisationOut-of-SyncProblemsIssuesBugsErrorsNetworkLockstep ProtocolMultiplayerVideo GamesFuzzingAIArtificial IntelligenceTestingDebuggingNondeterminismLog File AnalysisDynamic Program AnalysisTest AutomationChecksumsComputer SciencesDatavetenskap (datalogi)The complexity associated with development of networked video games creates a need for tools for verifying a consistent player experience. Some networked games achieve consistency through the lockstep protocol, which requires identical execution of sent commands for players to stay synchronised. In this project a method for testing networked multiplayer lockstep games for synchronisation problems related to nondeterministic behaviour is formulated and evaluated. An integrated fuzzing AI is constructed which tries to cause desynchronisation in the tested game and generate data for analysis using log files. Scripts are used for performing semi-automated test runs and parsing the data. The results show that the test system has potential for finding synchronisation problems if the fuzzing AI is used in conjunction with the regular AI in the tested game, but not for finding the origins of said problems. Komplexiteten förenad med utveckling av nätverksuppkopplade dataspel skapar ett behov av verktyg för att verifiera en konsistent spelarupplevelse. Vissa nätverksspel hålls konsistenta med hjälp av lockstep-protokollet, vilket kräver identisk exekvering av skickade kommandon för att spelarna ska hållas synkroniserade. I detta projekt formuleras och evalueras en metod för att testa om nätverksuppkopplade flerspelarspel lider av synkroniseringsproblem relaterade till ickedeterministiskt beteende. En integrerad fuzzing-AI konstrueras som försöka orsaka desynkronisering i det testade spelet och generera data för analys med hjälp av loggfiler. Skript används för att utföra halvautomatiserade testkörningar och tolka data. Resultaten visar att testsystemet har potential för att hitta synkroniseringsproblem om fuzzing-AI:n används tillsammans med den vanliga AI:n i det testade spelet, men inte för att hitta de bakomliggande orsakerna till dessa problem. Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-189593application/pdfinfo:eu-repo/semantics/openAccess
collection NDLTD
language English
format Others
sources NDLTD
topic Detecting
Finding
Synchronisation
Desynchronisation
Out-of-Sync
Problems
Issues
Bugs
Errors
Network
Lockstep Protocol
Multiplayer
Video Games
Fuzzing
AI
Artificial Intelligence
Testing
Debugging
Nondeterminism
Log File Analysis
Dynamic Program Analysis
Test Automation
Checksums
Computer Sciences
Datavetenskap (datalogi)
spellingShingle Detecting
Finding
Synchronisation
Desynchronisation
Out-of-Sync
Problems
Issues
Bugs
Errors
Network
Lockstep Protocol
Multiplayer
Video Games
Fuzzing
AI
Artificial Intelligence
Testing
Debugging
Nondeterminism
Log File Analysis
Dynamic Program Analysis
Test Automation
Checksums
Computer Sciences
Datavetenskap (datalogi)
Liljekvist, Hampus
Detecting Synchronisation Problems in Networked Lockstep Games
description The complexity associated with development of networked video games creates a need for tools for verifying a consistent player experience. Some networked games achieve consistency through the lockstep protocol, which requires identical execution of sent commands for players to stay synchronised. In this project a method for testing networked multiplayer lockstep games for synchronisation problems related to nondeterministic behaviour is formulated and evaluated. An integrated fuzzing AI is constructed which tries to cause desynchronisation in the tested game and generate data for analysis using log files. Scripts are used for performing semi-automated test runs and parsing the data. The results show that the test system has potential for finding synchronisation problems if the fuzzing AI is used in conjunction with the regular AI in the tested game, but not for finding the origins of said problems. === Komplexiteten förenad med utveckling av nätverksuppkopplade dataspel skapar ett behov av verktyg för att verifiera en konsistent spelarupplevelse. Vissa nätverksspel hålls konsistenta med hjälp av lockstep-protokollet, vilket kräver identisk exekvering av skickade kommandon för att spelarna ska hållas synkroniserade. I detta projekt formuleras och evalueras en metod för att testa om nätverksuppkopplade flerspelarspel lider av synkroniseringsproblem relaterade till ickedeterministiskt beteende. En integrerad fuzzing-AI konstrueras som försöka orsaka desynkronisering i det testade spelet och generera data för analys med hjälp av loggfiler. Skript används för att utföra halvautomatiserade testkörningar och tolka data. Resultaten visar att testsystemet har potential för att hitta synkroniseringsproblem om fuzzing-AI:n används tillsammans med den vanliga AI:n i det testade spelet, men inte för att hitta de bakomliggande orsakerna till dessa problem.
author Liljekvist, Hampus
author_facet Liljekvist, Hampus
author_sort Liljekvist, Hampus
title Detecting Synchronisation Problems in Networked Lockstep Games
title_short Detecting Synchronisation Problems in Networked Lockstep Games
title_full Detecting Synchronisation Problems in Networked Lockstep Games
title_fullStr Detecting Synchronisation Problems in Networked Lockstep Games
title_full_unstemmed Detecting Synchronisation Problems in Networked Lockstep Games
title_sort detecting synchronisation problems in networked lockstep games
publisher KTH, Skolan för datavetenskap och kommunikation (CSC)
publishDate 2016
url http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-189593
work_keys_str_mv AT liljekvisthampus detectingsynchronisationproblemsinnetworkedlockstepgames
AT liljekvisthampus upptackasynkroniseringsprobleminatverksuppkoppladelockstepspel
_version_ 1718604385672495104