Minecraft Wiki
Advertisement

Tabelas de itens (pt-BR) ou tabelas de espólio (pt-PT) são arquivos JSON técnicos usados ​​para ditar quais itens devem ser gerados em várias situações, como quais itens devem estar em recipientes gerados naturalmente, quais os itens devem ser largados ao quebrar um bloco ou ao matar uma criatura, quais itens podem ser pescados, e mais. Não afeta a experiência largada ou entidades não-itens largadas, como slimes de slimes grandes ou traças de blocos infestados.

Uso[]

As tabelas de itens são estruturadas como uma tag String que determina a tabela a ser usada e uma tag Long determinando a semente. Recipientes ou criaturas com a mesma semente e tabela largam os mesmos itens. As tabelas de itens não determinam o slot do contêiner a ser usado, que é determinado aleatoriamente com base na semente.

Para baús, baús com armadilha, funis, carrinhos de mina com baú, carrinhos de mina com funil, ejetores, liberadores, caixas de shulker e barris:

    •  LootTable: Tabela de itens a ser usada para encher o recipiente quando ele for aberto novamente, ou os itens são de outra forma interagidos. Quando o recipiente é um baú que faz parte de um baú duplo, apenas a metade correspondente ao baú único marcado é afetada.
    •  LootTableSeed: Semente para gerar a tabela de itens. Funciona de forma semelhante às sementes para mundos. 0 ou omitido usa uma semente aleatória.

Essas tags são removidas uma vez que os itens tenham sido interagidos (abrindo o contêiner, quebrando o contêiner, etc.), e somente então os itens são colocados no contêiner.

Para criaturas:

  • A tag raiz.
    •  DeathLootTable: Tabela de itens a ser usada para os itens que caem quando a entidade é morta.
    •  DeathLootTableSeed: Semente para gerar a tabela de itens. Funciona de forma semelhante às sementes para mundos. 0 ou omitido usa uma semente aleatória.

As tabelas de itens de criaturas e contêineres podem ser alteradas com /execute store e /data merge. O jogador também pode conceder uma tabela de itens para uma entidade ou soltá-la no mundo com /loot.

Tags[]

