New endpoints: pvp and char specializations

New endpoints: pvp and char specializations

in API Development

Posted by: Lawton Campbell

Lawton Campbell

Web Programmer

Next

Just turned on a couple of new endpoints:

/v2/pvp/stats

Requires “pvp” permission.

Dumps a bunch of aggregate pvp data — basically some of the stuff that’s displayed in the in-game UI. Some of it’s missing (e.g., fav map, etc). Consider this an initial pass — going to try to add more details here at some point.

/v2/pvp/games

Requires “pvp” permission.

Dumps the most recent pvp games played. This is a very very initial implementation; there honestly isn’t much useful here right now. There’s a lot more I want to do with this endpoint, but data needs to be plumbed through multiple services owned by multiple teams (who are all already busy) so it’s going to take some time.

As an important note, this endpoint only serves the 10 most recent games (that have occurred within the last 30 days, IIRC). I realize this is terrible and would like to make it a bit more reasonable, but it’s gonna take some time to get better data retention. Highly recommend any applications interested in this data use a server component which periodically polls+persists the endpoint data.

/v2/characters/:id/specializations

Requires “builds” permission.

The specializations are available in both /v2/characters (in the .specializations field) and in /v2/characters/:id/specializations. Data is provided for all of PvE, PvP and WvW builds (specializations can be cross-referenced against /v2/specializations, traits against /v2/traits which I just turned on).

Skills and PvP equipment will be coming at some point in the future but probably not this month (sorry!).

Questions/comments?

(edited by Lawton Campbell.8517)

New endpoints: pvp and char specializations

in API Development

Posted by: Archomeda.6472

Archomeda.6472

As an important note, this endpoint only serves the 10 most recent games (that have occurred within the last 30 days, IIRC).

Hmm, apparently I have 10 matches listed, and the dates range from 2015-07-12T02:27:08.000Z to 2015-07-14T03:09:30.000Z. So it would seem that the retention is higher than 30 days

Edit: A question, what are the possibilities of the results? Currently I have Buy, Defeat, Victory and Forfeit. And what triggers what to show up?
Edit2: I also saw that I’ve had a couple matches of which neither team has reached 500 points. These matches have the map 1011, I’m assuming that’s Battle of the Champion’s Dusk? It’s not yet listed in /v2/maps.

(edited by Archomeda.6472)

New endpoints: pvp and char specializations

in API Development

Posted by: queicherius.2563

queicherius.2563

Wooo! Finally sharing with traits! Thank you so much for this.

New endpoints: pvp and char specializations

in API Development

Posted by: Lawton Campbell

Previous

Lawton Campbell

Web Programmer

Next

As an important note, this endpoint only serves the 10 most recent games (that have occurred within the last 30 days, IIRC).

Hmm, apparently I have 10 matches listed, and the dates range from 2015-07-12T02:27:08.000Z to 2015-07-14T03:09:30.000Z. So it would seem that the retention is higher than 30 days

Uhh maybe it’s 90 days. Will double-check and get back to you.

Edit: A question, what are the possibilities of the results? Currently I have Buy, Defeat, Victory and Forfeit. And what triggers what to show up?

Eww gross, I missed a “Buy” typo coming from our upstream data source. I’m going to patch that to “Bye”. There’s also “Desertion”.

I’m not sure what bye/desertion mean TBH.

Edit2: I also saw that I’ve had a couple matches of which neither team has reached 500 points. These matches have the map 1011, I’m assuming that’s Battle of the Champion’s Dusk? It’s not yet listed in /v2/maps.

I’ll whitelist the map in a sec, pretty sure that’s the stronghold map. When neither team has 500 points it means the timer was hit.

New endpoints: pvp and char specializations

in API Development

Posted by: Lawton Campbell

Previous

Lawton Campbell

Web Programmer

Next

Wooo! Finally sharing with traits! Thank you so much for this.

Woot! That was really fast

New endpoints: pvp and char specializations

in API Development

Posted by: stress level zero.4907

stress level zero.4907

Cool, thanks Lawton.

(You’re took fast! I can only work so fast :-)).

Guild Wars 2 Armory

Find, view, and share user profiles, characters, and guilds on your pc and mobile.

(edited by stress level zero.4907)

New endpoints: pvp and char specializations

in API Development

