Saltar al contenido principal

Tabla de Botín Personalizada

El formato compartido define objetos personalizados, objetos vanilla, moneda y comandos para jefes, cofres del tesoro, misiones y arenas. Cada entrada tiene su propia tirada de probabilidad; la tabla no elige una única entrada ganadora.

Para cubrir automáticamente el equipo de todas las clases y dificultades, consulta el botín de clase automático. Su tirada independiente puede ejecutarse junto con uniqueLootList. Conserva aquí las reliquias, el equipo con scripts y otras recompensas especiales. Las entradas que apuntan a objetos itemType: CLASS_LOOT son candidatas para la selección de botín de clase y se omiten en las tiradas ordinarias de muerte del jefe. Las demás entradas conservan sus tiradas independientes.

Ten en cuenta que este es el formato más reciente y el que se recomienda usar, pero existen algunos formatos alternativos más antiguos.

Nota: El soporte del formato heredado (legacy) sigue disponible usando la sintaxis separada por dos puntos: filename.yml:chance:permission. Sin embargo, se recomienda el formato moderno que se muestra a continuación para las nuevas configuraciones.

En esa sintaxis heredada la probabilidad y el permiso son opcionales, así que un filename.yml suelto suelta el objeto al 100%. Se rechaza una entrada heredada con más de tres partes separadas por dos puntos.

Cada entrada se comprueba cuando se carga su archivo. Una clave desconocida o repetida, una clave sin valor, un chance que no sea un número finito, un amount, currencyAmount, wave o itemLevel que no sea un número entero, o un material inválido rechazan esa entrada con una advertencia Failed to parse entry ... due to invalid: <reason>, y el resto de la tabla se sigue cargando. Las claves no distinguen mayúsculas de minúsculas.

Usa la clave de la función correspondiente: uniqueLootList para jefes, lootList para cofres del tesoro, customRewards para misiones o rawArenaReward para arenas. customRewards acepta entradas de texto: usa allí el formato filename=...:chance=... separado por dos puntos en lugar de mapas YAML.

Entrega según el origen del botín

Los cuatro tipos de entrada funcionan en el botín de Jefes Personalizados (uniqueLootList). Para las entradas ordinarias, la entrega sigue putLootDirectlyIntoPlayerInventory:

Tipo de entradaputLootDirectlyIntoPlayerInventory: false (predeterminado)putLootDirectlyIntoPlayerInventory: true
Objeto elite (filename)Botín personal en el suelo o votación de equipo compartidoEntrega al inventario personal o votación de equipo compartido
Objeto vanilla (material)Botín en el sueloEntrega al inventario; el excedente cae junto al jugador
Monedas elite (currencyAmount)Lluvia de monedas recogiblesAbono directo de moneda
Comando (command=)Se ejecuta desde la consolaSe ejecuta desde la consola

Las recompensas del jefe se sortean por separado para cada participante registrado que haya causado daño, excluyendo a quienes tengan bloqueo de botín para ese jefe instanciado. Esta ruta de botín definido no tiene un umbral adicional del 10% de daño. Los miembros cercanos del grupo que reciben crédito compartido sin haber dañado al jefe solo reciben por esta ruta entradas de objetos elite que no sean equipo, no entradas vanilla, de moneda ni de comandos. La activación del antiexploit suprime este botín de muerte.

Los jefes que aparecen dentro de la instancia de otro plugin mediante la API de jefes instanciados de EliteMobs ignoran putLootDirectlyIntoPlayerInventory y nunca inician una votación de grupo. Su botín siempre cae al suelo junto al jefe, como en la columna false, con los objetos elite como botín personal, de modo que permanece en el mundo de esa instancia.

Los cofres usan el mismo ajuste de suelo/inventario; las misiones y arenas entregan directamente. Las cuatro fuentes admiten los tipos siguientes; las misiones solo aceptan entradas de texto. Los comandos de botín del jefe se ejecutan por cada tirada exitosa de un participante. Para la sintaxis independiente de comandos de muerte del jefe, consulta onDeathCommands.

Dejar caer objetos elite:​

ClaveDetallesValoresPredeterminado
filenameEstablece el nombre del archivo del Objeto Personalizado a usar.Filenamenone
Ejemplo
uniqueLootList:
- filename: magmaguys_toothpick.yml

Esto hará que el mob deje caer 1 MagmaGuy's Toothpick con un 100% de probabilidad de drop.

Ajustes generales:​

