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

Dota 2 Match History WebAPI

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

  • another question: How to get BAN/PICK in Captain's Mode?
    sorry for my bad English ...

    From Vietnam with Love - Lagest DOTA 2 Community in Vietnam: DotA-2.Vn

    Comment


    • Originally posted by Wyrm View Post
      Confirmed that they don't differ in the 463 games I'm playing with at the moment.
      Seems to be some kind of bug for radiant/dire baracks status. But here's how you'll get 63 with bitwise operation based on values actually used into replays (dem) for DOTA_CHAT_MESSAGE.CHAT_MESSAGE_BARRACKS_KILL.
      => 1 + 2 + 4 + 8 + 16 + 32 = 63 => all dire baracks killed
      => 16 + 32 = 48 => should be dire top raxs
      Code:
      { 1, new Tuple<string, string, string>(dire, bot, melee) },
      { 2, new Tuple<string, string, string>(dire, bot, ranged) },
      { 4, new Tuple<string, string, string>(dire, mid, melee) },
      { 8, new Tuple<string, string, string>(dire, mid, ranged) },
      { 16, new Tuple<string, string, string>(dire, top, melee) },
      { 32, new Tuple<string, string, string>(dire, top, ranged) },
      { 64, new Tuple<string, string, string>(radiant, bot, melee) },
      { 128, new Tuple<string, string, string>(radiant, bot, ranged) },
      { 256, new Tuple<string, string, string>(radiant, mid, melee) },
      { 512, new Tuple<string, string, string>(radiant, mid, ranged) },
      { 1024, new Tuple<string, string, string>(radiant, top, melee) },
      { 2048, new Tuple<string, string, string>(radiant, top, ranged) }

      Comment


      • Originally posted by papa_pointnet View Post
        Seems to be some kind of bug for radiant/dire baracks status. But here's how you'll get 63 with bitwise operation based on values actually used into replays (dem) for DOTA_CHAT_MESSAGE.CHAT_MESSAGE_BARRACKS_KILL.
        => 1 + 2 + 4 + 8 + 16 + 32 = 63 => all dire baracks killed
        => 16 + 32 = 48 => should be dire top raxs
        I understand how you can get 63 as a 6 bit binary representation of which rax are up; my issue was more the bug than the maths if you like - 63 is all rax up yet there are 2 games (and likely many more) which have 63 despite dire having lost rax left right and/or centre. The fact that there is never a difference (in at least the games I'm currently using as a test set) between the radiant (which is correct) and dire values would strongly support that somewhere the generating code is wrong and it's giving the radiant value for both dire and radiant rax status.

        Also I believe that 63 is all alive, while 0 is all dead so your maths section needs to be inverted somewhat.

        Comment


        • matches_requested is not working, im testing it right now:

          https://api.steampowered.com/IDOTA2Match_570/GetMatchHistory/V001/?format=XML&player_name=<name>
          &matches_requested=5&key=<key>

          One more thing, what is this account_id? I had tried my account, and a lot of more information, and nothing works.

          Comment


          • Account ID is your Steam ID's account ID portion - the lower 32 bits.

            Comment


            • Originally posted by hor View Post
              One more thing, what is this account_id? I had tried my account, and a lot of more information, and nothing works.
              I find it really frustrating when people don't take the time to read through the thread before asking a question.

              A whole heaping load of information has been covered throughout the past 13 pages, and it's very inconsiderate of people to ask a question before trying to find the answer themselves.

              Please don't expect someone else to do the work for you. I don't think I'm asking for a lot here.

              Comment


              • Originally posted by sinbu View Post
                Does anyone know where you can find images for the heroes and items like the stats screen in game?
                As far as I know they're not available online..
                Tho to get them:
                -Download GCFScape (http://nemesis.thewavelength.net/index.php?p=26)
                -Use GCFScape to open "**path_to_steam**\Steam\steamapps\common\dota 2 beta\dota\pak01_dir.vpk"
                -Extract the images from "root/resource/flash3/images"
                The API Bible: Things You Should Know Before Starting API Development

                Comment


                • Originally posted by Netshroud View Post
                  How can I pivot from this to the images in the vpk /resource/flash3/heroes and /resource/flash3/items ?
                  Firstly; To make life marginally easier for you, you can get the hero list from here: http://api.steampowered.com/IEconDOT...s&key=XXXXXXXX

                  Secondly; You'll find that
                  -items are named as follows: "item_XXXXX" (i.e. item_blink)
                  -heroes are named as follows: "npc_hero_dota_XXXXX" (i.e. npc_hero_dota_ancient_apparition)

                  all you need to do is remove "item_" and "npc_hero_dota_" from the name and you'll have the image name.

                  *Edit:*
                  This also takes care of heroes that have different localized names and code-names (i.e. nature's prophet (called furion in files) or clockwerk (called rattletrap))
                  The API Bible: Things You Should Know Before Starting API Development

                  Comment


                  • Hey guys,

                    I made a very simple PHP library for this API: https://gist.github.com/3159845
                    Feel free to use it however you want it .

                    Comment


                    • I'm trying to fetch games from a specific account using this call:

                      Code:
                      https://api.steampowered.com/IDOTA2Match_570/GetMatchDetails/V001/?account_id=90446736&key=[my-key]
                      But I'm getting a 404 Not Found response from the Steam servers. Is anything wrong my call? According the first post, this is supposed to be the way to query for a users matches.

                      Thanks for the help!

                      Edit, STILL hungover. I was using the "GetMatchDetails" instead of "GetMatchSummary" call. Woops!
                      Last edited by papuccino1; 07-22-2012, 09:52 AM.

                      Comment


                      • Would anybody be intrested in a Python interface to this API? I was planning on writing one for a project I'm working on and I could clean it up and release it if anyone is interested.
                        Steam Profile
                        Python Interface to the Stats API
                        Suggestion: Courier Shift-Queue Improvements
                        Make Disablehelp work on Decrepify
                        Useful link for mute system supporters

                        Comment


                        • for anyone who's interested,
                          for tower_status_radiant and tower_status_dire, the bits are as follows
                          ANCIENT TOP
                          ANCIENT BOTTOM
                          TOP 3
                          TOP 2
                          TOP 1
                          MIDDLE 3
                          MIDDLE 2
                          MIDDLE 1
                          BOTTOM 3
                          BOTTOM 2
                          BOTTOM 1

                          i.e.
                          a value of 544 = 01000100000
                          means that a team has their bottom-most ancient tower and their middle tier 3 left.

                          a value of 1824 = 11100100100
                          means that a team has both their ancient towers, their middle tier 3 and bottom tier 3 left.

                          a value of 6 = 00000000110
                          means that a team has just got their bottom tier 3 and bottom tier 2 left.
                          The API Bible: Things You Should Know Before Starting API Development

                          Comment


                          • Originally posted by MuppetMaster42 View Post
                            for anyone who's interested,
                            for tower_status_radiant and tower_status_dire, the bits are as follows
                            ANCIENT TOP
                            ANCIENT BOTTOM
                            TOP 3
                            TOP 2
                            TOP 1
                            MIDDLE 3
                            MIDDLE 2
                            MIDDLE 1
                            BOTTOM 3
                            BOTTOM 2
                            BOTTOM 1

                            i.e.
                            a value of 544 = 01000100000
                            means that a team has their bottom-most ancient tower and their middle tier 3 left.

                            a value of 1824 = 11100100100
                            means that a team has both their ancient towers, their middle tier 3 and bottom tier 3 left.

                            a value of 6 = 00000000110
                            means that a team has just got their bottom tier 3 and bottom tier 2 left.
                            I Still can't get this; =O
                            Already feeling a dumb but, there is a way to explain this again/better/different?
                            I Understand that we need to convert the number that the API return to binary.

                            But I can't understand how put the builds in that numbers, I mean.
                            Why 544 mean means that a team has their bottom-most ancient tower and their middle tier 3 left.?
                            Can you put a example where all builds are up, all tier 2 up, all tier 3 up and finally all builds are destroyed?

                            Comment


                            • I can't understand the DATE Value too =S;

                              Sorry for so many noob questions, but I'm not a great programmer I'm doing this as my first lesson with an API;

                              Comment


                              • Originally posted by IceHaku View Post
                                I can't understand the DATE Value too =S;

                                Sorry for so many noob questions, but I'm not a great programmer I'm doing this as my first lesson with an API;
                                Do you mean date_min and date_max?
                                If so, those are unix timestamps. What it is, it's basically count in seconds from 1st of January 1970.
                                Which means that 1 january 1970 = 0.

                                If you are using PHP you can do time() to retrieve the current timestamp.
                                With java or javascript you can do new Date().getTime().

                                Hope that answers it

                                Comment

                                Working...
                                X