Konzeption und prototypische Umsetzung einer Social Gaming-Plattform unter Verwendung einer Multiplayer-Architektur und Ruby on Rails-Programmierparadigmen
- Art: Diplomarbeit
- Autor: Werner Hoier
- Abgabedatum: März 2008
- Umfang: 107 Seiten
- Dateigröße: 2,7 MB
- Note: 1,0
- Institution / Hochschule: Hochschule Ansbach Deutschland
- Bibliografie: ca. 60
- ISBN (eBook): 978-3-8366-1302-6
- ISBN (CD) :978-3-8366-1302-6 CD
- Sprache: Deutsch
- Prämierung:
- Arbeit zitieren: Hoier, Werner März 2008: Konzeption und prototypische Umsetzung einer Social Gaming-Plattform unter Verwendung einer Multiplayer-Architektur und Ruby on Rails-Programmierparadigmen, Hamburg: Diplomica Verlag
- Schlagworte: Social Gaming, Ruby on Rails, Web 2.0, Casual Games, Action Script
In den Warenkorb
48,00 €
Diplomarbeit von Werner Hoier
Einleitung:
Der Markt für Video- und Computerspiele wächst ungebremst. 2006 haben die Hersteller von Spielen, Spielkonsolen und tragbaren Spielgeräten weltweit um die 31 Milliarden Dollar eingenommen. Innerhalb Europas hat sich mittlerweile Deutschland nach Großbritannien zum zweitgrößten Absatzmarkt entwickelt und wird mit dem Geschäftsjahr 2007 voraussichtlich zum ersten Mal die Grenze von zwei Milliarden Euro Umsatz überschreiten.
Obwohl der meiste Erlös der Branche durch Videospiele für Konsolen wie Xbox, Playstation oder den Computer entsteht, haben in jüngster Zeit Online-Spiele einen großen Anteil an dieser rasant fortschreitenden Entwicklung. Die Erlöse aus Lizenzen und Abo-Gebühren für Online-Spiele wachsen [...] deutlich schneller als der Umsatz aus dem Verkauf herkömmlicher, nicht über das Internet spielbarer Titel. Laut einer Studie des Marktforschungsinstituts Nielsen/NetRatings stieg die Anzahl der deutschen Online-Spieler im Speziellen in den vergangenen drei Jahren von 5,2 Millionen um 76 Prozent auf 9,2 Millionen.
Der Media Report Gaming des ProSiebenSat.1-Vermarkters SevenOne Media nennt die Ursachen dieses Trends:
Die zunehmende Durchdringung der deutschen Haushalte mit Breitband-Internetzugängen spielt der Games-Industrie [...] in die Hände. Denn eine steigende Personenzahl greift auf Online-Spiele zu, bildet Netzwerke und spielt gegen- oder miteinander. Für den deutschen Markt sind 2007 deutliche Umsatzsteigerungen von über 50 Prozent auf knapp 400 Millionen Euro zu erwarten. Im Jahr 2010 wird die Branche voraussichtlich bereits 672 Millionen Euro mit Online-Spielen umsetzen.
Dabei haben zwei Arten von Spielen in letzter Zeit wieder vermehrt an Bedeutung gewonnen: Spiele im Multiplayer-Modus und Casual Games. Online-Multiplayer-Spiele nutzen die – auch jedem Gesellschaftsspiel außerhalb des Internets eigene – sozial-interaktive Komponente des Spielens:
Kommunikation, gegenseitiger Vergleich und gemeinsamer Spielspaß stehen im Vordergrund. So genannte Massively Multiplayer Online Games (MMOGs), meist komplizierte Rollen- oder Strategiespiele wie beispielsweise World of Warcraft, lassen dabei mehrere tausend Spieler gleichzeitig zu, die miteinander interagieren und kommunizieren können und zusammen in eine aufwändig gestaltete Spielwelt eintauchen.
Casual Games verzichten im Gegensatz dazu auf diese Immersion in eine virtuelle Welt. Sie sind dadurch gekennzeichnet, dass sie intuitiv zu bedienen sind und sich durch einen schnellen Spielerfolg auszeichnen. Darüber hinaus sind sie vergleichsweise einfach und schnell zu produzieren und lassen sich auf Grund ihrer geringen Größe auch auf leistungsschwächeren PCs spielen.
Um Casual Games im WWW anzubieten, haben sich verschiedene Plattformen und unterschiedliche Geschäftsmodelle entwickelt. Manche davon ermöglichen den Nutzern nach einer Registrierung, wahlweise kostenlos oder um Echtgeld zu spielen und so die eigenen Fähigkeiten bei Spielen, die nicht vorrangig durch Glück gewonnen werden können (skill-based-Games), unter Beweis zu stellen. Durch das wiederholte Zusammentreffen der Spieler und ihr geteiltes Interesse kann sich eine Spielergemeinschaft (im folgenden Community genannt), entwickeln, die auf Grund der kundenbindenden Wirkung vom Betreiber verstärkt und mit technischen Hilfsmitteln aktiv gefördert werden sollte. Die Plattform wird durch die Kombination von Spielen mit einer Community zu einer Social Gaming-Plattform im Sinne von Web 2.0 (siehe Kapitel 2).
Inhaltsverzeichnis:
| Abstract | I | |
| Inhaltsverzeichnis | II | |
| Abbildungsverzeichnis | V | |
| Tabellenverzeichnis | VII | |
| Abkürzungsverzeichnis | VIII | |
| Glossar | X | |
| 1 | Einleitung | 1 |
| 1.1 | Relevanz des Themas | 1 |
| 1.2 | Problemstellung und Abgrenzung | 2 |
| 1.3 | Aufbau der Arbeit | 3 |
| 2 | Ausgangssituation | 5 |
| 2.1 | Das Web 2.0 | 5 |
| 2.2 | Das Begriffsumfeld Social Gaming | 7 |
| 3 | Anforderungen an eine Social Gaming-Plattform | 9 |
| 3.1 | Die Verknüpfung der Komponenten | 9 |
| 3.2 | Multiplayer-Elemente | 9 |
| 3.3 | Community-Features | 10 |
| 4 | Konzeption des Prototypen | 13 |
| 4.1 | Festgelegte Techniken | 13 |
| 4.2 | Architektur der Plattform | 14 |
| 4.3 | Geplante Funktionalitäten | 16 |
| 5 | Das Web-Framework Ruby on Rails | 20 |
| 5.1 | Die Programmiersprache Ruby | 20 |
| 5.2 | Zur Installation benötigte Komponenten | 22 |
| 5.3 | Grundlegende Bestandteile und Eigenschaften | 23 |
| 5.4 | Paradigmen | 26 |
| 5.4.1 | Model View Controller (MVC) | 26 |
| 5.4.2 | Convention over Configuration | 27 |
| 5.4.3 | Don’t repeat yourself (DRY) | 28 |
| 5.5 | Architektur des Frameworks | 29 |
| 5.6 | AJAX | 30 |
| 5.7 | Integrierte Testumgebung | 31 |
| 6 | Multiplayer-Architektur | 33 |
| 6.1 | Adobe Flash | 33 |
| 6.1.1 | Entwicklungsmöglichkeiten | 33 |
| 6.1.2 | Das Adobe Flash CS3 Authoring-Tool | 34 |
| 6.2 | Die Programmiersprache ActionScript | 35 |
| 6.2.1 | ActionScript Version 3.0 | 35 |
| 6.2.2 | Interaktion mit Elementen aus Adobe Flash | 36 |
| 6.3 | Der Socket-Server | 37 |
| 6.3.1 | Wahl des Servers | 37 |
| 6.3.2 | Eigenschaften des Electro-Servers 4.0 | 37 |
| 6.3.2.1 | Erweiterbares Framework | 38 |
| 6.3.2.2 | Sicherheitsaspekte | 40 |
| 6.3.3 | Grundlegende Server-Architektur einer Multiplayer-Anwendung | 41 |
| 6.4 | Multiplayer Game Design Patterns | 42 |
| 6.4.1 | Authoritative Client | 43 |
| 6.4.2 | Authoritative Server | 43 |
| 6.4.3 | Hybride Strukturen | 44 |
| 7 | Prototyping der Community-Module mitRuby on Rails | 46 |
| 7.1 | Vorbereitende Maßnahmen | 46 |
| 7.2 | Grundstruktur und Datenmodell | 46 |
| 7.3 | Prototyping der Community-Module | 49 |
| 7.3.1 | Login und Registrierung | 49 |
| 7.3.2 | Mein Account | 50 |
| 7.3.2.1 | Übersichtsseite | 50 |
| 7.3.2.2 | Nachrichten | 51 |
| 7.3.2.3 | Spielstatistik | 52 |
| 7.3.3 | Profilseite | 53 |
| 7.3.3.1 | Minifeed | 53 |
| 7.3.3.2 | Pinnwand | 55 |
| 7.3.4 | Freundesnetzwerk | 55 |
| 7.3.5 | Community-Startseite | 57 |
| 7.3.5.1 | Blog | 57 |
| 7.3.5.2 | Benutzersuche | 58 |
| 7.3.6 | Spielinformationen | 59 |
| 7.4 | Abschließender Test | 59 |
| 8 | Prototyping der Multiplayer-Elemente | 61 |
| 8.1 | Architektur der Multiplayer-Anwendung | 61 |
| 8.1.1 | Interaktion der Komponenten | 61 |
| 8.1.2 | Ablaufsequenz einer Spielanfrage | 62 |
| 8.2 | Flash-Client | 65 |
| 8.3 | Implementierung eigener Server-Extensions | 67 |
| 8.3.1 | Game Manager-Initialisierung | 69 |
| 8.3.2 | Login Event Handler | 70 |
| 8.3.3 | LobbyLogic | 71 |
| 8.4 | Referenzspiel | 71 |
| 8.4.1 | Spielprinzip und Grundlagen | 71 |
| 8.4.2 | Serverseitiges Spiel-Plugin und Rundenwechsel | 72 |
| 8.4.3 | Grafische Oberfläche | 74 |
| 9 | Der fertige Prototyp | 76 |
| 10 | Fazit | 77 |
| 11 | Ausblick | 79 |
| Literaturverzeichnis | X | |
| Ehrenwörtliche Erklärung | XVI | |
| Anhang A Flowcharts | XVII | |
| Anhang B Screenshots | XIX |
Textprobe:
Kapitel 3.3, Community-Features:
Die Community (dt. Gemeinschaft; in dieser Arbeit ist stets die Variante der Online-Community gemeint) bilden an und für sich die Spieler einer Social Gaming-Plattform, weswegen im Weiteren die Funktionen, mit deren Hilfe eine Community unterstützt werden kann, Community-Features genannt werden.
Diese sollten laut der aufgestellten Arbeitsdefinition die Interaktion und Kommunikation der Spieler untereinander und die Suche nach Mitgliedern mit bestimmten Eigenschaften unterstützen und fördern. Um dies zu gewährleisten, müssen die Nutzer der Plattform sich zuallererst beschreiben und diese Beschreibung anderen präsentieren können. Dafür empfiehlt es sich, gleichbleibende benutzerspezifische Daten (Alter, Geschlecht, Herkunft etc.) mittels einer Datenbank persistent in einem Profil zu speichern. Der Spieler registriert sich einmalig auf der Plattform und wird zukünftig über seinen Benutzernamen identifiziert.
Die International Game Developers Association (IGDA) beschreibt in ihrem Casual Games Whitepaper, dass ein community-based Gaming typischerweise folgende Elemente be-inhaltet: …chat, points based rewards systems, prizing, persistence features, tournaments, ladders, message boards and friend/buddy lists.
Im Folgenden wird auf einige der genannten Elemente, die als Ist-Situation konstatiert werden, genauer eingegangen. Außerdem werden Ergänzungsmöglichkeiten vorgestellt.
Einen Chat stellen die beiden in Kapitel 3.2 erwähnten großen deutschsprachigen Online-Spiele-Plattformen [GAMD2008] und [KING2008] zwar (meist) innerhalb eines Multiplayerspiels zur Verfügung. In der Lobby jedoch gibt es bei [GAMD2008] keine Möglichkeit zur Echtzeit-Kommunikation; bei [KING2008] muss der Nutzer sich erst durch zwei Menüpunkte klicken, um einen kleinen, schwach frequentierten Chat zu erreichen. Dies sollte in einer Social Gaming-Plattform anders gestaltet sein, da die Interaktion zwischen den Nutzern jederzeit gefördert werden und so auch außerhalb der Spiele ein Chat angeboten werden sollte, über den sich die User austauschen und zum Spielen verabreden können.
Für die Kommunikation innerhalb eines Spielraums bietet es sich an, diese zusätzlich zum zeichenbasierten Chat um eine visuelle und/oder auditive Komponente zu erweitern. Auch ist es denkbar, während des Spiels Zuschauer zuzulassen, die nicht aktiv in das Spielgeschehen eingreifen können, wie [SCJO2006] beschreibt:
Social Gaming ist ein Spielablauf, der den Spieler nicht isoliert und unerreichbar in eine Welt versetzt, sondern eine Art zu spielen, bei der Menschen irgendwie dabei sind. Das kann als Zuschauer sein, kann aber [...] auch als echter Mit- oder Gegenspieler sein.
Um soziale Aspekte wie Stolz, Rivalität, Zusammenhalt oder Wettbewerb zu betonen und so ein echtes Social Gaming-Erlebnis zu schaffen, kann außerdem ein Community-Feature angedacht werden, das es erlaubt, Spielsequenzen in begrenzter Länge aufzunehmen und anschließend für andere Nutzer einseh- und kommentierbar zu machen.
Das Belohnungssystem einer Social Gaming-Plattform kann entweder über Spielgeld, andere Arten von virtuellen Einheiten (im Weiteren Coins genannt) oder auch Echtgeld funktionieren. Letzteres setzt in Deutschland voraus, dass die Spiele skill-based sind, das heißt, nicht vorrangig durch Glück gewonnen werden können (siehe §285 STGB). Dabei ist es wichtig, ein faires Spiel garantieren zu können, indem ein Ranking System, eine Spielstärke, eingeführt wird, welche für jedes Spiel unterschiedlich ist. Dieses System unterstützt wiederum den sozialen Vergleich und ermöglicht es dem Betreiber einer Social Gaming-Plattform unter anderem, Bestenlisten zu erstellen und eine Hall of Fame einzurichten.
In den Warenkorb
48,00 €
Link zur Arbeit:
http://www.diplom.de/ean/9783836613026
Arbeit zitieren:
Hoier, Werner März 2008: Konzeption und prototypische Umsetzung einer Social Gaming-Plattform unter Verwendung einer Multiplayer-Architektur und Ruby on Rails-Programmierparadigmen, Hamburg: Diplomica Verlag
Schlagworte:
Social Gaming, Ruby on Rails, Web 2.0, Casual Games, Action Script



