PQ Companion

For Project Quarm

A Project Quarm companion app.

Database explorer, DPS meter, spell timers with discipline cooldowns, NPC info overlay, combat history, a /who player database, character progression, and a custom trigger engine with sound and TTS alerts — pairs with Zeal for authoritative live client state. All in one lightweight, locally run app.

Free & open source · Auto-updates · Windows 10/11

Features

Everything you wish was built into the client

PQ Companion reads your combat log and Zeal exports to add the kind of quality-of-life features modern MMOs ship by default — right at your fingertips while you play.

Search anything

Database Explorer

Every item, spell, NPC, and zone in the Project Quarm database — fully searchable with filters that actually work. Item icons, spell icons, click-through cross-references between scrolls and the spells they teach, NPC drops linking to source mobs, and full zone NPC rosters. Press Ctrl-K from anywhere for global search.

  • Advanced item filters: race, class, level, slot, type, stat thresholds
  • Spell filters by class and level; hides NPC-only spells
  • Zone tabs for connected zones, drops, ground spawns, and forage
  • Duplicate-name items and spells collapse to a single canonical row that links out to every variant

Live combat tracking

DPS Meter & Combat Log

A transparent, always-on-top overlay floating above the game with live damage output for you and your group. Pet and charm damage rolls up under the owner — including charm-break detection that drops the binding the moment a former pet starts hitting you. Boss fights stay grouped instead of fragmenting. Copy any fight or session summary to clipboard for guild chat.

  • Per-fight and session-wide damage totals, with full combat history
  • Toggle between fight-duration DPS and active-time DPS (aDPS) — fairer for DoT classes and downtime-heavy roles
  • One-click copy of fight or session summary for /gu and /tell

Every fight, archived and filterable

Combat History

Every fight gets archived to a local SQLite store with retention pruning so a long session doesn't bloat into gigabytes. Browse, filter, and group by NPC, character, or date — facet dropdowns, date presets, and a session-grouping toggle (120s gap rule) make finding that one boss attempt from last week trivial. Three DPS metrics — Personal, Raid, Encounter — switch on the fly across every aggregate display.

  • Per-fight detail with DoT ticks, crit hits, charm-pet attribution, and per-combatant breakdown
  • Pets, me-only, and DPS-mode toggles in the FilterBar — see the run from any angle
  • Curated expansion grouping in the zones browser links combat back to where it happened

Demo placeholder

Drop an image or video at public/media/combat-history.{mp4,webm,png,jpg,webp,gif}

Never miss a re-cast

Spell Timer Engine

Tick-accurate countdown bars for every buff, debuff, mez, stun, and DoT — driven directly from your live combat log and keyed per spell-and-target so the same debuff on two mobs is tracked as two separate timers. Durations are extended automatically by the focus items and AAs your character actually has equipped. Separate overlay windows for buffs and detrimentals.

  • Auto mode tracks every recognised land; Triggers-only mode shows just the spells you've curated
  • Tracking scope: Self only, Cast by me, or Anyone — plus an optional 'my class only' filter
  • Per-category hide thresholds keep long raid buffs out of view until they're close to expiring
  • Target name shown on every row; auto-cancels on resist, fade, zone, or death
  • Discipline cooldown timers for every melee class — Defensive, Furious, Trueshot, Holyforge, and the rest — with a TTS 'ready' alert when the recast comes up

Live data straight from the client

Zeal Integration

When you have the Zeal mod installed, PQ Companion talks to it over a local Windows pipe to get authoritative live game state — target, target HP, pet name, group HP, casting state, and more. The first-launch wizard auto-detects Zeal; Settings shows live pipe status; everything below the surface gets sharper.

  • Live target HP bar and pet-owner badge in the NPC overlay — no more /con guesswork
  • Better pet and charm-pet damage attribution in the combat meter
  • Confirmed casts cross-checked against the pipe so emote-based false positives disappear
  • Pipe-source triggers: fire on target name change, target HP threshold, buff land/fade, or your own /pipe <text> command in-game
  • Soft update notice when your installed Zeal is below the minimum supported version, plus an ExportOnCamp warning if exports won't refresh on camp

Demo placeholder

Drop an image or video at public/media/zeal-integration.{mp4,webm,png,jpg,webp,gif}

Know your target

NPC Info Overlay

