• Welcome to Valhalla Legends Archive.
 

Game Statstring in packet 0x1C for Warcraft III

Started by Sorc.Polgara, October 10, 2004, 06:14 PM

Previous topic - Next topic

Sorc.Polgara

I can't make sense of the the "Game Statstring" which is the last string in the BNCS packet SID_STARTADVEX3 (0x1C) sent to Bnet via Warcraft III.

I searched for posts that had the keywords "Packet 0x1C" and simliar stuff but all the stuff I found were for SC.

I packet logged 0x1C, parsed it and then sent it to Bnet.  It works and stuff.

I can put together everything in a buffer except the "Game Statstring".

I've done some experimenting by packet logging 0x1C by using two different account names and two versions of this custom map that I am trying to create a game of.

Account names:
Sorc.Polgara
Kal.Torak

Maps and path:
DOTA3_6d.w3m
C:\Program Files\Warcraft III\Maps\Download\DOTA3_6d.w3m

DOTA3_7.w3m
C:\Program Files\Warcraft III\Maps\Download\DOTA3_7.w3m

For each account I packet logged the creation of each of the two maps.

Sorc.Polgara with DOTA3_7.w3m

Game Statstring in text:
b30000000IuùuyAéMËaqs]Eowomoae]E{OUA3_7/ow3mSosÓc/Qomgasa 

GameStatstring in log form:
62 33 30 30 30 30 30 30 30 01 03 49 07 01 01 75   b30000000..I...u
01 F9 75 01 79 41 E9 4D CB 61 71 73 5D 45 6F 77   .ùu.yAéMËaqs]Eow
19 6F 6D 6F 61 65 5D 45 7B 4F 55 41 33 5F 37 2F   .omoae]E{OUA3_7/
6F 77 33 6D 01 53 6F 73 D3 63 2F 51 6F 6D 67 61   ow3m.SosÓc/Qomga
05 73 61 01 01 00                                    .sa.............


Kal.Torak with DOTA3_7.w3m

Game Statstring in text:
b20000000IuùuyAéMËaqs]Eowomoae]E{OUA3_7/ow3mKami/Uosak

Game Statstring in log form:
62 32 30 30 30 30 30 30 30 01 03 49 07 01 01 75   b20000000..I...u
01 F9 75 01 79 41 E9 4D CB 61 71 73 5D 45 6F 77   .ùu.yAéMËaqs]Eow
19 6F 6D 6F 61 65 5D 45 7B 4F 55 41 33 5F 37 2F   .omoae]E{OUA3_7/
6F 77 33 6D 01 4B 61 6D 69 2F 55 6F 73 61 6B 01   ow3m.Kami/Uosak.
01 01 00                                             ................



Sorc.Polgara with DOTA3_6d.w3m

Game Statstring in text:
b40000000Iu?u««ÓMËaqs]Eowomoae]E;OUA3_7eÝ/w3mSo¥sc/Qomg asa

Game Statstring in log form:
62 34 30 30 30 30 30 30 30 01 03 49 07 01 01 75   b40000000..I...u
01 81 75 01 AB 0F AB D3 4D CB 61 71 73 5D 45 6F   .?u.«.«ÓMËaqs]Eo
77 19 6F 6D 6F 61 65 5D 45 3B 4F 55 41 33 5F 37   w.omoae]E;OUA3_7
65 DD 2F 77 33 6D 01 53 6F A5 73 63 2F 51 6F 6D   eÝ/w3m.So¥sc/Qom
67 0B 61 73 61 01 01 00                             g.asa...........


Kal.Torak with DOTA3_6d.w3m

Game Statstring in text:
b10000000Iu?u««ÓMËaqs]Eowomoae]E;OUA3_7eÝ/w3mKaÑm/Uosak

Game Statstring in log form:
62 31 30 30 30 30 30 30 30 01 03 49 07 01 01 75   b10000000..I...u
01 81 75 01 AB 0F AB D3 4D CB 61 71 73 5D 45 6F   .?u.«.«ÓMËaqs]Eo
77 19 6F 6D 6F 61 65 5D 45 3B 4F 55 41 33 5F 37   w.omoae]E;OUA3_7
65 DD 2F 77 33 6D 01 4B 61 D1 6D 2F 55 6F 73 61   eÝ/w3m.KaÑm/Uosa
6B 01 01 01 00                                     k...............



anyone know what the format or how to parse this string?

UserLoser.

#1
Pretty sure it's something like this (But not too sure):

Every 8 bytes is some sort of key value.  Loop through the string, count the total number up (character byte value (of current position in string) + key value), if that number is divisible by 8, then you increment the value of the character byte by one, otherwise leave it. 

Sorc.Polgara

#2
Quote from: UserLoser on October 10, 2004, 06:39 PM
Pretty sure it's something like this (But not too sure):

Every 8 bytes is some sort of key value.  Loop through the string, count the total number up (character byte value (of current position in string) + key value), if that number is divisible by 8, then you increment the value of the character byte by one, otherwise leave it. 


hmmm

ok, so what would these key values represent?

if you wanted to make one of these Game Statstring do you know how to make and arrange  these key values?

By "character byte value of the current position in string" you mean the value of the character in  ASCII right? just checking.

UserLoser.

Quote from: bethra on October 10, 2004, 08:47 PM
hmmm

ok, so what would these key values represent?

if you wanted to make one of these Game Statstring do you know how to make and arrange  these key values?

By "character byte value of the current position in string" you mean the value of the character in  ASCII right? just checking.

Not sure where they come from, yes (ex: A is 65)

Maddox

Hm what's the difference between DotA and DotA allstars?
asdf.

Sorc.Polgara

Quote from: Maddox on October 11, 2004, 05:16 PM
Hm what's the difference between DotA and DotA allstars?

The map "Defense of the Ancients" was originally created for RoC by Eul.  Now, when TFT came out, this guy named "Guinsoo" decided to take the whole concept of the original DOTA, the terrain layout, hero names, abilities, and many aspects of the original DOTA from RoC.

Guinsoo decided to add his own little modifications onto what was mainly DOTA gone TFT.  What he created was a WAYYY Imbalanced map which is also poorly triggered.

The REAL DOTA is balanced, and the original DOTA community has had DOTA tourneys which actually are that of ladder quality.  Not some map with overpowared heroes, skills, items etc.

The community of the REAL DOTA players dislike this "Guinsoo" for ripping off the map, and I am one of them

The REAL DOTA that originated from RoC has been around long before TFT came out and has been updated and balanced for almost 2 years I believe.

I  have been playing DOTA for more than a year, the REAL DOTA, not this rip of by "Guinsoo" and I have vowed not to play ALLSTARS even if its the last map on W3.

Sorc.Polgara

A question,

when I make a game by sending a 0x1C packet that I have logged from a previous game I made using the actual Warcraft III, I get the "blahblahblah has entered the game blahalbha".  Since I have 2 warcraft 3 keys I tried to go and join the game that, I supposely made with the bot.  I cannot join, I get the blahblahblah message that you commonly get even when not trying to join a game made by a bot.

Is this normal? you cannot actually join the game supposely made by the bot? Even though you get the message saying your friend has entered/created the game?



ummm I have stopped trying to parse the gamestatstring and buffer one since the method on how to do it is unknown.


UserLoser.

The host of the game has to accept the connection request from the joining client, otherwise you will get some sort of notification that it failed to join

Sorc.Polgara

Quote from: UserLoser on October 13, 2004, 02:46 PM
The host of the game has to accept the connection request from the joining client, otherwise you will get some sort of notification that it failed to join

is the packet known? like already ID'ed with its format?