Crear Arenas
Crear arenas
Crea un archivo .yml con nombre único en plugins/EliteMobs/customarenas y ejecuta /em reload cuando sus mundos y contenidos estén cargados. Las referencias usan el nombre completo, incluida la extensión .yml. Define todas las oleadas desde 1 hasta un waveCount positivo y haz referencia solo a puntos de aparición definidos en el archivo. EliteMobs lo comprueba al cargar la arena: una oleada ausente, una oleada por encima de waveCount, un punto de aparición desconocido o una entrada mal formada en spawnPoints o bossList registra una advertencia y la arena no se carga. Durante una partida, si algún mob de una oleada no consigue aparecer, la partida termina en derrota.
Entrar e iniciar una arena
Una arena utiliza una región física existente; no clona un mundo por grupo. Interactuar con su NPC abre un menú. El botón de jugador solo admite participantes mientras la partida espera, queda espacio, tienen el permiso configurado y no están en otra partida. Al comenzar la cuenta atrás se cierra la admisión.
Tras entrar, los jugadores llegan a teleportLocation, o a startLocation si no hay vestíbulo. Un participante con elitemobs.instance.start puede usar /em start cuando se alcance minimumPlayerCount. La cuenta atrás comprueba de nuevo ese mínimo y después lleva a los participantes a startLocation y prepara la oleada 1. Usa /em quit para salir como jugador o espectador.
Mantén el inicio, el vestíbulo y los puntos de aparición dentro de la región, sobre suelo seguro. El control de límites también funciona durante la espera y devuelve a jugadores y espectadores que salgan. Durante el combate expulsa a los intrusos salvo que tengan elitemobs.*. Los teletransportes ordinarios están restringidos mientras se pertenece a la partida; usa el comando de salida.
allowSpectatorsInInstancedContent, en dungeons.yml, controla el botón de espectador y las reanimaciones. Si está habilitado, un jugador abatido puede esperar como espectador a que un compañero golpee su estandarte; el contador permite tres reanimaciones. Si no quedan jugadores activos, la partida termina en derrota. Si está deshabilitado, el jugador abatido sale inmediatamente. Los espectadores no reciben recompensas de oleada y, al dejar ese modo, pasan a Supervivencia.
La siguiente oleada comienza cuando todos los enemigos registrados de la oleada mueren o dejan de ser válidos; no es necesario que cada desaparición sea una muerte causada por un jugador. La última oleada entrega sus recompensas y termina la partida. El reinicio elimina los mobs restantes y los estandartes, devuelve a los participantes y libera la arena. La preparación usa segundos, pero el reinicio posterior a la partida utiliza actualmente ese mismo valor numérico en ticks.
arenaContainer
Usa arenaContainer: another_arena.yml para compartir una arena física entre varias definiciones de partida. La arena referenciada debe estar habilitada y aporta esquinas, inicio, salida, vestíbulo, puntos de aparición y forma cilíndrica. El archivo actual conserva oleadas, recompensas, mensajes, permiso y límites de jugadores. Solo una partida puede ocupar la arena compartida, incluso al admitir jugadores o espectadores antes del combate. Se libera al reiniciar o cancelar una admisión vacía. Se permiten cadenas de referencias, pero se rechazan referencias inexistentes y ciclos. Omite esta clave si la arena tiene geometría propia.
isEnabled
Establece si la arena está habilitada.
| Clave | Valores | Predeterminado |
|---|---|---|
isEnabled | Boolean | true |
Ejemplo
isEnabled: true
arenaName
Establece el nombre de la arena.
| Clave | Valores | Predeterminado |
|---|---|---|
arenaName | String | ninguno — establécelo |
Configura siempre arenaName explícitamente. Si lo omites, la arena queda sin nombre visible.
Ejemplo
arenaName: Bedrock Arena

corner1
Establece la primera esquina de la arena.
| Clave | Valores | Predeterminado |
|---|---|---|
corner1 | Location | ninguno |
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). También se acepta la forma abreviada world_name,x,y,z, que deja tanto yaw como pitch en 0.
Las arenas pendientes se reintentan cuando se carga el mundo de corner1. Si el mundo de salida es distinto y se carga después, ese evento no reintenta la arena; ejecuta /em reload cuando todos los mundos referenciados estén cargados.
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.

