Hmm, I’ll look into getting some of those images added to the /v2/files endpoint. Not sure if/when they’ll be available though.
Could you also look into adding all sorts of NPC icons, aswell as the WvW icons for forts, towers and camps to it aswell? I would greatly appreciate that. I would rather avoid having to use 3rd party ones or cutting them out of screenshots myself, if i could have them easily available like that. I think they would be a great help in combination with the map service to make a full fledged live map with npc info and what not. that is actually something i am looking into at the moment. positioning them on said map wouldnt be an issue either thanks to the mumble link api, for instance.
As for the accessibility of vendors, would it be possible to implement a “discovery” system similar to what’s already in place for items/recipes/skins?
Not sure whether that’s feasible or not; will have to look into it. Having a vendor endpoint would definitely be the best approach though — at that point, we’d be able to reference the vendor IDs from both /v2/items and /v2/floors.
IF you are going to do that, please do warn us ahead of time. As i mentioned in the post right above yours, i was intending to go exactly what that api would provide through hours of manual exploration and discovery before providing it as a 3rd party api of my own. I would appreciate it not to waste so many hours i could have spent another way, only to be slapped in the face by a shiny new api a day after i am done. I fondly remember that day where i finally got my code running properly for the v1/item_details api that took about 6-9 hours (because i was so kind not to violate the api with 1 billion request simultaniously and instead only used 4 threads for that) to draw in all items that existed at the time in all 4 available language, and literally the next day you smacked me with the much faster v2/items apis. Anet pls.
A rough estimate, if possible, would be very welcome.
I actually intend to implement something of the sort into my webapplication, which i am sorta working on on and off (mostly off than on lately). It will require a ton of manual, explorative work on my part, but considering where i plan to take it, it would be well worth it. additionally, i would also make an api of my own to allow others to use that data, if they wish. It is however still in the stars when i ll find the time to work on that though. what do you guys think about that?
I dont see why this needed to be fixed, let alone how this is an improvement. what harm did it do for it to talk when it was hidden? I dont get it. Arent there other “actual” bugs that need fixing instead of fixing something like this which people actually liked?
Why are always the nice things taken away from us?
You ruined the Rose Bouqet in a similar fashion, but that doesnt belong here.
If there is any chance that a dev is reading this, I would be really happy to have this “Improvement” fixed. :/
Another thought: the ids returned by /v2/commerce are not item ids, but listing ids that also happen to be item ids. A valid listing id is always a valid item id, but not the other way around.
also, only items with sell listings can actually be obtained ingame. I would ignore those who only have buy listings.
Items that have the “AccountBound” flag can never appear on the trading post, so 404 would be less accurate than 400.
Also, its Dungeon Armor :P
Well, while the story was a pretty decent read for an amateur writer, The reward didn’t exactly live up to all the mystery the story made up about it. As a fellow thief, I think Lemark needs to get his act together, making all that effort for what seems to be nothing more than a rusty sickle with a fancy name.
Then again, i didn’t exactly get my hopes up, assuming it would be the addition of a forge recipe for an item that previously had no acquisition method. I find it fits the whole warmed up feeling this halloween has to it quite well, i suppose.
I am glad i didn’t experiment around with a lot of materials as some people might have done.
I will never understand why they made a fair 90% of dagger so blatantly ugly though… a filthy, rusty sickle is certainly not something that fits my thief’s “thievish” appearance, nor do most of the other daggers.
And even though it is not my style, leaving that point apart, the thing that annoys me the most about this particular dagger is that you hold it the wrong way around… and then strike with it using the standard animations. so, I just hit things with the handle now instead of the actual blade it seems. Well then.
But again, kudos to John Smith for the interesting read. I d like to see more of that in the future, if time and living story allows for it.
Just an idea but; look at the new party and the old party
Braham – Eir’s Son
Rox – Rhytlock’s Half Sister
Margary and Kassmer – Link to Logen?
Taimi – Zojja’s StudentSo what about Caithe? or maybe “-E” should actual be “___E”?
Just think about it, Caithe is a thief that just happens to know what’s going on and she hasn’t been seen in the living story so far. What if she was watching Scarlet from the shadows after what happened in Twilight Arbour? Caithe was having a relationship with Failin (hense the book “How to keep a long distance relationship” found in her home") maybe she just hid in the shadows and let us know what was going on through ciphered messages?
As i said, just an idea ^^
Correction. she did actually appear at the summit.
I hope too many requests is not what it’s causing the game to lag for everyone else…
I dont think so. atleast I assume that the api is running on a server of its own. Atleast the API is shut down for a little while when the weekly WvW reset happens, so i would think the API Server and the actual Game Server are separate.
xD sorry. What would be a more democratic delay between each request?
No no, I’m thrilled that you can grab it that fast.
they climbin’ in yo apis,
snatching your items up,
hide your flags,
hide your types,
and hide your game_types too because they are grabbing everybody out here.
Problem is:
- You currently have no way of telling what megaserver shard you are currently on and hence cant give that as a parameter to the events api
- Even if you knew that, you wouldnt have a way to travel to a specific megaserver shard where the event is currently running, ultimately making you wait around anywaysI do agree with you though. I would like to see this fixed sometime soon too.
Type /ip
That’s your megaserver.The other problem is insurmountable, though :/
I meant in an automatic way, such as grabbing the world/shard_id and map_id from the mumble plugin and feeding it into another application.
Sadly, the mumble plugin currently returns rubbish when it comes to that, and we have no official events api we could feed that into even if we had it.
I was aware of the manual way of finding out what ip you are on, but that still isnt the same as a shard_id i suppose.
Please give us the (dynamic) events api. It’s a powerfull tool for people to keep track on collection specific events. It is a positive way people stick to the game. Now you travel to a place in the hope that specific event is live. If i have to wait to long, i leave the area, resulting indisconfort and more easily leaving the game totaly. So please make it easy to see which event is running where. Keep you’re beautyfull game running the way gamers like it…not the way investers want it.
Problem is:
- You currently have no way of telling what megaserver shard you are currently on and hence cant give that as a parameter to the events api
- Even if you knew that, you wouldnt have a way to travel to a specific megaserver shard where the event is currently running, ultimately making you wait around anyways
I do agree with you though. I would like to see this fixed sometime soon too.
Nearly all personal story/living world instances are located in that region. I don’t think an explanation has ever been given.
I see. I just found it odd because other story instances that have been added around the same time (“The Machine” and “Trouble at For Salma” for example) had the correct region attributed to them.
I just saw this on my female Charr this morning. o.o
As someone who plays all Charr, and one Asura this looks awful. Not only is there no tail, ears, or horns, but my character’s chests are exposed. My Charr are all female. I would make sense on a male charr, but not on a female charr.
I previewed it on my female Asura as well. =O
I don’t know if gender change is possible, but she definitely looks like a man with that outfit.
This is exactly why I never buy my characters any nice things. >.<
Yeah, Gender change is possible with an extreme makeover kit. I dont get why they followed through with this either. look at the witch costume for example. they did give the female version of that to female asura, i dont know if they also did so for charr though. I dont get why they couldnt have done the same in this case. It would certainly still be better than full on chest exposure.
There have been multiple armors that make charr and asura females topless since launch. There are no breasts. What’s weird is putting a cat in a bra.
Charr arent cats, they Anthropomorphic at best. and even if they might be cat like, they would still have teats.
I am aware of those other armors, but personally i think none of those has been this bad yet.
It has been roughly half a year since i last reported this, or if not it atleast feels about that long. Its not a major bug, but it is annoying as hell to have to resize your inventory EVERY SINGLE TIME you log in or change your character.
It was an issue in the past, got fixed, now it has been back to seemingly stay.
Could this actually be looked into for once? I recall there has been more than just one topic about that issue aswell…
Hmm, what does or look like on a Asura. Just curious.
Topless, female Asura. and Charr. is that enough to cause you horrible nightmares yet?
Stuff? What stuff?
Puffy, Fluffy Puff-Puff Stuff.
Okay, charr without a tail is already bad, but who the heck thought making charr and asura females topless was a good idea over at A-net? especially when their supposed-to-be-underwear cover those bits up by default and now stuff is just hanging out? why cover it up in the first place then?
I just pulled all of the map data into my database only to realise that alot of the newer story instances seem to have their region_id and region_name set to 8 and Steamspur Mountains, even though all of them took place in either Kryta, The Maguuma Wastes or the Tarnished Coast.
Example:
“993” : {
“names” : {
“de” : “Scarlets Geheimraum”,
“en” : “Scarlet’s Secret Room”,
“es” : “Habitación secreta de Scarlet”,
“fr” : “Pièce secrète de Scarlet”
},
“min_level” : 80,
“max_level” : 80,
“floors” : [ 0, 1, 2 ],
“region_id” : 8,
“region_names” : {
“de” : “Dampfsporngebirge”,
“en” : “Steamspur Mountains”,
“es” : “Montañas Brotavapor”,
“fr” : “Chaîne de Pointebrume”
},
“continent_id” : 1,
“continent_names” : {
“de” : “Tyria”,
“en” : “Tyria”,
“es” : “Tyria”,
“fr” : “Tyrie”
},
“map_rect” : [ [ -24576, -30720 ], [ 24576, 30720 ] ],
“continent_rect” : [ [ 3840, 14592 ], [ 5888, 17152 ] ]
}
that one should have region set to Maguuma Wastes.
the map_ids in question are 989 and onwards, though some of them are correct, but most arent. Is there a reason behind it?
One point would be, that i didnt think of said sticky. :x other reason would be that i would like to know if you, my fellow codemonkeys ( or codequaggans if that is prefered) would appreciate it if i made the effort of dishing one out for now, if noone did so already. :P
Would it be possible to get an official api that offers information about all currently known mystic forge recipes? I would assume it could be a much easier version of the recipe_details api, so to speak. All it would really need would be a corresponding ID, what it produces and what and how many ingredients it uses.
Also, i would like to know if people here would actually find this useful, as i wouldnt mind doing the dirty research work and provide a suitable api of my own for the time being.
Let me know what you guys think about this.
Getting the item details db schema right is pretty difficult. But even if you nailed the design, filling your perfectly designed database with API data has its own challenges.
Some items contain references to other entities that may not already be in your database. Examples include upgradable items that reference upgrade item details, recipe sheets that reference recipe details, and dyes that reference color details.
Trying to insert an item like that results in an integrity constraint violation, because the referenced item doesn’t exist in the database. So what do you do? You insert the referenced entity first, and then insert the item that holds the reference.
The opposite can also happen. Multiple combat items can reference the same upgrade item. Trying to insert the referenced upgrade item results in a duplicate key violation, because the referenced item already exists in the database. So what do you do? Some database engines provide an option to silently ignore duplicate key errors. For the ones that don’t provide that option, change the query to insert only if the key doesn’t exist already.
Long story short… the code can (will) get pretty messy, and it’s not your fault.
oh god i saved myself that trouble by just not bothering to add constraints for upgrade_items and such. Id much rather toss a second SQL query to grab that bunch of info at my DB that making my data import systematics even more complicated than they already are.
I mean, mapping the v1/item_details to a database scheme was already bad enough by itself.
http://gw2compendium.com/resources/items.png
-cough-
this is not the final result as I noticed some mistakes with it, per se, all name/description/suffix tables have a composite primary key with a lang field instead of having a column for each lang version of the string in one row.
Also, that completely non working relationship between item_infusion_slot and item_armor, item_weapon and such has been replaced with a jointable between each of those 4. probably still not the most beautiful solition, but it does its job.
(edited by AysonCurrax.3254)
Even if it would only deliver the current skill descriptions along with professions & ids and icons it’d be great!
I am thinking it would end up being almost or just as complex as the item_details api at this point. I mean, think about it:
every class has X different types of skill groups (stance, shout, trick etc.) and then those sub object could have a bazillion different optional attributes that could make the whole thing pretty messy. you d have to account for everything from range over internal cooldown all the way to cast time and how it behaves all together.
Work In Progress
As mentioned in my previous Post, I have been working on implementing an API of my own that allow myself, and other developers to quickly and easily access all types and flags used in a specific official API end point such as v1/item_details , skin_details or recipe_details.
For now, those three are the ones i got currently implemented.
Additionally, I also have API endpoints available that pretty much mimic these official api endpoints:
v1/items.json
v1/item_details.json
v1/skins.json
v1/skin_details.json
v1/recipes.json
v1/recipe_details.json
the slight difference to the official ones is the fact that i replaced the name, description and bonus attributes with maps that contain the string in all four currently supported languages, cutting down on the need to send one request per language incase you want all that data. Also, I added an attribute for the corresponding chat code for each of these three categories.
Examples:
http://api.gw2compendium.com/v1/item_details.json?item_id=67359
http://api.gw2compendium.com/v1/skin_details.json?skin_id=5697
http://api.gw2compendium.com/v1/recipe_details.json?recipe_id=9803
Items:
http://api.gw2compendium.com/v1/items.json
http://api.gw2compendium.com/v1/item_details.json (required param. item_id)
http://api.gw2compendium.com/v1/item_types_and_flags.json
Skins:
http://api.gw2compendium.com/v1/skins.json
http://api.gw2compendium.com/v1/skin_details.json (required param. skin_id)
http://api.gw2compendium.com/v1/skin_types_and_flags.json
Recipes:
http://api.gw2compendium.com/v1/recipes.json
http://api.gw2compendium.com/v1/recipe_details.json (required param. recipe_id)
http://api.gw2compendium.com/v1/recipe_types_and_flags.json
UPDATE:
v1 Item Types and Flags API:
http://api.gw2compendium.com/v1/item_types_and_flags.json
I will work on adding the same for the other v1 APIs and the move onto implementing the same for the v2 APIs as they come out.
I hope this might be helpful for some people.
UPDATE: alright, it is working like a charm now. I got it working the way i want for the v1/item_details types and flags now and am currently externalizing the whole thing from my main application and putting it in a webapplication of its own so I wont be messing with anyone using it if i have to turn it off to change something in my main application. I will post the required info here later tonight and will soon add the same for the other v1 and later the v2 apis aswell, hopefully.
Is there any estimate point in time when one could expect the other two portions of dry top to be added to the tile service? I d really like to have a “Live Map” that is actually live, if possible.
It feels especially silly, currently, since i can map the waypoints and everything to their respective locations on the map, but the map is still covered. :S
For /v1, I used to have a single class per item type to hold type-specific item details.
Statically typed languages like C# do not allow “item.details” objects to take on different types according to the value of “item.type”.
For /v2, I need to rethink my design so that every possible item detail fits into a single class hierarchy.
Is anyone trying to do the same thing? Did you run into any problems with things like duplicate property names meaning different things for different item types?
edit
Does anyone use JSON schema validation? Is there a way to generate an aggregate schema from a number of different json documents? It would be interesting to see a tool that loops through all 38k items, then outputs a complete schema that describes all possible objects and properties.
I am currently in the same boat, although i am using Java on my end. My first thought was to have a default “Details” class and then derive other classes from that class for example “DetailsArmor” and “DetailsWeapon” with the respective attributes in them.
I am doubtful that that will work though. previously, I had One class “ItemJSON” with several static subclasses in that class so i could directly Map item_details onto that class and then use the getters and setters to map that onto my more specific objects that go along with my database structure.
So in that case, i would have “ItemJSON.Armor” contain all the info from the “Armor” subobject from the item_details json.
I could have details contain all possible attributes, thus making everything not used NULL, but that would be too lazy and dirty for my taste. Like that one time where i mapped Item_details onto a single database table which ended up having 100 or so columns with several hundred thousand entries. -cough-
If I’m getting this right, the idea is to have a program running that periodically scans the official API for previously unknown constants. So unlike the wiki, the custom API would not require manual intervention.
precisely. I figured i d make this available to other people once i got it working the way i want it, because I pretty much mapped the info from the v1 item_details api to a database and, keeping normalisation rules in mind, I would have a table that maps ids to strings of types, so to speak. thus, since i didnt want to have my application check against that table for every single item because that would be awfully slow, I first did a little prototype where i mapped everything within an ENUM, and thats the point where i noticed that the documentation on types and flags wasnt really reliable since a lot of them werent documented, such as Toy, Bundle and TwohandedToy for instance.
To this point, i have strayed from the ENUM idea and am currently getting the kinks worked out with ConcurrentCollections because I have 4 parallel threads firing away at the API for speed reasons.
That is for the v1 api though. The v2 might be a little more handy due to it letting you grab all the info you need faster and more efficient, which will also make testing less horrible because you dont have to wait xx hours for your application to be done with assaulting the v1 items api and checking that mess for errors along the way.
TL;DR : long story short, in the long run this will pretty much just be all values that are in my types and flags tables JSONified.
Not sure if there is a possibility to directly feed that info into the wiki while we are at it.
[…]provide all the types (for example weight_class, damage_type, unlock_type etc.) and flags ( for example AccountBound or Offensive) that are currently in use within the official apis.
[…]
I figured this might be useful for you guys aswell, since i noticed that the documentation for those values was rather lackluster, so this would make things alot easier since it is bound to keep things up to date.It’s not an API, but the documentation on v2/items lists all the possible types and flags along with a short description for what it is used for. The lists there consider all items currently available via the API, so for now it’s pretty complete
I am aware of that. my point is: if you were to look at the either the v1/recipes documentation, all the types and flags listed there i added because they previously havent been documented. Providing an API that contains all of those types/flags that are currently in use would be much more helpful for people compared to a static, potentially outdated list.
Hope that clears up what i meant with this.
PS: Added the v2/items documentation to the main page of the docu since you seem to have forgotten to do that initially and it bugged me. :p
What is the proper way to handle items that are in commerce but not in items?
assume fetal position until they are. that is really the best bet i suppose.
I just got my application properly running and hammering the v1 items api with requests through 4 threads while syncing my dynamic adding of types and flags and covering all 4 currently available languages, and now you do this to me.
Now I feel silly for pouring all the work into making it work as i want it to, and you hand me a way to have it easier. I love you for the much simpler v2 structure nonetheless. It will make my life easier in the long run :P If anything, my knowledge improved while working on it, so i am not even mad.
keep up the good work. glad to see the apis are finally getting some love again.
Well, guess i ll have to delay this since i just saw that the v2/items api is out now which will probably simplify my current database structure by a longshot ._.
restructure, here i come.
Hey guys,
I am currently working on providing an api of my own that will provide all the types (for example weight_class, damage_type, unlock_type etc.) and flags ( for example AccountBound or Offensive) that are currently in use within the official apis.
I was working on my application for a bit, and it dynamically adds new types and flags to my database if it finds any.
I figured this might be useful for you guys aswell, since i noticed that the documentation for those values was rather lackluster, so this would make things alot easier since it is bound to keep things up to date.
I will post the URL and further information here once its fully up and running.
!(faith in anet restored)
I am not even sure if they even currently have anyone working on it at all. This forum has been deprived of red posts for far too long as is. :/
The part i dont get at all is the attribute search. clearly, i have memorized all attribute values for everything from a level 5 blue to a level 80 exotic. would make more sense to be able to put in range, at the very least.
Not all players have all of the attribute sets memorized. Trinkets have different attribute set prefixes than other gear. And when you go into unique-named exotics or karma-recipe gear (eg, the Bloodsaw set, or the Devout set which has different attributes on each piece), it’s even less clear which attributes you’d get from a particular piece of gear. I know that the dagger Usoku’s Needle has Berserker stats, but someone buying a level 80 exotic dagger for the first time might not.
Also, if they extend the stat filters to food, that would be hugely useful. Aside from a few foods that I use regularly, I for the most part do NOT have these memorized such that I can just plug in the name of a food I need all the time.
-facepalm- it was sarcasm, sir, or ma’am. pure, and simple, sarcasm. I cant believe you took me serious. :|
I CAN believe I took you serious since your other posts here seemed to indicate that you were pretty underwhelmed by the TP changes. But, sorry I made you facepalm, I guess.
dont worry about it. i just assumed the sarcasm should have been obvious enough. :P
The part i dont get at all is the attribute search. clearly, i have memorized all attribute values for everything from a level 5 blue to a level 80 exotic. would make more sense to be able to put in range, at the very least.
Not all players have all of the attribute sets memorized. Trinkets have different attribute set prefixes than other gear. And when you go into unique-named exotics or karma-recipe gear (eg, the Bloodsaw set, or the Devout set which has different attributes on each piece), it’s even less clear which attributes you’d get from a particular piece of gear. I know that the dagger Usoku’s Needle has Berserker stats, but someone buying a level 80 exotic dagger for the first time might not.
Also, if they extend the stat filters to food, that would be hugely useful. Aside from a few foods that I use regularly, I for the most part do NOT have these memorized such that I can just plug in the name of a food I need all the time.
-facepalm- it was sarcasm, sir, or ma’am. pure, and simple, sarcasm. I cant believe you took me serious. :|
The part i dont get at all is the attribute search. clearly, i have memorized all attribute values for everything from a level 5 blue to a level 80 exotic. would make more sense to be able to put in range, at the very least.
since the trading post is web based, most of what you see in there is mostly controlled with javascript and a few HTML Requests here and there. it really isnt that hard to do as you think it is.
They swapped out the core browser engine and then built the newer TP on top of it.
This, combined with conscientious decision to rebuild the actual post with performance in mind, is much more extensive a task than “javascript and a few HTML requests here and there.”Then you have testing, reworks, bug fixes. since they built on a new core there were probably modules of their old coding that didn’t work as is.
You cannot trivialize that. It could easily take as long as it did.
it is not BUILT on a new core. it is still a mere web page. please, by all means, dont talk like you are the guru of web development if you honestsly believe the webpage itself is built differently simply because its running on a different embedded browser.
Get More Gold Button. Pay to Win confirmed.
I wonder if external sites, such as GW2Spidy, will be able to interface with the new TP.
it will certainly not work for a good while because you cant access the data in the same way anymore. I am not even sure if you will be able to grab the URL in the same way you could before since it will run on a different ingame browser, so probably not on awesomium. I guess time will tell. this is part of the reason why i was hoping they would finally release the API v2.
Just get yourself overwolf. it gets the job done quite nicely.
sadly, its pretty much just a mere rework of the trading post, and thats it.
The only sad things are responses that cast developers who put a lot of time and effort into making features more user friendly in the light that they’ve done nothing.
“Anet, y you no communicate with us”
> Posts like the above
Getting real tired of people being almost stupidly negative 100% of the time.
I am not being negative, I am just being realistic here. I am a developer myself. Sorry to break it to you, but since the trading post is web based, most of what you see in there is mostly controlled with javascript and a few HTML Requests here and there. it really isnt that hard to do as you think it is.
I appreciate it. never said I dont. Its just not what i see fitting for 3 weeks of dragged out hype train.
I am speaking for myself, not for the community or anyone else. Just for myself.
Ultra dissaointed. TP is perfect as it is for me. Nothing is unclear about it. Honestly the new UI is more complex, and it will slow down certain things i’m doing ultra fast now. The pickup box is a step back (very unclear, and harder to reach list of what you are getting). No no no. Bad call. Putting all these resources on this? No thanks
If feature patch 3,0 has similar update (UI change, QoL for veterans not improved, only for new players), then i’m gonna be really really really dissapointed. This ‘change to the UI’ just for the sake of changing them and feeling good has to stop.
Thank you. Atleast not everyone seems to jump my throat for my own, reasonable opinion on the matter.
Personally, I dont like the “lets put more tabs, in tabs of more tabs” mentality. I am looking at you, hero panel.
BUY MORE GOLD button ..
does this mean we can buy gold for IRL money?
You could have done that since forever by buying gems and trading them for gold. I have a weird feeling about that button myself. :/
“mere rework”
If I were the dev who had to rework the entire TP, which they did, I would slap you with a quaggan tail
not to be sarcastic or anything, I do appreciate the rework, in itself, but when it comes down to it, most of it is mere javascript. That certainly isnt rocket science.
what is stopping us…hmm…what could it be….oh yeah, the living story.
I dont think a mere fractal would live up to the real thing, anyways. Plus, they would simply shoot that idea down for the same reason they stopped working on the SAB for now, “it doesnt fit the current living story”.
Just wait for halloween though, because Dragon threat or not, we are celebrating that, whether it fits the story or not. :/ I would sign that off as double standards, in a way. They are certainly playing favorites if they do that, and they are just going to recycle the poopy halloween from last year and not the amazing one from two years ago, sadly.