Bungee Resourcepacks icon

Bungee Resourcepacks -----

Easily set server resource packs on whole BungeeCord and per server




After a long time I finally got around to invest time into drafting up a new release so here it is. Below will be a list of the major changes that were already included in the latest development builds, see the commit history since the last release for a detailed list of changes!

Major additions and changes
  • Support Minecraft versions up to the current 1.21.8 release
  • This includes multi-pack support starting with 1.20.3 clients (defined via the packs option). Older client versions will still only apply one pack (the first from the list)
  • On 1.20.3 or newer clients packs are now removed directly when they should no longer apply rather than the empty pack being used to reset it
  • Added a config option to toggle the appending of the hash to the pack's url (append-hash-to-url, enabled by default to keep old behaviour. On modern Minecraft client versions this should no longer be necessary as MC-164316 was fixed in 1.20.3)
  • Added the ability for the plugin to automatically update the hash of a pack based on a path on the machine the plugin is running on. (local-path pack config option, this does not host the pack!)
    Useful for when your webserver runs on the same machine as you Minecraft server or you can deploy the pack in your pack build setup to both your webserver and Minecraft server at the same time. Please note that if you are running in a container like Pterodactyl you need to do additional configuring to expose the files inside the container!
  • Added support for more authentication plugins
  • Added a warning for when certain hosts are used for packs that have been known to cause pack downloads to break (Dropbox, Google Drive, Mediafire. The last two are blocked completely)
  • Added new language files: Simplified Chinese by Q2297045667 and Brazilian Portuguese by Logikoz
----------, Jul 22, 2025

  • Added 1.17.x support and pack format 6
  • Added command to remove packs (/<command> removepack <pack>)
  • Added workaround for MC-164316 by applying the file-hash to the URL. This might increase the client-side storage requirement but will correctly re-download new versions of the packs
  • Fix editing of the global assignment via commands not saving to config
  • 1.8.5.1 hotfix: Support latest BungeeCord change in packet registration
See the commit history for all changes
----------, Jun 8, 2021

  • Added 1.16.x support and pack format 6
  • Added ability to define protocol/Minecraft version directly for a pack instead of just the format
  • Added ability to define multiple variants of a pack to simplify defining different packs per version or permission
  • Added packetmap.yml which allows manually defining the IDs of the used packets. This way only the config would need to be changed to add support for new Minecraft versions!
  • Improved the return message of /usepack in case of an error
  • Fix resend parameter of the reload command not working correctly
  • Fix empty values getting written to config
----------, Oct 1, 2020

  • Includes support up to 1.15.x
  • Adds new sub commands to add and manage packs as well as assignments to /wrp and /brp respectively. (addpack <name> <url>, pack <pack> [url|hash|format|restricted|permission], listassignments, deleteassignment <assignment>, assignment <assignment>, globalassignment)
  • Add /resetpack command to send the empty pack
  • Add MineDown support
  • Add multi language support. All messages are now configured in language-depending language files in the languages folder
  • Add regex world/server filtering with the regex key
  • Add ProtocolSupport and ViaVersion support
  • Lots of other smaller fixes and changes
----------, Feb 2, 2020

I have been getting numerous reports about issues while sending a resource pack to the client regarding a client freeze and how I could or should fix it so here is some info about it and the explanation why I cannot do anything about that from the server/plugin side:

When a server resource pack is send to a client it will shortly freeze after the download is complete. (Same as manually applying a local pack) This happens because the client has to reload all resources, check which resources overlap and do some other calculation and manipulation with them. (Like stitching all the textures together to a single image like they were in the first texture pack format) It's not a download issue as the client will locally cache the pack files and not re-download them if their hash didn't change.

How long this takes generally depends on the PC's performance and the size of the textures (HD packs take longer) that are used in all resource packs that the player has applied. (So even if the server resource pack doesn't contain any HD textures or textures at all the client will still completely reload all locally applied resource packs) This is something that has to be fixed in the client by Mojang for example by only reloading resources that changed. There's not a lot I can do about that other than advice people to put pressure on Mojang to improve that behaviour.
----------, Aug 21, 2017

  • Update for the full 1.12 release of BungeeCord
----------, Jun 8, 2017

  • Update to 1.12 pre5
  • Fix issues when no hash is send
  • Fix issues when clearing pack on backend server
  • Added send-delay config option
  • Added bstats metrics
  • Fix a bug with the /usepack command
----------, May 23, 2017

  • 1.11 Update
  • Support for pack format 3
----------, Nov 22, 2016

  • Major: Plugin now requires at least Java 8!
  • Add ability to use all log levels in debug config variable, OFF completely disables debug logging
  • Fix /usepack resending the same pack the user already had
  • Automatically generate resource pack file hashes
  • Add generatehashes sub command to generate the hashes manually
  • Add config option to disable automatic hash generation on startup (autogeneratehashes)
  • Don't generate config entries and hashes for backend packs
  • Fix packs with the same hash/url causing issues (-> you can't use the same hash/url anymore)
  • Fix an error when calculating which pack the user should have
  • Don't call PackSendEvent if we don't want to set the pack when the user already has it
  • Fix some issues with how a user's pack is tracked when using the config reload
----------, Nov 10, 2016

  • Really fix the secondary pack resolving which wasn't quite right when no main pack was defined.
  • Added StatsLite, if you don't want that you can opt-out in the PluginMetrics/config.properties
----------, Jun 8, 2016

  • Updated to support 1.9.4
  • Fixed wrong resolving of secondary packs
If you want to support me, I now have a patreon with some rewards that might interest you ;)
[​IMG]
----------, May 14, 2016

  • Added an option to set the format of the pack as 1.9 introduced a new one with the version 2.
    Players with 1.8 will get packs with version 1/no version and players that connect with 1.9 get version 2 if available.
    The defined pack and then the secondary list is used to resolve which pack a player gets from the top to bottom.
  • Added option to restrict a pack so that only players with the permission to use it will get it send. You can also set your own permission if you want.
Example on how the new config options could be integrated:
Code (Text):
packs:
  lobbypack:
    url: http://example.com/resourcepack.zip
    hash: abcdef012345678abcdef012345678abcdef0123
    format: 2
    restricted: true
    permission: worldresourcepacks.pack.lobbypack
  • /usepack without any arguments now lists all the packs a player has access to via the /usepack command.
    You should add the new message config entries "packlisthead" and "nopacks" for that to not display an error on Bungee.
  • Experimental AuthMe Reloaded support. (If you want support for more authentication plugins contact me!) It tries to send the pack after a player logged in.
    You have to run World Resourcepacks on the Bukkit server and set "authme" to true in the config.yml
----------, May 2, 2016

  • This update changes the plugin message channel from the plugin's name to "Resourcepack" to resolve some issues with 1.7 servers because the old channel name was longer than 16.
----------, Mar 9, 2016

  • Made compatible with 1.9, it is still compatible with the old 1.8 Bungee and 1.8 clients on the newer, 1.9 supporting Bungee versions.
----------, Mar 1, 2016

  • Fix first secondary pack being send if the user already has the empty pack
  • Fix a possible NPE
  • Add Javadocs
You might ask yourself "Where are versions 1.5.1 and 1.5.2?": I decided to synchronize the version numbers of all three of my resourcepacks plugins. As the next version for my Force Resourcepacks plugin would've been 1.5.3 I decided to use that as the next version for all of them.
----------, Feb 25, 2016

  • Server secondary packs fixed
  • Fixed hashes on BungeeCord not working (WorldResourcepacks only uses the Bukkit API currently and therefor can't send the hashes)
  • Made compatible with World Resourcepacks
  • Internal structure changes
An alternative download is always available via the github releases!
----------, Feb 23, 2016

  • Fix NPE when running usepack command from console
  • Added ability to change usepack message in config
----------, Nov 29, 2015

  • Fix an NPE when the user doesn't have a pack
----------, Aug 30, 2015

  • Fix a a bug where uppercase servernames do not work
  • Fix server secondary packs not working
----------, Aug 30, 2015

  • Fix an issue with older client versions (older then 1.8) which aren't compatible with the resourcepack send packet.
Please note that this update does not make this plugin compatible with pre-1.8 clients!
----------, Aug 28, 2015

There now is an enhanced version of this plugin available as a premium resource called Force Resourcepacks! Check it out if you liked this plugin and want to react on whether the player accepts your server resourcepacks or not!

[​IMG]
----------, Aug 6, 2015

  • Add command to set a user's pack/your own pack (/usepack <packname> [<playername>])
  • Allow reloading of config without resending packs (/brp reload [resend])
  • Separate permission for /brp version and /brp reload (bungeeresourcepacks.command.reload/resend)
----------, Jun 21, 2015

  • Fix users not able to confirm server pack while switching servers
  • Attempt on fixing the "Unknown z_stream return code : -3" bug some people experienced on join
  • Rewrote backend server pack handling
----------, May 17, 2015

Added the ability to set an empty resourcepack which will get applied if the player had a pack from the previous server but the new one does not have one and there is no global pack set. It will then send the empty pack resetting the server resource pack. (The player will only have his own ones)

Please take a look at the new config options!

Code (YAML):
debug : true
packs
:
  lobbypack
:
    # The url the client should download the resourcepack from.
    # Has to be a direct download link! No medifaire/mega/other oneclick-hoster!
    url
: http://example.com/lobbyresourcepack.zip
    # The sha1 hash of the resourcepack's zip file,
    # if not correct the client will waste bandwidth but it will still work!
    # At least that's what the Minecraft wiki says... (Site: Server.properties#Minecraft_server_properties)
    hash
: abcdef012345678abcdef012345678abcdef0123
  gamepack
:
    url
: http://example.com/minigameresourcepack.zip
    hash
: 012345678abcdef012345678abcdef012345678a
  # Empty pack to reset the pack to the default one
  emptypack
:
    url
: https://github.com/Phoenix616/BungeeResourcepacks/blob/master/Empty.zip?raw=true
    hash
: 3934d29cc6f7c271afdc477f6dd6b2ea90493825
# Name of the pack to use for resetting of the pack for servers which don't have one assigned
empty
: emptypack
global
:
  pack
: lobbypack
servers
:
  lobby
:
    pack
: lobbypack
  minigame
:
    pack
: gamepack
----------, May 12, 2015


Resource Information
Author:
----------
Total Downloads: 11,948
First Release: Apr 17, 2015
Last Update: Jul 22, 2025
Category: ---------------
All-Time Rating:
33 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings