Zum Hauptinhalt springen

Arenen erstellen

webapp_banner.jpg

Arenen erstellen​

Erstelle eine eindeutig benannte .yml-Datei in plugins/EliteMobs/customarenas. Führe /em reload aus, nachdem alle verwendeten Welten und Inhalte geladen sind. Referenzen enthalten den vollständigen Dateinamen einschließlich .yml. Definiere jede Welle von 1 bis zu einem positiven waveCount und verweise nur auf Spawn-Punkte, die in der Datei definiert sind. EliteMobs prüft das beim Laden der Arena: Eine fehlende Welle, eine Welle über waveCount, ein unbekannter Spawn-Punkt oder ein fehlerhafter Eintrag in spawnPoints oder bossList erzeugt eine Warnung, und die Arena wird nicht geladen. Scheitert während eines Durchlaufs das Spawnen eines Mobs einer Welle, endet der Durchlauf mit einer Niederlage.

Einer Arena beitreten und sie starten​

Eine Arena nutzt einen bestehenden Bereich; sie klont keine Welt pro Gruppe. Ihr NPC öffnet ein Menü. Die Spieler-Schaltfläche lässt Teilnehmer nur zu, solange die Partie wartet, Platz frei ist, die konfigurierte Berechtigung vorliegt und der Spieler keiner anderen Partie angehört. Sobald der Countdown beginnt, sind keine weiteren Spieler zugelassen.

Nach dem Beitritt kommen Spieler zu teleportLocation, ohne konfigurierte Lobby zu startLocation. Ein Teilnehmer mit elitemobs.instance.start kann ab minimumPlayerCount Spielern /em start verwenden. Der Countdown prüft das Minimum erneut, teleportiert dann alle Teilnehmer zu startLocation und bereitet Welle 1 vor. Spieler und Zuschauer verlassen die Partie mit /em quit.

Start, Lobby und Boss-Spawns müssen innerhalb des Arena-Bereichs auf sicherem Boden liegen. Die Grenzprüfung läuft auch während der Wartezeit und bringt Spieler und Zuschauer zurück, wenn sie den Bereich verlassen. Während des Kampfes werden Außenstehende ohne elitemobs.* hinausbefördert. Gewöhnliche Teleports sind während der Teilnahme eingeschränkt; verwende den vorgesehenen Austrittsbefehl.

allowSpectatorsInInstancedContent in dungeons.yml steuert die Zuschauer-Schaltfläche und Wiederbelebungen. Bei aktivierter Option wartet ein besiegter Spieler als Zuschauer, bis ein Mitspieler sein Banner schlägt; der Zähler erlaubt drei Wiederbelebungen. Sind keine aktiven Spieler mehr übrig, endet die Partie mit einer Niederlage. Bei deaktivierter Option verlässt ein besiegter Spieler die Partie sofort. Zuschauer erhalten keine Wellenbelohnungen und wechseln beim Verlassen des Zuschauermodus in den Überlebensmodus.

Die nächste Welle beginnt, sobald alle erfassten Gegner der Welle tot oder ungültig sind; nicht jedes Verschwinden muss ein Spielerkill sein. Die letzte Welle vergibt ihre Belohnungen und beendet die Partie. Beim Zurücksetzen werden verbliebene Arena-Mobs und Todesbanner entfernt, Teilnehmer hinausgebracht und die Arena freigegeben. Die Vorbereitung verwendet Sekunden, das Zurücksetzen nach der Partie derzeit denselben Zahlenwert in Ticks.

arenaContainer​

Mit arenaContainer: another_arena.yml teilen mehrere Partiedefinitionen eine physische Arena. Die referenzierte, aktivierte Arena liefert beide Ecken, Start, Ausgang, Lobby, Spawn-Punkte und Zylinderform. Die aktuelle Datei behält Wellen, Belohnungen, Nachrichten, Berechtigung und Spielerlimits. Nur eine Partie kann den gemeinsamen Bereich belegen, bereits beim Beitritt von Spielern oder Zuschauern vor Kampfbeginn. Beim Zurücksetzen oder Abbrechen einer leeren Anmeldung wird er frei. Referenzketten sind möglich; fehlende Referenzen und Zyklen werden abgelehnt. Ohne diese Option nutzt die Arena ihre eigene Geometrie.

isEnabled​

Legt fest, ob die Arena aktiviert ist.

KeyWerteStandard
isEnabledBooleantrue
Beispiel
isEnabled: true