corner2
Establece la esquina opuesta. Incluye toda la altura además de X/Z: dos esquinas con la misma Y producen una región sin altura. Ambas esquinas y startLocation deben pertenecer al mismo mundo.
| Clave | Valores | Predeterminado |
|---|---|---|
corner2 | Location | ninguno |
Ejemplo
corner2: my_arena_world,-10,80,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.

startLocation
Establece dónde comienza el combate y dónde entran los espectadores. Sin teleportLocation, los jugadores también esperan aquí. Usa suelo seguro dentro de la región.
| Clave | Valores | Predeterminado |
|---|---|---|
startLocation | Location | ninguno |
Ejemplo
startLocation: my_arena_world,1,50,1,0,0
exitLocation
Destino para salidas normales, limpieza y expulsión de intrusos. Debe estar fuera de la arena. Un jugador eliminado por daño letal puede volver a su ubicación guardada anterior a la entrada.
| Clave | Valores | Predeterminado |
|---|---|---|
exitLocation | Location | ninguno |
Ejemplo
exitLocation: my_world,1,50,1,0,0
waveCount
Número de oleadas. Usa un entero positivo y añade al menos una entrada de jefe para cada oleada desde 1 hasta este número; de lo contrario, la arena no se carga.
| Clave | Valores | Predeterminado |
|---|---|---|
waveCount | Integer | 0 |
Ejemplo
waveCount: 10
delayBetweenWaves
Retraso de preparación en segundos antes de cada oleada, incluida la primera. Usa un entero no negativo.
| Clave | Valores | Predeterminado |
|---|---|---|
delayBetweenWaves | Integer | 0 |
Ejemplo
delayBetweenWaves: 5
rawIntermissionWaves
Duplica la preparación antes de las oleadas indicadas: delayBetweenWaves * 2.
Útil si quieres dar a los jugadores un breve respiro entre oleadas específicas.
| Clave | Valores | Predeterminado |
|---|---|---|
rawIntermissionWaves | Integer List | ninguno |
Ejemplo
rawIntermissionWaves:
- '5'
- '10'
- '15'
spawnPoints
Define ubicaciones con nombre para los jefes. Cada punto necesita un name y una location válida en el mismo mundo que startLocation, o la arena no se carga. bossList debe usar esos nombres exactamente. Repetir un nombre sustituye su ubicación anterior.
| Clave | Valores | Predeterminado |
|---|---|---|
spawnPoints | String 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
Define los jefes de cada oleada. Cada entrada genera una entidad; repítela para generar varias. Las entradas de EliteMobs usan archivos de jefes con .yml. Las de MythicMobs usan el nombre interno del mob y requieren que el plugin y ese mob estén cargados.
| Clave | Valores | Predeterminado |
|---|---|---|
bossList | String 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.
Los parámetros válidos son wave, spawnPoint, boss, mythicmob y level.
level solo se transmite a las entradas de MythicMobs. Los jefes de EliteMobs lo ignoran: establece su nivel en su propio archivo de configuración.
rawArenaReward
Define recompensas de oleada. Cada entrada se sortea por separado para cada jugador activo al terminar la oleada indicada, antes del siguiente retraso de preparación, incluida la última oleada. Se excluyen espectadores y jugadores que hayan salido. Si la oleada contiene un jefe EliteMobs de nivel positivo, se excluye al jugador cuya diferencia absoluta entre su nivel de combate basado en habilidades y el jefe más fuerte supere lootLevelDifferenceLockout de ItemSettings.yml. Los niveles de MythicMobs no intervienen en esta comparación. No se exige un porcentaje mínimo de daño.
Usa el formato de cadena del ejemplo: wave selecciona la oleada completada e itemlevel indica el nivel solicitado, por defecto 1. Se siguen aplicando las reglas de escalado fijo o limitado del objeto. Los objetos se entregan al inventario y el excedente cae cerca; la moneda se abona al saldo. Se aplican probabilidad, cantidad y permisos de la tabla; los filtros de mazmorra difficultyID no restringen una arena normal. Los jefes EliteMobs de arena usan combate normalizado salvo que su archivo indique scaledCombat: true; su botín elite, aleatorio y vanilla ordinario queda deshabilitado.
| Clave | Valores | Predeterminado |
|---|---|---|
rawArenaReward | Tabla de botín universal de EliteMobs | ninguno |
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
- itemlevel=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.
| Clave | Valores | Predeterminado |
|---|---|---|
minimumPlayerCount | Integer | 1 |
Ejemplo
minimumPlayerCount: 1
maximumPlayerCount
Establece la cantidad máxima de jugadores que puede tener una arena. A los jugadores que intenten unirse a una arena llena se les indica que la arena está completa y no se les deja entrar.
Establece este valor explícitamente. El valor por defecto es 0, y cualquier valor inferior a 1 se trata como 1, así que una arena sin esta clave admite a un solo jugador. Un minimumPlayerCount superior a este valor se reduce hasta igualarlo.
| Clave | Valores | Predeterminado |
|---|---|---|
maximumPlayerCount | Integer | 0 |
Ejemplo
maximumPlayerCount: 100
arenaMessages
Mensajes para jugadores y espectadores cuando la oleada indicada entra en preparación, antes del retraso. Una entrada posterior para la misma oleada sustituye la anterior.
| Clave | Valores | Predeterminado |
|---|---|---|
arenaMessages | Especial [3] | ninguno |
Ejemplo
arenaMessages:
- 'wave=1:message=&a[Arena Announcer] &fTime for wave one!'
- 'wave=2:message=&a[Arena Announcer] &fWow, wave two already.'

