Zum Hauptinhalt springen

Bosse erstellen

webapp_banner.jpg

Benutzerdefinierte Bosse erstellen

Bevor Sie beginnen

Wo werden Boss-Dateien abgelegt?

Boss-Dateien werden in den Konfigurationsordner ~/plugins/EliteMobs/custombosses abgelegt.

Es ist möglich, Unterordner zu erstellen, wie z.B. ~/plugins/EliteMobs/custombosses/mybosses. Dies wird empfohlen, um die Dinge organisiert zu halten.

Eine Datei definiert einen Boss, obwohl es möglich ist, denselben Boss mehrmals zu spawnen und sogar mehrere Spawn-Orte für dieselbe Boss-Datei festzulegen.

Es ist möglich, die webapp zu verwenden, um schnell und einfach benutzerdefinierte Bosse und mehr zu erstellen.

Kleinstmögliche Konfiguration

Die kleinstmögliche Konfigurationsdatei für einen Custom Boss ist:

Beachten Sie, dass dies nur eine leere Datei ist. Dies wird trotzdem einen Zombie Custom Boss mit einem benutzerdefinierten Namen spawnen, da dies die Standardwerte sind. Alles auf dieser Seite ist optional!

Beispiel-Boss

Schauen wir uns ein Beispiel an, wie eine Boss-Datei aussieht.

Beispiel
isEnabled: true
entityType: ZOMBIE
name: '&eTest boss'
level: dynamic
timeout: 10
isPersistent: false
healthMultiplier: 2.0
damageMultiplier: 0.5
helmet: GOLDEN_HELMET
chestplate: IRON_CHESTPLATE
leggings: LEATHER_LEGGINGS
boots: CHAINMAIL_BOOTS
mainHand: GOLDEN_AXE
offHand: SHIELD
isBaby: false
powers:
- invulnerability_knockback.yml
spawnMessage: A test boss has been spawned!
deathMessage: A test boss has been slain by $players!
escapeMessage: A test boss entity has escaped!
locationMessage: 'Test entity: $location'
uniqueLootList:
- magmaguys_toothpick.yml:1
dropsEliteMobsLoot: true
dropsVanillaLoot: true
trails:
- BARRIER
onDamageMessages:
- "I've hit you!"
onDamagedMessages:
- "I've been hit!"

Grundlegende Einstellungen

isEnabled

Legt fest, ob der Boss aktiviert ist.

SchlüsselWerteStandard
isEnabledtrue / falsetrue
Beispiel
isEnabled: true

entityType

Legt den Entitätstyp des Bosses fest.

SchlüsselWerteStandard
entityTypeWählen Sie hier.
Wert muss auch im Ordner ~plugins/EliteMobs/mobproperties vorhanden sein.
ZOMBIE
Magma Cubes und Slimes

Da diese Entitätstypen Spieler nicht direkt angreifen, sondern Schaden durch Kontakt verursachen, kann dies zu großen Schadensausbrüchen in kurzer Zeit führen. Aus diesem Grund empfehlen wir generell nicht, sie häufig als Elite-Mobs zu verwenden. Wenn Sie sie jedoch trotzdem verwenden möchten, empfehlen wir, den damageMultiplier auf etwa 0.1 zu setzen.

Wir empfehlen auch die Verwendung des folgenden EliteScript, um zu verhindern, dass Magma Cubes oder Slimes Spieler festhalten:

eliteScript:
NerfDamage:
Events:
- ZoneEnterEvent
- ZoneLeaveEvent
Zone:
shape: SPHERE
radius: 1
Target:
targetType: SELF
Actions:
- action: SET_MOB_AI
Target:
targetType: SELF
bValue: false
duration: 10
Beispiel
entityType: ZOMBIE

name

Legt den Namen des Bosses fest.

SchlüsselWerteStandard
nameString, akzeptiert Farbcodes und die unten aufgeführten Platzhalter"Default Name"
Beispiel
name: "$normalLevel &cCool boss!"

create_boss_name_pic_no_level.jpg

Wenn Sie das Boss-Level in ihrem Namensfeld einschließen möchten, verwenden Sie einfach einen der folgenden Platzhalter.

PlatzhalterBeschreibungBeispielAusgabe (für einen Level-10-Boss)
$levelErsetzt durch das Level"$level Cool boss"10 Cool boss
$normalLevelErsetzt durch das Level, gemacht für normale Mobs"$normalLevel Cool boss"[10] Cool boss
$minibossLevelErsetzt durch das Level, gemacht für Minibosse"$minibossLevel Cool boss"〖10〗 Cool boss
$bossLevelErsetzt durch das Level, gemacht für Bosse"$bossLevel Cool boss"『10』 Cool boss
$reinforcementLevelErsetzt durch das Level, gemacht für Verstärkungen"$reinforcementLevel Cool boss"〔10〕 Cool Boss
$eventBossLevelErsetzt durch das Level, gemacht für Event-Bosse"$eventBossLevel Cool boss"「10」 Cool boss
Beispiel
name: "$normalLevel &cCool boss!"

create_boss_name_pic.jpg


level

Legt das Level des Bosses fest.

SchlüsselWerteStandard
levelPositive Integer-Zahlen oder dynamicdynamic

dynamic wird für Events verwendet und passt sich dem Level der Spieler in der Nähe zum Zeitpunkt des Boss-Spawns an. Es wird nicht für regionale Bosse empfohlen.

Beispiel
level: 1

scale

Legt die Skalierung (Größe) des Bosses fest.

SchlüsselWerteStandard
scaleMultiplier1.0

