Der Ursprung
Schon kurz nachdem Kadcon entstanden ist war zumindest von der Idee her klar wo es denn gerne mal hin gehen sollte.
Damals - und auch jetzt noch - spielen wir auf einer 'vanilla' Minecraft Karte. Cooler wäre aber schon immer gewesen irgendwie auf einer "echten Map" mit mehr Hintergrund/Geschichte zu spielen. Sei es nun eine Fantasiewelt oder eben ein Abbild der Weltkarte.
Das Konzept genauer zu testen und theoretisch auszuarbeiten hat nicht all zu lang gedauert. Nach der Einarbeitung in diverse Tools und der suche nach guten Höhenkarten waren auch schon erste Varianten fertig. Um eine gute Deutschland-Karte zu haben muss man sie riesig machen - und somit auch in mehrere Spielwelten/Karten aufteilen. Weiterhin sind die Höhenunterschiede teilweise enorm. Minecraft kann aber nur 256 Blöcke Höhenunterschied darstellen - jeder Kartenteil wird also etwas angepasst.
Als Bild sieht das ganze dann etwa so aus (Kadcon S1 oben Mitte) :
Zurück zur Realität
Kurz nach der Erstellung vom Konzept war aber auch klar - es fehlt einfach alles an Hintergrundtechnik um dieses Projekt aufzustellen.
- Es gab keine guten Tools/Plugins für Multi-Server Systeme
- Es gab keine guten Plugins um Inventare zu transferieren
- Es gab keine guten Grundstück-Verwaltungssysteme, die mit 100.000+ GS zurecht gekommen sind ohne massive manuelle Arbeit (wie damals auf Kadcon auch).
- Es gab keine guten Tools um automatisch Straßen/Wege zu generieren.
- Diverse gravierende Bugs in Minecraft, welche das Projekt generell nicht erlaubt haben (Chunk Resets, Maps nicht nutzbar, ...)
- ...
Grundstücksprobleme, Kadcon & Chunkli
Im Verlauf vom Projekt "Kadcon" mussten dann diverse der Problem, die auch das Deutschland-Projekt hatte gelöst werden. Neben den genannten Punkten war es z.B. noch sehr wichtig, dass
- Grundstücke automatisiert regeneriert werden können.
- Grundstücke von Spielern ohne Teamhilfe umgezogen werden können.
- Schwere Arbeiten am Server (WorldEdit kopieren, Grundstücke umziehen usw.) keine Lags verursachen.
- Minecraft-Maps als Informations-Tools genutzt werden können.
- ...


Im Nachhinein ist es immer einfach zu sehen "ja natürlich will ich mehrere Grundstücke auf einmal umziehen - ist doch klar". "Grundstück umziehen" war aber nie etwas, was in Minecraft überhaupt vorhanden war oder Spieler danach gefragt hatten - jeder wusste, dass dies nicht geht. Kein Server hat dies den Spielern erlaubt. Nur Admins konnten dies tun - oft mit Wartungsarbeiten und Spielpause. Nach einigen Jahren war dies dann auf Kadcon möglich. Mit sehr viel Aufwand und Nachforschung, Fehlerbehebung in Bukkit & Minecraft war es möglich zur Laufzeit auf Kadcon Grundstücke um zu ziehen. Am hartnäckigsten bleibt in Erinnerung, dass ich über einen Monat damit verbracht habe einen Fehler in Craftbukkit aufzuspüren, der in seltenen Fällen dazu geführt hat, dass ein Grundstück beim Laden/Regenerieren verschwindet.
Neustart Kadcon 2.0:
Mitte/Ende 2015 habe ich dann erneut angefangen an gröberen Änderungen am Kadcon-Konzept zu arbeiten. Kern des Systems ist und bleibt Chunkli. Mein Plan war es zunächst eine Chunkli 2.0-Version zu erstellen, die diverse kleinere Konzeptprobleme der ersten Version (die aktuell auf Kadcon läuft) behebt und damit etwas wie das Deutschland-Projekt erlaubt.
Um das Konzept gut zu testen habe ich probiert direkt zwei unterschiedliche Ideen umzusetzen:
- Das erste Projekt war die oben beschriebene Deutschland-Karte ("BauDeinLand.de")
- Das zweite Projekt war "ProjectM", ein Minecraft-Server, der auf dem Mars spielt.
Wenn man die Programmierung auf zwei unterschiedliche Projekte auslegen muss, hilft dies dabei besseren/abstrakteren Code zu schreiben - aber es ist auch aufwändiger & anstrengender. Ohne an dieser Stelle nun genauer auf die Gründe ein zu gehen war dies ein Projekt, dem ich nicht mit dem nötigen Respekt begegnet bin (starke Unterschätzung des Aufwands/Komplexität). Nach etwa 9 Monaten (Anfang 2016) habe ich das Projekt auf Eis gelegt, da ich u.A. gesundheitliche Probleme durch das Projekt bekommen hatte.
Umbau, Umbau & Umbau:
Minecraft wurde seitens Mojang in den letzten Jahren auch stark technisch verändert.
- Die Speicher-Technik für Grundstücke wurde komplett geändert. Alle Anti-Xray Tools mussten neu geschrieben werden (MC 1.9). Viele Server haben hier einfach auf XRay verzichtet. Auf Kadcon gab es eine eigene Version.
- Die zweite Hand wurde in das Spiel eingebaut.
- Das Combat-System wurde verändert.
- Der Aufbau von Datenpaketen an die Spieler wurde geändert.
- Namen sind nicht mehr eindeutig. UUIDs müssen genutzt werden.
Zur Gründung von Kadcon waren Namen dein einzige Wert, der einen Spieler eindeutig identifiziert hat. Alle Plugins waren demnach auch darauf ausgelegt Spieler über ihren Namen zu identifizieren. Dies sollte sich einige Jahre später ändern. Ein paar Plugins von Namen auf UUIDs (eindeutige IDs) um zu bauen wäre kein Problem - aber über 50 Plugins, die alle den Namen als eindeutigen Wert ansehen - das geht nicht einfach so. Dieses Problem trägt Kadcon bis heute mit sich.
Umbau? Minecraft 1.13:
Auch mit Version 1.13 sollte sich Minecraft dann noch einmal massiv verändern. Die Block-IDs wurden entfernt. Das Lexikon, dass fast jeder Minecraft Spieler im Kopf hat wurde gelöscht.
1 = Stein2 = Grass3 = Dirt4 = Cobble
Wir können auf Kadcon diese Nummern natürlich teilweise erhalten - den Spielern wird daher nicht ganz so stark auf die Füße getreten.
Technisch gibt es diese Zahlen aber auch nicht mehr.

Das bedeutet - genau wie oben für die UUIDs - fast jedes Plugin muss umgeschrieben werden. Und dieses Mal kann man nicht mehr wirklich sagen "meh egal - lass uns einfach Namen fest vergeben dann geht's noch einigermaßen"
Mit Minecraft 1.13 sind wir nun also an einem Punkt an dem gilt:
- Es muss auf das neue Blocksystem umgestellt werden.
- Es muss auf UUIDs statt Namen umgestellt werden.
Und wie sieht nun der Plan für 1.13 aus?
Dazu gibt es dann mehr im zweiten Teil am 03.02.2019.


Kade
blog.kadcon.de
Bitte möglichst alle Fragen im Forum stellen und nicht mir per Privatnachricht.
Bitte möglichst alle Fragen im Forum stellen und nicht mir per Privatnachricht.