Scavenger
About Scavenger
This is a continuation of the Scavenger plugin originally written by SirHedgehog. This plugin will automatically recover items for players after they die.
Features
- Automatic item recovery at death.
- Individual item recovery based on permissions if enabled.
- Automatic level and experience recovery at death.
- Supports SuperPerms
- Supports Vault based economies.
- Persistent recoveries. If the server is stopped before a player can recover inventory the inventory is saved to disk.
- Slot based recovery
How to install
Just drop the jar file in your plugins directory and restart your server. Configure permissions.
Links
Hooks
Scavenger hooks into several plugins to play nice with their inventory controls.
- Multiverse-Inventories
- MultiInv
- Mob Arena
- PVP Arean
- Ultimate Arena
- Battle Arena
- WorldInventories
- Minigames
- xInventories
Scavenger also hooks into Residence to provide item recovery override per residence.
Scavenger also hooks into Factions to provide item recovery override in enemy territory.
Scavenger optionally hooks into authentication plugins via Authenticator. Update the config.yml accordingly. More info here.
Dependencies
- To use an economy plugin you will need Vault and an economy plugin.
Permissions
- scavenger.scavenge - Enable item recovery
- scavenger.scavenge.damage_cause
- scavenger.level - Enable level recover
- scavenger.exp - Enable experience points recovery
- scavenger.free - Free item recovery
- scavenger.reload - Reload config
- scavenger.drop.[ITEM] - If SingleItemDrops is true then don't recover these items.
- scavenger.keep.[ITEM] - If SingleItemKeeps is true then only recover these items.
- scavenger.self.on - Allows players to enable item recovery for themselves.
- scavenger.self.off - Allows players to disable item recovery for themselves.
- scavenger.disable - Allows players to completely disable Scavenger.
- scavenger.enable - Allows players to completely enable Scavenger.
- scavenger.list - Allows player to list all pending recoveries. (Purely informational)
If you enabled slot based recovery you will need to give each player a permission node for each slot.
- Armour:
- scavenger.armour.X - Armour slots where X is 0, 1, 2, or 3.
- Armor: 0 = boots, 1 = leggings, 2 = chestplate, 3 = helmet
- scavenger.armour.X - Armour slots where X is 0, 1, 2, or 3.
- Inventory
- scavenger.inv.X - Inventory slots where X is 0 to 35.
- Inventory bar: 0 - 8
- Inventory row 1: 9 - 17
- Inventory row 2: 18 - 26
- Inventory row 3: 27 - 35
- scavenger.inv.X - Inventory slots where X is 0 to 35.
- Offhand (shield etc...)
- scavenger.offhand.1
FAQ
Q) How do I explicitly keep items?
A) Set SingleItemKeeps true. Then use scavenger.keep.[ITEM] to keep the ITEM.
Q) How do I explicitly drop items?
A) Set SingleItemDrops true. Then use scavenger.drop.[ITEM] to drop the ITEM.
Commands
- /scvr - Reload configuration
- /scvron - Self enable scavenger
- /scvroff - Self disable scavenger
- /scvrlist - List all pending recoveries
Videos
Configuration
Donations
Doge: DEaQKfC9ivumNgs3feo53xndhjhd4PV5Yk
BTC: 3Nthksfx8fNKkUgZnHWRTaH4MjUMe4dQG8
ETH: 0xf65cB1960e176ea980545f525f687cF2354D310d
XCH: xch1jgtw6vxyy4wv302xlhyuzwtfen67w5yrvcwc2gz2us3fwtjp3uxq6hlzhc
Please update to version 1.17, please.
The Scavenger looks abandoned. Nobody seems to visit the page on github, are there other resources where you can leave an issue/suggestion request?
In reply to tixoh_ilja:
Hey there. Are there issues with the current version? I see on github there is a new feature request.
Funciona para la 1.16.1 ???????????????????????????
In reply to itzghost000:
It should just work. Test it out and let me know if you have any problems.
Like a blacklist, I would like to see a force-list. The ability to add WG regions, in which inventory and experience will be forcibly saved for all players, regardless of permissions
Any chance you can make the offline mode hook into loginsecurity as the athenticator you linked doesn't work any more....
Also, Can this work with deathchests? So if they want to use money the deathchest will go away if they spend the money and scavange there items. Or leave the chest if they refuse to pay and go get there chests them selfs? Is this possible?
update to 1.15, please
This plugin is garbage because it doesn't work properly.
thanks for update :D
For 1.14+ in
https://h.cnaude.org/jenkins/job/Scavenger/lastBuild/
In reply to CXSORIOUS:
https://jenkins.chrisnaude.com/jenkins/job/Scavenger/
02.08 18:48:10 [Server] ERROR Could not pass event PlayerInteractEvent to OpenInv v4.0.1 02.08 18:48:10 [Server] INFO java.lang.NoSuchMethodError: net.minecraft.server.v1_14_R1.TileEntityShulkerBox.t()Lnet/minecraft/server/v1_14_R1/TileEntityShulkerBox$AnimationPhase; 02.08 18:48:10 [Server] INFO at com.lishid.openinv.internal.v1_14_R1.AnySilentContainer.isBlockedShulkerBox(AnySilentContainer.java:140) ~[?:?] 02.08 18:48:10 [Server] INFO at com.lishid.openinv.internal.v1_14_R1.AnySilentContainer.isAnyContainerNeeded(AnySilentContainer.java:93) ~[?:?] 02.08 18:48:10 [Server] INFO at com.lishid.openinv.listeners.PlayerListener.onPlayerInteract(PlayerListener.java:65) ~[?:?] 02.08 18:48:10 [Server] INFO at com.destroystokyo.paper.event.executor.asm.generated.GeneratedEventExecutor21.execute(Unknown Source) ~[?:?] 02.08 18:48:10 [Server] INFO at org.bukkit.plugin.EventExecutor.lambda$create$1(EventExecutor.java:69) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at co.aikar.timings.TimedEventExecutor.execute(TimedEventExecutor.java:80) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:70) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:545) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at org.bukkit.craftbukkit.v1_14_R1.event.CraftEventFactory.callPlayerInteractEvent(CraftEventFactory.java:445) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.PlayerInteractManager.a(PlayerInteractManager.java:440) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.PlayerConnection.a(PlayerConnection.java:1361) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.PacketPlayInUseItem.a(PacketPlayInUseItem.java:27) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.PacketPlayInUseItem.a(PacketPlayInUseItem.java:5) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.PlayerConnectionUtils.lambda$ensureMainThread$0(PlayerConnectionUtils.java:23) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.TickTask.run(SourceFile:18) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeTask(IAsyncTaskHandler.java:136) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.IAsyncTaskHandlerReentrant.executeTask(SourceFile:23) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.executeNext(IAsyncTaskHandler.java:109) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.MinecraftServer.aX(MinecraftServer.java:1012) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.MinecraftServer.executeNext(MinecraftServer.java:1005) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.IAsyncTaskHandler.awaitTasks(IAsyncTaskHandler.java:119) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.MinecraftServer.sleepForTick(MinecraftServer.java:989) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at net.minecraft.server.v1_14_R1.MinecraftServer.run(MinecraftServer.java:922) ~[patched_1.14.4.jar:git-Paper-153] 02.08 18:48:10 [Server] INFO at java.lang.Thread.run(Thread.java:748) [?:1.8.0_181] 02.08 18:48:36 [Server] INFO CONSOLE is
In reply to danechek:
This looks like a bug in the OpenInv plugin.
In reply to cnaude:
sorry, i messed up
Hi, I want to keep all items with a certain tag. (Or, if need be, all items of a certain type with a certain tag) Is this possible?
Hi, I apologize right away, for Google translator, English is not my language. I have a problem when I turn on SingleItemDrops and point things into perm, all things drop out and not just those that I indicated
I also use the setspawn plugin but not sure what it is
In reply to Tojefin:
The problem was that the operators dropped out all the things as soon as I removed the op everything began to work
add permission to disable/enable item recovery for other players
Someone can help me ?
I have a problem with Scavenger
When we die, we respawn at the world's spawn and not into the bed.
Do is it possible to change this and respawn into bed ?