Sources

Every number on this site came from somewhere. This page says where — which client file, which in-game window, which dev post, which piece of classic-EverQuest reverse engineering. It also lists the claims we won’t make, and the questions nobody has answered yet.

The five seals

Each claim on the site carries one. They rank: what the running game showed a player beats what the shipped files say, which beats a developer’s word, which beats an old formula, which beats what players believe.

The two gold seals both come from the game. They differ in where it handed the number over. Mined means we parsed a file that ships with the client — you have the same file, and you can check us. Observed means the server sent it and the interface drew it, and we read it there. Observed outranks mined because the shipped files are a live-EverQuest superset: they claim a level cap of sixty, they run skill tables to level 130, and they carry thousands of spells EQ Legends has never sold. The window is the game. The files are what the game was built from.

Mined out of the client’s files

All of this ships with the game — it is on your hard drive right now. Nothing here was invented; it was parsed.

WhatWhat it givesUsed by
Spell data Names, per-class level gates, mana, cast and recast times, and every effect parameter, for the 1,443 player-castable spells in the client's catalog — about one in seven of which no EQL source confirms, so Spellmaster hides them behind an Unverified toggle rather than presenting them as learnable. The parser refuses to run if the format shifts, so a patch fails loudly instead of quietly mis-reading. Spellmaster
Spell text The description and category for each spell, plus the cast-on-you and spell-fades messages. Spellmaster
Spell icons The 276 icons the game draws in your spellbook, cut from the sheets it ships. Spellmaster
Race and class attributes The starting attributes of every race, and the points each class adds. Exactly 30 per class, split across the seven. Attributes
The AC softcap table Every class at every level: where worn AC stops counting fully, and the fraction it counts for after. Combat & Stats
Skill caps Every skill, for every class, at every level. This settles arguments: Block exists only for Warrior, Ranger, Monk, Beastlord and Berserker, at any level. Combat & Stats
The stat window’s own tooltips Verbatim: Accuracy is “Chance to land a hit,” Evasion “Chance to avoid melee damage,” Offense “Chance to deal more damage,” Mitigation “Chance to take less melee damage.” The game defining its own stats. Combat & Stats

Read off the interface

Some of what the game knows never reaches a file on your disk. The server sends it at login and the client draws it in a window. Where that window is one any player can open, we take it.

WhatWhat it givesUsed by
The Alternate Advancement window Every AA the game offers your classes: its name, what each rank does, the point cost, and the level you need. The client files hold the names and the rank descriptions but no cost, no level, and nothing joining an ability to a class — that arrives from the server. AA Planner

The honest version of how: rather than open the window and transcribe several hundred abilities by hand, we captured the client’s own login traffic once and decoded the list the server had already sent it. A screenshot would have proved the same facts, more slowly. So the seal is client-observed, and the method is written here rather than buried.

The line that method does not cross: we publish only what the interface already shows a player. A window you can open at login, on your own character, and read. Never spawn points, never loot tables, never merchant inventory, never anything the game keeps off your screen. That is the difference between saving a player an afternoon of transcription and handing them an advantage the game never meant them to have.

Said by the developers

Quoted from the official EQ Legends Discord. Links open the message if you’re in the server.

“We aren’t going to spoil the exact formula. Players will have to figure that out by experimenting.”

Secrets, relayed by superrpg237 · #dev-comments · 17 Apr 2026 · message
This is why the combat page carries a model seal at all. The devs have said they won’t publish the math, so where the client is silent, the page shows you the old formula’s shape and tells you it’s a shape.

“actually surprisingly close” … “a lot of us were reverse engineering the client to begin with.”

superrpg237 · #dev-comments · 19 May 2026 · message
On Torven’s classic combat research. A developer saying the community’s own reverse engineering lands near their team’s is the strongest reason to trust the model tier — and it still isn’t a confirmation of any specific number.

“A couple classes gained block that didn’t have it before.” … “Warrior Ranger and berserker gained block.”

psythys · #dev-comments · 20 and 28 Apr 2026
Matches the client’s skill-cap table exactly. Knights are not on the list.

“Entirely new poison system… modern and easy to use and has a pretty wide variety of effects.”

clowd81 · #dev-comments · 20 Apr 2026
Poison crafting was replaced, not removed. Spell Research was removed.

The ancestral model

EQ Legends runs on the live-EQ codebase. Where its own files and its own devs say nothing, the page shows the classic formula’s structure and marks it as structure.

“no amount of power will raise your max hit, shifting your average hits higher on the 1-20 scale will lead to much more overall damage”

Torven, EverQuest Melee Combat Routines Analyzed and Modeled · eqemulator.org
The source for the twenty-slot damage roll, and for why Offense and Strength move your average hit and never your ceiling.

“The Accuracy stat increases your likelihood to land a hit… countered by your opponent’s Evasion stat. The Offense stat increases your likelihood to deal more damage when you land a melee attack and is countered by your opponent’s Mitigation stat.”

