Warning: This plugin gives the user the ability to do potentially unwanted things and provides access to the file system with the same permissions Bukkit/Spigot has. For this reason, this plugin is intended for use in a development environment only.
Dev Daemon is a plugin I made specifically to aid myself in the process of developing other Bukkit/Spigot plugins. I have found it to be invaluable at times and have decided to share it with other developers, as it provides many useful features and tools, such as:
Warning: once you start using DevDaemon to develop plugins, you may find yourself never wanting to develop without it.
- Sudo – the ability to run commands as other players as well as the console.
- A simple plugin manager.
- A tool for copying the jar files you wish to test into the plugins directory upon reload.
- A simple permissions manager.
Ok, if you’re developing Bukkit/Spigot plugins, you should already know how to install plugins. If not, you may want to reconsider developing your own plugins. Installing Dev Daemon is no different from installing any other plugin.
Documentation & Commands
- /sudo [-u user] command – runs command as user if specified, or as console if not specified.
- /dev – plugin manager
- /dev enable – manually enables plugin.
- /dev disable – manually disables plugin.
- /dev reload [plugin] – manually reloads plugin if specified, otherwise reloads the whole server, same as /reload.
- /dev update – Copies all files listed in the update section of the config.yml to the server’s plugin directory and then reloads the server.
- /du – alias for /dev update.
- /perm – permissions manager
- /perm grant [user] – sets permission to true for user if specified, otherwise sets permission to true for sender.
- /perm deny [user] – sets permission to false for user if specified, otherwise sets permission to false for sender.
- /perm unset [user] – unsets permission for user if specified, otherwise unsets permission for sender.
- /perm flush – flushes the permission cache, unsetting all set permissions.
- /removeentities – Removes all entities in the world (including dropped items and mobs).
Dev Daemon does not use Bukkit’s built in permissions API, but rather uses its own permission system. The reason for this is the following: Dev Daemon is intended for use while developing Bukkit plugins. While developing Bukkit plugins, it may be necessary to op/deop yourself repeatedly or change permissions repeatedly. Therefore, Dev Daemon uses its own permission system so the developers never lose permission to execute Dev Daemon commands.
The Dev Daemon permissions work as follows: if a user is listed in the sudoers section of the config.yml, he has access to Dev Daemon commands. If he isn’t listed there, he does not have access to Dev Daemon commands, even if he is op.