Anti-Relog
Now 1.5.2 fully functional! Download version 2.5 here!
Special thanks for Swifteh for keeping the plugin updated when I wasn't here!
New Features of Version 2.x.x
- Cleaner code.
- NPCs with option for aggressive combat mode. (or assign permission nodes for individual use see below)
- NPCs are compatible with Modifyworld
- Configuration messages now support colors.
- Customized option to drop items, armor, and experience (each handled separately).
- Commands can be run from the console when a combat logger is unbanned and logs back on.
- Fixed issue with MobCatcher.
- Automatic update notifications to the console.
What is Anti-Relog?
Anti-Relog is a lightweight and easy-to-use PVP plugin that prevents players from using commands during combat to escape from the opponent. With this plugin, players will not be able to simply warp to safety but will instead be forced to fight to the death. In the case of a player logging off to escape death, they will be killed instantly* before log-off and their items will drop as usual. If NPCs are enabled, an NPC will spawn in place of the combat logger. They will automatically be banned for a preset time to prevent them from logging on immediately. I made this plugin in response to a plugin request.
What Are This Plugin's Features?
This plugin is designed to be as flexible as possible with the server owner in mind. Below are the current list of features:
- Easy to install. Just drag and drop.
- Keeps players fighting and on the alert. No more escaping from battles.
- Players who log off before the battle ends are logged into a text file with time and date.
- Detects cause of player logoff so they are not banned if their client crashes in the midst of battle.
- Customizable messages and settings.
- Functions are togglable. This means that you can turn the settings off whenever you don't need them!
- PermissionsEx support.
- NPCs compatible with Modifyworld.
How to Install
- Download the latest build of Anti-Relog here.
- Download the latest CraftBukkit recommended build.
- Drag Anti-Relog.jar into the CraftBukkit plugins folder and start up the server.
- Configure the config.yml inside the generated Anti-Relog folder to your preferences and save.
- Reload the server.
Commands
Alias for /antirelog is /ar.
- /antirelog - Shows the plugin version.
- /antirelog t (or /antirelog time) - Shows the time left before player can use commands.
- /antirelog unban <player> - Unbans the selected player if they were banned through PVP logging.
Permissions
Nodes:
- antirelog.pvpbypass - Allows user to be exempt from all PVP restrictions. Allows use of commands in PVP and allows logging off without consequence.
- antirelog.unban - Allows user to unban players who were banned by PVP logging.
- antirelog.aggressivenpc - User will spawn a NPC which will fight the attacker in place of the player when the player combat logs.
NPCs
NPCs are designed to help prevent combat loggers from ruining the fun of PvP by continuing the fight after they log off. Regular NPCs (default ones) do not fight back but instead stay they and get killed. If you really want a challenge, turn the Aggressive Mode on in the config or give players who you want to spawn aggressive NPCs the 'antirelog.aggressivenpc' permission node. NPCs will drop all the player's items when killed and the player will lose all their items upon logging back on. If an aggressive NPC manages to kill the attacker, the combat logger will maintain their inventory and the NPC will despawn.
Configuration
Although there is already information about each config node embedded in the configuration file, below are links to more information regarding the config file:
Change Log:
Version 1.0:
- Release.
Version 1.1:
- Major bug fixes.
- Added more flexible options to toggle different functions.
- EXP and equipped armor will now drop if player logs off during PVP.
- Added custom ban messages that will be shown to the player.
- If server reloads when the player is still banned, instead of leaving the player as banned, the server will unban the player.
Version 1.2:
- Fixed compatibility issues with Factions, WorldGuard, Towny, and any Safe-Zones.
- Players will not be tagged if fighting against NPCs.
- Differentiates between client crash and intentional logout. Players don't get banned when they crash!
- Minor bug fixes and performance improvements.
Version 1.3
- Emergency Release.
- Completely changed the code around using a new method of tracking PVP which is 99% glitch free.
- No more glitching during PVP.
- Fixed permissions issues.
- Allows players to see the remaining combat duration using /ar t or /ar time.
- Fixed major issues regarding Citizens and Factions.
Version 1.4
- Added fix for some cases where players are able to PVP log without penalty.
- Added support for Heroes plugin.
- Added support for banning on servers in offline mode.
- Added command for unbanning players who were banned by PVP logging (regular unbans do not work!).
- Added option for PVP logging against Mobs (agressive/passive).
- Added option to toggle the killing of the player if they PVP log.
- Added ability for server owners to choose which commands they want to disable during PVP (allowing use of spells/PVP commands).
- Added ability to toggle the disabling of commands during PVP.
- Added ability to toggle all commands off during PVP.
- Plugin will now write the reason for the player's unban in the PVP log file.
Version 1.5
- Critical bug fix with /f home.
- Fixed error messages regarding mob logger as well as implementing full functionality for passive mob logger.
- Sends a customizable message notifying players when they are/are not in combat.
- Added alias /arl for plugin conflicts.
- Fixed exploit of directly closing the client window to bypass PVP logging.
- Use <player> in config field: TempBanMessage to signify which player PVP logged.
- Fixed command issue with /unban for servers in offline mode.
Version 1.6
- Removed spam due to forgotten debug lines.
Version 2.0
- Completely recoded plugin from the ground up.
- Cleaner and more efficient code to prevent memory leaks and leave more resources for other plugins to run on.
- Added NPCs that spawn when a player combat logs.
- NPCs have basic combat AI in aggressive mode (which can be toggled in the config or be allowed through a permission node see above).
- NPCs are compatiable with Modifyworld.
- Cleaner and organized configuration format for ease of use.
- Custom messages now support color.
- Added option to run commands from the console when a combat logger logs back on once they are unbanned.
- Added option to choose whether to drop the player's inventory, armor, or exp.
- Fixed issue with items not dropping.
- Automatic update notifications to the console when a new version is available.
- Fixed issue with MobCatcher.
Version 2.1
- 1.4.5 Update. by swifteh @ www.mc-index.com
Version 2.2
- 1.4.6 Update by swifteh.
Version 2.3
- 1.4.7 Update by swifteh.
Version 2.4
- Updated for 1.5.1.
- NPCs are now fully functional.
- Kicked players will no longer be penalized for logging out.
- Fixed a minor bug with the disallow-all function.
Version 2.5
- Updated for 1.5.2.
- Added a command whitelist.
- Players cannot escape from PVP by flying.
- Fixed bug with NPC spawning.
- Fixed bug with mob logger.
To Do List
Add option to have certain allowed commands while in PVP (customizable via config.yml).- Add commands to change config in-game.
- Add options to specify worlds to enable in.
Add support for other permission plugins.Make an optional option to warp banned players to a certain location after they are unbanned.Clean up code.- Make a video tutorial.
Test the plugin and try to find plugin conflicts.Resolve conflict with Citizens and Factions.Add economy support.- Add region support.
- If player logs off in PVP, make the plugin wait a certain time before banning them.
Option to allow an NPC to spawn instead of death.
lool np new plug in going to be some bugs just glad you are working on it and we can test them for you thank again for all your work downloading now hope i dont come back loool
@jenks1999
@levisn1
@Toxic__Waste
@VampiricMoon
Sorry for all the issues that you guys are having. I just released a more stable version and have completely changed the old faulty PVP tracking method to one that I can almost guarantee works. Download version 1.3 here if it's not out yet: http://dev.bukkit.org/server-mods/anti-relog/files/7-anti-relog-v1-3/ This was an emergency release and I tried to fix all issues as soon as possible so I didn't have time to add in the configurable disallowed commands yet. I will do that in the next update.
im still awaiting a reply please sir....
does this work fine with Authme? [for cracked servers?]
why? i run cf 1.2.5 r1..i have this error even if the server is empty and every 5-10 seconds,maybe authme confict?...bad bad story..
13:58:12 [SEVERE] Could not pass event EntityDamageEvent to AntiRelog org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:303) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:459) at net.minecraft.server.EntityLiving.aA(EntityLiving.java:274) at net.minecraft.server.Entity.F_(Entity.java:195) at net.minecraft.server.EntityLiving.F_(EntityLiving.java:435) at net.minecraft.server.EntityHuman.F_(EntityHuman.java:159) at net.minecraft.server.EntityPlayer.a(EntityPlayer.java:228) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:341) at net.minecraft.serverhook.NetServerHandlerProxy.a(NetServerHandlerProxy.java:99) at net.minecraft.server.Packet10Flying.handle(SourceFile:126) at net.minecraft.server.NetworkManager.b(NetworkManager.java:229) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113) at net.minecraft.serverhook.NetServerHandlerProxy.a(NetServerHandlerProxy.java:83) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:551) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:449) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492) Caused by: java.lang.NoClassDefFoundError: net/citizensnpcs/api/CitizensManager at com.github.r0306.antirelog.DamageListener.damage(DamageListener.java:58) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.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:301) ... 17 more
well im having the same problems after dying cant use the tp command even after 1 minute logging of kills them i use no pvp tools at all other then the normal one in essentials and towny the world in towny set to pvp and i dont use the cool down feature in tp in essentials and sometimes the tp glitch happens and some times it dont ill use /kill on some one and they can pvp for a while and same thing happens.. note they cant even use the /suicide command
and we need the stun duration i like it set at 10
i use towny and checked the battle in towns this new version does for me atleast work properly it does not recognize a battle in town lines
note: even after you die click respawn you go to spawn center and still cant tp out its almost it never recognized you died
@VampiricMoon
Are all of your players having trouble using commands after the PVP?
On an unrelated note: If you set the stunduration to 0, it also disables the entire plugin. If the stun duration is set to 0, it won't automatically ban someone for combat logging. I've also found that the stun duration is causing players to have difficulty using commands even when outside of PvP. If possible could you fix the issue with stunduration causing no automatic bans? I have no need for the stun duration as it conflicts with my Essentials teleport delay, but would like the plugin to automatically ban combat loggers.
@r0306 I have the exact same issue as jenks1999. The plugins currently being run on the server are GroupManager, World Guard, AutoRank, The_Hunger_Games, Logblock, World Edit, Vault, MonsterIRC, NoCheat, Essentials, Essentials Spawn, Essentials GeoIP (etc), and VanishNoPacket,
The issue can be easily reproduced by a simple /kickall.
@Delold
@BONNe1704
Hmmm, could you both send me a list of all your plugins. (or you can just tell me if you have the following: Citizens, Factions, WorldGuard, Towny) That would help alot. :P
@Delold
Yes, it does in fact. If players are in a safe zone, they will not be tagged in combat if they attack each other.
I have had no issues with Citizens and this plugin but i dont know about factions. Also with spout 1110 seems to run this error now...
2012-04-23 17:52:02 [SEVERE] Could not pass event PlayerQuitEvent to AntiRelog org.bukkit.event.EventException at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:303) at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:459) at net.minecraft.server.ServerConfigurationManager.disconnect(ServerConfigurationManager.java:179) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:698) at net.minecraft.server.NetworkManager.b(NetworkManager.java:234) at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:113) at org.getspout.spout.SpoutNetServerHandler.a(SpoutNetServerHandler.java:169) at net.minecraft.server.NetworkListenThread.a(NetworkListenThread.java:78) at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:551) at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:449) at net.minecraft.server.ThreadServerApplication.run(SourceFile:492) Caused by: java.lang.NullPointerException at com.github.r0306.antirelog.LogPrevention.Log(LogPrevention.java:41) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.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:301) ... 11 more
Simple question: Does it support Citizens and Factions?
This looks great, and looks like the exact plugin our server is looking for, minus not being able to run commands.
We'd need to allow a few cast commands for our spell system, otherwise, I am looking forward to the future development of this awesome plugin.
:D
Awesome.
I had a thought- wouldnt it be easier to have the opposite? A list of NOT allowed commands- itd give greater flexibility. Maybe im a random who doesnt like people doing.. Idk... /me or something plugin related like /ma j.
Just a thought.
no, i have factions :D
I had never use Citizans :)
@BONNe1704
Hmm, do you have Citizens installed?
Pastebin
Get error on plugins startp (1.2)
@Mick6666
Ok. I will start adding a configuration for allowed PVP commands.
@nhoclesnar
Ahh. You're right. Thanks for pointing that out. :) It turns out that when they press the X button, it counts as a disconnect.endofstream so I changed it so that it only recognizes disconnect.overflow and disconnect.timeout as crashes.