Bei der Skalierung repräsentiert 1.0 die Standardgröße. Um die Entität größer zu machen, erhöhen Sie den Wert (z.B. 1.2). Um die Entität kleiner zu machen, verringern Sie den Wert (z.B. 0.8).

Beispiel
scale: 1.2

bossType

Legt fest, welchen Typ der Boss hat. Dies wird verwendet, um Boss-Lebensbalken und andere Funktionen anzuzeigen.

SchlüsselWerteStandard
bossTypeNORMAL, MINIBOSS, BOSS, EVENTNORMAL

MINIBOSS, BOSS, EVENT führen dazu, dass das Plugin Lebensbalken anzeigt, wenn Spieler gegen diese Boss-Typen kämpfen.

Beispiel
bossType: MINIBOSS

silent

Legt fest, ob die Boss-Sounds stummgeschaltet werden sollen.

SchlüsselWerteStandard
silentBooleanfalse

Wenn auf true gesetzt, stummschaltet diese Option alle standardmäßigen Minecraft-Mob-Sounds, sodass der Boss überhaupt keine Geräusche macht.

Beispiel
silent: true

bossType

Legt fest, welchen Typ der Boss hat. Dies wird verwendet, um Boss-Lebensbalken und andere Funktionen anzuzeigen.

SchlüsselWerteStandard
bossTypeNORMAL, MINIBOSS, BOSS, EVENTNORMAL

MINIBOSS, BOSS, EVENT führen dazu, dass das Plugin Lebensbalken anzeigt, wenn Spieler gegen diese Boss-Typen kämpfen.

Beispiel
bossType: MINIBOSS

healthMultiplier

Legt die Gesundheit des Bosses fest. Der Wert dieser Einstellung bestimmt auch den Typ der Lebensleiste, die während des Kampfes angezeigt wird. Höhere Werte zeigen eine Miniboss- oder vollständige Boss-Lebensleiste an.

SchlüsselWerteStandard
healthMultiplierMultiplier1.0
Beispiel
healthMultiplier: 1.5

damageMultiplier

Legt den Schadensmultiplikator des Bosses fest.

SchlüsselWerteStandard
damageMultiplierMultiplier1.0
Beispiel
damageMultiplier: 1.5

isBaby

Legt fest, ob der Boss die Baby-Variante des Mobs verwendet. Kann nur auf Mobs mit Baby-Varianten angewendet werden. Wenn Sie den Boss verkleiden möchten, aber möchten, dass er auch während der Verkleidung ein Baby bleibt (stellen Sie sicher, dass die Verkleidungsentität auch die Baby-Variante unterstützt), können Sie diese Einstellung verwenden:

disguise: HOGLIN:baby
SchlüsselWerteStandard
isBabytrue / falsefalse
Beispiel
isBaby: true

helmet/chestplate/leggings/boots/mainhand/offhand

Legt die Rüstung des Bosses fest. Nicht alle Minecraft-Modelle können Rüstung anzeigen. Boss-Rüstung ist rein kosmetisch und beeinflusst das Gameplay nicht.

SchlüsselWerteStandard
helmetMaterial, UUIDnone
chestplateMaterialnone
leggingsMaterialnone
bootsMaterialnone
mainHandMaterialnone
offHandMaterialnone

Hinweis: Dieses Feld ermöglicht es Ihnen auch, benutzerdefinierte Modelle für Gegenstände festzulegen. Um die benutzerdefinierte Modell-ID festzulegen, fügen Sie die ID nach dem Materialtyp in diesem Format hinzu: ITEM_MATERIAL:ID. Beispiel: DIAMOND_SWORD:1 legt fest, dass der Boss ein Diamantschwert mit dem benutzerdefinierten Modell #1 in Ihrem Texturpaket trägt.

Hinweis 2: Dieses Feld ermöglicht es Ihnen auch, benutzerdefinierte Lederfarben mit dem Format ITEM_MATERIAL:CODE festzulegen, wobei der Code die hexadezimale Darstellung der Farbe ist. Beispiel: LEATHER_LEGGINGS:ffa500 würde orange Beinschutz erstellen. Sie können Hex-Codes verwenden, entfernen Sie einfach das # aus dem Hex-Code. Sie können Hex-Codes hier erhalten.

Hinweis 3: Das Helm-Feld ermöglicht es Ihnen auch, Mob-Helme als Spielerköpfe festzulegen. Holen Sie sich einfach die UUID des Spielerkopfes, den Sie verwenden möchten, und geben Sie ihn in das Helm-Feld ein. Der Spieler muss online sein, damit dies funktioniert, oder der Kopf wird auf einen generischen MineCraft-Kopf zurückgesetzt. Sie können Spieler-UUIDs hier erhalten.

Beispiel
helmet: 198c4123-cafc-45df-ba79-02a421eb8ce7
chestplate: DIAMOND_CHESTPLATE:1
leggings: LEATHER_LEGGINGS:ffa500
boots: NETHERITE_BOOTS
mainHand: DIAMOND_SWORD
offHand: SHIELD

create_boss_armor.jpg


powers

Legt die Kräfte fest, die der Boss hat.

SchlüsselWerteStandard
powersSiehe unten stehende Listenone
Beispiel
powers:
- hyper_loot.yml
- attack_arrow.yml

Hinweis: Sie können diese Seite überprüfen, wenn Sie eine Liste vorgefertigter Kräfte sehen möchten, die Sie verwenden können.


Fortgeschrittene Konfiguration - Verstärkungen spawnen

Verstärkungen gehören ebenfalls in die Kategorie powers und verwenden die folgenden Einstellungen:

