Pular para o conteúdo principal

Criar Arenas

webapp_banner.jpg

Criando arenas

isEnabled

Define se a arena está ativada.

ChaveValoresPadrão
isEnabledBooleantrue
Exemplo
isEnabled: true

arenaName

Define o nome da arena.

ChaveValoresPadrão
arenaNameStringDefault name
Exemplo
arenaName: Bedrock Arena

create_arena_name.jpg


corner1

Define o primeiro canto da arena.

ChaveValoresPadrão
corner1Locationnenhum
Exemplo
corner1: my_arena_world,10,50,-10,0,0

O formato da localização é: world_name,x,y,z,yaw,pitch, onde world_name é o nome do mundo, x/y/z são as coordenadas, yaw é a rotação horizontal (0-360) e pitch é a rotação vertical (-90 a 90).

Nesta imagem, corner1 é representado por lã verde e corner2 é representado por lã vermelha. Esta configuração designa a área entre eles como a arena, representada por lã amarela.

create_arena_corner.jpg


corner2

Define o segundo canto da arena, que deve estar no canto oposto ao corner1. Esses dois cantos definem os limites do espaço da sua arena.

ChaveValoresPadrão
corner2Locationnenhum
Exemplo
corner2: my_arena_world,-10,50,10,0,0

Nesta imagem, corner1 é representado por lã verde e corner2 é representado por lã vermelha. Esta configuração designa a área entre eles como a arena, representada por lã amarela.

create_arena_corner.jpg


startLocation

Define a localização inicial da arena.

ChaveValoresPadrão
startLocationLocationnenhum
Exemplo
startLocation: my_arena_world,1,50,1,0,0

exitLocation

Define a localização de saída da arena.

ChaveValoresPadrão
exitLocationLocationnenhum
Exemplo
exitLocation: my_world,1,50,1,0,0

waveCount

Define a quantidade de ondas que a arena tem.

ChaveValoresPadrão
waveCountInteger0
Exemplo
waveCount: 10

delayBetweenWaves

Define o atraso, em segundos, entre as ondas.

ChaveValoresPadrão
delayBetweenWavesInteger0
Exemplo
delayBetweenWaves: 5

rawIntermissionWaves

Dobra o atraso entre as ondas para as ondas especificadas na lista. O atraso será delayBetweenWaves * 2 para essas ondas. Útil se você quiser dar aos jogadores uma breve pausa entre ondas específicas.

ChaveValoresPadrão
rawIntermissionWavesInteger Listnenhum
Exemplo
rawIntermissionWaves:
- '5'
- '10'
- '15'

spawnPoints

Define as localizações de spawn dos bosses da arena.

ChaveValoresPadrão
spawnPointsString List [1]nenhum
Exemplo
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

Define a lista de bosses que aparecem durante as ondas da arena. As Arenas do EliteMobs suportam o spawn de Mythic Mobs nas arenas.

ChaveValoresPadrão
bossListString List [2]nenhum
Exemplo
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

Neste exemplo, a onda 1 spawnará um boss no ponto de spawn norte e um boss no ponto de spawn sul. Depois, na onda 2, um boss mythic spawnará, no nível 10, no ponto central.

Note que você também pode forçar um nível para os bosses do EliteMobs usando o parâmetro level (por exemplo, level=10), mas é recomendado definir o nível deles no arquivo de configuração para manter a consistência. O parâmetro level é útil para escalar a dificuldade da arena.


rawArenaReward

Define as recompensas concedidas ao final das ondas.

Nota: No código-fonte, este campo também pode ser referenciado como rawArenaRewards (plural).

ChaveValoresPadrão
rawArenaRewardTabela de loot universal do EliteMobsnenhum
Exemplo
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

Define a quantidade mínima de jogadores que uma arena deve ter antes de iniciar.

ChaveValoresPadrão
minimumPlayerCountInteger1
Exemplo
minimumPlayerCount: 1

maximumPlayerCount

Define a quantidade máxima de jogadores que uma arena pode ter.

