Skip to content

Statistics & Records

Whack Me tracks both lifetime player progression and temporary values used to calculate the current run.


Internal keyMeaning
games_playedNormally completed runs whose results were applied.
perfect_runsRuns with score above zero and no red-block hits.
record_scoreHighest score the player has reached in any arena.
longest_hit_streakHighest uninterrupted correct-hit streak across all runs.
whacked_plus_blocksLifetime green-block hits.
whacked_minus_blocksLifetime red-block hits.

These values are stored in data/stats.yml or the MySQL statistics table.


Internal keyMeaning
local_scoreCurrent run score.
local_hit_streakCurrent consecutive green-hit streak.
local_longest_hit_streakBest streak within this run.
local_correct_blocksGreen hits this run.
local_wrong_blocksRed hits this run.

Temporary values reset before a run and after cleanup. They are available in live displays, placeholders, and GameEndEvent before result cleanup.


After a normal result, record_score is updated only when the final score is strictly higher than the player’s previous best. It is global to the player rather than tied to one arena.

The finish message selects among normal, new-personal-record, arena-record, and combined arena-plus-personal-record layouts.


Every arena stores:

  • record-holder
  • record-score

A score replaces the arena record when the current record is 0 or the new result is strictly higher. Ties do not change the holder.

The setup menu’s confirmation flow resets only these two arena values. It does not erase any player’s personal record_score.


A perfect run requires:

  1. Final score greater than 0
  2. local_wrong_blocks equal to 0

The hit/success rate is:

green hits / (green hits + red hits) × 100

The statistics menu displays lifetime hit rate, while the finish message and scoreboard use the current run’s success rate.


Terminal window
/wm stats [player]

The menu supports the sender, online targets, and offline players known to the server cache. It shows lifetime values plus an arena browser and the record-score leaderboard.

See stats-menu.yml to customize its layout.


Whack Me builds leaderboards from persistent statistics and refreshes them after a player result is saved. PlaceholderAPI can return a ranked entry’s name, UUID, or raw value.

See Leaderboard Placeholders for syntax and examples.


Server reloads, shutdowns, forced stops, and arena deletion clear temporary values without applying the run. Normal finish, leave, kick, and disconnect paths can apply the current result before cleanup.