Verstärkungseinstellungen
SchlüsselBeschreibungWerteStandard
summonTypeWas das Spawnen der Verstärkung auslöst. Obligatorisch.Siehe unten stehende Listenone
filenameDateiname des Bosses, der als Verstärkung gespawnt werden soll. Obligatorisch.Stringnone
chanceChance, dass die Verstärkung spawnt. Optional.Double1.0
amountLegt die Anzahl der zu spawnenden Verstärkungen fest. Optional.Integer1
inheritAggroLässt die Verstärkung die Aggro vom Boss erben. Optional.true / falsefalse
spawnNearbyLässt die Verstärkungen in einem Radius von 30 Blöcken vom Boss spawnen. Optional.true / falsefalse
inheritLevelLässt die Verstärkung das Level des Bosses erben. Optionaltrue / falsefalse
customSpawnLässt die Verstärkung mit dem benutzerdefinierten Spawn-System spawnen. Nur für summonType: GLOBAL verwendet
locationSpawn-Ort. Optional.world_name,x,y,z oder x,y,z für einen Ort relativ zum Boss. Der Offset ist relativ zum Spawn-Ort für regionale Bosse. Sie können auch same_as_boss verwenden, um Verstärkungen in derselben Welt wie der Boss spawnen zu lassen.none
lightningRodSpezielle Einstellung für summonType: ON_COMBAT_ENTER_PLACE_CRYSTAL. Lässt Endkristalle Blitze um sie herum spawnen. Optional.true / falsenone

Summon-Typen legen die Bedingungen für das Spawnen von Verstärkungen fest. Folgendes ist eine Liste der gültigen Summon-Typen:

Summon-Typen
WertBeschreibung
ONCESpawnt die Verstärkungen nur einmal, beim ersten Mal wenn der Boss Schaden erleidet.
ON_HITSpawnt die Verstärkungen bei Treffer.
ON_COMBAT_ENTERSpawnt die Verstärkungen, wenn der Boss in den Kampf eintritt.
GLOBALSpawnt eine Verstärkung für jeden Online-Spieler. Erfordert, dass der customSpawn-Schlüssel einen gültigen benutzerdefinierten Spawn gesetzt hat.
ON_COMBAT_ENTER_PLACE_CRYSTALPlatziert Endkristall-Verstärkungen beim Kampfeintritt, nur für benutzerdefinierte Drachenkämpfe.

Beachten Sie, dass es auch möglich ist, Verstärkungen über Elite Scripts zu spawnen, sodass es anpassbarere Möglichkeiten gibt, Verstärkungen zu spawnen.

Beispiel
powers:
- summonType: ON_COMBAT_ENTER
filename: test_boss.yml
chance: 0.5
amount: 5
inheritAggro: true
spawnNearby: true
inheritLevel: true
customSpawn: false
location: same_as_boss,10,20,30
lightningRod: false

Expertenkonfiguration - Eigene Kräfte erstellen

Es ist möglich, eigene Kräfte zu erstellen, entweder in der Boss-Datei selbst oder als neue Konfigurationsdatei im powers-Ordner. Sie können mehr darüber hier erfahren.

Kräfte basierend auf instanziierten Dungeon-Schwierigkeitsgraden einschränken

Instanziierte Dungeons können Schwierigkeitseinstellungen haben, und es ist möglich zu machen, dass eine bestimmte Kraft nur für bestimmte Schwierigkeitsgrade aktiviert ist.

Optionen zur Krafteinschränkung
SchlüsselBeschreibungWerteStandard
filenameDateiname der Kraft.Stringnone
difficultyIDSchwierigkeitsname, passend zum Namen der Schwierigkeit im Dungeon-Paket.Stringnone

Dies gilt nur für instanziierte Dungeons.

Beispiel
powers:
- filename: movement_speed.yml
difficultyID:
- myDifficultyName1
- myDifficultyName2
- myDifficultyName3

spawnMessage

Legt die Nachricht fest, die gesendet wird, wenn der Boss spawnt. Erfordert die Einrichtung der announcementPriority.

SchlüsselWerteStandard
spawnMessageStrings und Farbcodesnone
Beispiel
announcementPriority: 3
spawnMessage: I rise once more!

create_boss_spawn_message.jpg


deathMessages

Legt die Liste der Nachrichten fest, die gesendet werden, wenn der Boss stirbt. Erfordert die Einrichtung der announcementPriority.

SchlüsselWerteStandard
deathMessagesStrings, Farbcodes und die Platzhalter untennone
Beispiel
announcementPriority: 3
deathMessages:
- '&e&l---------------------------------------------'
- '&4The Test Boss has been killed!'
- '&c&l 1st Damager: $damager1name &cwith $damager1damage damage!'
- '&6&l 2nd Damager: $damager2name &6with $damager2damage damage!'
- '&e&l 3rd Damager: $damager3name &ewith $damager3damage damage!'
- '&4Slayers: $players'
- '&e&l---------------------------------------------'

create_boss_death_message.jpg

Todesnachrichten verwenden die folgenden Platzhalter:

Platzhalter
WertBeschreibung
$damager1nameDer Name des Top-Damagers
$damager2nameDer Name des zweiten Top-Damagers
$damager3nameDer Name des dritten Top-Damagers
$damager1damageDer Schadensbetrag des Top-Damagers
$damager2damageDer Schadensbetrag des zweiten Top-Damagers
$damager3damageDer Schadensbetrag des dritten Top-Damagers
$playersZeigt eine Liste aller Damager an

onKillMessage

Legt die Nachricht fest, die gesendet wird, wenn der Boss einen Spieler tötet. Erfordert die Einrichtung der announcementPriority.

SchlüsselWerteStandard
onKillMessageStrings und Farbcodesnone
Beispiel
announcementPriority: 3
onKillMessage: I win, you lose!

