Saltar para o conteúdo principal

Criar Conteúdo do EliteMobs

O EliteMobs usa YAML para bosses, itens, quests e outras definições, e Lua para poderes, scripts de NPC e comportamentos nativos. Coloque cada ficheiro na respetiva pasta de conteúdo dentro de plugins/EliteMobs/.

Tipos de Conteúdo​

Esta visão geral cobre oito tipos principais de conteúdo, além das definições e scripts auxiliares listados abaixo:

  1. Bosses Personalizados - Crie elite mobs únicos com poderes, equipamento e habilidades personalizados
  2. Itens Personalizados - Crie armas, armaduras e itens personalizados com encantamentos
  3. Quests Personalizadas - Construa cadeias de quests com objetivos e recompensas
  4. Eventos Personalizados - Configure eventos de boss com gatilho por tempo ou ação
  5. NPCs Personalizados - Adicione distribuidores de quests, lojas e NPCs interativos
  6. Baús de Tesouro - Posicione baús de loot com recompensas personalizadas e mecânicas de mímico
  7. Arenas - Crie desafios de combate baseados em vagas com encontros de boss
  8. Wormholes - Crie portais de teletransporte entre localizações

Cada tipo de conteúdo tem a sua própria pasta de configuração e estrutura de campos.

Início Rápido​

Para uma definição de conteúdo YAML:

  1. Crie um ficheiro YAML com a extensão .yml
  2. Nomeie-o usando o formato lowercase_with_underscores.yml
  3. Coloque-o na pasta apropriada
  4. Configure o conteúdo usando campos YAML
  5. Recarregue o EliteMobs ou reinicie o servidor

Localizações dos Ficheiros​

Cada tipo de conteúdo é armazenado na sua própria pasta:

  • Bosses Personalizados: ~/plugins/EliteMobs/custombosses/
  • Itens Personalizados: ~/plugins/EliteMobs/customitems/
  • Quests Personalizadas: ~/plugins/EliteMobs/customquests/
  • Eventos Personalizados: ~/plugins/EliteMobs/customevents/
  • NPCs Personalizados: ~/plugins/EliteMobs/npcs/
  • Baús de Tesouro: ~/plugins/EliteMobs/customtreasurechests/
  • Arenas: ~/plugins/EliteMobs/customarenas/
  • Wormholes: ~/plugins/EliteMobs/wormholes/

O conteúdo auxiliar usa outras pastas:

  • Poderes: ~/plugins/EliteMobs/powers/
  • Spawns personalizados: ~/plugins/EliteMobs/customspawns/
  • Scripts Lua de NPC: ~/plugins/EliteMobs/npc_scripts/
  • Comportamentos Lua nativos: ~/plugins/EliteMobs/behaviors/
  • Rotas de transporte: ~/plugins/EliteMobs/transport_routes/
  • Definições de encantamentos e Lua: ~/plugins/EliteMobs/enchantments/
  • Pacotes de masmorras: ~/plugins/EliteMobs/content_packages/
  • Modelos de mundos instanciados: ~/plugins/EliteMobs/world_blueprints/

A pasta scripts/ de um pacote pertence ao FreeMinecraftModels. Não é a pasta de scripts de NPC ou de comportamentos do EliteMobs; consulte o destino das pastas de pacotes.

Ferramentas de Criação de Conteúdo​

O WebApp do EliteMobs oferece uma interface visual para gerar configurações. Verifique o resultado com a referência atual de cada tipo de conteúdo; campos novos e scripts Lua podem exigir edição manual.

Configuração YAML Manual​

Para utilizadores avançados, crie ficheiros YAML manualmente para ter controlo total sobre todos os campos e opções disponíveis.

Formato de Ficheiro YAML​

Estas regras aplicam-se às definições YAML. Os poderes Lua, scripts de NPC e comportamentos usam ficheiros .lua separados:

  • Use espaços, não tabs, para a indentação
  • Coloque entre aspas os textos que começam com códigos de cor; aspas simples são práticas para texto literal
  • As listas usam o formato com hífen ou o formato com parênteses retos
  • isEnabled controla se a definição YAML está ativa. A predefinição depende do tipo e da definição pré-fabricada; indique-a explicitamente em ficheiros novos e consulte a referência correspondente
  • Os nomes de ficheiro devem usar o formato lowercase_with_underscores.yml

Para ajuda detalhada com a sintaxe YAML, consulte o Guia de Ficheiros de Configuração.

Visão Geral dos Tipos de Conteúdo​

Bosses Personalizados​

