The new version of the Hyrule Compendium API will serve data on more than just the compendium entries. It will contain the following categories of data:
- in-game compendium (
/compendium
) - geographical regions (
/regions
) (https://github.com/gadhagod/Hyrule-Compendium-API/discussions/29) - recipes (
/recipes
) (https://github.com/gadhagod/Hyrule-Compendium-API/issues/27)
The goal is to make this API more than just the compendium; it should be able to give data on all (or many) aspects of the game, not just the in-game items.
Recipes
Recipes will be divided based on their base ingredient (e.g seafood). Multi-dimensional arrays will be used to represent possible ingredients to tackle the problem of substitutable ingredients.
Possible example recipe response:
{
"name": "meat and rice bowl",
"image": "https://botw-compendium.herokuapp.com/api/v3/recipes/recipe/meat-and-rice-bowl",
"category": "meat",
"hearts_recovered": 4.0, // hearts recovered from consumption
"ingredients": [["raw meat", "raw bird drumstick"], ["rock salt"], ["hylian rice"]] // array of arrays, each inner array represents possible ingredients
"effect": "attack", // enhancing effect of dish (empty if none)
"duration": 60, // duration of effect in seconds (0 if no effect)
}
Map
Data on each region, including encompassed shrines and settlements, will be provided.
Compendium
- The compendium entries will have a field
dlc
that specifies if it is a master-mode exclusive. The/master_mode
endpoint will remain to avoid ID conflicts. - The
food
andnon_food
keys in the creatures category response will be removed. Each creature entry will have a boolean propertyedible
instead.
Code Changes
These changes will not affect the user of the API. It will improve performance and clean up code.
- Separate branches for API versions
- Use Flask blueprints instead of
Flask().add_url_rule
- Improve queries to reduce API latency
- Instead of executing multiple queries, using
UNION
is a better solution
- Instead of executing multiple queries, using
- Create staging app to test changes
Client Libraries
- Update pyrule-compendium (@shaunikm)
- Update Hyrule-Compendium-node-client (@goombamaui)
Additional Tasks
- Documentation
Release
I hope to have all of these features in production by the end of 2022. I hope to get the bulk of it done by the end of this summer (August 2022).
Feel free to chime in on this thread.
Issue Analytics
- State:
- Created a year ago
- Comments:5 (3 by maintainers)
Top GitHub Comments
Experimental region endpoints are available at:
https://botw-compendium.herokuapp.com/api/v3/regions
.https://botw-compendium.herokuapp.com/api/v3/regions/eldin/<region>
.Thanks for your feedback @jeff-stienstra.
I do plan on adding more information about regions. As of now only shrines, DLC shrines, and settlements are given, but I will add some sub-regions and important areas in the future. Thanks for your suggestion!
<region>
would be the value ofname
of one of the regions fromhttps://botw-compendium.herokuapp.com/api/v3/regions
. For example, you could make a request tohttps://botw-compendium.herokuapp.com/api/v3/regions/central
.