NeverIdle

Stop those pesky AFK bypassers.

Description

NeverIdle aims to make bypassing AFK detection a bit more difficult with the tradeoff of being slightly more sensitive for legitimate users. NeverIdle accomplishes this by not considering a user to be active if they're near certain blacklisted materials (water, rails, etc.) and only updating the player's last activity when they move a configured amount of blocks from their last known active point.

You can hook into NeverIdle to determine the AFK status of a player and embed any other restrictions you may wish to.


Features

  • Automatically detect when a player is away
  • Automatically kick idle players after a configured period of time
  • Different kick timers based on different permission nodes
  • Configurable "nearly-full" mode to have higher AFK timers when your server isn't so busy
  • Configurable ignored materials

Permissions

  • neveridle.bypass - Never receive an AFK countdown and never be kicked for being idle
  • neveridle.timer.<name> - Permission to use a specific timer

Configuration

  • warning-delay - How long to wait before counting down the AFK status to a user. This is also how long a user must be idle to be considered AFK
  • movement-requirement - Players will need to move this many meters when considered AFK to regain their active status
  • kick-timers - The various timers. See Custom Timers below
  • nearly-full.enabled - Whether or not to enable the nearly-full system
  • nearly-full.player-count - The player count that needs to be reached for your server to be considered nearly full
  • nearly-full.empty-multiplier - When your server player count is below the above number, how much to multiply AFK timers by
  • ignore-materials - A list of Materials that will prevent player activity from being updated (See: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/Material.html)
  • kick-message - The message to kick a player for who has been idle too long. Color codes and new line characters accepted.