Создание арен
Создание арен
isEnabled
Определяет, включена ли арена.
| Key | Values | Default |
|---|---|---|
isEnabled | Boolean | true |
Пример
isEnabled: true
arenaName
Устанавливает название арены.
| Key | Values | Default |
|---|---|---|
arenaName | String | none |
Пример
arenaName: Bedrock Arena

corner1
Устанавливает первый угол арены.
| Key | Values | Default |
|---|---|---|
corner1 | Location | none |
Пример
corner1: my_arena_world,10,50,-10,0,0
Формат локации: world_name,x,y,z,yaw,pitch, где world_name — название мира, x/y/z — координаты, yaw — горизонтальное вращение (0-360), pitch — вертикальное вращение (-90 до 90).
На этом изображении corner1 представлен зелёной шерстью, а corner2 представлен красной шерстью. Эта конфигурация определяет область между ними как арену, представленную жёлтой шерстью.

corner2
Устанавливает второй угол арены, должен находиться в противоположном углу от corner1. Эти два угла определяют границы пространства арены.
| Key | Values | Default |
|---|---|---|
corner2 | Location | none |
Пример
corner2: my_arena_world,-10,50,10,0,0
На этом изображении corner1 представлен зелёной шерстью, а corner2 представлен красной шерстью. Эта конфигурация определяет область между ними как арену, представленную жёлтой шерстью.

startLocation
Устанавливает стартовую локацию арены.
| Key | Values | Default |
|---|---|---|
startLocation | Location | none |
Пример
startLocation: my_arena_world,1,50,1,0,0
exitLocation
Устанавливает локацию выхода из арены.
| Key | Values | Default |
|---|---|---|
exitLocation | Location | none |
Пример
exitLocation: my_world,1,50,1,0,0
waveCount
Устанавливает количество волн на арене.
| Key | Values | Default |
|---|---|---|
waveCount | Integer | none |
Пример
waveCount: 10
delayBetweenWaves
Устанавливает задержку в секундах между волнами.
| Key | Values | Default |
|---|---|---|
delayBetweenWaves | Integer | 0 |
Пример
delayBetweenWaves: 5
rawIntermissionWaves
Удваивает задержку между волнами для указанных волн в списке. Задержка будет равна delayBetweenWaves * 2 для этих волн. Полезно, если вы хотите дать игрокам короткую передышку между определёнными волнами.
| Key | Values | Default |
|---|---|---|
rawIntermissionWaves | Integer List | none |
Пример
rawIntermissionWaves:
- '5'
- '10'
- '15'
spawnPoints
Устанавливает локации спавна для боссов арены.
| Key | Values | Default |
|---|---|---|
spawnPoints | String List [1] | none |
Пример
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
Устанавливает список боссов, которые появляются во время волн арены. EliteMobs Arenas поддерживают спавн Mythic Mobs на аренах.
| Key | Values | Default |
|---|---|---|
bossList | String List [2] | none |
Пример
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
В этом примере волна 1 породит одного босса на северной точке спавна и одного босса на южной точке спавна. Затем на волне 2 появится мифический босс 10 уровня в центральной точке.
Обратите внимание, что вы также можете задать уровень для боссов EliteMobs, используя параметр level (например, level=10), но рекомендуется устанавливать их уровень в файле конфигурации для согласованности. Параметр level полезен для масштабирования сложности арены.
rawArenaReward
Устанавливает награды, выдаваемые в конце волн.
Примечание: В исходном коде это поле также может упоминаться как rawArenaRewards (во множественном числе).
| Key | Values | Default |
|---|---|---|
rawArenaReward | Universal EliteMobs loot table | none |
Пример
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
- level=5:filename=summon_merchant_scroll.yml:wave=5
- filename=magmaguys_toothpick.yml:itemlevel=10:wave=10:chance=0.95
minimumPlayerCount
Устанавливает минимальное количество игроков, необходимое для начала арены.
| Key | Values | Default |
|---|---|---|
minimumPlayerCount | Integer | 1 |
Пример
minimumPlayerCount: 1
maximumPlayerCount
Устанавливает максимальное количество игроков, которое может быть на арене.
| Key | Values | Default |
|---|---|---|
maximumPlayerCount | Integer | 100 |
Пример
maximumPlayerCount: 100
arenaMessages
Устанавливает сообщения, которые появляются между волнами.
| Key | Values | Default |
|---|---|---|
arenaMessages | Special [3] | none |
Пример
arenaMessages:
- wave=1:message="&a[Arena Announcer] &fTime for wave one!"
- wave=2:message="&a[Arena Announcer] &fWow, wave two already."