cylindricalArena
Usa un cilindro en lugar de un cuboide. Su centro X/Z está entre las esquinas, su base es la Y inferior, su altura es la diferencia de Y y su radio es la mitad de la diferencia de X. La separación en Z no determina el radio. El borde circular exterior y la Y superior están excluidos; mantén las ubicaciones jugables dentro. El cuboide incluye ambas esquinas.
| Clave | Valores | Predeterminado |
|---|---|---|
cylindricalArena | Boolean | false |
Ejemplo
cylindricalArena: false
permission
Permiso para entrar como combatiente. Omite la clave para no restringir esa entrada. El botón de espectador no comprueba actualmente este permiso; no sirve para restringir el acceso de espectadores.
| Clave | Valores | Predeterminado |
|---|---|---|
permission | String | ninguno |
Ejemplo
permission: mypermission.arena
teleportLocation
Ubicación opcional de espera tras ser admitido como jugador desde el menú. Interactuar con el NPC no teletransporta por sí solo. El vestíbulo debe estar dentro de la región o el control de límites devolverá a los jugadores al inicio. Sin esta clave esperan en startLocation. No permite que otro grupo espere dentro de una arena compartida ocupada.
| Clave | Valores | Predeterminado |
|---|---|---|
teleportLocation | Location | ninguno |
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: wave=X:spawnPoint=Y:boss=bossfilename.yml.
Cada entrada admite dos claves opcionales:
| Clave | Descripción | Valores | Predeterminado |
|---|---|---|---|
level | Solo sustituye el nivel de una entrada mythicmob=true. Los jefes EliteMobs usan su configuración. | Entero | Se pasa -1 a MythicMobs si se omite; configura un nivel positivo |
mythicmob | Interpreta boss= como nombre de mob de MythicMobs en lugar de archivo EliteMobs. Requiere MythicMobs. | true / false | false |
Ejemplo: wave=3:spawnPoint=center:boss=my_mythic_boss:mythicmob=true:level=40
Las entradas se dividen por : y después por el primer =. Las claves no distinguen mayúsculas de minúsculas. Una clave desconocida o repetida, una clave sin valor, la ausencia de wave, spawnPoint o boss, un wave inferior a 1, un level inferior a 1 o un valor de mythicmob distinto de true o false hacen que la arena no se cargue y muestre una advertencia. Los nombres de puntos de aparición y los identificadores de jefes deben coincidir exactamente con sus referencias.
Especial [3]
Mensajes de arena: Usa el siguiente formato: wave=X:message=tu mensaje aquí.
El texto del mensaje puede contener dos puntos: va desde message= hasta el final de la entrada, o hasta un campo :wave= posterior. Solo se aceptan oleadas desde 1. Si necesitas comillas YAML, rodea toda la entrada; las comillas colocadas únicamente después de message= aparecen en el texto.
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 comienza el combate. Como el ejemplo no tiene vestíbulo independiente, también se espera ahí tras entrar. exitLocation es la salida normal en my_minecraft_world; la eliminación letal puede devolver al jugador a su ubicación anterior a la entrada. Sustituye las coordenadas por ubicaciones seguras en tus mundos cargados.
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 da 5 monedas elite a los jugadores activos elegibles tras la oleada 1. La oleada 5 da 25 monedas y una probabilidad independiente del 50% de obtener la recompensa configurada de MagmaGuy's Toothpick de nivel 5. Siguen aplicándose el límite por nivel de combate y las condiciones de botín anteriores.
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 una vez que se hayan unido 3 jugadores, cualquier jugador adicional que intente unirse será rechazado con el mensaje de «arena llena».
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 exige arena.mypermission para entrar como jugador. Iniciar también requiere elitemobs.instance.start; la entrada como espectador no comprueba el permiso de arena.
Crear el NPC de la Arena
Guarda un NPC .yml con nombre único en plugins/EliteMobs/npcs/, con interactionType: ARENA_MASTER y arena: your_arena.yml. Recarga tras editar y usa /em place npc <npcfilename.yml> con elitemobs.place.npc, o configura spawnLocations. La referencia de NPC explica colocación, eliminación y funciones como scripts, patrol, classRoot y transportRoutes.
isEnabled
Establece si el NPC está habilitado.
| Clave | Valores | Predeterminado |
|---|---|---|
isEnabled | Boolean | true |
Ejemplo
isEnabled: true
name
Establece el nombre visible del NPC.
| Clave | Valores | Predeterminado |
|---|---|---|
name | Cadena | vacío |
Ejemplo
name: "&aGladius"