The moment you consider a mob, the overlay shows its level, class, HP and max mana, colour-coded MR/CR/FR/DR/PR resists, body type, and special abilities — Summon, Unmezzable, Uncharmable, See Invis, Enrage, Flurry. Pulled straight from the database via your combat log; corpse targets resolve back to the underlying NPC so the panel stays useful after the kill.

  • Auto-detects target from melee and spell events; live HP bar and pet-owner badge with Zeal
  • Special-ability badges, resist breakdown with EQ-convention colours, and humanised body type at a glance
  • On-demand loot table with drop rates and zone-wide drops surfaced on every mob in the zone — wishlisted drops highlighted
  • Same-name NPCs disambiguated by zone and your position, with the variant set surfaced when a target is ambiguous

Know when it's back up

NPC Respawn Timers

A transparent overlay that watches NPC deaths in your combat log and counts down to respawn, so you know exactly when a named or a contested camp is due back. Project Quarm's accelerated respawn rates are applied automatically, so the countdown matches the server you're actually on instead of classic timers.

  • Death-to-respawn countdown driven straight from the kill line in your log
  • Quarm fast-respawn reduction baked in — no mental math against classic timers
  • Pops out as its own click-through overlay alongside the rest of the dashboard

Demo placeholder

Drop an image or video at public/media/respawn-timers.{mp4,webm,png,jpg,webp,gif}

Run the heal chain without counting in your head

CH Chain & Metronome

Two overlays for raids that run a Complete Heal chain. The CH Chain panel reads your clerics' heal callouts straight from the log and tracks the whole rotation live — cast-to-land bars for each heal, the measured cadence between casts, and a stall indicator the moment the next healer is late. The personal CH Metronome paces your own slot so you know exactly when to start casting.

  • Callout-driven — reads the heal announcements everyone already sees, no client hooks
  • Live measured cadence and a stall warning before the chain breaks
  • Personal metronome overlay that paces your slot in the rotation
  • Both are first-class dashboard panels with their own Overlays toggles and click-through pop-outs

Demo placeholder

Drop an image or video at public/media/ch-chain.{mp4,webm,png,jpg,webp,gif}

Never walk up to a locked zone

Lockouts Tracker

Parses your /sll output into live per-character countdowns for loot and legacy lockouts, so you always know when an instance or flagged encounter is available to you again. No spreadsheet, no guesswork — just run /sll and the timers update.

  • Live countdowns for both loot lockouts and legacy lockouts
  • Tracked per character, so each alt's lockouts stay separate
  • Updates the moment you run /sll in-game

Demo placeholder

Drop an image or video at public/media/lockouts.{mp4,webm,png,jpg,webp,gif}

Every drop, logged as it lands

Loot Tracker

A dedicated page that records drops as they happen, so you don't have to scroll back through the combat log to remember what came off which mob. Every logged drop is clickable both ways: open the item's full database entry in a detail popup, or jump straight to the source zone in the Database Explorer.

  • Running record of drops over a session, on its own browsable page
  • Click any item for the full database entry in a detail popup
  • Click the zone to jump straight to it in the Database Explorer

Demo placeholder

Drop an image or video at public/media/loot-tracker.{mp4,webm,png,jpg,webp,gif}

Stats, gear, AAs, buffs, to-dos

Character Progression

A full per-character workspace driven by Zeal exports. Stats panel computed from Project Quarm's real HP/Mana/AC/resist formulas — including AA passive bonuses — with stat caps, worn effects, and softcap AC. Paper-doll gear view with bag and bank cards. AA tracking split into trained vs. available, with descriptions. A per-character to-do list with subtasks for tracking goals.

  • Live Buffs panel driven by the spell timer engine, with swappable raid-buff presets per character
  • Spell Modifiers tab — see every focus and worn effect that's modifying your spells
  • AA tracking: trained ranks, untrained candidates, and cost-aware planning
  • Character switcher syncs across the app; sub-tabs on every tracker page

Know what you're missing

Spell Checklist

Cross-references every spell your class can learn against your Zeal-exported spellbook so you always know exactly which spells you still need to scribe. Filterable, level-aware, and updated whenever Zeal exports. Select the spells you need and the built-in planner maps an efficient vendor shopping run to go buy them.

  • Filters by class and level range, plus a spell-name search box
  • Hides NPC-only and unobtainable spells; 'Where to get it' on every spell
  • Shopping-route planner: distance-aware vendor run with port hubs, town filters, and a start zone
  • Click any spell to jump to its database entry

Across all your characters

Inventory Tracker

