Pular para o conteúdo principal

Empacotamento de Conteudo Personalizado do EternalTD

O EternalTD continua a suportar conteudo personalizado orientado por sistema de ficheiros, mas o codigo atual espera uma estrutura de pastas especifica e um modelo de rastreio de pacotes definido.

Raiz de Importacao

As importacoes manuais continuam a passar por:

plugins/EternalTD/imports/

Depois de importar conteudo manualmente, executa:

/etd reload

Pastas Canonicas de Conteudo

O plugin atual analisa estas pastas em minusculas:

plugins/EternalTD/levels/
plugins/EternalTD/waves/
plugins/EternalTD/npcs/
plugins/EternalTD/worlds/

Nota legacy:

  • Levels/ e NPCs/ sao nomes de pasta antigos.
  • O EternalTD agora migra-os para levels/ e npcs/ durante o arranque e o reload.

Regras de Empacotamento de Mundos

O EternalTD trata os mundos dentro de:

plugins/EternalTD/worlds/

como modelos de mundo.

Quando um jogador inicia um nivel, o EternalTD clona o mundo-modelo correspondente para o contentor de mundos do servidor e executa a sessao nessa copia clonada.

Implicacao pratica:

  • empacota os mundos-modelo em plugins/EternalTD/worlds/
  • nao trates os mundos clonados em runtime como a source of truth do conteudo empacotado

O mundo hub oficial e um caso especial e e rastreado diretamente no contentor de mundos do servidor como:

etd_spawn

O que Torna um Pacote Alternavel

Alternar pacotes em /etd setup so funciona para pacotes que expõem ficheiros de configuracao rastreados.

Os campos de asset atualmente rastreados sao:

  • levelFiles
  • waveFiles
  • npcFiles
  • worldFolders
  • worldContainerFolders
  • markerFileName

Na pratica:

  • pacotes de nivel, wave e NPC podem ser ativados ou desativados escrevendo isEnabled dentro desses ficheiros YAML
  • conteudo partilhado do contentor de mundos e pacotes de recursos baseados apenas em marcador nao sao alternaveis da mesma forma

Campos de Metadados do Pacote

O modelo atual de campos de configuracao de pacote suporta:

  • isEnabled
  • name
  • description
  • downloadLink
  • version
  • nightbreakSlug
  • levelFiles
  • waveFiles
  • npcFiles
  • worldFolders
  • worldContainerFolders
  • markerFileName
  • category
  • toggleable

Se queres que o conteudo personalizado se comporte como um pacote rastreado na UI de setup, precisas de metadados de pacote que correspondam a esses campos.

Notas sobre Empacotamento de Modelos

O pacote atual EternalTD Custom Models e rastreado com um ficheiro marcador em vez de ficheiros normais de configuracao do EternalTD.

Isso significa:

  • o EternalTD consegue rastrear se o pacote de modelos partilhado foi transferido
  • os assets reais de modelo vivem no lado FreeMinecraftModels do setup quando o FMM esta instalado
  • a limpeza e manual e seguida de /etd reload

O que Esta Pagina Nao Afirma

Esta pagina documenta os destinos atuais em disco e o modelo de rastreio verificados no repositorio.

Nao define um esquema ZIP first-party para arquivos de pacote Nightbreak, porque esse formato de empacotamento nao esta descrito neste repositorio como uma especificacao publica autonoma para autores.