Installing plugins
Where plugins go, how they load, and what to check when one breaks.
Plugins are phar files. Put them in plugins/ and restart the server:
plugins in the console lists what loaded and at which version. A plugin that is missing from that
list failed to load, and the reason is in the startup log.
Compatibility
Altay follows the PocketMine-MP API, so plugins written for the matching upstream API version
generally work. The API version a plugin declares in its plugin.yml is what the server checks at
load time, and a mismatch is refused rather than guessed at.
A plugin vanished after a server update
Almost always this. Check the plugin's own repository for a build against the newer API before reporting it to the Altay tracker. See API versioning.
Dependencies
A plugin can declare depend or softdepend in its plugin.yml. Hard dependencies must be
present or the plugin will not load; soft dependencies only change load order.
Two plugins that depend on each other deadlock the loader and neither one starts.
Configuration
Each plugin gets its own directory at plugins/<Name>/ on first start, usually with a
config.yml in it. Deleting that directory resets the plugin to its defaults.
When something breaks
Read the stack trace
It names the plugin and the file. Most reports stop being mysterious here.
Remove the plugin and restart
Confirm the problem actually goes away. Halving the plugin list is faster than reading every trace.
Report it to the right place
The plugin's repository, unless the trace points at server code.
Crashes that happen with no plugins loaded at all are server bugs and belong on the issue tracker. See Crashes and bug reports.