Loot tables are defined using the JSON format. Below are a list of tags used.

  •  The root tag
    •  type: Tipo opcional da tabela de saque. Deve ser empty se a tabela de saque não gerar nenhum saque, entity para saque de uma entidade descarta, block para saque de um bloco descarta, chest para um baú de tesouro, fishing para uma mesa de saque de pesca, gift para um presente de gato ou aldeão, advancement_reward se for usado como recompensa por um avanço, barter para saque de troca com piglins, command para predicado /execute, selector para predicate= em seletores, advancement_entity para entity predicados em avanços ou generic se nenhuma das opções acima se aplicar.
    •  functions: Aplica funções a todas as pilhas de itens produzidas por esta tabela. As funções são aplicadas em ordem, então, por exemplo, looting_enchant deve estar depois de set_count para funcionar corretamente.
      • Uma função.
        •  function: ID de espaço de nome da função a ser aplicada. As funções válidas são descritas abaixo.
        •  conditions: Determina as condições para que esta função seja aplicada. Se várias condições forem especificadas, todas devem passar.
    •  pools: Uma lista de todos os pools para esta tabela de saque. Cada pool usado gera itens de sua lista de itens com base no número de rolagens. As piscinas são aplicadas em ordem.
      • Uma pool.
        •  conditions: Determina as condições para que este pool seja usado. Se várias condições forem especificadas, todas devem passar.
        •  functions: Aplica funções a todas as pilhas de itens produzidas por este pool. As funções são aplicadas em ordem, então, por exemplo, looting_enchant deve estar depois de set_count para funcionar corretamente.
          • Uma função.
            •  function: ID de espaço de nome da função a ser aplicada. As funções válidas são descritas abaixo.
            •  conditions: Determina as condições para que esta função seja aplicada. Se várias condições forem especificadas, todas devem passar.
        •  rolls: Especifica o número exato de rolagens no pool.
        •  rolls: Especifica um número aleatório de rolagens dentro de um intervalo.
          •  min: Número mínimo de jogadas. Inclusivo.
          •  max: Número máximo de jogadas. Inclusivo.
        •  rolls: Especifica um número aleatório de rolagens de uma distribuição binomial.
          •  type: Tipo de uniforme int. Defina como "minecraft:binomial".
          •  n: Número de tentativas.
          •  p: Probabilidade de cada tentativa de adicionar um rolo.
        •  bonus_rolls:Especifica o número exato de jogadas de bônus na parada por ponto de sorte. Arredondado para baixo após a multiplicação.
        •  bonus_rolls: Especifica um número aleatório de jogadas de bônus dentro de um intervalo. Arredondado para baixo após a multiplicação.
          •  min: Número mínimo de jogadas de bônus. Inclusivo.
          •  max: Número máximo de jogadas de bônus. Inclusivo.
        •  entries: Uma lista de todas as coisas que podem ser produzidas por este pool. Uma entrada é escolhida por jogada como uma seleção aleatória ponderada de todas as entradas sem condições de falha.
          • Uma entrada.
            •  conditions: Determina as condições para que esta entrada seja utilizada. Se várias condições forem especificadas, todas devem passar.
            •  functions: Aplica funções à pilha de itens ou pilhas de itens que estão sendo produzidas. As funções são aplicadas em ordem, então, por exemplo, looting_enchant deve estar depois de set_count para funcionar corretamente.
              • Uma função.
                •  function: ID de espaço de nome da função a ser aplicada. As funções válidas são descritas abaixo..
                •  conditions: Determines conditions for this function to be applied. If multiple conditions are specified, all must pass.
            •  type: ID de espaço de nome tipo de entrada. Pode ser item para entradas de itens, tag para tags de itens, loot_table para produzir itens de outra tabela de saque, group para entradas filhas, alternatives para selecionar uma subentrada de uma lista, sequence para selecionar subentradas até que uma entrada não possa ser concedida, dynamic para gerar quedas específicas de bloco, ou empty para uma entrada que não gera nada.
            •  name:
              • Para o tipo 'item', nome do ID do item a ser produzido, ex. diamond. O padrão, se não for alterado por functions, é uma pilha de 1 da instância padrão do item.
              • Para o tipo de tag de item 'tag' a ser usado, por exemplo arrows.
              • Para o tipo 'loot_table', tabela de saque a ser usada, por exemplo gameplay/fishing/junk.
              • Para o tipo 'dynamic', pode ser contents para conteúdo de entidade de bloco ou self para estandartes e cabeças de jogadores.
            •  children:
              • Para o tipo 'group' uma lista de entradas que são usadas para gerar loot. Pode ser usado por conveniência, e. se uma condição se aplicar a várias entradas.
              • Para o tipo 'alternatives' uma lista de entradas das quais a primeira e somente a primeira entrada bem-sucedida é gerada.
              • Para o tipo 'sequence' uma lista de entradas que são usadas até que a primeira entrada falhe. Depois que uma entrada falha, não são geradas mais entradas desta lista
            •  expand: Para o tipo 'tag', se configurado como true, ele escolhe um item da tag, cada um com o mesmo peso e qualidade. Se false, gera um de cada um dos itens da tag. Necessário quando o tipo é 'tag'.
            •  weight: Determina com que frequência essa entrada é escolhida dentre todas as entradas do pool. As entradas com pesos mais altos são usadas com mais frequência (a chance é peso desta entradatotal dos pesos de todas as entradas consideradas).
            •  quality: Modifica o peso da entrada com base no atributo de sorte do jogador de matar/abrir/pescar. A fórmula é floor( peso + (qualidade * generic.luck)).

Funções[]

