Empacotador de masmorras
O que são masmorras?
Podes encontrar informação sobre masmorras, incluindo sobre as masmorras pré-feitas, aqui.
O que é o empacotador de masmorras?
O formato de pacote permite distribuir masmorras, eventos, modelos, arenas, NPCs, itens e outros conteúdos do EliteMobs. O comando de exportação recolhe apenas parte das pastas aceites pelo importador. Acrescenta manualmente os restantes ficheiros necessários antes de distribuir o pacote.
Porquê usar pacotes de masmorra?
- Masmorras instanciadas! As masmorras instanciadas só podem ser criadas através do sistema de pacotes de masmorra.
- Cópias de segurança seguras de Minidungeons! Se fizeres um Pacote de Masmorra, poderás implementá-lo e reimplementá-lo em qualquer servidor que queiras, a qualquer altura e por qualquer motivo.
- Fácil de ligar e desligar! Podes sempre fazer
/em setupe ligar ou desligar Pacotes de Masmorra, temporária ou permanentemente. - Fácil de partilhar! Se quiseres partilhar as tuas criações, basta comprimir os Pacotes de Masmorra num zip e enviá-los a outras pessoas. Existe uma sala no Discord dedicada às criações da comunidade, se tiveres interesse!
- Teletransportes! Os pacotes de combate instalados com
listedInTeleports: trueaparecem na página de teletransportes do/em, exceto os desafios de encantamento. Tens de configurar os destinos; o menu não cria as coordenadas por ti.
Criar masmorras
As definições seguintes são usadas para criar um ficheiro de configuração que deve ir para a pasta content_packages. Estas definições servem especificamente para criar masmorras, e não são necessárias se apenas quiseres usar o empacotador de masmorras para distribuir conteúdo que não seja masmorra, como um pack de itens ou de eventos.
Plugins necessários
Nenhum. A proteção das masmorras é tratada pelo próprio EliteMobs: definir protect: true aplica ao mundo do pacote o conjunto de proteções por mundo do próprio EliteMobs, sem qualquer plugin de regiões envolvido.
O WorldGuard continua a ser uma dependência opcional (soft dependency). Quando está instalado, as flags de região específicas do EliteMobs ficam disponíveis, mas não é necessário para que um pacote de masmorra fique protegido.
Criar uma masmorra, passo a passo
O EliteMobs costumava ter dois grandes tipos de masmorras: baseadas em mundo e baseadas em schematic.
As masmorras baseadas em schematic estavam associadas a uma construção em schematic. Foram descontinuadas e já não são suportadas.
Todas as masmorras do EliteMobs são agora baseadas em mundo.
Ficheiro pack.meta obrigatório
O teu pacote de masmorra deve incluir um ficheiro pack.meta, que é simplesmente um ficheiro .txt renomeado com a extensão .meta. Este ficheiro deve conter apenas uma palavra, indicando a que plugin o pacote se destina (por exemplo, "elitemobs", escrito em minúsculas). O ficheiro pack.meta tem de estar no diretório raiz do teu pacote, junto de todas as outras pastas.
Valores globais
Os valores seguintes aplicam-se a todas as masmorras
isEnabled
Define se o pacote de masmorra está ativado.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
isEnabled | Boolean | true | ✅ |
Exemplo
isEnabled: true
name
Define o nome do conteúdo. Suporta códigos de cor.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
name | Texto | nenhum | ✅ |
Exemplo
name: '&c[lvl 999] &aThe Green Dungeon'

contentType
Define o tipo de masmorra.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
contentType | OPEN_DUNGEON / INSTANCED_DUNGEON / DYNAMIC_DUNGEON / HUB / META_PACKAGE / ITEMS_PACKAGE / EVENTS_PACKAGE / MODELS_PACKAGE | nenhum | ✅ |
Exemplo
contentType: INSTANCED_DUNGEON
SCHEMATIC_DUNGEON já não é suportadoO SCHEMATIC_DUNGEON continua a ser aceite pelo parser, mas as masmorras em schematic foram removidas no EliteMobs 9.0 e substituídas por masmorras em mundo. Um pacote que o use não carrega nada e imprime um aviso na consola a dizer-te para apagares a entrada. Se quiseres a experiência de schematic, usa antes o BetterStructures com os pacotes de elite shrines.
customInfo
Campo informativo antigo que continua a ser lido, guardado e traduzido. O menu /em setup atual usa setupMenuDescription; alterar customInfo não muda a descrição desse menu.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
customInfo | String List | nenhum | ✅ |
Exemplo
customInfo:
- '&aThe best dungeon.'
- '&aMade by: CoolPlayer'

setupMenuDescription
Define a descrição deste pacote no menu /em setup. Suporta códigos de cor.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
setupMenuDescription | String List | nenhum | ❌ |
Exemplo
setupMenuDescription:
- '&2A cool dungeon for levels 10-20!'
- '&2Features 3 bosses and custom loot!'
downloadLink
Define a ligação de transferência manual mostrada pelo /em setup quando o conteúdo falta e não existe um identificador de pacote Nightbreak. Este campo, por si só, não ativa transferências nem atualizações automáticas do Nightbreak para pacotes personalizados.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
downloadLink | String | string vazia | ❌ |
Exemplo
downloadLink: http://www.example.org

dungeonSizeCategory
Define a designação de tamanho do pacote. contentType determina se é instanciado; esta categoria não muda o seu funcionamento.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
dungeonSizeCategory | Especial [1] | LAIR | ❌ |
Exemplo
dungeonSizeCategory: MINIDUNGEON