role
Establece el rol que se muestra bajo el nombre del NPC.
| Clave | Valores | Predeterminado |
|---|---|---|
role | Cadena | vacío |
Ejemplo
role: "&c<Arena Master>"

profession
Establece la profesión de Minecraft del NPC.
| Clave | Valores | Predeterminado |
|---|---|---|
profession | Profession | NITWIT |
Ejemplo
profession: ARMORER
Se sobrescribirá si se usa un disguise.

spawnLocation
Ubicación individual antigua, usada solo si spawnLocations está vacío o ausente. Para archivos nuevos utiliza la lista; al migrar, elimina esta clave para evitar que reaparezca la ubicación antigua si la lista queda vacía.
| Clave | Valores | Predeterminado |
|---|---|---|
spawnLocation | Location | ninguno |
Ejemplo
spawnLocation: my_world,1.5,50,1.5,-108,0
spawnLocations
Ubicaciones guardadas del NPC. Una lista no vacía sustituye a spawnLocation, no se suma a ella. Los mundos deben estar cargados. Cada ubicación crea un NPC independiente con esta configuración.
| Clave | Valores | Predeterminado |
|---|---|---|
spawnLocations | String List | ninguno |
Ejemplo
spawnLocations:
- my_world,1.5,50,1.5,-108,0
- my_world,100.5,50,50.5,0,0
greetings
Saludos aleatorios al detectar la entrada en el radio de activación. Se comprueba la proximidad cada 100 ticks; una visita breve puede pasar inadvertida. Cada NPC comparte un enfriamiento de tres segundos entre jugadores, por lo que el saludo a otro jugador puede impedir el tuyo.
| Clave | Valores | Predeterminado |
|---|---|---|
greetings | String List | ninguno |
Ejemplo
greetings:
- Welcome to the Arena!
- The Arena welcomes you!

