Minecraft FREIZEITPARK ! XXL Park-BAHN und wir entwickeln MODELS

Entwicklung eines Freizeitparks mit XXL-Parkbahn

Es wurde ein Minecraft-Freizeitpark mit einer dynamisch skalierbaren XXL-Parkbahn entwickelt. Mit Hilfe von Command-Blöcken und Item-Displays wurde ein funktionierendes Bahnsystem realisiert. Der Fahrplan mit Haltestellen an vier Punkten wurde programmiert, um einen geregelten Betrieb zu gewährleisten.

Minecraft
00:00:00

Minecraft

Erste Versuche mit Model-Software

00:00:36

Der Stream konzentriert sich darauf, die Erstellung von Minecraft-Modellen mit den Programmen Blockbench und ChatGPT zu erlernen. Nach einem kurzen Start beschäftigt sich der Streamer mit der Bedienung von Blockbench und führt einen ersten Import einer Minecraft-Structure-Datei durch, um eine Konstruktion zu erstellen und zu bearbeiten. Der Prozess gestaltet sich dabei anfangs schwierig, da die Software neu und ungewohnt ist.

Probleme beim Export und der Konvertierung

00:03:42

Nachdem das Modell erfolgreich importiert und bearbeitet wurde, treten bei dem Versuch, es in ein nutzbares Format für Minecraft zu exportieren, zahlreiche Probleme auf. Der Streamer muss verschiedene Export-Einstellungen und Versionen testen, da die generierten JSON-Dateien nicht korrekt geladen werden. Die Ursache dafür ist noch unklar und der Fokus liegt darauf, den Export-Prozess zu verstehen.

Analyse von technischen Fehlern

00:19:29

Der Streamer analysiert intensiv die Fehler in den generierten JSON-Dateien. Er entdeckt, dass bestimmte Werte wie der 'Tintindex' mit dem Boolean 'False' die Ursache für das Scheitern ist. In Minecraft können Boolean-Werte nur als 'true' oder 'false' geschrieben werden, nicht als die Zahl 0. Er versucht, den Fehler zu beheben, indem er die Dateien manuell anpasst und mit Unterstützung von ChatGPT die Syntax überprüfen lässt.

Lösung und erste erfolgreiche Umsetzung

00:40:45

Nachdem der Fehler mit dem 'Tintindex' identifiziert ist, findet der Streamer eine Lösung: er entfernt den fehlerhaften Wert und stellt sicher, dass die Boolean-Werte korrekt geschrieben sind. Mithilfe eines 'Item Display' im Spiel kann das Modell schließlich erfolgreich als Kopf eines Rüstungsständers platziert und angezeigt werden, was den erfolgreichen Abschluss der ersten größeren Model-Aufgabe markiert.

Anwendung auf das Freizeitpark-Projekt

01:10:55

Nachdem das Prinzip der Model-Erklärung verstanden wurde, wendet der Streamer das Wissen direkt auf sein Hauptprojekt, den Freizeitpark, an. Er erstellt eine schematische Datei einer bestehenden Bahn in Minecraft, importiert diese in Blockbench und skaliert sie. Ziel ist es, diese als größeres, frei positionierbares Objekt im Spiel zu verwenden und zeigt die notwendigen Schritte dafür.

Wiederkehrende technische Hürden

01:17:24

Bei der finalen Implementierung des Bahn-Modells im Spiel treten erneut die bekannten technischen Probleme auf. Der Export aus Blockbench erzeugt erneut fehlerhafte JSON-Dateien, in denen der 'Tintindex' mit dem falschen Wert 'False' und der 'shade'-Wert mit der Zahl 0 versehen ist. Dies führt dazu, dass das Modell nicht korrekt gerendert wird und der Streamer die Fehler erneut manuell korrigieren muss.

Endgültige Korrektur und Erfolg

01:20:31

Der Streamer identifiziert die verbleibenden Fehler in der JSON-Datei und ersetzt den 'shade'-Wert '0' durch 'false'. Nach dieser manuellen Korrektur kann das Modell erfolgreich im Spiel als 'Item Display' an der gewünschten Position platziert und korrekt gerendert werden. Der Versuch zeigt, dass die Erstellung komplexer Objekte möglich ist, aber mit erheblichem technischem Aufwand verbunden sein kann.

Entwicklung der dynamischen Parkbahn

01:21:21

