Pular para o conteúdo principal

Modelos e pacote de recursos do EternalTD

O fluxo de modelos atual do EternalTD é construído em torno do FreeMinecraftModels, e seu fluxo de pacote de recursos atual é conduzido pelo /etd install.

FreeMinecraftModels

FreeMinecraftModels é uma dependência opcional.

  • O EternalTD carrega sem ele.
  • Quando está presente, o EternalTD pode substituir entidades vanilla por modelos estáticos baseados em FMM.
  • Quando não está presente, o EternalTD recorre ao seu comportamento sem FMM em vez de bloquear a inicialização.

O pacote de modelos compartilhado atual é:

  • EternalTD Custom Models

Esse pacote é baixado através do fluxo de conteúdo do EternalTD e é descrito no código como conteúdo que é importado para o FreeMinecraftModels quando o FMM está disponível.

Como os modelos do pack acabam do lado do FreeMinecraftModels, o EternalTD também trata uma pasta de modelos do FMM não vazia como prova de que o pack está instalado:

plugins/FreeMinecraftModels/models/EternalTD default towers/
plugins/FreeMinecraftModels/Models/EternalTD default towers/

(a grafia com maiúscula é o nome legado da pasta do FMM). Se qualquer uma delas estiver presente, /etd setup mostra o pack como instalado e grava o marcador de rastreamento na hora, então modelos que chegaram por uma importação manual ou pela configuração do próprio FMM já não são lidos como ausentes.

O que /etd reload faz para modelos

/etd reload reinicia o EternalTD no lugar e recarrega os próprios arquivos do EternalTD, mas não recarrega o FreeMinecraftModels. Existe no código fonte do EternalTD um método que encaminharia a recarga para o FMM, mas nada o chama no build atual.

Após importar ou baixar assets de modelo, recarregue também o FreeMinecraftModels através dos comandos dele.

/etd install

/etd install não baixa um pacote de modelos. Ele aplica as configurações oficiais de distribuição do pacote de recursos do EternalTD.

A URL oficial atual do pacote de recursos é:

https://www.magmaguy.com/downloads/eternaltd_resource_pack.zip

Se o ResourcePackManager estiver instalado

O EternalTD registra o pacote oficial no ResourcePackManager e solicita ao RPM que recarregue seu estado de pacotes.

Nesse modo:

  • O EternalTD não escreve a URL do pacote no server.properties
  • O ResourcePackManager lida com a distribuição para os jogadores
  • O EternalTD registra /etd reload como o comando de recarga de acompanhamento

Se o ResourcePackManager não estiver instalado

O EternalTD recorre à edição direta do server.properties.

Ele escreve:

  • resource-pack
  • resource-pack-sha1

Antes de alterar qualquer uma das propriedades, o EternalTD baixa o pack para um arquivo temporário e calcula o SHA1 dele. Se o download ou o hash falhar, o server.properties é deixado inalterado. Em caso de sucesso, ambos os valores são escritos juntos através de um arquivo temporário e substituição atômica onde o sistema operacional oferece suporte; o pack temporário baixado é então deletado.

Neste modo alternativo, o comando instrui a reiniciar o servidor para que as novas configurações do pacote sejam aplicadas.

Verificação de atualização SHA1

Se o EternalTD estiver usando o caminho server.properties em vez do ResourcePackManager, a inicialização também verifica se o SHA1 do pacote de recursos oficial mudou.

Se mudou, o EternalTD atualiza o SHA1 armazenado e avisa que um reinício é necessário.

Comportamento de aviso ao operador

Quando todas estas condições são verdadeiras:

  • FreeMinecraftModels está instalado
  • o jogador que entra é operador
  • o EternalTD não detecta uma configuração ativa de pacote de recursos

O EternalTD avisa que o pacote de recursos oficial ainda precisa ser instalado e direciona o operador para:

  • /etd install
  • /etd initialize — Abre o menu de configuração inicial. Requer eternaltd.*.
  • /etd setup

Notas de limpeza

O pacote de modelos personalizados é tratado como conteúdo de recurso compartilhado, não como um pacote alternável normal.

Se você quiser removê-lo:

  1. Remova os arquivos importados manualmente.
  2. Revise as pastas de modelos do FreeMinecraftModels ou /fmm setup conforme necessário.
  3. Execute /etd reload.