create_boss_spawn_message.jpg


slimeSize

Legt die Größe des Slime-Bosses fest, funktioniert aber nur für Slimes und Magmacubes.

SchlüsselWerteStandard
slimeSizeInteger4
Beispiel
slimeSize: 5

neutral

Legt fest, ob der Boss als neutral spawnt oder nicht. Dies gilt nur für Entitätstypen, die neutral sein können, wie Wölfe oder Eisengolems.

SchlüsselWerteStandard
neutralBooleanfalse
Beispiel
neutral: true

Erweiterte Einstellungen

timeout

Legt die Zeit in Minuten fest, bevor der Custom Boss despawnt.

SchlüsselWerteStandard
timeoutZeit (in Minuten) Integer0
Beispiel
timeout: 20

Legt fest, dass der Boss nach 20 Minuten entkommt.


isPersistent

Legt fest, ob der Boss ein Chunk-Unload überleben kann. Nur für Event-Bosse empfohlen.

SchlüsselWerteStandard
isPersistenttrue / falsefalse
Beispiel

Beispiel:

isPersistent: true

damageModifiers

Legt Waffen fest, gegen die Bosse stark oder schwach sein können.

SchlüsselWerteStandard
damageModifiersMaterialnone
Beispiel
damageModifiers:
- material:DIAMOND_SWORD,multiplier:0.8
- material:TRIDENT,multiplier:2.0

In diesem Beispiel nehmen Bosse nur 80% Schaden von Diamantschwertern (oder 20% weniger), aber 200% Schaden von Dreizacks (oder 2x mehr).


normalizedCombat

Modifiziert den Schaden und die maximale Gesundheit des Bosses, um den Werten der normalisierten Entität in ~/plugins/EliteMobs/mobproperties zu entsprechen. Dies ist der Standard für regionale Bosse, um eine glatte Schwierigkeitskurve zu gewährleisten.

SchlüsselWerteStandard
normalizedCombattrue / falsefalse
Beispiel

Beispiel:

normalizedCombat: true

escapeMessage

Legt die Nachricht fest, die an Spieler gesendet wird, wenn der Boss durch den timeout-Mechanismus entkommt. Erfordert, dass announcementPriority konfiguriert ist.

SchlüsselWerteStandard
escapeMessageStringnone
Beispiel
announcementPriority: 3
timeout: 60
escapeMessage: "Sayonara!"

create_boss_escape_message.jpg


locationMessage

Legt die Nachricht fest, die in der Boss-Leiste angezeigt wird. Dies wird verwendet, um sowohl die Gesundheit des Custom Boss als auch seinen Standort auf dem Server zu verfolgen. Erfordert, dass die annoucementPriority konfiguriert ist.

SchlüsselWerteStandard
locationMessageString, Farbcodes und die unten aufgeführten Platzhalternone

Platzhalter:

WertBeschreibung
$distanceWird durch die Entfernung ersetzt, die der Spieler vom Custom Boss entfernt ist. Dies ist die bevorzugte Option.
$locationWird durch die x y z Ortskoordinaten des Custom Boss ersetzt
Beispiel
announcementPriority: 3
locationMessage: "&4Cool boss: At $location only $distance blocks away!"

create_boss_location_message.jpg

Dies würde etwas wie Cool boss: At 414,55,347 only 10 blocks away! anzeigen


uniqueLootList

Legt die Custom Items fest, die vom Boss gedroppt werden.

SchlüsselWerteStandard
uniqueLootListListnone

Loot-Einträge im Custom Loot folgen dem Loot-Table-Format. Informationen dazu hier! Beachten Sie, dass einige ältere Dateien möglicherweise veraltete Loot-Tables verwenden, die anders aussehen als das Beispiel.

Beispiel
uniqueLootList:
- filename: magmaguys_toothpick.yml
chance: 0.02
- minecraft:type=DIAMOND:amount=1:chance=0.9
- SCRAP:level=5-10:amount=10-20:ignorePlayerLevel=false:chance=0.5
- UPGRADE_ITEM:level=5-10:amount=1-2:ignorePlayerLevel=false:chance=0.1
- magmaguys_toothpick.yml:0.5:elitemobs.*

dropsEliteMobsLoot

Legt fest, ob der Boss EliteMobs-Loot droppt, ausgenommen Gegenstände in uniqueLootList. Enthält Münzen.

SchlüsselWerteStandard
dropsEliteMobsLoottrue / falsetrue

Empfohlen, auf false für Verstärkungsmobs zu setzen.

Beispiel
dropsEliteMobsLoot: true

dropsVanillaLoot

Legt fest, ob der Custom Boss den Vanilla-Loot droppt, der normalerweise mit seinem Vanilla-Mob-Typ verbunden ist.

SchlüsselWerteStandard
dropsVanillaLoottrue / falsetrue
Beispiel
dropsVanillaLoot: true

dropsRandomLoot

Legt fest, ob der Custom Boss prozedural generierten Loot von EliteMobs droppt. Enthält keine Elite-Münzen.

SchlüsselWerteStandard
dropsRandomLoottrue / falsetrue
Beispiel
dropsRandomLoot: true

trails

Legt die Spur fest, die der Boss beim Bewegen hinterlässt.

SchlüsselWerteStandard
trailsParticles oder item materialsnone
Beispiel
trails:
- CLOUD

onDamageMessages

Legt die Nachricht fest, die der Boss-Mob anzeigt, wenn er einen Spieler trifft. Dies ist eine Liste, und die verwendete wird zufällig aus der Liste ausgewählt.