Der Stream konzentriert sich auf die technische Entwicklung einer Parkbahn in Minecraft. Es werden Command-Blocks genutzt, um ein Item-Display zu erstellen und dessen Größe dynamisch anzupassen. Nach anfänglichen technischen Schwierigkeiten wird ein System implementiert, mit dem das Bahnmodell jeden Tick teleportiert wird, um eine Bewegung zu simulieren. Dabei wird die Flüssigkeit der Animation durch die Einstellung von Interpolationsdauer optimiert, was zum erfolgreichen Testlauf der Bahn führt. Die Bahn fährt dynamisch und verschwindet, wenn der Spieler sich entfernt.

Testlauf und Planung der Streckenführung

01:26:00

Nachdem der Grundmechanismus der dynamischen Bewegung der Parkbahn erfolgreich getestet wurde, wird die Streckenplanung diskutiert. Die Bahn wird an bestimmten Achsen ausgerichtet und ihre Höhe wird justiert. Der Streamer prüft, ob es möglich ist, die Höhe der Bahn variabel zu gestalten, was sich als schwierig herausstellt. Er skizziert das Ziel, eine feste Strecke durch den Freizeitpark zu bauen, an der die Bahn entlangfährt und Stationen an allen Kardinalpunkten haben wird.

Geschwindigkeitskontrolle und Synchronisation

01:31:32

Ein wichtiger Aspekt ist die Kontrolle über die Geschwindigkeit der Bahn. Es wird eine Maximalgeschwindigkeit von 0.2 als optimal eingestuft. Versuche, die Geschwindigkeit dynamisch über einen Scoreboard-Wert zu steuern, scheitern zunächst an technischen Hürden, wie falscher Wertezuweisung (statt Float wurde Double verwendet). Nach der Lösung dieses Problems wird ein Scoreboard-basiertes Geschwindigkeitssystem etabliert, das später für Beschleunigungs- und Abbremsphasen genutzt werden soll.

Diskussion über das Design und den Bau der Bahn

01:52:27

Der Streamer präsentiert zwei Hauptkonzepte für die Bahn: eine oberirdische Schwebebahn und eine unterirdische U-Bahn. Das Design der Bahn kann beliebig skaliert werden, um Platz für die Passagiere zu schaffen. Die Stationen sollen an vier Kardinalpunkten gebaut werden und jeweils zwei Plattformen für entgegengesetzt fahrende Bahnen bieten. Das Hauptproblem ist der Eingangsbereich, da eine oberirdische Bahn die Aussicht versperren würde. Als Alternative wird eine schwebende Konstruktion oder eine tiefere Lage in manchen Biomen in Erwägung gezogen.

Einigung mit Janus über das Bahnkonzept

02:11:17

Der Kollege Janus wird in den Stream eingeladen, um über das zukünftige Design der Parkbahn zu beraten. Der Streamer präsentiert das Konzept der Schwebebahn, die den Freizeitpark umrundet und an vier Stationen hält. Janus äußert Bedenken wegen des Eingangsbereichs. Nach Diskussionen über verschiedene Möglichkeiten wie eine schwebende Konstruktion oder eine tiefere Anpassung der Bahn wird die Idee verfolgt, die Bahn custom zu bauen und perfekt an die Umgebung anzupassen. Die Entscheidung über das endgültige Design wird vertagt, um weitere Überlegungen anzustellen.

Detailplanung der Stationen und Strecke

02:19:13

Das Gespräch vertieft sich in die konkrete Planung der einzelnen Stationen und der Streckenführung. Jede Station soll an einem der vier Himmelsrichtungensbereiche platziert und an das jeweilige Biome angepasst werden. Die Strecke selbst wird als kreisförmige Route entworfen. Es wird über Materialien wie Kupfer für Stützen gesprochen und die Notwendigkeit von Brücken oder Tunneln, um den Eingangsbereich nicht zu beeinträchtigen, wird diskutiert. Die Bahn soll einen festen Fahrplan mit einem Zeitfenster von ca. 30 Sekunden für eine komplette Runde haben.

Problemanalyse der Hängebahn

02:27:37

Zunächst wird die ursprüngliche Hängebahn kritisch hinterfragt. Das Hauptproblem ist die enorme Höhe, welche die visuelle Ästhetik des Freizeitparks stört und den Bau vieler Stelzen oder Brücken erfordern würde. Die Idee einer oberirdischen Fahrt wird als geiler angesehen, da sie dem Park-Besucher mehr vom Gelände zeigt, ähnlich wie im Phantasialand. Die Diskussion dreht sich um eine Lösung, die sowohl die Optik verbessert als auch den technischen Aufwand minimiert.