ChaveValoresPadrão
maximumPlayerCountInteger0
Exemplo
maximumPlayerCount: 100

arenaMessages

Define as mensagens que aparecem entre as ondas.

ChaveValoresPadrão
arenaMessagesEspecial [3]nenhum
Exemplo
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

Define se a arena usa um formato cilíndrico (o padrão é cuboide).

ChaveValoresPadrão
cylindricalArenaBooleanfalse
Exemplo
cylindricalArena: false

permission

Define a permissão necessária para usar a arena.

ChaveValoresPadrão
permissionStringnenhum
Exemplo
permission: mypermission.arena

teleportLocation

Define para onde os jogadores devem ser teleportados após interagir com o NPC da arena. Esta configuração normalmente é usada para teleportar os jogadores para uma área dedicada do tipo lobby da arena, onde eles podem iniciar o desafio da arena ou esperar que outros jogadores terminem de passar pela arena.

ChaveValoresPadrão
teleportLocationLocationnenhum
Exemplo
teleportLocation: my_arena_world,10,50,10,0,0

Especial [1]

Pontos de spawn: Usam o seguinte formato: name=pointName:location=world_name,x,y,z.

Especial [2]

Lista de bosses: Usa o seguinte formato: wave=x:spawnPoint=Y:boss=bossfilename.yml.

Especial [3]

Mensagens da arena: Usam o seguinte formato: wave=X:message=sua mensagem aqui.

Exemplo de Configuração de Arena
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
Análise detalhada do exemplo

Vamos analisar este exemplo de cima para baixo e explicar o que essa configuração de arena faz.

Primeiro, a arena é ativada com isEnabled, e podemos ver que ela se chama Example Arena usando a configuração arenaName. O nome será mostrado quando você interagir com o NPC da arena (falamos sobre como criar um NPC de arena mais adiante) que permitirá aos jogadores entrar na arena. corner1 e corner2 definem o tamanho da arena. Esses cantos devem estar em lados opostos um do outro na área que você planeja usar para a arena.

startLocation é onde os jogadores irão spawnar ao entrar na arena; no exemplo, isso seria no centro da arena no mundo my_arena_world. exitLocation é para onde os jogadores serão teleportados depois que falharem ou terminarem a arena. Neste caso, seria o mundo my_minecraft_world e as coordenadas do exemplo.

waveCount simplesmente define a quantidade de ondas que a arena terá. Neste caso, seriam 5 ondas. Se os jogadores conseguirem sobreviver a todas as 5 ondas, eles conseguiram sobreviver à arena. delayBetweenWaves definirá a quantidade de segundos antes do início da próxima onda. Em nosso exemplo, os jogadores teriam 5 segundos para se preparar antes do início da próxima onda.

spawnPoints define as localizações onde podemos fazer nossos mobs spawnarem. Podemos criar quantas quisermos e nomeá-las como quisermos. No exemplo, decidimos criar 5 pontos de spawn e nomeá-los como north, south, center, east e west.

bossList é onde definimos qual boss deve spawnar em qual onda e em qual localização. No exemplo, a onda 1 terá 3 bosses spawnando nas localizações de spawn que chamamos de north, center e south. Todos os três estão configurados para usar o mesmo arquivo de boss, mas poderíamos ter usado arquivos de boss diferentes para cada um.

rawArenaReward define as recompensas que serão entregues depois que um jogador conseguir sobreviver/vencer uma onda. Como podemos ver no exemplo, vencer a onda 1 recompensará o jogador com 5 moedas de elite. Se ele conseguir sobreviver ao restante das ondas e então vencer a onda 5, será recompensado com 25 moedas de elite e 50% de chance de obter um MagmaGuy's Toothpick de nível 5.

minimumPlayerCount define a quantidade mínima necessária de jogadores antes que a arena comece. Em nosso exemplo, esta configuração está definida como 1, então apenas um jogador é necessário para que a arena comece. maximumPlayerCount define a quantidade máxima de jogadores que podem participar da arena. Em nosso exemplo, esta configuração está definida como 3, o que significa que se mais de 3 jogadores tentarem participar da arena, então a arena não começará até que haja 3 jogadores ou menos.