SchlüsselWerteStandard
onDamageMessagesListnone
Beispiel
onDamageMessages:
- "I hit you!"
- "Haha I hit you!"

create_boss_damage_message.jpg


onDamagedMessages

Legt die Nachricht fest, die der Boss-Mob anzeigt, wenn er von einem Spieler Schaden erleidet. Dies ist eine Liste, und die verwendete wird zufällig aus der Liste ausgewählt.

SchlüsselWerteStandard
onDamagedMessagesListnone
Beispiel
onDamagedMessages:
- "You hit me!"
- "I've been hit!"

create_boss_damaged_message.jpg


mountedEntity

Legt die Entität fest, die der Boss besteigen und reiten wird.

SchlüsselWerteStandard
onDamagedMessagesDateiname des zu besteigende Boss oder Entitätstypnone

Versuchen Sie nicht, den Boss sich selbst besteigen zu lassen.

Beispiel
mountedEntity: wild_wolf.yml

create_boss_mounted.jpg

Hinweis: Regionale Bosse teilen ihre Leine mit der Entität, die sie besteigen, was bedeutet, dass beide zum Spawn-Ort zurückgezogen werden, wenn sie die durch ihre Leine erlaubte Entfernung überschreiten.


announcementPriority

Legt die Prioritätsstufe für Ankündigungen fest. Niedrigere Prioritäten bedeuten, dass keine Ankündigungen gemacht werden, höhere Prioritäten können nicht nur im Chat, sondern auch auf Discord ankündigen, wenn konfiguriert.

SchlüsselWerteStandard
announcementPriorityInteger1

Hier ist eine Liste dessen, was die Prioritäten tun:

WertBeschreibung
0Der Boss wird völlig still sein, ohne Ankündigungsnachrichten.
1Dies ist der Standard. Bosse können Chat-Nachrichten senden, bei Spawn-Nachricht, bei Tod und Flucht-Nachrichten.
2Zusätzlich zu den Dingen in 1 wird der Boss so eingestellt, dass er von Spielern über das /em-Menü verfolgbar ist.
3Zusätzlich zu den Dingen in 2 werden Broadcast-Nachrichten auf Discord gespiegelt, wenn konfiguriert. Discord-Konfigurationsinformationen hier.

Hier ist ein Beispiel für einen Boss, der verfolgbar ist und in der Lage ist, Spawn/Tod/Flucht-Nachrichten im Chat und auf Discord zu senden:

Beispiel
announcementPriority: 3

Hinweis: Sie müssen die spawnMessage, deathMessage/deathMessages, escapeMessage für Chat- und Discord-Ankündigungen und die locationMessage für die Verfolgungsfunktion konfigurieren, wenn Sie die entsprechende Announcement Priority-Stufe verwenden möchten.


followDistance

Legt die Entfernung fest, in der Bosse aggro werden und in den Kampf eintreten. Gemessen vom Mob selbst.

SchlüsselWerteStandard
followDistanceDoublenone, verwendet Standards von Minecraft

Hinweis 1: Regionale Bosse haben die halbe followDistance, wenn sie außerhalb des Kampfes sind. Dies ist so, dass sie nicht von zu weit weg aggro werden, was aufgrund von Leinen-Einschränkungen zu ärgerlichen Kampfproblemen führen kann.

Hinweis 2: Je höher die followDistance, desto intensiver wird der Boss auf der Server-CPU. Vorsichtig und verantwortungsvoll verwenden!

Beispiel
followDistance: 30

Legt einen Bereich von 30 Blöcken fest, in dem der Boss, wenn ein Spieler sich dieser Entfernung nähert, anfängt, den Spieler zu jagen/anzugreifen.


onDeathCommands

Legt die Liste der Befehle fest, die beim Tod des Custom Boss ausgeführt werden.

SchlüsselWerteStandard
onDeathCommandsListnone

Die Liste unterstützt die folgenden Platzhalter:

WertBeschreibung
$levelPlatzhalter für das Boss-Level.
$namePlatzhalter für den Boss-Namen.
$chance=x$Lässt einen Befehl eine Chance haben, ausgeführt zu werden.
$playersLässt den Befehl einmal für jeden Spieler in der Damager-Liste ausführen und ersetzt jedes Mal durch den Benutzernamen eines anderen Spielers auf dieser Liste.
$locationXX-Koordinate des Bosses zum Zeitpunkt des Todes.
$locationYY-Koordinate des Bosses zum Zeitpunkt des Todes.
$locationZZ-Koordinate des Bosses zum Zeitpunkt des Todes.
$damager1nameBenutzername des Top-Damagers
$damager2nameBenutzername des zweiten Top-Damagers
$damager3nameBenutzername des dritten Top-Damagers

Schauen Sie sich das Beispiel unten an, um ein besseres Verständnis dafür zu bekommen, wie diese funktionieren.

Beispiel
onDeathCommands:
- "say $players has killed $name! That was level $level!"
- "$chance=0.5$ say What a kill!"

create_boss_mounted.jpg

Wenn Player1, Player2 und Player3 alle den Boss beschädigt haben, bevor sie ihn getötet haben, ist dies die Befehlsausgabe von der Konsole:

say Player1 has killed CustomBossName! That was level X!
say Player2 has killed CustomBossName! That was level X!
say Player3 has killed CustomBossName! That was level X!

Zusätzlich gibt es eine 50%ige Chance, dass auch Folgendes ausgegeben wird:

say What a kill!

onSpawnCommands

Legt die Liste der Befehle fest, die beim Boss-Spawn ausgeführt werden.

SchlüsselWerteStandard
onSpawnCommandsListnone

