Introduction
Documentation for every ZephMC Paper plugin, for server owners and developers alike.
Every plugin here targets Paper and requires Java 25. Pick one from the sidebar, then pick your side of it.
- Server admins — installation, every configuration key, every permission node, adding a language, and troubleshooting written around the log lines the plugin actually emits.
- Developers — the API, its threading contracts, the events, and complete example integrations.
The two never mix. If you are configuring permissions you will not trip over a page about
CompletableFuture, and if you are writing an integration you will not scroll past YAML.
Conventions shared by every plugin
Knowing these once saves reading them on every plugin.
One colour knob. Each plugin has a single appearance.primary setting; everything else
is a fixed semantic token. Language files write <error> and <success>, never <red>.
English only, plus whatever you write. Only en_US ships. Adding a language is copying
one reference file, translating it and reloading — missing keys fall back to English, so a
partial translation works fine.
Nothing crashes on bad configuration. An unusable value is logged with what was expected and the default is used in its place.
Messages carry a marker, not just a colour. ✔ success, ❌ error, ⚠ warning,
ℹ info — so the meaning survives colour-vision deficiency and monochrome clients.
The Minecraft version lives in one file. Upgrading a plugin to a new Paper release is a
one-line edit to its gradle.properties; nothing else in the codebase names a version.