Desenvolvimento de addons

De DragonMineZ Wiki
Revisão em 22h25min de 13 de outubro de 2026 por Shokkoh (discussão | contribuições) (Translation sync from dragonminez-wiki repository)
(dif) ← Revisão anterior | Revisão atual (dif) | Revisão seguinte → (dif)

O desenvolvimento de addons consiste em escrever seu próprio mod de Forge que depende do DragonMineZ e reage a ele: conceder TP extra, escutar mudanças de forma, adicionar novos tipos de objetivos e recompensas de missões, adicionar botões ao Menu de Utilidades e assim por diante. Estas páginas são para desenvolvedores Java que sabem rodar um ambiente de desenvolvimento do Forge 1.20.1.

Se você só quer ajustar números ou adicionar raças, formas, missões ou desejos, não precisa de nada disso: veja Conteúdo próprio. O DragonMineZ não tem uma API Java para registrar novas raças, formas, habilidades ou técnicas; novas raças e formas são adicionadas por arquivos de configuração JSON.

Guias

Imagem pendente
Para quem são estas páginas, as duas formas de estender o DMZ e a configuração básica.
Imagem pendente
Versões das ferramentas, mods incompatíveis e no que um addon pode confiar com segurança.
Imagem pendente
Todos os eventos do DMZ, como ler o estado do jogador, registros de extensão e rede.
Imagem pendente
Configure o projeto Gradle, declare a dependência e receba seu primeiro evento.

O projeto

Reading order

  1. Add-on Getting Started: match the toolchain and make sure your development environment builds against DMZ.
  2. Implementation and Events: wire up the actual hooks.
  3. Creating a DMZ Addon: the full Gradle and mods.toml setup.

Ground rules for add-ons

  • Hook com.dragonminez.common almost exclusively: it is the shared, most stable layer. On the client, the only hooks meant for add-ons are DMZClientEvent and the utility menu slots.
  • Prefer reacting to DMZ events (changing their settable fields, or cancelling them) over changing DMZ data directly.
  • Register your own network channel; never add packets to DMZ's channel.
  • Never trust client input for stats, unlocks, quests, wishes or progression: validate it on the server.
  • Don't depend on com.dragonminez.mixin classes or on DMZ internals that the guides don't mention; they can change without notice between versions.
  • Don't bundle or depend on Legendary Tooltips, Epic Fight or Better Combat: DMZ refuses to start alongside them.