Vault will start downloading in 5 seconds...


Vault is a Permissions, Chat, & Economy API to give plugins easy hooks into these systems without needing to hook or depend on each individual plugin themselves. It was born out of a distaste for how both Register and the current Permissions API are run, and their lack of features or over-complicated implementations. Vault attempts to solve these issues by being intuitive and providing plugins with support for any system that they may use.


  • update-check
    • turns the update checker on/off


  • vault.admin
    • allows access to vault info and conversion commands
    • defaults to OP
  • vault.update
    • Anyone with this permission will be notified when Vault is out-dated
    • defaults to OP
    • setting to false in permissions.yml will disable version check messages for console

Vault currently Supports:

This plugin utilizes Hidendra's plugin metrics system. the following information is collected and sent to bstats.org unless opted out:

  • A unique identifier
  • The server's version of Java
  • Whether the server is in offline or online mode
  • Plugin's version
  • Server's version
  • OS version/name and architecture
  • core count for the CPU
  • number of players online
  • Metrics version
  • Which Chat, Economy, and Permission hook is in use.

Opting out of this service can be done by editing plugins/bstats/config.yml and changing opt-out to true.

Linking Vault

There's a slightly longer/more detailed example on the Vault github page on how you might link to vault in a plugin. See: https://github.com/MilkBowl/VaultAPI

The following 3 methods can be used along with the 3 variables to load both the permission, economy, and chat systems from Vault. Make sure to add depend: [Vault] to your plugin.yml - You don't need to use all 3 if you don't want to in your plugin! If you only want one or two of the three APIs only use those ones you need!

NOTICE: Vault automatically logs what Plugins it found and hooks to, there is no need to display this information in your plugin.

NOTICE: Don't Forget To add softdepend: [Vault] or depend: [Vault] to your plugin.yml

    public static Permission permission = null;
    public static Economy economy = null;
    public static Chat chat = null;

    private boolean setupPermissions()
        RegisteredServiceProvider<Permission> permissionProvider = getServer().getServicesManager().getRegistration(net.milkbowl.vault.permission.Permission.class);
        if (permissionProvider != null) {
            permission = permissionProvider.getProvider();
        return (permission != null);

    private boolean setupChat()
        RegisteredServiceProvider<Chat> chatProvider = getServer().getServicesManager().getRegistration(net.milkbowl.vault.chat.Chat.class);
        if (chatProvider != null) {
            chat = chatProvider.getProvider();

        return (chat != null);

    private boolean setupEconomy()
        RegisteredServiceProvider<Economy> economyProvider = getServer().getServicesManager().getRegistration(net.milkbowl.vault.economy.Economy.class);
        if (economyProvider != null) {
            economy = economyProvider.getProvider();

        return (economy != null);

Repository Information for Maven Projects