arenaMessages permite que você adicione um pouco de texto de ambientação que será exibido no chat no início das ondas definidas. Em nosso exemplo, decidimos exibir uma breve mensagem no início de cada onda. Também decidimos incluir o nome do NPC no início de cada mensagem, dando a ilusão de que o texto é um diálogo falado pelo locutor (mestre da arena).

cylindricalArena esta configuração nos permite alternar se a área definida que estabelecemos com corner1 e corner2 deve ter um formato cilíndrico em vez de cuboide. Em nosso exemplo, definimos isso como false, o que significa que a arena de exemplo tem um formato cuboide.

permission nos permite definir uma permissão que os jogadores precisarão ter para conseguir entrar/iniciar a arena. Em nosso exemplo, os jogadores precisarão da permissão arena.mypermission para conseguir usar a arena.

Criando o NPC da Arena

isEnabled

Define se o NPC está ativado.

ChaveValoresPadrão
isEnabledBooleantrue
Exemplo
isEnabled: true

name

Define o nome de exibição do NPC.

ChaveValoresPadrão
nameStringnenhum
Exemplo
name: "&aGladius"

create_arena_npc_name.jpg


role

Define o cargo (role) exibido sob o nome do NPC.

ChaveValoresPadrão
roleStringnenhum
Exemplo
role: "&c<Arena Master>"

create_arena_npc_role.jpg


profession

Define a profissão do Minecraft do NPC.

ChaveValoresPadrão
professionProfessionNITWIT
Exemplo
profession: ARMORER

Será sobrescrita se um disguise for usado.

create_arena_npc_profession.jpg


spawnLocation

Define a localização de spawn do NPC.

ChaveValoresPadrão
spawnLocationLocationnenhum
Exemplo
spawnLocation: my_world,1.5,50,1.5,-108,0

spawnLocations

Define localizações de spawn adicionais para o NPC. Isso permite que uma única configuração de NPC spawne em múltiplas localizações.

ChaveValoresPadrão
spawnLocationsString Listnenhum
Exemplo
spawnLocations:
- my_world,1.5,50,1.5,-108,0
- my_world,100.5,50,50.5,0,0

greetings

Define os diálogos de saudação do NPC.

ChaveValoresPadrão
greetingsString Listnenhum
Exemplo
greetings:
- Welcome to the Arena!
- The Arena welcomes you!

create_arena_npc_greetings.jpg


dialog

Define o diálogo quando os jogadores interagem com o NPC.

ChaveValoresPadrão
dialogString Listnenhum
Exemplo
dialog:
- Ready for a challenge?
- Face the Arena?

create_arena_npc_dialog.jpg


farewell

Define o diálogo de despedida do NPC, mostrado quando um jogador se afasta.

ChaveValoresPadrão
farewellString Listnenhum
Exemplo
farewell:
- Bye.
- Return with your shield, or on it!

create_arena_npc_farewell.jpg

Se uma string for muito longa, você pode usar \n para separar a string em várias linhas.

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

create_arena_npc_lines.jpg


canTalk

Define se o NPC pode falar com os jogadores.

ChaveValoresPadrão
canTalkBooleantrue
Exemplo
canTalk: true

activationRadius

Define o raio a partir do qual o NPC deve começar a falar.

ChaveValoresPadrão
activationRadiusDouble3.0
Exemplo
activationRadius: 3.0

timeout

Define o tempo limite do NPC, em segundos. Quando definido, o NPC desaparecerá após o tempo especificado.

ChaveValoresPadrão
timeoutDouble0
Exemplo
timeout: 60

interactionType

Define o tipo de interação que o NPC fará.

ChaveValoresPadrão
interactionTypeEspecial [4]NONE
Exemplo
interactionType: ARENA_MASTER

disguise

Define o disfarce customizado do NPC.

ChaveValoresPadrão
disguiseDisguisenenhum
Exemplo
disguise: ZOMBIE

create_arena_npc_disguise.jpg


customDisguiseData

