
SmartAFK is a comprehensive, highly configurable Away From Keyboard (AFK) management plugin for Minecraft Paper 1.21+ servers. It automatically tracks player inactivity, manages server resources, and keeps your community informed while offering robust protection for idle players.
Key Features
- Automated AFK Tracking: Automatically mark players as AFK after a configurable amount of time, complete with countdown warnings.
- Smart Activity Detection: Automatically removes AFK status the moment a player moves, chats, uses a command, or interacts with the world.
- Visual Indicators: Clearly identify AFK players with customizable chat prefixes, grayed-out names in the Tab list and nametags, and a live Actionbar timer.
- Advanced Player Protection: Optionally freeze, turn invincible, or switch idle players to spectator mode to keep them safe while stepping away.
- Customizable Broadcasts: Keep the server informed with global AFK notifications, anti-spam cooldowns, and a silent mode for staff.
- Inactivity Management: Automatically kick players who have been AFK for too long to free up server slots.
Functionality
Managing inactive players is essential for both server performance and community interaction. SmartAFK handles this gracefully by allowing players to manually toggle their status using /afk, or by automatically stepping in when a player stops moving or interacting for a set time (default: 5 minutes).
Once a player goes AFK, the plugin instantly updates their visual status across the server. Their name turns gray in chat and the Tab list, and an AFK prefix is applied. The plugin also features a built-in timer that tracks exactly how long someone has been away, which can be displayed directly in their actionbar or checked via command. As soon as the player returns and performs an action (like moving or typing in chat), their AFK status is immediately revoked and a return broadcast is sent.
Protection & Restrictions
SmartAFK goes beyond simple chat tags by offering a suite of Phase 5 protection features to secure your players and your server.
Server administrators can configure the plugin to freeze AFK players in place or grant them temporary invincibility, ensuring they aren't killed by wandering mobs while getting a glass of water. For stricter server management, you can hide AFK players from the Tab list, force them into Spectator mode, disable going AFK while in active combat, or set a hard timer to kick players who remain idle for too long.
Commands & Permissions
| Command | Description | Permission |
|---|---|---|
/afk | Toggle your own AFK status | smartafk.afk |
/afk <player> | Force set another player AFK | smartafk.afk.others (Default: OP) |
/afk time [player] | View your own AFK duration | smartafk.time |
/afk time <player> | View another player's AFK duration | smartafk.time.others (Default: OP) |
/afk notify | Toggle receiving AFK broadcast notifications | smartafk.notify |
/afk silent | Go AFK without triggering a public broadcast | smartafk.silent (Default: OP) |
/afk reload | Reload the configuration file | smartafk.reload (Default: OP) |
Bypass Permissions:
smartafk.bypass.auto: Prevent being automatically marked as AFK.smartafk.bypass.kick: Prevent being kicked by the AFK timer.smartafk.bypass.freeze: Prevent being frozen while AFK.smartafk.bypass.invincible: Prevent receiving invincibility while AFK.smartafk.cooldown.bypass: Ignore the command usage cooldown.
Installation & Configuration
SmartAFK is a server-side plugin designed for Paper 1.21+. Simply drop the JAR file into your plugins folder and restart your server.
Upon first boot, a plugins/SmartAFK/config.yml file will be generated. The configuration file is highly intuitive and divided into logical sections (Core, Auto-AFK, Broadcast, Timer, Removal triggers, and Protection), allowing you to tweak every cooldown, message, and protection setting to perfectly fit your server's needs.