As tabelas de saque usam várias funções para alterar a pilha de itens que está sendo produzida, como ajustar o tamanho da pilha ou adicionar encantamentos. Abaixo está uma lista de funções válidas e as tags usadas por elas. As tags são colocadas no mesmo objeto de função que  function:.

  • apply_bonus - Aplica uma fórmula de bônus predefinida.
    •  enchantment: ID de encantamento usado para cálculo de nível.
    •  formula: Pode ser binomial_with_bonus_count para uma distribuição binomial (com n=level + extra, p=probability), uniform_bonus_count para distribuição uniforme (de 0 a level * bonusMultiplier), ou ore_drops para uma função especial usada para gotas de minério no jogo vanilla ( Count * (max(0; random(0..Level + 2) - 1)+1)).
    •  parameters: Valores necessários para a fórmula.
      •  extra: Para a fórmula 'binomial_with_bonus_count', o valor extra.
      •  probability : Para a fórmula 'binomial_with_bonus_count', a probabilidade.
      •  bonusMultiplier : Para a fórmula 'uniform_bonus_count', o multiplicador de bônus.

  • copy_name - Para o tipo de tabela de saque 'block', copia a tag CustomName de uma entidade de bloco na tag display.Name do item.
    •  source: "block_entity" - Precisa ser definido como 'block_entity'.

  • copy_nbt - Copia nbt para a tag tag do item.
    •  source: Especifica a origem. Defina como block_entity para a entidade de bloco do bloco destruído, this para usar a entidade que morreu ou o jogador que ganhou o avanço, abriu o contêiner ou quebrou o bloco, killer para o assassino, ou killer_player para um assassino que é um jogador.
    •  ops: Uma lista de operações de cópia.
      • Uma operação
        •  source: O caminho nbt do qual copiar.
        •  target: O caminho nbt para onde copiar, começando pela tag tag do item.
        •  op: Pode ser replace para substituir qualquer conteúdo existente do destino, append para anexar a uma lista ou merge para mesclar em uma tag composta.

  • copy_state - Copia as propriedades de estado do bloco descartado para a tag BlockStateTag do item.
    •  block: Um ID de bloco. A função falha se o bloco não corresponder.
    •  properties: Uma lista de nomes de propriedade a serem copiados.
      • Um nome de estado de bloco a ser copiado.

  • enchant_randomly - Encanta o item com um encantamento selecionado aleatoriamente. O nível do encantamento, se aplicável, é aleatório.
    •  enchantments: Lista de ID de encantamento para escolher. Se omitido, todos os encantamentos aplicáveis ao item são possíveis.

  • enchant_with_levels - Encanta o item, com o nível de encantamento especificado (aproximadamente equivalente a usar uma tabela de encantamento nesse nível).
    •  treasure: Determina se encantamento de tesouro são permitidos neste item.
    •  levels: Especifica o nível de encantamento exato a ser usado.
    •  levels: Especifica um nível de encantamento aleatório dentro de um intervalo.
      •  min: Nível mínimo para usar.
      •  max: Nível máximo a ser usado.

  • exploration_map - Converte um mapa vazio em um Mapa de exploração levando a uma estrutura gerada próxima.
    •  destination: O tipo de estrutura gerada para localizar. Aceita qualquer um dos StructureTypes usados pelo comando /locate (não diferencia maiúsculas de minúsculas).
    •  decoration:O ícone usado para marcar o destino no mapa. Aceita qualquer um dos IDs de texto do ícone do mapa (não diferencia maiúsculas de minúsculas). Se mansion ou monument for usado, a cor das linhas na textura do item muda para corresponder ao mapa do explorador correspondente.
    •  zoom: O nível de zoom do mapa resultante. Padrões para 2.
    •  search_radius: O tamanho, em pedaços, da área para procurar estruturas. A área verificada é quadrada, não circular. O raio 0 faz com que apenas o fragmento atual seja pesquisado, o raio 1 faz com que o fragmento atual e oito fragmentos adjacentes sejam pesquisados e assim por diante. O padrão é 50.
    •  skip_existing_chunks: Não pesquise em chunks que já foram gerados. O padrão é verdadeiro.

  • explosion_decay - Para tabelas de saque do tipo 'block', remove alguns itens de uma pilha, caso tenha ocorrido uma explosão. Cada item tem uma chance de 1/raio de explosão ser perdido.

  • furnace_smelt - Funde o item como se estivesse em uma fornalha. Usado em combinação com a condição entity_properties para cozinhar alimentos de animais após a morte.

  • fill_player_head - Adiciona as tags de item necessárias de uma cabeça de jogador
    •  entity: Especifica uma entidade a ser usada para a cabeça do jogador. Defina como this para usar a entidade que morreu ou o jogador que ganhou o avanço, abriu o contêiner ou quebrou o bloco, killer para o assassino ou killer_player para um assassino que é um jogador.

  • limit_count -Limita a contagem de cada pilha de itens.
    •  limit: Especifica o limite exato a ser usado.
    •  limit: Especifica um limite aleatório dentro de um intervalo.
      •  min: Limite mínimo para uso.
      •  max: Limite máximo a ser usado.

  • looting_enchant - Ajusta o tamanho da pilha com base no nível do encantamento Saque na entidade killer.
    •  count: Especifica um número exato de itens adicionais por nível de saque.
    •  count: Especifica um número aleatório (dentro de um intervalo) de itens adicionais por nível de saque. Observe que o número aleatório gerado pode ser fracionário, arredondado após a multiplicação pelo nível de saque.
      •  min: Aumento mínimo.
      •  max: Aumento máximo.
    •  limit: Especifica a quantidade máxima de itens na pilha após o cálculo do saque. Se o valor for 0, nenhum limite será aplicado.

  • set_attributes - Adiciona modificadores de atributo ao item.
    •  modificadores:
      • : Um modificador.
        •  name: Nome do modificador.
        •  attribute: O nome do atributo sobre o qual este modificador deve atuar.
        •  operation: Deve ser "addition", "multiply_base" ou "multiply_total".
        •  amount: Especifica a quantidade exata de alteração do modificador.
        •  amount: Especifica um valor aleatório dentro de um intervalo.
          •  min: Valor mínimo.
          •  max: Valor máximo.
        •  id: Opcional: UUID do modificador a seguir. Se nenhum for especificado, um novo UUID será gerado.
        •  slot: Slots em que o item deve estar para que o modificador tenha efeito, este valor pode ser um dos seguintes: "mainhand", "offhand", "feet", "legs" ", "chest" ou "head".
        •  slot: Um dos slots listados é escolhido aleatoriamente.

  • set_contents - Para tabelas de saque do tipo 'block', define o conteúdo de um item de bloco de contêiner para uma lista de entradas.
    •  entries: As entradas a serem usadas como conteúdo.

  • set_count -Define o tamanho da pilha.
    •  count: Especifica o tamanho exato da pilha a ser definido.
    •  count: Especifica um tamanho de pilha aleatório dentro de um intervalo.
      •  type: O tipo de distribuição. Os argumentos estão no composto count.
        • uniforme: Distribuição uniforme. Um inteiro aleatório é escolhido com probabilidade de cada número ser igual.
          •  min: tamanho mínimo da pilha.
          •  max: Tamanho máximo da pilha.
        • binomial: Distribuição binomial. Role várias vezes, cada uma tendo a chance de adicionar 1 ao tamanho da pilha.
          •  n: Número de rolos.
          •  p: Chance de cada rolagem.

  • set_damage - Define o valor de dano do item (durabilidade) para ferramentas.
    •  damage: Especifica a fração de dano a ser definida (1.0 não está danificado, 0.0 é zero de durabilidade restante).
    •  damage: Especifica uma fração de dano aleatório dentro de um intervalo.
      •  min: Valor mínimo.
      •  max: Valor máximo.

  • set_loot_table - Configura a tabela de saque para um contêiner (baú, etc.).
    •  name: Especifica a localização do recurso da tabela de saque a ser usada.
    •  seed: Opcional. Especifica a semente da tabela de saque. Se ausente ou definido como 0, uma semente aleatória será usada.

  • set_lore - Adiciona conhecimento ao item
    •  lore: Lista de componente de texto JSON. Cada entrada da lista representa uma linha da tradição.
    •  entity: especifica a entidade para atuar como a fonte @s no componente de texto JSON. Defina como this para usar a entidade que morreu ou o jogador que ganhou o avanço, abriu o contêiner ou quebrou o bloco, killer para o assassino ou killer_player para um assassino que é um jogador.
    •  replace: Se true, substitui todas as linhas existentes do lore, se false acrescenta a lista.

  • set_name - Adiciona o nome de exibição do item.
    •  name: Um nome de componente de texto JSON, permitindo cores, traduções, etc.
    •  entity: especifica uma entidade para atuar como fonte @s no componente de texto JSON. Defina como this para usar a entidade que morreu ou o jogador que ganhou o avanço, abriu o contêiner ou quebrou o bloco, killer para o assassino ou killer_player para um assassino que é um jogador.

  • set_nbt - Adiciona dados NBT ao item.
    •  tag: Tag string a ser adicionada, semelhante às usadas pelos comandos. Observe que o primeiro colchete é obrigatório e as aspas precisam ser escapadas usando uma barra invertida (\).

  • set_stew_effect - Define os efeitos de status para ensopado suspeito.
    •  effects: Os efeitos a serem aplicados.
      • Um efeito.
        •  type: O ID do efeito.
        •  duration: A duração do efeito.

