Zum Hauptinhalt springen

BetterStructures

BetterStructures ist ein generatorunabhängiger Topologie-Scanner, der optimale Platzierungsorte für benutzerdefinierte Strukturen basierend auf Geometrie und Blockeigenschaften findet. Das Plugin fügt Schematics in deine Welt ein und verwendet Geländeanpassungsmethoden, die das natürliche Aussehen deiner Welt bewahren.

Das Plugin nutzt fortschrittliches Scannen zur Messung der Geländekompatibilität und passt Strukturen nahtlos an bestehende Welten an. Es unterstützt Sockel, spezielle Blöcke und intelligentes Einfügen, das Strukturen in jeder Umgebung natürlich aussehen lässt.

Erste Schritte

Voraussetzungen

Erforderlich:

  • WorldEdit oder FastAsyncWorldEdit (eines muss installiert sein)
  • Minecraft 1.14+ (Paper empfohlen)

Optional:

  • EliteMobs (für Boss-Begegnungen in Strukturen)
  • WorldGuard (für Regionsschutz)
  • Benutzerdefinierte Weltgeneratoren (Terralith, Iris, Terra, TerraformGenerator)

Installation

  1. Installiere WorldEdit oder FastAsyncWorldEdit auf deinem Server
  2. Lade BetterStructures herunter und platziere es in deinem Plugins-Ordner
  3. Lade Strukturpakete herunter:
  4. Extrahiere die heruntergeladenen Strukturdateien nach ~/plugins/BetterStructures/imports
  5. Starte deinen Server oder führe /betterstructures reload aus

Das Plugin verarbeitet importierte Strukturen automatisch und macht sie für die Generierung verfügbar.

Schnellstart

Nach der Installation spawnen Strukturen automatisch in deiner Welt basierend auf ihren konfigurierten Einstellungen. Um die Strukturplatzierung zu testen oder das Plugin zu verwalten, verwende die unten aufgeführten Befehle.

Befehle

Alle Befehle verwenden den Basisbefehle /betterstructures oder das Alias /bs.

BefehlBeschreibungBerechtigung
/betterstructuresHauptbefehlKeine
/betterstructures reloadAlle Konfigurationen neu ladenbetterstructures.*
/betterstructures place <name> <type>Strukturplatzierung an deinem Standort testenbetterstructures.*
/betterstructures lootifyBenutzerdefinierte Items zu Loot-Tabellen hinzufügenbetterstructures.*
/betterstructures setupSetup-Prozess ausführenbetterstructures.setup
/betterstructures initializeDas Plugin initialisierenbetterstructures.initialize
/betterstructures generatemodulesModulare Dungeons generieren (normale Geschwindigkeit)betterstructures.generatemodules
/betterstructures generatemodules slowlyModulare Dungeons langsam generieren (geringe Serverauslastung)betterstructures.generatemodules.slowly
/betterstructures generatemodules instantlyModulare Dungeons sofort generieren (hohe Serverauslastung)betterstructures.generatemodules.instantly
/betterstructures teleportZu Strukturstandorten teleportierenbetterstructures.*
/betterstructures versionPlugin-Version anzeigenKeine
/betterstructures silentStummen Modus umschaltenbetterstructures.*

Berechtigungen

Alle Berechtigungen sind standardmäßig auf op (nur Server-Operatoren) gesetzt.

BerechtigungBeschreibungStandard
betterstructures.setupZugriff auf Setup-Befehlop
betterstructures.initializeZugriff auf Initialisierungsbefehlop
betterstructures.generatemodulesZugriff auf Standard-Modulgenierungop
betterstructures.generatemodules.slowlyZugriff auf langsame Modulgenierungop
betterstructures.generatemodules.instantlyZugriff auf sofortige Modulgenierungop

Strukturtypen

BetterStructures unterstützt sechs Strukturtypen, jeder mit unterschiedlichen Platzierungsregeln und Spawn-Orten.

SURFACE

Spawnt Strukturen auf der Bodenoberfläche und passt sich der Geländehöhe an. Das Plugin scannt nach flachen oder kompatiblen Bereichen und platziert Strukturen mit automatischer Geländevermischung.

Standard-Abstand: 31 Blöcke zwischen Strukturen

SKY

Platziert Strukturen schwebend in der Luft in großer Höhe.

Höhenbereich:

  • Oberwelt: 80-120 Blöcke
  • Ende: 80-120 Blöcke

Standard-Abstand: 95 Blöcke zwischen Strukturen

UNDERGROUND_SHALLOW