ClaveDetallesValoresPredeterminado
chanceUna tirada independiente por entrada; 1.0 equivale al 100%. Usa valores de 0.0 a 1.0.Double1.0
amountNúmero de copias de objeto o ejecuciones de comando tras una tirada exitosa. No multiplica la moneda; para eso usa currencyAmount.Integer1
permissionEstablece el nodo de permiso requerido para que los jugadores reciban este botín. Compatible con entradas de objeto elite, de moneda y de comando. Las entradas de objeto vanilla nunca lo leen, en ninguno de los dos formatos.Stringnone

Una entrada con amount <= 0 o chance <= 0 no realiza tirada; un chance no numérico o no finito rechaza la entrada al cargar el archivo. Un chance superior a 1.0 siempre pasa; no es un porcentaje como 50. Tras una tirada exitosa, la entrega no vuelve a tirar por cada copia. Las vistas previas de misiones hacen sus propias tiradas y no reservan las recompensas finales.

Ejemplo
uniqueLootList:
- filename: magmaguys_toothpick.yml
chance: 0.5
amount: 10
permission: elitemobs.loot.rare

Esto hará que el mob deje caer 10 MagmaGuy's Toothpick con un 50% de probabilidad de drop, pero solo para los jugadores con el permiso elitemobs.loot.rare.

Dejar caer monedas elite:​

ClaveDetallesValoresPredeterminado
currencyAmountEstablece la cantidad de monedas que se dejarán caer.Integernone

currencyAmount debe ser un número entero, y debe ser positivo para entregar moneda. Un amount positivo no lo multiplica, pero amount <= 0 deshabilita la entrada. Un currencyAmount cero o negativo se carga en cualquiera de los dos formatos, pero no entrega nada.

Las recompensas directas de moneda pasan por el gestor de economía y saldan primero las deudas de apuestas. La entrega en el suelo usa una lluvia de monedas recogibles y puede recibir la bonificación de Harvester; la entrega directa de esta entrada no aplica esa bonificación. Las monedas de la lluvia se abonan al recogerlas, no al superar la tirada.

Ejemplo
uniqueLootList:
- currencyAmount: 344
chance: 0.5

Esto da a cada participante elegible del jefe un 50% de probabilidad de recibir una recompensa base de 344 Elite Coins. Usa lootList para la misma entrada en un cofre del tesoro.

Dejar caer objetos vanilla:​

ClaveDetallesValoresPredeterminado
materialMaterial del objeto. Los nombres de material no distinguen mayúsculas de minúsculas en ninguno de los dos formatos. Se acepta type como alias; definir a la vez material y type rechaza la entrada.Materialnone
Ejemplo
uniqueLootList:
- material: APPLE
chance: 0.3
amount: 5

Esto hará que el mob deje caer 5 Manzanas con un 30% de probabilidad de drop.

Tanto la entrega en el suelo como al inventario usan una única tirada por entrada. En este ejemplo, si pasa, entrega las 5 manzanas. La entrega directa admite jefes, cofres, misiones y arenas, y deja el excedente del inventario junto al jugador. Los materiales AIR y las cantidades no positivas no entregan nada. Las entradas vanilla no aplican permission.

Ejecutar comandos al dejar caer botín:​

Puedes ejecutar comandos de consola cuando cae el botín. Esto es útil para integrarse con otros plugins o proporcionar recompensas personalizadas. Las entradas de comando aceptan el formato de cadena separada por dos puntos y, salvo en los customRewards de misiones, mapas YAML.

ClaveDetallesValoresPredeterminado
commandEstablece el comando de consola a ejecutar. Usa %player% como marcador de posición para el nombre del jugador.Stringnone

En el formato de cadena, el comando no debe contener un :, porque la entrada se divide por ese carácter. Un = dentro del comando no causa problemas. Usa un mapa YAML cuando el comando necesite dos puntos.

Probabilidad y repetición de comandos

Las entradas de comando tiran chance una sola vez, como las demás. Si pasan, el comando se ejecuta amount veces. No hay una segunda tirada ni una tirada invertida:

  • chance=1.0 (predeterminado) siempre pasa.
  • chance=0.5 pasa el 50% de las veces.
  • amount=3 ejecuta tres veces si esa única tirada pasa.

El jugador debe cumplir permission y el comando no puede estar vacío. Los requisitos propios del comando siguen aplicándose. Se ejecuta como consola; usa %player% para identificar al destinatario.

Ejemplo
customRewards:
- command=give %player% diamond 1:chance=0.5:amount=1:permission=elitemobs.loot.command

