
Step by step
Check the zip
Open the zip.
pack.mcmetaand theassetsfolder must be at the top level, not inside another folder. A pack that works from your own resourcepacks folder can still fail from a server if it is zipped one level too deep.Upload it somewhere with a direct link
The link must start the download straight away, with no page in between. Paste it in a private browser window to test: if you see a web page with a download button, the server cannot use it. Your own web host, a CDN or a resource pack host all work.
Get the SHA-1 of the file
The SHA-1 is a fingerprint of the file. Minecraft uses it to check the download and to cache the pack, so players do not download it again on every join.
Windows: certutil -hashfile MyPack.zip SHA1 Linux: sha1sum MyPack.zip macOS: shasum -a 1 MyPack.zipCopy the 40 letter and number code.
Edit server.properties
Stop the server and set these lines in
server.properties:resource-pack=https://example.com/packs/MyPack.zip resource-pack-sha1=0f3a9c...your 40 characters... require-resource-pack=true resource-pack-prompt={"text":"This server uses a custom menu pack.","color":"gold"}require-resource-pack=truedisconnects players who decline. The prompt is optional and is shown on the accept screen. Start the server and join to test.Update it the right way
When you change the pack, upload the new zip and put its new SHA-1 in server.properties. If the hash does not match the file, the pack fails to load for everyone. Changing the file name with each version also stops old copies being served from a cache.
If it does not work
- "Failed to download": the link is not direct, it has expired, or the host blocks downloads from the game. Test it in a private browser window.
- Players get kicked straight away: their server list entry is set to decline packs. In Multiplayer, select the server, click Edit, and set Server Resource Packs to Prompt or Enabled.
- The pack loads but looks wrong: another pack on the player's list sits above yours, or two packs use the same font characters or models.
- Old version keeps showing: the SHA-1 in server.properties still belongs to the old file.
Using more than one pack
The server sends one pack from server.properties. If you need art from two packs, merge them: copy the second pack's assets folder into the first. Files with the same path overwrite each other, so merge lists like the font file assets/minecraft/font/default.json by hand instead of replacing it.
Bedrock servers
Bedrock Dedicated Server does not use a download link. The pack goes into the server's resource_packs folder and is listed in the world's world_resource_packs.json. To make it required, set texturepack-required=true in server.properties. Java packs do not work on Bedrock, and players joining a Java server through Geyser do not get the Java pack.
Questions
How do I force a resource pack on my Minecraft server?
Set resource-pack to a direct download link, resource-pack-sha1 to the file hash, and require-resource-pack=true in server.properties, then restart.
Why does my server resource pack fail to download?
Most often the link is not a direct download, or the SHA-1 does not match the file. Test the link in a private browser window and get the hash again.
What is the difference between Prompt and Enabled for server resource packs?
It is a setting on each server in the player's Multiplayer list. Prompt asks every time, Enabled accepts without asking, Disabled declines. A server with a required pack disconnects players who decline.
Do I need the SHA-1?
It is optional in Minecraft, but set it. Without it the pack is not checked and players may download it more often than needed.
From our studio
Our GUI packs are resource packs you send this way: drawn chest menus, rank badges, a tab list and scoreboard art, with ready DeluxeMenus and TAB configs. We can also draw a pack to your theme.

