No Pvp Log
No Pvp Log
A lightweight solution to players PvP logging during combat! This plugin does work with the newest version of minecraft 1.7.2!
- 1k downloads 9/20/13! Thanks guys.
- 2.5k downloads 11/11/13! WOO!
Intro
Do you have players who PvP log constantly by teleporting away or logging out to avoid PVP? Well look no further! No Pvp Log prevents most common ways of players getting away from combat! (Look under features for how this is achieved.)No Pvp Log is my first plugin on this account. I'll be publishing all of my work here now.
How it works:
When a player hits another player. Both players are in a state called "Combat". For a configurable amount of seconds, they are in the state. Where they cannot use any form of command. (Will be configurable in next version.) And if they log out then they will be punished! On the players log out while in combat, these could happen(defined in config).
- Ban
- Announce the players name and they have PvP logged!
- Kill, and their items will drop.
Commands and Permissions
- None yet
Configuration
The configuration was intended to be simple. No useless things to configure!
- Time_In_Combat = Amount of time players are in combat. (In seconds)
- Kill_On_Pvp_Log = boolean - Kill a player when they PvpLog (Drops there items.)
- Ban_On_Pvp_Log = boolean - Ban the player when they PvpLog.
- Announce_On_PvP_Log = boolean - Announce the person who PvpLogged.
- Disable_Commands_In_PVP: true - Disable Commands while in combat.
TODO
- Add more options for punishment. (Configurable. Example: Loss of money, Tempban, Factions power loss.)
Add configuration for allowing /disallowing commands during combat.- Add configuration for disabling enderpearls while in combat.
Bugs / Requesting a new feature
Please always post bugs! Create a ticket or post in the comments section. I personally don't care. When requesting a new feature I may or may not implement it. But I will always look at the idea.
IT marks pepole On Safezone -_- Please update this is only working pvp logger --
Fails to work within zones marked for no pvp. For example Faction warzones and worldguard regions.
You should make the plugin work by if a player is damaged by another player mark as in combat. Not just if you click on a player.
@NotchG
I need a full stack trace please, also I believe you are running a old version of the plugin... correct? I also just tested with Spider Entities, the current version of the plugin does not give errors when hitting mobs with arrows.
@NotchG
Oh darn. Ill fix this when I get home.
12:18:45 AM CONSOLE: java.lang.ClassCastException: org.bukkit.craftbukkit.v1_6_R3.entity.CraftSpider cannot be cast to org.bukkit.entity.Player 12:18:47 AM CONSOLE: [SEVERE] Could not pass event EntityDamageByEntityEvent to No PvP Log v0.1
I guess that the plugin is trying to parse mobs as player entities when combat happens.
Console is being spammed with it.
Would like a fix please.
Added update 1.3! Error with arrows is fixed now. Players are added to combat when hit by another player via arrow.
Added source to github!
@evilpdor
This would be an error with spigot I believe. I'll look into this later.
@NextInLine
i have the same problem of jeracom, and "disable command" disable permanently the command of player involved in pvp.
2013-09-09 02:31:25 [SEVERE] Could not pass event EntityDamageByEntityEvent to No PvP Log v0.1 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:46) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463) at org.bukkit.craftbukkit.v1_6_R2.event.CraftEventFactory.callEvent(CraftEventFactory.java:94) at org.bukkit.craftbukkit.v1_6_R2.event.CraftEventFactory.callEntityDamageEvent(CraftEventFactory.java:398) at org.bukkit.craftbukkit.v1_6_R2.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:423) at net.minecraft.server.v1_6_R2.EntityLiving.damageEntity(EntityLiving.java:691) at net.minecraft.server.v1_6_R2.EntityMonster.damageEntity(EntityMonster.java:39) at net.minecraft.server.v1_6_R2.EntityHuman.attack(EntityHuman.java:874) at net.minecraft.server.v1_6_R2.PlayerConnection.a(PlayerConnection.java:1134) at net.minecraft.server.v1_6_R2.Packet7UseEntity.handle(SourceFile:36) at org.spigotmc.netty.NettyNetworkManager.b(NettyNetworkManager.java:238) at net.minecraft.server.v1_6_R2.PlayerConnection.d(PlayerConnection.java:115) at org.getspout.spout.SpoutPlayerConnection.d(SpoutPlayerConnection.java:195) at net.minecraft.server.v1_6_R2.ServerConnection.b(SourceFile:35) at org.spigotmc.MultiplexingServerConnection.b(MultiplexingServerConnection.java:61) at net.minecraft.server.v1_6_R2.MinecraftServer.r(MinecraftServer.java:583) at net.minecraft.server.v1_6_R2.DedicatedServer.r(DedicatedServer.java:233) at net.minecraft.server.v1_6_R2.MinecraftServer.q(MinecraftServer.java:472) at net.minecraft.server.v1_6_R2.MinecraftServer.run(MinecraftServer.java:404) at net.minecraft.server.v1_6_R2.ThreadServerApplication.run(SourceFile:573) Caused by: java.lang.ClassCastException: org.bukkit.craftbukkit.v1_6_R2.entity.CraftZombie cannot be cast to org.bukkit.entity.Player at me.nextinline.AntiLogger.AntiLogEvent.entityDamageByEntityEvent(AntiLogEvent.java:31) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425) ... 22 more 2013-09-09 02:31:59 [SEVERE] Could not pass event EntityDamageByEntityEvent to No PvP Log v0.1 org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:46) at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463) at org.bukkit.craftbukkit.v1_6_R2.event.CraftEventFactory.callEvent(CraftEventFactory.java:94) at org.bukkit.craftbukkit.v1_6_R2.event.CraftEventFactory.callEntityDamageEvent(CraftEventFactory.java:398) at org.bukkit.craftbukkit.v1_6_R2.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:423) at net.minecraft.server.v1_6_R2.EntityLiving.damageEntity(EntityLiving.java:691) at net.minecraft.server.v1_6_R2.EntityHuman.damageEntity(EntityHuman.java:684) at net.minecraft.server.v1_6_R2.EntityPlayer.damageEntity(EntityPlayer.java:359) at net.minecraft.server.v1_6_R2.EntityMonster.m(EntityMonster.java:88) at net.minecraft.server.v1_6_R2.EntityMonster.a(EntityMonster.java:114) at net.minecraft.server.v1_6_R2.EntitySpider.a(EntitySpider.java:91) at net.minecraft.server.v1_6_R2.EntityCreature.bq(EntityCreature.java:56) at net.minecraft.server.v1_6_R2.EntityLiving.c(EntityLiving.java:1318) at net.minecraft.server.v1_6_R2.EntityMonster.c(EntityMonster.java:20) at net.minecraft.server.v1_6_R2.EntityLiving.l_(EntityLiving.java:538) at net.minecraft.server.v1_6_R2.EntityMonster.l_(EntityMonster.java:24) at net.minecraft.server.v1_6_R2.EntitySpider.l_(EntitySpider.java:20) at net.minecraft.server.v1_6_R2.World.entityJoinedWorld(World.java:1458) at net.minecraft.server.v1_6_R2.WorldServer.entityJoinedWorld(WorldServer.java:619) at net.minecraft.server.v1_6_R2.World.playerJoinedWorld(World.java:1433) at net.minecraft.server.v1_6_R2.World.tickEntities(World.java:1305) at net.minecraft.server.v1_6_R2.WorldServer.tickEntities(WorldServer.java:517) at net.minecraft.server.v1_6_R2.MinecraftServer.r(MinecraftServer.java:562) at net.minecraft.server.v1_6_R2.DedicatedServer.r(DedicatedServer.java:233) at net.minecraft.server.v1_6_R2.MinecraftServer.q(MinecraftServer.java:472) at net.minecraft.server.v1_6_R2.MinecraftServer.run(MinecraftServer.java:404) at net.minecraft.server.v1_6_R2.ThreadServerApplication.run(SourceFile:573) Caused by: java.lang.ClassCastException: org.bukkit.craftbukkit.v1_6_R2.entity.CraftSpider cannot be cast to org.bukkit.entity.Player at me.nextinline.AntiLogger.AntiLogEvent.entityDamageByEntityEvent(AntiLogEvent.java:30) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425) ... 29 more
@jeracom
Intresting, I could not replicate results.... Do you possibly need to update?
(using spigot 1.6.2)
When i was shot by skeleton, in the log comes:
2013-09-02 23:57:11 [SEVERE] Could not pass event EntityDamageByEntityEvent to No PvP Log v0.1
org.bukkit.event.EventException
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:427)
at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62)
at org.bukkit.plugin.TimedRegisteredListener.callEvent(TimedRegisteredListener.java:30)
at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:478)
at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:463)
at org.bukkit.craftbukkit.v1_6_R2.event.CraftEventFactory.callEvent(CraftEventFactory.java:94)
at org.bukkit.craftbukkit.v1_6_R2.event.CraftEventFactory.callEntityDamageEvent(CraftEventFactory.java:398)
at org.bukkit.craftbukkit.v1_6_R2.event.CraftEventFactory.handleEntityDamageEvent(CraftEventFactory.java:423)
at net.minecraft.server.v1_6_R2.EntityLiving.damageEntity(EntityLiving.java:643)
at net.minecraft.server.v1_6_R2.EntityMonster.damageEntity(EntityMonster.java:39)
at net.minecraft.server.v1_6_R2.EntityHuman.attack(EntityHuman.java:885)
at net.minecraft.server.v1_6_R2.PlayerConnection.a(PlayerConnection.java:1148)
at net.minecraft.server.v1_6_R2.Packet7UseEntity.handle(SourceFile:36)
at org.spigotmc.netty.NettyNetworkManager.b(NettyNetworkManager.java:230)
at net.minecraft.server.v1_6_R2.PlayerConnection.e(PlayerConnection.java:116)
at net.minecraft.server.v1_6_R2.ServerConnection.b(SourceFile:37)
at org.spigotmc.netty.NettyServerConnection.b(NettyServerConnection.java:125)
at net.minecraft.server.v1_6_R2.MinecraftServer.t(MinecraftServer.java:592)
at net.minecraft.server.v1_6_R2.DedicatedServer.t(DedicatedServer.java:239)
at net.minecraft.server.v1_6_R2.MinecraftServer.s(MinecraftServer.java:481)
at net.minecraft.server.v1_6_R2.MinecraftServer.run(MinecraftServer.java:413)
at net.minecraft.server.v1_6_R2.ThreadServerApplication.run(SourceFile:582)
Caused by: java.lang.ClassCastException: org.bukkit.craftbukkit.v1_6_R2.entity.CraftSkeleton cannot be cast to org.bukkit.entity.Player
at me.nextinline.AntiLogger.AntiLogEvent.entityDamageByEntityEvent(AntiLogEvent.java:31)
at sun.reflect.GeneratedMethodAccessor137.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:425)
... 21 more
Still taking requests for the next update! Please open a ticket or post a comment so you can see what you want in the next version!
@maurozuka
I really don't see a point in this being translated into Portuguese yet. In the future maybe but not now. ;)
Hi, i´m maurozuka, it is possible to enable, to we custom the mensagers. If the aswer is yes please PM me, i will traslate it to portuguese if you want. ;)
@GDog626
I may be able to do this. I'm working on another project currently, but I can add this in the next version.
Could you please make it so that you can enter in a command you want it to do when the PvP log? I have a custom Banning plugin, and the ban command is /bh ban name t:1d reason and it wouldn't ban if it was using it that way
Version 1.1 has just been submitted for approval!
Remember if anyone has any form of add-on or bug, please make a ticket!