BloodMoney v0.3.1 - Collect money from killing mobs

I have stopped development of this project in favor of WalletDrop.

Simple plugin that allows you to collect configurable amount of money by killing mobs. Requires a properly registered economy plugin… This should be compatible with most Mod entities as well. Configuration file is pretty self explanatory.

No commands as of yet

Only permission needed to use this is BloodMoney.collect

Release: Download Here

:gift: Donations

Creating plugins for Sponge takes time and effort. If you enjoy the hard work I’ve put into to this please feel free to get my a cup of coffee. It is much appreciated.

Donate

5 Likes

It would be cool if you could set it up so one group could get like $20 from killing a creeper and another group could get $40 from the same thing.T his is a very nice plugin, though, and is the first of it’s kind on here; Well done!

1 Like

do you think you could possibly add the ability to make mobs drop custom items?

1 Like

ummm also slight issue…doesn’t seem to pay players for arrow kills…could you please fix that…thank you

1 Like

I have same problem QvQ

BloodMoney v0.2.9 is getting errors on guardian and ocelots living entiny passing event

Can you send me your server log so I can see the errors?

I’m aware of this. Last update was an attempt to fix but no dice. Will be looking into it when I have the chance

[11:37:48] [Server thread/INFO] [FML/]: [Server thread] Server side modded connection established
[11:37:54] [Server thread/INFO] [io.github.hsyyid.essentialcmds/]: [Meremoth] executed command fly
[11:37:55] [Server thread/DEBUG] [CreeperMend/]: Cause[{Name=Source, Object={SpongeBlockSnapshot{worldUniqueId=d52e7440-4680-4fe3-8618-0c40f0da339a, position=(497, 11, 441), blockState=minecraft:redstone_ore, extendedState=minecraft:redstone_ore}}}]
[11:37:58] [Server thread/INFO] [io.github.hsyyid.essentialcmds/]: [Meremoth] executed command spawn
[11:38:29] [Server thread/ERROR] [Sponge/]: Could not pass LivingDeathEvent to [email protected]
java.lang.ClassCastException: net.minecraft.entity.monster.EntityGuardian cannot be cast to org.spongepowered.api.entity.living.player.Player
at com.gmail.trentech.BloodMoney.EventHandler.onDestructEntityEvent(EventHandler.java:87) ~[EventHandler.class:?]
at org.spongepowered.common.event.listener.DeathListener_EventHandler_onDestructEntityEvent73.handle(Unknown Source) ~[?:?]
at org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:86) ~[RegisteredListener.class:1.8.9-1808-4.1.0-BETA-1228]
at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:239) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1228]
at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:199) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1228]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:70) [EventBus.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:58) [EventBus.class:?]
at net.minecraftforge.common.ForgeHooks.onLivingDeath(ForgeHooks.java:475) [ForgeHooks.class:?]
at net.minecraft.entity.EntityLivingBase.func_70645_a(EntityLivingBase.java:890) [pr.class:?]
at net.minecraft.entity.EntityLivingBase.func_70097_a(EntityLivingBase.java:308) [pr.class:?]
at net.minecraft.entity.monster.EntityGuardian$AIGuardianAttack.func_75246_d(SourceFile:577) [vt$a.class:?]
at net.minecraft.entity.ai.EntityAITasks.func_75774_a(SourceFile:102) [re.class:?]
at net.minecraft.entity.EntityLiving.func_70626_be(EntityLiving.java:559) [ps.class:?]
at net.minecraft.entity.EntityLivingBase.func_70636_d(EntityLivingBase.java:1775) [pr.class:?]
at net.minecraft.entity.EntityLiving.func_70636_d(EntityLiving.java:382) [ps.class:?]
at net.minecraft.entity.monster.EntityMob.func_70636_d(SourceFile:27) [vv.class:?]
at net.minecraft.entity.monster.EntityGuardian.func_70636_d(SourceFile:362) [vt.class:?]
at net.minecraft.entity.EntityLivingBase.func_70071_h_(EntityLivingBase.java:1614) [pr.class:?]
at net.minecraft.entity.EntityLiving.func_70071_h_(EntityLiving.java:228) [ps.class:?]
at net.minecraft.entity.monster.EntityMob.func_70071_h_(SourceFile:32) [vv.class:?]
at net.minecraft.world.World.redirect$onCallEntityUpdate$0(World.java:286) [adm.class:?]
at net.minecraft.world.World.func_72866_a(World.java:1862) [adm.class:?]
at net.minecraft.world.WorldServer.func_72866_a(WorldServer.java:700) [le.class:?]
at net.minecraft.world.World.func_72870_g(World.java:1831) [adm.class:?]
at net.minecraft.world.World.func_72939_s(World.java:1663) [adm.class:?]
at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:545) [le.class:?]
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:701) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:344) [ko.class:?]
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:605) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:481) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_77]
[11:38:33] [Server thread/DEBUG] [FML/]: Gathering id map for writing to world save world
[11:38:33] [Server thread/ERROR] [Sponge/]: Could not pass LivingDeathEvent to [email protected]
java.lang.ClassCastException: net.minecraft.entity.monster.EntityGuardian cannot be cast to org.spongepowered.api.entity.living.player.Player
at com.gmail.trentech.BloodMoney.EventHandler.onDestructEntityEvent(EventHandler.java:87) ~[EventHandler.class:?]
at org.spongepowered.common.event.listener.DeathListener_EventHandler_onDestructEntityEvent73.handle(Unknown Source) ~[?:?]
at org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:86) ~[RegisteredListener.class:1.8.9-1808-4.1.0-BETA-1228]
at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:239) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1228]
at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:199) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1228]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:70) [EventBus.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:58) [EventBus.class:?]
at net.minecraftforge.common.ForgeHooks.onLivingDeath(ForgeHooks.java:475) [ForgeHooks.class:?]
at net.minecraft.entity.EntityLivingBase.func_70645_a(EntityLivingBase.java:890) [pr.class:?]
at net.minecraft.entity.EntityLivingBase.func_70097_a(EntityLivingBase.java:308) [pr.class:?]
at net.minecraft.entity.monster.EntityGuardian$AIGuardianAttack.func_75246_d(SourceFile:577) [vt$a.class:?]
at net.minecraft.entity.ai.EntityAITasks.func_75774_a(SourceFile:102) [re.class:?]
at net.minecraft.entity.EntityLiving.func_70626_be(EntityLiving.java:559) [ps.class:?]
at net.minecraft.entity.EntityLivingBase.func_70636_d(EntityLivingBase.java:1775) [pr.class:?]
at net.minecraft.entity.EntityLiving.func_70636_d(EntityLiving.java:382) [ps.class:?]
at net.minecraft.entity.monster.EntityMob.func_70636_d(SourceFile:27) [vv.class:?]
at net.minecraft.entity.monster.EntityGuardian.func_70636_d(SourceFile:362) [vt.class:?]
at net.minecraft.entity.EntityLivingBase.func_70071_h_(EntityLivingBase.java:1614) [pr.class:?]
at net.minecraft.entity.EntityLiving.func_70071_h_(EntityLiving.java:228) [ps.class:?]
at net.minecraft.entity.monster.EntityMob.func_70071_h_(SourceFile:32) [vv.class:?]
at net.minecraft.world.World.redirect$onCallEntityUpdate$0(World.java:286) [adm.class:?]
at net.minecraft.world.World.func_72866_a(World.java:1862) [adm.class:?]
at net.minecraft.world.WorldServer.func_72866_a(WorldServer.java:700) [le.class:?]
at net.minecraft.world.World.func_72870_g(World.java:1831) [adm.class:?]
at net.minecraft.world.World.func_72939_s(World.java:1663) [adm.class:?]
at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:545) [le.class:?]
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:701) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:344) [ko.class:?]
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:605) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:481) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_77]
[11:38:37] [Server thread/DEBUG] [CreeperMend/]: Cause[{Name=Source, Object={SpongeBlockSnapshot{worldUniqueId=d52e7440-4680-4fe3-8618-0c40f0da339a, position=(322, 12, 158), blockState=minecraft:redstone_ore, extendedState=minecraft:redstone_ore}}}]
[11:38:52] [Server thread/ERROR] [Sponge/]: Could not pass LivingDeathEvent to [email protected]
java.lang.ClassCastException: net.minecraft.entity.monster.EntityGuardian cannot be cast to org.spongepowered.api.entity.living.player.Player
at com.gmail.trentech.BloodMoney.EventHandler.onDestructEntityEvent(EventHandler.java:87) ~[EventHandler.class:?]
at org.spongepowered.common.event.listener.DeathListener_EventHandler_onDestructEntityEvent73.handle(Unknown Source) ~[?:?]
at org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:86) ~[RegisteredListener.class:1.8.9-1808-4.1.0-BETA-1228]
at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:239) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1228]
at org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:199) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1228]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:70) [EventBus.class:?]
at net.minecraftforge.fml.common.eventhandler.EventBus.post(EventBus.java:58) [EventBus.class:?]
at net.minecraftforge.common.ForgeHooks.onLivingDeath(ForgeHooks.java:475) [ForgeHooks.class:?]
at net.minecraft.entity.EntityLivingBase.func_70645_a(EntityLivingBase.java:890) [pr.class:?]
at net.minecraft.entity.EntityLivingBase.func_70097_a(EntityLivingBase.java:308) [pr.class:?]
at net.minecraft.entity.monster.EntityGuardian$AIGuardianAttack.func_75246_d(SourceFile:577) [vt$a.class:?]
at net.minecraft.entity.ai.EntityAITasks.func_75774_a(SourceFile:102) [re.class:?]
at net.minecraft.entity.EntityLiving.func_70626_be(EntityLiving.java:559) [ps.class:?]
at net.minecraft.entity.EntityLivingBase.func_70636_d(EntityLivingBase.java:1775) [pr.class:?]
at net.minecraft.entity.EntityLiving.func_70636_d(EntityLiving.java:382) [ps.class:?]
at net.minecraft.entity.monster.EntityMob.func_70636_d(SourceFile:27) [vv.class:?]
at net.minecraft.entity.monster.EntityGuardian.func_70636_d(SourceFile:362) [vt.class:?]
at net.minecraft.entity.EntityLivingBase.func_70071_h_(EntityLivingBase.java:1614) [pr.class:?]
at net.minecraft.entity.EntityLiving.func_70071_h_(EntityLiving.java:228) [ps.class:?]
at net.minecraft.entity.monster.EntityMob.func_70071_h_(SourceFile:32) [vv.class:?]
at net.minecraft.world.World.redirect$onCallEntityUpdate$0(World.java:286) [adm.class:?]
at net.minecraft.world.World.func_72866_a(World.java:1862) [adm.class:?]
at net.minecraft.world.WorldServer.func_72866_a(WorldServer.java:700) [le.class:?]
at net.minecraft.world.World.func_72870_g(World.java:1831) [adm.class:?]
at net.minecraft.world.World.func_72939_s(World.java:1663) [adm.class:?]
at net.minecraft.world.WorldServer.func_72939_s(WorldServer.java:545) [le.class:?]
at net.minecraft.server.MinecraftServer.func_71190_q(MinecraftServer.java:701) [MinecraftServer.class:?]
at net.minecraft.server.dedicated.DedicatedServer.func_71190_q(DedicatedServer.java:344) [ko.class:?]
at net.minecraft.server.MinecraftServer.func_71217_p(MinecraftServer.java:605) [MinecraftServer.class:?]
at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:481) [MinecraftServer.class:?]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_77]

