promotional bannermobile promotional banner

CritMatic

Adds animated crit, hit, and heal alerts with a scrolling crit log and biggest-hit tracker
2026-05-11_20.44.26.png

2026-05-11_20.44.26.png

Screenshot 2026-05-11 at 9.13.40 PM.png

Screenshot 2026-05-11 at 9.13.40 PM.png

Description

CritMatic for Minecraft (Java Edition)

A NeoForge + Fabric port of the popular World of Warcraft addon CritMatic. CritMatic remembers your biggest hit, biggest crit, biggest heal, and biggest crit heal for every weapon, bow, and consumable you own, then celebrates every new personal best with a floating popup, a sound, an optional chat shout, and a permanent entry in the on-screen Crit Log.

Now on both loaders. A single download ships matched NeoForge and Fabric jars built from the same common/ codebase, so the gameplay, popups, HUD, and settings are identical end-to-end no matter which loader your pack runs.

Features

Personal bests, per item

  • Tracks four record types for every item you use: Hit, Crit, Heal, Crit Heal.
  • Each new personal best fires a popup, a sound, and updates the Crit Log.
  • Records persist across sessions.

Floating popup alerts

  • Animated popup on every new personal best, with the original WoW bounce curve ported beat for beat (0.45 s spawn delay, 0.15 s scale up, 0.12 s hold, 0.15 s scale down).
  • Configurable format strings, uppercase toggle, max message length, start delay, fade time, and screen position.
  • Pick from 19 bundled custom sounds and 14 bundled custom fonts.

Crit Log HUD widget

  • Always-on HUD overlay showing your top hits per item.
  • Press K to enter edit mode: drag to move, resize from the SE corner, S edge, or E edge, then press K again to lock it back in.
  • 3:2 aspect-ratio-locked sizing scaled to your screen.
  • Right-click the ring (or any row) for a context menu: Settings, Changelog, Lock / Unlock, Reset Position, Hide, Ignore Spell, Delete Spell Data.
  • Up / Down arrows scroll the log. All keybinds rebindable in Options → Controls → CritMatic.
  • HUD position, size, and lock state persist across sessions.

Item tooltip integration

  • Hover any item to see its Highest Hit, Highest Crit, Highest Heal, and Highest Crit Heal inlined into the vanilla tooltip.
  • Crit lines render in gold, regular hits and heals in gray; only shown when a record exists.

Works with any mod, automatically

  • Tracks personal bests for items added by any other mod - Apotheosis, Spartan Weaponry, Tinkers' Construct, custom modpack weapons, server-side weapon packs, you name it.
  • The Crit Log and popup render each item's own custom icon, model, and animated textures with zero per-mod setup. No icon allowlist, no hardcoded item lists.
  • Uses Minecraft's standard item registry, so any modded weapon or consumable the player can hold shows with its correct name, tooltip translation, and icon. On modded servers the client already has the matching mod set, so server-side weapon packs and custom-item mods work the same way they do in singleplayer.

Dedicated-server multiplayer

  • Combat events fire server-side and ship to the scoring player over a dedicated payload channel; popups, HUD updates, tooltips, and chat broadcasts all work for every connected player who also has the mod client-side.
  • In multiplayer, popup text and chat broadcasts prepend the scorer's name so other players can tell whose record just dropped.
  • When a new personal best fires on a dedicated server, the scorer's chosen sound plays for every online player. Each player keeps their own sound preference; the scorer's pick rings out across the whole server.
  • Bidirectional settings sync: the server pushes its copy to every client on connect, and when an opped player edits a value in the in-game UI the change ships back up, gets persisted on disk, and rebroadcasts to every other connected client. Non-op clients see the server copy and edit it locally only.
  • Built on the standard payload registrar (NeoForge + Fabric) with clean client/server class separation - both jars load cleanly on a dedicated-server JVM with zero client classes referenced.

Per-gear random crits (rolled on the item)

  • Every weapon you pick up rolls its own crit chance and crit damage multiplier the first time you wield it. The roll is stored as a vanilla data component right on the item stack and travels with it forever - bank it, trade it, drop it, the affix sticks.
  • Bigger / rarer weapons roll bigger numbers. A wooden sword sits in the low single-digit % range with a small multiplier; netherite and the 1.21 mace land in the 30-40 % range with stronger multipliers. Bows, crossbows, and tridents have their own ranges. Bare-hand punches and joke items still get a small crit chance so nothing is ever a flat zero.
  • Modded weapons "just work." When a modded item is not in the table, CritMatic reads its vanilla ATTACK_DAMAGE attribute (the same number the tooltip prints) and converts it into a sensible crit % with a hard cap, so even a 1000-damage modpack weapon does not 100 % crit. No per-mod allowlist, no hardcoded item lists.
  • Hover any weapon to see its rolled Crit Chance and Crit Damage lines in the tooltip alongside the existing personal-best lines.
  • Vanilla MC jump-attack crits still trigger normally and never double-multiply with the affix roll.