Especial [1]
Expandir Tabela
| Chave | Descrição |
|---|---|
LAIR | Os covis (lairs) são um tipo de masmorra pequena focada num grande combate de boss. |
SANCTUM | Os santuários são o equivalente instanciado dos covis. Ou seja, giram em torno de um enorme combate de boss. |
MINIDUNGEON | As minidungeons são um tipo de masmorra de tamanho médio que normalmente contém 3-15 minibosses e um grande boss, bem como muitos mobs "trash" pensados para serem "farmados" pelos jogadores em busca de moedas e equipamento. |
DUNGEON | As dungeons são o equivalente instanciado das minidungeons. É o tipo de masmorra mais tradicional dos MMORPG, em que os jogadores formam grupo e atravessam um corredor de mobs trash e minibosses até enfrentarem um boss final. |
RAID | Designação de tamanho reconhecida. Não ativa um sistema de raids nem um tipo de conteúdo separado. |
ADVENTURE | As adventures são mapas de aventura completos. Incluem linhas de missões, NPCs, grandes quantidades de minibosses e bosses, e podem até conter as suas próprias arenas ou masmorras lá dentro. |
ARENA | As arenas são áreas de sobrevivência baseadas em vagas, em que os jogadores são recompensados por derrotarem vagas. |
OTHER | Qualquer outra coisa que não caiba nas categorias anteriores. |
REALM | Designação para mundos grandes com muito conteúdo. contentType determina se o mundo é partilhado ou instanciado. |
Para descrições mais detalhadas, consulta Masmorras
protect
Define se o EliteMobs regista o mundo no sistema de proteção do MagmaCore. Este bloqueia a destruição e colocação de blocos por jogadores, combustão, ignição, a maior parte do desaparecimento de blocos, decomposição de folhas, farinha de osso, esvaziamento de baldes, edição de placas, acesso aos contentores suportados exceto baús de tesouro registados, abertura de portas, alçapões e portões, interação com ovos de dragão e vasos, alterações a molduras e suportes de armadura, alterações de blocos por entidades e aparecimentos de criaturas sem motivo CUSTOM. O gelo formado pelo encantamento de caminhar sobre a água pode continuar a derreter. Também bloqueia poções arremessáveis e persistentes de Tecelagem lançadas por jogadores. allowExplosionBlockDamage, allowLiquidFlow e allowElytra controlam as respetivas proteções. As definições globais de masmorras controlam o fogo amigo e os multiplicadores de dano ambiental. Com preventFlyToggleInDungeons: true em CombatTag.yml (a predefinição), a proteção também impede que jogadores que não são operadores comecem a voar. Os administradores podem usar /em protection bypass nas ações que suportam essa exceção.
Com protect: false, esse sistema de proteção não é registado. O mundo continua a pertencer ao EliteMobs: associação à masmorra, ciclo de vida das instâncias, combate e outras funcionalidades continuam ativos. Desativar a proteção não transforma a masmorra num mundo de sobrevivência normal.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
protect | Boolean | true | ❌ |
Exemplo
protect: true
dungeonVersion
Define a versão do pacote. Incrementa-a na configuração incluída em cada atualização. As verificações do Nightbreak comparam este valor nos pacotes instalados elegíveis; o argumento de versão de /em package não o escreve.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
dungeonVersion | Inteiro | 0 | ❌ |
Exemplo
dungeonVersion: 1
playerInfo
Define a descrição nos menus de teletransporte em formato de livro, inventário e diálogo. Suporta códigos de cor e os marcadores $bossCount, $lowestTier e $highestTier. O pacote tem de ser elegível para esse menu e ter listedInTeleports: true.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
playerInfo | Texto | nenhum | ❌ |
Exemplo
playerInfo: 'Difficulty: &a1-man easy content!'

regionEnterMessage
Campo antigo de mensagem de entrada que continua a ser lido, guardado e traduzido. Os listeners atuais de entrada não o leem; defini-lo não envia uma mensagem.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
regionEnterMessage | String | nenhum | ❌ |
Exemplo
regionEnterMessage: '&aYou have entered the dungeon!'

regionLeaveMessage
Campo antigo de mensagem de saída que continua a ser lido, guardado e traduzido. Os listeners atuais de saída não o leem; defini-lo não envia uma mensagem.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
regionLeaveMessage | String | nenhum | ❌ |
Exemplo
regionLeaveMessage: '&aYou have left the dungeon!'

hasCustomModels
Assinala que o pacote de masmorra inclui modelos personalizados (para o ModelEngine ou o FreeMinecraftModels). A chave é lida e escrita, mas nada no EliteMobs atua atualmente sobre ela — os modelos são instalados apenas por a pasta models estar presente no pacote. Trata-a como um marcador de documentação.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
hasCustomModels | Boolean | false | ❌ |
Exemplo
hasCustomModels: false
dungeonConfigFolderName
Define o nome das pastas usadas para os ficheiros associados a esta masmorra.
Obrigatório para masmorras instanciadas!
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
dungeonConfigFolderName | String | nenhum | ❌ |
Exemplo
dungeonConfigFolderName: my_dungeon_folder
anchorPoint
Ponto de referência da era das schematics para coordenadas relativas. O parser de pacotes ainda lê anchorPoint e calculatedRotation, mas nenhum comando ou funcionalidade atual os usa. O comando /em relativecoords, que media a partir da âncora, foi removido no EliteMobs 9.0.5. Em vez disso, posiciona bosses, baús e NPCs com as localizações nos seus próprios ficheiros.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
anchorPoint | Location | nenhum | ❌ |
calculatedRotation | Integer (graus) | 0 | ❌ |
Exemplo
anchorPoint: my_dungeon_world,100,64,100,0,0
calculatedRotation: 0
contentLevel
Define o nível de conteúdo que a masmorra deve apresentar no menu do EM.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
contentLevel | Inteiro | 0 | ❌ |
Exemplo
contentLevel: 20
enchantmentChallenge
Marca o pacote como desafio de encantamento a solo. É registado numa lista separada e excluído do menu normal de teletransportes. Precisa de uma configuração instanciada válida, com modelo de mundo, ponto de partida e objetivos que possam ser concluídos.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
enchantmentChallenge | Boolean | false | ❌ |
Exemplo
enchantmentChallenge: false
song
Define se a masmorra deve ter uma banda sonora.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
song | Texto | nenhum | ❌ |
name= Identificador do som a reproduzir no cliente, por exemplo elitemobs:dark_cathedral.ambient, não o caminho de um ficheiro de áudio.
length= A duração da banda sonora em milissegundos. O EliteMobs converte isto internamente para ticks, pelo que tem de ser a duração real do som, caso contrário a faixa reinicia demasiado cedo ou demasiado tarde.
As duas partes são separadas por um espaço. Uma faixa única repete-se. Com duas faixas separadas por ->, a primeira toca uma vez e a segunda repete-se; ambas usam name=/length=. O cliente já tem de ter esse som no seu pacote de recursos. Esta definição não distribui o pacote.
Exemplo
song: name=elitemobs:dark_cathedral.ambient length=93830
Forma com duas faixas:
song: name=elitemobs:intro length=12000->name=elitemobs:dark_cathedral.ambient length=93830
dungeonLockoutMinutes
Define o bloqueio de recompensas por boss instanciado para o jogador e os membros do grupo abrangidos, em minutos. Não impede a entrada na masmorra. A predefinição é 4320, ou 72 horas; 0 desativa-o para este pacote. Os jogadores abrangidos também não recebem XP de habilidade desse boss durante o bloqueio.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
dungeonLockoutMinutes | Integer | 4320 | ❌ |
Exemplo
dungeonLockoutMinutes: 1440
containedPackages
Define a lista de pacotes de masmorra contidos num meta-pacote. É usado quando o contentType está definido como META_PACKAGE, para listar todos os subpacotes que pertencem à masmorra maior.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
containedPackages | String List | nenhum | ❌ |
Exemplo
containedPackages:
- my_dungeon_adventure.yml
- my_dungeon_sanctum.yml
- my_dungeon_boss_fight.yml
customItemFilenames
Define os ficheiros de um pacote de itens. Uma lista não nula, mesmo vazia, força contentType para ITEMS_PACKAGE. O carregador verifica depois as listas de eventos e modelos, que podem substituir esse tipo. Define apenas a lista adequada ao pacote.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
customItemFilenames | String List | nenhum | ❌ |
Exemplo
customItemFilenames:
- my_custom_sword.yml
- my_custom_armor.yml
customEventFilenames
Define os ficheiros de um pacote de eventos. Uma lista não nula, mesmo vazia, força contentType para EVENTS_PACKAGE após a verificação dos itens. Uma lista de modelos pode ainda substituir esse tipo.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
customEventFilenames | String List | nenhum | ❌ |
Exemplo
customEventFilenames:
- my_custom_event.yml
modelNames
Define os nomes de um pacote de modelos. Uma lista não nula, mesmo vazia, força contentType para MODELS_PACKAGE após as verificações dos itens e eventos.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
modelNames | String List | nenhum | ❌ |
Exemplo
modelNames:
- my_custom_model
Campos antigos de masmorras schematic preservados
relativeBossLocations, relativeTreasureChestLocations, schematicName, defaultSchematicRotation, corner1 e corner2 continuam no parser para ficheiros antigos. Não são usados para colocar conteúdo nos atuais pacotes de mundos partilhados ou instanciados. Usa as posições das definições de bosses e baús e o modelo de mundo. anchorPoint e calculatedRotation são mantidos da mesma forma; consulta anchorPoint.
Chaves traduzíveis
Seis dos valores acima são registados no sistema de tradução quando o pacote é carregado: name, customInfo, playerInfo, regionEnterMessage, regionLeaveMessage e o name de cada entrada em difficulties. Num servidor a correr num idioma que não o inglês, estes são procurados no CSV desse idioma, e o texto que escreveres no YAML é aquilo com que a coluna inglesa é reconciliada. Escreve-os em inglês se quiseres que o teu pacote seja traduzível.
Pacotes de masmorra baseados em mundo
Os valores seguintes aplicam-se apenas a masmorras baseadas em mundo.
worldName
Define o nome do mundo que deve ser empacotado.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
worldName | String | nenhum | ✅ |
Exemplo
worldName: my_minecraft_world
wormholeWorldName
Define um mundo secundário que o pacote carrega com o mesmo ambiente e proteções do principal. As ligações entre os mundos têm de ser criadas separadamente; este nome não cria portais.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
wormholeWorldName | String | nenhum | ❌ |
Exemplo
wormholeWorldName: my_minecraft_world_wormhole
environment
Define o ambiente do mundo.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
environment | Ambiente | NORMAL | ❌ |
Exemplo
environment: NORMAL
teleportLocation
Define a entrada de uma masmorra partilhada ou a zona de espera de uma instância. Numa instância, o mundo da posição é substituído pelo da cópia. Se não existir posição de espera, o código usa o ponto de partida. O formato é mundo,x,y,z,yaw,pitch.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
teleportLocation | String | nenhum | ✅ |
Exemplo
teleportLocation: my_minecraft_world,-1.5,68,0.5,0.0,0.0
allowExplosionBlockDamage
Permite ou impede danos de explosões em blocos num mundo de masmorra protegido. Ativá-lo não transforma explosões vanilla em explosões de elite. A regeneração do EliteMobs trata explosões de elite registadas quando doExplosionRegen está ativo. A reposição começa após um minuto e processa um bloco registado por tick; a duração total depende da área danificada. Outras explosões podem deixar danos permanentes.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
allowExplosionBlockDamage | Boolean | false | ❌ |
Exemplo
allowExplosionBlockDamage: true
allowLiquidFlow
Define se água e lava podem fluir quando a proteção do mundo está ativa. Não permite esvaziar baldes, que é controlado separadamente pela proteção.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
allowLiquidFlow | Boolean | true | ❌ |
Exemplo
allowLiquidFlow: false
allowElytra
Define se é permitido planar com elytra no mundo protegido do pacote. Com false, a proteção cancela o início do voo e interrompe-o ao entrar no mundo ou durante movimentos. Não usa um temporizador a cada tick. Os administradores com bypass de proteção estão isentos.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
allowElytra | Boolean | false | ❌ |
Exemplo
allowElytra: true
listedInTeleports
Define se um pacote de combate instalado aparece nos teletransportes do /em. false oculta essa entrada, mas não impede o acesso por outras rotas ou comandos. Os desafios de encantamento são excluídos independentemente deste valor.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
listedInTeleports | Boolean | true | ❌ |
Exemplo
listedInTeleports: false
teleportLocationOffset
Define um offset para a localização de teletransporte do pacote de masmorra.
Esta chave é interpretada mas atualmente não é usada — nada no EliteMobs lê o offset resultante, pelo que defini-la não tem efeito no sítio onde os jogadores aterram. Ajusta antes o próprio teleportLocation.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
teleportLocationOffset | String | nenhum | ❌ |
Exemplo
teleportLocationOffset: my_minecraft_world,0.5,2,0.5,0.0,0.0
Masmorras instanciadas
As masmorras instanciadas criam um mundo novo de cada vez que um grupo de jogadores quer completar uma masmorra, e apagam-no quando terminam. Para isto funcionar corretamente, tens de colocar uma pasta com o nome indicado em dungeonConfigFolderName na pasta de configuração world_blueprints do EliteMobs.
Coloca uma dimensão exportada em world_blueprints/<dungeonConfigFolderName>/<worldName>/. O validador exige uma única localização de terreno com regiões .mca, na raiz ou na subpasta antiga DIM-1/DIM1 correspondente. Aceita mundos antigos completos, exportações só de terreno e exportações de dimensões modernas. Nem todos os formatos aceites exigem level.dat. Rejeita contentores dimensions do servidor inteiro, formatos misturados, ligações e ficheiros não regulares. As exportações modernas exigem um servidor com armazenamento moderno.
Trabalha numa cópia de exportação descarregada e preserva o terreno, as entidades, os pontos de interesse e os dados dessa dimensão. A clonagem omite uid.dat, session.lock e os metadados de identidade por dimensão do Paper. Não altera o modelo original. Os mundos de instância usam o padrão <worldName>_<number>. O arranque conserva os restos de falhas; o ciclo de vida de cada instância só limpa os mundos que criou. Antes de remover um resto manualmente, confirma a sua origem e que nenhuma instância ativa o usa.
Os valores seguintes aplicam-se apenas a masmorras instanciadas. Repara que todas as masmorras instanciadas são masmorras de mundo, pelo que também usam os valores das masmorras de mundo.
startLocation
Define a localização de teletransporte do ponto de partida da masmorra instanciada. É para aqui que os jogadores são teletransportados ao iniciarem a masmorra instanciada com /em start. Um pacote instanciado ou dinâmico sem um startLocation válido não é carregado.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
startLocation | String | nenhum | ✅ |
Exemplo
startLocation: my_minecraft_world,10.5,70,10.5,0.0,0.0
permission
Define a permissão necessária para entrar na instância da masmorra.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
permission | String | nenhum | ❌ |
Exemplo
permission: elitedungeon.mypermission
minPlayerCount
Define o número mínimo de jogadores necessário para iniciar uma masmorra.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
minPlayerCount | Integer | 1 | ❌ |
Exemplo
minPlayerCount: 1
maxPlayerCount
Define o número máximo de jogadores permitido numa masmorra.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
maxPlayerCount | Integer | 5 | ❌ |
Exemplo
maxPlayerCount: 5
dungeonObjectives
Define a lista de objetivos da masmorra necessários para que esta seja considerada concluída.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
dungeonObjectives | String List | nenhum | ✅ |
Exemplos
Usa um objetivo de abate: filename=boss.yml:amount=X. amount tem o valor predefinido 1. Conta as mortes de bosses instanciados correspondentes nesta instância, incluindo a correspondência com o ficheiro original da primeira fase de um boss. Todos os objetivos registados têm de ser concluídos enquanto a masmorra está em curso.
dungeonObjectives:
- filename=dungeon_final_boss.yml
- filename=dungeon_miniboss_one.yml
- filename=dungeon_miniboss_two.yml
dungeonObjectives:
- filename=dungeon_guard.yml:amount=5
Um simples boss.yml sem o prefixo filename= continua a ser aceite e é silenciosamente tratado como filename=boss.yml, para que os pacotes mais antigos continuem a funcionar. Os pacotes novos devem usar a forma explícita.
O nome do ficheiro tem de terminar em .yml e amount tem de ser um número inteiro de pelo menos 1. Cada campo pode aparecer uma vez. Um campo desconhecido, um nome de ficheiro em falta ou uma quantidade inválida impede o pacote de carregar, e o erro na consola indica o ficheiro e o objetivo.
Os objetivos percentuais não são suportados e são rejeitados quando a definição da masmorra é carregada. Usa objetivos de abate explícitos, como filename=boss.yml:amount=2. Um objetivo obrigatório inválido rejeita a definição; nunca é omitido silenciosamente dos requisitos de conclusão.
difficulties
Define a lista de dificuldades da masmorra instanciada.
Obrigatório para masmorras instanciadas!
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
difficulties | Especial [1] | nenhum | ❌ |
Exemplos
difficulties:
- levelSync: 25
id: 0
name: normal
- levelSync: 20
id: 1
name: hard
- levelSync: 15
id: 2
name: mythic

