TU Darmstadt / ULB / tuprints

A Network-Agnostic and Cheat-Resistant Framework for Multiplayer Online Games

Kabus, Patric :
A Network-Agnostic and Cheat-Resistant Framework for Multiplayer Online Games.
TU Darmstadt
[Ph.D. Thesis], (2009)

[img]
Preview
PDF
Dissertation.pdf
Available under Simple publication rights for ULB.

Download (8Mb) | Preview
Item Type: Ph.D. Thesis
Title: A Network-Agnostic and Cheat-Resistant Framework for Multiplayer Online Games
Language: English
Abstract:

"Video games are kids' stuff" may be still in the minds of many people. But the video games industry is far beyond its infancy and has already grown into a multi-billion dollar business. The NPD Group reports that in 2007 the revenues generated in the U.S. with video game soft- and hardware for consoles and personal computers reached a total of 18.8 billion dollars, a 40 percent increase over 2006. According to PricewaterhouseCoopers, the global sales will even surpass those of the music industry within the next years. With the success of the Internet, online games are a constantly increasing part of these sales. According to DFC Intelligence, the worldwide online game market will grow to over 13 billion dollars in 2011. The probably most successful online game genre today is that of the so-called Massively Multiplayer Online Games (MMOGs). This kind of games provides vast virtual worlds, where thousands of players can meet and interact simultaneously. Most of these worlds are persistent, i.e. they may be online for years. They are hosted on Internet servers which are online 24/7 and players can join and leave the game whenever they like to. The persistence of the game world allows for long-term development of virtual avatars with individual characteristics and possessions. The leader of the MMOG market today is Blizzard Entertainment with the title World of Warcraft. In the beginning of 2008, World of Warcraft had 10 million subscribers (each paying up to 15 dollars per month) and a market share of 62 percent. Developing todays video games is a complex and cost-intensive task and multiplayer online functionality has a significant share in this. In 2008, the first video game hit the 100 million dollar mark for development costs. In addition to that, publishers of online games need to provide the necessary services to allow their customers to play the game over the Internet. Traditionally, most online games and nearly all MMOGs are built relying on the Client/Server architecture. The client software runs on the player's computers and shows only an audio-visual representation of the game world. It accepts commands issued by the player and transmits them to the server. Processing the commands and managing the state of the game is completely done on the server-side. Thus, to be able to handle hundreds or thousands of players simultaneously, large amounts of computing power and network bandwidth are required. Additionally, the service requires a large staff for server maintenance, software updates, billing and customer services. The provision of the World of Warcraft service did cost about 200 million dollars since its launch in November 2004. In addition to the effort of maintaining a multiplayer online game service after its launch there arises another challenge: keeping the game free of cheaters. A cheater may be defined as a user that performs an action that gives an advantage over his opponents that is considered unfair by the game developer. One must be aware that cheating is a major concern in multiplayer games as it seriously affects the game experience of honest players. Especially for subscription-based online games this is fatal, since customers will cancel their subscriptions if the experience doesn't meet their expectations. Game publishers usually do not hesitate to close the accounts of players that they believe to have cheated. For example, in 2006 Blizzard Entertainment announced in their forums that they have banned 59,000 players from World of Warcraft within a single month.

Alternative Abstract:
Alternative AbstractLanguage
"Kinderkram" mag der erste Gedanke vieler sein, wenn es auf das Thema Computer- und Videospiele kommt. Doch das Wachstum der Branche und ihre Verkaufszahlen sprechen da eine ganz andere Sprache: Die weltweiten Umsätze haben längst zweistellige Milliardenbeträge erreicht und von den Wachstumsraten können andere Branchen nur träumen. Alleine in den USA wurden im Jahr 2007 18,8 Milliarden US-Dollar mit Soft- und Hardware für Computer- und Videospiele umgesetzt. Dies bedeutet eine Steigerung um vierzig Prozent gegenüber dem Vorjahr. Analysten sagen voraus, dass dieser Industriezweig in absehbarer Zeit sogar die Umsatzzahlen der Musikindustrie übertreffen wird. Mit der zunehmenden Bedeutung der weltweiten Vernetzung über das Internet steigt auch der Anteil sogenannter "Online-Spiele". Bei dieser Art von Spielen können sich Teilnehmer, die über die ganze Welt verteilt sind, zum gemeinsamen Spielen über das Internet miteinander verbinden. Auch die Zukunftsaussichten solcher Online-Spiele sind glänzend: bis 2011 soll der weltweite Umsatz auf über 13 Milliarden US-Dollar ansteigen. Die kommerziell wohl erfolgreichste Art von Online-Spielen sind die sogenannten "Massively Multiplayer Online Games (MMOGs)". Dieses Genre bietet riesige virtuelle Spielwelten, in denen tausende von Spielern gleichzeitig interagieren können. Dazu erschaffen sie individuelle virtuelle Avatare, die in Anlehnung an reale Personen Eigenschaften und Fähigkeiten entwickeln sowie Besitztümer anhäufen können. Die Spielwelten sind rund um die Uhr verfügbar, ein Spieler kann sie jederzeit mit einem Avatar betreten. Anders als bei anderen Spielgenres gibt es kein vorgegebenes Ziel nach dessen Erreichen das Spiel zuende ist. Stattdessen existieren die virtuellen Welten oft über viele Jahre hinweg und binden somit die Spieler langfristig. Der erfolgreichste Vertreter der MMOGs ist zur Zeit "World of Warcraft", der Anfang 2008 über zehn Millionen Teilnehmer weltweit vorweisen konnte und damit einen Marktanteil von über 62 Prozent innehatte. Die Teilnahme an diesen Spielen wird in der Regel über Abonnements realisiert, für die monatliche Beträge von bis zu 15 US-Dollar erhoben werden. Die Entwicklung von heutigen Computer- und Videospielen ist eine komplexe und kostenintensive Herausforderung. Im Jahr 2008 hat das erste Videospiel die Grenze von 100 Millionen US-Dollar an Entwicklungskosten überschritten. Zusätzlich müssen Anbieter von Online-Spielen die notwendige Infrastruktur bereitstellen und betreiben, damit ein Spiel über das Internet gespielt werden kann. Traditionell werden diese Spiele als Client/Server-Architektur realisiert. Der Client dient dabei nur als eine Art Terminal, das die Spielwelt audiovisuell darstellt und Kommandos des Spielers entgegennimmt um sie an den Server zu schicken. Alle notwendigen Berechnungen um diese Kommandos zu verarbeiten und den Zustand der Spielwelt zu verwalten werden auf dem Server durchgeführt. Um hunderte oder gar tausende von Spielern in einer Spielwelt unterzubringen sind leistungsfähige Rechner und breitbandige Internetverbindungen notwendig. Dazu kommt ein erheblicher Personalaufwand für das Betreiben der Server, das Erstellen von Softwareupdates sowie Kundenservice und Abonnementverwaltung. Beispielsweise liefen für World of Warcraft seit dem Start im November 2004 rund 200 Millionen US-Dollar an Kosten an. Zusätzlich zu dem Aufwand, den Betrieb eines Online-Spiels aufrecht zu erhalten, kommt eine weitere Herausforderung hinzu: das Spiel frei von Betrügern, sogenannten "Cheatern" zu halten. Als Cheater bezeichnet man Spieler, die sich unfaire Vorteile gegenüber anderen Spielern verschaffen. Dies hat erheblichen Einfluss auf das Spielerlebnis ehrlicher Spieler und damit letztendlich auch auf den kommerziellen Erfolg eines Spiels. Ehrliche Spieler werden durch Cheater benachteiligt, was dazu führt, dass sie häufig ihre Abonnements kündigen. Die Betreiber von MMOGs gehen in der Regel hart gegen Cheater vor und zögern nicht diese sofort vom Spiel auszuschließen. Beispielsweise hat Blizzard Entertainment, der Betreiber von World of Warcraft, im Jahr 2006 innerhalb eines einzigen Monats 59.000 Spieler wegen Cheatings des Spiels verwiesen. In dieser Arbeit stellen wir eine Netzwerkarchitektur für Online-Spiele vor, die darauf abzielt, die Kosten für das Bereitstellen der notwendigen Dienste erheblich zu senken. Dies geschieht, indem die benötigte Rechenzeit und Bandbreite nicht mehr vom Server, sondern von den Clients, d.h. den Rechnern der Spieler, bereitgestellt wird. In der Regel verfügen Spieler über sehr leistungsfähige Hardware, die bei Online-Spielen bislang nicht voll ausgelastet wird, da die Spielwelt vollständig auf dem Server verwaltet wird. Weiterhin sind Spieler häufig über breitbandige Verbindungen an das Internet angeschlossen. Unsere Architektur nutzt diese Ressourcen indem sie die Verwaltung der Spielwelt auf die Clients verlagert. Zu diesem Zweck wird die Spielwelt in kleinere Regionen, deren Verwaltung von einem einzelnen Spielerrechner bewältigt werden kann, unterteilt. Ein Spieler, dessen Avatar sich in einer bestimmten Region befindet, verbindet sich mit dem Rechner, der für die Verwaltung dieser Region zuständig ist. Der Spielbetreiber muss nun nur noch Dienste bereitstellen, die verhältnismäßig wenig Ressourcen in Anspruch nehmen. Zum einen wird ein Dienst benötigt, der die Spielregionen den Clients zur Verwaltung zuweist. Dieser Dienst kann gleichzeitig als Zutrittspunkt zum System fungieren, der jeden Spieler zu dem Rechner weiterleitet, der gerade für seine Region zuständig ist. Weiterhin sollte die Abonemmentverwaltung nur von einem vertrauenswürdigen Server durchgeführt werden, da hier sensible Daten gespeichert sind. Die gerade beschriebene Netzwerkarchitekur wird in ein Framework integriert, dass netzwerkspezifischen Programmcode vor dem Spielentwickler verbirgt. Das vermindert die Komplexität des Entwicklungsprozess' erheblich und damit auch die verbundenen Kosten. Gleichzeitig wird die Wiederverwendbarkeit deutlich gesteigert. Die Abstraktion vom Netzwerk wird über das Publish/Subscribe-Paradigma erreicht. Das Framework sorgt dafür, dass Änderungen des Spielstandes über eine Publikation automatisch zu den Rechnern verteilt werden, die an dieser Änderung interessiert sind. Auf diese Weise wird der Zustand des Spiels auf allen Knoten konsistent gehalten, ohne dass der Spielentwickler dazu manuell eingreifen muss. Das Framework abstrahiert aber nicht nur von der oben genannten Netwerkarchitektur. Prinzipiell kann jede Architektur verwendet werden, solange die Kommunikation auf die entsprechenden Subskriptionen und Publikationen abgebildet werden kann. Momentan unterstützen wir zusätlich die traditionelle Client/Server-Architektur und einen reinen Peer-to-Peer-Modus. Zusätzlich zur Netzwerkabstraktion beschleunigt das Framework den Entwicklungsprozess durch einen datenzentrierten Ansatz. Jeder Aspekt eines Spielobjekts - Zustand, Typ und Operationen - können aus einer externen Datei geladen und zur Laufzeit verändert werden. Dadurch wird zeitaufwändiges Neukompilieren bei Änderungen am Spieldesign vermieden. Weiterhin stellen wir eine Lösung vor, die regelwidrige Veränderungen am Spielstand verhindert. Dieses Problem entsteht, wenn der Zustand des Spiels nicht auf vertrauenswürdigen Servern, sondern auf den Clients der Spieler verwaltet wird. Weil diese Clients prinzipiell nicht vertrauenswürdig sind, können wir uns nicht ohne weiteres auf deren Berechnungen verlassen. Anstatt einen einzelnen Client über den Zustand einer Region entscheiden zu lassen, wird der Zustand auf mehreren Clients repliziert. Jede Replik votiert nun für einen bestimmten Zustand des Spiels und die Mehrheit entscheidet. Solange die Mehrzahl der Repliken sich regelkonform verhält, können Manipulationen dadurch verhindert werden. Der Abstimmungsprozess erfordert keine direkte Synchronisation zwischen Repliken. Dadurch wird der Kommunikationsaufwand minimiert und einzelne Repliken können den Entscheidungsprozess nicht blockieren.German
Classification DDC: 000 Allgemeines, Informatik, Informationswissenschaft > 004 Informatik
Divisions: Fachbereich Informatik > Datenbanken und Verteilte Systeme
Date Deposited: 06 Jun 2009 12:14
Last Modified: 07 Dec 2012 11:55
URN: urn:nbn:de:tuda-tuprints-13917
License: Simple publication rights for ULB
Referees: Buchmann, Prof. Alejandro P. and Kemme, Prof. Bettina
Refereed: 15 May 2009
URI: http://tuprints.ulb.tu-darmstadt.de/id/eprint/1391
Export:

Actions (login required)

View Item View Item