Posted by: Archomeda.6472

Archomeda.6472

Nice. Thanks for looking into it

New endpoints: pvp and char specializations

in API Development

Posted by: Nabrok.9023

Nabrok.9023

I’m not sure what bye/desertion mean TBH.

“Bye” is when somebody on opposing team disconnects and you win. “Desertion” is when somebody on your team disconnects and you lose.

“I’m not a PvE, WvW, or PvP player – I am a Guild Wars 2 player”
Tarnished Coast – Dissentient [DIS]
All classes

New endpoints: pvp and char specializations

in API Development

Posted by: Dawntree.7246

Dawntree.7246

As an important note, this endpoint only serves the 10 most recent games (that have occurred within the last 30 days, IIRC).

Hmm, apparently I have 10 matches listed, and the dates range from 2015-07-12T02:27:08.000Z to 2015-07-14T03:09:30.000Z. So it would seem that the retention is higher than 30 days

Uhh maybe it’s 90 days. Will double-check and get back to you.

I’ve got matches played in January listed (yeah, haven’t played much pvp this year)

BTW, thanks for the awesome work!

Emanuel Dawntree – Nord Guardian of [TasH] – 9×80
Whiteside Ridge

New endpoints: pvp and char specializations

in API Development

Posted by: queicherius.2563

queicherius.2563

Something interesting is going on with my trait ids here

My guess is that that’s a character I didnt log in yet after the change for traits?

New endpoints: pvp and char specializations

in API Development

Posted by: LadyRhonwyn.2501

LadyRhonwyn.2501

I’m not sure what bye/desertion mean TBH.

“Bye” is when somebody on opposing team disconnects and you win. “Desertion” is when somebody on your team disconnects and you lose.

So, when you lose even though there’s a disconnect on the other team (or vice versa), it’s not logged? (yes, it has happened to me…)

New endpoints: pvp and char specializations

in API Development

Posted by: Lawton Campbell

Previous

Lawton Campbell

Web Programmer

Next

Something interesting is going on with my trait ids here

My guess is that that’s a character I didnt log in yet after the change for traits?

UHHH. Looks like we’re reading garbage memory. That’s kind of surprising; I thought the interfaces I was using automatically detect this (apparently not!).

Thanks for the report <3

New endpoints: pvp and char specializations

in API Development

Posted by: Nabrok.9023

Nabrok.9023

I’m not sure what bye/desertion mean TBH.

“Bye” is when somebody on opposing team disconnects and you win. “Desertion” is when somebody on your team disconnects and you lose.

So, when you lose even though there’s a disconnect on the other team (or vice versa), it’s not logged? (yes, it has happened to me…)

If you win as the “4”, or lose as the “5”, then I think it’s just counted as a win or loss.

“I’m not a PvE, WvW, or PvP player – I am a Guild Wars 2 player”
Tarnished Coast – Dissentient [DIS]
All classes

New endpoints: pvp and char specializations

in API Development

Posted by: sookya.8625

sookya.8625

Hey Lawton,

is it possible to add the Character ID (next to profession) to the PVP-Game-API? With only having the profession, there is no possibility to check with which character the person played, if he has more than one character per profession (2 guards for example).

That would be super cool

Greetings
Chris

Moona @Kodash[DE]
GuildWars2 sPvP-Tracker: http://www.gw2pvp.de
Tradingpost in your Pocket: http://www.tp2go.de

New endpoints: pvp and char specializations

in API Development

Posted by: queicherius.2563

queicherius.2563

I have a few questions about how the pvp/stats API works. Let’s talk about these stats from one of my users (raw data here).

  • Do “Solo Ranked” and “Team Ranked” get added together for the “Ranked” ladder? If yes, what are the 49 “Ranked” matches, that are additional if you add “solo” and “team” together? Based on the raw data: (282+288+2+1)-(75+74+185+190) = 49. What exactly are the definitions of these ladders?
  • Assuming that “solo ranked” and “team ranked” are included in the “ranked” matches, the aggregate number does not match up with the ladders number: (567+503+6+23+17)-(282+288+2+1+213+157+6+21+16) = 130. Are these custom arenas?
  • What is the “none” ladder for?

Edit: While I am at it, the timezone offeset for the played matches seems wrong. The match I played a few minutes ago is dated “2015-09-10T18:34:54.000Z”, when it should be “2015-09-10T10:34:54.000Z” or “2015-09-10T18:44:54+08:00”.