dialog
Para ARENA_MASTER, son líneas aleatorias de proximidad en comprobaciones posteriores mientras el jugador permanece cerca. El clic abre el menú de arena. Solo CHAT utiliza esta lista como acción incorporada al hacer clic.
| Clave | Valores | Predeterminado |
|---|---|---|
dialog | String List | ninguno |
Ejemplo
dialog:
- Ready for a challenge?
- Face the Arena?

farewell
Despedidas aleatorias al cerrar cualquier inventario con título no vacío dentro de una caja de 5 bloques por eje alrededor del NPC, sujetas al enfriamiento. No tiene que ser su menú; alejarse no activa una despedida.
| Clave | Valores | Predeterminado |
|---|---|---|
farewell | String List | ninguno |
Ejemplo
farewell:
- Bye.
- Return with your shield, or on it!

Usa \n literal en una cadena YAML simple o entre comillas simples para dividir el texto flotante en líneas.
farewell:
- Bye.
- Return with your\nshield, or on it!

canTalk
Habilita los textos flotantes de saludo, diálogo y despedida. Desactivarlo no deshabilita el menú de arena, los diálogos de misión, los scripts ni los marcadores.
| Clave | Valores | Predeterminado |
|---|---|---|
canTalk | Boolean | true |
Ejemplo
canTalk: true
activationRadius
Radio tridimensional de proximidad en bloques. Los valores de cero o menos desactivan la detección; los marcadores de misión tienen su propio alcance. El movimiento y la edición de patrullas suspenden el habla de proximidad mientras están activos.
| Clave | Valores | Predeterminado |
|---|---|---|
activationRadius | Double | 3.0 |
Ejemplo
activationRadius: 3.0
timeout
Duración del NPC en minutos; cero o menos desactiva el límite. Retira el NPC activo, pero conserva su ubicación guardada, que puede restaurarse al recargar o restaurar el chunk. Usa el procedimiento de eliminación de NPC para borrar la ubicación definitivamente.
| Clave | Valores | Predeterminado |
|---|---|---|
timeout | Double | 0 |
Ejemplo
timeout: 60
interactionType
Establece el tipo de interacción que realizará el NPC.
| Clave | Valores | Predeterminado |
|---|---|---|
interactionType | Especial [4] | NONE |
Ejemplo
interactionType: ARENA_MASTER
disguise
Establece el disfraz personalizado del NPC.
| Clave | Valores | Predeterminado |
|---|---|---|
disguise | Disguise | ninguno |
Ejemplo
disguise: ZOMBIE

