SavageDeathChest
Description:
This plugin stores a player's inventory in a chest on death for later retrieval. It has many options, but configuration and use has been kept as simple as possible.
Features:
- Places a single or double chest at player's death location containing the player's inventory
- Optional sign placement on chest, showing player name and death date
- Configurable list of block types that chests can replace
- WorldGuard, GriefPrevention, PreciousStones and Towny aware, will not place a chest where the player does not have access. Enabled individually.
- Option to check protection plugins on chest access. Enabled individually, disabled by default.
- added WorldGuard 7.0 compatibility.
- Searches a configurable distance from death location to find a suitable chest location
- Optionally require players to have chest(s) in inventory
- Chest protection allows only owners access. Also makes chests explosion proof!
- Optionally allow player's killer to access their chest, for pvp looting.
- Prevent concurrent access to chests when killer looting is enabled.
- Optional quick-loot feature allows one click (sneak-punch) chest looting
- Configurable expiration time for death chests, at which point they will break and drop their contents
- Custom messages and language localization
- Per world enabled in configuration
- Uses sqlite for persistent storage
- Prevents creative mode players from opening death chests
- Optionally prevent players from placing items in death chests
- Optional sound effects!
- A perfect compliment to SavageDeathCompass and SavageGraveyards
Permissions:
Permission | Description | Default |
---|---|---|
deathchest.player |
Default player permissions | true |
deathchest.chest |
Enable death chests for player. | true |
deathchest.loot |
Allows player to quick-loot death chests by sneak-punching. | true |
deathchest.doublechest |
Allows placement of double chests if necessary. | true |
deathchest.admin |
Default administrator permissions | op |
deathchest.freechest |
Overrides require-chest configuration setting. |
op |
deathchest.creative-access |
Overrides creative mode chest opening restriction. | op |
deathchest.loot.other |
Allow player to loot other player's chests. | op |
deathchest.reload |
Allows use of plugin reload command. | op |
deathchest.list |
Allows a user to view a list of their death chests and locations. | op |
deathchest.list.other |
Allows a user to view a list of other players death chests and locations. | op |
Commands:
/deathchest list [username]
Displays a list of player's death chest locations. Requires deathchest.list permission. If a player has permission deathchest.list.other, they can supply a username to list another player's deathchests, or type an asterisk (*) to list all deathchests.
/deathchest reload
Reloads configuration file and messages. Requires deathchest.reload permission, which is child node of deathchest.admin.
/deathchest status
Displays version info and some config settings. Requires deathchest.status permission, which is child node of deathchest.admin.
/deathchest help [command]
Displays a brief help message and command usage.
Installation
Put the jar in your plugins folder and restart your server. Edit the generated configuration file to your liking, then reload the plugin settings with the /deathchest reload
command. No server restart necessary!
Configuration
All configuration changes can be made without needing to restart your server. Just issue the reload command when you are satisfied with your settings in config.yml.
Source
Source code for this plugin is hosted on github and distributed under the GPLv3 license.
https://github.com/tim-savage/SavageDeathChest
The warning in the log is due to a missing message in the language file; I will make sure the message gets included in the next version. However, the chest-denied-block message should only get sent to a player if there was no open space to place a chest within the search distance. This should be a rare occurrence, as there should usually be at least one open block at the player's death location, unless they died by teleporting into solid stone or something like that.
I'd be curious to know the circumstances in which this occurred, in case there is a further bug that needs to be tracked down. Otherwise, this is intended behavior, in that a chest will not be placed where there is no open space or replaceable blocks within the search distance. The log warning was merely indicating that the message to be sent for this circumstance could not be found.
The list of replaceable blocks in the config file are block types that the chests may be substituted for; by default it includes water and lava, so chests will be placed for players who die when submerged. The only other instance I can think of is a very large cave-in, where the player is buried deep enough that an open space does not exist within the configured search distance. This could be remedied by adding sand/gravel to the replaceable blocks list, and/or increasing the search distance.
We're using this on 1.10.2 Spigot and have had two players with completely full inventories and an item in the second hand die and get chests with only a single sign in them. We get this error on console when it happens:
http://pastebin.com/DTzApgAK
We're running 1.7.0 beta2.
It appears this error is actually being generated by Towny, but I'll try to do some testing to confirm that the death chest plugin is behaving as expected with full inventories and items in both hands. As far as I remember, my plugin only checks the size of the dropped inventory when deciding if a double chest is required. Any inventory that would not fit in a single chest should be dropped on the ground if a double chest cannot be placed, whether due to space available, or if the require chest in inventory feature was enabled, and the large inventory carrying player only had a single chest in their possession at time of death.
Hey there! We're currently using this on a 1.9.4 server, but we're having an issue with Soulbounds. Unfortunately, the development page is down, but the plugin can be found here:
http://ci.md-5.net/job/Soulbound/
The death plugin is taking the soulbound items from player inventories. Ideally the chest would take all non-soulbound items, and leave soulbound items in their inventory upon respawn. Is there a way to work around this, or could such functionality be built? Thank you very much!
Hello! Saw this in my console log :)
22.07 12:00:00 [Server] WARN Please notify the author of this error. 22.07 12:00:00 [Server] WARN File versions should follow the format 'PluginName vVERSION' 22.07 12:00:00 [Server] WARN The author of this plugin ([t3hk0d3, zml]) has misconfigured their Auto Update system 22.07 12:00:00 [Server] INFO SQLite datastore initialized. 22.07 12:00:00 [Server] INFO Multiverse-Core detected. 22.07 12:00:00 [Server] INFO Enabling SavageDeathChest v1.7.0-beta2
GREAT PLUGIN! I absolutely love it :)
@Beebullbum
So glad it is working now, I hate playing the guessing game when trying to track down bugs that don't manifest themselves on my own server. Also, thanks for the praise!
@Momshroom
I'm glad to hear you got that sorted. I recently installed CreeperHeal to repair terrain damage from explosions, and have been very satisfied with the results. That may be something that would work for you.
To both of you, thank you so much for following up, so I can put these issues to rest. I know how easy it is to just carry on when you've solved your issue, but it's immensely helpful as a developer to know when an issue has been solved.
@timsavage
Thank you for your help. It turns out we were having problems ONLY when players died by explosion and that the issue was due to towny's regen settings. Toggling off explosion regen fixed the issues.
@timsavage
Actually with this past update everything works very smoothly, thank you so much! We all really appreciate you keeping up a plugin like this, I couldn't imagine using another death chest plugin!
Thank you.
@Momshroom
Thanks for the report. Unfortunately, it appears your error is being thrown by Towny. I couldn't find any mention of behavior involving chests in the Towny docs, so I'm not sure what it is attempting to do with the player's inventory or chest inventory that is causing this error.
I ran a quick test, and the DeathChest plugin (without Towny installed) behaves as expected when deploying, opening, closing and auto-looting a DeathChest, regardless of an item in the player's off hand. When auto looting, any items that do not fit into the player's inventory will be dropped on the ground.
The chests that are created by this plugin are just normal chest blocks, with block metadata set to identify the owner by uuid and optionally the player's killer uuid. They should behave exactly the same as any other chest block as far as other plugins are concerned.
Hi, I'm running the beta2 version you posted yesterday, and I got this console error when a player died and claimed an empty chest.
http://pastebin.com/ChCkSmvv
From the error I'm guessing that it's because he had something in his second hand when he died.
Thanks!
@Beebullbum
I'm not sure what's causing this, but with your help, I'm sure we can track it down.
For starters, what OS is your server running, and what version of spigot?
You can also add
on a line by itself in the config.yml file, and the plugin will generate some extra log messages that might offer us some clues as to what is going on.
Edit: I guess Java version, and perhaps a list of plugins would also be useful information. You can always pm me if you don't want to publicly disclose your plugin list.
@erdrickk
Thanks for the report, this has now been fixed in 1.7.10-beta2.
Even with the new update my chests still appear with a blank sign and an empty chest. Once again I have no other plugins that effect death other than the death compass.
getting this error with the new version http://pastebin.com/gAnKf9Bp
A new beta version (v1.7.0-beta) has been uploaded. It is marked as beta as it has not undergone rigorous testing despite significant changes to the code. My hope is that this interim version will address the issues being experienced by some users.
This version now supports 1.9 and newer servers as well as 1.8 and older servers, with the caveat that servers older than 1.9 need to have the sounds.yml file manually replaced with the provided pre-1.9_sounds.yml file.
@JamGallant
I'm getting the exact same problem, I'm not encountering any errors at all. I'm running the plugin on 1.10.
@JamGallant
That sounds like the plugin is crashing while deploying a chest. Are you getting any console errors? I'm currently in the midst of a fairly major rewrite of the plugin, so I'd definitely like to be sure this issue is addressed in the new version.
Hey I love the plugin, however today randomly the chest started appearing with a blank sign. And it had no contents, just produced an empty chest. Any idea why this may be happening?
Hello, I like this plugin but I'm missing one feature. Could you please integrate Vault support and the fee for allowing to the chest? I'd like to use this as an option for players to save their items only for ingame money. If they won't open (pay for) the chest it will despawn after the expiration time for good.
regards, Jouki :)