Dies verwendet die gleichen Platzhalter wie onDeathCommands! Damager-Platzhalter gelten nicht, da es zu diesem Zeitpunkt keine Damager geben wird.

Beispiel
onSpawnCommands:
- say Boss has spawned!

create_boss_mounted.jpg


onCombatEnterCommands

Legt die Liste der Befehle fest, die ausgeführt werden, wenn der Boss in den Kampf eintritt.

SchlüsselWerteStandard
onCombatEnterCommandsListnone

Dies verwendet die gleichen Platzhalter wie onDeathCommands! Damager-Platzhalter gelten nicht, da es zu diesem Zeitpunkt keine Damager geben wird.

Beispiel
onCombatEnterCommands:
- say Boss has entered combat!

create_boss_mounted.jpg


onCombatLeaveCommands

Legt die Liste der Befehle fest, die ausgeführt werden, wenn der Boss den Kampf verlässt.

SchlüsselWerteStandard
onCombatLeaveCommandsListnone

Dies verwendet die gleichen Platzhalter wie onDeathCommands!

Beispiel
onCombatLeaveCommands:
- say Boss has left combat!

create_boss_mounted.jpg


disguise

Legt die LibsDisguises-Verkleidung fest, wenn dieses Plugin aktiviert ist. Weitere Informationen hier.

SchlüsselWerteStandard
disguiseStringnone
customDisguiseDataStringnone
Beispiel Verkleidung
disguise: CHICKEN

create_boss_mounted.jpg

Beispiel benutzerdefinierte Verkleidung
disguise: custom:the_beast_sanctuary_beast
customDisguiseData: player the_beast_sanctuary_beast setskin {"id":"44e6d42b-bd8d-4e48-873b-fae7afed36e4","name":"Unknown","properties":[{"name":"textures","value":"ewogICJ0aW1lc3RhbXAiIDogMTY2NjcwNjYwODA1MCwKICAicHJvZmlsZUlkIiA6ICI3MmY5MTdjNWQyNDU0OTk0YjlmYzQ1YjVhM2YyMjIzMCIsCiAgInByb2ZpbGVOYW1lIiA6ICJUaGF0X0d1eV9Jc19NZSIsCiAgInNpZ25hdHVyZVJlcXVpcmVkIiA6IHRydWUsCiAgInRleHR1cmVzIiA6IHsKICAgICJTS0lOIiA6IHsKICAgICAgInVybCIgOiAiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS82YmYyMTY4NmM1MGQ1ODhmZmExMDZhZDdjNmViZTk1ZWZiMjE2NDU5ODRjZDFjZWYwODkzNDc4NzMzNmI2YTI3IiwKICAgICAgIm1ldGFkYXRhIiA6IHsKICAgICAgICAibW9kZWwiIDogInNsaW0iCiAgICAgIH0KICAgIH0KICB9Cn0=","signature":"jSsQvpUeWVtyqjtnydPadormkrZLVihetiX4dFQb3+BF/1x6wOgsNKRnnwj6J1mfu2im79LYEJbL+fQ9p1SJIW1uZ6hV7vPSAGUopyXGHNibNXorfV/dGjM77S0t86Jls50XWgJAnLn5RdhQcHahDAHHZ8to6K0HW5gvKKSalR5X/myaiV0E5ujJ+LUFWIiuDmtsmyxTX1zsohyYrVMo/4sD0DpBN+as95wO476gLb5fDTDV569QwExlDOt60W8qSzPw6ncYsOKJIiRE3EddspUm3/NrfDiKApUh8UbzVtwu1XlVAxWNgYN3PkqhWKuE4kvORQuoSJzOgSHkiqdXsQOED2HXfOKdfsnpZUwjepIU5A+/mu0gc3mPQPToKSss2bC1nXn//0bOZZSuQRgTS6PkKDHIQ1nClSZQZlJIsiLmaaN2k1tIHTIlDquKN6G1Ta9c3t6G5kugjqRo78ebbt7l3e0Z3BcdOkuO2WbvBjIg5Uiqyf+cYDZedJ+OEOqL/U6VVlsmbw0rd5deHrbnPn9cRzmWGjrXnxIlAszl+0Uqabj/BrkWcbBCwZJEPaV1hHpC4nJX1m5xvKZHB2Bw0AYWaQ3f3tRBbCA/xqwCS0Px1QohzV0nvtiMbjB38ziT1M5DgLtAVLcHPio7THZMxXAi4IjEIMac9ODbh5OxthA="}],"legacy":false}

create_boss_mounted.jpg

Legt eine benutzerdefinierte Verkleidung von skindex fest. Überprüfen Sie diese Seite, um zu erfahren, wie Sie diese Daten korrekt formatieren.


customModel

Legt das zu verwendende benutzerdefinierte Modell fest, wenn Sie ein benutzerdefiniertes Modell und die FreeMinecraftModels- oder ModelEngine-Plugins haben. Weitere Informationen zum Erstellen und Verwenden benutzerdefinierter Modelle hier.

SchlüsselWerteStandard
customModelStringnone
Beispiel
customModel: your_model

frozen

Legt fest, ob der Boss sich bewegen kann. Eingefrorene Bosse können noch angreifen.
Hinweis: Dies funktioniert möglicherweise nicht bei einigen Entitäten.

SchlüsselWerteStandard
frozentrue / falsefalse
Beispiel
frozen: true

song

Legt die Musik fest, die ein Boss spielen wird, beginnend beim Spawnen. Erfordert die .ogg-Datei für das Lied im Ressourcenpaket.

SchlüsselWerteStandard
songStringnone

