Ability Structure for Warcraft 3 TFT 1.26

This is a discussion on Ability Structure for Warcraft 3 TFT 1.26 within the Warcraft 3 Hacks, bots and tools board part of the Warcraft 3 forum category; I've been interested in writing a warcraft 3 tool to duplicate the NGL infobar that shows player heroes, items, food ...

Results 1 to 1 of 1
  1. #1
    merlin is offline Newbie
    Array
    Join Date
    Aug 2008
    Posts
    5
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Rep Power
    0
    Reputation
    0

    Ability Structure for Warcraft 3 TFT 1.26

    I've been interested in writing a warcraft 3 tool to duplicate the NGL infobar that shows player heroes, items, food usage, and other stats while you watch a replay. However I am new to making these kinds of tools and I got stuck at the very beginning and would like to ask for help. I first checked DarkSupremo's open mh tool but it didn't give me any info on this.

    I have attached a sample 1.26 replay which I am analyzing.

    Header

    FE FF FF FF 2E 3F 41 56 43 41 62 69 6C 69 74 79 48 65 72 6F 40 40 00 00 00 00 00 00 00 00 00 00 90 28 04 00

    These bytes say AVCAbilityHero and are used to mark the beginning of the hero ability data structure. The exact starting address changes every time a new replay is loaded, so this string has to be searched for. (I searched this string on google and got some chinese site that I didn't understand at all.)

    Following this string are the Hero Ability Structures, each one constant 324 bytes in length. I thought they were organized by player so that player 1 heroes are all followed by player 2 heroes, but in fact they are added in the order the heroes are trained in the game. So for this game the Death Knight leaves the altar about a second before the Archmage and so his Structure appears first followed by the Archmage, then the Mountain King then Lich since that is the order the heroes are trained in.

    So I am completely stuck since I don't know which heroes correspond to which player and despite looking really hard I can't find an offset in this structure which identifies the player number (I tried comparing the DK and Archmage Structures but didn't find a 0 in one spot and a 1 in the other or a 1 in one and 2 in the other). I am absolutely stuck and do not know what to do from here, I don't even understand what most of the numbers in this Structure are supposed to do. Please give me some advice if you can, here are the offsets I figured out so far:

    Hero Ability Struct
    0x3c - The letters reHA which I think is a code indicating the unit is a hero, so it's possible this structure is actually a special case of a unit type structure?
    0x94 - Current hero experience as a 4-byte int
    0x98 - Current hero unspent skill points as a 4-byte int
    0xFC - An array of 4 characters each one 4 characters long showing the ability codes for that hero in little endian order (who ever heard of little endian strings??). For this replay the value is: cdUA pdUA uaUA naUA corresponding to Death Coil, Death Pact, Unholy Aura, and Animate Dead.

    I think hero mana and health are stored in a completely different area but then again not too sure. Also if anyone could recommend some tools to use for this process please do, I'm currently using MHS because I think Ollydbg is kind of clunky but if you have advice please let me know.

    Attached Files

Similar Threads

  1. The ability range indicator thread?
    By XplittR in forum Heroes of Newerth Tools
    Replies: 71
    Last Post: 12-08-2010, 06:41 PM
  2. Mount Ability at Lvl 1
    By MickeyMouse in forum WoW Private Servers
    Replies: 0
    Last Post: 04-29-2009, 11:42 PM
  3. Moltiple Shot Ability
    By GodOfWar in forum Warcraft 3 Custom Maps
    Replies: 0
    Last Post: 06-05-2008, 01:44 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •