Motivation Managing server resource packs can be a surprisingly annoying task. Without this plug-in, you would need to do the following tasks:
You need to upload the resource pack to some 'host' like dropbox (this often requires creating another account, which is annoying).
You need to ensure that it is a direct link.
If you want to modify the resource pack, you need to figure out its sha1 hash. If you don't, players won't download the new resource pack. If it's wrong, the resource pack won't work at all.
You need to update the server.properties and restart the server.
If anything goes wrong, you will not get any nice feedback and need to read the minecraft client logs... With this plug-in, I intend to put an end to this nightmare.
Installation instructions Using this plug-in should be a lot easier:
Put this plug-in in your plugins folder and restart/reload your server.
Go to http://49.12.188.159/ , choose the resource pack you want to upload, and click Submit. This should take you to a new page that tells you to execute a command on your server. Execute that command. All players will get the new resource pack as soon as they (re)join the server.
Supported minecraft versions So far, I only tested this plug-in on minecraft 1.12.2 and later, but this plug-in doesn't use any version-specific features, so it may also work on older versions of minecraft.
The resource pack host Currently, all resource packs will be hosted on my VPS (a simple server that I rent mostly to host server resource packs). This will cost me some money every month, but not much because I use the cheapest plan.
Commands
/rpack changeid <new resourcepack id> [world name]: changes the server resource pack. If you specify a world name, the resourcepack will only be used in that world.
/rpack status [world name]: Shows the status of the plug-in to you. Can be useful for debugging. If you specify a world name, the status for the resourcepack of the given world will be shown.
/rpack sync [world name]: Let your minecraft server synchronize with the resource pack host. If you specify a world name, only the resourcepack for that world will be synced. You should normally not need this, but it can be useful for debugging.
/rpack list: Lists the worlds that have a world-specific resourcepack.
/rpack reload-config: Reloads config.yml
/rpack remove [world name]: Removes the resourcepack for the specified world. If no world name is specified, the default resourcepack will be removed.
Permissions
resourcepack.changeid: The permission required to execute the /rpack changeid command
resourcepack.status: The permission required to execute the /rpack status command
resourcepack.sync: The permission required to execute the /rpack sync command
resourcepack.reload-config: The permission required to execute the /rpack reload-config command.