arenaName​

Legt den Namen der Arena fest.

KeyWerteStandard
arenaNameStringkeiner; ausdrücklich setzen
Kein brauchbarer Standardwert

Setze arenaName ausdrücklich. Ohne diesen Eintrag hat die Arena keinen Anzeigenamen.

Beispiel
arenaName: Bedrock Arena

create_arena_name.jpg


corner1​

Legt die erste Ecke der Arena fest.

KeyWerteStandard
corner1Locationkeiner
Beispiel
corner1: my_arena_world,10,50,-10,0,0

Das Format lautet world_name,x,y,z,yaw,pitch: Weltname, Koordinaten, horizontale Drehung (0–360) und vertikale Drehung (-90 bis 90). Die Kurzform world_name,x,y,z setzt yaw und pitch auf 0.

Wartende Arenen werden beim Laden der Welt aus corner1 erneut initialisiert. Lädt eine separate Ausgangswelt später, löst dieses Ereignis keinen weiteren Versuch aus; führe /em reload aus, sobald alle referenzierten Welten geladen sind.

Auf diesem Bild wird corner1 durch grüne Wolle dargestellt und corner2 durch rote Wolle. Diese Konfiguration bestimmt den Bereich zwischen ihnen als die Arena, dargestellt durch gelbe Wolle.

create_arena_corner.jpg


corner2​

Gegenüberliegende Ecke der Arena. Berücksichtige neben X/Z auch die gesamte Höhe: Gleiche Y-Werte ergeben einen Bereich ohne Höhe. Beide Ecken und startLocation müssen in derselben Welt liegen.

KeyWerteStandard
corner2Locationkeiner
Beispiel
corner2: my_arena_world,-10,80,10,0,0

Auf diesem Bild wird corner1 durch grüne Wolle dargestellt und corner2 durch rote Wolle. Diese Konfiguration bestimmt den Bereich zwischen ihnen als die Arena, dargestellt durch gelbe Wolle.

create_arena_corner.jpg


startLocation​

Ort für den Kampfbeginn und den Eintritt von Zuschauern. Ohne teleportLocation warten Spieler ebenfalls hier. Wähle sicheren Boden innerhalb des Bereichs.

KeyWerteStandard
startLocationLocationkeiner
Beispiel
startLocation: my_arena_world,1,50,1,0,0

exitLocation​

Ziel für gewöhnliche Austritte, das Aufräumen und das Entfernen von Eindringlingen. Es muss außerhalb der Arena liegen. Bei tödlichen Treffern kann ein Spieler stattdessen zu seiner gespeicherten Position vor dem Eintritt zurückkehren.

KeyWerteStandard
exitLocationLocationkeiner
Beispiel
exitLocation: my_world,1,50,1,0,0

waveCount​

Anzahl der Wellen. Verwende eine positive Ganzzahl und mindestens einen Boss-Eintrag für jede Welle von 1 bis zu diesem Wert, sonst wird die Arena nicht geladen.

KeyWerteStandard
waveCountInteger0
Beispiel
waveCount: 10

delayBetweenWaves​

Vorbereitungszeit in Sekunden vor jeder Welle, einschließlich Welle 1. Verwende eine nichtnegative Ganzzahl.

KeyWerteStandard
delayBetweenWavesInteger0
Beispiel
delayBetweenWaves: 5

rawIntermissionWaves​

Verdoppelt die Vorbereitung vor jeder aufgeführten Welle auf delayBetweenWaves * 2. Nützlich, wenn du den Spielern eine kurze Verschnaufpause zwischen bestimmten Wellen geben möchtest.

KeyWerteStandard
rawIntermissionWavesInteger-Listekeiner
Beispiel
rawIntermissionWaves:
- '5'
- '10'
- '15'

spawnPoints​

Benannte Spawn-Punkte für Arena-Bosse. Jeder Punkt benötigt einen name und eine gültige location in derselben Welt wie startLocation, sonst wird die Arena nicht geladen. Die Namen müssen in bossList exakt übereinstimmen. Ein erneut verwendeter Name ersetzt seinen vorherigen Ort.

KeyWerteStandard
spawnPointsString-Liste [1]keiner
Beispiel
spawnPoints:
- name=north:location=my_arena_world,219.5,71,273.5
- name=south:location=my_arena_world,219.5,71,316.5
- name=west:location=my_arena_world,197.5,71,295.5
- name=east:location=my_arena_world,240.5,71,295.5
- name=center:location=my_arena_world,219.5,71,295.5