Hinweis: Die song-Einstellung erfordert, dass followDistance gesetzt ist, da followDistance die Reichweite bestimmt, in der das Lied zu spielen beginnt. Schauen Sie sich das Beispiel an, wie Sie die length (Millisekunden) des song festlegen.

Beispiel

Es gibt zwei Möglichkeiten, Lieder einzurichten. Hier ist die erste:

song: name=elitemobs:ice_queen.idle length=76370

Dies wird das Lied ice_queen.idle für 76370 Millisekunden abspielen und es dann loopen. Beachten Sie, dass der Speicherort des Liedes durch das Ressourcenpaket bestimmt wird.

Hier ist die zweite Möglichkeit, Lieder einzurichten:

song: name=elitemobs:ice_queen.end_transition length=14328->name=elitemobs:ice_queen.end_loop length=28657

Dies wird das Lied ice_queen.end_transition für 14328 Millisekunden abspielen und dann zu ice_queen.end_loop für 28657 Millisekunden übergehen und die end_loop loopen.

Dies ermöglicht es Bossen, ein "Intro"- oder "Übergangs"-Lied und dann einen Haupttrack zu haben, der geloopt wird.


cullReinforcements

Legt fest, ob die Verstärkungen des Bosses entfernt werden, wenn der Boss stirbt.

SchlüsselWerteStandard
cullReinforcementstrue / falsetrue
Beispiel
cullReinforcements: true

movementSpeedAttribute

Legt die Bewegungsgeschwindigkeit des Bosses fest.
Hinweis: Alles über 0,36 könnte zu schnell sein.

SchlüsselWerteStandard
movementSpeedAttributeDoublenone
Beispiel
movementSpeedAttribute: 0.3

Boss-Phasen

Bosse können Phasen haben, die sich ändern, wenn der Boss einen bestimmten Prozentsatz an Gesundheit erreicht. Wenn dies geschieht, beginnt der Boss, eine andere Konfigurationsdatei zu verwenden, was bedeutet, dass sich alles am Boss ändern kann, einschließlich Dingen wie dem Entitätstyp.
Um mehr über Boss-Phasen zu erfahren, klicken Sie hier.

SchlüsselBeschreibungWerteStandard
phasesLegt die Phasen fest, die der Boss haben wird. ObligatorischListnone
phaseSpawnLocationLegt fest, wo der Phasen-Boss spawnt. OptionalStringnone
Beispiel

Für dieses Beispiel werden wir drei verschiedene Konfigurationsdateien zeigen.

Erste Boss-Konfigurationsdatei: phase_1_boss.yml

name: "Phase 1"
entityType: ZOMBIE
phases:
- phase_2_boss.yml:0.60
- phase_3_boss.yml:0.30

Zweite Boss-Konfigurationsdatei: phase_2_boss.yml

name: "Phase 2"
entityType: SKELETON

Dritte Boss-Konfigurationsdatei: phase_3_boss.yml

name: "Phase 3"
phaseSpawnLocation: same_as_boss,10,64,100,0,0
entityType: RAVAGER

Dieser Boss würde zur Konfigurationsdatei phase_2_boss.yml bei 60% Gesundheit wechseln und zur Konfigurationsdatei phase_3_boss.yml bei 30% Gesundheit in derselben Welt wie Phase 2 und an den Koordinaten x=10, y=64 und z=100. Der Entitätstyp und Name des Bosses würden sich ebenfalls ändern.

Das Format für einen Eintrag ist filename:healthPercentage.

phaseSpawnLocation ist optional, wenn es nicht gesetzt ist, wird der Boss dort die Phasen wechseln, wo er steht.

Folgende Dinge sind wichtig zu wissen, wenn Sie einen Phasen-Boss entwerfen:

  • Die Konfigurationsdatei für die erste Phase legt alle Phasen des Bosses fest.
  • Bedrohung / gezählter Schaden wird zwischen Phasen für Spieler beibehalten.
  • Das Wechseln der Phasen basiert auf dem Prozentsatz der verlorenen Gesundheit, der beim Wechsel zu einer anderen Phase erhalten bleibt. Dies bedeutet, dass das Erhöhen oder Verringern des healthMultiplier zwischen Phasen den Boss nicht heilen oder beschädigen wird, er wird immer noch mit demselben Prozentsatz wechseln, aber mehr oder weniger Gesundheit für diese Phase haben.
  • Phasen-Bosse kehren zu Phase 1 zurück, wenn sie aus dem Kampf gehen.
  • Phasen-Bosse, die auch regionale Bosse sind, teilen sich denselben Leinen-Radius und Timeout-Mechanismus über alle Phasen hinweg und werden als Phase-1-Boss respawnen, wenn der Timer abgelaufen ist.
  • Die Konfigurationsdatei für die letzte Phase legt den Loot für den Boss fest.
  • Phasen können nicht übersprungen werden - Overkill-Schaden wird den Boss immer noch bei dem definierten Prozentsatz die Phasen wechseln lassen.
  • Phasen-Bosse, die Reittiere haben, hören auf, beritten zu sein, wenn sie die Phasen wechseln.

Regionale Bosse

Regionale Bosse sind ein spezifischer Typ von Custom Bosses, die an einem bestimmten konfigurierten Ort spawnen und in der Lage sind, an diesem Ort nach einer Verzögerung zu respawnen. Zusätzlich können sie Leinen haben, die sicherstellen, dass sie in einer bestimmten Zone bleiben, neben anderen Funktionen.

Diese werden für alle Dungeon-Inhalte verwendet. Um mehr über regionale Bosse zu erfahren, klicken Sie hier.

