[HR][/HR]
Overview
ResourcePackEnforcer is a lightweight Spigot plugin that automatically sends a resource pack to players when they join your server. If a player declines the pack, they will be kicked with a fully customizable message. No more players bypassing your server's resource pack!
Everything is configurable — the pack URL, SHA-1 hash, kick message, prompt text, and send delay. All messages support color codes and hex colors out of the box.
[HR][/HR]
✨ Features
- Automatic sending — The resource pack is sent to every player on join
- Enforce mode — Players who decline the pack are immediately kicked
- Fully customizable kick message — Supports color codes (&) and hex colors (&#RRGGBB)
- Prompt message — Custom prompt text shown when requesting the pack (1.17+)
- SHA-1 hash validation — Optional hash verification for pack integrity
- ⏱️ Configurable send delay — Adjust the delay in ticks before the pack is sent
- ️ Bypass permission — Allow specific players or staff to skip the resource pack
- Automatic update checker — Checks GitHub Releases on startup and notifies admins in-game
- Hex color support — Use &#RRGGBB hex colors in all messages (1.16+)
- Console banners — Beautiful ASCII banners on start, stop and update
- ⚙️ Auto-generated config — Config is created automatically with full comments on first start
[HR][/HR]
⚙️ Configuration
Code (YAML):
resourcepack
:
# Direct download URL to the resource pack (.zip)
url
:
"https://example.com/resourcepack.zip"
# SHA-1 hash for validation (or "none" to disable)
hash
:
"none"
# Prompt message shown to the player when requesting the pack (1.17+)
prompt
:
"&ePlease accept the resource pack to join the server!"
# Enforce the resource pack? (true = kick on decline)
enforce
: true
# Delay in ticks before sending the pack (20 ticks = 1 second)
send-delay
: 20
messages:
kick-message
: |-
&c&lResource Pack Declined!
&7You must accept the resource pack
&7to play on this server.
&8&oRejoin the server and accept the pack.
pack-loaded
:
"&a&lResource pack successfully loaded!"
pack-failed
:
"&c&lFailed to load resource pack. Please reconnect!"
prefix
:
"&8[&6ResourcePack&8] &r"
reload-success
:
"&aConfiguration successfully reloaded!"
pack-sent
:
"&aResource pack sent to %player%!"
[HR][/HR]
Commands
| /rp reload |
Reload the configuration |
resourcepack.admin |
| /rp send [player] |
Send the pack to a specific player |
resourcepack.admin |
| /rp sendall |
Send the pack to all online players |
resourcepack.admin |
| /rp info |
Show plugin status and current settings |
resourcepack.admin |
Alias: /resourcepack
[HR][/HR]
Permissions
| resourcepack.admin |
Access to all plugin commands |
OP |
| resourcepack.bypass |
Skip the resource pack requirement |
false |
[HR][/HR]
️ Requirements
- Java 21 or higher
- Spigot / Paper 1.20 or higher
[HR][/HR]
Installation
- Download the latest .jar from the releases tab above
- Drop it into your server's plugins/ folder
- Start the server — config.yml is generated automatically
- Enter your resource pack URL in config.yml
- Run /rp reload or restart the server
[HR][/HR]
Update Checker
ResourcePackEnforcer automatically checks for new versions on startup using the GitHub Releases API.
If a new version is found, a banner is printed in the console and admins with
resourcepack.admin receive a chat notification on join.
[HR][/HR]
Bug Reports & Support
Found a bug or need help? Please open an issue on
GitHub using the appropriate issue template.
[HR][/HR]