Define os dados de disfarce customizado para um disfarce do LibsDisguises. Isso permite uma customização detalhada do disfarce além da configuração básica disguise.

ChaveValoresPadrão
customDisguiseDataStringnenhum
Exemplo
customDisguiseData: player MHF_Pig

customModel

Define o modelo customizado a ser usado pelo NPC. Requer que um plugin de modelo customizado válido esteja instalado e configurado.

ChaveValoresPadrão
customModelStringnenhum
Exemplo
customModel: my_model

arena

Define para qual arena os jogadores serão teleportados.

ChaveValoresPadrão
arenaFilenamenenhum
Exemplo
arena: my_arena.yml

command

Define o comando que o NPC executará ao ser interagido. Requer que interactionType esteja definido como COMMAND.

ChaveValoresPadrão
commandStringnenhum
Exemplo
command: say Hello $player

questFileName

Define os nomes de arquivo de quest do NPC. Requer que interactionType esteja definido como CUSTOM_QUEST_GIVER.

ChaveValoresPadrão
questFileNameString Listnenhum
Exemplo
questFileName:
- my_quest_1.yml
- my_quest_2.yml

noPreviousLocationMessage

Quando o interactionType está definido como TELEPORT_BACK, isto define a mensagem que é enviada se o NPC não conseguir encontrar uma localização anterior para a qual teleportar o jogador.

ChaveValoresPadrão
noPreviousLocationMessageStringnenhum
Exemplo
noPreviousLocationMessage: '&cCouldn''t find a previous location!'

instanced

Define se o NPC deve ser instanciado. Isto é usado para NPCs dentro de dungeons instanciadas.

ChaveValoresPadrão
instancedBooleanfalse
Exemplo
instanced: false

scale

Define a escala (tamanho) do NPC.

ChaveValoresPadrão
scaleDouble1.0
Exemplo
scale: 1.0

syncMovement

Define se o NPC deve ter seu movimento sincronizado com o servidor.

ChaveValoresPadrão
syncMovementBooleantrue
Exemplo
syncMovement: true

Exemplo de Configuração de Arena
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

Este exemplo mostra um NPC de Arena básico que spawnará em my_minecraft_world com um disfarce de zumbi. Os jogadores podem interagir com este NPC para desafiar a Example Arena.

Especial [4]

A seguir está a lista de tipos de interação de NPC válidos:

TipoDescrição
GUILD_GREETERAbre o menu da guilda dos aventureiros
CHATClicar com o botão direito alterna pelo dialog
CUSTOM_SHOPAbre o menu da loja customizada
PROCEDURALLY_GENERATED_SHOPAbre a loja gerada proceduralmente
BARAbre o menu da taverna
ARENANão faz nada. Use ARENA_MASTER em vez disso.
QUEST_GIVERAbre o menu de quests geradas proceduralmente
CUSTOM_QUEST_GIVERAbre o menu de quest para uma quest específica definida em questFileName
NONESem interações
SELLAbre o menu de venda
TELEPORT_BACKTeleporta os jogadores de volta para a última localização em que estiveram em um mundo que não seja do elitemobs
SCRAPPERAbre o menu de sucata
SMELTERDESCONTINUADO - Recurso removido, não use
REPAIRMANAbre o menu de reparo
ENHANCERDESCONTINUADO - Recurso removido, não use
REFINERDESCONTINUADO - Recurso removido, não use
UNBINDERAbre o menu de desvinculação
ARENA_MASTERAbre o menu da arena para a arena definida em arena
COMMANDExecuta o comando definido em command
ENCHANTERAbre o menu de encantamento
SCROLL_APPLIERAbre o menu de aplicação de pergaminhos
ARROW_SHOPAbre o menu da loja de flechas
GAMBLING_BLACKJACKAbre o jogo de apostas de blackjack
GAMBLING_COINFLIPAbre o jogo de apostas de cara ou coroa
GAMBLING_SLOTSAbre o jogo de apostas de caça-níquel
GAMBLING_HIGHERLOWERAbre o jogo de apostas de maior/menor