Saltar al contenido principal

Crear Arenas

webapp_banner.jpg

Crear arenas

isEnabled

Establece si la arena está habilitada.

KeyValoresPredeterminado
isEnabledBooleantrue
Ejemplo
isEnabled: true

arenaName

Establece el nombre de la arena.

KeyValoresPredeterminado
arenaNameStringDefault name
Ejemplo
arenaName: Bedrock Arena

create_arena_name.jpg


corner1

Establece la primera esquina de la arena.

KeyValoresPredeterminado
corner1Locationninguno
Ejemplo
corner1: my_arena_world,10,50,-10,0,0

El formato de la ubicación es: world_name,x,y,z,yaw,pitch donde world_name es el nombre del mundo, x/y/z son las coordenadas, yaw es la rotación horizontal (0-360) y pitch es la rotación vertical (-90 a 90).

En esta imagen, corner1 está representada por lana verde y corner2 está representada por lana roja. Esta configuración designa el área entre ellas como la arena, representada por lana amarilla.

create_arena_corner.jpg


corner2

Establece la segunda esquina de la arena, que debe estar en la esquina opuesta a corner1. Estas dos esquinas definen los límites del espacio de tu arena.

KeyValoresPredeterminado
corner2Locationninguno
Ejemplo
corner2: my_arena_world,-10,50,10,0,0

En esta imagen, corner1 está representada por lana verde y corner2 está representada por lana roja. Esta configuración designa el área entre ellas como la arena, representada por lana amarilla.

create_arena_corner.jpg


startLocation

Establece la ubicación de inicio de la arena.

KeyValoresPredeterminado
startLocationLocationninguno
Ejemplo
startLocation: my_arena_world,1,50,1,0,0

exitLocation

Establece la ubicación de salida de la arena.

KeyValoresPredeterminado
exitLocationLocationninguno
Ejemplo
exitLocation: my_world,1,50,1,0,0

waveCount

Establece la cantidad de oleadas que tiene la arena.

KeyValoresPredeterminado
waveCountInteger0
Ejemplo
waveCount: 10

delayBetweenWaves

Establece el retraso, en segundos, entre oleadas.

KeyValoresPredeterminado
delayBetweenWavesInteger0
Ejemplo
delayBetweenWaves: 5

rawIntermissionWaves

Duplica el retraso entre oleadas para las oleadas especificadas en la lista. El retraso será delayBetweenWaves * 2 para estas oleadas. Útil si quieres dar a los jugadores un breve respiro entre oleadas específicas.

KeyValoresPredeterminado
rawIntermissionWavesInteger Listninguno
Ejemplo
rawIntermissionWaves:
- '5'
- '10'
- '15'

spawnPoints

Establece las ubicaciones de aparición de los jefes de la arena.

KeyValoresPredeterminado
spawnPointsString List [1]ninguno
Ejemplo
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

Establece la lista de jefes que aparecen durante las oleadas de la arena. Las Arenas de EliteMobs sí admiten la aparición de Mythic Mobs en las arenas.

KeyValoresPredeterminado
bossListString List [2]ninguno
Ejemplo
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

En este ejemplo, la oleada 1 hará aparecer un jefe en el punto de aparición norte y un jefe en el punto de aparición sur. Luego, en la oleada 2, aparecerá un jefe mítico, de nivel 10, en el punto central.

Ten en cuenta que también puedes forzar un nivel para los jefes de EliteMobs usando el parámetro level (por ejemplo, level=10), pero se recomienda que establezcas su nivel en su archivo de configuración para mantener la consistencia. El parámetro level es útil para escalar la dificultad de la arena.


rawArenaReward

Establece las recompensas otorgadas al final de las oleadas.

Nota: En el código fuente, este campo también puede aparecer referenciado como rawArenaRewards (en plural).

KeyValoresPredeterminado
rawArenaRewardTabla de botín universal de EliteMobsninguno
Ejemplo
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

Establece la cantidad mínima de jugadores que debe tener una arena antes de comenzar.

KeyValoresPredeterminado
minimumPlayerCountInteger1
Ejemplo
minimumPlayerCount: 1

maximumPlayerCount

Establece la cantidad máxima de jugadores que puede tener una arena.

