» » » Hinter den Kulissen IV

Hinter den Kulissen IV

eingetragen in: Hinter den Kulissen | 0

Von Michaeal (Content / Game-Design) & Justin (Programmierer)

Es hat sich wieder viel getan hinter den Kulissen Pentaquins – in der Programmierung wurde am Cluster Management und am Gameserver weitergearbeitet und im Content-Team unermüdlich an der virtuellen Spielwelt und insbesondere ihren fünf Monden konzeptioniert.

Diesen Monat konnten wir außerdem wieder ein neues Teammitglied in unserem Content Bereich begrüßen, welches euch im Folgenden über seinen Einstieg im Team informieren wird.

Von den fünf Monden: Meine ersten Schritte im Team

Ich bin Michael und seit ungefähr 5 Mondzyklen im Content-Team. Was genau das Content-Team ist und welche Aufgaben dazu gehören, erfahrt Ihr in unserem älteren Blog-Artikel „Content – Was bedeutet das überhaupt?“

5 Mondzyklen? “Was soll denn das heißen?” – fragt ihr euch unter Umständen. Dazu werde ich gleich kommen – zunächst möchte ich einige Worte zu meinem Einstieg ins Entwicklerteam verlieren:
Durch Zufall bin ich auf Pentaquin gestoßen – die Idee und Aufmachung hat mich auf den ersten (oder war es der zweite?!) Blick überzeugt, sodass meine Bewerbung binnen weniger Stunden beschlossene Sache war.
Nach meiner Aufnahme ins Team auf Probe war ich erstmal ziemlich erschlagen von der Fülle an bereits entwickelten Materialien, Ideen und Konzeptentwürfen. Langsam finde ich mich aber im Team immer besser zurecht. Zu sagen, dass der Einstieg ohne Schwierigkeiten verlief, wäre gelogen. Aber bereits jetzt kann ich sagen: Es hat sich gelohnt! Die Arbeitsatmosphäre und Arbeit an sich (selbstständig und eigenverantwortlich) empfinde ich als sehr angenehm.

Nach kurzer Zeit schon konnte ich mich sinnvoll einbringen und bin jetzt bereits mit meiner ersten Konzeption (genau – den Mondzyklen!) betraut worden.
Der Planet, um den sich die 5 Monde bewegen, wird von eben diesen in hohem Maße beeinflusst werden. In welcher Art und Ausprägung wird in einigen Tagen durch mein Konzept festgelegt.
Ohne zu viel zu verraten kann ich aber bereits sagen: Die Zeit des Neu- sowie Vollmondes wird für kurze Zeit große Auswirkungen haben – nur die mutigsten Helden werden sich in dieser Zeit vor die Mauern der verhältnismäßig sicheren Städte trauen! Die Welt verändert sich in diesen Stunden des Umbruchs nicht unerheblich.
Ein Mondzyklus (Von Neumond zu Vollmond zu Neumond des nächsten Mondes) wird etwa 3 Tage benötigen.

Wie das Konzept im Detail aussieht und wie lang eigentlich ein Tag in Pentaquin dauert? – Diese Fragen werden schon bald beantwortet – Ihr dürft gespannt sein !

2D MMORPG PixelArt Tilemap
Viele neue 2D PixelArt Texturen werten die Spielgrafik auf

Fortschritte bei der Programmierung

Auch bei der Programmierung ging es wieder stetig voran, so haben wir z.B. das Input System unseres Clients gefixt – vorher lief der Spieler manchmal einfach nach dem Loslassen der Taste weiter, weil einige Input Events verloren gingen bzw. nicht in der selben Reihenfolge abgearbeitet wurden. Auch an unseren internen Tools wie dem Pentaquin Editor und dem Tiled Plugin für unsere Maps wurden weiter gearbeitet, Speicherzugriffsfehler behoben und der Windows Support verbessert.

Desweiteren wurden einige Render Probleme behoben, die den Client vorher zum Absturz brachten oder den RAM volllaufen ließen. Der Renderer nutzt mittlerweile einen ExecutorService, also Multi Threading, um ein paralleles Laden / Rendern von Pages zu ermöglichen und somit die Pages schneller und effizienter rendern lassen.
Auch ein neues Dateiformat, das PGA Format – “Pentaquin Grafik Asset” – wurde eingeführt, um uns das einheitliche Laden unserer Grafik Assets zu vereinfachen und eine bessere Kompression als das PNG Dateiformat zu erhalten.

Arbeiten am Gameserver und Cluster Management

Diesen Monat wurde auch viel an unserem Cluster Management, dem Cluster Manager Server gearbeitet, der für die interne Verwaltung des Clusters, globale Berechnungen, z.B. für das Wetter System der Spielwelt zuständig ist und auch das interne Load Balancing der Region Server übernimmt. Desweiteren verteilen wir intern jetzt eindeutige clusterIDs und clusterNodeIDs, um eine skalierbare ID Generierung ohne großen Traffic zu ermöglichen – vielen Dank an dieser Stelle an Christoph Engelbert, der uns da mit einigen Tipps zur Seite stand!

Eine experimentelle Map haben wir testweise vom Client herunterladen bzw. synchronisieren und beim darstellen lassen, um unserem Meilenstein wieder etwas näher zu kommen. Auch der Cassandra Fehler beim Login Server wurde mittlerweile mit Hilfe einiger hilfsbereiter Leute gefixt, womit der Login jetzt richtig funktioniert. Der Proxy Server Auto Build wurde auch eingerichtet, womit der Proxy Server jetzt auch online und erreichbar ist. Zur Erklärung: Wenn wir z.B. etwas am Code vom Proxy Server ändern baut unser CI Server Jenkins diesen automatisch und updatet sowie startet daraufhin zwei Instanzen des Proxy Servers, womit wir später einfacher Rolling Updates umsetzen wollen. Auch ein Fehler mit dem Hazelcast JCache konnte mit Hilfe des freundlichen Hazelcast Teams auf Github.com gefixt werden. Die Load Werte der Proxy Server werden bereits zum Cluster Manager Server geschickt, um so später ein intelligentes Load Balancing möglich zu machen.

Derzeit arbeiten wir weiter am Proxy Server und den Region Servern um die Synchronisation der Spieler miteinander möglich zu machen und endlich unseren Meilenstein abschließen zu können.

Artikel im Forum diskutieren

Bitte hinterlasse eine Antwort