Esta recompensa de misión ejecuta give <player> diamond 1 desde la consola al entregar la misión el 50% de las veces. %player% se sustituye por el nombre del jugador, que necesita elitemobs.loot.command. El mismo texto funciona en uniqueLootList de un jefe, con una tirada separada para cada participante elegible.

Recompensas de arena:​

Al crear tablas de botín de arena, asegúrate de comenzar tu tabla de botín con rawArenaReward: en lugar de uniqueLootList:.

ClaveDetallesValoresPredeterminado
waveOleada completada que entrega esta recompensa. Todos los tipos de entrada lo aceptan en cualquiera de los dos formatos.Integer-1
itemLevelEstablece el nivel del drop de botín. Solo lo usan las arenas, y solo tiene sentido en entradas de objeto elite (filename). Se acepta en cualquiera de los dos formatos.Integer1
Limitaciones de estos campos
  • Solo las entradas con un wave de 1 o superior se registran como recompensas de oleada. Una entrada de recompensa de arena sin wave se analiza y se acepta, pero ninguna oleada la entregará nunca.
  • itemLevel vale 1 por defecto, no el nivel de la arena ni el del jugador. Por tanto, un objeto elite scalable otorgado por una arena sin un itemLevel explícito cae como objeto de nivel 1.
Ejemplo
rawArenaReward:
- material: BREAD
wave: 1
amount: 10
chance: 0.5
- filename=magmaguys_toothpick.yml:wave=1:itemLevel=2

Tras la oleada 1, la entrada de pan hace una única tirada del 50%. Si pasa, entrega 10 panes y deja el excedente en el suelo. La entrada personalizada tiene una probabilidad del 100% y solicita un MagmaGuy's Toothpick de nivel 2; la escalabilidad de su definición sigue determinando el nivel generado. Las comprobaciones de elegibilidad y diferencia de nivel de la arena se aplican antes de estas recompensas.

Las dos entradas usan formatos distintos solo para mostrar ambos; wave e itemLevel funcionan en cualquiera de los dos formatos.

Mazmorras Instanciadas:​

ClaveDetallesValoresPredeterminado
difficultyIDFiltra una entrada de objeto elite según la dificultad de la mazmorra actual del destinatario; los mapas YAML también admiten listas de IDs.Texto, número o listanone

difficultyID se lee para entradas elite (filename) en mapas YAML y en texto separado por dos puntos. Los mapas también admiten listas, como difficultyID: [normal, hard]. Las entradas vanilla, de moneda y de comandos lo rechazan como clave desconocida. Los IDs y nombres siguen el resolutor de dificultad: 0/1/2, Normal/Hard/Mythic o la convención Easy/Medium/Hard del paquete. Los IDs desconocidos conservan la coincidencia exacta. Una lista vacía o un ID en blanco hace que la entrada se rechace al cargar el archivo.

El filtro se comprueba para recompensas elite de jefes, cofres, misiones y arenas. Solo restringe a un jugador que esté actualmente en una instancia de mazmorra; fuera de ella se ignora. Un jefe que aparece en la instancia de otro plugin mediante la API de jefes instanciados se filtra según la dificultad que ese plugin le haya asignado. Una arena normal no es una instancia de mazmorra. Las recompensas de cofres, misiones y arenas siguen siendo personales, sin entrar en una votación de equipo compartido.

Para la entrega de jefes, la entrada se comporta así:

  • La dificultad coincide con difficultyID: el equipo entra en la tabla de botín compartida del jefe. Las recompensas que no son equipo mantienen la entrega personal. Los participantes elegibles del combate pueden reclamar equipo compartido; quienes ya tienen bloqueo de botín para ese jefe se excluyen antes de votar.
  • La dificultad de la mazmorra no coincide: la entrada se omite.
  • El jugador no está en una instancia de mazmorra: se ignora difficultyID. El equipo usa Necesidad / Codicia del grupo si hay al menos dos miembros elegibles cerca; en caso contrario sigue la entrega personal. Las recompensas que no son equipo permanecen personales.

Sin filtro difficultyID, el equipo aún puede entrar en el botín del grupo, pero no se ejecuta la rama de tabla compartida específica de mazmorras que activa ese campo. Las candidatas de botín de clase usan sus reglas separadas de selección y dificultad descritas anteriormente.

Ejemplo
uniqueLootList:
- filename: magmaguys_toothpick.yml
chance: 0.5
difficultyID: 1

Esto hará que el mob deje caer 1 MagmaGuy's Toothpick con un 50% de probabilidad de drop si los jugadores derrotaron al jefe en la dificultad 1.