bossList​

Bosse der einzelnen Wellen. Jeder Eintrag erzeugt eine Entität; wiederhole ihn für mehrere Gegner. EliteMobs verwendet Boss-Dateinamen mit .yml. MythicMobs verwendet interne Mob-Namen und benötigt das geladene Plugin mit dem entsprechenden Mob.

KeyWerteStandard
bossListString-Liste [2]keiner
Beispiel
bossList:
- wave=1:spawnPoint=north:boss=my_boss_wave_1.yml
- wave=1:spawnPoint=south:boss=my_boss_wave_1.yml
- wave=2:spawnPoint=center:boss=my_mythicmobs_boss:mythicmob=true:level=10

In diesem Beispiel spawnt Welle 1 einen Boss am nördlichen Spawn-Punkt und einen Boss am südlichen Spawn-Punkt. Dann spawnt in Welle 2 ein Mythic-Boss auf Level 10 am Mittelpunkt.

Gültige Parameter sind wave, spawnPoint, boss, mythicmob und level.

level gilt nur für MythicMobs. EliteMobs-Bosse verwenden den Level aus ihrer eigenen Konfiguration.


rawArenaReward​

Wellenbelohnungen. Jeder Eintrag wird für jeden aktiven Spieler einzeln ausgewürfelt, sobald seine Welle endet, vor der nächsten Vorbereitung, auch nach der letzten Welle. Zuschauer und ausgetretene Spieler sind ausgeschlossen. Enthält die Welle einen EliteMobs-Boss mit positivem Level, entfällt die Belohnung, wenn der absolute Abstand zwischen dem fertigkeitenbasierten Combat Level des Spielers und dem stärksten solchen Boss größer als lootLevelDifferenceLockout in ItemSettings.yml ist. MythicMobs-Level fließen nicht in diesen Vergleich ein. Es gibt keinen Mindestanteil am verursachten Schaden.

Verwende das unten gezeigte String-Format: wave bezeichnet die abgeschlossene Welle, itemlevel den angeforderten Gegenstandslevel, standardmäßig 1. Feste oder begrenzte Skalierungsregeln des Gegenstands gelten weiterhin. Gegenstände gehen ins Inventar, Überläufe werden daneben abgelegt; Währung wird dem Guthaben gutgeschrieben. Chance, Menge und Berechtigungen der Loot-Tabelle gelten weiterhin, Dungeon-Filter mit difficultyID schränken gewöhnliche Arenen aber nicht ein. EliteMobs-Arena-Bosse verwenden normalisierten Kampf, außer ihre Datei setzt ausdrücklich scaledCombat: true; ihr gewöhnlicher Elite-, Zufalls- und Vanilla-Loot ist deaktiviert.

KeyWerteStandard
rawArenaRewardUniverselle EliteMobs-Loot-Tabellekeiner
Beispiel
rawArenaReward:
- filename=enchanted_book_damage_all.yml:wave=5:chance=0.25
- filename=elite_scrap_tiny.yml:wave=1:chance=0.5:amount=5
- currencyAmount=3:wave=3
- itemlevel=5:filename=summon_merchant_scroll.yml:wave=5
- filename=magmaguys_toothpick.yml:itemlevel=10:wave=10:chance=0.95

minimumPlayerCount​

Legt die Mindestanzahl an Spielern fest, die eine Arena haben muss, bevor sie startet.

KeyWerteStandard
minimumPlayerCountInteger1
Beispiel
minimumPlayerCount: 1

maximumPlayerCount​

Maximale Teilnehmerzahl. Weitere Spieler werden mit einer Meldung über die volle Arena abgewiesen.

Setze diesen Wert ausdrücklich. Der Standard ist 0, und jeder Wert unter 1 wird als 1 behandelt, sodass eine Arena ohne diesen Schlüssel nur einen einzigen Spieler zulässt. Ein minimumPlayerCount über diesem Wert wird auf ihn herabgesetzt.

KeyWerteStandard
maximumPlayerCountInteger0
Beispiel
maximumPlayerCount: 100

arenaMessages​

Nachrichten an Spieler und Zuschauer zu Beginn der Vorbereitung der angegebenen Welle, vor deren Verzögerung. Ein späterer Eintrag für dieselbe Welle ersetzt die vorherige Nachricht.