Condições[]

Artigo principal: Predicado

As tabelas de saque usam várias condições que adicionam requisitos a um drop, pool ou função. Abaixo está uma lista de condições válidas e as tags usadas por elas. As tags são colocadas no mesmo objeto de condição que  condition.

Além disso, as condições do diretório predicates no diretório <namespace> em pacotes de dados têm a mesma estrutura que as condições de saque.

Veja predicado para as condições possíveis.

Lista de tabelas de itens[]

Abaixo está uma lista de todas as tabelas de saque que existem por padrão. Mais tabelas podem ser adicionadas no mundo, exceto para uso com mapas personalizados. Observe que alguns blocos, como a rocha, os portais finais e outros blocos inquebráveis na sobrevivência não têm tabelas de saque, alguns blocos compartilham tabelas de saque (ou seja, variantes de blocos de parede e piso) e que certos drops, ou seja, head drops de creepers carregados e o Wither's Nether Star, atualmente não são cobertos por tabelas de saque.[1]

Pacotes de dados[]

Artigo principal: Pacotes de dados

Pacotes de dados personalizados usam tabelas de itens para alterar o que o saque pode gerar em contêineres ou cair por criaturas. Eles podem alterar as tabelas de itens existentes ou criar novas. Esta é a estrutura do arquivo:

  • pasta de salvamento do mundo
    • datapacks
      • pacote de dados

