Module: afk
Overview
This module provides:
-
Afk Detection: When a player remains
idlebeyond a specified threshold, they are marked as being inthe AFK state. -
Afk Event: Execute configured commands when a player
entersorleavesthe afk state. -
Afk Name Customization: Allows customization of the
display nameof AFK players.
Color Boxes
◉ How it works?
For each player, define a number to track the last action time.
Actions can be: mine a block, movement, issue a command ...
When action received, update the number.
Define a job using cron, to be triggered periodically.
The job will check and compare 2 consecutive value of the number.
If number is identical, then the player is considered as in afk.
Configurations
The following JSON content is provided for reference only. It must NOT be copied directly into the configuration directory, as it does not represent valid JSON syntax.
- File Name:
config.json - File Content:
Click to see the default content...
{
/* The `display name` of an afk player in `tab` list. */
"afk_display_name_format": "<gray>[AFK] %player:displayname_visual%"
/* Afk checker is `triggered` periodically.
To check whether a player has any input action.
And mark the player as `afk` if there is no `action` for too long. */,
"afk_checker": {
/* The `cron` expression used to trigger `afk checker`. */
"cron": "0 0/5 * ? * *"
}
/* Define commands to run on afk events. */,
"afk_event": {
/* When a player enters afk state. */
"on_enter_afk": [
"send-broadcast <gold>Player %player:name% is now afk"
]
/* When a player leaves afk state. */,
"on_leave_afk": [
"send-broadcast <gold>Player %player:name% is no longer afk"
]
}
}
Jobs
- Job Name:
AfkMarkerJob - Document: This
jobis used to check the last action time for each player.
Commands
-
Command Syntax:
/afk -
Document: Enter afk state.
-
Can be executed by console:
false -
Required Level Permission:
0 -
Required String Permission:
null
-
Command Syntax:
/afk others <PlayerCollection others> -
Document: Enter afk state.
-
Can be executed by console:
true -
Required Level Permission:
4 -
Required String Permission:
null
-
Command Syntax:
/is-afk? <ServerPlayerEntity player> -
Document: Test if a player is in afk state.
-
Can be executed by console:
true -
Required Level Permission:
4 -
Required String Permission:
null