KeyWerteStandard
arenaMessagesSpeziell [3]keiner
Beispiel
arenaMessages:
- 'wave=1:message=&a[Arena Announcer] &fTime for wave one!'
- 'wave=2:message=&a[Arena Announcer] &fWow, wave two already.'

create_arena_messages.jpg


cylindricalArena​

Verwendet einen Zylinder statt eines Quaders. Sein X/Z-Mittelpunkt liegt zwischen den Ecken, die Basis beim niedrigeren Y. Die Höhe entspricht der Y-Differenz und der Radius der halben X-Differenz. Der Z-Abstand bestimmt den Radius nicht. Der äußere Kreisrand und das obere Y sind ausgeschlossen; nutzbare Positionen müssen innerhalb liegen. Der Quader schließt beide Ecken ein.

KeyWerteStandard
cylindricalArenaBooleanfalse
Beispiel
cylindricalArena: false

permission​

Berechtigung für den Beitritt als Kämpfer. Für freien Zugang lässt du die Option weg. Die Zuschauer-Schaltfläche prüft diese Berechtigung derzeit nicht; sie beschränkt daher keinen Zuschauerzugang.

KeyWerteStandard
permissionStringkeiner
Beispiel
permission: mypermission.arena

teleportLocation​

Optionaler Warteort nach erfolgreichem Beitritt als Spieler über das Menü. Allein die NPC-Interaktion teleportiert nicht. Die Lobby muss innerhalb der Arena liegen, sonst bringt die Grenzprüfung wartende Spieler zurück. Ohne diese Option warten sie bei startLocation. Eine weitere Gruppe kann dadurch nicht in einer bereits belegten gemeinsamen Arena warten.

KeyWerteStandard
teleportLocationLocationkeiner
Beispiel
teleportLocation: my_arena_world,10,50,10,0,0

Speziell [1]​

Spawn-Punkte: Verwendet das folgende Format: name=pointName:location=world_name,x,y,z.

Speziell [2]​

Boss-Liste: wave=X:spawnPoint=Y:boss=bossfilename.yml.

Zwei optionale Schlüssel sind möglich:

SchlüsselBeschreibungWerteStandard
levelÜberschreibt nur den Level eines Eintrags mit mythicmob=true. EliteMobs nutzt die eigene Konfiguration.GanzzahlOhne Angabe erhält MythicMobs -1; setze einen positiven Level
mythicmobBehandelt boss= als MythicMobs-Namen statt als EliteMobs-Dateinamen. Benötigt MythicMobs.true / falsefalse

Beispiel: wave=3:spawnPoint=center:boss=my_mythic_boss:mythicmob=true:level=40

Einträge werden an : und danach am ersten = getrennt. Groß- und Kleinschreibung der Schlüssel spielt keine Rolle. Ein unbekannter oder doppelter Schlüssel, ein Schlüssel ohne Wert, ein fehlendes wave, spawnPoint oder boss, eine wave unter 1, ein level unter 1 oder ein mythicmob-Wert außer true oder false verhindert mit einer Warnung das Laden der Arena. Spawn-Namen und Boss-Kennungen müssen exakt mit ihren Referenzen übereinstimmen.

Speziell [3]​

Arena-Nachrichten: Verwendet das folgende Format: wave=X:message=deine Nachricht hier.

Der Nachrichtentext darf Doppelpunkte enthalten: Er reicht von message= bis zum Ende des Eintrags oder bis zu einem nachfolgenden :wave=-Feld. Nur Wellen ab 1 sind gültig. Setze bei Bedarf den gesamten YAML-Eintrag in Anführungszeichen; Anführungszeichen nur hinter message= werden mit angezeigt.

