Minecraft Wiki

Tablas de botín son archivos técnicos JSON que se utilizan para dictar qué objetos deben generarse en diversas situaciones, como qué objetos deben estar en contenedores generados naturalmente, qué los objetos deben caer al romper un bloque o matar a una criatura, qué objetos se pueden pescar y más. No afecta la experiencia caída, ni las entidades que no son objetos, como slimes de limos más grandes o lepismas de bloques infestados.

Definición[]

Los Paquetes de datos personalizados utilizan tablas de botín para cambiar qué botín puede generarse en contenedores o dejar caer entre mobs. Pueden cambiar las tablas de botín existentes o crear otras nuevas. Tenga en cuenta que algunos bloques, como lecho de roca, portales finales y otros bloques irrompibles en supervivencia no tienen tablas de botín, algunos bloques comparten tablas de botín (es decir, variantes de bloques de pared y piso) y que ciertas caídas, es decir, caídas de cabeza de enredaderas cargadas y el la estrella inferior de Wither, actualmente no están cubiertos por las tablas de botín.[1]

Las tablas de botín pertenecen a la siguiente carpeta de la estructura de un paquete de datos:

  • (nombre del paquete de datos)
    • datos
      • (espacio de nombres)
        • tablas_botín
          • (loot_table_name).json

Las tablas de botín de vainilla se agrupan en 4 categorías: jugabilidad (pesca, regalo de gato por la mañana, trueque de piglin), entidades, bloques y cofres, con algunas tablas en subcarpetas de aquellas. Por ejemplo, el archivo para zombies iría en nombre del paquete de datos/data/minecraft/loot_tables/entities/zombie.json. Esto hace que todos los zombis de ese mundo utilicen la tabla de botín del paquete de datos en lugar de la tabla de botín de zombies predeterminada.

Uso[]

Las tablas de botín están estructuradas como una etiqueta String que determina la tabla a usar y una etiqueta Long que determina la semilla. Los contenedores o mobs con la misma semilla y mesa arrojan los mismos objetos. Las tablas de botín no determinan la ranura del contenedor que se utilizará; que se determina aleatoriamente en función de la semilla.

Para barril, cofre, cofre trampa, tolva, vagoneta con cofre, barco con cofre, vagoneta con tolva, dispensador, sueltador, y caja de shulker:

  • El objeto raíz.
    •  LootTable: tabla de botín que se usará para llenar el contenedor la próxima vez que se abra, o con los elementos se interactúe de otra manera. Cuando el contenedor es un cofre que forma parte de un cofre doble, solo se ve afectada la mitad correspondiente al cofre simple etiquetado.
    •  LootTableSeed: Semilla para generar la tabla de botín. Funciona de manera similar a las semillas de los mundos. 0 u omitido utiliza una semilla aleatoria.

Estas etiquetas se eliminan una vez que se ha interactuado con los elementos (al abrir el contenedor, romperlo, etc.), y solo entonces se colocan los objetos en el contenedor.

Para las criaturas:

  • El objeto raíz.
    •  DeathLootTable: tabla de botín que se usará para los objetos que caen cuando se mata a la entidad.
    •  DeathLootTableSeed: Semilla para generar la tabla de botín. Funciona de manera similar a las semillas de los mundos. 0 u omitido utiliza una semilla aleatoria.

Las tablas de botín de mobs y contenedores se pueden modificar con /execute store y /data. El jugador también podría otorgar una tabla de botín a una entidad o dejarla caer en el mundo con /loot.

Etiquetas[]

Las tablas de botín se definen utilizando el formato JSON. A continuación se muestra una lista de etiquetas utilizadas.

  • El objeto raíz.
    •  type: Opcional, especifica el contexto en el que se debe invocar la tabla de botín. Luego, todas las funciones de objetos, predicados y proveedores de números se validan para garantizar que los parámetros del tipo de contexto especificado aquí cubran todos los requisitos e imprimen un mensaje de advertencia en el registro de salida si alguna función o condición requiere un parámetro de contexto que no está cubierto. Los tipos de contexto de botín válidos se describen a continuación.
    •  functions: Invoca funciones de objeto, en orden, sobre todas las pilas de objetos generadas por esta tabla.
      • Una función de objeto. La estructura JSON de este objeto se describe en la página Modificador de objeto.
    •  pools: una lista de todos los pools para esta tabla de botín. Cada grupo utilizado genera objetos de su lista de objetos en función del número de tiradas. Los pools se aplican en orden.
    •  random_sequence: una ubicación de recurso que especifica el nombre de la secuencia aleatoria que se utilizará para generar el botín a partir de esta tabla de botín. Si solo una tabla de botín usa una secuencia aleatoria específica, el orden de los conjuntos aleatorios de objetos generados es el mismo para todos los mundos que usan la misma semilla mundial. Si varias tablas de botín usan la misma secuencia aleatoria, el botín generado a partir de cualquiera de ellas cambia dependiendo de cuántas veces y en qué orden se invocó cualquiera de las otras tablas de botín.

