Pular para o conteúdo principal

Tabela de Loot Personalizada

Formato universal de loot. Usado pelo EliteMobs em vários locais diferentes.

Note que este é o formato mais recente e o que se recomenda usar, mas existem alguns formatos alternativos mais antigos.

Nota: O suporte ao formato legado continua disponível usando a sintaxe separada por dois-pontos: filename.yml:chance:permission. No entanto, o formato moderno mostrado abaixo é o recomendado para novas configurações.

Nessa sintaxe legada, a probabilidade é obrigatória. Escrever apenas filename.yml sem mais nada depois continua a largar o item a 100%, mas regista um aviso Failed to parse entry ... due to invalid: chance em cada arranque, por isso é preferível usar filename.yml:1.0 ou o formato moderno.

Certifique-se de que inicia as suas tabelas de loot com uniqueLootList: antes de adicionar quaisquer definições, caso contrário a configuração .yml dará erro.

Largar itens elite:

ChaveDetalhesValoresPredefinição
filenameDefine o nome do ficheiro do Item Personalizado a usar.Nome do ficheironone
Exemplo
uniqueLootList:
- filename: magmaguys_toothpick.yml

Isto fará com que o mob largue 1 MagmaGuy's Toothpick com 100% de probabilidade de drop.

Definições gerais:

ChaveDetalhesValoresPredefinição
chanceDefine a probabilidade de o loot ser largado, em que 1.0 é 100%.Double1.0
amountDefine a quantidade desta entrada de loot a largar. Ignorado pelas entradas de moeda — para essas, use currencyAmount.Inteiro1
permissionDefine o nó de permissão necessário para os jogadores receberem este loot. Suportado pelas entradas de item elite, de moeda e de comando. As entradas de itens vanilla nunca o leem, em nenhum dos formatos.Stringnone
Exemplo
uniqueLootList:
- filename: magmaguys_toothpick.yml
chance: 0.5
amount: 10
permission: elitemobs.loot.rare

Isto fará com que o mob largue 10 MagmaGuy's Toothpick com 50% de probabilidade de drop, mas apenas para jogadores com a permissão elitemobs.loot.rare.

Largar moedas elite:

ChaveDetalhesValoresPredefinição
currencyAmountDefine a quantidade de moedas que será largada.Inteironone

Note que a chave partilhada amount não faz nada nas entradas de moeda — o pagamento em moedas vem apenas do currencyAmount. Só no formato de string separado por dois-pontos, uma entrada que acabe com um currencyAmount de 0 é rejeitada com um aviso em vez de ser registada.

Exemplo
uniqueLootList:
- currencyAmount: 344
chance: 0.5

Isto fará com que o mob largue 344 Moedas Elite com 50% de probabilidade de drop.

Largar itens vanilla:

ChaveDetalhesValoresPredefinição
materialDefine o material do item largado. Aceita nomes de materiais do Minecraft (não diferencia maiúsculas de minúsculas). Também pode usar type em vez de material.Materialnone
Exemplo
uniqueLootList:
- material: APPLE
chance: 0.3
amount: 5

Isto fará com que o mob largue 5 Maçãs com 30% de probabilidade de drop.

Executar comandos ao largar loot:

Pode executar comandos de consola quando o loot é largado. Isto é útil para integração com outros plugins ou para fornecer recompensas personalizadas. As entradas de comando usam apenas o formato de string separado por dois-pontos.

ChaveDetalhesValoresPredefinição
commandDefine o comando de consola a executar. Use %player% como marcador de posição (placeholder) para o nome do jogador.Stringnone

O próprio comando não pode conter um : nem um segundo =, porque a entrada é dividida em ambos esses caracteres quando é interpretada.

Como se comporta o chance nos comandos

As entradas de comando lançam o chance duas vezes, e o segundo lançamento é invertido, pelo que o comando corre efetivamente chance × (1 - chance) das vezes:

  • chance=1.0 (o valor por omissão quando não o define) significa que o comando nunca corre.
  • chance=0.5 dá a taxa mais alta possível, 25%.
  • chance=0.9 dá 9%.

Defina sempre um chance explícito abaixo de 1.0 nas entradas de comando, e conte com uma taxa real de disparo inferior ao número que escreveu.

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

Isto executará o comando give <player> diamond 1 a partir da consola quando o mob for morto, cerca de 25% das vezes (veja o aviso acima). O marcador de posição %player% será substituído pelo nome real do jogador. Apenas os jogadores com a permissão elitemobs.loot.command acionarão este comando.

Recompensas de arena:

Ao criar tabelas de loot de arena, certifique-se de que inicia a sua tabela de loot com rawArenaReward: em vez de uniqueLootList:.

ChaveDetalhesValoresPredefinição
waveDefine a vaga (wave) na qual esta entrada de loot será largada. Apenas para uso em arenas. Suportado no formato de mapa para entradas de itens vanilla, mas apenas no formato de string para entradas de itens elite (filename).Inteiro-1
itemLevelDefine o nível do drop de loot. Apenas para uso em arenas, e só é lido para entradas de item elite (filename). Disponível apenas no formato de string, não no formato de mapa.Inteiro1
Ambas têm armadilhas
  • Só as entradas com um wave de 1 ou superior são registadas como recompensas de vaga. Uma entrada de recompensa de arena sem wave é interpretada e aceite, mas nenhuma vaga a irá jamais entregar.
  • O itemLevel tem 1 como valor por omissão, e não o nível da arena ou do jogador. Um item elite scalable atribuído por uma arena sem um itemLevel explícito é, portanto, largado como um item de nível 1.
Exemplo
rawArenaReward:
- material: BREAD
wave: 1
amount: 10
chance: 0.5
- filename=magmaguys_toothpick.yml:wave=1:itemLevel=2

Quando os jogadores vencerem a primeira vaga, isto fará com que a arena largue 10 Pães com 50% de probabilidade de drop e 1 MagmaGuy's Toothpick de nível 2 com 100% de probabilidade de drop.

Note que a entrada de item elite (filename) usa aqui o formato de string, porque wave e itemLevel só são interpretados para entradas de item elite no formato de string. As entradas de itens vanilla (como a material: BREAD acima) aceitam wave no formato de mapa.

Masmorras Instanciadas:

ChaveDetalhesValoresPredefinição
difficultyIDDefine a dificuldade da masmorra instanciada para a qual este loot será largado. Apenas para uso em masmorras instanciadas.Stringnone

O difficultyID só é lido para entradas de item elite (filename) escritas no formato de mapa mostrado abaixo. Não é interpretado no formato de string separado por dois-pontos, e não é lido para entradas vanilla, de moeda ou de comando.

Além disso, só tem efeito no loot de Bosses Personalizados. O loot de baús de tesouro, de quests e de arenas nunca o avalia.

Dentro de uma masmorra instanciada, a entrada comporta-se da seguinte forma:

  • A dificuldade da masmorra corresponde ao difficultyID: o item vai para a tabela de loot de grupo partilhada do boss, em vez de ser entregue diretamente a quem o matou, para que todo o grupo possa reclamá-lo.
  • A dificuldade da masmorra não corresponde: a entrada é ignorada.
  • O jogador não está numa masmorra instanciada: o difficultyID é ignorado e o item é largado normalmente.
Exemplo
uniqueLootList:
- filename: magmaguys_toothpick.yml
chance: 0.5
difficultyID: 1

Isto fará com que o mob largue 1 MagmaGuy's Toothpick com 50% de probabilidade de drop se os jogadores tiverem derrotado o boss na dificuldade 1.