Arena-Konfigurationsbeispiel
isEnabled: true
arenaName: Example Arena
corner1: my_arena_world,0,0,0,0,0
corner2: my_arena_world,50,50,50,0,0
startLocation: my_arena_world,25,0,25,0,0
exitLocation: my_minecraft_world,234,44,245,0,0
waveCount: 5
delayBetweenWaves: 5
spawnPoints:
- name=north:location=my_arena_world,40.5,0,0
- name=south:location=my_arena_world,10.5,0,0
- name=west:location=my_arena_world,0,0,40.5
- name=east:location=my_arena_world,0,0,10.5
- name=center:location=my_arena_world,25.5,0,25.5
bossList:
- wave=1:spawnPoint=north:boss=example_arena_wave_1_mob.yml
- wave=1:spawnPoint=center:boss=example_arena_wave_1_mob.yml
- wave=1:spawnPoint=south:boss=example_arena_wave_1_mob.yml
- wave=2:spawnPoint=center:boss=example_arena_wave_2_mob.yml
- wave=3:spawnPoint=east:boss=example_arena_wave_3_mob.yml
- wave=3:spawnPoint=west:boss=example_arena_wave_3_mob.yml
- wave=4:spawnPoint=center:boss=example_arena_wave_4_mob.yml
- wave=4:spawnPoint=center:boss=example_arena_wave_4_mob.yml
- wave=5:spawnPoint=center:boss=example_arena_wave_5_mob.yml
- wave=5:spawnPoint=south:boss=example_arena_wave_5_mob.yml
- wave=5:spawnPoint=west:boss=example_arena_wave_5_mob.yml
rawArenaReward:
- currencyAmount=5:wave=1
- currencyAmount=10:wave=2
- currencyAmount=15:wave=3
- currencyAmount=20:wave=4
- currencyAmount=25:wave=5
- filename=magmaguys_toothpick.yml:itemlevel=5:wave=5:chance=0.5
minimumPlayerCount: 1
maximumPlayerCount: 3
arenaMessages:
- wave=1:message=&d[Arena NPC] &fWow! Wave 1!
- wave=2:message=&d[Arena NPC] &fAmazing it is wave 2!
- wave=3:message=&d[Arena NPC] &fWave 3 is now on!
- wave=4:message=&d[Arena NPC] &fWave 4 already!
- wave=5:message=&d[Arena NPC] &fWell it is all over after this one.
cylindricalArena: false
permission: arena.mypermission
Aufschlüsselung des Beispiels

Gehen wir dieses Beispiel von oben durch und erklären, was diese Arena-Konfiguration bewirkt.

Zuerst wird die Arena mit isEnabled aktiviert, und wir können sehen, dass sie mit der Einstellung arenaName Example Arena heißt. Der Name wird angezeigt, wenn du mit dem Arena-NPC interagierst (wir erklären weiter unten, wie man einen Arena-NPC erstellt), der es Spielern ermöglicht, der Arena beizutreten. corner1 und corner2 definieren die Arena-Größe. Diese Ecken sollten auf gegenüberliegenden Seiten des Bereichs liegen, den du für die Arena verwenden möchtest.

startLocation ist der Kampfbeginn. Da dieses Beispiel keine separate Lobby hat, warten Spieler nach dem Beitritt ebenfalls dort. exitLocation ist der normale Ausgang in my_minecraft_world; tödliche Niederlagen können stattdessen zur gespeicherten Position vor dem Beitritt führen. Ersetze die Beispielkoordinaten durch sichere Orte in deinen geladenen Welten.

waveCount legt einfach die Anzahl der Wellen fest, die die Arena andauert. In diesem Fall wären das 5 Wellen. Wenn es die Spieler schaffen, alle 5 Wellen zu überleben, haben sie es geschafft, die Arena zu überleben. delayBetweenWaves legt die Anzahl der Sekunden fest, bevor die nächste Welle beginnt. In unserem Beispiel hätten die Spieler 5 Sekunden Zeit, sich vorzubereiten, bevor die nächste Welle beginnt.

spawnPoints legt die Orte fest, an denen unsere Mobs spawnen können. Wir können so viele erstellen, wie wir wollen, und sie benennen, wie wir wollen. Im Beispiel haben wir uns entschieden, 5 Spawn-Punkte zu erstellen und sie north, south, center, east und west zu nennen.

bossList ist der Ort, an dem wir definieren, welcher Boss bei welcher Welle und an welchem Ort spawnen soll. Im Beispiel spawnen in Welle 1 3 Bosse von den Spawn-Orten, die wir north, center und south genannt haben. Alle drei sind so eingestellt, dass sie dieselbe Boss-Datei verwenden, aber wir hätten für jeden eine andere Boss-Datei verwenden können.

rawArenaReward gibt berechtigten aktiven Spielern nach Welle 1 fünf Elite-Münzen. Welle 5 gibt 25 Münzen und unabhängig davon eine Chance von 50 % auf die konfigurierte Level-5-Belohnung MagmaGuy's Toothpick. Combat-Level-Sperre und Loot-Bedingungen gelten weiterhin.