Piscina[]

  • El objeto raíz.
    •  condiciones: una lista de predicados que deben aprobarse para que se utilice este grupo.
      • Un predicado. La estructura JSON de este objeto se describe en la página Predicate.
    •  functions: Invoca función de objeto, en orden, para todas las pilas de elementos generadas por este grupo.
      • Una función de objetoo. La estructura JSON de este objeto se describe en la página Modificador de elemento.
    •  rollos: Un Proveedor de números. Especifica el número de tiradas en el grupo.
    •  bonus_rolls: Un Proveedor de números. Especifica el número de tiradas de bonificación en el grupo por punto de suerte. Redondeado hacia abajo después de multiplicar. El valor predeterminado es exactamente 0,0.
    •  entries: una lista de todas las cosas que proporcionan entradas de botín para este grupo. Se elige una entrada de botín por tirada como una selección aleatoria ponderada de todas las entradas de botín agregadas al grupo. Tenga en cuenta que no se selecciona ponderadamente de los elementos de esta lista; en cambio, la selección ponderada es para seleccionar entre todas las entradas de botín proporcionadas por estos elementos (proveedores de entrada), que son diferentes porque un elemento (proveedor de entrada ) puede proporcionar entradas de botín vacías o una o más ponderadas.

Proveedor de entrada[]

  • El objeto raíz.
    •  condiciones: una lista de predicados que deben pasar para que las entradas de botín proporcionadas se agreguen al grupo de botín.
      • Un predicado. La estructura JSON de este objeto se describe en la página Predicado.
    •  type: Ubicación del recurso del tipo de proveedor de entrada. Establezca uno de los siguientes valores.

