How to make players use a server resource pack
A server resource pack changes how your server looks: custom textures, sounds, fonts, even new item models. Players download it when they join, so nobody has to install anything by hand. It is a good way to give a server its own identity, and it needs only a few lines in server.properties.
What you need
- A resource pack as a
.zipfile. Make one, or use one you have permission to use. - A place to host it. The pack has to be downloadable from a direct link. Your Minecraft server does not host it for you.
- A few settings in
server.properties.
Hosting the pack
The link must start the download immediately when opened. A page that shows a "download" button will not work. The server does not open the page, it gives the link to each player's game, which fetches the file directly.
Use a host that gives stable direct links, such as a file hosting service you control or a repository that serves raw files. Avoid links that expire, require a login or show an ad page first. Test the link in a private browser window: if the zip starts downloading, it is direct.
Keep the pack small. Players download it every time it changes, often over slow connections, and very large packs can fail to download. A few megabytes loads quickly, and a pack in the hundreds of megabytes will frustrate people. Compress textures you do not need at full size.
Get the SHA-1 hash
The server tells the game a fingerprint of the file, called a SHA-1 hash. If the player already has a pack with the same fingerprint, the game reuses it and skips the download.
Calculate it from your zip:
- Windows (in a terminal):
certutil -hashfile pack.zip SHA1 - Linux and macOS:
sha1sum pack.zip
You get 40 hexadecimal characters. Copy them exactly, in lowercase.
Settings in server.properties
Open server.properties and set:
resource-pack=https://your-host.net/files/pack.zip
resource-pack-sha1=0123456789abcdef0123456789abcdef01234567
require-resource-pack=true
resource-pack-prompt=This pack adds our custom textures.
resource-packis the direct link.resource-pack-sha1is the 40 character hash.require-resource-packwhen true, players who decline are disconnected. Use it only if the server really cannot be played without the pack.resource-pack-promptis the message shown when asking players to accept.
Restart the server for the changes to apply.
Updating the pack
If you change the file but keep the same link and hash, players who already downloaded it may keep the old version. After editing the pack:
- Calculate the new SHA-1 hash.
- Update
resource-pack-sha1. - Better still, upload the new file under a new name and change the link, so nothing cached can be reused.
- Restart the server.
Making sure the pack works
A pack made for one version of Minecraft may not work on another. Inside the zip, a file called pack.mcmeta has a pack_format number, and it must match the format your Minecraft version expects. If it does not, the game shows a warning that the pack was made for a different version, though it often still loads. Check the format number if textures look wrong.
Troubleshooting
- Players see the default textures. The link may not be direct, or the zip may have an extra folder level. The
assetsfolder andpack.mcmetamust be at the top of the zip. - "Failed to download". The link is wrong, expired or blocked. Open it in a private browser window to test.
- Players get stuck loading. Often the pack is too large. Shrink it.
- The pack loads only for some players. The hash may be wrong, or an old cached version exists. Update the hash and the file name.
If you need to find where a problem began, How to read your server logs helps. And if you want to use a well-known pack on a modded setup, check whether the mod author already provides one.
Still stuck? Open a ticket on Discord - run /ticket in any channel, pick a department, and include your Server ID or Invoice ID so we can jump straight in.