Os bosses personalizados são elite mobs com habilidades melhoradas, equipamento personalizado e poderes especiais. O sistema de boss suporta mais de 60 campos de configuração, incluindo:

  • Tipo de entidade e nível
  • Multiplicadores de vida e dano
  • Equipamento (armadura e armas)
  • Poderes e habilidades de elite
  • Tabelas de loot e drops
  • Mensagens e comandos de spawn/morte
  • Mecânicas de várias fases
  • Modelos personalizados e disfarces

Exemplo de Boss Básico:

isEnabled: true
entityType: ZOMBIE
name: '&e Test Boss'
level: dynamic
healthMultiplier: 2.0
damageMultiplier: 0.5
helmet: GOLDEN_HELMET
chestplate: IRON_CHESTPLATE
mainHand: GOLDEN_AXE
powers:
- invulnerability_knockback.lua
spawnMessage: A test boss has been spawned!
deathMessage: A test boss has been slain by $players!

Itens Personalizados​

Os itens personalizados permitem criar armas, armaduras e ferramentas com encantamentos e efeitos. O sistema inclui:

  • Tipo de material
  • Nome apresentado e lore
  • Lista de encantamentos
  • Efeitos de poção
  • IDs de modelo personalizado
  • Peso de drop e escalabilidade
  • Definições de nível e soulbound (vinculação de alma)

Exemplo de Item Básico:

isEnabled: true
material: DIAMOND_SWORD
name: '&4Legendary Blade'
lore:
- '&7A powerful weapon'
- '&7forged in dragon fire'
enchantments:
- DAMAGE_ALL,5
- FIRE_ASPECT,2
level: 10
soulbound: true

Quests Personalizadas​

As quests personalizadas definem objetivos e recompensas ao concluí-los. O sistema inclui:

  • Objetivos e tipos de quest
  • Recompensas (itens, dinheiro, permissões)
  • Diálogo de aceitação/conclusão
  • Requisitos de entrega a um NPC
  • Temporizadores de bloqueio de quest
  • Rastreio e sons

Eventos Personalizados​

Os eventos personalizados geram bosses conforme o tempo, o acaso ou outras condições. O sistema inclui:

  • Tipo de evento e lista de bosses
  • Chance e peso do gatilho
  • Mensagens e comandos de início/fim
  • Temporizadores de cooldown (local e global)
  • Número mínimo de jogadores
  • Duração do evento

NPCs Personalizados​

Os NPCs personalizados fornecem personagens interativos para quests, lojas e arenas. O sistema inclui:

  • Nome, cargo (role) e profissão do NPC
  • Localizações de spawn
  • Diálogo (saudações, diálogo, despedida)
  • Tipos de interação
  • Referências a quests e arenas
  • Modelos personalizados e disfarces
  • Hooks Lua de NPC e rotas de patrulha

Baús de Tesouro​

Os baús de tesouro fornecem loot com tempos de reabastecimento e mecânicas de mímico configuráveis. O sistema inclui:

  • Tipo e orientação do baú
  • Coordenadas de localização
  • Tabela de loot
  • Temporizadores de reabastecimento
  • Chance de mímico e lista de bosses
  • Estilos de drop para um único jogador ou por jogador em grupo

Arenas​

As arenas oferecem combates por vagas com bosses. O sistema inclui:

  • Limites da arena (corner1, corner2)
  • Número de vagas e atrasos
  • Lista de bosses e pontos de spawn
  • Recompensas e limites de jogadores
  • Mensagens da arena
  • Vagas de intervalo (intermission)

Wormholes​

As wormholes criam portais de teletransporte entre duas localizações. O sistema inclui:

  • Dois pontos de extremidade (localizações)
  • Texto apresentado para cada localização
  • Estilo visual e cores de partículas
  • Custo em moedas e permissões
  • Efeito de cegueira e multiplicador de tamanho
  • Modelos de entidade opcionais nas duas extremidades

Padrões Comuns​

Referenciar Conteúdo​

Os tipos de conteúdo referenciam-se mutuamente usando nomes de ficheiro:

  • Referenciar poderes em bosses: power_name.lua (uma referência antiga power_name.yml é resolvida automaticamente para o poder .lua com o mesmo nome)
  • Referenciar itens em loot: filename: item_name.yml (consulte o formato de Tabelas de Loot para chance, quantidade e mais)
  • Referenciar bosses em eventos: boss_filename.yml
  • Referenciar quests em NPCs: quest_filename.yml

Reutilizar Definições​