Los valores posibles para  type y contenidos adicionales asociados:

  • Objeto: proporciona una entrada de botín que arroja una sola pila de elementos.
    •  functions: Invoca una función de objeto a la(s) pila(s) de elementos.
      • Una función de elemento. La estructura JSON de este objeto se describe en la página Modificador de objeto.
    •  weight: determina con qué frecuencia se elige la entrada del botín entre todas las entradas del grupo. Las entradas con pesos más altos se utilizan con más frecuencia. La probabilidad de que se elija una entrada es [el peso de esta entrada ÷ el total de los pesos de todas las entradas consideradas].
    •  quality: Modifica el weight de la entrada del botín según el atributo de suerte del killer_entity para tipo de contexto de botín entity o la entidad this para todos los demás tipos de tablas de botín. La fórmula es floor(peso + (calidad × generic.luck)).
    •  name: La ubicación del recurso del elemento que se generará, p. minecraft:diamante. El valor predeterminado, si no lo modifican las funciones del elemento, es una pila de 1 de la instancia predeterminada del elemento.
  • Etiqueta: proporciona una entrada de botín que genera todos los objetos en una etiqueta de elemento, o varias entradas de botín (cada entrada genera un solo elemento en la etiqueta de objeto).
    •  functions: Invoca función de objeto a la(s) pila(s) de objetos.
      • Una función de objeto. La estructura JSON de este objeto se describe en la página Modificador de elemento.
    •  weight: determina con qué frecuencia se elige una entrada de botín entre todas las entradas del grupo. Las entradas con pesos más altos se utilizan con más frecuencia. La probabilidad de que se elija una entrada es [el peso de esta entrada ÷ el total de los pesos de todas las entradas consideradas].
    •  quality: Modifica el weight de la entrada del botín según el atributo de suerte del killer_entity para tipo de contexto de botín entity o la entidad this para todos los demás tipos de tablas de botín. La fórmula es floor(peso + (calidad × generic.luck)).
    •  name: La ubicación del recurso de la etiqueta del elemento a consultar, p. minecraft:flechas.
    •  expand: si se establece en true, proporciona una entrada de botín por artículo en la etiqueta con el mismo peso y calidad, y cada entrada genera un objeto. Si false, proporciona una única entrada de botín que genera todos los elementos (cada uno con un recuento de 1) en la etiqueta.
  • loot_table: proporciona otra tabla de botín como entrada de botín.
    •  functions: Invoca función de objeto a la(s) pila(s) de elementos.
      • Una función de objeto. La estructura JSON de este objeto se describe en la página Modificador de elemento.
    •  weight: determina con qué frecuencia se elige la entrada del botín entre todas las entradas del grupo. Las entradas con pesos más altos se utilizan con más frecuencia. La probabilidad de que se elija una entrada es [el peso de esta entrada ÷ el total de los pesos de todas las entradas consideradas].
    •  quality: Modifica el weight de la entrada del botín según el atributo de suerte del killer_entity para tipo de contexto de botín entity o la entidad this para todos los demás tipos de tablas de botín. La fórmula es floor(peso + (calidad × generic.luck)).
    •  name: La ubicación del recurso de la tabla de botín que se utilizará, p. minecraft:juego/pesca/basura.
  • dinámico: proporciona una entrada de botín que genera caídas específicas del bloque.
    •  functions: Invoca función de objeto a la(s) pila(s) de elementos.
      • Una función de elemento. La estructura JSON de este objeto se describe en la página Modificador de elemento.
    •  weight: determina con qué frecuencia se elige la entrada del botín entre todas las entradas del grupo. Las entradas con pesos más altos se utilizan con más frecuencia. La probabilidad de que se elija una entrada es [el peso de esta entrada ÷ el total de los pesos de todas las entradas consideradas].
    •  quality: Modifica el weight de la entrada del botín según el atributo de suerte del killer_entity para tipo de contexto de botín entity o la entidad this para todos los demás tipos de tablas de botín. La fórmula es floor(peso + (calidad × generic.luck)).
    •  name: Puede ser contents para eliminar el contenido de la entidad de bloque.
  • vacío: proporciona una entrada de botín que no genera nada en el grupo de botín.
    •  funciones: Invoca funciones de objeto parala(s) pila(s) de elementos.
      • Una función de objeto. La estructura JSON de este objeto se describe en la página Modificador de elemento.
    •  weight: determina con qué frecuencia se elige la entrada del botín entre todas las entradas del grupo. Las entradas con pesos más altos se utilizan con más frecuencia. La probabilidad de que se elija una entrada es [el peso de esta entrada ÷ el total de los pesos de todas las entradas consideradas].
    •  quality: Modifica el weight de la entrada de botín según el atributo de suerte de killer_entity para tipo de contexto de botín entity o la entidad this para todos los demás tipos de tablas de botín. La fórmula es floor(peso + (calidad × generic.luck)).
  • grupo: todos los proveedores de entrada en la lista de niños se aplican al grupo de botín. Se puede utilizar por conveniencia, p. si una condición se aplica para múltiples entradas.
    •  children: la lista de proveedores de entrada.
      • Un proveedor de entrada.
  • alternativas: solo el primer proveedor de entrada exitoso (se cumplen las condiciones), en orden, se aplica al grupo de botín.
    •  children: la lista de proveedores de entrada.
      • Un proveedor de entrada.
  • secuencia: los proveedores de entrada infantiles se aplican al grupo de botín en orden secuencial, continuando hasta que no se cumplan las condiciones de un proveedor de entrada y luego no se aplican más proveedores de entrada de los niños.
    •  children: la lista de proveedores de entrada.
      • Un proveedor de entrada.

Estructuras JSON recurrentes dentro de tablas de botín y otros archivos de paquetes de datos[]

Predicado[]

Artículo principal: Predicado

Predicados (también conocidos como condiciones de botín) son estructuras JSON que se utilizan dentro de las tablas de botín para agregar requisitos a una entrega, grupo o función. También se pueden utilizar en archivos independientes (consulte Predicado), donde se pueden invocar desde múltiples contextos diferentes.

La estructura específica de un predicado se muestra en la página Predicado.

Función del objeto[]

Artículo principal: Modificador de objeto

Funciones de objetos (también conocidas como funciones de botín) se utilizan dentro de las tablas de botín para aplicar modificaciones a la pila de elementos que se genera, como ajustar el tamaño de la pila o agregar encantamientos. También se pueden usar en archivos independientes llamados Modificadores de objetos, donde se les puede solicitar que modifiquen artículos en un espacio de artículos ya existente dentro de un bloque o inventario de entidad.

La estructura específica de una función de objeto se muestra en la página Modificador de objeto.

Proveedores de números[]

Las tablas de botín utilizan proveedores de números en algunos lugares que aceptan un int o float. Pueden definirse como un valor constante o como un objeto.

  • : Proveedor de números constantes.

O:

  • : La etiqueta raíz.
    •  type: el tipo de proveedor de números.