cylindricalArena
Определяет, использует ли арена цилиндрическую форму (по умолчанию кубоид).
| Key | Values | Default |
|---|---|---|
cylindricalArena | Boolean | false |
Пример
cylindricalArena: false
permission
Устанавливает разрешение, необходимое для использования арены.
| Key | Values | Default |
|---|---|---|
permission | String | none |
Пример
permission: mypermission.arena
Special [1]
Точки спавна: Используют следующий формат: name=pointName:location=world_name,x,y,z.
Special [2]
Список боссов: Использует следующий формат: wave=x:spawnPoint=Y:boss=bossfilename.yml.
Special [3]
Сообщения арены: Используют следующий формат: wave=X:message=your message here.
Пример конфигурации арены
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
Разбор примера
Давайте рассмотрим этот пример сверху и объясним, что делает эта конфигурация арены.
Сначала арена включается с помощью isEnabled, и мы видим, что она называется Example Arena, используя настройку arenaName. Название будет отображаться, когда вы взаимодействуете с NPC арены (мы расскажем о создании NPC арены далее), который позволит игрокам присоединиться к арене. corner1 и corner2 определяют размер арены. Эти углы должны находиться на противоположных сторонах области, которую вы планируете использовать для арены.
startLocation - это место, где игроки появятся при присоединении к арене, в примере это будет центр арены в мире my_arena_world. exitLocation - это место, куда игроки будут телепортированы после провала или завершения арены. В данном случае это будет мир my_minecraft_world и координаты из примера.
waveCount просто устанавливает количество волн, которое продлится арена. В данном случае это будет 5 волн. Если игроки смогут пережить все 5 волн, они смогут пережить арену. delayBetweenWaves установит количество секунд до начала следующей волны. В нашем примере у игроков будет 5 секунд на подготовку перед началом следующей волны.
spawnPoints устанавливают локации, где могут появиться наши мобы. Мы можем сделать столько, сколько хотим, и назвать их как угодно. В примере мы решили создать 5 точек спавна и назвать их север, юг, центр, восток и запад.
bossList - это место, где мы определяем, какой босс должен появиться на какой волне и в какой локации. В примере волна 1 будет иметь 3 боссов, появляющихся из точек спавна, которые мы назвали север, центр и юг. Все три настроены на использование одного и того же файла босса, но мы могли бы использовать разные файлы боссов для каждого из них.
rawArenaReward устанавливает награды, которые будут выданы после того, как игрок переживёт/победит волну. Как мы видим в примере, победа в волне 1 наградит игрока 5 элитными монетами. Если они смогут пережить остальные волны, а затем победить волну 5, они будут вознаграждены 25 элитными монетами и 50% шансом получить MagmaGuy's Toothpick 5 уровня.
minimumPlayerCount устанавливает минимальное необходимое количество игроков для начала арены. В нашем примере эта настройка установлена на 1, поэтому для начала арены нужен только один игрок. maximumPlayerCount устанавливает максимальное количество игроков, которые могут участвовать в арене. В нашем примере эта настройка установлена на 3, что означает, что если более 3 игроков попытаются участвовать в арене, то арена не начнётся, пока не будет 3 или меньше игроков.
arenaMessages позволяет добавить интересный текст, который будет отображаться в чате в начале определённых волн. В нашем примере мы решили отображать короткое сообщение в начале каждой волны. Мы также решили включить имя NPC в начале каждого сообщения, создавая иллюзию, что текст является произнесённым диалогом диктора (мастера арены).
cylindricalArena эта настройка позволяет нам переключить, должна ли определённая область, которую мы установили с помощью corner1 и corner2, быть цилиндрической формы вместо кубоидной. В нашем примере мы установили это на false, что означает, что примерная арена имеет кубоидную форму.
permission позволяет нам установить разрешение, которое игроки должны иметь, чтобы иметь возможность присоединиться/начать арену. В нашем примере игрокам потребуется разрешение arena.mypermission, чтобы иметь возможность использовать арену.
Создание NPC арены
isEnabled
Определяет, включён ли NPC.
| Key | Values | Default |
|---|---|---|
isEnabled | Boolean | true |
Пример
isEnabled: true
name
Устанавливает отображаемое имя NPC.
| Key | Values | Default |
|---|---|---|
name | String | none |
Пример
name: "&aGladius"

