Announcement

Collapse

Forum Rules

  • No flaming or derogatory remarks, directly or through insinuation.
  • No discussion, sharing or referencing illegal software such as hacks, keygen, cracks and pirated software.
  • No offensive contents, including but not limited to, racism, gore or pornography.
  • No excessive spam/meme, i.e. copious one liners in a short period of time, typing with all caps or posting meme responses (text/image).
  • No trolling, including but not limited to, flame incitation, user provocation or false information distribution.
  • No link spamming or signature advertisements for content not specific to Dota 2.
  • No Dota 2 key requests, sell, trade etc.
  • You may not create multiple accounts for any purpose, including ban evasion, unless expressly permitted by a moderator.

  • Please search before posting. One thread per issue. Do not create another thread if there is an existing one already.
  • Before posting anything, make sure you check out all sticky threads (e.g., this). Do not create new threads about closed ones.
  • It is extremely important that you post in correct forum section.

  • Balance discussion only in Misc.
  • All art related (such as hero model) feedbacks go to Art Feedback Forum.
  • All matchmaking feedback should go here: Matchmaking Feedback
  • All report/low priority issues should go here: Commend/Report/Ban Feedback
  • No specific workshop item feedback. These should go to workshop page of that item.
  • When posting in non-bugs section (such as this), use [Bugs], [Discussion] or [Suggestion] prefix in your thread name.



In case you object some action by a moderator, please contact him directly through PM and explain your concerns politely. If you are still unable to resolve the issue, contact an administrator. Do not drag these issues in public.



All rules are meant to augment common sense, please use them when not conflicted with aforementioned policies.
See more
See less

Known bugs