KeyValoresPredeterminado
maximumPlayerCountInteger0
Ejemplo
maximumPlayerCount: 100

arenaMessages

Establece los mensajes que se ejecutan entre oleadas.

KeyValoresPredeterminado
arenaMessagesEspecial [3]ninguno
Ejemplo
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

Establece si la arena usa una forma cilíndrica (el valor predeterminado es cuboide).

KeyValoresPredeterminado
cylindricalArenaBooleanfalse
Ejemplo
cylindricalArena: false

permission

Establece el permiso requerido para usar la arena.

KeyValoresPredeterminado
permissionStringninguno
Ejemplo
permission: mypermission.arena

teleportLocation

Establece a dónde se debe teletransportar a los jugadores tras interactuar con el NPC de la arena. Este ajuste se usa normalmente para teletransportar a los jugadores a una zona dedicada de tipo vestíbulo (lobby) de la arena, donde pueden iniciar el desafío de la arena o esperar a que otros jugadores terminen de recorrerla.

KeyValoresPredeterminado
teleportLocationLocationninguno
Ejemplo
teleportLocation: my_arena_world,10,50,10,0,0

Especial [1]

Puntos de aparición: Usa el siguiente formato: name=pointName:location=world_name,x,y,z.

Especial [2]

Lista de jefes: Usa el siguiente formato: wave=x:spawnPoint=Y:boss=bossfilename.yml.

Especial [3]

Mensajes de arena: Usa el siguiente formato: wave=X:message=tu mensaje aquí.

Ejemplo de configuración 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
Desglose del ejemplo

Repasemos este ejemplo desde el principio y expliquemos qué hace esta configuración de arena.

Primero la arena se habilita con isEnabled, y podemos ver que se llama Example Arena usando el ajuste arenaName. El nombre se mostrará cuando interactúes con el NPC de la arena (hablamos de cómo crear un NPC de arena más abajo) que permitirá a los jugadores unirse a la arena. corner1 y corner2 definen el tamaño de la arena. Estas esquinas deben estar en lados opuestos entre sí en el área que planeas usar para la arena.

startLocation es donde aparecerán los jugadores al unirse a la arena, en el ejemplo eso sería en el centro de la arena en el mundo my_arena_world. exitLocation es donde se teletransportará a los jugadores después de que fracasen o terminen la arena. En este caso sería el mundo my_minecraft_world y las coordenadas del ejemplo.

waveCount simplemente establece la cantidad de oleadas que durará la arena. En este caso serían 5 oleadas. Si los jugadores logran sobrevivir las 5 oleadas, han logrado sobrevivir a la arena. delayBetweenWaves establecerá la cantidad de segundos antes de que comience la siguiente oleada. En nuestro ejemplo, los jugadores tendrían 5 segundos para prepararse antes de que comience la siguiente oleada.

spawnPoints establece las ubicaciones donde pueden aparecer nuestros mobs. Podemos crear tantas como queramos y nombrarlas como queramos. En el ejemplo hemos decidido crear 5 puntos de aparición y nombrarlos norte, sur, centro, este y oeste.

bossList es donde definimos qué jefe debe aparecer en qué oleada y en qué ubicación. En el ejemplo, la oleada 1 tendrá 3 jefes apareciendo en las ubicaciones de aparición que nombramos norte, centro y sur. Los tres están configurados para usar el mismo archivo de jefe, pero podríamos haber usado archivos de jefe diferentes para cada uno.

rawArenaReward establece las recompensas que se entregarán después de que un jugador logre sobrevivir/superar una oleada. Como podemos ver en el ejemplo, superar la oleada 1 recompensará al jugador con 5 monedas elite. Si logran sobrevivir al resto de las oleadas y luego superan la oleada 5, serán recompensados con 25 monedas elite y un 50% de probabilidad de obtener un MagmaGuy's Toothpick de nivel 5.

minimumPlayerCount establece la cantidad mínima requerida de jugadores necesarios antes de que comience la arena. En nuestro ejemplo este ajuste está en 1, por lo que solo se necesita un jugador para que la arena comience. maximumPlayerCount establece la cantidad máxima de jugadores que pueden participar en la arena. En nuestro ejemplo este ajuste está en 3, lo que significa que si más de 3 jugadores intentan participar en la arena, la arena no comenzará hasta que haya 3 jugadores o menos.

