Klaninseln Entwurf

Wochenrückblick: Klaninseln, Minecraft 1.17 und Java 16

Wochenrückblick13. Juni 2021

Allgemein

In dieser Woche ging es bei uns ungewohnt ruhig zu: Während die Einen einen ihren wohlverdienten Urlaub genossen, war bei Anderen die Prüfungszeit in vollem Gange. Ich selbst ( Aristos) habe erst am Freitag meine Abschlussarbeit eingereicht und konnte JustChunks so nur wenige Stunden meiner Zeit widmen.

Deshalb wurde in der Entwicklung vor allem organisatorische Vorarbeit geleistet: So wurden die meisten offenen Aufgaben nun so genau ausgearbeitet, dass direkt mit der Programmierung begonnen werden kann.

Auch steht mit Minecraft 1.17 ein fantastisches Update ins Haus, welches nicht nur uns Spielern viele Neuerungen bietet. Auch technisch tut sich einiges. Vor allem freuen sich unsere Entwickler auf das Update auf Java 16, das nun in greifbare Nähe rückt. Hierdurch stehen uns neue Funktionen zur Verfügung, die zuvor manchmal hunderte Zeilen Code benötigten. Ein Update würde also viel Zeit und Nerven sparen.

Java 16 Details

Update der Minecraft-Projekte auf Java 16

Da Minecraft mit Version 1.17 die minimal benötigte Java Version auf 16 aktualisiert hat, können wir endlich definitiv alle Vorteile der neuen Versionen nutzen. Da nun sogar schon der erste Spigot-Build für Minecraft 1.17 erschienen ist, Waterfall schon seit einigen Tagen Minecraft 1.17 unterstützt und es nur noch wenige Tage dauern wird, bis auch Paper den ersten Build für Minecraft 1.17 veröffentlichen wird, ist dies ein guter Zeitpunkt um unsere Infrastruktur und Minecraft-Projekte auf Java 16 zu aktualisieren.

Da wir unsere Server (bzw. deren Docker-Base-Images) ohnehin schon seit geraumer Zeit mit Java 16 (Amazon Corretto) betreiben, sind hierdurch zwar keine großen Performance-Vorteile zu erwarten, gleichzeitig so aber auch keine nennenswerten Inkompatibilitäten. Und wir gewinnen hiermit den Vorteil endlich die neuen Features der Java-Sprache verwenden zu können. Hier sind insbesondere die folgenden zu nennen:

Switch Expressions

Neue String Methoden (indent(), transform(), ...)

Text Blocks (raw string literals)

Records

Pattern Matching für instanceof

Noch hängt hier alles daran, dass SonarQube (Ein Tool für die Qualitätssicherung) auch auf Java 16 updatet. Dies soll am 16. Juni, also in der kommenden Woche geschehen. Wir sind also aufs Updaten vorbereitet und können es kaum erwarten, die neuen Möglichkeiten ins Spiel einzubauen!

Inseln & Arenapunkte

Was wir im Titelbild sehen, ist ein erster Entwurf zum Standard-Skin der Klaninseln. Wir sind hier noch in einem zu frühen Stadium, um tiefer ins Detail zu gehen, doch schon jetzt lässt sich gut erkennen, dass wir hier keine langweilige Flatmap anpeilen. Ganz im Gegenteil!

Arenapunkte in Form einer Medaille

Auch an der Grafikfront gab es kleine Fortschritte: Nach mehreren Entwürfen wurde in dieser Woche eine fortgeschrittene Version der Arenapunkte in unser Texturepack eingepflegt. Grafiken wie diese werden liebevoll von Hand gepixelt und sollen sich stets möglichst unauffällig in die Optik von Vanilla Minecraft einfügen.

Ausblick

Mit dem Java 16 und Minecraft 1.17 Update steht uns eine spannende Zeit bevor. Natürlich werden wir die neuen Features so schnell wie möglich einbauen und sie mit unseren bestehenden Systemen verknüpfen. Neue Mobs bedeuten z.B. neue Loot-Köpfe und neue Items bedeuten, dass wir auch die Händler entsprechend anpassen müssen.

Da sich vieles in der Welten-Generierung getan hat, werden wir gerade die Farmwelt nach dem Update kaum wiedererkennen. Hier freuen wir uns vor allem auf den zweiten Teil von 1.17, wo es möglich sein wird, die Höhe von Welten drastisch zu erhöhen.

Schon am nächsten Sonntag verraten wir euch mehr zum Update und können wahrscheinlich eine genauere Prognose dazu abgeben, wann das nächste Update für die Beta bereit steht. Wir geben euch via Discord, Instagram und per Twitter Bescheid wenn es Neuigkeiten gibt. Deshalb lasst gerne ein Abo da, um nichts zu verpassen!