How to Add a Resource Pack to Your Minecraft Server (and Make It Required)
With a resource pack on the server, every player gets the textures, sounds or models when they join, without installing anything by hand. It's set up in server.properties with a download link and, optionally, a hash that checks the file is the right one.
Before you start: the pack has to be on a direct link
The server doesn't send the file: it sends the address, and each player's Minecraft downloads it from there. So the .zip has to be published somewhere with a link that downloads the file directly, with no page in between. A GitHub release works, for example, or a Dropbox link with ?dl=1 at the end of the address; a Google Drive link or a page with a “Download” button won't work.
The heavier the pack, the longer your players take to join. If yours is heavy, compress the textures or offer a lighter pack.
If what you want to change is recipes, advancements or rules rather than textures or sounds, that's a datapack: it goes inside the world and doesn't need a link.
Rather not set it up yourself? Minecraft servers from €6 a month, no contract and a full refund within 72 hours. Or create a free Minecraft server, no card needed.
Setting it up in server.properties
On NapNodes you don't need to open the file: in “Settings”, the “Resource pack” section has the link, the SHA-1, “Required pack” and the message shown when it's offered. It saves on its own and applies on restart. If you'd rather do it by hand (or on your PC), these are the steps:
Work out the SHA-1 of the .zip
On Windows, in PowerShell: Get-FileHash pack.zip -Algorithm SHA1. On Linux or Mac: sha1sum pack.zip. Copy the 40 characters in lowercase. It's the hash of the file, not of the address.
Stop the server
In the panel, press “Stop” and wait until it has shut down completely, so it doesn't overwrite what you edit.
Edit server.properties
In “Files”, open server.properties and fill in resource-pack=DIRECT_LINK and resource-pack-sha1=HASH. No spaces around the equals sign.
Required or not
With require-resource-pack=true, anyone who declines the pack is kicked; with false (the usual), they can play without it. With resource-pack-prompt you can set the message they see when accepting it (in recent versions).
Start it and test
Start the server and join first yourself: the pack download prompt should appear.
When you change the pack
If you replace the .zip, work out the SHA-1 again and change it in server.properties; otherwise Minecraft thinks it already has the pack and doesn't download it, or rejects it because it doesn't match. The easiest way is to upload each version under a different name (pack-v2.zip) so nobody is left with the old one in their cache.
If something doesn't work
A download error appears: the link isn't direct (open the address in your browser: it should start downloading the .zip) or the host behind the link limits downloads.
The player sees a message that the pack doesn't match: the SHA-1 belongs to another file, or to the address instead of the .zip, or it has capital letters or spaces.
Nothing loads: check that pack.mcmeta is at the root of the .zip and not inside another folder, and that the pack is for your server's version.
On a server with plugins or a modpack, bear in mind that heavy mods already load a lot of resources; the server pack adds to that. For the settings in server.properties itself, there's the server.properties guide.
Frequently asked questions
How do I add a resource pack to a Minecraft server?
Publish the .zip on a direct download link, work out its SHA-1 and set resource-pack and resource-pack-sha1 in server.properties with the server stopped. When it starts, every player gets the download prompt.
How do I force players to use the resource pack?
With require-resource-pack=true in server.properties: anyone who declines it is kicked from the server.
Is resource-pack-sha1 needed?
It isn't required, but it's worth it: it lets the client check the file and know when it has changed. It's the SHA-1 hash of the .zip, in lowercase.
Can I upload the resource pack to the server itself?
Minecraft needs a web address to download it, not a folder on the server. Upload it somewhere with a direct link (GitHub, Dropbox with ?dl=1…) and use that address.
Shall we set it up for you?
Minecraft servers from €6 a month, never oversold: your RAM is yours alone. And if you'd rather start without paying, there's a free Minecraft server, no card needed.
Your server doesn't show up in the game? Check it in a second with “Is my Minecraft server online?”: players, version and MOTD, free. Need a player's UUID for the whitelist or permissions? Look it up here. Handing out enchanted items? Build the command with the /give generator.
Free tool: pack.mcmeta generator. The pack.mcmeta for your data pack or resource pack with each version's format number (1.14 to 26.3), plus a checker for yours.
Keep reading
- How to Add Mods to a Minecraft Server
Fabric, Forge or NeoForge, which mods go on the server and which on the client, and how to get your friends in without fighting over versions.
- Mods and Plugins Together on a Minecraft Server: Hybrids and Alternatives
Can you run mods and plugins together in Minecraft? What Arclight, Mohist and Youer are, their problems, and the mods that do what your plugins do.
- Minecraft Server MOTD and Icon: How to Set Them
Change your Minecraft server's message (MOTD) and icon: colours with §, two lines, the 64×64 server-icon.png and why sometimes it doesn't show up.