Dragões
Configure os atributos, as fases, as habilidades e os agendamentos de cada dragão.
Cada arquivo em plugins/yDragon/dragons/ representa um tipo de dragão. O nome do arquivo, sem .yml, é o ID utilizado nos comandos. Por exemplo, ender.yml corresponde a /dragon spawn ender.
As configurações completas fornecidas estão nas páginas Ender Dragon e Nightmare Dragon.
Identificação e aparência
| Opção | Descrição |
|---|---|
display-name | Nome colorido exibido aos jogadores. |
enabled | Habilita o dragão. Com false, ele não aparece no menu nem nasce automaticamente; o comando de spawn também exige um dragão habilitado. |
rare | Marca o dragão como raro, permitindo substituir o spawn normal conforme general.rare-chance da config.yml. |
mythic-mob | ID do mob do MythicMobs. Vazio utiliza o Ender Dragon vanilla. |
icon.material | Material do ícone do dragão, no formato SetupItem. |
icon.name | Nome do ícone. |
icon.lore | Descrição do ícone. |
O Ender Dragon possui rare: false; o Nightmare Dragon possui rare: true. Para utilizar um ID em mythic-mob, é necessária a integração opcional com MythicMobs.
stats
Define os atributos de combate do dragão.
| Opção | Descrição | Ender | Nightmare |
|---|---|---|---|
health | Vida máxima customizada, sem usar o limite vanilla. | 2000.0 | 5000.0 |
damage | Dano causado aos jogadores por ataque. | 8.0 | 14.0 |
defense | Fração de redução do dano recebido, de 0.0 a 1.0. | 0.10 (10%) | 0.25 (25%) |
speed | Multiplicador de velocidade. | 1.0 | 1.2 |
bossbar
Configura a barra de vida exibida aos jogadores dentro da arena.
enabled: ativa a bossbar. Sefalse, a bossbar não é criada.title: texto da barra. Aceita{name},{health}e{max}.color: cor da barra. Valores válidos:PINK,BLUE,RED,GREEN,YELLOW,PURPLEeWHITE.style: estilo da barra. Valores válidos:SOLID,SEGMENTED_6,SEGMENTED_10,SEGMENTED_12eSEGMENTED_20.
O Ender Dragon utiliza PURPLE com SOLID. O Nightmare Dragon utiliza RED com SEGMENTED_10.
messages
Mensagens de spawn e morte específicas de cada dragão. Antes ficavam na messages.yml (chat.spawned, chat.death-broadcast, title.spawned e title.death) e agora são configuradas individualmente no arquivo de cada dragão, permitindo textos diferentes por tipo.
messages:
spawn: |
&5&lO DRAGÃO APARECEU!
&7Tipo: &f{name}
&7Vida: &c{health}
&7Local: &f{location}
&7Cause dano para subir no ranking!
spawn-title: '&5&lDRAGÃO SPAWNADO!<nl>&7{name}'
death: |
&5&lO DRAGÃO FOI DERROTADO!
&7Tipo: &f{name}
&7Duração: &f{duration}
&6Top 5 dano:
{ranking}
death-title: '&a&lDRAGÃO DERROTADO!<nl>&7Top 1: &e{player}'spawn: anúncio no chat quando o dragão aparece. Aceita{name},{health}e{location}.spawn-title: título exibido no spawn. Aceita{name}.death: anúncio no chat quando o dragão é derrotado. Aceita{name},{duration}e{ranking}.death-title: título exibido na morte. Aceita{player}(primeiro colocado no dano).
Nos títulos, <nl> separa o título do subtítulo. {ranking} usa o formato de chat.ranking-line da messages.yml.
phases
Cada fase possui um limite health-percent e uma lista abilities com IDs definidos na seção de habilidades do mesmo arquivo.
A fase ativa é a de menor health-percent que ainda está acima da porcentagem de vida atual. No Ender Dragon, os limites são 100, 60 e 25. No Nightmare Dragon, são 100, 70 e 35.
Exemplo: com 50% de vida, o Ender Dragon utiliza a fase de limite 60, que inclui fireball-rain, summon-mobs e explosion. Com 20%, utiliza a fase de limite 25, que também inclui cura, teleporte, debuff e raios.
Uma habilidade definida em abilities precisa estar na lista da fase ativa para fazer parte daquela fase. No Ender Dragon, knockback e dragon-breath estão definidos, mas não aparecem nas listas das fases fornecidas.
abilities
Cada habilidade possui um ID próprio, como fireball-rain ou heal. Esse ID é a referência utilizada em phases.<fase>.abilities.
Campos comuns
| Campo | Descrição |
|---|---|
type | Tipo da habilidade. |
cooldown-seconds | Intervalo mínimo, em segundos, entre usos. |
chance | Chance percentual de executar quando o cooldown termina. |
particle | Nome da partícula utilizada via PacketEvents. |
sound | Som Bukkit opcional para a habilidade. |
announce | Anúncio opcional enviado na arena. O texto é inserido em {ability} de chat.ability-announce. |
Tipos e campos específicos
| Tipo | Efeito | Campos específicos |
|---|---|---|
FIREBALL_RAIN | Chuva de fireballs. | amount: quantidade por jogador; damage: dano base registrado como metadado, mantendo o impacto vanilla. |
SUMMON_MOBS | Invocação de mobs. | amount: quantidade; entity-type: tipo de entidade Bukkit, como ENDERMAN ou BLAZE. |
AREA_EXPLOSION | Explosão em área. | radius: raio em blocos ao redor de cada jogador; damage: dano. |
HEAL | Recuperação de vida do dragão. | heal-percent: percentual da vida máxima restaurada. |
DEBUFF | Aplicação de efeito de poção. | potion-type: efeito Bukkit; potion-duration: duração em segundos; potion-amplifier: amplificador, em que 0 representa nível 1. |
TELEPORT_PLAYERS | Teleporte de jogadores. | radius: raio utilizado para os efeitos visuais. |
LIGHTNING | Raios na arena. | damage: dano da habilidade. |
KNOCKBACK | Recuo dos jogadores. | amount: intensidade do recuo. |
DRAGON_BREATH | Fôlego do dragão. | radius: raio da nuvem em blocos; damage: dano. |
Exemplo dos valores fornecidos: a cura do Ender Dragon restaura 8.0% da vida máxima, enquanto a do Nightmare Dragon restaura 12.0%. O debuff do Ender usa WEAKNESS por 8 segundos, com amplificador 1; o Nightmare usa WITHER por 6 segundos, também com amplificador 1.
spawn
Define o agendamento individual do dragão.
mode, interval-hours e times
| Modo | Funcionamento |
|---|---|
INTERVAL | Spawn a cada quantidade de horas definida em interval-hours. |
DAILY | Spawn diário nos horários de times, no formato HH:mm. |
SCHEDULE | Utiliza os horários de times, com o mesmo comportamento de DAILY. |
MANUAL | Modo principal de spawn por /dragon spawn. Os eventos semanais e mensais são independentes desse modo. |
O Ender Dragon usa INTERVAL a cada 3 horas. Seus horários 20:00 e 12:00 estão preenchidos no arquivo, mas são destinados aos modos DAILY e SCHEDULE.
weekly
Evento semanal adicional, independente de mode.
enabled: ativa o evento semanal.day: dia da semana, comoSUNDAY,SATURDAYouFRIDAY.time: horário no formatoHH:mm.
monthly
Evento mensal adicional, também independente de mode.
enabled: ativa o evento mensal.day: dia do mês. O arquivo recomenda valores de1a28.time: horário no formatoHH:mm.
O Nightmare Dragon utiliza mode: MANUAL, mas mantém o evento semanal ativo aos sábados às 21:00 e o mensal no dia 1 às 20:00. O modo manual não desativa esses agendamentos extras.
As condições globais de spawn automático, como mínimo de jogadores e contagem regressiva, ficam em general na config.yml.
Recompensas do dragão
reward-amount
Quantidade de sorteios bem-sucedidos por jogador no grupo de recompensa. O Ender Dragon utiliza 1; o Nightmare Dragon utiliza 2.
reward-ground e reward-player
Controlam o destino das recompensas:
| Opção | Funcionamento |
|---|---|
reward-ground: true | Entrega no chão da arena em vez do armazém. |
reward-player: true | Entrega diretamente no inventário, ignorando o armazém. |
Ambas em false | Guarda as recompensas no armazém pessoal. É a configuração dos dois dragões fornecidos. |
rewards
Contém os grupos top1, top2, top3 e participation. As entradas seguem o formato 'chance,id', em que o ID aponta para o catálogo rewards.yml.
O Top 5 anunciado ao fim da batalha é a classificação de dano daquele evento. O menu /dragon top exibe o ranking por dano acumulado dos jogadores.
Definindo a arena de cada dragão
Posicione-se no centro desejado para usar setarena e, depois, no ponto desejado para usar setspawn:
/dragon setarena ender 80
/dragon setspawn ender
/dragon setarena nightmare 100
/dragon setspawn nightmareEssas posições são salvas por ID no arquivo data.yml. Para carregar alterações nas definições dos dragões, use /dragon reload.