promotional bannermobile promotional banner

TOG Tools

ToGTools is a convenient place to aggregate one off tools that don't make sense to have it's own addon.

TOG Tools — Lightweight Utility Toolkit for World of Warcraft

TOG Tools is a small collection of quality-of-life utilities that don't need a full addon of their own. Each tool lives in its own tab inside a single tidy window — open with /togt. New tools will be added over time.

Features

Name Prefix

Automatically adds a nickname in front of your chat messages so guildmates know who is talking, even when your character name doesn't match the name everyone knows you by. Useful for shared accounts, alts, or anyone who goes by a different name in their community.

  • Set any nickname you like — it will be inserted at the start of your message before it is sent
  • Fully configurable format: choose between (Name):, [Name], Name —, or any pattern you want using a simple format string
  • Live preview updates as you type so you always see exactly what your messages will look like
  • Enable per channel: Say, Guild, Officer, Party, Raid, Instance / Battleground, or a specific custom channel by name
  • Option to skip messages that start with ! so addon commands like !keys or !roll are never prefixed
  • Option to suppress the prefix automatically on characters where your nickname already matches your character's name
  • Optional “hide duplicate main name” toggle — if you run Guild Roster Manager (GRM) with main-name-in-chat on and a guildmate's addon also puts their main in the message, this removes the duplicate so you see it once. Off by default; does nothing unless ticked and GRM is present.
  • Works on all supported WoW versions — Classic Era, TBC, Wrath, Cataclysm, Mists, and Retail

Mailbox Stale Watcher

Track when mail is about to expire across every alt on your account, so a stack of Black Lotus or a hard-earned BoE never gets auto-deleted because you forgot to visit the mailbox in time.

  • Captures a snapshot of every alt's mailbox each time that character opens a mailbox — no need to log into each alt to check.
  • One-line chat alert when you log in if any alt has mail close to expiration. Threshold is configurable (default 2 days, adjustable 1–7).
  • Tab lists every alt with expiring mail, showing each mail's sender, subject, and time remaining so you know exactly which character to switch to.
  • Shows how recent each alt's snapshot is — snapshots more than a week old are flagged so you know to refresh them by visiting the mailbox.
  • Account-wide: data is shared across all your alts on every realm.
  • Read-only — this tab tells you what's about to expire, but does not open, reply, or delete mail. You handle that in-game like normal.

Login Digest

Prints a one-line state-of-account summary in chat each time you log in, so you catch the important stuff the moment you're back — without opening anything.

  • Choose which fields appear: expiring mail (across all alts), guildies online, hearthstone bind, bag fullness, and time since last logout.
  • A field is hidden automatically when it has nothing to report (no expiring mail, no guildies online, and so on), so the line stays short.
  • Toggle the whole digest, or any individual field, from its tab.

Logs