Os ficheiros de bosses personalizados, NPCs e rotas de transporte podem partir de outro ficheiro do mesmo tipo com extends: base_file.yml e substituir apenas as chaves que mudam. Os posicionamentos e isEnabled nunca são herdados. Consulte Reutilizar outro ficheiro de boss e Reutilizar outro ficheiro de NPC para as regras completas.

Placeholders​

Os placeholders dependem do campo que os lê; não são substituições globais para qualquer mensagem:

  • $players - Nomes apresentados dos atacantes participantes nos anúncios de morte do boss
  • $distance - Distância até ao boss rastreado em locationMessage
  • $eventBossLevel - Nível formatado nos nomes de bosses; a pré-visualização pode mostrar ? se o nível for desconhecido

Códigos de Cor​

Use códigos de cor do Minecraft em nomes e mensagens. Coloque todo o texto entre aspas quando começar com um código de cor. As aspas simples preservam barras invertidas literalmente; as aspas duplas YAML também são válidas.

Códigos de cor padrão do Minecraft:

  • &0 - Preto
  • &1 - Azul Escuro
  • &2 - Verde Escuro
  • &3 - Ciano Escuro
  • &4 - Vermelho Escuro
  • &5 - Roxo Escuro
  • &6 - Dourado
  • &7 - Cinza
  • &8 - Cinza Escuro
  • &9 - Azul
  • &a - Verde
  • &b - Ciano
  • &c - Vermelho
  • &d - Roxo Claro
  • &e - Amarelo
  • &f - Branco

Códigos de formatação:

  • &l - Negrito
  • &m - Tachado
  • &n - Sublinhado
  • &o - Itálico
  • &r - Reset

Sistema de Poderes de Elite​

O EliteMobs inclui 71 poderes: 68 ficheiros Lua (*.lua); apenas bonus_coins.yml, custom_summon.yml e elite_script.yml continuam em YAML. As configurações de boss referenciam os poderes pelo ficheiro; as referências antigas .yml são resolvidas para o poder .lua com o mesmo nome. Consulte Criar poderes.

Categorias de Poderes​

A categoria corresponde ao powerType, que também determina se elites naturais podem receber o poder.

Ofensivos: arrow_fireworks, arrow_rain, attack_arrow, attack_fire, attack_fireball, attack_freeze, attack_gravity, attack_lightning, attack_poison, attack_push, attack_vacuum, attack_wither, fireworks_barrage, lightning_bolts, taze

Defensivos: invulnerability_arrow, invulnerability_fall_damage, invulnerability_fire, invulnerability_fireworks, invulnerability_knockback, shield_wall

Diversos: attack_blinding, attack_confusing, attack_weakness, attack_web, bonus_loot, channel_healing, corpse, frost_walker, ground_pound, implosion, invisibility, moonwalk, movement_speed, taunt

Poderes maiores (restritos por tipo de entidade):

  • MAJOR_ZOMBIE: zombie_bloat, zombie_friends, zombie_necronomicon, zombie_parents
  • MAJOR_SKELETON: bullet_hell, skeleton_pillar, skeleton_tracking_arrow
  • MAJOR_BLAZE: firestorm, flame_pyre
  • MAJOR_ENDERMAN: plasma_blaster
  • MAJOR_GHAST: tracking_fireball

Únicos (aplicados apenas quando o boss os pede pelo nome): death_slice, flamethrower, frost_cone, gold_explosion, gold_shotgun, hyper_loot, meteor_shower, photon_ray, spirit_walk, summon_embers, summon_the_returned, thunderstorm, além dos dez poderes do Ender Dragon: ender_dragon_aimed_fireball, ender_dragon_arrow_bombardment, ender_dragon_disco_fireballs, ender_dragon_empowered_lightning, ender_dragon_ender_fireball_bombardment, ender_dragon_endermite_bombardment, ender_dragon_fireball_bombardment, ender_dragon_potion_bombardment, ender_dragon_shockwave, ender_dragon_tornado

Ainda em YAML: bonus_coins.yml, custom_summon.yml (o sistema de reforços), elite_script.yml

Os poderes são adicionados aos bosses usando o campo de lista powers:

powers:
- invulnerability_knockback.lua
- flame_pyre.lua
- spirit_walk.lua

Recursos Avançados​

Bosses de Várias Fases​

Os bosses podem ter várias fases com ficheiros de configuração separados. Use o campo phases para referenciar os ficheiros de boss de fase, e phaseSpawnLocation para definir onde ocorrem as transições de fase.

Elite Scripts​