Los valores posibles para  type y contenidos adicionales asociados:


  • constant—Un valor constante.
    •  value: El valor exacto.
  • uniforme: un número aleatorio que sigue una distribución uniforme entre dos valores (inclusive).
    •  min: Proveedor de números. El valor mínimo.
    •  max: proveedor de números. El valor máximo.
  • binomial: un número aleatorio que sigue una distribución binomial
    •  n: Proveedor de números. La cantidad de juicios.
    •  p: Proveedor de números. La probabilidad de éxito en una prueba individual.
  • score: para consultar y utilizar un valor del marcador.
    •  target: Para elegir qué nombre de jugador o UUID de entidad consultar.
      •  type: configúrelo en fixed para especificar manualmente un nombre de jugador o UUID. Establezca en context para usar una entidad del contexto de botín.
      •  name: se incluye solo si  type está configurado en fixed. Especifica el nombre del jugador, o el UUID (en formato hexadecimal con guión) de la entidad cuya puntuación consultar.
      •  target: se incluye solo si  type está configurado en context. Especifica una entidad de contexto de botín para consultar su puntuación. Puede ser this, killer, direct_killer o killer_player.
    •  score: El objetivo del marcador para consultar el nombre del jugador seleccionado o UUID.
    •  escala: Opcional. Escala para multiplicar la puntuación antes de devolverla.

Tipos de contexto de botín[]

El campo  type se usa al cargar el paquete de datos para verificar si los parámetros de contexto utilizados por esta tabla de botín coinciden con el tipo de contexto especificado. El campo permite comprobar si hay errores en los archivos de la tabla de botín sin aplicarlos en el juego. Si la tabla de botín se usa para un contexto específico, especificar el campo de tipo permite que el juego verifique si el archivo de la tabla de botín usa parámetros que no se proporcionarán en ese contexto.

Dependiendo del tipo de invocación, se pueden proporcionar diferentes parámetros a predicados, funciones de botín y proveedores de números. A continuación se muestra una lista de todos los contextos posibles de invocación y los parámetros:


Tipo de contexto de botín cuando se usa Parámetros de contexto de botín que "se" proporcionan Parámetros de contexto de botín que "pueden ser" proporcionados
empty
  • Solo utilizado por la tabla de botín vacía codificada. No proporciona parámetros de contexto de botín.
  • Especificar "type":"empty" significa que no se pueden usar parámetros de contexto en esta tabla de botín.
Ninguno Ninguno
chest
  • Origen: El centro del cofre.
  • Entidad this: La entidad que abrió el cofre.
command
  • No se utiliza para mesas de botín. Especificar "type":"command" no tiene sentido.
  • Usado internamente por comandos como /itemmodify o /execute (if|unless) predicate.
  • Origen: La posición donde se ejecuta el comando.
  • Entidad this: La entidad que es @s cuando se ejecuta el comando.
selector
  • No se utiliza para tablas de botín. Especificar "type":"selector" no tiene sentido.
  • Usado internamente por el argumento predicado selector de destino.
  • Origen La posición de la entidad que se está verificando.
  • this entidad: La entidad que se está comprobando.
fishing
  • Pesca.
  • El comando /loot … pescado <loot_table>.
  • Origen La posición del corcho de pesca.
  • Herramienta: La caña de pescar que el jugador lanza.
  • this entidad: El corcho de pesca.
entity
  • Botín por la muerte de una entidad viviente.
  • El comando /loot … kill <target>.
  • Entidad this: La entidad que murió.
  • Origen La ubicación de la muerte de la entidad.
  • Fuente del daño: La fuente del daño que causó la muerte de la entidad.
  • Entidad killer: La entidad que fue la fuente del daño final a la entidad víctima.
  • Entidad direct_killer: La entidad que contactó directamente a la entidad víctima para matarla.
  • Entidad killer_player: El jugador que dañó más recientemente a la entidad víctima.
archaeology
  • Origen El centro de la arena sospechosa.
  • Entidad this: La entidad que usó el cepillo en la arena sospechosa.
gift
  • Regalo de un gato o aldeano
  • Origen: La ubicación del gato o del aldeano.
  • Entidad this: El gato o aldeano que dio el regalo.
barter 
  • Entidad this: El piglin intercambió con.
advancement_reward
  • Tabla de botín configurada como recompensa de progresoE.
  • this entidad: El jugador que obtuvo el avance.
  • Origen La ubicación del jugador cuando obtuvo el avance.
advancement_entity
  • No se utiliza para mesas de botín. Especificar "type":"advancement_entity" no tiene sentido.
  • Se utiliza internamente cuando un avance invoca un predicado en una entidad.
  • Entidad this: La entidad que se está verificando.
  • Origen La posición del jugador que activa este criterio de avance.