Os arquivos JSON vão nesta pasta. As tabelas de saque de baunilha são agrupadas em 4 categorias: gameplay (pesca), entities, blocks e chests, com algumas tabelas sendo subpastas desses. Por exemplo, o arquivo para zumbis iria em datapacks/pack name/data/minecraft/loot_tables/entities/zombie.json. Isso faz com que todos os zumbis naquele mundo usem a tabela de loot do pacote de dados em vez da tabela de loot padrão do zumbi.

As tabelas de saque são namespaced. Para criar uma tabela de saque personalizada, primeiro crie uma nova pasta para o namespace personalizado e, em seguida, crie tabelas de saque seguindo uma estrutura semelhante. Em seguida, invoque a criatura com a tag de dados DeathLootTable definida com o nome do diretório e do arquivo (sem a extensão .json), como DeathLootTable:"custom_namespace:path/to/table".

Histórico[]

Edição Java
1.9 October 19, 2015Dinnerbone anuncia tabelas de saque.
15w43a Adicionadas tabelas de saque.
15w43b Condição adicionada entity_scores.
15w43c Renomeado "villager_golem.json" para "iron_golem.json"
Adicionadas pesca tabelas de saque, ovelha sem , e zumbi e cavalo esqueleto.
Renomeado a tag  item: para  name:, e a tag  items: para  entries:
Adicionada a tag  type: e suporte para carregar uma tabela de loot em vez de um item.
Adicionada a tag  luck: aos arquivos padrão, embora atualmente não faça nada no código.
Adicionada a função set_damage.
15w44a Adicionada a função enchant_randomly e set_attributes.
15w44b Adicionada a tag  qualidade.
Removidas as tags  luck e  luck_multiplier.
Adicionada a tag  bonus_rolls.
15w51a Um jogador no modo espectador não aciona mais um contêiner para usar sua tabela de saque para gerar saque.
1.9.1 pre1 As tabelas de saque agora funcionam com ejetores e Liberadores.
Adicionada tabela padrão baús/jungle_temple_dispenser.
1.11 16w32a Burros, mulas, Zumbi-múmias e aldeão zumbis agora tiram cada um de suas próprias tabelas de saque, em vez de sacando das tabelas de saque cavalo e zumbi respectivamente
16w43a Aldeãos, vexes e Dragão Enders agora podem sacar de suas próprias tabelas de saque.
1.13 17w43a Tabelas de loot personalizadas foram movidas para Pacote de dadoss.
1.14 18w43a Bloco drops foram alterados para usar tabelas de saque também.
As tabelas de saque receberam várias novas opções.
Definir entidade para "isto" agora se refere ao jogador nas tabelas de saque baú e bloco.
18w44a Adicionadas tabelas de saque para gatos, cat_morning_gift, jogadores e wither.
Adicionadas tabelas de saque para novos blocos.
18w46a Adicionada tabela de saque para Ilusionistas.
18w48a Adicionado mais tabelas de saque para villages, alguns dos quais estão atualmente em uso.
Removida a tabela de saque: village_blacksmith.
18w49a As tabelas de saque village_savanna_house e village_snowy_house agora são usadas.
Adicionado mais tabelas de saque para villages.
18w50a village_desert_house e village_taiga_house tabelas de saque agora são usadas, fazendo com que todas as tabelas de saque anteriormente não utilizadas não sejam mais utilizadas.
?Tabela de saque vazia agora está codificada.
1.15 19w34a Adicionada a função copy_state.
1.16 20w12a Adicionado subpredicado fishing_hook para verificar as propriedades do anzol de pesca.

Problemas[]

Problemas relacionados com "Loot table" são mantidos no rastreador de erros. Reporte problemas lá, em inglês.

Referências[]

Advertisement