minimumPlayerCount: 1 erlaubt den Start mit einem Spieler. maximumPlayerCount: 3 lässt höchstens drei Teilnehmer zu; weitere Spieler werden mit der Meldung über eine volle Arena abgewiesen.

arenaMessages ermöglicht es dir, etwas Flavor-Text hinzuzufügen, der im Chat zu Beginn der definierten Wellen angezeigt wird. In unserem Beispiel haben wir uns entschieden, zu Beginn jeder Welle eine kurze Nachricht anzuzeigen. Wir haben uns außerdem entschieden, den NPC-Namen am Anfang jeder Nachricht einzufügen, was die Illusion vermittelt, dass der Text vom Ansager (Arenameister) gesprochener Dialog ist.

cylindricalArena mit dieser Einstellung können wir umschalten, ob der definierte Bereich, den wir mit corner1 und corner2 festgelegt haben, eine zylindrische statt einer quaderförmigen Form haben soll. In unserem Beispiel haben wir dies auf false gesetzt, was bedeutet, dass die Beispiel-Arena eine quaderförmige Form hat.

permission verlangt arena.mypermission für den Spielerbeitritt. Zum Starten ist zusätzlich elitemobs.instance.start erforderlich. Zuschauerbeitritte prüfen die Arena-Berechtigung nicht.

Den Arena-NPC erstellen​

Speichere eine eindeutig benannte NPC-Datei mit .yml in plugins/EliteMobs/npcs/, mit interactionType: ARENA_MASTER und arena: your_arena.yml. Lade Änderungen neu und platziere den NPC mit /em place npc <npcfilename.yml> und elitemobs.place.npc, oder konfiguriere spawnLocations. Die NPC-Referenz beschreibt Platzierung, Entfernung, scripts, patrol, classRoot und transportRoutes.

isEnabled​

Legt fest, ob der NPC aktiviert ist.

KeyWerteStandard
isEnabledBooleantrue
Beispiel
isEnabled: true

name​

Legt den Anzeigenamen des NPCs fest.

KeyWerteStandard
nameStringleer
Beispiel
name: "&aGladius"

create_arena_npc_name.jpg


role​

Legt die Rollenanzeige unter dem NPC-Namen fest.

KeyWerteStandard
roleStringleer
Beispiel
role: "&c<Arena Master>"

create_arena_npc_role.jpg


profession​

Legt den MineCraft-Beruf des NPCs fest.

KeyWerteStandard
professionProfessionNITWIT
Beispiel
profession: ARMORER

Wird überschrieben, wenn eine disguise verwendet wird.

create_arena_npc_profession.jpg


spawnLocation​

Alter einzelner Standort, nur verwendet, wenn spawnLocations fehlt oder leer ist. Nutze bei neuen Dateien die Liste und entferne bei einer Umstellung den alten Schlüssel, damit eine leere Liste nicht den alten Standort wiederherstellt.

KeyWerteStandard
spawnLocationLocationkeiner
Beispiel
spawnLocation: my_world,1.5,50,1.5,-108,0

spawnLocations​

Gespeicherte NPC-Standorte. Eine nichtleere Liste ersetzt spawnLocation, statt es zu ergänzen. Die Welten müssen geladen sein. Jeder Standort erzeugt einen eigenen NPC mit dieser Konfiguration.

KeyWerteStandard
spawnLocationsString-Listekeiner
Beispiel
spawnLocations:
- my_world,1.5,50,1.5,-108,0
- my_world,100.5,50,50.5,0,0

greetings​

Zufällige Begrüßungen beim erkannten Eintritt in den Aktivierungsradius. Die Nähe wird alle 100 Ticks geprüft; kurze Besuche können unbemerkt bleiben. Der NPC teilt seine dreisekündige Sprechpause zwischen Spielern, daher kann eine andere Begrüßung deine unterdrücken.

KeyWerteStandard
greetingsString-Listekeiner
Beispiel
greetings:
- Welcome to the Arena!
- The Arena welcomes you!

create_arena_npc_greetings.jpg


dialog​

Bei ARENA_MASTER zufällige Nähe-Dialoge bei späteren Prüfungen, solange ein Spieler in Reichweite bleibt. Ein Klick öffnet das Arena-Menü. Nur CHAT verwendet diese Liste als eingebaute Klickaktion.

KeyWerteStandard
dialogString-Listekeiner
Beispiel
dialog:
- Ready for a challenge?
- Face the Arena?

create_arena_npc_dialog.jpg


farewell​

