Skip to content

feat: fetch ability tree and map data from Wynncraft API#516

Draft
DevScyu wants to merge 8 commits into
mainfrom
feat/abilities
Draft

feat: fetch ability tree and map data from Wynncraft API#516
DevScyu wants to merge 8 commits into
mainfrom
feat/abilities

Conversation

@DevScyu
Copy link
Copy Markdown
Member

@DevScyu DevScyu commented May 25, 2026

Adds automation for ability tree data that was previously maintained manually.

  • update_ability_data.sh: fetches /ability/tree/{class} and /ability/map/{class} for each class, saves raw files, calls the existing merge_abilities.sh, and produces a new Reference/ability_map.json
  • update_ability_data.yml: runs the above hourly
  • Saves /v3/classes response to Reference/classes.json since we fetch it anyway
  • Adds wynn-openapi.yml and a daily workflow to keep it in sync with docs.wynncraft.com

⚠️ Blocked on mod update — API schema has changed

The Wynncraft API has changed the structure of /ability/tree/{class}. The generated files in this PR reflect the new format. The mod currently cannot consume them.

Old format (what the mod expects):

{
  "nodes": [{ "id": 1, "name": "Arrow Bomb", "description": ["§6..."], "location": {...}, "connections": [...] }],
  "archetypeInfoMap": { "Boltslinger": {...} }
}

New format (what the API now returns):

{
  "archetypes": { "boltslinger": { "description": "<span ...>", "icon": {...} } },
  "pages": { "1": { "arrowbomb": { "coordinates": {"x": 7, "y": 3}, "description": ["<span ...>"] } } }
}

What needs updating in the mod:

Do not merge until the mod is updated to consume the new schema.

@DevScyu DevScyu marked this pull request as draft May 25, 2026 11:53
@ShadowCat117
Copy link
Copy Markdown
Member

We never bothered using the API for the ability data as we can quite easily extract it from in-game which is often more updated than the API and we have more control over the format.

Since no work has been done on needing the data it's currently very outdated and the parsing doesn't even work but I did fix it locally a few months ago and had a v2 of the json ShadowCat117@750d4a7 it just needed a mod update to implement it which I never did

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants