Valhalla Legends Forums Archive | Battle.net Bot Development | SID_WARCRAFTGENERAL data display

AuthorMessageTime
Barabajagal
I'm adding support for Warcraft III Stats information (SID_WARCRAFTGENERAL), but I've never played enough of the game to understand how all this information is displayed.The main problem is  the "XP Decay"... I'm guessing to get to the next level, you need more experience, but that a certain amount of experience disappears after a certain amount of time, which I guess is that blue bar behind the level on profiles/web profiles. How the hell does this work?

Also, is there a way to get all the Profile Images (like this one) from the server? I noticed the 0x09 subcommand ID (Icon list request), but there's no info on the result.
February 15, 2007, 3:41 PM
Spht
[quote author=[RealityRipple] link=topic=16325.msg164922#msg164922 date=1171554087]
Also, is there a way to get all the Profile Images (like this one) from the server? I noticed the 0x09 subcommand ID (Icon list request), but there's no info on the result.
[/quote]

Well the folder and filename correspond to the game and the user's icon, both of which is available when you request info on a user, so you can just download them from the website.  May be good idea to cache them as they are downloaded to save bandwidth
February 15, 2007, 6:24 PM
Myndfyr
[quote author=[RealityRipple] link=topic=16325.msg164922#msg164922 date=1171554087]
I'm adding support for Warcraft III Stats information (SID_WARCRAFTGENERAL), but I've never played enough of the game to understand how all this information is displayed.The main problem is  the "XP Decay"... I'm guessing to get to the next level, you need more experience, but that a certain amount of experience disappears after a certain amount of time, which I guess is that blue bar behind the level on profiles/web profiles. How the hell does this work?

Also, is there a way to get all the Profile Images (like this one) from the server? I noticed the 0x09 subcommand ID (Icon list request), but there's no info on the result.
[/quote]

Here's a Warcraft III profile display in an old, old version of a bot that was privately used by my old clan:
[img]http://69.80.208.225/armabotnet/wwwroot/img/ArmaBot-AT-Profile.jpg[/img]
[img]http://69.80.208.225/armabotnet/wwwroot/img/ArmaBot-Personal-Profile.jpg[/img]

XP decay happens once you hit level 10 - after a certain amount of non-play, you lose experience.  That's the "Hours to XP decay" field documented in BnetDocs.
February 15, 2007, 7:58 PM
Barabajagal
I already have my interface designed, I just don't understand how XP Decay and that blue progress bar work. Someone with an XP Decay of "5 Days" in their web profile returned "11" as an XP Decay result.

[hr]

Working on parsing the 0x09 response, since http://bnetdocs.valhallalegends.com/content.php?Section=m&Code=440 gives no info on it.

Here's what I have so far:

[quote author=SID_WARCRAFTGENERAL_0x09]
(DWORD) Cookie
(DWORD) Unknown (0)
(BYTE) Tiers? (5/6 [depending on war3/w3xp])
(BYTE) Icon Count
For each icon
- (DWORD) Icon [W3XX]
- (DWORD) Name [nmyr, hrif, etc..]
- (BYTE) Race (From 0 to 4/5, Random, Human, Orc, Undead, Night Elf [, Tournament])
- (WORD) Minimum game win requirement.
- (BYTE) Unknown(0)
[/quote]

Note that it skips tier 1 altogether, because it's always the grunt icon.

[hr]

A few other notes... These only work for the client you're currently on (WAR3 users can only get War3 info, W3XP only gets w3xp). Also, I've been randomly getting timed out when downloading some of the icons (probably cause I'm on dial up).

[size=1]MyndFyre edit: combined a triple post.  Please utilize the "modify" feature.[/size]

EDIT: Sorry for the multiple posting...

Perhaps the unknown byte is whether or not the icon can be used? I can't test this, as I don't have a working copy of Warcraft III. Maybe someone else can test it for me?
February 15, 2007, 8:15 PM
Barabajagal
Sorry for double-posting, but I have two more questions (and a restate of a question)...

Does the actual client download the character images from the bnet site (like http://www.battle.net/war3/ladder/portraits/animated/w3xp/W3O1.gif for peon)? or do they get them some other way?

I take it from your screen shot that Tournament scores don't count in the total. Is that correct? I can't seem to view web profiles currently (every profile i try to view or search for returns with an error).

Restate: What do the bars behind the level on games mean?
February 17, 2007, 10:37 PM
UserLoser
No, it'd be stupid to download from the webserver.  They're obviously found in War3's MPQ files
February 17, 2007, 10:45 PM
Barabajagal
So it's not likely that they'll change. That's one more question cleared up. Danke.

I think I'll still download and cache them, since the icons are only viewed by Warcraft III users, and only some of the icons are seen.
February 17, 2007, 11:25 PM
Myndfyr
Either way, have the program download them, don't download them and include them in your application.  While this may break the application in the future, at least you wouldn't be violating copyright issues.
February 17, 2007, 11:29 PM
Barabajagal
Well, that's one reason... but the main one is that all the W3XP icons come to 1.5 megs zipped, which (including WAR3 icons) would nearly triple the size of my program.

Now I've got to add Icon Changing to my ToDo list... I'll come back to the level progress bar later... Thanks for your help UserLoser  and MyndFyre. You've both been wonderfully helpful.
February 17, 2007, 11:57 PM
Ersan
That field doesn't appear to be "Hours until XP decay" based on my research back when I cared, I have no idea what it is, but it's definitely not hours until XP decay.

[quote]Restate: What do the bars behind the level on games mean?[/quote]
What bars?
EDIT: Oh the blue bar is just progress to the next level.  It probably has something to do with the unidentified byte.
February 19, 2007, 5:51 PM
Barabajagal
All this would be a lot easier if I could view web profiles and find out what people's stats on there show up as. However, whenever I go to a web profile, I get an error from blizzard. Can anyone else view web profiles, or at least tell me why I can't?

Edit: In fact, clan profiles don't show up either...
February 19, 2007, 11:51 PM
Ersan
No, they aren't working at the moment, even if you could view them they're usually several hours behind actual statistics, why would it be 'easier'?  You need to get Warcraft 3...
February 20, 2007, 12:36 PM
Barabajagal
At the moment, getting warcraft 3 is not possible. The lag time does not matter, as I can view profiles of users who are offline, so their stats will be correct.
February 20, 2007, 12:45 PM
Ersan
It's quite possible, and apparently ladder stats have been down for several days now, so don't expect them to work anytime soon...  You can't see them because they aren't working, end of story.
February 20, 2007, 12:57 PM
BreW
heh, speaking of which, did anyone notice how you can't "http://www.battle.net/war3/ladder/war3-clan-profile.aspx?Gateway=gatewayhere&ClanTag=taghere" it anymore.. it returns an "unexpected error":(
February 21, 2007, 2:30 AM
Barabajagal
That's what we were talking about...
February 21, 2007, 2:38 AM
BreW
oh... haha. I thought you were talking about the warcraft 3 profile screen.
This is what I get for not reading the entire thread. D`oh!
February 21, 2007, 2:46 AM
Barabajagal
I'm trying to add War3 profile support that mimics the game's profiles near exactly. I can't view normal War3 profiles because I don't have the client, and web profiles (individual, and clan) aren't working. Therefore, I'm temporarily at a standstill in production of this feature.
February 21, 2007, 2:53 AM
Ersan
Since you're obviously very thick...  Find someone who has the client and is willing to waste their life giving you random stats.  Anyone who still uses battle.net meets that criteria.
February 21, 2007, 2:56 AM
BreW
https://davnit.net/bnet/vL/index.php?topic=16344.0 ersan hi
February 21, 2007, 3:08 AM
Barabajagal
I see you didn't read the previous posts, either... I've got everything but the "XP Decay" (which apparently isn't really XP decay) and the blue progress bar behind the level done.
February 21, 2007, 3:08 AM
Ersan
Yes, and that information hasn't been publicized, which is why you need to do Research (omfg?) - This requires the client and more than likely some disassembly.
February 21, 2007, 4:10 AM
Barabajagal
Actually, it's all data display, so it shouldn't require any disassembly at all. I already have the packet completely parsed, I just don't know how the client normally displays it. Once again, read a whole topic before replying to it, please.
February 21, 2007, 4:27 AM
Myndfyr
[quote author=Ersan link=topic=16325.msg165319#msg165319 date=1172031019]
Yes, and that information hasn't been publicized, which is why you need to do Research (omfg?) - This requires the client and more than likely some disassembly.
[/quote]

The catch is that the last time I looked at this, the blue bars are only on the web site, not in the client proper, which means that we can't do disassembly.
February 21, 2007, 6:40 AM
Barabajagal
They're not normally displayed in the client? well that makes my job a bit easier then. All I have to do is figure out the XP decay thing, then... I think? Maybe there was something else I missed, too.
February 21, 2007, 8:08 AM
BreW
uh.. The blue bars are displayed on client, too. I myself played Warcraft III myself a long time ago. Reality, can you please paste what you get back from bnet? I believe the XP Decay is sent in a filetime format. And ersan, this doesn't take any dissassembly at all.
February 22, 2007, 12:13 AM
UserLoser
Yes, blue bars are displayed on the client.  They're like a "percentage" you can say.  If blue bar gets full, you move up to the next level.
February 22, 2007, 12:14 AM
Barabajagal
*sigh*... I need the client to get this done right. XP Decay is a byte, definitely not a FILETIME struct. I'll give you an example of what I get back...

Username: MadHorse[LuNaR]@Lordaeron, Frozen Throne. Currently #1 on the Solo Ladder.

Clan Request (the cookie is "CLAN" in a dword):
[code]10  66.53.219.87  63.241.83.12  17  Send 
0000  FF 44 11 00 08 4E 41 4C 43 00 52 4E 4C 50 58 33    .D...NALC.RNLPX3
0010  57                                                W[/code]

Clan Respnse:
[code]11  63.241.83.12  66.53.219.87  147  Recv 
0000  FF 44 93 00 08 4E 41 4C 43 04 32 4E 4C 43 D0 03    .D...NALC.2NLC..
0010  00 00 75 02 00 00 05 B7 14 5F 01 00 1B 00 00 00    ..u......_......
0020  53 4E 4C 43 10 0D 00 00 E5 0A 00 00 0E 8D 81 CF    SNLC............
0030  08 00 06 00 00 00 33 4E 4C 43 DA 00 00 00 54 00    ......3NLC....T.
0040  00 00 03 85 78 50 00 00 23 00 00 00 34 4E 4C 43    ....xP..#...4NLC
0050  04 00 00 00 01 00 00 00 01 00 00 00 00 00 35 02    ..............5.
0060  00 00 06 10 02 00 00 53 01 00 00 AD 0F 00 00 38    .......S.......8
0070  0B 00 00 6A 10 00 00 C9 0A 00 00 3C 0E 00 00 52    ...j.......<...R
0080  0A 00 00 3E 0E 00 00 73 09 00 00 00 00 00 00 00    ...>...s........
0090  00 00 00                                          ...[/code]

User Request (cookie is "USER" dword)
[code]12  66.53.219.87  63.241.83.12  29  Send 
0000  FF 44 1D 00 04 52 45 53 55 4D 61 64 48 6F 72 73    .D...RESUMadHors
0010  65 5B 4C 75 4E 61 52 5D 00 50 58 33 57            e[LuNaR].PX3W[/code]

User Response:
[code]13  63.241.83.12  66.53.219.87  360  Recv 
0000  FF 44 68 01 04 52 45 53 55 66 6E 69 6E 01 4F 4C    .Dh..RESUfnin.OL
0010  4F 53 D4 00 6E 00 2D F9 01 4E 03 00 00 00 06 5B    OS..n.-..N.....[
0020  00 1B 00 20 00 10 00 0C 00 10 00 2E 00 12 00 EA    ... ............
0030  00 78 00 5C 00 13 00 06 33 53 56 33 01 00 00 00    .x.\....3SV3....
0040  05 56 24 03 00 00 00 00 16 89 95 8C 03 54 C7 01    .V$..........T..
0050  02 4C 65 74 73 5B 4C 75 4E 61 52 5D 00 4D 69 72    .Lets[LuNaR].Mir
0060  61 65 5B 4C 75 4E 61 52 5D 00 32 53 56 32 00 00    ae[LuNaR].2SV2..
0070  02 00 01 00 00 00 00 00 00 00 F8 F3 2B 41 CA 54    ............+A.T
0080  C7 01 01 43 61 72 74 5B 4C 75 4E 61 52 5D 00 33    ...Cart[LuNaR].3
0090  53 56 33 00 00 02 00 01 00 00 00 00 00 00 00 A0    SV3.............
00A0  EF 6B 0A 7C 55 C7 01 02 64 69 73 70 65 6C 6C 5B    .k.|U...dispell[
00B0  4C 75 4E 61 52 5D 00 4A 43 4C 65 65 5B 4C 75 4E    LuNaR].JCLee[LuN
00C0  61 52 5D 00 34 53 56 34 00 00 01 00 01 00 00 00    aR].4SV4........
00D0  00 00 00 00 B6 8F 48 B1 97 55 C7 01 03 45 6C 69    ......H..U...Eli
00E0  4D 69 4F 6E 5B 4C 75 4E 61 52 5D 00 4A 43 4C 65    MiOn[LuNaR].JCLe
00F0  65 5B 4C 75 4E 61 52 5D 00 4C 65 74 73 5B 4C 75    e[LuNaR].Lets[Lu
0100  4E 61 52 5D 00 33 53 56 33 01 00 02 00 05 11 81    NaR].3SV3.......
0110  02 00 00 00 00 EC C7 0B 9D 84 55 C7 01 02 4A 43    ..........U...JC
0120  4C 65 65 5B 4C 75 4E 61 52 5D 00 4C 65 74 73 5B    Lee[LuNaR].Lets[
0130  4C 75 4E 61 52 5D 00 33 53 56 33 02 00 00 00 08    LuNaR].3SV3.....
0140  2E D1 06 00 00 00 00 12 F6 43 56 A7 51 C7 01 02    .........CV.Q...
0150  41 67 65 79 5B 4C 75 4E 61 52 5D 00 43 61 72 74    Agey[LuNaR].Cart
0160  5B 4C 75 4E 61 52 5D 00                            [LuNaR].[/code]

February 22, 2007, 12:25 AM
Barabajagal
Finally got the client again. XP Decay doesn't show up anywhere in profiles within the client, and the values I'm receiving don't fit any values that I can see. Does anyone know if there's a list of XP per Level values? That's probably the only way to make the progress bar behind the level... The progress and the "XP Decay" values are driving me crazy  :'(
February 25, 2007, 9:32 AM
Ersan
[quote author=MyndFyre[vL] link=topic=16325.msg165329#msg165329 date=1172040012]
The catch is that the last time I looked at this, the blue bars are only on the web site, not in the client proper, which means that we can't do disassembly.
[/quote]
Wrong.

[quote author=[RealityRipple] link=topic=16325.msg165801#msg165801 date=1172395936]
Finally got the client again. XP Decay doesn't show up anywhere in profiles within the client, and the values I'm receiving don't fit any values that I can see. Does anyone know if there's a list of XP per Level values? That's probably the only way to make the progress bar behind the level... The progress and the "XP Decay" values are driving me crazy  :'(
[/quote]
It changes based on the number of people that have attained that level on that subsection of the ladder already (I don't know specifics, so don't ask).  This, coupled with the fact that the client has never displayed anything related to XP decay, is why I suggested the byte may have something to do with it, and disassembly is probably necessary to figure out what algorithm it's using to calculate the percentage, or what it's doing with the byte altogether.  I tried to figure it out a year ago and gave up, perhaps you'll have better luck.

And yes, I have, as before, read all the posts in the topic.
February 26, 2007, 11:37 PM

Search