arenaMessages te permite añadir algo de texto ambiental que se mostrará en el chat al comienzo de las oleadas definidas. En nuestro ejemplo hemos decidido mostrar un breve mensaje al comienzo de cada oleada. También hemos decidido incluir el nombre del NPC al comienzo de cada mensaje dando la ilusión de que el texto es un diálogo hablado por el anunciador (maestro de arena).

cylindricalArena este ajuste nos permitirá alternar si el área definida que hemos establecido con corner1 y corner2 debe tener una forma cilíndrica en lugar de cuboide. En nuestro ejemplo lo hemos establecido en false, lo que significa que la arena de ejemplo tiene forma cuboide.

permission nos permite establecer un permiso que los jugadores necesitarán tener para poder unirse/iniciar la arena. En nuestro ejemplo, los jugadores necesitarán el permiso arena.mypermission para poder usar la arena.

Crear el NPC de la Arena

isEnabled

Establece si el NPC está habilitado.

KeyValoresPredeterminado
isEnabledBooleantrue
Ejemplo
isEnabled: true

name

Establece el nombre visible del NPC.

KeyValoresPredeterminado
nameStringninguno
Ejemplo
name: "&aGladius"

create_arena_npc_name.jpg


role

Establece el rol que se muestra bajo el nombre del NPC.

KeyValoresPredeterminado
roleStringninguno
Ejemplo
role: "&c<Arena Master>"

create_arena_npc_role.jpg


profession

Establece la profesión de Minecraft del NPC.

KeyValoresPredeterminado
professionProfessionNITWIT
Ejemplo
profession: ARMORER

Se sobrescribirá si se usa un disguise.

create_arena_npc_profession.jpg


spawnLocation

Establece la ubicación de aparición del NPC.

KeyValoresPredeterminado
spawnLocationLocationninguno
Ejemplo
spawnLocation: my_world,1.5,50,1.5,-108,0

spawnLocations

Establece ubicaciones de aparición adicionales para el NPC. Esto permite que una sola configuración de NPC aparezca en varias ubicaciones.

KeyValoresPredeterminado
spawnLocationsString Listninguno
Ejemplo
spawnLocations:
- my_world,1.5,50,1.5,-108,0
- my_world,100.5,50,50.5,0,0

greetings

Establece el diálogo de saludo del NPC.

KeyValoresPredeterminado
greetingsString Listninguno
Ejemplo
greetings:
- Welcome to the Arena!
- The Arena welcomes you!

create_arena_npc_greetings.jpg


dialog

Establece el diálogo cuando los jugadores interactúan con el NPC.

KeyValoresPredeterminado
dialogString Listninguno
Ejemplo
dialog:
- Ready for a challenge?
- Face the Arena?

create_arena_npc_dialog.jpg


farewell

Establece el diálogo de despedida del NPC, que se muestra cuando un jugador se aleja.

KeyValoresPredeterminado
farewellString Listninguno
Ejemplo
farewell:
- Bye.
- Return with your shield, or on it!

create_arena_npc_farewell.jpg

Si una cadena es demasiado larga puedes usar \n para separar la cadena en varias líneas.

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

create_arena_npc_lines.jpg


canTalk

Establece si el NPC puede hablar con los jugadores.

KeyValoresPredeterminado
canTalkBooleantrue
Ejemplo
canTalk: true

activationRadius

Establece el radio dentro del cual el NPC debe comenzar a hablar.

KeyValoresPredeterminado
activationRadiusDouble3.0
Ejemplo
activationRadius: 3.0

timeout

Establece el tiempo de espera del NPC, en segundos. Cuando se establece, el NPC desaparecerá después del tiempo especificado.

KeyValoresPredeterminado
timeoutDouble0
Ejemplo
timeout: 60

interactionType

Establece el tipo de interacción que realizará el NPC.

KeyValoresPredeterminado
interactionTypeEspecial [4]NONE
Ejemplo
interactionType: ARENA_MASTER

disguise

Establece el disfraz personalizado del NPC.

KeyValoresPredeterminado
disguiseDisguiseninguno
Ejemplo
disguise: ZOMBIE

