Start with:
/hdb version
/hdb status
/hdb verify
/hdb debug
/hdb report
/hdb debug provides concise user-facing diagnostics. /hdb report creates a more complete support report; players can click to copy it, while console users can copy the logged output.
| Check | Fix |
|---|---|
| Java version | Use Java 25 or newer. |
| Server type | Use a supported modern Paper or Folia server. |
| JAR placement | Put one HeadDB JAR directly in plugins/. |
| Duplicate JARs | Remove old duplicate versions. |
| Configuration | Check the first HeadDB configuration error in console. |
Likely causes:
- First startup has no cache and remote refresh failed.
- Outbound network access is blocked.
- HTTP timeouts are too low for the environment.
- The cache was removed and the remote source is unavailable.
- The server cannot write to
plugins/HeadDB/.
Recommended sequence:
- Check server network access.
- Run
/hdb verify. - Run
/hdb refresh. - Inspect
/hdb report. - Increase HTTP timeout values only when justified.
- Verify filesystem permissions.
This is normal when HeadDB loads verified local artifacts during startup. If the remote manifest is unchanged, HeadDB keeps the cache-backed snapshot instead of re-downloading the full catalog.
The last refresh operation in /hdb debug or /hdb report confirms whether a remote check completed.
Check:
refresh:
scheduled:
enabled: true
interval-hours: 6The first scheduled run occurs after the configured interval; startup refresh already performs the initial check. Inspect /hdb report for scheduler configuration and the last refresh operation.
Common causes:
- YAML indentation errors
- Tabs instead of spaces
- Invalid booleans or numbers
- Invalid relative paths
- Invalid materials in
gui.yml - Invalid sound identifiers in
sounds.yml - Scheduled interval outside 1 through 168 hours
Restore from backup, compare with generated defaults, and use the exact key named in the console error.
Check:
headdb.head.take
headdb.gui.head.take
Also check category access. When economy is enabled, verify balance, Vault, the economy provider, and applicable prices.
Check database state, query spelling, active filters, local visibility overrides, and category permissions.
Check:
headdb.favorites
headdb.gui.favorites
headdb.gui.favorites.toggle
Favorites require writable local storage.
Check:
player-heads:
enabled: true
allow-external-lookup: trueand permissions:
headdb.player-heads
headdb.command.player
headdb.gui.player-heads
Targeting other players requires the corresponding .others permission.
Check whether this file was deleted or replaced:
plugins/HeadDB/storage/headdb.db
Restore it from backup when available.