SuperEvilMegacorp / vainglory-assets

Community provided art, schemas, and other assets that make using the Vainglory API easier
https://developer.vainglorygame.com
MIT License
54 stars 40 forks source link

[Match|Telemetry] Inconsistent Item Names #284

Closed ghost closed 7 years ago

ghost commented 7 years ago

Curl:

curl "https://api.dc01.gamelockerapp.com/shards/na/matches/25602cc0-8dc6-11e7-bf88-0667892d829e" \
  -H "Authorization: Bearer API_KEY" \
  -H "Accept: application/vnd.api+json" | jq .

There are 2 different ways items are named: 1. items

          "items": [
            "Breaking Point",
            "Serpent Mask",
            "Travel Boots",
            "Aegis",
            "Six Sins",
            "Heavy Steel"
          ],

2. Used by itemGrants, itemSells, itemUses, Telemetry Item Events

          "itemGrants": {
            "*Item_Aegis*": 1,
            "*Item_BreakingPoint*": 1,
            "*Item_HalcyonPotion*": 2,
            "*Item_HeavySteel*": 1,
            "*Item_Oakheart*": 1,
            "*Item_SerpentMask*": 1,
            "*Item_SixSins*": 1,
            "*Item_SprintBoots*": 1,
            "*Item_TravelBoots*": 1,
            "*Item_WeaponBlade*": 2
          },

The 1st way of naming items is better than the 2nd and should be used everywhere.

svperfecta commented 7 years ago

Hrm. The inconsistency is definitely annoying, and we can fix it. That said, is the first better? The latter can be treated as a symbol, the first is really a string. Not sure.

ghost commented 7 years ago

I find the first one easier to work with since it does not require further Dictionaries/cleanup. Anyway, I am fine with anything as long as it is consistent!

svperfecta commented 7 years ago

Hey @anaggh We had a short discussion in Discord about this, and I believe the thought at the moment is that changing this, at this point, would break almost every current project using the data. There are dictionaries in the repo here that you can use to map this one way or another. If they are adopted, the API could start (optionally) applying them server-side. However, I'd like to see them actively maintained for a few months before we do that work.

I'd like to close this for now and mention that it's a great idea, and ideally should have been done from the beginning, but might be a relic that the general community doesn't want to change.