create_arena_npc_disguise.jpg


customDisguiseData

Establece los datos del disfraz personalizado para un disfraz de LibsDisguises. Esto permite una personalización detallada del disfraz más allá del ajuste básico disguise.

KeyValoresPredeterminado
customDisguiseDataStringninguno
Ejemplo
customDisguiseData: player MHF_Pig

customModel

Establece el modelo personalizado a usar para el NPC. Requiere que haya un plugin de modelos personalizados válido instalado y configurado.

KeyValoresPredeterminado
customModelStringninguno
Ejemplo
customModel: my_model

arena

Establece a qué arena se teletransportará a los jugadores.

KeyValoresPredeterminado
arenaFilenameninguno
Ejemplo
arena: my_arena.yml

command

Establece el comando que ejecutará el NPC al interactuar con él. Requiere que interactionType esté configurado como COMMAND.

KeyValoresPredeterminado
commandStringninguno
Ejemplo
command: say Hello $player

questFileName

Establece los nombres de archivo de las misiones del NPC. Requiere que interactionType esté configurado como CUSTOM_QUEST_GIVER.

KeyValoresPredeterminado
questFileNameString Listninguno
Ejemplo
questFileName:
- my_quest_1.yml
- my_quest_2.yml

noPreviousLocationMessage

Cuando el interactionType está configurado como TELEPORT_BACK, esto establece el mensaje que se envía si el NPC no puede encontrar una ubicación anterior a la que teletransportar al jugador.

KeyValoresPredeterminado
noPreviousLocationMessageStringninguno
Ejemplo
noPreviousLocationMessage: '&cCouldn''t find a previous location!'

instanced

Establece si el NPC debe estar instanciado. Esto se usa para NPCs dentro de mazmorras instanciadas.

KeyValoresPredeterminado
instancedBooleanfalse
Ejemplo
instanced: false

scale

Establece la escala (tamaño) del NPC.

KeyValoresPredeterminado
scaleDouble1.0
Ejemplo
scale: 1.0

syncMovement

Establece si el movimiento del NPC debe sincronizarse con el servidor.

KeyValoresPredeterminado
syncMovementBooleantrue
Ejemplo
syncMovement: true

Ejemplo de configuración 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 ejemplo muestra un NPC de Arena básico que aparecerá en my_minecraft_world con un disfraz de zombi. Los jugadores pueden interactuar con este NPC para desafiar la Example Arena.

Especial [4]

La siguiente es la lista de tipos de interacción de NPC válidos:

TipoDescripción
GUILD_GREETERAbre el menú del gremio de aventureros
CHATEl clic derecho recorre el dialog
CUSTOM_SHOPAbre el menú de la tienda personalizada
PROCEDURALLY_GENERATED_SHOPAbre la tienda generada proceduralmente
BARAbre el menú del bar
ARENANo hace nada. Usa ARENA_MASTER en su lugar.
QUEST_GIVERAbre el menú de misiones generadas proceduralmente
CUSTOM_QUEST_GIVERAbre el menú de misiones para una misión específica establecida en questFileName
NONESin interacciones
SELLAbre el menú de venta
TELEPORT_BACKTeletransporta a los jugadores de vuelta a la última ubicación de mundo no perteneciente a elitemobs en la que estuvieron
SCRAPPERAbre el menú de desguace
SMELTEROBSOLETO - Característica eliminada, no usar
REPAIRMANAbre el menú de reparación
ENHANCEROBSOLETO - Característica eliminada, no usar
REFINEROBSOLETO - Característica eliminada, no usar
UNBINDERAbre el menú de desvinculación
ARENA_MASTERAbre el menú de la arena establecida en arena
COMMANDEjecuta el comando establecido en command
ENCHANTERAbre el menú de encantamiento
SCROLL_APPLIERAbre el menú de aplicación de pergaminos
ARROW_SHOPAbre el menú de la tienda de flechas
GAMBLING_BLACKJACKAbre el juego de apuestas de blackjack
GAMBLING_COINFLIPAbre el juego de apuestas de cara o cruz
GAMBLING_SLOTSAbre el juego de apuestas de tragaperras
GAMBLING_HIGHERLOWERAbre el juego de apuestas de mayor/menor