Browser-based map for Dragon's Dogma Online — enemy spawns, gathering nodes, shops, warps, and named locations. Deployed as a static GitHub Pages site (map.html).
Live map: pacampbell.github.io/map.html
- Open the map in your browser.
- Click Select Server (top of sidebar) and choose Dogma Rising — Normal Channels (or Revival / Arrowgene / custom URLs).
- Search or pick a map in the sidebar, then use the filters below to control what is shown on the map.
Enemy positions load from this repo. Enemy types, levels, and drops load from the server preset you select (external JSON).
The search box at the top of the sidebar finds:
- Maps — by area or stage name (e.g.
Hidell,st0100). - Named locations — portcrystals (outposts), caves, inns, doors, wells, area warps, shops, and similar POIs on field maps (including shop NPCs inside buildings). Results use the same POI icons as the map. A field door to a building whose interior shop shares the same name is indexed as a House, not a second shop entry.
Tips
- Type a few letters; named locations appear under a Maps or location section in the results list.
- Click a result to fly to that point and switch map/stage if needed.
- Advanced filters (in the search placeholder tooltip):
stageno=200— match stage numberstageid=2— match internal stage IDarea=cassardis— match quest area name
Portcrystal spots dedupe: if both Outpost and Area warp exist at the same crystal, search prefers Outpost.
Three collapsible sections in the sidebar control markers on the current map. Each section has a Show all toggle plus individual category checkboxes. Choices are saved in your browser.
Filter which enemy groups are visible by spawn type:
Uncheck Show all to hide every mob type; check individual boxes to show only what you need.
Spawn waves — on stages with more than one spawn subgroup, a pill bar appears under the mob-type list (All, then 1, 2, …). Pick a wave to show only spawns from that subgroup; All shows every wave. Area-spawn groups count toward wave 1 when the stage uses the default subgroup layout.
Enemy positions are lazy-loaded per stage when you open a map (or when spot search needs all stages), which keeps the initial page load small.
Toggle connection / landmark icons on the map:
Connections that match a category show the game-style POI icon; uncategorized warps use a door-style icon. Show all enables or disables the whole Locations group.
Toggle gathering node markers:
Only categories you leave checked appear on the map.
Open with the 🔍 button or Ctrl+F. Search enemies, gathering types, or item drops on the current stage — or across all stages.
- Enemies — mob name (partial match;
"quotes"for exact prefix) - Gathering — gather node types
- Items — drops from enemies, gather nodes, or shops
Search several mobs at once by separating names with a comma or +:
Behemoth, AngulesGoblin Dragon + Colossus
Matching is per stage (dungeon/area), not per spawn group. If both mobs appear anywhere on the same stage — even in different groups — that stage shows 2/2 under All matched.
Results are grouped by how many search terms matched:
| Badge | Meaning |
|---|---|
| 2/2 | Every searched mob has at least one matching spawn on that stage |
| 1/2 | Only one mob matched on that stage (see level filter below) |
Click a row to fly to the nearest matching spawn. Use ◀ ▶ to cycle through all matching spawns on that stage (each mob’s locations, in sort order).
On This Stage with the Enemies tab, leave the search box empty to see every enemy type on the current stage. Click a row to jump to the nearest spawn; ◀ ▶ appears when that mob has multiple locations.
Expand Level range, set Min and/or Max, leave blank for no bound. Only enemy spawns whose level range overlaps your filter count as matches. The badge shows when a filter is active.
With multi-enemy search, each mob is checked separately against the level filter. Example: Min 30, search Goblin, Behemoth — Goblin Lv 43 counts, Behemoth Lv 10 does not → stage shows 1/2, not 2/2. Arrows only cycle spawns that pass the filter.
Spawns with no level data in the server preset are not excluded by the level filter.
Note: The empty-search stage roster lists all enemy types and does not apply the level filter (the filter applies when you type a search).
Results are ordered by travel distance from a sort origin (not alphabetically by area name).
- Default: White Dragon Temple entrance on Hidell Plains.
- Custom: expand Sort from → Set from map click…, then click a point on the map. A marker shows the origin. The badge switches to Custom.
Sort order: path distance → (global only) stage order → level (low to high) → name. Unreachable stages sort after reachable ones.
Sort from affects order only — it does not hide results. The same ordering applies inside ◀ ▶ navigation: 1/N is always the nearest matching spawn from your origin.
- This Stage — current map/stage only.
- All Stages — world-wide search; first use loads spawn position data for all stages (progress message shown).
Click a result to fly to the spawn and highlight it. Multiple locations for the same name — or multiple matches on a multi-enemy row — use ◀ ▶ to cycle.
Collapsed Developer section at the bottom of the sidebar. Not required for normal use.
| Option | What it does |
|---|---|
| Technical spawn labels | Per-spawn ID labels, G# group chips with counts, legacy group chips, expand/collapse hull outlines, and territory bounds on expanded groups (territory is no longer a separate layer toggle) |
| Aggro / link radius | Click a spawn on the map to draw its aggro and link radii |
| Grid | World-coordinate grid overlay |
| ✎ Edit | Toggle edit mode for gather/shop/connection markers |
| Expand all groups / Collapse all groups | Expand or collapse every spawn group at once |
Tips
- With technical labels on: click a G# chip to expand that group; middle-click the hull outline to collapse.
- Cursor coordinates are always shown in the bottom-right of the map (no dev toggle).
- Alt+click the map to log world coordinates to the browser console.
| Source | Role |
|---|---|
| This repo | Map tiles, spawn positions (resources/enemyPositions/{stageNo}.json, lazy-loaded per stage), landmarks, connections, gather points, shops (static JSON) |
| Server preset | Live spawn tables (EnemySpawn.json), gathering CSV, shop JSON |
Presets: Dogma Rising, Revival (live.ddon.org), Arrowgene (default), or Custom URLs/local files.