role
Устанавливает отображение роли под именем NPC.
| Key | Values | Default |
|---|---|---|
role | String | none |
Пример
role: "&c<Arena Master>"

profession
Устанавливает профессию MineCraft для NPC.
| Key | Values | Default |
|---|---|---|
profession | Profession | none |
Пример
profession: ARMORER
Будет переопределено, если используется diguise.

spawnLocation
Устанавливает локацию спавна NPC.
| Key | Values | Default |
|---|---|---|
spawnLocation | Location | none |
Пример
spawnLocation: my_world,1.5,50,1.5,-108,0
greetings
Устанавливает приветственный диалог для NPC.
| Key | Values | Default |
|---|---|---|
greetings | String List | none |
Пример
greetings:
- Welcome to the Arena!
- The Arena welcomes you!

dialog
Устанавливает диалог при взаимодействии игроков с NPC.
| Key | Values | Default |
|---|---|---|
dialog | String List | none |
Пример
dialog:
- Ready for a challenge?
- Face the Arena?

farewell
Устанавливает, может ли NPC разговаривать с игроками.
| Key | Values | Default |
|---|---|---|
farewell | String List | none |
Пример
farewell:
- Bye.
- Return with your shield, or on it!

Если строка слишком длинная, вы можете использовать \n для разделения строки на несколько строк.
farewell:
- Bye.
- Return with your\nshield, or on it!

canTalk
Определяет, может ли NPC разговаривать с игроками.
| Key | Values | Default |
|---|---|---|
canTalk | Boolean | true |
Пример
canTalk: true
activationRadius
Устанавливает радиус, когда NPC должен начать говорить.
| Key | Values | Default |
|---|---|---|
activationRadius | Double | 3.0 |
Пример
activationRadius: 3.0
interactionType
Устанавливает тип взаимодействия, который будет выполнять NPC.
| Key | Values | Default |
|---|---|---|
interactionType | Special [4] | ARENA_MASTER |
Пример
interactionType: ARENA_MASTER
disguise
Устанавливает пользовательскую маскировку NPC.
| Key | Values | Default |
|---|---|---|
disguise | Disguise | none |
Пример
disguise: ZOMBIE

arena
Устанавливает, на какую арену будут телепортированы игроки.
| Key | Values | Default |
|---|---|---|
arena | Filename | none |
Пример
arena: my_arena.yml
teleportLocation
Устанавливает, куда игроки должны быть телепортированы после взаимодействия с NPC. Эта настройка обычно используется для телепортации игроков в специальную зону лобби арены, где они могут начать испытание арены или дождаться, пока другие игроки закончат прохождение арены.
| Key | Values | Default |
|---|---|---|
teleportLocation | Location | none |
Пример
teleportLocation: my_arena_world,10,50,10,0,0
Пример конфигурации арены
isEnabled: true
name: Example NPC
role: <Arena Master>
profession: ARMORER
spawnLocation: 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
Этот пример показывает базового NPC арены, который появится в my_minecraft_world с маскировкой зомби. Игроки могут взаимодействовать с этим NPC, чтобы принять вызов Example Arena.
Special [4]
Следующий список допустимых типов взаимодействия NPC:
| Type | Description |
|---|---|
GUILD_GREETER | Открыть меню гильдии авантюристов |
CHAT | Щелчок правой кнопкой мыши циклически переключает dialog |
CUSTOM_SHOP | Открывает меню пользовательского магазина |
PROCEDURALLY_GENERATED_SHOP | Открывает процедурно сгенерированный магазин |
BAR | Открывает меню бара |
ARENA | Открывает меню арены |
QUEST_GIVER | Открывает меню процедурно сгенерированных квестов |
CUSTOM_QUEST_GIVER | Открывает меню квеста для определённого квеста, установленного в questFilenames |
NONE | Нет взаимодействий |
SELL | Открывает меню продажи |
TELEPORT_BACK | Телепортирует игроков обратно в последнюю локацию в мире, не относящемся к elitemobs, где они находились |
SCRAPPER | Открывает меню утилизации |
SMELTER | Открывает меню плавки |
REPAIRMAN | Открывает меню ремонта |
ENHANCER | Открывает меню улучшения предметов |
REFINER | Открывает меню переработки |
UNBINDER | Открывает меню отвязки |
ARENA_MASTER | Открывает меню арены для арены, установленной в arenaFilename |
COMMAND | Выполняет команду, установленную в command |