Especial [1]
Expandir Tabela
Definir as dificuldades da masmorra instanciada cria automaticamente diferentes opções de dificuldade ao entrar na masmorra.
Usa id nos filtros de dificuldade dos poderes e do loot. name é o nome traduzível mostrado aos jogadores. Recomendam-se os IDs explícitos 0, 1 e 2 para Normal, Hard e Mythic. O sistema também reconhece Easy/Medium/Hard como esses três escalões quando o pacote usa esses nomes; os IDs desconhecidos mantêm a correspondência exata. Sem id, a identificação é deduzida do nome original antes da tradução.
As dificuldades estão em formato de lista e têm os seguintes campos:
| Chave | Descrição | Valores | Obrigatório |
|---|---|---|---|
name | Nome da dificuldade para os jogadores. | String | ✅ |
id | ID da dificuldade, usado em bosses e itens personalizados para as funcionalidades baseadas em dificuldade. | String | ❌ |
levelSync | Limita o escalão do item no processamento de itens do jogador em cache. Não altera o equipamento nem limita todos os cálculos de dano e defesa. | Nível absoluto (25) ou valor entre aspas relativo a contentLevel ('+5', '-3') | ❌ |
Sincronização relativa: um levelSync que comece por + ou - é somado a contentLevel, com um mínimo de 1. Por exemplo, contentLevel: 40 com levelSync: '-5' fixa o limite do escalão em cache em 35. Escreve os valores relativos entre aspas: o YAML remove o sinal inicial de um +5 sem aspas e converte-o no nível absoluto 5. As masmorras dinâmicas calculam os valores relativos a partir do nível escolhido. Um valor inválido desativa a sincronização com 0 e regista um aviso.
Os cálculos atuais de ataque corpo a corpo, defesa de armadura e armas de projéteis podem ler os níveis originais dos itens. Esta definição também não limita as contribuições de encantamentos do equipamento. Consulta a dificuldade das masmorras instanciadas antes de baseares o equilíbrio dos encontros nesta sincronização.
Masmorras dinâmicas
As masmorras dinâmicas estendem as instanciadas: o conteúdo escala para o nível escolhido pelo jogador. O menu usa o nível de combate atual como base. Começa no maior de 5 e do nível de combate menos 5 e oferece incrementos de cinco níveis até ao nível de combate mais 5, com um máximo de 200. O escalão da Guilda não desbloqueia estas opções.
Ao criar bosses para uma masmorra dinâmica, usa level: dynamic. O nível escolhido aplica-se aos bosses EliteMobs da instância, não a todas as entidades vanilla ou recompensas. Usa scalability: scalable nos itens personalizados que devam aceitar o nível da recompensa e verifica o percurso de loot correspondente; o loot ponderado de bosses e as recompensas fixas explícitas podem manter o nível configurado.
Os valores seguintes são necessários para as masmorras dinâmicas.
Como todas as masmorras dinâmicas são também masmorras instanciadas, usam adicionalmente todos os valores e definições das masmorras instanciadas.
contentType
Define o tipo de masmorra. Tem de estar definido como DYNAMIC_DUNGEON.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
contentType | OPEN_DUNGEON / INSTANCED_DUNGEON / DYNAMIC_DUNGEON / HUB / META_PACKAGE / ITEMS_PACKAGE / EVENTS_PACKAGE / MODELS_PACKAGE | nenhum | ✅ |
Exemplo
contentType: DYNAMIC_DUNGEON
contentLevel
As masmorras dinâmicas predefinidas definem este valor como -1. Uma masmorra dinâmica não usa o valor: contentType: DYNAMIC_DUNGEON torna o pacote dinâmico, os seus placeholders $lowestTier e $highestTier mostram 5 e 200, e os valores relativos de levelSync usam o nível que os jogadores selecionam.
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
contentLevel | Integer | 0 | ❌ |
Exemplo
contentLevel: -1
difficulties
Define a lista de dificuldades disponíveis e o level sync na masmorra dinâmica.
Obrigatório para masmorras instanciadas!
| Chave | Valores | Predefinição | Obrigatório |
|---|---|---|---|
difficulties | Especial [1] | nenhum | ✅ |
Exemplos
difficulties:
- levelSync: '+5'
name: normal
id: 0
- levelSync: '+0'
name: hard
id: 1
- levelSync: '-5'
name: mythic
id: 2