Live EverQuest patch note announcing the split stat display · forums.everquest.com
The four-number model — ATK splits into Offense and Accuracy, AC into Mitigation and Evasion — is live’s, and EQL’s client uses the same names for the same things.

The softcap multipliers in EQL’s ACMitigation.txt match live EQ’s table exactly.

Dzarn’s AC softcap post, mirrored at redguides.com; cross-checked against EQEmu’s GetACSoftcap() and GetSoftcapReturns() in zone/attack.cpp.
This exact match is the single strongest piece of evidence that EQL behaves like live where it hasn’t deliberately changed something. It is evidence, not proof.

How buff stacking is computed

EQ Legends puts three classes on one character, so it is the only EQ where a cleric, a druid and a shaman can all try to heal the same target at once. No legacy resource answers that, and the in-game tooltips are known to be wrong. Here is what the client actually says.

Every spell carries up to twelve effect slots. Each slot is a tuple of (spa, base, limit, formula, max), where spa names the effect. Two buffs collide when they put the same effect in the same slot number; the weaker one loses. Slots holding a Charisma effect with a base of zero are spacers — they exist to push a real effect down into a slot where it will, or will not, collide.

Two effects are not effects at all. They are instructions to the stacking code, and both read the other spell’s slots:

EffectCarried byWhat it does
SPA 148 the buff already up Blocks the incoming spell if that spell’s slot limit holds effect base with a value under max.
SPA 149 the spell being cast Overwrites the existing buff if its slot limit holds effect base with a value under max.

The slot number lives in limit. formula is unused. That matters: live EverQuest’s file format puts the slot in formula as 201 + slot, and every EQL row has a formula of 0 or 100. A decoder that reads the live convention finds zero matches across all 1,443 EQL player spells, which is exactly what Spellmaster did until 2026‑07‑09.

Worked example: Temperance and Symbol of Naltron

Both are cleric hit-point buffs. Do they stack? Their slots:

Temperance blocks any buff whose slot 3 MaxHp is under 2800. Symbol of Naltron’s is 525. So Temperance overwrites Symbol, and Symbol will not land over Temperance — which is how the two behaved in classic EverQuest, reproduced here from a field no tool in the EQL ecosystem reads. The Symbol line’s two spacers are there for precisely this reason.

The rules themselves are the ancestral ones — model, from EQEmu’s Mob::CheckStackConflict. Every number they read is client-mined. The engine’s own “never arbitrate these” list of 84 effects is generated from EQEmu’s source rather than typed by hand, and the whole model is re-derived and diffed against the previous build on every client patch.

The check only runs where the engine would run it: a spell with no buff duration never occupies a buff slot, so the tool reports “lands instantly — nothing stacks against it” instead of arbitrating a heal that was gone before the question made sense. Six in ten spell pairs resolve that way.

Five things it cannot see, and says so in the tool rather than guessing:

Column semantics and the SPA name table were adapted from Amerzel’s MIT-licensed eql-info — the other tool that reads the client — and the parser can be re-verified against its extraction whenever the client format drifts.

Found by players

Some of the best sourcing here came from the community, in the open, in #theory-crafting.

cactot found ACMitigation.txt in the client.

cactot · #theory-crafting · 6 Jul 2026 · message
A player found the file. That is why the softcap table on this site carries a client-mined seal instead of a guess.

“like 5 points of AGI to go up” one point of evasion — and he used the old formula’s own term, “functional agility.”

dannuic · #theory-crafting · 13 May 2026 · message
Independent player measurement landing on the ancestral formula’s own constant.

You get the best softcap of your three classes.

poisonous6401, agreed by cynustak · #theory-crafting · 27 May 2026 · message
Universally believed, never dev-confirmed. Your own stat window can settle it: compare the printed softcap against the table on the combat page.

What we won’t state as fact

Claims that circulate, and what the evidence actually supports. Getting these wrong is how a site stops being worth reading.

Still open

Nobody has published these. If you settle one, the Discord is the place.

Where this can still be wrong

Spellmaster’s spell effect values — the mana per tick, the damage numbers — are not in the client. The client ships the formula’s parameters and the server does the arithmetic, so the numbers here are computed with classic EQEmu’s implementation. EQL’s server can retune any of it. One spot check: Clarity computes 7 mana per tick at level 26, matching what a player measured in game. Lucy, which indexes live EverQuest, says 10. Lucy is not wrong about live; it is wrong about this game, and so is every other classic reference used as if it were an EQL source.

The combat page’s model tier predicts well and is approximate by construction. When a client file or a developer contradicts something here, the file or the developer wins, and the page changes.

Everything sealed client-mined is reproducible from files already sitting in your own EverQuest Legends install — the table above names them. Everything sealed client-observed is reproducible by logging in and opening the window. Take what is useful; a link back is appreciated, not required.