Pular para o conteúdo principal

Comportamento do BetterFood

BetterFood usa seleção de alimentos consciente da fome em vez de simplesmente comer o item mais nutritivo primeiro.

Quando É Acionado

BetterFood reage ao FoodLevelChangeEvent vanilla na prioridade HIGHEST e ignora eventos cancelados, portanto outro plugin que cancele ou reescreva a mudança de fome tem a última palavra antes de o BetterFood analisá-la. Ele só age quando a fome do jogador está diminuindo. O jogador deve ter a permissão betterfood.user e não pode ter desativado a alimentação automática através de /betterfood toggleEating.

Regras de Seleção

  1. Os alimentos são ordenados por fome restaurada decrescente, depois por saturação decrescente e nome do material crescente. Uma tabela pré-calculada indica onde começa a procura para cada nível de fome.
  2. A procura segue para alimentos menos nutritivos. É consumido o primeiro alimento transportado sem personalizações; entre pilhas iguais, é usada a posição de menor índice no inventário.

Pode haver desperdício: com fome 11, ensopado de coelho (10) pode ser escolhido antes de carne assada (8), embora só faltem 9 pontos. Não existe uma segunda passagem para minimizar o excesso. A fome fica limitada a 20 e a saturação à fome resultante.

Alimentos em Tigela

Sopa de beterraba, ensopado de cogumelos e ensopado de coelho retornam uma tigela vazia quando consumidos automaticamente, correspondendo ao vanilla:

  • se o stack consumido acabar, a tigela o substitui no mesmo slot
  • caso contrário, a tigela é adicionada ao inventário, e largada aos pés do jogador se não houver espaço para ela

Itens Protegidos

O BetterFood só consome automaticamente um item que seja byte a byte idêntico a um stack vanilla intacto do mesmo material. Qualquer coisa que carregue dados de item extras é ignorada, incluindo:

  • um nome de exibição personalizado
  • lore
  • encantamentos, dados de modelo personalizado e outros componentes de item
  • dados persistentes escritos por outros plugins

A verificação compara o item inteiro com um stack vanilla recém-criado, em vez de uma lista de campos mantida à mão, então dados de item adicionados por versões futuras do Minecraft são ignorados automaticamente. Isso visa reduzir a chance de consumir itens de plugins ou itens decorativos por engano.

Alimentos Suportados

BetterFood consumirá automaticamente os seguintes alimentos:

AlimentoFome RestauradaSaturação Restaurada
Maçã42.4
Batata Assada56.0
Beterraba11.2
Sopa de Beterraba67.2
Pão56.0
Cenoura33.6
Carne Assada812.8
Frango Assado67.2
Bacalhau Assado56.0
Carneiro Assado69.6
Costeleta de Porco Assada812.8
Coelho Assado56.0
Salmão Assado69.6
Biscoito20.4
Alga Seca10.6
Frutinhas Brilhantes20.4
Cenoura Dourada614.4
Fatia de Melancia21.2
Ensopado de Cogumelos67.2
Batata10.6
Torta de Abóbora84.8
Ensopado de Coelho1012.0
Frutas Silvestres20.4

Alimentos Excluídos

Os seguintes itens comestíveis são intencionalmente excluídos da alimentação automática. São carnes cruas, itens especiais ou alimentos com efeitos negativos ou imprevisíveis:

  • Carne (crua)
  • Frango (cru)
  • Fruta-do-coro
  • Bacalhau (cru)
  • Maçã Dourada Encantada
  • Maçã Dourada
  • Garrafa de Mel
  • Carneiro (cru)
  • Batata Venenosa
  • Costeleta de Porco (crua)
  • Baiacu
  • Coelho (cru)
  • Carne Podre
  • Salmão (cru)
  • Olho de Aranha
  • Ensopado Suspeito
  • Peixe Tropical

Qualquer outro material comestível adicionado por versões mais recentes do Minecraft que não esteja na lista de suportados acima também será ignorado até que seja explicitamente adicionado a essa lista.

Na inicialização, o BetterFood executa uma auditoria de cobertura sobre todos os itens comestíveis que a versão do seu servidor conhece e registra uma única linha no console listando aqueles que ele intencionalmente não consome automaticamente (BetterFood is intentionally not auto-eating these food items: ...), para que você possa ver rapidamente quais itens são ignorados na versão do seu servidor. A linha só é impressa quando existe pelo menos um item ignorado, então a ausência de qualquer linha significa que a lista de suportados já cobre todos os itens comestíveis daquela versão.