Zufällige Abschiedszeilen beim Schließen eines beliebigen Inventars mit nichtleerem Titel innerhalb einer Box von 5 Blöcken je Achse um den NPC, sofern die Sprechpause abgelaufen ist. Es muss nicht sein eigenes Menü sein; bloßes Weggehen löst keinen Abschied aus.

KeyWerteStandard
farewellString-Listekeiner
Beispiel
farewell:
- Bye.
- Return with your shield, or on it!

create_arena_npc_farewell.jpg

Verwende ein wörtliches \n in einem unzitierten oder einfach zitierten YAML-String für mehrere Zeilen einer Sprechblase.

farewell:
- Bye.
- Return with your\nshield, or on it!

create_arena_npc_lines.jpg


canTalk​

Aktiviert gewöhnliche Begrüßungs-, Dialog- und Abschiedsblasen. Deaktivieren schaltet weder Arena-Menü noch Questdialoge, Skripte oder Questmarker ab.

KeyWerteStandard
canTalkBooleantrue
Beispiel
canTalk: true

activationRadius​

Dreidimensionaler Näheradius in Blöcken. Null oder negative Werte deaktivieren die Näheprüfung; Questmarker haben eine eigene Reichweite. Patrouillenbewegung und -bearbeitung unterdrücken während ihrer Aktivität gewöhnliche Nähe-Dialoge.

KeyWerteStandard
activationRadiusDouble3.0
Beispiel
activationRadius: 3.0

timeout​

Lebensdauer in Minuten. Null oder negative Werte deaktivieren sie. Der aktive NPC verschwindet, sein Standort bleibt gespeichert und kann beim Neuladen oder Wiederherstellen des Chunks zurückkehren. Nutze die NPC-Entfernung, um den Standort dauerhaft zu löschen.

KeyWerteStandard
timeoutDouble0
Beispiel
timeout: 60

interactionType​

Legt die Art der Interaktion fest, die der NPC durchführt.

KeyWerteStandard
interactionTypeSpeziell [4]NONE
Beispiel
interactionType: ARENA_MASTER

disguise​

Legt die benutzerdefinierte NPC-Verkleidung fest.

KeyWerteStandard
disguiseDisguisekeiner
Beispiel
disguise: ZOMBIE

create_arena_npc_disguise.jpg


customDisguiseData​

Daten für eine benannte LibsDisguises-Verkleidung. Verwende dazu disguise: custom:your_disguise_name; dieses Feld allein aktiviert keine Verkleidung.

KeyWerteStandard
customDisguiseDataStringkeiner
Beispiel
disguise: custom:arena_guide
customDisguiseData: player MHF_Pig

customModel​

Geladenes benutzerdefiniertes Modell. FreeMinecraftModels hat Vorrang, wenn verfügbar; ein dort fehlendes Modell wird nicht über ModelEngine erneut versucht. Ein funktionierendes Modell hat optischen Vorrang vor einer Verkleidung. Spieler benötigen die passenden Ressourcenpaket-Dateien.

KeyWerteStandard
customModelStringkeiner
Beispiel
customModel: my_model

arena​

Arena-Definition einschließlich .yml, deren Menü ARENA_MASTER öffnet. Sie muss aktiviert und erfolgreich initialisiert sein. Das Öffnen des Menüs allein meldet keinen Spieler an und teleportiert ihn nicht.

KeyWerteStandard
arenaFilenamekeiner
Beispiel
arena: my_arena.yml

command​

Befehl, der als interagierender Spieler mit dessen Berechtigungen ausgeführt wird. Benötigt interactionType: COMMAND. Lasse den führenden Schrägstrich weg; $player wird nicht ersetzt.

KeyWerteStandard
commandStringkeiner
Beispiel
command: say Hello

questFileName​

Legt die Quest-Dateinamen für den NPC fest. Erfordert, dass interactionType auf CUSTOM_QUEST_GIVER gesetzt ist.

KeyWerteStandard
questFileNameString-Listekeiner
Beispiel
questFileName:
- my_quest_1.yml
- my_quest_2.yml

noPreviousLocationMessage​

Nachricht für TELEPORT_BACK, wenn kein EliteMobs-Rückkehrort gespeichert ist. Dieser entsteht durch einen EliteMobs-Teleport von außerhalb einer EliteMobs-Welt; er ist nicht einfach der letzte Aufenthalts- oder Todesort.

KeyWerteStandard
noPreviousLocationMessageStringleer
Beispiel
noPreviousLocationMessage: '&cCouldn''t find a previous location!'

