> ## Documentation Index
> Fetch the complete documentation index at: https://docs.purpify.host/llms.txt
> Use this file to discover all available pages before exploring further.

# Add a Java server resource pack

> Prompt or require Minecraft Java Edition players to download a resource pack from your Purpify server.

Host the resource-pack `.zip` at a direct public download URL, then add that URL to `server.properties`.

## Before you begin

* Confirm that the pack supports the server's Minecraft version.
* Keep the pack as a `.zip`; do not extract it on the server.
* Test the direct link in a private browser window. It must download the file without requiring a sign-in or confirmation page.
* Create a [backup](/server/backups).

## Host the pack

You can upload the resource-pack `.zip` to [MCPacks](https://mc-packs.net/) and use the generated link in `server.properties`.

<Card title="Host a resource pack with MCPacks" icon="cloud-arrow-up" href="https://mc-packs.net/">
  Upload the pack and copy its server resource-pack link.
</Card>

## Configure the resource pack

<Steps>
  <Step title="Stop the server">
    Stop the Java server before editing `server.properties`.
  </Step>

  <Step title="Open server.properties">
    Open the file manager and select `server.properties`.
  </Step>

  <Step title="Add the direct URL">
    Paste the direct download URL after `resource-pack=`.

    ```properties theme={"dark"}
    resource-pack=https://downloads.example.com/server-pack.zip
    ```
  </Step>

  <Step title="Choose whether it is required">
    Set `require-resource-pack=true` to disconnect players who decline it. Use `false` to let players decline.

    ```properties theme={"dark"}
    require-resource-pack=true
    ```
  </Step>

  <Step title="Save and start">
    Save the file, start the server, and connect with a client that has not cached the pack. Confirm that the download prompt appears.
  </Step>
</Steps>

## Optional integrity settings

* `resource-pack-sha1` accepts the lowercase SHA-1 digest of the pack and lets the client verify the download.
* `resource-pack-prompt` sets custom text for the required-pack prompt.
* `resource-pack-id` identifies the pack with a UUID.

<Warning>
  When you replace the pack, update its download URL or SHA-1 value so clients do not continue using an old cached copy.
</Warning>

<Card title="Java server properties" icon="gear" href="/java/server-properties">
  Review the other settings stored in `server.properties`.
</Card>