Both issues should be resolved. More testing may be needed.

Okay thanks for the hard work

Tested it I didnt get any errors so I thank its fixed.
Thanks again

08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:250) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:264) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.postBulk(SpongeModEventManager.java:225) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:238) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:86) ~[RegisteredListener.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.common.event.listener.InteractBlockEventListener_RPPlayerListener_onInteractBlock132.handle(Unknown Source) ~[?:?]
08.04 23:12:10 [服务器] 位置: br.net.fabiozumbi12.redprotect.listeners.RPPlayerListener.onInteractBlock(RPPlayerListener.java:300) ~[RPPlayerListener.class:?]
08.04 23:12:10 [服务器] 位置: br.net.fabiozumbi12.redprotect.RPDoor.isOpenable(RPDoor.java:57) ~[RPDoor.class:?]
08.04 23:12:10 [服务器] Server thread/严重错误 [Sponge]: Could not pass InteractBlockEvent$Primary$Impl to [email protected]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:250) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:264) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.postBulk(SpongeModEventManager.java:225) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:238) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:86) ~[RegisteredListener.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.common.event.listener.InteractBlockEventListener_PlayerInteractListener_onPlayerInteractBlock72.handle(Unknown Source) ~[?:?]
08.04 23:12:10 [服务器] 位置: io.github.hsyyid.essentialcmds.listeners.PlayerInteractListener.onPlayerInteractBlock(PlayerInteractListener.java:64) ~[PlayerInteractListener.class:8.0.1]
08.04 23:12:10 [服务器] Server thread/严重错误 [Sponge]: Could not pass InteractBlockEvent$Primary$Impl to [email protected]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:250) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:264) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.postBulk(SpongeModEventManager.java:225) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:238) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:86) ~[RegisteredListener.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.common.event.listener.InteractBlockEventListener_RPPlayerListener_onInteractBlock132.handle(Unknown Source) ~[?:?]
08.04 23:12:10 [服务器] 位置: br.net.fabiozumbi12.redprotect.listeners.RPPlayerListener.onInteractBlock(RPPlayerListener.java:300) ~[RPPlayerListener.class:?]
08.04 23:12:10 [服务器] 位置: br.net.fabiozumbi12.redprotect.RPDoor.isOpenable(RPDoor.java:57) ~[RPDoor.class:?]
08.04 23:12:10 [服务器] Server thread/严重错误 [Sponge]: Could not pass InteractBlockEvent$Primary$Impl to [email protected]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:250) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:264) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.postBulk(SpongeModEventManager.java:225) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.mod.event.SpongeModEventManager.post(SpongeModEventManager.java:238) [SpongeModEventManager.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.common.event.RegisteredListener.handle(RegisteredListener.java:86) ~[RegisteredListener.class:1.8.9-1808-4.1.0-BETA-1253]
08.04 23:12:10 [服务器] 位置: org.spongepowered.common.event.listener.InteractBlockEventListener_PlayerInteractListener_onPlayerInteractBlock72.handle(Unknown Source) ~[?:?]
08.04 23:12:10 [服务器] 位置: io.github.hsyyid.essentialcmds.listeners.PlayerInteractListener.onPlayerInteractBlock(PlayerInteractListener.java:64) ~[PlayerInteractListener.class:8.0.1]
08.04 23:12:10 [服务器] Server thread/严重错误 [Sponge]: Could not pass InteractBlockEvent$Primary$Impl to [email protected]

I can’t get money kill a monster, and the console will display the information.
Before I can get money, I modified the config

This error isn’t from my plugin. It’s a bit hard to read the way you posted it but it looks like it’s RedProtect, but I also see a reference to EssentialCmds as well. There’s no references to BloodMoney at all

Hi ~
We use your plugin for put some rewards when a player kills monsters, but when we restart the server the reward, we set, are reset.
How should we solve this issue?

We use Minecraft 1.8.9 & Sponge c:
Thanks you ~

This has already been resolved in latest version

https://github.com/trentech/BloodMoney/releases/tag/0.3.0

Hi, it is working with the latest version of Sponge?

I believe so

``

Do you have test it with the latest version of Sponge with the API 5?

Sadly this plugin is not paying on SpongeForge v5.

I gave the permissions BloodMoney.collect and bloodmoney.collect and the balance does not change.