Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for effggcxx

Feature-rich AFK zone plugin: create rewards in-game and track player and zone stats with built-in leaderboards.

Report ThunderAfkZone?

R

1.1.0

Changelog

All notable changes to ThunderAfkZone are documented here.

[1.1.0] - 2026-08-02

Performance

  • AFK time is now buffered in memory and flushed to storage in batches on an async thread, instead of writing to SQLite synchronously on the main thread once per second for every tracked player. This removes a source of tick lag that scaled with the number of AFK players online at once.
  • /afkzone stats and the %afkzone_afk_time% / %afkzone_zone_time_<zone>% placeholders account for the in-memory buffer, so live numbers stay accurate to the second even though storage writes are now batched.
  • Fixed a potential main-thread stall in /afkzone stats [player]: looking up an offline player by name could trigger a blocking network call to Mojang; it now resolves from the local cache first.

Added

  • Boss bar color is now configurable per message via bossbar_color in messages.yml (any of PINK, BLUE, RED, GREEN, YELLOW, PURPLE, WHITE). The timer message defaults to purple; all other messages default to yellow (unchanged from before).
  • title.fade_in / title.stay / title.fade_out are now configurable on every message, not just the timer - they're read whenever that message's own display is "title".

Changed

  • Split the single 1,200+ line /afkzone command class into focused handlers (StatsSubcommands, RewardSubcommands, ZoneRewardSubcommands, ZoneSubcommands) behind a single-registry command router. No user-facing command behavior changed; /afkzone <tab> now correctly suggests cancel, which was missing from suggestions before.
  • Zone and reward name validation is now shared through one NameValidator utility instead of being duplicated across commands.

Removed

  • Removed the timer's size: "big"/"mini" option from messages.yml. It only ever applied a fixed text style (bold+gold / gray+italic); use MiniMessage tags directly in text: for full control instead.

Fixed

  • SqliteStorage now synchronizes access to its shared connection, since AFK-time flushes happen on an async thread while commands can read from the main thread at the same time.

Information

Published
August 6, 2026
Author
0Downloads

Platforms

Paper
Paper
1.21–26.2

Dependencies

PaperPaper

Edit Plugin Dependencies: Paper

No dependencies