Especial [1]
Expandir Tabela
Definir as dificuldades da masmorra instanciada cria automaticamente diferentes opções de dificuldade ao entrar na masmorra.
Usa id nos filtros de dificuldade dos poderes e do loot. name é o nome traduzível mostrado aos jogadores. Recomendam-se os IDs explícitos 0, 1 e 2 para Normal, Hard e Mythic. O sistema também reconhece Easy/Medium/Hard como esses três escalões quando o pacote usa esses nomes; os IDs desconhecidos mantêm a correspondência exata. Sem id, a identificação é deduzida do nome original antes da tradução.
Os valores de levelSync com sinal e entre aspas estabelecem um limite relativo no processamento de itens em cache. Não alteram o nível escolhido dos bosses, não melhoram equipamento de nível baixo nem limitam todos os cálculos de combate.
Por exemplo, "+0" fixa esse limite no nível escolhido da masmorra, "+5" cinco níveis acima e "-5" cinco abaixo, com um mínimo de 1. Continuam a aplicar-se as limitações descritas na secção das masmorras instanciadas.
As dificuldades estão em formato de lista e têm os seguintes campos:
| Chave | Descrição | Valores | Obrigatório |
|---|---|---|---|
name | Nome da dificuldade para os jogadores. | String | ✅ |
id | ID da dificuldade, usado em bosses e itens personalizados para as funcionalidades baseadas em dificuldade. | String | ❌ |
levelSync | Limita o escalão do item em cache; não é um limite universal do equipamento. | Inteiro para um limite absoluto, ou deslocamento com sinal entre aspas como '+5' | ❌ |
Usar o ficheiro meta_pack.yml para masmorras grandes
Por vezes podes estar a trabalhar numa masmorra grande que inclui outras masmorras mais pequenas dentro de si, permitindo aos jogadores viajar entre elas através do mundo da masmorra principal. Um ótimo exemplo disto é a Adventure Dungeon Primis do EliteMobs.
A Primis apresenta um mundo vasto onde os jogadores podem explorar e completar missões, mas inclui também duas masmorras instanciadas dentro do seu mundo — uma das quais serve de combate contra o boss final. Em casos como este, existirão vários ficheiros de pacote de masmorra, embora todos pertençam à mesma masmorra global.
Para gerir isto, usamos um ficheiro de meta-pacote de masmorra. Este ficheiro funciona como um diretório central, indicando a masmorra principal e listando todo o conteúdo de masmorra adicional a ela associado.
Este exemplo mostra o agrupamento dos pacotes da Primis. A versão é ilustrativa, não a versão publicada atual da Primis:
isEnabled: true
name: '&2[000-020] The Primis Adventure!'
customInfo:
- The tutorial adventure for players
- new to EliteMobs!
downloadLink: https://discord.gg/9f5QSka
dungeonSizeCategory: LAIR
environment: NORMAL
protect: true
contentType: META_PACKAGE
containedPackages:
- primis_adventure.yml
- primis_blood_temple_sanctum.yml
- primis_gladius_invasion_dungeon.yml
setupMenuDescription:
- '&2A soft tutorial adventure for players between levels 0-20!'
- '&2Adventures are massive maps with quests,'
- '&2many bosses and npcs, among other things!'
- '&2Also has custom models!'
dungeonVersion: 1
Como podes ver, o ficheiro de meta-pacote de masmorra é muito semelhante a um pacote de masmorra normal, com algumas diferenças importantes. O contentType: está definido como META_PACKAGE, e existe uma definição adicional chamada containedPackages:. Esta definição lista todos os outros pacotes de masmorra que fazem parte da masmorra maior.
Lista o nome exato do ficheiro de cada pacote filho em containedPackages. Inclui essas configurações e o respetivo conteúdo no arquivo. O meta-pacote procura definições já carregadas e ignora as entradas em falta; a lista, por si só, não inclui nem transfere os ficheiros.
Usa o dungeonVersion do meta-pacote para a publicação conjunta. As verificações de versão do Nightbreak ignoram os filhos listados e comparam a versão do pacote pai elegível. Declarar filhos não dá suporte de transferência ou atualização Nightbreak a um meta-pacote YAML personalizado.
As masmorras filhas podem continuar a aparecer no menu de teletransportes do jogador, /em, separado do menu administrativo /em setup. Define listedInTeleports: false em cada filha cuja entrada queiras ocultar.
Por exemplo, no caso da masmorra Primis:
Desativa as entradas de teletransporte no menu para primis_blood_temple_sanctum.yml e primis_gladius_invasion_dungeon.yml.
Deixa as opções de teletransporte ativas para primis_adventure.yml, já que este serve de hub principal onde os jogadores começam a sua jornada e acedem às restantes masmorras.
Os jogadores entram pela opção de teletransporte da aventura e seguem as rotas criadas nela para alcançar as masmorras filhas.
Ao dar nome ao ficheiro, recomendamos a seguinte convenção:
your_dungeon_name_meta_pack.yml
Valores recomendados para bosses
Para os objetivos de loot de Normal, Hard e Mythic, consulta o equilíbrio automático do loot de classe e encantamentos. Esse guia descreve os perfis de equipamento por escalão do encontro, o orçamento real de encantamentos, a apresentação reutilizável das recompensas e os comandos de revisão administrativa. Os valores de vida e dano abaixo ajustam o combate independentemente da qualidade das recompensas.
Criar um mob de masmorra médio
Usa normalizedCombat: true para o combate normalizado. A vida e o dano continuam a depender do nível, dos multiplicadores, do equipamento e habilidades dos jogadores e das definições de combate. Estes exemplos são pontos de partida para o equilíbrio, não números fixos de golpes necessários para matar.
Para conteúdo de masmorra, normalizeRegionalBosses: true no MobCombatSettings.yml (a predefinição) ativa o combate normalizado dos bosses regionais; os bosses de masmorras instanciadas também o usam. Um scaledCombat: true explícito no ficheiro do boss tem prioridade nos cálculos de combate escalado. As recomendações abaixo pressupõem combate normalizado sem essa substituição.
normalizedCombat: true
healthMultiplier: 1.0 #Starting point; verify with intended player loadouts.
damageMultiplier: 1.0 #Damage scales with the player's health and defenses; playtest this value.
Nota: dado que 1.0 é o valor predefinido para vida e dano, podes simplesmente omitir a definição de healthMultiplier ou damageMultiplier e definir normalizedCombat como true.
Criar grupos de trash
Os grupos de trash são numerosos mas não muito perigosos:
normalizedCombat: true
healthMultiplier: 0.7 #Starting point for weaker mobs.
damageMultiplier: 0.5 #Damage scales with the player's health and defenses; playtest this value.
Criar reforços
Os reforços devem morrer muito facilmente, mas representar um perigo em termos de dano (estes valores são recomendados para 4 ou mais entidades corpo a corpo; o uso real pode variar):
normalizedCombat: true
healthMultiplier: 0.25 #Starting point for fragile reinforcements.
damageMultiplier: 0.6 #Damage scales with the player's health and defenses; playtest this value.
Criar minibosses
Os minibosses devem aguentar-se e representar um desafio de mecânicas para os jogadores. Deve ser um teste de perícia que dure algum tempo, mas não algo extremamente letal:
normalizedCombat: true
healthMultiplier: 3.0 #Starting point for minibosses.
damageMultiplier: 1.2 #Damage scales with the player's health and defenses; playtest this value.
Criar bosses
Os bosses são um verdadeiro desafio, o culminar de uma escalada numa masmorra e um verdadeiro teste de perícia com tudo em jogo. Os encontros devem ser longos e a morte deve ser uma ameaça presente.
normalizedCombat: true
healthMultiplier: 7.0 #Starting point for bosses; check the health ceiling.
damageMultiplier: 1.4 #Damage scales with the player's health and defenses; playtest this value.
Estes valores recomendados são meras estimativas aproximadas, e os valores finais devem ser ajustados de acordo com os encontros específicos.
Nos bosses finais, verifica a duração do encontro com os tamanhos de grupo, equipamento e habilidades previstos antes de aumentar healthMultiplier.
healthMultiplierA vida base e o resultado após o multiplicador são limitados por settings.attribute.maxHealth.max do servidor, 2048 por predefinição. Com esse limite, 7.0 atinge o máximo no nível 36, 10.0 no 33 e 40.0 no 23. O fator de grupo da instância multiplica o resultado depois e está limitado pelo mesmo teto, pelo que um boss que já esteja no limite não ganha vida com um grupo maior. O dano tem os seus próprios cálculos e limites, separados do limite de vida. Consulta healthMultiplier para o cálculo base e a alteração do limite do servidor.
Empacotar conteúdo do EliteMobs para distribuição
Por fim, provavelmente vais querer empacotar a tua masmorra, seja para arquivo, seja para distribuição.
O EliteMobs tem um sistema de importação que permite aos administradores importar, instalar e desinstalar conteúdo rapidamente. Podes ver como funciona aqui.
Distribuir pacotes de recursos de masmorras
Desde o EliteMobs 9.6.0, as masmorras podem ser distribuídas com os seus próprios pacotes de recursos. Estes permitem usar texturas ou modelos personalizados para o loot e acrescentar sons, como na masmorra The Hallowed Haunt.
Para distribuir um pacote de recursos com a tua masmorra, cria-o como um pacote normal. Podes usar como referência o pacote predefinido que o EliteMobs exporta no arranque para plugins/EliteMobs/resource_pack/em_rsp_defaults/. Distribui-o descomprimido numa pasta com o nome da masmorra, por exemplo my_cool_dungeon_rsp. Coloca aí os ficheiros que normalmente iriam para o ZIP, e depois coloca essa pasta dentro de resource_pack, o mesmo nome usado pelo EliteMobs para guardar o seu pacote predefinido.
Guarda as alterações num pacote separado. No arranque, o EliteMobs compara a soma de verificação do pacote incluído com .rsp_checksum e substitui em_rsp_defaults se o pacote incluído mudar ou faltar a soma guardada ou a pasta. Não calcula a soma dos ficheiros que editaste: as alterações podem sobreviver a um reinício, mas uma reexportação posterior substitui-as.
Depois de organizares os ficheiros, a estrutura de diretórios deve ficar assim:
resource_pack
└── my_cool_dungeon_rsp
└── [resource pack files]
O importador coloca essa pasta em plugins/EliteMobs/resource_pack/. Importá-la não a envia aos clientes; inclui-a no pacote distribuído pelo fornecedor de recursos do teu servidor.
Recortar mundos
Recortar chunks não utilizados reduz o tamanho da transferência. Este exemplo usa o plugin WorldBorder; verifica as versões suportadas antes de o usar no teu servidor. O recorte remove chunks permanentemente, por isso trabalha numa cópia de exportação com uma cópia de segurança.
Details
Dica
Se estás a fazer isto pela primeira vez, pode ser boa ideia criares uma cópia de segurança do teu mundo, caso algo corra mal.Depois de instalares o plugin, dirige-te ao meio do mundo ou à área específica que queres recortar. Depois, executa o comando /wb set x, em que x representa o raio aproximado que queres para a tua área.
Details
Dica
Se o/wb não estiver a funcionar, experimenta /worldborder:wb.Depois de executares este comando, voa até aos limites do teu mundo para confirmares que a fronteira do mundo foi corretamente definida e cobre o tamanho pretendido. Vais perceber que chegaste ao limite quando fores empurrado para trás, acompanhado de uma mensagem no chat.

