GraveBox is a robust Minecraft plugin designed to enhance player experience by preventing item loss upon death. Instead of dropping items when players die, GraveBox automatically creates a special container (grave) at the death location that securely stores all inventory items.
- πͺ¦ Automatic Grave Creation: Instantly generates a container at the exact death location when a player dies
- π Complete Inventory Preservation: Transfers ALL items including:
- Full armor set (helmet, chestplate, leggings, boots)
- Offhand items (shields, totems, etc.)
- Main inventory contents
- Hotbar items
- π¦ Multiple Container Options: Supports CHEST, BARREL, and SHULKER_BOX
- π§Ή Smart Grave Management: Automatically removes empty graves to prevent clutter
- π File-based Storage: Each grave's contents are saved to individual YML files
- π Virtual Inventory Mode: Uses virtual inventories for grave contents
- π₯ Explosion Protection: Graves survive TNT, creepers, and other explosions
- π Indestructible Graves: Optional complete protection against all damage
- π Owner-Exclusive Access: Strict access control with configurable messages
- π« Item Blacklisting: Prevent specific items from being stored in graves
- π Death Tracking: Records how many times each player has died
- ποΈ Database Storage: SQLite by default
- π Stats Command: /gravestats shows personal death count
- β±οΈ Timestamp Tracking: Records when each death occurred
- π’ Death Notifications: Real-time alerts to Discord channels
- π¨ Custom Embeds: Color-coded messages with rich formatting
- π Location Details: Includes world and coordinates
- πΌοΈ Custom Footer: Shows plugin version in messages
- π·οΈ Custom Grave Names: Supports {player} placeholder and color codes
- π§ Flexible Material Choices: Any container block type
- π€ Item Overflow Handling: Drops excess items when grave is full
- βοΈ Blacklist System: Prevent specific items from being stored
- π½ Download the latest GraveBox.jar from releases
- π Place in plugins/ folder
- π Restart server to generate configs
- βοΈ Edit plugins/GraveBox/config.yml as needed
- π Reload with /gravebox reload or restart
grave:
material: "CHEST" # CHEST, BARREL, SHULKER_BOX
size: "EXTRA_LARGE" # SMALL (9), MEDIUM (18), LARGE (27), EXTRA_LARGE (54)
explosion-protection: true
indestructible: true
auto-remove: true
drop-items-on-destroy: false
custom-name: "&6{player}'s Grave"stats:
enabled: true
database:
type: "SQLITE"
file: "stats.db"discord:
enabled: false
webhook-url: "https://discord.com/api/webhooks/your_webhook_here"
message: "{player} died at {x}, {y}, {z} in world {world}"
embed-color: "FF0000"messages:
grave-created: "&aYour items are safe in a grave at &e{x}, {y}, {z}&a in world &e{world}&a."
not-your-grave: "&cThis is not your grave!"
cannot-destroy: "&cThis grave is indestructible!"
grave-emptied: "&aYou retrieved all items from your grave. It has now vanished."
grave-full: "&cYour grave was too small to hold all your items! Some were dropped nearby."
stats-message: "&6Your death count: &a"advanced:
blacklisted-items:
- "BEDROCK"
- "BARRIER"
- "COMMAND_BLOCK"
- "CHAIN_COMMAND_BLOCK"
- "REPEATING_COMMAND_BLOCK"
- "STRUCTURE_BLOCK"
- "JIGSAW"| Permission | Description | Default |
|---|---|---|
| gravebox.use | Access grave features | true |
| gravebox.stats | View death statistics | true |
| gravebox.admin | Admin commands | op |
| gravebox.bypass | Bypass all protections | op |
/gravestats- View your death count (aliases: deathstats, deaths)
/graveadmin- Admin commands for GraveBox (reload|stats)
- PaperMC API 1.21
- SQLite JDBC (included)
- Jackson Databind (included)
- PlaceholderAPI (soft dependency)
- Vault (soft dependency)
- SQLite database for statistics
- YML files for grave contents storage
- Java 17+ required
- Maven build system
- Shaded dependencies to prevent conflicts
Q: How do I set up Discord notifications?
A: Enable in config.yml and add your webhook URL
Q: Can graves be destroyed if indestructible is false?
A: Yes, with drop-items-on-destroy controlling whether items drop or are deleted
Q: How do I prevent certain items from being stored?
A: Add them to the blacklisted-items in config.yml
Q: What happens if a grave is placed in an obstructed location?
A: The plugin will try to place it one block higher, or drop items normally if no space is available
Q: Can I change the grave size?
A: Yes, through the size option in config (9-54 slots depending on material)
- Use SHULKER_BOX for portable graves that move with chunks
- Combine with WorldGuard for region-specific protections
- Use PlaceholderAPI to show death stats in scoreboards
- Set up Discord webhooks for staff monitoring
- For large servers, consider monitoring the graves folder size
Report issues on GitHub. Contributions welcome via pull requests!
MIT License - Free for use and modification
- Current Version: 2.0
- Minecraft Version: 1.17
- API Version: Paper 1.21-R0.1-SNAPSHOT
- Java Version: 17+
- Clone the repository
- Run
mvn clean package - Find the shaded jar in target/ folder
GraveBox is designed to work well with:
- Essentials (loads before it to handle death events)
- Vault (for potential economy integration)
- PlaceholderAPI (for stats display)
- 54-slot graves only work with CHEST material (as double chests)
- Virtual inventory mode doesn't support hoppers or other block interactions
- File-based storage may become inefficient with extremely high player counts