advancement_location
  • No se utiliza para mesas de botín. Especificar "type":"advancement_location" no tiene sentido.
  • Se usa internamente cuando un avance invoca un predicado en la ubicación de un bloque en el que se usó un elemento.
  • Entidad this: El jugador que obtendrá el avance.
  • Origen El centro del bloque con el que se interactuó.
  • Herramienta El elemento utilizado para interactuar con el bloque.
  • Estado del bloque El bloque con el que se interactuó.
generic
  • No utilizado. Proporciona todos los parámetros de contexto del botín.
  • Especificar "type":"generic" u omitirlo significa que no se deben verificar los parámetros de contexto en esta tabla de botín al cargar el paquete de datos.
N/A N/A
block
  • Botín por romper un bloque.
  • El comando /loot … mine <pos>.
  • Estado del bloque El bloque que se rompió.
  • Origen: El centro del bloque roto.
  • Herramienta La herramienta utilizada para extraer el bloque.
  • Entidad this: El jugador que minó el bloque.
  • Entidad de bloque Cualquier dato de entidad de bloque del bloque que se rompió, si era una entidad de bloque.
  • Radio de explosión: El radio de la explosión que rompió el bloque, si se rompió mediante una explosión.

Historial[]

Java Edition
1.919 de octubre de 2015Dinnerbone anuncia tablas de botín.
15w43aSe agregaron tablas de botín.
15w43bSe agregó condition entity_scores.
15w43cSe ha renombrado "villager_golem.json" a "iron_golem.json"
Se agregó tablas de botín de pesca, oveja sin lana, y los caballos esqueléticos y zombificados.
Se cambió el nombre de la etiqueta  item: a  name:, y la etiqueta  items: a  entries:
Se agregó la etiqueta  type: y soporte para cargar una tabla de botín en lugar de un objeto.
Se agregó la etiqueta  luck: a los archivos predeterminados, aunque actualmente no hace nada en el código.
Se agregó la función set_damage.
15w44aSe agregó la función enchant_randomly y set_attributes.
15w44bSe agregó la etiqueta  quality.
Se eliminaron las etiquetas  luck y  luck_multiplier.
Se agregó la etiqueta  bonus_rolls.
15w51aUn jugador en modo espectador ya no activa un contenedor para usar su tabla de botín para generar botín.
1.9.1pre1Las tablas de botín ahora funcionan con dispensers y dropper.
Se agregó la tabla predeterminada Chests/jungle_temple_dispenser.
1.1116w32aLos burros, mulas, zombis desérticos y los aldeanos zombis ahora cada uno extrae de sus propias tablas de botín, en lugar de extrayendo de las tablas de botín de caballo y zombie, respectivamente
16w43aLos aldeanos, vexes y los enderdragones ahora pueden robar de sus propias tablas de botín.
1.1317w43aLas tablas de botín personalizadas se han movido a paquete de datoss.
1.1418w43aEl bloque drops se ha cambiado para usar tablas de botín también.
Las mesas de botín recibieron un montón de opciones nuevas.
Establecer entidad en "esto" ahora se refiere al jugador en las tablas de botín de cofre y bloque.
18w44aSe agregaron tablas de botín para los gatos, cat_morning_gift, jugadores y wither.
Se agregó tablas de botín para nuevos bloques.
Se agregó la función set_lore.
18w46aSe agregó tabla de botín para ilusionistas.
18w48aSe agregó más tablas de botín para villages, algunas de las cuales están actualmente no usado.
Tabla de botín eliminada: village_blacksmith.
18w49avillage_savanna_house y village_snowy_house ahora se utilizan las tablas de botín.
Se agregó más tablas de botín para villages.
18w50avillage_desert_house y village_taiga_house ahora se usan las tablas de botín, por lo que todas las tablas de botín que no se usaron anteriormente ya no se usan.
?La tabla de botín vacía ahora está codificada.
1.1519w34aSe agregó la función copy_state.
1.1620w12aSe agregó el subpredicado fishing_hook para verificar las propiedades del anzuelo de pesca.
1.2023w14aSe agregó la función reference.
23w17aSe agregó la tabla de botín sniffer_digging.
pre1Se hicieron secuencias aleatorias para tablas de botín deterministas.
Se agregó el campo random_sequence.
pre6El ID de la secuencia aleatoria ahora es un campo opcional.
Próxima Java Edition
1.20.223w32aSe agregó la función de botín sequence.
Los predicados all_of en las tablas de botín ahora se pueden declarar implícitamente como una matriz en línea sin un tipo.

Problemas[]

Los problemas relacionados con "tabla de botín" se mantienen en el rastreador de problemas.

Informa en esta página sobre los errores que encuentres (en inglés).

Referencias[]

Plantilla:Paquetes de datos