Thanks for all the new APIs, it’s a blast building stuff with it.

(edited by queicherius.2563)

New endpoints: pvp and char specializations

in API Development

Posted by: Lawton Campbell

Previous

Lawton Campbell

Web Programmer

Next

is it possible to add the Character ID (next to profession) to the PVP-Game-API? With only having the profession, there is no possibility to check with which character the person played, if he has more than one character per profession (2 guards for example).

Planning on adding that at some point in the future. This data is coming from the MMR component which doesn’t currently care about character names so it doesn’t have the data. Gonna take awhile to get all the good stuff (character names and builds) plumbed through the system.

  • Do “Solo Ranked” and “Team Ranked” get added together for the “Ranked” ladder? If yes, what are the 49 “Ranked” matches, that are additional if you add “solo” and “team” together? Based on the raw data: (282+288+2+1)-(75+74+185+190) = 49. What exactly are the definitions of these ladders?
  • Assuming that “solo ranked” and “team ranked” are included in the “ranked” matches, the aggregate number does not match up with the ladders number: (567+503+6+23+17)-(282+288+2+1+213+157+6+21+16) = 130. Are these custom arenas?

So, back in the days of glory there were two game modes — soloq and team (“solo ranked” and “team ranked”). These are distinct from the modes we have now — unranked and ranked. New accounts won’t have the former but old accounts have their old data still in the system.

AFAIK custom arenas are tracked in the other aggregates, but not in the ladders.

  • What is the “none” ladder for?

I’m not entirely sure actually. I think it’s debris from a bug at some point.

Edit: While I am at it, the timezone offeset for the played matches seems wrong. The match I played a few minutes ago is dated “2015-09-10T18:34:54.000Z”, when it should be “2015-09-10T10:34:54.000Z” or “2015-09-10T18:44:54+08:00”.

Ick, I wonder where that’s coming from. Should be able to bandaid that sometime next week.

New endpoints: pvp and char specializations

in API Development

Posted by: MarkPhilips.5169

MarkPhilips.5169

Wow, really good.

I find especially useful for ranked and unranked games a better separation in the latest matches

It would be really interesting tracking roster compositions for every game (which profession people used, especially for ranked/unranked) and the stats pvp team lately added in the game (like total damage done etc.) that we can hardly analyze at the end of the match.

Other super useful thing it would be the roster size for ranked and unranked games, example grp of 3 people + 2 soloers for every team.

I think with the pvp leagues incoming the entire section could be really interesting and useful to monitor progressions.

Good job

(edited by MarkPhilips.5169)

New endpoints: pvp and char specializations

in API Development

Posted by: zweiter.1267

zweiter.1267

Hey Lawton

Planning on adding that at some point in the future. This data is coming from the MMR component which doesn’t currently care about character names so it doesn’t have the data. Gonna take awhile to get all the good stuff (character names and builds) plumbed through the system.

thanks for your reply. So I wait some time and hope, that this feature comes at a time not so far far away…

In addition to this, it would be super cool, if the api delivers the team- and enemy-team composition (only the professions, not the character names/id’s).

Best Wishes
Chris

New endpoints: pvp and char specializations

in API Development

Posted by: sookya.8625

sookya.8625

Whoops, that should be posted with my main-account -.- Sorry

Moona @Kodash[DE]
GuildWars2 sPvP-Tracker: http://www.gw2pvp.de
Tradingpost in your Pocket: http://www.tp2go.de

(edited by sookya.8625)

New endpoints: pvp and char specializations

in API Development

Posted by: Lawton Campbell

Previous

Lawton Campbell

Web Programmer

Next

It would be really interesting tracking roster compositions for every game (which profession people used, especially for ranked/unranked) and the stats pvp team lately added in the game (like total damage done etc.) that we can hardly analyze at the end of the match.

In addition to this, it would be super cool, if the api delivers the team- and enemy-team composition (only the professions, not the character names/id’s).

We’ll add those in at some point; it’s probably gonna be a month or two from now though ;_;

New endpoints: pvp and char specializations

in API Development

Posted by: Patches.7584

Patches.7584

Does the game keep track “Top X” awards internally? eg: Top Condition Damage Received.

