PlanetSwitch Planet3DS PlanetVita PSP.de PlanetiPhone Classics Forum

PGN-ID:[?] (Nicht eingeloggt)
Login
Registrieren
PlanetDS PlanetGameboy N-Page.de

-

Sonstiges: Entwicklertagebuch - Der Weg zum eigenen 3DS/Switch-Spiel

Michael Grönert, am 26.12.2016, Seite 15 von 21

Artikel mögen: Weitersagen:



Teil 15: Pairs - Finde Kartenpaare
Heute machen wir eine Ausnahme und implementieren ein neues kleines Spiel, unabhängig von GameMaster, welches wir später in unser Hauptspiel einbauen. Es handelt sich dabei um eine „Pairs“-Variante, bei der man versuchen muss, Kartenpaare zu finden. Hierzulande ist das Spielprinzip hauptsächlich unter dem Namen Memory bekannt, welcher allerdings der deutschen Firma Ravensburger gehört. Der Spieler hat eine Menge von verdeckten Karten vor sich, von denen jede zweimal vorhanden ist. Pro Zug dreht er zwei Karten um und hofft so, ein Paar mit gleichem Motiv zu finden. Handelt es sich um ein Paar, bekommt der Spieler einen Punkt und die Karten können entfernt oder aufgedeckt liegen gelassen werden und der Spieler darf ein weiteres Mal zwei Karten aufdecken. Handelt es sich aber um verschiedene Karten, werden diese wieder umgedreht und der Zug ist vorbei. Nun kann der nächste Spieler zwei Karten wählen - es ist also eine beliebige Anzahl an Spielern denkbar. Wurden alle Paare gefunden, ist das Spiel vorbei und der Spieler mit den meisten Funden hat gewonnen. Die Herausforderung in diesem Spiel ist es also, sich die Karten und ihre Positionen einzuprägen, um sie später wieder zu finden.


Titelbildschirm des Spiels

Motivation für eigenständiges Spiel
Da GameMaster ein enorm umfangreiches Projekt ist, welches noch sehr viel Zeit in Anspruch nehmen wird, wäre es auch mal schön, zwischenzeitlich etwas schnell Fertigstellbares zu produzieren und vorzuzeigen. Doch ich hatte noch zwei weitere Gründe: Zum einen wollte ich einem Freund anhand eines einfachen Beispiels eine kleine Einführung in Unity geben und zum anderen hat sich dieses Spiel zusammen mit den Bildern auf den Karten perfekt als Geschenk angeboten. Für diese eigenständige Version nutze ich eigene Bilder aus meinem letzten Urlaub in Indonesien und Singapur über Weihnachten 2017 und Silvester 2018. Für die GameMaster-Version dieses Spiels dürften später aber nur andere Motive in Frage kommen, da diese Fotos selbst im stark komprimierten Zustand sehr viel Platz einnehmen und nicht ganz in den Kontext passen würden.


Ein paar gefundene Paare

Die Implementierung
Im Mittelpunkt stehen die Karten. Diese haben zwei unterschiedliche Seiten und können durch Anklicken bzw. Antippen umgedreht werden. Hierfür bietet Unity zweidimensionale Flächen wie „Plains“ oder „Quads“ an, welche mit einer Textur belegt werden können. Ein Anklicken löst eine Animation aus, welche die Karte in einem bestimmten Zeitraum um 180° dreht, anstatt sie etwa schlagartig umzudrehen. Zusätzlich brauchen wir ein Controller-Objekt, welches alles verwaltet. Es kümmert sich darum, dass immer nur zwei Karten umgedreht werden können, für gefundene Paare Punkte vergeben und andere Karten wieder zurück gedreht werden. Der Controller muss natürlich auch weit mehr verwalten. Er erstellt initial die Kartenpaare und legt sie gemischt in einem quadratischen Raster aus. Außerdem visualisiert er den Spielerwechsel und zeigt die Punkte an. Ein kleines Extra-Feature ist das Sammeln von Karten. Insgesamt gibt es ungefähr 150 verschiedene Karten, die per Zufall ausgewählt werden. Jede Karte, die einmal als Paar gefunden wurde, wird in einer Liste unter dem Menüpunkt „Collection“ aufgeführt, zusammen mit der Anzahl der bisher gefundenen und zu findenden Karten. Hier können die Bilder in Ruhe betrachtet werden. Auch nach einem Fund eines Paares, wird das Bild der Karten rangezoomt, bis der Benutzer dies beendet.


Die Collection mit allen gefundenen Bildern

