Advanced AFK plugin for Paper servers with god mode protection, auto-kick, multi-language support, and fully configurable triggers.
- The coding of this Plugin was done entirely by AI.
- If some people have security concerns about this project because it involves AI, and they understand security, they can contribute to this project. I generally insist that the code should comply with S.O.L.I.D. to make it readable and to make it easy to add features. I think the code is readable.
- 🛡️ God Mode Protection - AFK players take no damage and cannot be pushed
- ⏰ Auto-AFK & Auto-Kick - Automatic AFK detection and optional kick for long AFK
- 🌍 Multi-Language Support - Built-in English & Turkish + 12 machine translations
- ⚙️ Configurable Triggers - Choose what actions exit AFK mode
- 📊 PlaceholderAPI Support - Display AFK status anywhere
- 📈 bStats Analytics - Anonymous usage statistics
- 🏷️ Tab List Prefix - Shows [AFK] without breaking other plugins
| Command | Description | Permission |
|---|---|---|
/afk [reason] |
Toggle AFK mode | advancedafk.use |
/afkreload |
Reload configuration | advancedafk.reload |
| Permission | Description | Default |
|---|---|---|
advancedafk.use |
Use /afk command | Everyone |
advancedafk.reload |
Use /afkreload command | OP |
advancedafk.bypass.cooldown |
Bypass command cooldown | OP |
advancedafk.bypass.kick |
Bypass auto-kick | OP |
If you have PlaceholderAPI installed, you can use these placeholders:
| Placeholder | Description |
|---|---|
%advancedafk_status% |
Returns "AFK" if AFK, empty otherwise |
%advancedafk_status_formatted% |
Returns "[AFK]" if AFK, empty otherwise |
%advancedafk_time% |
Formatted AFK duration (e.g., "5m 30s") |
%advancedafk_time_minutes% |
AFK duration in minutes |
%advancedafk_time_seconds% |
AFK duration in seconds |
%advancedafk_reason% |
AFK reason if set |
%advancedafk_is_afk% |
"true" or "false" |
auto-afk:
enabled: true
timeout-minutes: 5 # Minutes of inactivity before auto-AFK
auto-kick:
enabled: false # Disabled by default
timeout-minutes: 30 # Minutes of AFK before kick
min-players-online: 0 # Only kick when server has this many playersControl what actions should remove AFK status:
triggers:
mouse-movement: true # Looking around
sneak: true # Pressing shift
interact: true # Right/left click
chat: true # Sending chat message
command: true # Running any command (except /afk)
inventory: true # Opening inventoryConfigure god mode features:
protection:
enabled: true # Master toggle
prevent-damage: true # Cancel all damage
prevent-knockback: true # Cancel knockback
lock-position: true # Prevent being pushedChange the language in config.yml:
language: en_US # or tr_TR, or your custom language codeCreate custom translations by copying lang/en_US.yml to lang/YOUR_LANG.yml.
Available translations: German, French, Spanish, Portuguese, Russian, Chinese, Japanese, Korean, Italian, Dutch, Polish, Ukrainian
- Download the latest JAR from Modrinth
- Place in your server's
plugins/folder - Restart the server
- Configure in
plugins/AdvancedAFK/config.yml
MIT License - see LICENSE file for details.
Found a bug or have a suggestion? Open an issue on GitHub.