All inventory across every character in one searchable view, with item icons everywhere — equipped, bags, bank, shared bank. Paper-doll layout with collapsible bag and bank cards (hide-empty-bags toggle). A dedicated Rechargeable Items section gathers your limited-charge clickies, each showing its remaining charges. Click any item to open its full database entry in a modal without leaving the page.

  • One search box across every character's full inventory
  • Rechargeable Items section with remaining charge counts on limited-charge clickies
  • Hide-empty-bags toggle keeps the paper-doll readable on cluttered characters
  • Click any item for the full database entry in a modal — no page navigation

Raid keys, parsed and tracked

Keys & Keyring

Two complementary views of your key progress. The Keyring tab is a live per-character /keys snapshot, with an inventory fallback for keys not yet added to a keyring (Plane of Time, Vex Thal). The Key Tracker walks the component quests for every major raid key — Veeshan's Peak, Sebilis (Trakanon Idol), Howling Stones (Key to Charasis), Arx Seru, Sleeper's Tomb, and more — and ticks off pieces from inventory as you collect them.

  • Live /keys refresh as Zeal exports update; upgraded key stages auto-inferred as owned
  • Multi-quest support per key (Sleeper's Tomb accepts any one Velious talisman; Charasis recognises both the Key to Charasis quest and the Hand of Glory internal-doors key)
  • Intermediate combines (Vex Thal sub-shards with correct Lucid Shard zone mappings) tracked as you progress
  • Shows the bag or bank slot each held component is sitting in, so you don't have to dig for it

Demo placeholder

Drop an image or video at public/media/keys-keyring.{mp4,webm,png,jpg,webp,gif}

Per-character drag-to-reorder upgrade list

Wishlist

Star any item from the Database Explorer to add it to your character's wishlist; star it again to remove. The wishlist page groups entries by slot in collapsible drag-reorderable cards (with a flat All Items view for cross-slot prioritising) so your top upgrade for each slot is always one glance away. Layout, ordering, and collapse state persist per character.

  • Collapsible slot cards with +/− toggle and drag-grip reorder; expand-all / collapse-all toolbar
  • All Items view for free-form cross-slot drag prioritising — one global ordering backs both views
  • Star toggle from any item page or modal; confirm-on-remove when you click a filled star

Demo placeholder

Drop an image or video at public/media/wishlist.{mp4,webm,png,jpg,webp,gif}

GINA-style, but local

Custom Triggers & Alerts

A regex trigger engine for any log line, plus a typed pipe-source mode that hooks into Zeal state instead of log text. Each trigger fires one or more actions: on-screen text alerts (with draggable position and font size), local sound files, or text-to-speech. A trigger can also drive a spell timer on the buff or detrimental overlay — with its own worn-off pattern and 'fading soon' audio cues. Built-in packs for all 14 classes (including full melee discipline coverage) plus group awareness. Import GINA shares as .xml or .gtp.

  • Drag-to-position overlay text with live test buttons
  • Triggers can start spell timers — fading-soon alerts, hide thresholds, and per-character scoping
  • Per-trigger exclude patterns to silence pet, merchant, and banker chatter on tell triggers
  • Pipe-source triggers (with Zeal) fire on target name, target HP%, buff landed/faded, or your in-game /pipe <text>
  • Pack-grouped UI with collapsibles, pack filter, sort, and shared-trigger badges; dedup_key fires shared triggers across packs once instead of twice

A /who history that remembers

Players Database

Every player you see in /who output gets persisted to a searchable, sortable database — name, class, race, guild, last-seen level, last-seen zone, and a per-character level history. Anonymous sightings preserve the data you already knew. /guildstat output is captured too. Filter by class, guild, or zone; click any row for level progression.

  • Auto-captures /who, /who all, /who guild, and /guildstat output
  • Anonymous-aware upsert keeps class/level/race from the last non-anonymous sighting
  • Class title aliases (Lord, Necromancer Lord, etc.) collapse into the right base class
  • Pinned info panel on scroll; class, guild, and zone filters with one-click Clear

Demo placeholder

Drop an image or video at public/media/players.{mp4,webm,png,jpg,webp,gif}

Your tells, kept like a messaging app

Chat History

A searchable archive of your conversations parsed straight from the log. What started as a Tell Tracker for direct player-to-player tells grew into a full multi-channel chat log, with each person you've talked to laid out as their own conversation thread instead of a flat log dump — so the back-and-forth you'd otherwise lose to the scroll-back stays readable.

  • Chat-style conversation threads, one per person you've talked to
  • Multi-channel tracking, not just tells
  • Per-character tabs keep each alt's conversations separate
  • Live backfill meter fills in history from your existing logs

Demo placeholder

Drop an image or video at public/media/chat-history.{mp4,webm,png,jpg,webp,gif}

Spell-gem layouts at a glance

Spellsets

Reads Zeal's _spellsets.ini and surfaces every saved spellset as a card with the eight gems laid out. Rename them inline, add and remove sets, and import another character's spellsets from their .ini — with ineligible spells (class/level/spellbook mismatch) blocked at import so you never accidentally save a set you can't actually load in-game.

  • Visual card grid with vertical gem layout for quick scanning
  • Inline rename, add and remove spellsets directly from the app
  • Import another character's spellsets with eligibility validation

Demo placeholder

Drop an image or video at public/media/spellsets.{mp4,webm,png,jpg,webp,gif}

Loot rolls, organized

Roll Tracker

Watches the combat log for /random results and groups them into per-range sessions, so a guild calling Cowl 333, Shard 444, and Heart 666 in overlapping bidding windows ends up with three independent leaderboards instead of one tangled mess. Each session shows every roll with the leader highlighted, marks re-rolls as duplicates, and lets you switch between Highest-wins and Lowest-wins on the fly.

  • Per-session Live/Stopped state with Stop, Remove, and global Clear buttons
  • Manual mode or Timer mode with a 5–600 second auto-stop window (default 45 s) and a live countdown badge
  • Available as a dashboard panel or a frameless pop-out overlay with the mode/duration/winner controls in the header

One screen, everything

Customizable Overlay Dashboard

A single Overlays page is your one-stop view of the run — DPS meter, spell timers, NPC info, and trigger alerts all in one place. Drag panels into the layout you want with a snap grid, resize them, and the arrangement persists across sessions. When you want them on top of the game, pop any panel out as its own click-through transparent window — same data, no alt-tab.

  • One dashboard for combat, timers, target info, and alerts at a glance
  • Snap-grid drag-and-drop layout that persists across sessions
  • Click-through transparent pop-out windows with remembered size and position
  • Multi-monitor aware — the trigger overlay can span every monitor, and pop-outs drag freely from one screen to another

Portable app state and .ini snapshots

Backup & Restore

Two backup systems in one place. App Backup & Restore exports your entire PQ Companion state — settings, triggers, character data, EQ config backups — into a single .pqcb bundle so you can move to a new PC and pick up exactly where you left off. EQ Config Backups snapshots every Project Quarm .ini file (UI layout, hotkeys, social macros) on a schedule or on file change, so you can roll back instantly if a UI overhaul breaks something. Both live under Settings → Backups.

  • Portable .pqcb bundle for the entire app — manifest with version + schema check refuses forward-incompatible imports
  • Pre-import data renamed in place, not deleted — clean rollback path on a failed restore
  • Auto-backups for Quarm .ini files on a custom schedule or on file change
  • Browse, label, and restore previous .ini snapshots from a single list; Open folder button jumps straight to the backup directory

About

A companion app for Project Quarm, in 2026.

PQ Companion is built specifically for Project Quarm, the classic-era emulated server. It pairs with Zeal to give you the kinds of out-of-game tools modern MMOs ship by default — combat log parsing, target info, spell timers, and a searchable database — without forcing you to alt-tab.

It's a single Windows app. No browser tabs, no Discord bots, no spreadsheets. Just the tools at the keyboard, while you play.

  • Stay out of the way

    Overlays are transparent, click-through, and live above the game window. Nothing alt-tabs you out of the game.

  • Read-only on the game

    PQ Companion never modifies the game client or game data. It watches your log file and your Zeal exports — that's it.

  • Zero setup

    Point it at your Project Quarm folder, type your character name, and the rest is automatic. No configuration files, no scripts.

  • Free & open source

    Built by players, for players. Source on GitHub. Bring your own ideas and pull requests welcome.

Download

Get PQ Companion

Free, open source, and auto-updating. Windows 10/11 only.

Windows installer

Grab PQ-Companion-Setup-x.x.x.exe from the latest release. The installer handles everything; no Go, Node, or Docker required.

Latest release

After install

  1. 1 Open Settings and set your Project Quarm folder + character name.
  2. 2 In-game, type /log on so the game writes your combat log.
  3. 3 (Recommended) Install Zeal so the spell checklist and inventory tracker can read your spellbook + bags.