Die Bilder
Auch die Bilder benötigen Vorbereitung für das Spiel. Zunächst sollten sie quadratisch sein, aber auch die Größe und Qualität spielen eine wichtige Rolle. Tatsächlich habe ich anfangs einiges an Zeit investiert um bewegte Bilder in Form von gifs oder Videos zu erproben. Hierbei bin ich aber auf etliche Probleme gestoßen, die ich hier nicht genauer im Detail erläutern möchte, vor allem wenn man möchte, dass dies auf sämtlichen Plattformen funktioniert. Daher habe ich beschlossen, mich auf normale Fotos zu beschränken. Diese Fotos habe ich alle manuell zugeschnitten, da ich sicherstellen wollte, dass der jeweilige Ausschnitt auch optimal gewählt ist. Da ich zu Beginn nicht wusste, wie viele Bilder es insgesamt werden würden und wie viel Speicherplatz diese komprimiert belegen würden, habe ich beschlossen jedes Foto gleich in zwei Auflösungen (256x256 und 512x512) abzulegen, anstatt die Arbeit notfalls zweimal machen zu müssen. Ich hatte es sogar in Betracht gezogen, zwei verschiedene Varianten mit diesen unterschiedlichen Auflösungen zu bauen, mich aber letztendlich auf die 512x512 Pixel festgelegt.

Mit all den Bildern stand ich aber vor einem neuen Problem: Das Spiel würde sehr lange laden, um die Texturen vorzubereiten. Um diesem Problem entgegen zu wirken, lagern die Fotos in einem separaten Ressourcen-Ordner und werden erst zur Laufzeit nebenläufig geladen. Mit anderen Worten kann das Spiel bereits begonnen werden, bevor die Bilder überhaupt bereit sind, angezeigt zu werden. Dementsprechend haben die Karten und die Elemente in der Collection nur eine weiße Fläche, bis das jeweilige Foto fertig geladen wurde. In der Praxis geht dies allerdings so schnell, dass die Texturen bereits fertig sind, bevor die Karten ausgelegt oder die Collection geöffnet wurde, doch auf die gesamte Ladezeit des Spiels wirkt sich dies stark positiv aus.


Rangezoomtes Bild aus Singapur

Mehrspieler
Wie bereits erwähnt, kann man „Pairs“ mit theoretisch beliebig vielen Personen spielen. Für diese Version biete ich neben dem Singleplayer auch einen Zwei-Spieler-Modus an. Dabei kann man zwischen drei KI-Stufen und einem lokalen menschlichen Mitspieler wählen. Für die GameMaster-Version habe ich allerding vier Spieler geplant, entsprechend dem Vorreiter Minispiel „Gong“. Die KIs funktionieren relativ simpel. Die schwächste von ihnen wählt stets zwei absolut zufällig gewählte Karten aus. Die beiden anderen merken sich, welche Karten bereits aufgedeckt wurden und versuchen gezielt, Paare aufzudecken. Kommt eine dieser KIs an die Reihe, checkt sie zunächst ob sich bereits ein Paar unter den bisher sichtbar gewesenen befindet und deckt diese auf. Wenn nicht, wählen sie eine zufällige Karte unter denen, die noch nicht sichtbar waren und decken sie auf. War deren Partner-Karte schon zu sehen, wird diese genommen, ansonsten eine weitere zufällige noch nicht sichtbar gewesene. Dies bedeutet, dass sie nach menschlichem Ermessen perfekt spielen, aber auch nicht über Informationen verfügen, die dem Menschen vorbehalten wurden. Um nun eine der beiden KIs abzuschwächen, lasse ich sie mit einer gewissen Wahrscheinlichkeit eine falsche Karte wählen, selbst wenn sie die richtige bereits kennt - etwa so wie ein Mensch, der die genaue Position einer der bereits sichtbar gewesenen Karten vergessen hat.

Das Ergebnis könnt ihr nun selbst betrachten wenn ihr wollt. Das Spiel steht kostenlos und werbefrei zur Verfügung: Für iOS im App Store. Und für Android im Google Play Store und auf Amazon. Bis zum nächsten Mal!


Ihr möchtet die Auszüge aus dem Leben eines Entwicklers lieber in englischer Sprache lesen? Unter diesem Link findet ihr die englische Version dieses Tagebucheintrags!


Gehe zu Seite:
Vorherige Seite | Nächste Seite

ANZEIGE:
Kommentare verstecken

- Kommentare


- Noch keine Kommentare vorhanden -

Um Kommentare zu schreiben, bitte oben einloggen oder jetzt Registrieren!