Persistent history of mail, trades, guild events, guild bank transactions, whispers, and gathering — a single tab with sub-tabs for each log type, plus a Graphs sub-tab that charts the data over time. Everything you send, receive, and gather is captured automatically so you can answer “who mailed me that Black Lotus last week?” or “how much ore did I farm this weekend?” weeks after the fact.

  • Mail Log — every mail received and sent: sender / recipient, subject, items, money. Multi-item Take-All mails merge into one entry so a 12-item mail doesn't produce 12 rows.
  • Trade Log — every completed player-to-player trade: both sides of items and money, plus a dedicated column for enchants applied via the trade window's enchant slot. Arena and battleground trades are skipped to avoid noise.
  • Guild Log — snapshots your guild's event history (joins, leaves, kicks, promotes, demotes, invites) and keeps entries beyond the in-game ~100-event cap. Per-guild buckets so alts in different guilds keep independent histories.
  • Guild Bank Log — snapshots every guild bank transaction (deposits, withdrawals, moves between tabs, repairs, money in / out) the moment you open the guild bank, and keeps entries beyond the short rolling window the game itself retains. Per-guild buckets, item links you can shift-click into chat, and built-in support for syncing entries with other tools down the road. Guild banks were added in TBC, so this sub-tab is empty on Classic Era for now — a planned integration with a future companion tool will fill that in.
  • Whisper Log — every whisper sent or received, both in-game and Battle.net. One search box matches across every column (message, partner, character); narrow by direction, type, or GM with the dropdowns and a date range, and click any column header to sort. Each row tags Battle.net and Blizzard GM whispers so they stand out at a glance.
  • Gathering Log — automatically records everything you mine, herb, skin, fish, extract (gas), and pickpocket: the item, how many, where, when, and what you got it from (the vein, herb, node, pool, or creature, in its own Source column). Click any column header to sort or filter (e.g. just Mining, or zones grouped by continent), and a search box finds any item or source fast. It only logs what you actually gather — mob drops and other loot are left out. (Totals and per-source yield now live on the Graphs sub-tab.)
  • Graphs — line charts of your log data over time. Pick a log (Gathering, Mail, or Trade), choose a period (last 24 hours, 7 / 14 / 30 days, or all time), and use the per-log filter dropdowns to narrow what's charted — Gathering by character / profession / zone / source / item / expansion, Mail and Trade by character and direction / partner. One line per item, with a totals line below that names each series. Hover any point for that day's (or hour's) values.
  • Diagnostics (Developer Tools only) — a compact, de-duplicated log of Lua errors and warnings, including blocked addon-action errors and “saved settings too large” failures, with a pop-up alert on new errors, an optional Titan Panel counter, and right-click-to-copy. Errors during loading are caught by the !!TOGT companion from the very start, without interfering with BugGrabber/BugSack. Hidden unless you enable Developer Tools, so most players never see it.
  • Every sub-tab has a date range, a search box, and column-header menus — click a header to sort, or tick a multi-select filter on category columns (Type / Source / Zone / Tab). Filters cascade: narrowing one column trims the others' choices.
  • Date range presets — Last 24 hours / 7 days / 30 days / All — plus a Custom day picker that expands an inline calendar grid so you can jump to any specific date.
  • Account-wide: every alt's activity lands in the same store; filter the Character column or search a name to scope to one alt.
  • Old entries past the retention threshold (default 90 days) are pruned automatically.
  • Each log type can be turned on or off independently in the addon settings.

Gratz

Auto-congratulate guildmates and partymates when something gratz-worthy happens. Create named profiles — each one names a trigger type, criteria, destination channels, and a message template — then turn the ones you want firing on.

  • Trigger: Achievement — Retail only. Fires when a guildmate (or anyone visible) earns an achievement. Filter by minimum point value so you only celebrate the big ones.
  • Trigger: Level up (party) — Fires when a party member levels up inside a configurable min/max level band. Works on every WoW version.
  • Trigger: Level up (guild) — Fires when a guildmate levels up. Optional “only every Nth level” filter for milestone-only gratzing (e.g. 10 / 20 / 30 / ...).
  • Template placeholders[player], [achievement], [link], [points], [category], [level]. Mix and match.
  • Channels per profile — Guild, Officer, Party, Raid, Say, Yell, Instance. Channels you're not connected to are silently skipped.
  • Cooldown per profile — prevents the same gratz firing twice when an event accidentally duplicates (e.g. across a loading screen). Default 5 minutes.
  • Skip-self is automatic — the engine never congratulates you on your own events.
  • Combat-safe — messages composed during combat queue and flush automatically when combat ends.

Smack

Make your character talk smack in combat. Build named filters — each one picks a trigger, where to say it, and a pool of lines — then tick the ones you want active. When the trigger hits, a random line from that filter is sent to chat. Think a halfling cleric trash-talking the boss while she keeps the group alive. (Classic only) — Smack isn't offered on Retail/Midnight, where the game keeps the combat data it needs (enemy health, the combat log, automatic public chat) hidden from addons.

  • Pick a trigger — your health dropping below a set %, your health recovering above it, your target's health dropping below a %, your mana getting low, a group member getting low, taking a big hit (a single blow past a % of your health), landing a killing blow, a pull starting, surviving a fight, a group member dying, getting feared/stunned, your own death (last words as a ghost), or Bloodlust/Heroism going off.
  • Type your lines — one per row; a random one is chosen each time it fires. Drop in [me], [target], [hp], [targethp], or [member] and they fill in automatically.
  • Choose where — Say, Yell, Party, Raid, Guild, Officer, Instance, or Emote. Channels you're not in are skipped. Note: the game blocks automated Say / Yell / Emote during dungeon and raid boss encounters (open-world combat is fine) — use Party / Raid for boss fights.
  • How often — set a cooldown in minutes (minimum 1) per filter so one rough pull doesn't spam your lines.
  • Combat only — nothing fires out of combat, and a line won't repeat until the trigger resets (you recover, or a fresh target is pulled).
  • Active or passive — the On checkbox in the list turns each filter on or off without deleting it.

I'd Hit That

Shows your chance to actually hit whatever you have targeted — built right into your target frame, all the time, without opening anything. Pick a target and the numbers update instantly, so you can tell at a glance whether that boss is going to eat a third of your swings.

  • One number per attack type — yellow (your special attacks), white swings, your off-hand, and ranged shots, each shown separately because they genuinely differ. Dual wielding penalises white swings but not yellow ones, and ranged shots never glance. Casters can turn on a spell hit line too.
  • Reads itself — each number sits next to the icon of the weapon it applies to, so your sword shows your swing chance and your bow shows your shot chance. Hover any of them for a plain-language explanation.
  • Colour tells you the story — green means you're at the hit cap for that target, amber means you're close, red means you're losing attacks. A line underneath tells you exactly how much more hit you need.
  • Looks like part of your UI, because it is — it isn't a window and can't be dragged. It attaches to your target frame and moves, scales and disappears along with it. With ZPerl it borrows the exact styling, height and row spacing of the level and combo-point boxes; with ElvUI it matches the aura size and spacing from your own profile; with the default frames it matches Blizzard's debuff grid. Other unit-frame addons get a clean set of matching bubbles.
  • Stack it your way — a column or a row, on the left, right or below your target frame.
  • Handles “??” targets — raid bosses whose level the game won't tell you are treated as the worst realistic case, so the number stays honest.
  • Costs nothing while you play — the numbers are only worked out when your target, gear, talents or buffs actually change. Nothing runs frame by frame.
  • Not shown on Retail, where hit chance no longer exists as a stat — your attacks always land.

Addon Load Monitor

A diagnostic tab that shows every installed addon at a glance — how much memory it uses, whether it loaded successfully, and how long it took to load during the loading screen. Helpful for spotting heavy or slow addons, missing dependencies, or addons that failed to load.

  • One row per installed addon: name, memory used, load time, and status
  • Sort by any column — click the header. Status sorts failures first so you spot problems immediately
  • Status badges: Loaded, On Demand, Disabled, Missing, Dep Missing, Wrong Version, Corrupt TOC, Outdated
  • Summary bar shows total addons, how many loaded / failed / disabled, total memory used, and the overall loading-screen duration
  • Accurate sub-millisecond load times for every addon when the !!TOGT companion is installed (a tiny no-UI helper that loads first and records the timing — auto-installed via CurseForge)
  • Window resizes gracefully — columns compact and text truncates instead of wrapping

Slash Commands

  • /togt — open the main window
  • /togt np — jump straight to the Name Prefix settings tab
  • /togt al — jump straight to the Addon Load Monitor tab
  • /togt mail — jump straight to the Mailbox Stale Watcher tab
  • /togt login — jump straight to the Login Digest tab
  • /togt gratz — open the Gratz tab (also /togt gz)
  • /togt logs — open the Logs tab (last viewed sub-tab)
  • /togt logs mail — jump straight to Logs > Mail (also /togt ml)
  • /togt logs trade — jump straight to Logs > Trade
  • /togt logs guild — jump straight to Logs > Guild
  • /togt logs guildbank — jump straight to Logs > Guild Bank (also /togt gb)
  • /togt logs whispers — jump straight to Logs > Whispers (also /togt wl)
  • /togt settings — open the addon settings panel
  • /togt vc — check addon versions across the guild (Classic only)

Requirements

  • Ace3 (AceAddon-3.0, AceDB-3.0, AceGUI-3.0, AceConsole-3.0) — auto-installed by CurseForge
  • !!TOGT companion — tiny helper that records full addon load timing and early diagnostics (auto-installed by CurseForge)
  • Lib: LibGuildRoster — keeps track of who in your guild is online, used by the Gratz tab (auto-installed by CurseForge)
  • WoW Classic Era, TBC, Wrath, Cataclysm, Mists of Pandaria, or Retail — all versions supported

Support

If you have any questions, bug reports, or feature requests, please feel free to reach out on Discord!

Recent Updates

v0.8.2 (2026-08-01) — Fixes errors on TBC, Wrath, Cataclysm, Mists and Retail

  • Fixed: on every version except Classic Era, the addon threw a string of errors on login and several tools didn't work — Name Prefix stopped adding your nickname to chat, and I'd Hit That failed to appear or open its tab at all. A file added in v0.8.1 was only being loaded on Classic Era, so the addon couldn't tell which version of the game it was running on. It now loads everywhere.
  • The six game-version files that tell the addon what to load are now checked automatically before every release, so a tool can't go missing on one version again.

v0.8.1 (2026-07-31) — Gratz, Logs and I'd Hit That fixes

  • Fixed: Gratz could congratulate a guildmate on a level-up when they weren't even online — the guild roster remembers the last level it saw for someone who is logged out, so a guildmate coming back after a break looked like a fresh ding. Gratz now only celebrates a level-up it actually watched happen while the person was online.
  • Fixed: the Guild log ignored your history-retention setting — old guild events were never cleared out, so that log kept growing no matter what you set. Every log now honours the setting. (Entries older than your retention window will be tidied up the next time the guild log updates.)
  • Fixed: Battle.net whispers could be filed under “Battle.net friend” on Retail even when the sender's real name was available. They now keep the proper name.
  • Fixed: the I'd Hit That tab showed stray codes like — and ' in its explanatory text instead of proper dashes and apostrophes.

v0.8.0 (2026-07-30) — I'd Hit That

  • New I'd Hit That tab and display showing your chance to hit your current target — separate numbers for yellow (special) attacks, white swings, your off-hand and ranged shots, plus an optional spell hit line. Each number sits beside the icon of the weapon it applies to. Green means you're at the hit cap, red means you're losing attacks, and a line underneath tells you how much more hit you need.
  • It builds itself into your target frame rather than floating over your screen — borrowing ZPerl's own box styling, matching ElvUI's aura sizing from your profile, or Blizzard's debuff grid on the default frames. Stack it as a column or a row, on whichever side you like.
  • Hover any number for a plain-language explanation of what it covers.
  • Not shown on Retail, where hit chance is no longer a stat.

v0.7.2 (2026-07-20) — Guild Bank log & Name Prefix fixes

  • Fixed: the Guild Bank log was merging repeated identical transactions into one, so if someone made several matching deposits close together (for example three stacks of the same herb into the same tab within the hour), only one showed up and the rest went missing. Each transaction is now recorded separately. Missing entries you've already seen once are recovered the next time you open the guild bank.
  • Fixed: Name Prefix's “hide duplicate main name” option (for use with Guild Roster Manager) only worked some sessions and not others. It now reliably removes the duplicate every time.

v0.7.1 (2026-07-17) — Battle.net whisper name fix

  • Fixed: Battle.net whispers in the Whisper Log could be shown against the wrong person — a message from one friend appearing under another friend's name, especially after a relog. Battle.net senders are now recorded by their real BattleTag / name the moment the whisper arrives, so they stay correct. Whispers logged before this fix show as “Battle.net friend” rather than a wrong name.

The TOG Tools Team

Forgeborn tier frameprofile avatar
  • 2
    Followers
  • 27
    Projects
  • 328.8K
    Downloads
Donate

More from PmptastyView all

  • Dibs project image

    Dibs

    A master‑loot tool for Classic Era raids: everyone calls dibs on the gear they want before the raid, so when an item drops the masterlooter instantly sees who's competing — for fast, fair, drama‑free distribution. Works for pugs too.

    • 184
    • August 4, 2026
  • LibAceGUIWidgets project image

    LibAceGUIWidgets

    LibAceGUIWidgets is a shared AceGUI-3.0 widget and styling library. It registers reusable, drop-in AceGUI widget types and helpers so addons share one consistent look instead of each rebuilding the same frames.

    • 183
    • August 4, 2026
  • LibItemDB project image

    LibItemDB

    A library with all of the WoW items for use by other addons

    • 1.9K
    • August 4, 2026
  • TOG Profession Master project image

    TOG Profession Master

    TOG Profession Master should help you and your guild to know faster which player has which profession and who can craft which item or who has learned which enchantment.

    • 5.1K
    • August 4, 2026
  • Dibs project image

    Dibs

    A master‑loot tool for Classic Era raids: everyone calls dibs on the gear they want before the raid, so when an item drops the masterlooter instantly sees who's competing — for fast, fair, drama‑free distribution. Works for pugs too.

    • 184
    • August 4, 2026
  • LibAceGUIWidgets project image

    LibAceGUIWidgets

    LibAceGUIWidgets is a shared AceGUI-3.0 widget and styling library. It registers reusable, drop-in AceGUI widget types and helpers so addons share one consistent look instead of each rebuilding the same frames.

    • 183
    • August 4, 2026
  • LibItemDB project image

    LibItemDB

    A library with all of the WoW items for use by other addons

    • 1.9K
    • August 4, 2026
  • TOG Profession Master project image

    TOG Profession Master

    TOG Profession Master should help you and your guild to know faster which player has which profession and who can craft which item or who has learned which enchantment.

    • 5.1K
    • August 4, 2026