I’m curious if this will ever be available in the API.

It’d be neat to get it via pvp/games, but a counter in pvp/stats would be cool as well.

New endpoints: pvp and char specializations

in API Development

Posted by: Nabrok.9023

Nabrok.9023

Does the game keep track “Top X” awards internally? eg: Top Condition Damage Received.

I’m curious if this will ever be available in the API.

It’d be neat to get it via pvp/games, but a counter in pvp/stats would be cool as well.

That stuff really should be available in game for at least the last match you were in. As it is you have about 5 seconds to look at it before it’s gone forever.

“I’m not a PvE, WvW, or PvP player – I am a Guild Wars 2 player”
Tarnished Coast – Dissentient [DIS]
All classes

New endpoints: pvp and char specializations

in API Development

Posted by: Lawton Campbell

Previous

Lawton Campbell

Web Programmer

Next

Does the game keep track “Top X” awards internally? eg: Top Condition Damage Received.

I’m curious if this will ever be available in the API.

It’d be neat to get it via pvp/games, but a counter in pvp/stats would be cool as well.

That stuff really should be available in game for at least the last match you were in. As it is you have about 5 seconds to look at it before it’s gone forever.

Yeah, AFAIK it’s currently only tracked by the map instance server and not persisted anywhere. Might take a look at the current state of all the pvp stuff next week, I really want match rosters.

New endpoints: pvp and char specializations

in API Development

Posted by: Ryan.9387

Ryan.9387

The aggregate data for https://account.arena.net/applications is incorrect/out of date.

My current PvP stats from the in game window are different
Ranger : 3834
From the API : 3701

This difference of some number exists across multiple API keys and professions.

EDIT: I didn’t take into account byes/forfeits/desertions.

Ranger | Elementalist

(edited by Ryan.9387)

New endpoints: pvp and char specializations

in API Development

Posted by: Lawton Campbell

Previous

Lawton Campbell

Web Programmer

Next

My current PvP stats from the in game window are different
Ranger : 3834
From the API : 3701

Which in-game data are you looking at?

Note that the in-game UI considers a “bye” as a victory and a “forfeit” as a defeat when it displays aggregates — that might be the cause of the discrepancy. Both the in-game UI and the API are pulling from the same internal API, so it’s unlikely they’re out-of-sync.

New endpoints: pvp and char specializations

in API Development

Posted by: fro.8967

fro.8967

the in-game UI considers a “bye” as a victory and a “forfeit” as a defeat

What about desertions?

New endpoints: pvp and char specializations

in API Development

Posted by: Lawton Campbell

Previous

Lawton Campbell

Web Programmer

Next

the in-game UI considers a “bye” as a victory and a “forfeit” as a defeat

What about desertions?

Ah, those are counted as defeats too.

New endpoints: pvp and char specializations

in API Development

Posted by: Ryan.9387

Ryan.9387

My current PvP stats from the in game window are different
Ranger : 3834
From the API : 3701

Which in-game data are you looking at?

Note that the in-game UI considers a “bye” as a victory and a “forfeit” as a defeat when it displays aggregates — that might be the cause of the discrepancy. Both the in-game UI and the API are pulling from the same internal API, so it’s unlikely they’re out-of-sync.

I was looking only at wins and losses. After adding in the byes, forfeits, and desertions I got to the numbers reflected in the in game UI.

Ranger | Elementalist

New endpoints: pvp and char specializations

in API Development

Posted by: Ryan.9387

Ryan.9387

Can we get an idea of the data coming to the pvp api in the coming months? I’m not looking for a date, more so an idea of what will/will not be added long term. The info well help drive the design of my website.

Specifically things like:
Account names for all players
Per player score
The detailed stats tab
Builds
League info

Ranger | Elementalist

New endpoints: pvp and char specializations

in API Development

Posted by: Lawton Campbell

Previous

Lawton Campbell

Web Programmer

Can we get an idea of the data coming to the pvp api in the coming months? I’m not looking for a date, more so an idea of what will/will not be added long term. The info well help drive the design of my website.

Specifically things like:
Account names for all players
Per player score
The detailed stats tab
Builds
League info

Ideally I’d like all of those things in (and more), but I can’t really commit to features or a timeline. Especially when it’s the competitive team doing all the backend work for me on those parts