Dungeon Schematicator
Der Dungeon Schematicator ist eine wesentliche Komponente des Dungeonplugins, die es ermöglicht, einen Dungeon zu konfigurieren und als Datei zu speichern, um später vom Dungeon Generator hundertfach auf der Welt generiert zu werden. Diese Dungeons können seltene Blöcke, Loot oder Gegner enthalten, wobei Anzahl und Stärke bei der Generierung zufällig variiert werden, wobei der Ersteller des Schematics die entsprechenden Wahrscheinlichkeiten festlegen kann.
Einsatzbereich[Bearbeiten | Quelltext bearbeiten]
Um mit dem Dungeonbauen loslegen zu können, ist es wichtig, die Fähigkeiten und Grenzen des Plugins zu kennen. Folgende Objekte kann das Plugin beispielsweise generieren:
- Wüsten- oder Dschungeltempel und ähnliche vom Benutzer gebauten Strukturen
- Grabhügel, die sich gut in die Landschaft einfügen
- Ruinen
- Fossile
- Unterirdische Strukturen, die einen Eingang in einer Felswand haben
- Schiffe
- Unterwassertempel
- Dungeons in Höhlen
- Häuser auf Stelzen in Sumpflandschaften
- Verwunschene Bäume
Diese Dinge können nicht generiert werden:
- Strukturen, die sich zufällig verzweigen, wie z.B. Mineshafts, Strongholds oder NPC-Dörfer
- Zufälliges Gelände
Erstellen eines Dungeons[Bearbeiten | Quelltext bearbeiten]
Blöcke[Bearbeiten | Quelltext bearbeiten]
Zuerst wird die gewünschte Struktur schwebend in der Luft gebaut, um nicht unerwünschte Blöcke im Schematic zu haben. Anschließend wird mit der Holzaxt der Bereich um diese Struktur möglichst genau eingegrenzt und der Befehl /dd create eingegeben, um den Dungeoncreatormodus zu betreten, der mit /dd cancel wieder verlassen werden kann, wobei der Fortschritt verworfen wird. Mit /dd bounds kann die Struktur erneut eingegrenzt werden.
Eine wesentliche Eigenschaft eines Dungeons ist der Mittelpunkt, der mit /dd center gesetzt werden kann. Dieser Punkt gibt das Nullniveau des Dungeons an, was bedeutet, dass die Struktur auf dieser Höhe genau im Boden ist oder in der Wasseroberfläche liegt. Bei Dungeons auf Klippen ragt der Teil nördlich des Mittelpunktes aus der Erde, der südliche Teil ist bedeckt.
Optionale Blöcke[Bearbeiten | Quelltext bearbeiten]
Außerdem können Blöcke als optional gesetzt werden, indem ihnen eine Wahrscheinlichkeit zugewiesen wird, mit der sie generiert werden. Mit einer Wahrscheinlichkeit von 1 wird der Block immer generiert, mit 2 nur etwa jedes zweite Mal, mit n jedes n-te Mal. Es können ganzzahlige Wahrscheinlichkeiten von 1 bis 16 angegeben werden. Mit /dd opt <chance> [blockfilter] wird allen Blöcken in der Holzaxt-Auswahl die angegebene Wahrscheinlichkeit zugewiesen. Zum Beispiel gibt /dd opt 5 allen Blöcken eine Wahrscheinlichkeit von 1/5 und /dd opt 2 cobblestone gibt nur allen Cobblestoneblöcken eine Wahrscheinlichkeit von 1/2. Mit /dd optmode [chance] wird der Optionalblockmodus betreten, in dem den Blöcken manuell durch Rechtsklick die angegebene Wahrscheinlichkeit zugewiesen werden kann. /dd optmode verlässt diesen Modus wieder.
Optionale Blöcke können zum Beispiel in folgenden Situationen angewandt werden:
- Bei Ruinen fehlen schon einige Blöcke in der Wand oder an der Decke
- Wertvolle Blöcke oder Kisten spawnen nur manchmal
- Zufällige Spinnweben
Die Verwendung von optionalen Blöcken ist sehr zu empfehlen, da dadurch mehr Abwechslung in die generierten Dungeons gebracht wird. Eine andere Möglichkeit, die Blöcke zu variieren, sind Übersetzungsregeln, die sich allerdings auf die komplette Struktur und nicht auf einzelne markierte Blöcke auswirken.
Pfeiler[Bearbeiten | Quelltext bearbeiten]
Um zu verhindern, dass ein Teil des Fundaments eines Dungeons in der Luft schwebt, können Pfeilerblöcke angegeben werden, die bei der Generierung nach unten bis zum ersten festen Block gesetzt werden. Mit /dd pillars set [blockfilter] werden alle Blöcke des untersten Layers in der Holzaxt-Auswahl als Pfeilerblöcke registriert. Analog zu /dd opt kann wieder ein Blockfilter angegeben werden, um nur eine bestimmte Art von Blöcken zu berücksichtigen. Pfeilerblöcke können mit /dd pillars unset entfernt werden. Bei oberirdischen Strukturen genügt es meistens, den kompletten unteren Layer zu den Pfeilerblöcke hinzuzufügen. Darüber hinaus können mit /dd pillarmode einzelne Pfeilerblöcke manuell durch Rechtsklick gewählt werden. In folgenden Situationen kann von Pfeilerblöcken besonders Gebrauch gemacht werden:
- Häuser auf Stelzen
Übersetzungsregeln[Bearbeiten | Quelltext bearbeiten]
Es ist fast immer notwendig, einer Struktur einen Block zuzuweisen, der nicht generiert wird, denn sonst könnten beispielsweise bei einem Dschungeltempel umliegende Bäume zerstört werden, was sehr unschön aussieht. Außerdem ist es manchmal nützlich, ein Haus aus Eichenholz zu bauen und dann in unterschiedlichsten Holzvariationen zu generieren, ohne die Vorlage mehrmals bauen zu müssen.
Eine Übersetzungsregel entscheidet abhängig von dem Blocktyp, der sich gerade in der Welt befindet, von dem Blocktyp, der im Schematic steht, welcher Block nun generiert werden soll. Eine Regel hat die Form
[Weltblock] + [Schematicblock] = [Generierter Block]
. Bei [Weltblock] können ein oder mehrere durch Beistrich getrennte Blöcke angegeben, von denen einer an einer Stelle präsent sein muss, damit die Regel angewandt wird. Ähnliches gilt für den Platzhalter [Schematicblock], bei dem der Blocktyp, der im Schematic gespeichert wird, abgefragt wird. Mit einem * werden alle Blöcke zugelassen. Es können sowohl IDs als auch Blocknamen angegeben werden. Optionale Blöcke, die nicht generiert werden, lassen sich mit der Id 255 abfragen. Mit einem : kann zusätzlich nach dem Datenwert gefragt werden. Steht ein ! vor der Aufzählung, sind alle Blöcke zugelassen, die darin nicht erwähnt werden. Bei [Generierter Block] können ein oder mehrere Blöcke angegeben werden, aus denen einer zufällig gewählt und generiert wird, wenn die Regel zutrifft. Es können die Platzhalter w und s verwendet werden, um die Id oder den Datenwert des Blocks aus der Welt oder aus dem Schematic zu behalten. Mehrere Regeln werden durch ; getrennt, wobei die erste Regel angewandt wird, die zutrifft. Wird keine Regel gefunden, wird der Block aus dem Schematic gesetzt. Doch letztendlich zeigen ein paar Beispiele mehr als die Erklärung von vorhin:
Regel | Wirkung |
---|---|
* + 4 = 4,48 |
Ersetzt alle Cobblestoneblöcke im Dungeon zufällig durch Cobblestone und Mossy Cobblestone. |
* + barrier = w |
Alle Blöcke, die im Schematic Barrierblöcke sind, sollen in der Welt unverändert bleiben. |
* + wool,stained_clay,stained_glass = s:11 |
Alle Woll-, Lehm- und Glasblöcke im Schematic sollen blau gefärbt sein. |
* + wood_stairs,stone_stairs,brick_stairs = sandstone_stairs:s |
Alle Holz-, Stein- und Ziegelstufen sollen zu Sandsteinstufen werden, wobei der Datenwert, also die Orientierung, erhalten bleibt. |
!0 + * = w |
Alle Blöcke in der Welt, die nicht Luft sind, bleiben erhalten. Das Schematic kann nur auf Luftblöcken generiert werden. |
* + barrier = w; * + 255 = 0 |
Diese beiden Regeln sind standardmäßig gesetzt. Um den Dungeon muss also eine Schale aus Barriereblöcken gebaut werden. |
* + barrier = 0; * + 0,255 = w |
Barriereblöcke im Schematic werden zu Luft, Luftblöcke werden ignoriert, wozu also der komplette Innenraum mit Barriereblöcken gefüllt werden muss. |
Diese Übersetzungsregeln können mit /dd rules <regeln> gesetzt werden.
TileEntities[Bearbeiten | Quelltext bearbeiten]
TileEntities sind Blöcke, in denen zusätzliche Informationen gespeichert werden. Folgende TileEntities werden derzeit im Dateiformat unterstützt: * Banner * Betten * Kisten * Redstonekisten * Braustände * Dispenser * Dropper * Observer * Öfen * Trichter * Blumentöpfe * Jukeboxen * Schilder * Köpfe * Spawner
Items[Bearbeiten | Quelltext bearbeiten]
Es ist fast immer erwünscht, auch Loot in den Dungeons zu verstecken. Es werden alle Arten von Item-Metadaten unterstützt. Um einem Item eine Spawnwahrscheinlichkeit zuzuweisen, wird dieses in der Hand gehalten und der Befehl /dd item [chance] wird eingegeben. Bei einer Wahrscheinlichkeit von 0 und 1 spawnt es immer, bei einer Wahrscheinlichkeit von n jedes n-te Mal. Der Wertebereich liegt zwischen 0 und 255. Die Menge eines ItemStacks bestimmt, wie viele Items davon in einem Behälter spawnen, wobei die Menge geometrisch verteilt ist. Ein Stack kann dabei zufällig auf mehrere Stacks verteilt werden, wodurch die Anordnung der Items in einem Behälter zufällig ist. Außerdem werden die Verzauberungen auf einem Item randomisiert, wobei die Level im Schematic die maximalen Level sind, mit denen das Item in einem generierten Dungeon spawnen kann. Um einem Behälter nun Items zuzuweisen, werden diese einfach in den Behälter gelegt.
Entities[Bearbeiten | Quelltext bearbeiten]
Es werden alle lebenden Mobs inklusive Rüstungsständern unterstützt. Minecarts oder Gemälde können derzeit nicht gespeichert werden.
Mobs[Bearbeiten | Quelltext bearbeiten]
Es wäre langweilig, wenn ein Dungeon ohne größeren Aufwand ausgeraubt werden könnte. Daher können im Dungeoncreatormodus einem Dungeon auch Mobs zugewiesen werden. Dies geschieht, indem mit einem Spawnei ein Mob gespawnt wird, der keine AI hat und folglich still steht. Der Mob kann mit Linksklick entfernt werden. Durch Rechtsklick mit Rüstung oder Items in der Hand auf den Mob können diese dem Mob angezogen werden. Hierbei gelten wieder die Spawnwahrscheinlichkeiten, die mit /dd item [chance]] gesetzt wurden. Durch Rechtsklick mit einem Barriereblock werden die Items in der Hand gelöscht, was bei Skeletten sehr nützlich sein kann. Außerdem können durch Rechtsklick mit einem Trank Trankeffekte zugewiesen werden, die permanent sind. Außerdem kann mit /dd mob hp [hp] einem Mob eine benutzerdefinierte Anzahl an Leben gegeben werden, wobei ein normaler Spieler 20 HP hat. Ähnlich wie bei Items und optionalen Blöcke haben auch Mobs eine Spawnwahrscheinlichkeit, die mit /dd mob chance [chance] gesetzt werden kann. Darüber hinaus kann mit /dd mob dropchance [chance] die Dropwahrscheinlichkeit der Rüstung verändert werden. Bei einem Wert von 0 droppt die Rüstung nie, was nützlich sein kann, wenn der Gegner sehr starke Rüstung haben soll, die nicht für den Spieler als Belohnung gedacht ist. Ansonsten droppt die Rüstung bei einem Wert von n jedes n-te Mal.
Speichern[Bearbeiten | Quelltext bearbeiten]
Ein Dungeon kann mit /dd save [name] als Datei gespeichert werden.