instanced​

Kennzeichnet eine NPC-Vorlage für instanzierte Dungeons, statt sie in der Vorlagenwelt zu spawnen. Gewöhnliche Arena-NPCs nutzen false; diese Option verwandelt eine physische Arena nicht in einen geklonten Dungeon.

KeyWerteStandard
instancedBooleanfalse
Beispiel
instanced: false

scale​

Skalierung des zugrunde liegenden Dorfbewohners. Verkleidungen und Modelle können eine eigene optische Skalierung haben; identische Anzeigegrößen sind damit nicht für jeden Anbieter garantiert.

KeyWerteStandard
scaleDouble1.0
Beispiel
scale: 1.0

syncMovement​

Synchronisiert die Bewegung des benutzerdefinierten Modells mit dem NPC. Eine gültige Patrouille erzwingt die Synchronisierung auch bei false, selbst im pausierten Zustand.

KeyWerteStandard
syncMovementBooleantrue
Beispiel
syncMovement: true

Arena-Konfigurationsbeispiel
isEnabled: true
name: Example NPC
role: <Arena Master>
profession: ARMORER
spawnLocations:
- my_minecraft_world,233,44,245,0,0
greetings:
- Welcome to the Arena!
dialog:
- Ready to enter the Arena?
farewell:
- Bye!
canTalk: true
activationRadius: 3.0
interactionType: ARENA_MASTER
disguise: ZOMBIE
arena: example_arena.yml

Dieses Beispiel zeigt einen einfachen Arena-NPC, der in my_minecraft_world mit einer Zombie-Verkleidung spawnt. Spieler können mit diesem NPC interagieren, um die Example Arena herauszufordern.

Speziell [4]​

Im Folgenden findest du die Liste der gültigen NPC-Interaktionstypen:

TypBeschreibung
GUILD_GREETERÖffnet Fertigkeitsboni; benötigt elitemobs.skill.npc.
CLASS_TRAINERÖffnet Training für classRoot bei aktiviertem [Alpha] Advanced Combat System; benötigt elitemobs.command.
TRANSPORTÖffnet Ziele aus transportRoutes; siehe Transport.
CHATRechtsklick wählt eine zufällige Zeile aus dialog.
CUSTOM_SHOPÖffnet das benutzerdefinierte Shop-Menü
PROCEDURALLY_GENERATED_SHOPÖffnet den prozedural generierten Shop
BARZeigt die Meldung an, dass die Funktion noch nicht verfügbar ist.
ARENATut nichts. Verwende stattdessen ARENA_MASTER.
QUEST_GIVERÖffnet das Menü der prozedural generierten Quests
CUSTOM_QUEST_GIVERÖffnet das Quest-Menü für eine bestimmte Quest, die in questFileName festgelegt ist
NONEKeine eingebaute Aktion; Skripte, Nähe und Questdialoge können weiterlaufen.
SELLÖffnet das Verkaufsmenü
TELEPORT_BACKVerwendet den gespeicherten EliteMobs-Rückkehrort; benötigt elitemobs.back.npc.
SCRAPPERÖffnet das Verschrottungsmenü
SMELTERVERALTET - Feature entfernt, nicht verwenden
REPAIRMANÖffnet das Reparaturmenü
ENHANCERVERALTET - Feature entfernt, nicht verwenden
REFINERVERALTET - Feature entfernt, nicht verwenden
UNBINDERÖffnet das Entbindungsmenü
ARENA_MASTERÖffnet das Arena-Menü für die in arena festgelegte Arena
COMMANDFührt den in command festgelegten Befehl aus
ENCHANTERÖffnet das Verzauberungsmenü
SCROLL_APPLIERÖffnet das Schriftrollen-Anwendungsmenü
ARROW_SHOPÖffnet das Pfeil-Shop-Menü
GAMBLING_BLACKJACKÖffnet das Blackjack-Glücksspiel
GAMBLING_COINFLIPÖffnet das Münzwurf-Glücksspiel
GAMBLING_SLOTSÖffnet das Slots-Glücksspiel
GAMBLING_HIGHERLOWERÖffnet das Höher/Tiefer-Glücksspiel

Andere Typen haben eigene Berechtigungen und Einstellungen. Prüfe vor ihrer Verwendung die vollständige NPC-Interaktionsreferenz; ein Arena-Eingang benötigt ARENA_MASTER.