Links
Tags
Creators
Details
Licensed MIT
Published 4 months ago
Updated 2 weeks ago
All versions
26.2-1.1.0
Release
PinnacleAFK 26.2-1.1.02 months ago 11
Compatibility
Minecraft: Java Edition
26.2
Platform
Paper
Changes
[26.2-1.1.0] - 8/27/26
Added
- Added the permission-protected
/pafk reloadcommand, which rejects malformed YAML and safely reapplies validated runtime, display, protection, and automatic-AFK settings (#13). - Added an automated JUnit regression suite covering configuration migration and validation, elapsed-time deadlines, cooldowns, administrator command parsing, world policies, and ownership-safe display restoration (#14).
- Added GitHub Actions validation that builds and tests the plugin on every push and pull request, verifies the packaged descriptor and resources, and uploads the JAR with its checksum (#15).
- Added an automated release workflow that validates release tags, builds with Java 25, and attaches the versioned plugin JAR and SHA-256 checksum to published GitHub releases (#18).
- Added this changelog to document release history, fixes, configuration changes, and compatibility updates (#19).
- Added an MIT license (#20).
- Added repository exclusions for Gradle outputs, IDE metadata, local settings, and generated server files (#21).
- Added
/pafk list,/pafk status <player>, and/pafk remove <player>for permission-protected AFK administration and troubleshooting (#23). - Added disabled-by-default automatic AFK detection with a configurable inactivity duration and activity tracking for movement, commands, chat, and ordinary player actions (#24).
- Added configuration controls for broadcasts, AFK-enabled worlds, protection enablement, world and permission eligibility, and independent tab-list and above-head indicators (#25).
Changed
- Made the Gradle project version the single source for the JAR name and generated
plugin.ymlversion, preventing release metadata from drifting between files (#16). - Pinned the Paper API dependency to
26.2.build.62-betaso builds resolve the same API version every time (#17). - Updated the build instructions to use the included Gradle wrapper and document the Java 25 requirement on Linux, macOS, and Windows (#22).
Fixed
- Prevented AFK players from attacking entities, launching projectiles, breaking or placing blocks, using or moving items, and interacting with entities or inventories (#1).
- Blocked teleports and portals while AFK and added safe AFK cleanup if an external world change still succeeds, preventing stale cross-world movement locks (#2).
- Replaced temporary AFK scoreboard teams with a floating above-head marker and direct tab formatting, preserving real team membership, friendly-fire rules, collision behavior, selectors, and other team mechanics (#3).
- Prevented abrupt shutdowns from stranding players in generated AFK teams by eliminating temporary teams and reconciling legacy shared and per-player AFK teams during startup (#4).
- Cleared AFK state on death with a respawn failsafe, cancelling delayed protection, removing the marker, restoring the tab-list name, and preventing stale death-location locks (#5).
- Preserved team changes made by rank and scoreboard plugins while players are AFK by removing AFK ownership and stale restoration of scoreboard-team membership (#6).
- Made AFK indicators independent of main, per-player, and viewer-specific scoreboards by using a floating display and direct tab-list formatting, preventing custom scoreboard plugins from hiding or misformatting AFK status (#7).
- Preserved custom tab-list components when applying the AFK indicator, reconciled formatting changes made by other plugins while AFK, and avoided restoring stale values (#8).
- Merged newly bundled configuration defaults into existing files and used bundled message defaults for missing settings, preventing blank messages after upgrades (#9).
- Added a configurable real-time cooldown for repeated
/afktoggles, preventing chat floods and unnecessary display churn (#10). - Measured delayed protection against a monotonic real-time deadline instead of server ticks, preventing low TPS from proportionally extending the vulnerable period (#11).
- Validated protection and cooldown durations during startup, logging and replacing negative, fractional, nonnumeric, or out-of-range values with safe defaults instead of silently granting instant protection (#12).
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:dJZI52FQ:2qTMHtu4"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:dJZI52FQ:2qTMHtu4"
}