Slash commands (WoW-style names)

  • /cm, /critmatic - open settings
  • /cmlog - open changelog
  • /cmcritlog, /critlog - toggle Crit Log
  • /cmcritlogedit - toggle Crit Log edit mode
  • /cmignore <itemId>, /cmignoredspells, /cmremoveignoredspell <itemId>, /cmwipeignoredspells - ignore-list management
  • /cmreset - wipe all stats

In-game changelog

  • A clean changelog popup auto-opens on first launch after a version bump, or anytime via /cmlog.

Localized

  • 50+ languages out of the box: English (US / UK), German, Spanish (Spain / Mexico), French (France / Canada), Italian, Portuguese (Brazil / Portugal), Russian, Ukrainian, Korean, Japanese, Simplified / Traditional Chinese, Polish, Dutch, Swedish, Danish, Norwegian, Finnish, Czech, Hungarian, Turkish, Vietnamese, Thai, Indonesian, Arabic, Hebrew, Romanian, Greek, Bulgarian, Croatian, Slovak, Slovenian, Serbian (Latin / Cyrillic), Catalan, Basque, Galician, Lithuanian, Latvian, Estonian, Icelandic, Irish, Hindi, Persian, Malay, Filipino, Macedonian, Latin, and more.

Full settings UI - same flow on every loader

  • Identical three-screen settings stack on NeoForge and Fabric: a section list (General / Alert Format / Sounds / Chat Broadcast), per-section editors with proper widgets (toggles, sliders, format-string boxes, font + sound pickers), and an inline support block at the bottom of the entry page. No more "this option is a text box on Fabric only."
  • The gold-on-dark CritMatic header + logo glyph appears on every settings screen so the branding stays consistent.
  • Reachable from the loader's mods menu, the /cm command, the Crit Log right-click menu, or a rebindable open-settings keybind.

Keybinds (all rebindable in Options → Controls → CritMatic)

  • Up / Down arrow - scroll the Crit Log up / down.
  • K - open / close the Crit Log edit mode (drag, resize, lock).
  • Open Settings - unbound by default; bind any key to jump straight into the settings UI.

Requirements

  • Minecraft 1.21.1 (Java Edition)
  • NeoForge 21.1.0 or newer or Fabric Loader 0.19.2 or newer + Fabric API 0.116.12+1.21.1 or newer

Where it records new personal bests:

  • Singleplayer: yes.
  • Open-to-LAN, you're the host: yes.
  • Joining someone else's LAN game where the host has CritMatic: yes.
  • Dedicated server with CritMatic installed server-side: yes - full popups, HUD updates, tooltip integration, and chat broadcast for every player who also has the mod client-side.
  • Dedicated server without CritMatic: safe to connect to a vanilla server. HUD, tooltips, and previously-recorded stats keep working, but new personal bests aren't recorded - combat damage events are server-authoritative, and a server that doesn't have the mod can't tell your client when a hit lands.

CritMatic is safe to install on both client and dedicated server - the combat hook is split into a server-side recorder (no client classes referenced) and a client-side popup/HUD handler. The two halves talk over custom payload packets (critmatic:crit_event, critmatic:crit_sound, critmatic:crit_broadcast, critmatic:settings_sync). The same packet wire format ships on both loaders so a NeoForge client can connect to a Fabric server and vice versa.

Support & Community

Buy Me a Coffee - https://buymeacoffee.com/infiniteloopalchemist

Discord - https://discord.gg/34JJyrnGGC

If CritMatic makes your combat more fun, a coffee helps me keep porting the rest of the WoW addon family to Minecraft. Bug reports, feature requests, and screenshots of absurd one-shot crits are all welcome in the Discord.

License

All Rights Reserved. Bundled NeoForge / Minecraft / Parchment libraries keep their original licenses.

The CritMatic Team

profile avatar
  • 1
    Followers
  • 5
    Projects
  • 116.3K
    Downloads
Donate