SchlüsselBeschreibungWerteStandard
isRegionalBossLegt fest, ob der Boss regional ist. Sollte true sein, wenn Sie einen regionalen Boss wollen.true / falsefalse
spawnLocationLegt die Spawn-Orte des Bosses fest.Fügen Sie diese über den Befehl /em addSpawnLocation [filename.yml] hinzu!none
spawnCooldownLegt die Respawn-Abklingzeit des Bosses in Minuten fest.Integer0
leashRadiusLegt die Entfernung fest, die der Boss von seinem Spawn-Punkt entfernt sein kann, bevor er zurückgezogen wird. Gemessen vom Spawn.Doublenone
onSpawnBlockStatesLegt die Blöcke fest, die der Boss modifiziert, wenn er spawnt.Überprüfen Sie die Befehle untennone
onRemoveBlockStatesLegt die Blöcke fest, die der Boss modifiziert, wenn er despawnt.Überprüfen Sie die Befehle untennone

Wie angegeben, können Regionale Bosse onSpawnBlockStates und onRemoveBlockStates haben.

Dies ist eine sehr nützliche Funktion zum Modifizieren von Kampfarenen während des Kampfes, insbesondere in Kombination mit Phasenwechseln, da es möglich wird, Kampfarenen durch Ändern von Blockzuständen zu öffnen und zu schließen.

Das Format dafür ist zu komplex, um es manuell zu schreiben, daher existieren einige Befehle, um Ihnen beim Einrichten zu helfen:

BefehlBeschreibung
/em registerblocks [regional_boss_file.yml] [on_spawn/on_remove]Startet das Registrieren manueller Blockauswahlen für on spawn oder on remove Blockzustände.
/em registerblocksedit [regional_boss_file.yml] [on_spawn/on_remove]Bearbeitet die on spawn oder on remove Blockzustände.
/em registerblocksarea [regional_boss_file.yml] [on_spawn/on_remove]Ermöglicht Admins, große Bereiche von Blöcken auszuwählen, die als Zustände gespeichert werden sollen.
/em registerblocksareaedit [regional_boss_file.yml] [on_spawn/on_remove]Ermöglicht Admins, große Bereiche von Blöcken zu bearbeiten, die als Zustände gespeichert werden sollen.
Beispielnutzung:

Nehmen wir an, Sie möchten einen Kampf erstellen, bei dem ein Boss in einer Arena spawnt, die eine offene Tür hat, und Sie möchten, dass die Tür sich schließt, wenn der Kampf beginnt, und sich wieder öffnet, wenn der Kampf vorbei ist.

Um dies zu tun, benötigen Sie zwei Boss-Phasen und müssen drei verschiedene Sätze von Blockzuständen registrieren. Für dieses Beispiel werde ich diese Phasen phase_1_boss.yml und phase_2_boss.yml nennen.

  1. Verwenden Sie /em registerblocks phase_1_boss.yml on_spawn oder /em registerblocksedit phase_1_boss.yml on_spawn, um die Tür-Blöcke in ihrem offenen Zustand zu registrieren.

Dies bedeutet, die Luftblöcke zu registrieren. Bereichsauswahl wird hier empfohlen.

Dies ist notwendig, um sicherzustellen, dass die Tür offen ist, wenn der Boss spawnt, damit Spieler garantiert einen Weg hinein haben.

  1. Verwenden Sie /em registerblocks phase_2_boss.yml on_spawn oder /em registerblocksedit phase_2_boss.yml on_spawn, um die Tür-Blöcke in ihrem geschlossenen Zustand zu registrieren.

Dies bedeutet, die festen Blöcke der Tür zu registrieren, die verhindern würden, dass der Spieler geht.

Dies ist notwendig, um die Tür zu solide zu ändern, wenn der Boss in Phase 2 eintritt, und zu verhindern, dass Spieler gehen.

  1. Verwenden Sie /em registerblocks phase_2_boss.yml on_remove oder /em registerblocksedit phase_2_boss.yml on_remove, um die Tür-Blöcke in ihrem offenen Zustand zu registrieren.

Dies bedeutet, dieselben Blöcke vom ersten Schritt wieder zu registrieren (die Luftblöcke).

Dies ist notwendig, um die Tür zu öffnen, wenn der Boss stirbt, damit Spieler die Arena verlassen können.


alert

Legt fest, ob der Boss alarmiert ist. Standardmäßig sind Regionale Bosse verlangsamt und haben eine kürzere Aggro-Entfernung, wenn sie außerhalb des Kampfes sind. Diese Einstellung verhindert, dass Regionale Bosse verlangsamt werden und eine kürzere Aggro-Entfernung haben, während sie außerhalb des Kampfes sind, sodass sie sich immer gleich verhalten, ob im oder außerhalb des Kampfes.

SchlüsselWerteStandard
alertBooleantrue
Beispiel
alert: true

removeAfterDeath

Legt fest, ob der Regionale Boss nach dem Töten dauerhaft gelöscht wird. Dies ist das, was BetterStructures für Schreine verwendet, wo der Regionale Boss nur dafür ausgelegt ist, einmal bekämpft zu werden und dann nie wieder an diesem Ort.

SchlüsselWerteStandard
removeAfterDeathBooleanfalse
Beispiel
removeAfterDeath: true

Instanziierte Bosse

Instanziierte Bosse sind ein Untertyp von Regionalen Bossen, die in instanziierten Dungeons verwendet werden.

SchlüsselBeschreibungWerteStandard
instancedMacht den Custom Boss instanziiert. Obligatorisch.true / falsefalse

Das Setzen von Bossen auf instanziiert ist obligatorisch, damit instanziierte Dungeons korrekt funktionieren. Wir empfehlen auch, Leinen für alle instanziierten Bosse zu entfernen.

Beispiel
instanced: true