customDisguiseData
Datos para un disfraz personalizado con nombre de LibsDisguises. Combínalos con disguise: custom:your_disguise_name; este campo solo no activa el disfraz.
| Clave | Valores | Predeterminado |
|---|---|---|
customDisguiseData | String | ninguno |
Ejemplo
disguise: custom:arena_guide
customDisguiseData: player MHF_Pig
customModel
Modelo personalizado cargado. FreeMinecraftModels tiene prioridad si está disponible; un modelo ausente allí no se reintenta con ModelEngine. Un modelo válido tiene prioridad visual sobre el disfraz. Los jugadores necesitan los recursos correspondientes del paquete.
| Clave | Valores | Predeterminado |
|---|---|---|
customModel | String | ninguno |
Ejemplo
customModel: my_model
arena
Definición de arena que abre ARENA_MASTER, incluida .yml. Debe estar habilitada e inicializada correctamente. Abrir el menú no admite ni teletransporta al jugador por sí solo.
| Clave | Valores | Predeterminado |
|---|---|---|
arena | Filename | ninguno |
Ejemplo
arena: my_arena.yml
command
Comando ejecutado como el jugador y con sus permisos. Requiere interactionType: COMMAND. Omite la barra inicial; no se sustituye $player.
| Clave | Valores | Predeterminado |
|---|---|---|
command | String | ninguno |
Ejemplo
command: say Hello
questFileName
Establece los nombres de archivo de las misiones del NPC. Requiere que interactionType esté configurado como CUSTOM_QUEST_GIVER.
| Clave | Valores | Predeterminado |
|---|---|---|
questFileName | String List | ninguno |
Ejemplo
questFileName:
- my_quest_1.yml
- my_quest_2.yml
noPreviousLocationMessage
Para TELEPORT_BACK, mensaje cuando no existe una ubicación de retorno de EliteMobs guardada. Se registra al teletransportarse mediante EliteMobs desde fuera de un mundo EliteMobs; no es simplemente el último lugar donde se caminó o murió.
| Clave | Valores | Predeterminado |
|---|---|---|
noPreviousLocationMessage | Cadena | vacío |
Ejemplo
noPreviousLocationMessage: '&cCouldn''t find a previous location!'
instanced
Marca el NPC como plantilla para mazmorras instanciadas en vez de crearlo en el mundo original. Los NPC de arena normales usan false; esta clave no convierte la arena física en una mazmorra clonada.
| Clave | Valores | Predeterminado |
|---|---|---|
instanced | Boolean | false |
Ejemplo
instanced: false
scale
Escala del aldeano subyacente. Los disfraces o modelos pueden tener su propio escalado visual; no garantiza el mismo tamaño mostrado en todos los proveedores.
| Clave | Valores | Predeterminado |
|---|---|---|
scale | Double | 1.0 |
Ejemplo
scale: 1.0
syncMovement
Sincroniza el movimiento del modelo personalizado con el NPC. Una patrulla válida fuerza la sincronización aunque el campo sea false, incluso si está pausada.
| Clave | Valores | Predeterminado |
|---|---|---|
syncMovement | Boolean | true |
Ejemplo
syncMovement: true
Ejemplo de configuración de Arena
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
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:
| Tipo | Descripción |
|---|---|
GUILD_GREETER | Abre las bonificaciones de habilidades; requiere elitemobs.skill.npc. |
CLASS_TRAINER | Abre la formación de classRoot con [Alpha] Advanced Combat System habilitado; requiere elitemobs.command. |
TRANSPORT | Abre destinos de transportRoutes; consulta Transporte. |
CHAT | El clic derecho elige una línea aleatoria de dialog. |
CUSTOM_SHOP | Abre el menú de la tienda personalizada |
PROCEDURALLY_GENERATED_SHOP | Abre la tienda generada proceduralmente |
BAR | Muestra el mensaje de función próximamente disponible. |
ARENA | No hace nada. Usa ARENA_MASTER en su lugar. |
QUEST_GIVER | Abre el menú de misiones generadas proceduralmente |
CUSTOM_QUEST_GIVER | Abre el menú de misiones para una misión específica establecida en questFileName |
NONE | Sin acción incorporada; siguen funcionando scripts, proximidad y diálogo de misión. |
SELL | Abre el menú de venta |
TELEPORT_BACK | Usa la ubicación de retorno de EliteMobs; requiere elitemobs.back.npc. |
SCRAPPER | Abre el menú de desguace |
SMELTER | OBSOLETO - Característica eliminada, no usar |
REPAIRMAN | Abre el menú de reparación |
ENHANCER | OBSOLETO - Característica eliminada, no usar |
REFINER | OBSOLETO - Característica eliminada, no usar |
UNBINDER | Abre el menú de desvinculación |
ARENA_MASTER | Abre el menú de la arena establecida en arena |
COMMAND | Ejecuta el comando establecido en command |
ENCHANTER | Abre el menú de encantamiento |
SCROLL_APPLIER | Abre el menú de aplicación de pergaminos |
ARROW_SHOP | Abre el menú de la tienda de flechas |
GAMBLING_BLACKJACK | Abre el juego de apuestas de blackjack |
GAMBLING_COINFLIP | Abre el juego de apuestas de cara o cruz |
GAMBLING_SLOTS | Abre el juego de apuestas de tragaperras |
GAMBLING_HIGHERLOWER | Abre el juego de apuestas de mayor/menor |
Los demás tipos tienen sus propios permisos y ajustes. Consulta la referencia de interacciones de NPC antes de usarlos; una entrada de arena necesita ARENA_MASTER.