Na imagem acima, o objetivo é recortar o mundo em torno dos blocos roxos, deixando apenas alguns chunks à volta deles. Para isso, colocamo-nos no meio da área roxa, sobre os quadrados vermelhos, e executamos /wb set 50, definindo a fronteira do mundo logo a seguir à área roxa.
Depois, usa /wb trim [freq] [pad]. A frequência mede-se em chunks processados por segundo e a margem em blocos, não chunks, como mostra a implementação do comando. /wb trim 200 20 processa 200 chunks por segundo e deixa uma margem de 20 blocos à volta da fronteira. Revê a operação antes de executar /wb trim confirm e inspeciona a cópia recortada no fim.
Podes remover a fronteira deste mundo com /wb clear ou mantê-la.
Recortar a pasta do mundo
Cria uma cópia de segurança e trabalha numa cópia de exportação separada, com o mundo original descarregado. Preserva toda a estrutura de pastas, incluindo terreno, entidades, pontos de interesse e dados do mundo. Uma lista mínima de ficheiros pode eliminar terreno, molduras, suportes de armadura ou outro conteúdo criado.
A estrutura depende da versão do Minecraft e do servidor. Os formatos antigos podem usar DIM-1 para Nether e DIM1 para End; os modernos também podem usar um contentor dimensions/<namespace>/<key>/. Para um modelo instanciado, exporta uma única dimensão num formato aceite por WorldBlueprint, não o contentor completo com várias dimensões. Preserva a estrutura dessa dimensão e verifica a cópia noutro servidor antes de a distribuir. Remove bloqueios temporários e dados privados apenas da cópia de exportação, depois de identificares os caminhos dessa versão.
Executar o comando de empacotamento
O EliteMobs tem o comando /em package <dungeonName> <version>, que exige elitemobs.package. Procura uma subpasta dungeonName em cada pasta de conteúdo abaixo e copia o que encontrar para exports/<dungeonName>/, comprimindo depois o resultado em exports/<dungeonName>_packaged.zip.
As pastas que analisa são, por ordem:
custombosses, customevents, npcs, npc_scripts, transport_routes, customitems, customquests, customarenas, customspawns, customtreasurechests, wormholes, world_blueprints, powers, behaviors
Tudo o que não conseguir encontrar imprime um aviso de "no subdirectory" e é ignorado, o que é normal num pacote que não usa todos os tipos de conteúdo.
Por esta razão, é altamente recomendável que mantenhas o conteúdo que queres empacotar em pastas com o mesmo nome do teu pacote. Caso contrário, terás de reunir e empacotar manualmente os ficheiros na estrutura adequada para distribuição.
O comando não recolhe content_packages, worldcontainer, models, scripts, enchantments ou resource_pack e não cria pack.meta. Acrescenta os ficheiros necessários à pasta de exportação antes de criares o ZIP final. O argumento <version> tem de ser um inteiro, mas não atualiza dungeonVersion; edita esse campo manualmente.
Antes de copiar, o comando valida os modelos de mundo existentes referenciados pelas definições de pacotes carregadas correspondentes. Pode parar devido a um formato inválido ou incompatível com o servidor. Esta verificação não garante a inclusão de todas as configurações, bosses ou recursos necessários.
Cada execução constrói primeiro a exportação numa pasta temporária. Quando tem sucesso, substitui exports/<dungeonName>/ e exports/<dungeonName>_packaged.zip, pelo que os ficheiros que acrescentaste à mão à pasta de exportação anterior são apagados. Guarda essas adições noutro sítio e volta a copiá-las depois de cada execução. Se nenhuma das pastas de conteúdo existir, ou se uma pasta ou ficheiro de conteúdo for uma ligação simbólica, o comando imprime Failed to zip package!, regista o motivo na consola e deixa a exportação anterior intacta.
Adicionar o ficheiro do pacote de masmorra
Se estás a criar uma masmorra, terás de acrescentar manualmente o ficheiro do pacote de masmorra à pasta acabada de gerar na pasta exports. O teu ficheiro de configuração de pacote de masmorra deve seguir o formato descrito acima e ser colocado numa pasta chamada content_packages. Consulta a secção Estrutura de ficheiros abaixo para mais detalhes.
Não te esqueças de comprimir a tua masmorra quando terminares!
Estrutura de ficheiros
Se fizeste tudo corretamente, a estrutura de ficheiros deverá ser semelhante a este exemplo, em que chamámos à masmorra my_cool_dungeon:
Exemplo de estrutura de ficheiros de my_cool_dungeon
- my_cool_dungeon.zip
- pack.meta (contém
elitemobs) - content_packages
- my_cool_dungeon.yml <- É aqui que vai o teu ficheiro de configuração do pacote de masmorra
- worldcontainer
- [As tuas pastas de mundo vão aqui]
- wormholes
- my_cool_dungeon
- [Os teus wormholes vão aqui]
- my_cool_dungeon
- npcs
- my_cool_dungeon
- [Os teus NPCs vão aqui]
- my_cool_dungeon
- customtreasurechests
- my_cool_dungeon
- [Os teus baús de tesouro vão aqui]
- my_cool_dungeon
- customquests
- my_cool_dungeon
- [As tuas missões vão aqui]
- my_cool_dungeon
- customitems
- my_cool_dungeon
- [Os teus itens personalizados vão aqui]
- my_cool_dungeon
- custombosses
- my_cool_dungeon
- [Os teus bosses personalizados vão aqui]
- my_cool_dungeon
- customarenas
- my_cool_dungeon
- [As tuas arenas personalizadas vão aqui]
- my_cool_dungeon
- powers
- my_cool_dungeon
- [Os teus poderes personalizados vão aqui]
- my_cool_dungeon
- world_blueprints
- my_cool_dungeon
- [A tua pasta de mundo vai aqui, usada para masmorras instanciadas]
- my_cool_dungeon
- customevents
- my_cool_dungeon
- [Os teus eventos personalizados vão aqui]
- my_cool_dungeon
- customspawns
- my_cool_dungeon
- [Os teus spawns personalizados vão aqui]
- my_cool_dungeon
- models
- [Os teus modelos em formato bbmodel vão aqui; aceita pastas]
- scripts
- [Os teus scripts Lua do FreeMinecraftModels vão aqui]
- resource_pack
- my_cool_dungeon_rsp
- [Os ficheiros do teu resource pack vão aqui]
- my_cool_dungeon_rsp
- pack.meta (contém
Distribui o ZIP final para importação através de plugins/EliteMobs/imports/, recarrega e verifica /em setup. Testa uma instalação limpa antes de o partilhar, incluindo os bosses, missões, ficheiros Lua, modelos e modelos de mundo referenciados.
Pastas de nível superior reconhecidas
O importador só reconhece um conjunto fixo de nomes de nível superior. Para um pacote do EliteMobs (pack.meta a conter elitemobs), são estes:
| Pasta | Onde é instalada |
|---|---|
content_packages | plugins/EliteMobs/content_packages |
dungeonpackages | plugins/EliteMobs/content_packages (alias legado) |
custombosses | plugins/EliteMobs/custombosses |
customitems | plugins/EliteMobs/customitems |
customtreasurechests | plugins/EliteMobs/customtreasurechests |
customevents | plugins/EliteMobs/customevents |
customspawns | plugins/EliteMobs/customspawns |
customquests | plugins/EliteMobs/customquests |
customarenas | plugins/EliteMobs/customarenas |
npcs | plugins/EliteMobs/npcs |
npc_scripts | plugins/EliteMobs/npc_scripts |
transport_routes | plugins/EliteMobs/transport_routes |
behaviors | plugins/EliteMobs/behaviors |
enchantments | plugins/EliteMobs/enchantments |
wormholes | plugins/EliteMobs/wormholes |
powers | plugins/EliteMobs/powers |
world_blueprints | plugins/EliteMobs/world_blueprints |
resource_pack | plugins/EliteMobs/resource_pack |
worldcontainer | o contentor de mundos do servidor |
models ou modelengine | Pasta de modelos do FreeMinecraftModels se estiver ativo; caso contrário, blueprints do ModelEngine se estiver ativo; se nenhum estiver ativo, a pasta de modelos do FreeMinecraftModels |
scripts | plugins/FreeMinecraftModels/scripts |
elitemobs | plugins/EliteMobs, fundida com a mesma estrutura dessa pasta de dados |
freeminecraftmodels | plugins/FreeMinecraftModels, fundida com a mesma estrutura dessa pasta de dados. Uma pasta models lá dentro vai para a pasta de modelos que o FreeMinecraftModels estiver a ler |
betterstructures | plugins/BetterStructures, fundida com a mesma estrutura dessa pasta de dados |
pack.meta | não é instalada em lado nenhum — é apenas lida para identificar o pacote |
Usa as pastas elitemobs, freeminecraftmodels e betterstructures para ficheiros que não têm um nome de nível superior próprio, por exemplo freeminecraftmodels/enchantments para encantamentos do FreeMinecraftModels usados pelos teus itens. Depois de uma importação colocar ficheiros na sua pasta, o FreeMinecraftModels recarrega o conteúdo importado. O BetterStructures recarrega assim que termina o seu próprio arranque; as builds sem esse ponto de entrada de recarga registam um aviso a pedir que executes /bs reload.
Uma entrada desconhecida no nível superior rejeita o pacote inteiro e conserva o arquivo para correção. Mantém readmes soltos, capturas de ecrã e pastas __MACOSX fora da raiz. Se uma escrita no destino falhar, o importador tenta reverter todos os destinos alterados por esse arquivo; verifica os avisos de reversão antes de tentar novamente.
schematics também rejeita um arquivo do EliteMobs, com um aviso adicional de que as masmorras schematic foram removidas no EliteMobs 9.0.
Distribui as configurações com isEnabled: false quando os administradores devam instalá-las através de /em setup. Prepara e verifica uma cópia de exportação descarregada de cada mundo. Preserva os ficheiros do servidor de criação e verifica a configuração exportada; não assumas que o comando repõe o estado de instalação.
Partilhar com a comunidade os pacotes de masmorra que criaste
O Discord tem uma secção #community_dungeons onde as pessoas podem partilhar as suas criações de Minidungeons. Fica à vontade para contribuir!