Lösungsansätze für die Parkbahn

02:28:34

Es werden verschiedene Lösungsansätze diskutiert, um das Problem der Höhe zu umgehen. Ein Vorschlag ist, die Bahn komplett unterirdisch verlaufen zu lassen, was jedoch als langweilig empfunden wird. Eine andere Option ist, die Stationen zu versetzen oder die Strecke so zu ändern, dass die Höhe an kritischen Punkten reduziert werden kann. Schließlich entscheidet man sich dafür, die gesamte Bahn anzuheben, um das Gelände zu vermeiden, und simuliert eine unterirdische Fahrt.

Entscheidung für eine einzelne Bahn

02:39:08

Nach längerer Debatte über die Anzahl der Bahnen entscheidet man sich für eine einzelne, in eine Richtung fahrende Bahn. Die ursprüngliche Idee von zwei entgegengesetzt fahrenden Bahnen wird verworfen, da dies zu viel Platz und Komplexität für Brücken und Bahnhöfe erfordern würde. Man realisiert, dass in realen Freizeitparks auch oft nur eine Richtung angeboten wird, was das Projekt vereinfacht und die Performance verbessert.

Technische Umsetzung der Bahn

02:45:38

Der Fokus verlagert sich auf die technische Implementierung der neuen Parkbahn. Als zentrales Element wird ein Amor-Stand als Motor im Kreis bewegt, der die Bewegung der Bahn steuert. Die Bahn selbst wird als physisches Item-Modell realisiert, das nur bei Nähe der Spieler sichtbar ist, um Performance-Probleme zu vermeiden. Es wird eine grundlegende Funktionalität aufgebaut, die das Spawnen, Fahren und Despawnen des Zuges ermöglicht.

Feinjustierung der Bahn-Höhe

03:17:21

Nachdem die grundlegende Technik funktioniert, wird die Ausrichtung und Höhe der Bahn optimiert. Es stellt sich heraus, dass das Zug-Modell schief angezeigt wird, was durch einen Command-Block-Befehl korrigiert wird. Anschließend wird die Position des Amor-Stands angepasst, um die Bahn auf die gewünschte Höhe zu bringen. Ein roter Markierungsblock wird als genaues Zentrum der Strecke definiert, um spätere Bauarbeiten wie den Tunnelbau zu erleichtern.

Synchronisation von Modell und Schiene

03:20:16

Die finalen Anpassungen konzentrieren sich darauf, das visuelle Modell der perfekt mit der zugrundeliegenden Bewegungsschiene zu synchronisieren. Es wird ein wichtiger Befehlsblock eingerichtet, der den Mittelpunkt der Bahn markiert und sicherstellt, dass diese sich korrekt ausrichtet. Diese Synchronisation ist entscheidend, damit die Bahn später sauber durch Tunnel oder über das Gelände fahren kann, ohne optisch oder technisch zu clippingen.

Bahnadjustierung und Tunnelplanung

03:24:23

Zunächst wird die Höhe der XXL-Park-Bahn angepasst. Nach mehreren Versuchen und Korrekturen wird die endgültige Höhe auf Block 83 festgelegt. Danach wird der Befehl, der das umliegende Feld für die Bahn definieren soll, eingetippt. Es wird ein quadratisches Feld mit einem Radius von drei Blöcken um die Bahn herum berechnet, um später den Tunnel auszugraben und die Umgebung zu gestalten.

Testfahrt und Backup-Sicherung

03:27:04

Nach der Anpassung der Höhe wird der Warden-Bereich überprüft, um sicherzustellen, dass die zukünftige Testfahrt keine vorhandene Technik beschädigt. Es wird beschlossen, ein Backup der Welt zu erstellen, um eventuelle Schäden während der Tests rückgängig machen zu können. Anschließend wird eine erste Testfahrt der Bahn gestartet, um zu sehen, wie der automatische Ausgrabungsprozess funktioniert und ob die Technik stabil bleibt.

Automatischer Tunnelbau und Material-Ersetzung

03:29:19

Während der Testfahrt gräbt die Bahn den Tunnel im definierten Feld automatisch aus. Nach der erfolgreichen Ausgrabung wird die gesamte Fläche, die nicht Luft ist, durch einen Befehl mit Schwammblöcken gefüllt. Dies dient als temporäre Platzhalter, die später mit WorldEdit durch das finale Material für die Tunnelwände ersetzt werden können, wie zum Beispiel Tuff-Backsteinen.

Gleisbett und Schienenbau

03:53:39

