Colophon

About EO Codex

A static, fully cross-linked reference generated from the public EOR API, with the official dev post archive mirrored alongside it.

How it works

Every page on this site is generated at build time from the EOR API. There is no CMS, no database and no content written by hand. If it is on this site, it came from the API.

The build runs in three stages: every /dump endpoint is downloaded, validated against a Zod contract, then transformed into a linked entity graph. Because the upstream data changes rarely, all 4,023 pages are prerendered to static HTML and no API call happens while you browse.

The API stores most relationships in only one direction. An NPC knows how many maps it spawns on but not which ones, and an item knows it is gatherable but not where. Those reverse indexes are derived during the build, which is what lets every page link both ways.

What's in the graph

items
1,447
npcs
989
maps
429
quests
218
shops
140
spells
562
spells Playable
36
classes
7
guides
20
effects
48
mounts
23
routes
4,023
search Docs
3,286

Derived relationships

NPC spawn points
2,306
Warp edges
5,864
Gather nodes
745
Chest spawns
281
Quest chain links
60

Known limits of the data

Things the API does not provide. Stated plainly rather than papered over.

Quests have no text
The API exposes quest states as NPC references only. There is no dialogue, objective or description text anywhere in the payload. Quest pages therefore describe structure, participants, gating and rewards rather than a written walkthrough.
526 spells are placeholders
Of 562 spell records, 526 are unused slots literally named “Res”. They are excluded from listings and search but remain reachable at their own URLs so nothing is deleted.
Spell artwork is unavailable
The documented /spells/{id}/icon and /spells/{id}/graphic endpoints return 404 for every spell. Item and NPC artwork is complete: all 3,883 sprites are bundled with the site.
Some names collide
92 item names, 62 NPC names and 31 map names are not unique, and a few maps are unnamed or “???”. Unique names keep clean URLs; colliding names are suffixed with their id, and the shared name becomes a disambiguation page.

Data integrity

Every relationship is checked when the graph is built. References that cannot be resolved are dropped rather than rendered as dead links, and the count is reported here.

Broken references
0
Unreferenced items
652
Unreferenced npcs
287
Unreferenced maps
32

Unreferenced records are real rows in the game data with no recorded source, spawn or connection, typically reserved, admin-only or event content. They still have pages.