AFK Control icon

AFK Control -----

Lightweight AFK detector with warnings and kicks.



Update v1.1.0 — Smart Activity Detection, AFK Pool Enhancements, Dynamic Kick Screen, AFK Reminders
This update adds Smart Activity Detection, AFK Pool visuals & optional auto-teleport, a Players tab, a dynamic Message kick screen, and AFK reminders — while ensuring full compatibility with Minecraft 1.21.10 (Paper & Spigot).
All features remain stable and backwards compatible ( 1.8.x → 1.21.10).

Changes & Fixes

New

Smart Activity Detection

What this adds: rotation-only movement detection, inventory interactions, and optional block place/break tracking.
  • Tracked yaw/pitch rotation as activity to reduce false AFK.
  • Optional block place/break hooks (config-gated).

Reminders, Pool Auto-Teleport, Region Info, Kick Screen
What this adds: periodic warn reminders, optional sound cue, auto-teleport to AFK Pool at warn, and tokens for a MiniMessage multi-line kick screen.
  • New fields for reminder cadence and pool auto-teleport.
  • Warn/kick scan logic now emits title/actionbar/sound reminders at intervals.
  • Added region size/volume helpers for /afkcontrol pool info.
  • Kick screen accepts tokens: <player>, <afk>, <prefix>.

“/afkcontrol pool info” + Players Tab
  • New subcommand: /afkcontrol pool info (shows region size, capacity, players inside).
  • New “Players” button in the Control Panel that opens an online-players overview with player heads and AFK indicators (Active / AFK).

Visual Boundary Markers
  • Particle-based region visualization while selecting the AFK Pool (top→bottom cube fill).
  • Robust fallback chain for legacy names (e.g., HAPPY_VILLAGERVILLAGER_HAPPY) and very old servers (Effect API fallback).

Other
  • Tokenized multi-line joiner and placeholder replacement supports both <key> and {key}.

YAML Updates

Code (YAML):


=========================================
 Smart Activity Detection (optional )
=========================================

activity
:
trackRotation
: true # mark activity on yaw/pitch changes (no position move)
trackBlockPlace
: false # mark activity when placing blocks
trackBlockBreak
: false # mark activity when breaking blocks

Inventory clicks/drag are already tracked by the plugin ( no toggle needed )
=========================================
⏳ AFK Reminder Messages
=========================================

reminders
:
everySeconds
: 30 # 0 = disabled; repeat warn/title/actionbar this often while in warn window

=========================================
 Warning sound (plays with reminders )
=========================================

actions
:
titleOnWarn
: true
actionbarOnWarn
: true
soundOnWarn
: true
warnSound
:
name
: "UI_BUTTON_CLICK" # safe default; use any valid Sound enum for your version
volume
: 0.8
pitch
: 1.4

=========================================
️ AFK Pool Auto-Teleport on Warn
=========================================

pool
:
autoTeleportOnWarn
: false # when a player hits warn, teleport them into pool
autoTeleportDelaySeconds
: 3 # delay before teleport

Visual markers for selection (best-effort; purely cosmetic )

visuals
:
enabled
: true
particle
: "HAPPY_VILLAGER" # alias-aware; falls back to VILLAGER_HAPPY/others if needed
durationSeconds
: 60
maxParticlesPerTick
: 1500
step
: 2 # 1 = every block (dense), 2 = every other, etc.
enabled
: true
capacity
: 10 # Max players in pool that are exempt
wandMaterial
: GOLD_AXE # 1.8 name (auto-maps to GOLDEN_AXE on modern)
selectTimeoutSeconds
: 60 # /afkcontrol select timeout
region
:
pos1
: "" # stored as "world:x:y:z"
pos2
: "" # stored as "world:x:y:z"
 

Code (YAML):


=========================================
 AFK / Pool / Reminders
=========================================

poolAutoTeleported
: "<gray>You were moved to the <gold>AFK Pool</gold> for inactivity warning.</gray>"

Warn text used during reminders (tokens
: <left> )

warn
: "<gold>You’re about to be kicked in <yellow><left></yellow> seconds…</gold>"

Kick screen now supports tokens
: <player>, <afk>, <prefix >

kickScreen
:

"gradient:#ffb400:#ff6a00
<bold>AFK Timeout</bold></gradient>"


"<gray><player></gray> <gray>was AFK for</gray> <yellow><afk></yellow> <gray>seconds.</gray>"

"<hover:show_text:'<gray>Return to the server to keep playing.</gray>'><gray>Rejoin whenever you’re ready.</gray></hover>"

Selection confirmation (supports both {size } and <size> placeholders )

selectSaved
:

"<green>AFK pool region saved.</green>"

"<gray>Size:</gray> <white>{size}</white> blocks."
 

Tested On
  • PaperMC 1.21.x
    Latest Paper build line where features and GUI interactions were verified.
  • Spigot 1.20.6
    Baseline Spigot compatibility check completed.

Supported Versions
  • Spigot/Paper 1.8.x → 1.21.x
    Cross-version color/formatting and GUI holders keep features stable on legacy + modern.

Install/Upgrade
Drop the new jar in /plugins and restart.
Full restart preferred over /reload to avoid stale listeners or tasks.

Compatibility

Release Type: Maintenance + Feature Enhancement
Tested On: PaperMC 1.21.x / Spigot 1.20.6
Supported Versions: 1.8.x → 1.21.x
Features Added (summary)
  • Smart Activity Detection — rotation, chat, commands; optional inventory/blocks tracking.
  • AFK Pool Enhancements — visual markers during selection, /afkcontrol pool info, optional auto-teleport at warn.
  • Dynamic Kick Screen — Message multi-line with gradients/hover; uses placeholders.
  • AFK Reminders — periodic title/actionbar + optional sound
  • Players Tab — Control Panel tab listing all online players with Active/AFK indicators.
----------, Oct 13, 2025
Resource Information
Author:
----------
Total Downloads: 26
First Release: Oct 6, 2025
Last Update: Oct 13, 2025
Category: ---------------
All-Time Rating:
0 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings