Hunters

icon_1024Hunters
Dokumentation

Konzept
Für meine Semesterarbeit habe ich ein Konzept für ein Spiel entwickelt, das die virtuelle Welt mit unserer physischen Umgebung verbindet. Dieses Spiel soll zeigen, ob die Gamer-Community, oder im besten Fall unsere Gesellschaft, bereit ist Videospiele mit der echten Welt zu vereinen.
Das Spiel leitet sich vom amerikanischen Highschool-Spiel “Assassins” ab, das so ähnlich auch von EA bereits im Online-Modus von “Assassin’s Creed: Brotherhood” aufgegriffen wurde.

Das Grundkonzept von Assassins ist dieses:

  1. Jeder Spieler erhält einen anderen Spieler als Ziel.
  2. Jeder Spieler ist gleichzeitig Jäger und Ziel.
  3. Der Spieler muss sein Ziel ‘ermorden’, indem er bspw. dessen Essen versalzt, ö.ä.
  4. Wer am Ende der Spielzeit die meisten Spieler ‘ermordet’ hat, gewinnt.

Das Grundkonzept von Assassins Creed Online ist folgendes:

  1. Jeder Spieler erhält einen anderen Spieler als Ziel.
  2. Jeder Spieler ist gleichzeitig Jäger und Ziel.
  3. Der Spieler erhält ein Bild seines Ziels und einen Kompass, der in dessen Richtung zeigt.
  4. Spieler sind durch ähnlich aussehende NPCs etwas getarnt.
  5. Der Spieler muss sein Ziel finden und ermorden.
  6. Wer am Ende der Spielzeit die meisten Spieler ermordet hat, gewinnt.

Ich habe mir vorgenommen diese beiden Spielkonzepte in einer Smartphone-App zu verbinden, um so eine AR-Version von Assassins, bzw. eine RL-Version von Assassin’s Creed Online zu erstellen.

Aufbau und Ablauf
Gruppensystem
Hunters wird in Gruppen gespielt. Eine Gruppe besteht aus mindestens drei Spielern. Gruppen haben einen Namen, eine Liste der Spieler in der Gruppe und Geofence-Daten, die das Spielfeld begrenzen. Außerdem können sie öffentlich zugänglich oder privat geschaltet werden.

Eine Gruppe kann so zum Beispiel aus fünf Kindern bestehen, die in der Nachbarschaft spielen, aus 150 Studenten, die das Spielfeld auf den Campus festlegen oder aus 18.000 Spielern, die sich durch die ganze Stadt jagen.

Gruppen haben keine Auszeit. Befindet sich ein User innerhalb des Geofences seiner Gruppe und öffnet die App, bekommt er sofort ein Target zugewiesen, das sich ebenfalls innerhalb des Geofences befindet. Verlässt er das Spielfeld oder beendet die App, wird er automatisch ausgeloggt und alle seine Hunter bekommen ein neues Target zugewiesen.

Möchte ein Spieler in einer anderen Gruppe spielen, bspw. weil er zu Besuch in einer anderen Stadt ist, kann er seine Gruppe verlassen und der neuen Gruppe beitreten. Er wird aus seiner alten Gruppe ausgeloggt, seine Daten bleiben aber gespeichert. In der neuen Gruppe fängt er von vorne an: 0 Punkte, Level 1, keine Perks. So wird verhindert, dass man sich in kleinen Gruppen gegenseitig hochleveln kann um dann in großen Gruppen mit dem höchsten Level einzusteigen.

RPG-Elemente & Perks
Um der App mehr Spiel-Charakter zu verleihen und Spieler am Ball zu halten, ist ein Level- und Perk-System eingebaut. Spieler können innerhalb ihrer Gruppe nicht nur Ränge auf- und absteigen, sondern auch ‘hochleveln’ und so Perks freischalten.

Es gibt 15 Level. Das erreichen jedes neuen Levels erfordert eine bestimmte, pro Level höher werdende, Anzahl von Punkten, die man durch das Taggen seiner Targets sammelt. Dadurch, dass man auch Punkte verlieren kann (durch falsches Taggen oder selbst getaggt werden), kann es unter Umständen lange dauern, bis man einen Level erreicht hat. Allerdings, um den Spielern gegenüber fair zu bleiben und das Spiel nicht zu frustrierend zu gestalten, kann ein Spieler keinen Level sinken, sondern maximal wieder auf 0 Punkte zurückfallen.

Mit jedem neuen Level schaltet der Spieler einen Perk frei, der ihm das Spiel vereinfacht. Er kann sich höchstens einmal pro Tag entscheiden, welche dieser Perks er mit ins Spiel nimmt. Die maximale Anzahl der Perks, die ein Spieler verwenden kann hängt ebenfalls von seinem Level ab. Auf Level 1 kann ein Spieler nur einen Perk verwenden.

Screen Shot 2014-02-12 at 12.32.56

Perks sind unterteilt in aktiv und passiv.
Aktive Perks müssen vom Spieler manuell per Button-Tap aktiviert werden, bleiben eine kurze Zeit aktiv und haben dann einen jeweils individuellen Cooldown-Timer, der herunterzählt bis der User den Perk wieder verwenden kann.
Passive Perks sind solche, die solange aktiv sind, wie der Spieler sie ausgerüstet hat. Das heißt vom Spieler ist keine weitere Interaktion mit dem Perk notwendig als das ausrüsten.

Das Steigen von Leveln, das Freischalten von Perks und die Ranglisten innerhalb der Gruppen sind Faktoren, die die Spieler dazu motivieren sollen am Ball zu bleiben.