Generiert Strukturen in flachen unterirdischen Bereichen nahe der Oberfläche.

Y-Level-Bereich (Oberwelt): 0 bis 60

Standard-Abstand: 22 Blöcke zwischen Strukturen

UNDERGROUND_DEEP

Erstellt Strukturen in tiefen unterirdischen Standorten, einschließlich tiefer Höhlen und Kavernen.

Y-Level-Bereich (Oberwelt): -64 bis 0

Standard-Abstand: 22 Blöcke zwischen Strukturen

LIQUID_SURFACE

Spawnt Strukturen auf Wasser- oder Lavaoberflächen, perfekt für Ozeanmonumente oder schwimmende Basen.

Standard-Abstand: 65 Blöcke zwischen Strukturen

DUNGEON

Generiert modulare prozedurale Dungeons mithilfe des Wave Function Collapse-Algorithmus. Diese Strukturen verbinden mehrere Module, um komplexe unterirdische Systeme zu erstellen.

Standard-Abstand: 80 Blöcke zwischen Strukturen

Konfiguration

Hauptkonfiguration (config.yml)

Die Hauptkonfigurationsdatei enthält globale Einstellungen, die für alle Strukturen gelten.

Y-Level-Bereiche

Steuere die Höhengrenzen für die Strukturgenerierung in verschiedenen Dimensionen.

# Oberwelt/Benutzerdefinierte Welten
lowestYNormalCustom: -60
highestYNormalCustom: 320

# Nether
lowestYNether: 4
highestYNether: 120

# Ende
lowestYEnd: 0
highestYEnd: 320

Luftbau-Höhen

Lege die Höhenbereiche für himmelsbasierte Strukturen fest.

# Oberwelt/Benutzerdefinierte Welten
normalCustomAirBuildingMinAltitude: 80
normalCustomAirBuildingMaxAltitude: 120

# Ende
endAirBuildMinAltitude: 80
endAirBuildMaxAltitude: 120

Strukturabstand

Definiere Mindestabstände zwischen Strukturen jedes Typs.

distanceSurface: 31        # Oberflächenstrukturen
distanceShallow: 22 # Flach unterirdisch
distanceDeep: 22 # Tief unterirdisch
distanceSky: 95 # Himmelsstrukturen
distanceLiquid: 65 # Flüssigkeitsoberfläche
distanceDungeon: 80 # Dungeons

Abstandsrandomisierung

Füge zufällige Versätze zur Strukturplatzierung hinzu, um Rastermuster zu vermeiden.

maxOffsetSurface: 5        # ±5 Blöcke für Oberfläche
maxOffsetShallow: 5 # ±5 Blöcke für flach
maxOffsetDeep: 5 # ±5 Blöcke für tief
maxOffsetSky: 5 # ±5 Blöcke für Himmel
maxOffsetLiquid: 5 # ±5 Blöcke für Flüssigkeit
maxOffsetDungeon: 18 # ±18 Blöcke für Dungeons

Admin-Benachrichtigungen

warnAdminsAboutNewBuildings: true  # Admins benachrichtigen, wenn Strukturen spawnen

Schematic-Konfiguration

Jedes Schematic hat seine eigene Konfigurationsdatei in ~/plugins/BetterStructures/schematics/.

Verfügbare Einstellungen:

  • isEnabled: Aktiviere oder deaktiviere dieses Schematic (Standard: true)
  • weight: Auswahlwahrscheinlichkeit, wenn mehrere Schematics verfügbar sind (Standard: 1.0)
  • generatorConfigFilename: Verknüpfung zur Generator-Konfiguration, die steuert, wo diese Struktur spawnt
  • pedestalMaterial: Blocktyp für Sockel unter der Struktur
  • treasureFile: Benutzerdefinierte Loot-Tabellen-Konfiguration für Truhen in dieser Struktur

Generator-Konfiguration

Generator-Konfigurationen steuern, wo und wann Strukturen spawnen. Dateien befinden sich in ~/plugins/BetterStructures/generators/.

Verfügbare Einstellungen:

  • structureType: Einer der sechs Typen (SURFACE, SKY, UNDERGROUND_SHALLOW, UNDERGROUND_DEEP, LIQUID_SURFACE, DUNGEON)
  • lowestYLevel: Minimale Spawn-Höhe (Standard: -59)
  • highestYLevel: Maximale Spawn-Höhe (Standard: 320)
  • validWorlds: Liste der Weltnamen, in denen diese Struktur spawnen kann (leer = alle Welten)
  • validWorldEnvironments: Filtern nach Umgebungstyp (NORMAL, NETHER, THE_END)
  • validBiomes: Liste der Biome, in denen die Struktur spawnen kann (unterstützt Namespace-Format wie minecraft:plains)
  • treasureFilename: Loot-Tabellen-Referenz für Truhen in dieser Struktur