Nach dem Festlegen des Tunnel Designs konzentriert sich der Bau auf das Gleisbett. Die Bahn wird erneut fahren, um den Boden mit Kies zu belegen, der später als Basis für die Schienen dient. Zusätzlich werden mit Command-Blöcken temporäre Eisenblöcke gesetzt, um die zukünftige Position der Schienen vorzugeben. Das finale Design der Schienen muss jedoch von Hand angepasst werden, um eine perfekte Rundfahrt zu gewährleisten.

Zugimplementierung und Technikfeinabstimmung

04:16:47

Die Konzentration verlagert sich nun auf das Implementieren der Züge selbst, die später auf den fertiggestellten Schienen fahren werden. Es werden zwei Züge in die Welt gesetzt. Für die Bewegung der Züge wird eine komplexe Technik geplant, die den Zug auf den Kardinalachsen beschleunigt und bremst. Auch wird überlegt, ein Blickspektrum zur Steuerung der Bremswege zu nutzen, um ein reibungsloses Fahren zu garantieren.

Bau des Karussells und Malaktion

04:26:46

Der Stream beginnt mit dem Bau eines Karussells im Freizeitpark, das wie viele andere Elemente mit Hintergrundmusik betrieben wird. Es werden technische Aspekte der Konstruktion besprochen. Während des Streams wird eine spontane Malaktion durchgeführt, bei der eine Gummiente als Symbol für die kreative Freiheit innerhalb des Spiels gezeichnet wird, was den künstlerischen Prozess im Minecraft-Kontext zeigt.

Entwicklung der zweiaxialen Parkbahn

04:32:18

Das Hauptprojekt ist die Erweiterung der Parkbahn auf zwei Achsen. Zuerst wird die Logik für die zweite Bahn auf der negativen Achse programmiert. Ein separates Itemmodell für die zweite Bahn wird erstellt und ein zugewiesen. Anschließend wird dieses Modell teleportiert und in die richtige Achse positioniert, wodurch eine funktionierende, zweiachsige Parkbahn entsteht, die sich gegenseitig an einer 180-Grad-Position kreuzt.

Konzeption des Fahrplans und der Beschleunigung

04:35:47

Nach der Implementierung der zweiten Bahn wird der Fokus auf die Fahrlogge verlegt. Ein Fahrplan soll den Zug an vier Stationen (bei 0, 90, 180 und 270 Grad) anhalten lassen. Dazu wird der gedankliche Kreis des Zuges in eine lineare Zeitachse umgerechnet. Eine Sequenz soll beschreiben, wie der Zug auf dieser Achse beschleunigt, an den Stationen anhält und wieder anfährt, wobei eine Modulo-Rechnung zur Positionsbestimmung genutzt wird.

Implementierung der dynamischen Geschwindigkeit und Arretierung

04:50:36

Die dynamische Geschwindigkeit des Zuges wird durch die Umsetzung des Fahrplans realisiert. Basierend auf dem Rotationswert und einer Skalierung wird die Geschwindigkeit in verschiedenen Abschnitten der Strecke festgelegt, um eine fließende Beschleunigung und Entschleunigung zu erzeugen. Besonders wichtig ist die präzise Arretierung des Zuges in den Bahnhöfen, was durch eine Zustandsmaschine und das Aktivieren von Command-Blöcken gesteuert wird, um sicherzustellen, dass der Zug exakt anhält.

Integration des globalen Timers und Taktung

05:24:08

Um den Betrieb der Parkbahn zu automatisieren, wird ein globaler Timer eingeführt. Dieser Timer beginnt zu laufen, sobald der Zug an einer Station ankommt, und zählt bis zur nächsten Abfahrt herunter. Die Dauer dieses Timers kann pro Station konfiguriert werden, um den Takt der Bahnen zu steuern. So entsteht ein regelmäßiger und zuverlässiger Fahrplan für die Besucher des Freizeitparks, der den verpassten Zug anzeigt.

Performance-Optimierung und Tagesausblick

05:32:56

Abschließend wird über mögliche Performance-Optimierungen nachgedacht. Eine in Betracht gezogene Idee ist, die Züge nur dann fahren zu lassen, wenn sich Spieler in einem bestimmten Radius um die Bahnstrecke befinden. Dadurch könnte der Serverlast reduziert werden. Der Stream wird mit der Zufriedenheit über den erreichten Stand der Parkbahn beendet und ein Plan für den nächsten Arbeitstag präsentiert, der die weitere Entwicklung des Freizeitpark-Projekts vorsieht.