Spielablauf
Ein neuer User kann entweder eine eigene Gruppe eröffnen und seine Freunde einladen oder einer Gruppe beitreten. Jeder Spieler erhält einen per Algorithmus* ausgewählten anderen Spieler aus der Gruppe als Ziel. Diesen muss er nun per On-Screen-Kompass finden.

Glaubt der Spieler sein Target gefunden zu haben, aktiviert er die Kamera des Smartphones um das Gesicht seines Ziels zu scannen. Erkennt die App das Gesicht des Targets, erhält der Spieler 10 Punkte und ein neues Ziel. Das alte Target verliert 5 Punkte und erhält ebenfalls ein neues Ziel. Scannt der Spieler die falsche Person, verliert er selbst 5 Punkte und erhält ein neues Target.

*Das ausgewählte Target ist ein zufällig gewählter Spieler aus den drei bestplatzierten Spielern der Rangliste, die gerade online sind und nicht mehr als 4 Hunter haben.

User Interface

login main_screen userinfo leaderboard

UI Aufbau
Das User-Interface hat eine recht lange Entwicklung durchlaufen. Erste Skizzen enthielten eine Karte des Spielfelds (GoogleMaps) und sollten genau anzeigen, wo sich die Spieler befinden. Um einen Such-Faktor in das Spiel zu integrieren, habe ich die Karte mit einem Kompass ersetzt, der die Richtung zum Target anzeigen soll, statt der tatsächlichen (relativ genauen) Position. Die einzigen anderen Elemente des UI sind die Statusleiste, die einen Überblick über die eigene Position in der Rangliste verschafft und die Tableiste, die zu anderen Screens navigieren lässt (Rangliste und User-Info).

IMG_0080IMG_0081

Für das Ergebnis im FaceTagging-Screen wurde ein leuchtendes grün und ein leuchtendes rot verwendet, die dem Spieler, ohne den Text auf dem Bildschirm lesen zu müssen, unmissverständlich anzeigen, ob das Taggen erfolgreich war, oder nicht.IMG_0083 IMG_0084 IMG_0086

Kompass
Der Kompass orientiert sich an der Implementierung des Kompasses in Assassin’s Creed Online, mit Abänderungen im Design um zum Konzept der App zu passen.
Er besteht aus einem dünnen, weißen Ring, der an einem Punkt dicker wird. Diese dickere Stelle stellt die Kompassnadel dar. Je näher der Spieler seinem Target kommt, desto größer wird die Kompassnadel, d.h. desto ungenauer wird die Richtung zum Ziel angezeigt. Befindet sich das Target in unmittelbarer Nähe (< 10m), füllt die Dicke der Nadel den kompletten Ring aus.

compi

Dieses Breiterwerden der Kompassnadel bringt drei Vorteile mit sich:

  1. Entfernung wird visuell dargestellt.
  2. Das Suchen wird anspruchsvoller, je näher der Spieler seinem Ziel kommt.
  3. Ungenauigkeiten von GPS bei kurzer Distanz werden nicht sichtbar.

Frühe Skizzen hatten eine Kompassnadel und andere Elemente um die Entfernung zum Ziel zu visualisieren. Da seit Assassin’s Creed: Brotherhood bereits drei weitere AC Online-Teile erschienen sind, die alle den gleichen Kompass verwenden, wurde letztendlich dieser Kompass verwendet, da er sich, erstens, als äußerst funktionell erwiesen hat und zweitens, um Wiedererkennungswert zu schaffen und ACO-Spielern den Einstieg zu erleichtern.

IMG_0077IMG_0078IMG_0079IMG_0082

Design-Elemente & Farbgebung
Für ein futuristisches und dennoch aufgeräumtes Interface sorgen Sechsecke und Kreise als definierende UI-Elemente. Die Farbgebung für das UI wurde recht schnell festgelegt. In der engeren Auswahl waren Rot-Orange, Grün-Gelb und Blau-Türkis. Das letztere passte am Besten zum futuristischen Hexagon-Muster und wurde deshalb übernommen.

Halbtransparente Elemente, wie z.B. der Ring um das Target Avatar und die Status- und Tab-Leisten, sind in Zeiten von KitKat und iOS 7 im Trend und wurden in das Design integriert um Usern den Eindruck einer zeitgemäßen App zu vermitteln.

Umsetzung
Aufgrund meiner Erfahrung mit der Engine habe ich mich entschieden mit Unity3D in C# zu arbeiten, auch wenn das wohl nicht die beste Entwicklungsumgebung für Apps ist, die keinen virtuellen Raum benötigen. Dank der relativ einfachen Struktur der App, verbraucht sie allerdings trotzdem ausreichend wenig Ressourcen um stabil zu laufen.
Die Userdaten sind in einer SQL-Datenbank auf meinem Server abgespeichert, auf die jede Instanz der App mit passendem Benutzernamen und Passwort zugreifen kann.

Zukunft
Beta-Tests & Befragungen
Es werden noch einige Beta-Tests folgen um herauszufinden, wie Menschen auf das Spielprinzip reagieren und anspringen. Darauf werden Befragungen der Spieler folgen um das Spiel falls nötig zu verbessern und anzupassen.

Pitching
Sollte das Spiel bei Probanden gut ankommen, wird das Spielkonzept bei einigen App Developern gepitcht um ein brauchbares Endprodukt zu erhalten. Meine Programmierkenntnisse reichen leider nicht für eine zuverlässige Implementierung des Face-Tagging und um das komplette Spiel bugfrei und sicher auf die Beine zu stellen (-> Schutz sensibler Daten, wie der Position der Spieler).

Video