zeeZ.5713:

I needed (wanted) all items that are created from a recipe and the matching recipes to do the things I want to do, so I pulled it from the API, one item/recipe a second (I felt generous and didn’t want to just bulk spam them all :P).

Maybe some of you need that data too, so to pull a little weight off the API servers’ shoulders, my data dumps as of June 8, 2013:

 
recipe_details for every recipe in recipes. Key is recipe ID, data is recipe_details output
https://dl.dropboxusercontent.com/u/6664141/gw2/recipe_details.json.gz

item_details for every recipe’s output_item_id in the above list. Key is item ID, data is item_details output.
https://dl.dropboxusercontent.com/u/6664141/gw2/recipe_created_items.json.gz

 
I didn’t pull details for the recipe’s ingredients because the way my idea unfolds currently I can pull them on the fly as needed. I hope those dumps provide to be useful to some of you (and that they don’t get outdated too fast)

zwei.9073:

They are certainly usefull,

I have added them to my API library as a offline recipe option – full list of all items in this would be much appreciated.

Cheers!

DarkSpirit.7046:

I have downloaded the full list of item and recipe details in here:

https://www.dropbox.com/sh/zucn218fhneva3c/-MjOkUsTtI

I have combined the detail records into a JSON array and validated them. Note that these files have to be in unicode format to preserve the unicode strings for some of the item names.

zwei.9073:

Cheers and thanks!

It is bit different format thou (JSON array, versus JSON object with id-keys) – could we agree of dump format? Either one is okay, but consistency is best.

DarkSpirit.7046:

Cheers and thanks!

It is bit different format thou (JSON array, versus JSON object with id-keys) – could we agree of dump format? Either one is okay, but consistency is best.

I prefer a JSON array but I am probably biased. The reason being that the ingredients in a recipe is also exposed as a JSON array and since my code needs to calculate the minimum crafting cost of a recipe, I would convert the ingredients array to be an array of recipes recursively. It makes sense to work with a JSON array of recipes with a JSON array of recipes within each recipe element as ingredients.

Another reason is that gw2db also exposes its items and recipes as a JSON array. Putting ArenaNet’s data in a JSON array this way makes it easier for developers to transition their code from one JSON database into the other.

That said, it may seem better, at first, to expose them as JSON objects with their recipe_id/item_id as keys so we can deserialize them into a dictionary for a faster lookup. But since the ids are almost in running order, it probably wouldn’t matter much if they are deserialized into an array and we use the normalized ids as array indices.

DarkSpirit.7046:

I checked them out and their ids are not as close to running numbers as I initially thought, especially for the items. There are many gaps. They could be missing items or there are just no valid items with such item ids.

Anyway, I updated my JSON files to the JSON object with id-keys format. This format would make it easier to load them into a dictionary or map.

zeeZ.5713:

I went ahead and updated the dumps today.

DarkSpirit.7046:

Thanks I have updated mine too.