Setting up an addon
An addon is a normal Bukkit plugin that:- Compiles against the NMEntities jar (add it as a provided/compileOnly dependency in your build).
- Declares the dependency in its
plugin.yml:
What the API exposes
Extending the effect language. Add new words to the effect DSL, in all five categories (mechanics, targeters, triggers, conditions, placeholders), usable in any mob, NPC or effect config exactly like built-ins. This is the headline feature: see Extending the Effect Language. Mobs. Look up mob definitions, spawn registered mobs through the full pipeline (model, stats,#onSpawn effects), check whether an entity is an NMEntities mob, and fire effect triggers (built-in or custom) by name. Addons can also contribute bundled mob definitions from code that survive /nme reload: ship a pack of ready-made mobs inside your addon without shipping a single YAML file.
NPCs. Look up NPC definitions, identify NPC entities in the world, and mutate them through the same operations the /npc commands use.
Effects. Parse effect lines and run named effects with any caster and target, the programmatic version of /nme effect start.
Events. Bukkit events for mob spawns, NPC interactions and reloads: see Events.
The full developer guide
This section covers what the API can do. The complete developer guide, with compilable examples for every feature, ships asAPI.md with the plugin.