Collapse
This is a sticky topic.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Wyrm
    replied
    Since the API has come back up, I'll start work on keeping this post up to date again. Any bugs or fixes - post below!

    Leave a comment:


  • walkingcarpet
    replied
    Minor thing but in the match start time field name differs between GetMatchDetails and GetMatchHistory.

    In GetMatchDetails it is 'starttime' and in GetMatchHistory 'start_time'

    Leave a comment:


  • Wyrm
    started a topic Known bugs

    Known bugs

    Current requested features
    Request additional feature

    If anyone wants to add to the list, post below and I'll update accordingly. If there is anything which won't get fixed/changed, I'll update to mark things as such following an "official" post.

    Feature requests (anyone who fancies putting them into the above form will have my thanks!)
    1. More consistency - see here
    2. game_start_time for modes with variable hero selection times (ie CM/reverse CM)
    3. CS indicator (at 10 minute mark perhaps)
    4. Actions per minute
    5. Number of wards placed (in a manner which is safe from spamming - wards placed where there isn't ward coverage already perhaps, or simply give location of ward placement)
    6. Breakdown of which hero killed/assisted each kill which
    7. "Match counted" boolean/a documented way to accurately determine whether a player received a win, loss or no lifetime statistic change from the result of their match.
    8. API for accessing player profiles public (level, xp, featured heroes, etc)
    9. Item purchases (and sales) at times, as with skills
    10. Items in stash/courier
    11. Ownership of pooled items (ie rapier/gem/consumables)
    12. Add matchmaking pool to MatchDetails
    13. GetItems (and GetAbilities) APIs. Currently there's both GetHeroes and GetLeagueListing, but for items we still need to download Dota 2, extract items.txt, grab dota_<language>.txt and parse them ourselves. Currently there's no official automated way to do this and no first-party VPK utility works with Dota 2. Ideally including a patch parameter to get correct values for previous versions.
    14. Roshan death times, to which team and who got aegis (and cheese) and when did they lose it

    Major
    1. barracks_status_dire is now occasionally a copy of barracks_status_radiant. Very inconsistent behavior even on the same request!? - see here and just before.
    2. game_mode parameter ignored in GetMatchHistory
    3. GetTeamInfoByTeamID errors if there don't exist enough teams to "fill" the query
    4. IEconDOTA2_<ID>/GetRarities's "count" is incorrect, it doesn't match up the amount of 'rarities' returned. The rarities array doesn't include "Immortal", so "count" probably is right and the lack of "Immortal" is the bug

    Minor
    1. GetTeamInfoByTeamID has a wrongly named error - "statusDetail": "Error retrieving match data."
    2. GetLeagueListing's array of leagues doesn't match the order inside Dota 2 either forwards or backwards. From what I can tell, in the game the leagues are sorted in reverse by defindex from items_game.txt, but in the API they seem to be not quite in order. Sorting by league ID doesn't help because some of them are out of order, notable the > 65000 ones.
    3. GetLeagueListing and GetLiveLeagueGames both show no parameters on ISteamWebAPIUtil/GetSupportedAPIList. GetLeagueListing seems to support 'language' at least, and both require 'key'.
    4. Swapping heroes mucks up ability skilling.
    5. GetMatchHistory can return matches which GetMatchDetails does not let you view (401 Unauthorised). Match ID for example: 123110537.

    Inconsistencies
    1. tower_state" in GetLiveLeagueGames compared to GetMatchDetails's "tower_status_radiant" and "tower_status_dire"
    2. Non standard error codes/behaviour
      1. ISteamUser/GetPlayerSummaries return's "response": "players" array, and if there is nothing - array is empty and http status code 200
      2. IDOTA2Match_570/GetMatchHistory return's "result" and have "status" (which in my opinion is the right approach) + "statusDetail" if something wrong.
      3. IDOTA2Match_570/GetMatchDetails return "result" and don't have "status". So if i request not existing match "api.steampowered.com/IDOTA2Match_570/GetMatchDetails/v0001/?match_id=1&key=xxxx" i'm getting onlu "{ }" and 500 http error - the same when the API was down.
      4. ISteamRemoteStorage/GetUGCFileDetails returns "data" and have "status" only if bad request. And for not existing file "api.steampowered.com/ISteamRemoteStorage/GetUGCFileDetails/v1/?key=XXX&appid=570&ugcid=1" i'm getting status: { "code": 9 } and http 404 error.
    3. GetMatchHistoryBySequenceNum returns practically the same data per match as GetMatchDetails (barring one attribute iirc), whereas GetMatchHistory is more just a list of appids to be parsed by GetMatchDetails. By it's name, I would've expected it to return results in a more similar format to GetMatchHistory.
    4. GetLiveLeagueGames' tower_state vs GetMatchDetails' (tower|barracks)_status_(radiant|dire)
    5. GetLiveLeagueGames returning team information but none of the other methods doing so
    6. GetMatchHistory has 'num_results', 'total_results', 'results_remaining', whereas GetMatchHistoryBySequenceNum has none of those.
    7. GetMatchDetails -> results -> picks_bans, has the attribute "team" with the values 0 and 1; but instead of a 'winner' attribute matching that format there's the boolean "radiant_win".
    8. Versioning - potentially function breaking changes are made without updating the version number
    9. When using XML in GetMatchDetails and GetMatchHistoryBySequenceNum, <ability> gets used as both the grouping for each skill point selection as well as the listing for what ability gets selected.It would be convenient if they could use different tags (eg "ability_id" and "ability").
    10. GetTeamInfoByTeamID is not descriptive as per the function it provides. It's name suggests it should take a single parameter, team_id and return only information on the team(s) queried.

    Fixed
    • Week of the 31/01/13 patch
      • barracks_status_dire is no longer a copy of barracks_status_radiant
      • GetMatchDetails doesn't use 'starttime' compared to GetMatchHistory using 'start_time' - both use 'start_time' now
      • Matches should display ability_usage correctly
      • test clientleague_id is used in both matchDetails and GetLeagueListing (was leagueid in GetLeagueListing)
    • Week of the 07/02/13 patch
    Last edited by Wyrm; 03-20-2013, 01:29 PM.
Working...
X