Schatz-Konfiguration

Schatz-Konfigurationen definieren Loot-Tabellen für Strukturtruhen. Dateien befinden sich in ~/plugins/BetterStructures/treasures/.

Verfügbare Einstellungen:

  • mean: Durchschnittliche Anzahl an Items pro Truhe (Standard: 4.0)
  • standardDeviation: Variation der Item-Mengen (Standard: 3.0)
  • rawLoot: Item-Pools organisiert nach Seltenheitsstufe
  • chestEntries: Spezifische Items mit Mengenbereichen und Spawn-Chancen

Verzauberungs-Konfiguration:

Jedes Material kann Verzauberungsregeln haben:

  • minLevel: Minimale Verzauberungsstufe
  • maxLevel: Maximale Verzauberungsstufe
  • chance: Wahrscheinlichkeit der Anwendung der Verzauberung (0.0 bis 1.0)

Spezielle Blöcke

BetterStructures verwendet spezielle Blöcke in Schematics, um das Einfügeverhalten zu steuern und Funktionalität hinzuzufügen.

Barriere-Blöcke

Barriere-Blöcke sagen dem Plugin, dass das Einfügen an dieser Stelle übersprungen werden soll, wodurch die ursprüngliche Weltgenerierung erhalten bleibt.

Anwendungsfälle:

  • Erstelle natürlich aussehende Ränder, die sich mit dem Gelände vermischen
  • Bewahre bestehende Höhlen oder Merkmale
  • Runde Strukturecken ab, um zur Landschaft zu passen

Grundgesteins-Blöcke

Grundgesteins-Blöcke garantieren einen festen Boden unter der Struktur.

Verhalten:

  • Wenn an dieser Stelle ein fester Block existiert, bleibt er unverändert
  • Wenn der Block Luft oder Flüssigkeit ist, ersetze ihn durch das Sockelmaterial

Anwendungsfälle:

  • Erstelle definierte Wege ohne natürliches Gelände zu überschreiben
  • Stelle sicher, dass Strukturen stabile Fundamente haben
  • Füge Funktionen wie Minecart-Schienen oder Brücken hinzu, die feste Blöcke erfordern

Spawn-Schilder

Spawn-Schilder erstellen Mob-Spawns an bestimmten Orten in deinen Strukturen. Schilder werden entfernt, wenn die Struktur eingefügt wird.

Vanilla-Mobs

[spawn]
ZOMBIE

Format:

  • Zeile 1: [spawn]
  • Zeile 2: Entitätstyp (verwende Spigot-API-Namen wie ZOMBIE, SKELETON, CREEPER)

EliteMobs-Integration

[elitemobs]
boss_filename.yml

Format:

  • Zeile 1: [elitemobs]
  • Zeile 2+: Boss-Konfigurationsdateiname

Erstellt Boss-Begegnungen mit WorldGuard-Schutz. Die geschützte Region bleibt bestehen, bis Spieler den Boss besiegen.

MythicMobs-Integration

[mythicmobs]
mob_identifier
5

Format:

  • Zeile 1: [mythicmobs]
  • Zeile 2: MythicMobs-Mob-ID
  • Zeile 3: Mob-Level (optional)

Plugin-Integration

EliteMobs

BetterStructures integriert sich mit EliteMobs, um Boss-Arenen und Kampfbegegnungen zu erstellen.

Funktionen:

  • Spawne EliteMobs-Bosse in Strukturen mithilfe von Spawn-Schildern
  • Automatischer Regionsschutz während Boss-Kämpfen
  • Schutzentfernung, wenn der Boss besiegt wird

Konfiguration:

protectEliteMobsRegions: true  # EliteMobs-Regionsschutz aktivieren

WorldGuard

WorldGuard-Integration bietet Regionsschutz und Platzierungskontrolle.

Funktionen:

  • Benutzerdefinierte Flags für Strukturplatzierung
  • Regionsschutzfähigkeiten
  • Kompatibilität mit WorldGuard-geschützten Bereichen

WorldEdit / FastAsyncWorldEdit

WorldEdit oder FastAsyncWorldEdit ist für Schematic-Einfügevorgänge erforderlich.

Anforderungen:

  • Installiere eines (nicht beide) dieser Plugins
  • Versionskompatibilität ist kritisch - verwende Versionen, die zu deinem Server passen
  • FastAsyncWorldEdit wird für große Strukturen auf stark frequentierten Servern empfohlen