Os Elite Scripts oferecem ações, condições e cooldowns acionados por eventos. EliteScript YAML usa o campo eliteScript do boss. Os poderes Lua são ficheiros .lua separados, referenciados em powers; consulte Criar poderes.

Modelos Personalizados​

Bosses e NPCs usam customModel para modelos de entidade. Os itens têm campos próprios, como customModelV2, equipmentModelID e fmmItemModel; consulte Itens personalizados. Os modelos de entidade e de item são configurados separadamente.

Equipamento de Boss​

Os campos de equipamento de boss aceitam nomes de materiais do Minecraft. Não carregam ficheiros de itens personalizados nem os respetivos atributos do EliteMobs:

helmet: DIAMOND_HELMET
chestplate: IRON_CHESTPLATE
leggings: LEATHER_LEGGINGS
boots: CHAINMAIL_BOOTS
mainHand: GOLDEN_AXE
offHand: SHIELD

Execução de Comandos​

Os bosses podem executar comandos em eventos específicos:

  • onSpawnCommands - Executa quando o boss faz spawn
  • onDeathCommands - Executa quando o boss é derrotado
  • onCombatEnterCommands - Executa quando o combate começa
  • onCombatLeaveCommands - Executa quando o combate termina

Mensagens de Boss​

Personalize os anúncios de boss:

  • spawnMessage - Transmitida quando o boss faz spawn
  • deathMessage - Transmitida quando o boss é derrotado (suporta o placeholder $players)
  • escapeMessage - Transmitida quando o boss foge
  • locationMessage - Mostra a distância até ao boss (suporta o placeholder $distance)
  • deathMessages - Linhas enviadas em ordem na morte do boss quando existem atacantes registados; uma lista não vazia tem prioridade sobre deathMessage. Não é uma seleção aleatória

announcementPriority (0–3) controla a entrega dos anúncios, o rastreio e o envio ao DiscordSRV. Os anúncios de morte com 0 vão para os atacantes registados; as prioridades positivas transmitem para o servidor inteiro, e 3 também encaminha pela integração DiscordSRV configurada. Os anúncios de spawn e de rastreio têm regras próprias.

Bosses Regionais​

Os bosses regionais usam o campo isRegionalBoss e podem ter raio de trela (leash), restrições de spawn e mudanças de estado de bloco:

  • leashRadius - Distância máxima do ponto de spawn
  • onSpawnBlockStates - Mudanças de bloco quando o boss faz spawn
  • onRemoveBlockStates - Mudanças de blocos ao derrotar o boss; descarregamentos, desaparecimentos e reinícios normais não aplicam o estado de derrota

Loot de classe automático​

Use o loot de classe para recompensas ajustadas ao nível e à classe do jogador. Os seus graus de encontro e orçamentos de dificuldade regulam a qualidade separadamente da vida e do dano do boss. As famílias de itens personalizados podem fornecer nomes, materiais, lore e modelos definidos pelo autor.

Configuração de Loot​

Controle os drops de boss:

  • dropsEliteMobsLoot - Ativa o caminho normal de loot gerado e moedas (predefinição true); não é um controlo geral para loot definido ou de classe
  • dropsVanillaLoot - Ativa drops vanilla (predefinição true)
  • dropsRandomLoot - Ativa loot gerado aleatório dentro do caminho normal (predefinição true)
  • uniqueLootList - Entradas de loot definidas, processadas separadamente destes controlos
  • classLoot - Controla o loot de classe automático separadamente; as definições globais e os requisitos continuam a aplicar-se

Exemplo:

uniqueLootList:
- filename=custom_sword.yml:chance=1.0
- filename=rare_helmet.yml:chance=0.05:amount=1

A forma antiga custom_sword.yml:1 ainda é lida, mas o número após os dois-pontos é a chance de drop (1 = 100%), não a quantidade. Use amount= para quantidade. Consulte todas as opções em Tabelas de Loot.

Conteúdo Pré-fabricado​

O EliteMobs fornece configurações pré-fabricadas para a maioria dos tipos de conteúdo e escreve-as nas pastas normais no primeiro arranque. Não existe uma pasta /premade/ separada no disco. Os ficheiros gerados (bosses em custombosses/, itens em customitems/, NPCs em npcs/ etc.) são YAML comum e servem como exemplos para o seu conteúdo.

O plugin também inclui definições de pacotes pré-fabricados; os respetivos mundos e conteúdo adicional são transferidos e instalados através de /em setup. Consulte o Empacotador de masmorras.

Obter Ajuda​