eqdps is a graphical EverQuest log parser and damage meter built primarily
for EverQuest Legends. It follows the active log
file, keeps concurrent fights separate, and presents combat, experience, event,
and Plane of Sky information without modifying or interacting with the game
client.
Other EverQuest versions may work where their log messages use the same format, but EverQuest Legends is the project's main compatibility target.
eqdps runs natively on Linux - no emulation required!
Windows users can download the prebuilt application directly from the eqdps v1.0.17 release.
Published builds are available from the GitHub releases page.
Windows builds are currently not code-signed. Windows may therefore show an Unknown publisher warning. Only download binaries from the official repository.
Linux users can build and install eqdps using the included Makefile.
- Live logfile following and recent-history replay.
- Concurrent-fight damage tracking with melee, spell, proc, DoT, and damage-shield breakdowns.
- DPS and SDPS, hit and critical-hit counts, active time, fight filtering, and expandable combatant details.
- A compact separate DPS overlay with current-fight and event-timer displays.
- Session XP/hour, current-level progress, and estimated time to the next level.
- Configurable spell-fade, spell-timer, text, and regular-expression events.
- Desktop notifications and sounds alerts
- Plane of Sky quest, item, rune, watched-quest, and turn-in tracking.
- Optional inventory and Plane of Sky uploads to eqldb.org.
The original eqdps proved that the parser and its companion tools were useful, but rapid development left behavior spread across multiple frontends and made changes increasingly difficult to reason about.
This rewrite is intentionally human-written around a smaller, consistent Gio application. It gives parsing, application modules, persistent data, reusable UI controls, and the separate overlay clearer ownership. The goal is easier maintenance, more predictable concurrency, and one coherent interface in which new features do not need to be implemented several times.
This project is human-directed and human-reviewed. OpenAI Codex was used as a development assistant for bounded tasks, including:
- explaining Gio APIs and acting as searchable Gio documentation
- investigating bugs and comparing behavior with the legacy implementation
- mechanical work such as searches and repetitive replacements
- reusable form controls and other self-contained UI work and
- HTTP/Web API client implementations
Product requirements, architecture, behavior, and final integration decisions remain the responsibility of the maintainer. Suggested code was reviewed, tested, and changed where necessary rather than accepted as an authority.
Users who prefer the terminal interface can continue to use the version kept
on the legacy branch. That branch
preserves the previous TUI and its associated tools, but it is archived and
will not receive maintenance, bug fixes, compatibility updates, or new
features.
Enable logging in EverQuest and select the resulting logfile in eqdps through File → Open logfile. A normal filename looks like:
eqlog_CHARACTER_SERVER.txt
EverQuest usually stores these files in its Logs directory. eqdps remembers
the selected logfile and offers recently opened logs through the File menu.
Use the left sidebar to switch between the DPS meter, Plane of Sky tracker, Events, and EQLDB integration. Replay options and application preferences are available from the menu bar.
The module currently requires the Go version declared in go.mod and Make.
Clone the repository and build the graphical application:
git clone https://github.com/uija/eqdps.git
cd eqdps
makeThe binary is written to:
dist/eqdps-gui
Run it directly from the source tree without creating a distribution build:
go run .Install the binary, desktop entry, and application icon system-wide:
sudo make installInstall for the current user instead:
make install PREFIX="$HOME/.local"Other useful targets are:
make test # tests, vet, and race-enabled tests
make windows # Windows amd64 GUI build
make clean
make uninstallGio requires the native development packages for the Linux display and input stack. Package names differ between distributions.
Fedora:
sudo dnf install \
golang make gcc pkgconf-pkg-config \
libxkbcommon-devel wayland-devel vulkan-loader-devel \
libX11-devel libglvnd-devel libxkbcommon-x11-devel \
libXcursor-devel libXfixes-develUbuntu, Debian, and Mint:
sudo apt install \
golang-go make gcc pkg-config build-essential \
libxkbcommon-dev libwayland-dev libvulkan-dev \
libx11-dev libx11-xcb-dev libglvnd-dev \
libxkbcommon-x11-dev libxcursor-dev libxfixes-devThe overlay uses this stable window title:
eqdps — Current Fight
On Windows, eqdps can request and restore the overlay's native position, opacity, and topmost state. On Wayland, those decisions belong to the desktop compositor, so a compositor-specific window rule may be required.
KDE Plasma users can create a Window Rule matching the exact title
eqdps — Current Fight. Add the Layer property and set it to
Force → Overlay. Depending on the Plasma version, the rule can be opened
through More Actions → Configure Special Window Settings.
Focus the overlay, press Alt+Space, and choose Always on Top. GNOME may
require this again after restarting the application.
Create a floating, pinned or topmost window rule matching the title above. Rule syntax and support for forced opacity and position depend on the compositor version.
These Linux desktop notes are community-tested guidance rather than behavior that Gio can enforce portably.
General settings are stored in the operating system's user-configuration directory:
| Platform | Default location |
|---|---|
| Linux | $XDG_CONFIG_HOME/eqdps or ~/.config/eqdps |
| Windows | %AppData%\eqdps |
| macOS | ~/Library/Application Support/eqdps |
config.json contains the recent logfile list, Events configuration, sound
volume, selected spell-icon set, EQLDB connection, and UI preferences.
Extracted spell icons are stored below spell-icons/ in the same directory.
Plane of Sky progress is character-specific and is stored beside the selected logfile as:
eqdps_CHARACTER_SERVER_PoS.json
A big thank you to the Side Gigg guild on Rivervale and especially to Karthar for test data, repeated testing and feedback, and the KDE Plasma overlay guidance and screenshots; and to Gigglemage for Windows testing, feature ideas, and shoutouts on stream.
Thanks to Brent Aureli for the original community contribution that added clickable Wiki links to Plane of Sky rewards.
eqdps is built on excellent open-source projects, particularly:
- Gio for the immediate-mode graphical interface;
- Oto and go-mp3 for audio playback and decoding;
- beeep for desktop notifications;
- Zenity for native desktop dialogs; and
- the Go standard library and the wider Go open-source ecosystem.
Thanks also to the EQL Wiki contributors for documenting EverQuest Legends.
The embedded Plane of Sky quest dataset is derived from the EQL Wiki Plane of Sky class-quest data and related class and item pages. It includes quest names, quest givers, requirements, rewards, and item sources, normalized into the application's structured format and supplemented with corrections observed in logs.
EQL Wiki content is available under the Creative Commons Attribution-ShareAlike 4.0 International license unless otherwise noted. The EQL Wiki-derived dataset and its adaptations are therefore provided under CC BY-SA 4.0.
The eqdps application source is licensed under the MIT License. The EQL Wiki-derived Plane of Sky dataset is licensed under CC BY-SA 4.0 as described above.
EverQuest is a trademark of Daybreak Game Company LLC. eqdps is an independent community project and is not affiliated with or endorsed by Daybreak Game Company.