Welt-Generatoren

BetterStructures funktioniert mit benutzerdefinierten Weltgeneratoren:

Unterstützte Generatoren:

  • Terralith
  • Iris
  • Terra
  • TerraformGenerator

Diese Integrationen ermöglichen die Strukturgenerierung in benutzerdefinierten Biomen und Geländetypen.

Leistungsoptimierung

Passe diese Einstellungen in config.yml an, um die Leistung für deinen Server zu optimieren.

Chunk-Einfüge-Geschwindigkeit

modularChunkPastingSpeed: 10

Steuert, wie schnell modulare Strukturen eingefügt werden. Höhere Werte fügen schneller ein, verwenden aber mehr Serverressourcen.

Empfohlene Werte:

  • Kleine Server (1-10 Spieler): 10-15
  • Mittlere Server (10-50 Spieler): 5-10
  • Große Server (50+ Spieler): 3-5

Tick-Nutzungsprozentsatz

percentageOfTickUsedForPasting: 0.2

Begrenzt den Prozentsatz jedes Server-Ticks, der für Einfügevorgänge verwendet wird. Standard ist 0.2 (20% der Tick-Zeit).

Empfohlene Werte:

  • Hochleistungsserver: 0.3-0.4 (30-40%)
  • Standard-Server: 0.2 (20%)
  • Stark frequentierte Server mit TPS-Problemen: 0.1-0.15 (10-15%)

Modul-Generierungsgeschwindigkeit

Bei der Verwendung von /betterstructures generatemodules hast du drei Geschwindigkeitsoptionen:

Normal: /betterstructures generatemodules Ausgewogene Generierungsgeschwindigkeit mit moderater Serverauslastung.

Langsam: /betterstructures generatemodules slowly Minimale Serverauslastung, am besten für stark frequentierte Server oder während Spitzenzeiten.

Sofort: /betterstructures generatemodules instantly Maximale Geschwindigkeit, hohe Serverauslastung. Nur während verkehrsarmer Zeiten verwenden.

Entwickler-API

BetterStructures bietet zwei Events für Plugin-Entwickler, um mit der Strukturgenerierung zu interagieren.

BuildPlaceEvent

Wird ausgelöst, wenn eine Struktur kurz davor ist, in der Welt platziert zu werden.

Package: com.magmaguy.betterstructures.api.BuildPlaceEvent

Event-Typ: Abbrechbar

Anwendungsfälle:

  • Strukturplatzierung validieren
  • Benutzerdefinierte Berechtigungsprüfungen implementieren
  • Platzierung in bestimmten Bereichen verhindern
  • Strukturgenerierung protokollieren

Wichtig: Ändere das Build-Objekt selbst nicht. Das Event stellt das FitAnything-Objekt zur Verfügung, aber das Ändern des gesamten Builds kann zu schlechter Geländeanpassung führen. Nimm nur bei Bedarf kleine Anpassungen vor.

ChestFillEvent

Wird ausgelöst, wenn Truhen in Strukturen mit Loot gefüllt werden.

Package: com.magmaguy.betterstructures.api.ChestFillEvent

Event-Typ: Abbrechbar

Anwendungsfälle:

  • Benutzerdefinierte Items zum Struktur-Loot hinzufügen
  • Generierten Loot ändern oder entfernen
  • Benutzerdefinierte Loot-Logik implementieren
  • Truheninhalte verfolgen

Verwendung: Ändere Loot, indem du die Methoden addItem() und removeItem() im Snapshot-Inventar verwendest. Manipuliere nicht direkt den Truhen-Container.

Maven-Abhängigkeit

BetterStructures hat derzeit kein Maven-Repository. Um die API zu verwenden, importiere die Plugin-JAR manuell in dein Projekt.

<dependency>
<groupId>com.magmaguy</groupId>
<artifactId>BetterStructures</artifactId>
<version>2.0.3</version>
<scope>provided</scope>
</dependency>

Füge die Plugin-JAR zum Build-Pfad deines Projekts hinzu und markiere sie als bereitgestellte Abhängigkeit in deiner plugin.yml.

Zusätzliche Ressourcen

Offizielles GitHub-Wiki: github.com/MagmaGuy/BetterStructures/wiki

Struktur-Downloads:

Plugin-Seite: spigotmc.org/resources/betterstructures.103241

Support: Besuche das offizielle GitHub-Repository oder die SpigotMC-Ressourcenseite für Support und Fehlerberichte.