• Welcome to Valhalla Legends Archive.
 

I just want to know whitch paket is the symbol of game over in W3GS

Started by World_War_III, April 01, 2009, 02:55 AM

Previous topic - Next topic

World_War_III

is it in "F7 0C"?
I got a packet "F7 48" with lots of info, I dont know the meaning?
who can help me?  :D
I found if one "F7 0C" packet is not enough, "F7 48" was used. But what blocks are the gamer info and what that mean?
Or just explain the "6B 64 72 2E 78 00 31 00 31 00 00 00 00 00 "?

00000015h: 00 12 3F 04 BD 53 00 1C 23 1A 5A 29 08 00 45 00 ; ..?.絊..#.Z)..E.
00000025h: 04 31 A2 70 40 00 80 06 AE FD C0 A8 12 03 C0 A8 ; .1@.€.括..括
00000035h: 12 05 17 E0 08 D1 44 C5 3E 0C EE CA 96 04 50 18 ; ...?袲?.钍?P.
00000045h: FB 0A A9 7C 00 00 F7 48 09 04 00 00 F8 22 01 FE ; ?﹟..鱄....?.?
00000055h: 03 6B 64 72 2E 78 00 31 00 31 00 00 00 00 00 6B ; .kdr.x.1.1.....k
00000065h: 64 72 2E 78 00 31 00 32 00 00 00 00 00 6B 64 72 ; dr.x.1.2.....kdr
00000075h: 2E 78 00 31 00 33 00 03 00 00 00 6B 64 72 2E 78 ; .x.1.3.....kdr.x
00000085h: 00 31 00 34 00 00 00 00 00 6B 64 72 2E 78 00 31 ; .1.4.....kdr.x.1
00000095h: 00 35 00 00 00 00 00 6B 64 72 2E 78 00 31 00 36 ; .5.....kdr.x.1.6
000000a5h: 00 6D 2D 01 00 6B 64 72 2E 78 00 31 00 37 00 00 ; .m-..kdr.x.1.7..
000000b5h: 00 00 00 6B 64 72 2E 78 00 31 00 38 5F 30 00 39 ; ...kdr.x.1.8_0.9
000000c5h: 41 30 49 6B 64 72 2E 78 00 31 00 38 5F 31 00 39 ; A0Ikdr.x.1.8_1.9
000000d5h: 41 30 49 6B 64 72 2E 78 00 31 00 38 5F 32 00 39 ; A0Ikdr.x.1.8_2.9
000000e5h: 41 30 49 6B 64 72 2E 78 00 31 00 38 5F 33 00 39 ; A0Ikdr.x.1.8_3.9
000000f5h: 41 30 49 6B 64 72 2E 78 00 31 00 38 5F 34 00 39 ; A0Ikdr.x.1.8_4.9
00000105h: 41 30 49 6B 64 72 2E 78 00 31 00 38 5F 35 00 42 ; A0Ikdr.x.1.8_5.B
00000115h: 36 30 49 6B 64 72 2E 78 00 31 00 39 00 30 30 30 ; 60Ikdr.x.1.9.000
00000125h: 48 6B 64 72 2E 78 00 31 00 69 64 00 01 00 00 00 ; Hkdr.x.1.id.....
00000135h: 6B 64 72 2E 78 00 37 00 31 00 00 00 00 00 6B 64 ; kdr.x.7.1.....kd
00000145h: 72 2E 78 00 37 00 32 00 00 00 00 00 6B 64 72 2E ; r.x.7.2.....kdr.
00000155h: 78 00 37 00 33 00 00 00 00 00 6B 64 72 2E 78 00 ; x.7.3.....kdr.x.
00000165h: 37 00 34 00 00 00 00 00 6B 64 72 2E 78 00 37 00 ; 7.4.....kdr.x.7.
00000175h: 35 00 00 00 00 00 6B 64 72 2E 78 00 37 00 36 00 ; 5.....kdr.x.7.6.
00000185h: B8 11 00 00 6B 64 72 2E 78 00 37 00 37 00 00 00 ; ?..kdr.x.7.7...
00000195h: 00 00 6B 64 72 2E 78 00 37 00 38 5F 30 00 00 00 ; ..kdr.x.7.8_0...
000001a5h: 00 00 6B 64 72 2E 78 00 37 00 38 5F 31 00 00 00 ; ..kdr.x.7.8_1...
000001b5h: 00 00 6B 64 72 2E 78 00 37 00 38 5F 32 00 00 00 ; ..kdr.x.7.8_2...
000001c5h: 00 00 6B 64 72 2E 78 00 37 00 38 5F 33 00 00 00 ; ..kdr.x.7.8_3...
000001d5h: 00 00 6B 64 72 2E 78 00 37 00 38 5F 34 00 00 00 ; ..kdr.x.7.8_4...
000001e5h: 00 00 6B 64 72 2E 78 00 37 00 38 5F 35 00 00 00 ; ..kdr.x.7.8_5...
000001f5h: 00 00 6B 64 72 2E 78 00 37 00 39 00 00 00 00 00 ; ..kdr.x.7.9.....
00000205h: 6B 64 72 2E 78 00 37 00 69 64 00 06 00 00 00 6B ; kdr.x.7.id.....k
00000215h: 64 72 2E 78 00 32 00 31 00 00 00 00 00 6B 64 72 ; dr.x.2.1.....kdr
00000225h: 2E 78 00 32 00 32 00 00 00 00 00 6B 64 72 2E 78 ; .x.2.2.....kdr.x
00000235h: 00 32 00 33 00 00 00 00 00 6B 64 72 2E 78 00 32 ; .2.3.....kdr.x.2
00000245h: 00 34 00 00 00 00 00 6B 64 72 2E 78 00 32 00 35 ; .4.....kdr.x.2.5
00000255h: 00 00 00 00 00 6B 64 72 2E 78 00 32 00 36 00 5F ; .....kdr.x.2.6._
00000265h: 06 00 00 6B 64 72 2E 78 00 32 00 37 00 00 00 00 ; ...kdr.x.2.7....
00000275h: 00 6B 64 72 2E 78 00 32 00 38 5F 30 00 00 00 00 ; .kdr.x.2.8_0....
00000285h: 00 6B 64 72 2E 78 00 32 00 38 5F 31 00 00 00 00 ; .kdr.x.2.8_1....
00000295h: 00 6B 64 72 2E 78 00 32 00 38 5F 32 00 00 00 00 ; .kdr.x.2.8_2....
000002a5h: 00 6B 64 72 2E 78 00 32 00 38 5F 33 00 00 00 00 ; .kdr.x.2.8_3....
000002b5h: 00 6B 64 72 2E 78 00 32 00 38 5F 34 00 00 00 00 ; .kdr.x.2.8_4....
000002c5h: 00 6B 64 72 2E 78 00 32 00 38 5F 35 00 00 00 00 ; .kdr.x.2.8_5....
000002d5h: 00 6B 64 72 2E 78 00 32 00 39 00 00 00 00 00 6B ; .kdr.x.2.9.....k
000002e5h: 64 72 2E 78 00 32 00 69 64 00 02 00 00 00 6B 64 ; dr.x.2.id.....kd
000002f5h: 72 2E 78 00 38 00 31 00 00 00 00 00 6B 64 72 2E ; r.x.8.1.....kdr.
00000305h: 78 00 38 00 32 00 00 00 00 00 6B 64 72 2E 78 00 ; x.8.2.....kdr.x.
00000315h: 38 00 33 00 00 00 00 00 6B 64 72 2E 78 00 38 00 ; 8.3.....kdr.x.8.
00000325h: 34 00 00 00 00 00 6B 64 72 2E 78 00 38 00 35 00 ; 4.....kdr.x.8.5.
00000335h: 00 00 00 00 6B 64 72 2E 78 00 38 00 36 00 0F 01 ; ....kdr.x.8.6...
00000345h: 00 00 6B 64 72 2E 78 00 38 00 37 00 00 00 00 00 ; ..kdr.x.8.7.....
00000355h: 6B 64 72 2E 78 00 38 00 38 5F 30 00 00 00 00 00 ; kdr.x.8.8_0.....
00000365h: 6B 64 72 2E 78 00 38 00 38 5F 31 00 00 00 00 00 ; kdr.x.8.8_1.....
00000375h: 6B 64 72 2E 78 00 38 00 38 5F 32 00 00 00 00 00 ; kdr.x.8.8_2.....
00000385h: 6B 64 72 2E 78 00 38 00 38 5F 33 00 00 00 00 00 ; kdr.x.8.8_3.....
00000395h: 6B 64 72 2E 78 00 38 00 38 5F 34 00 00 00 00 00 ; kdr.x.8.8_4.....
000003a5h: 6B 64 72 2E 78 00 38 00 38 5F 35 00 00 00 00 00 ; kdr.x.8.8_5.....
000003b5h: 6B 64 72 2E 78 00 38 00 39 00 00 00 00 00 6B 64 ; kdr.x.8.9.....kd
000003c5h: 72 2E 78 00 38 00 69 64 00 07 00 00 00 6B 64 72 ; r.x.8.id.....kdr
000003d5h: 2E 78 00 33 00 31 00 00 00 00 00 6B 64 72 2E 78 ; .x.3.1.....kdr.x
000003e5h: 00 33 00 32 00 00 00 00 00 6B 64 72 2E 78 00 33 ; .3.2.....kdr.x.3
000003f5h: 00 33 00 00 00 00 00 6B 64 72 2E 78 00 33 00 34 ; .3.....kdr.x.3.4
00000405h: 00 00 00 00 00 6B 64 72 2E 78 00 33 00 35 00 00 ; .....kdr.x.3.5..
00000415h: 00 00 00 6B 64 72 2E 78 00 33 00 36 00 5F 06 00 ; ...kdr.x.3.6._..
00000425h: 00 6B 64 72 2E 78 00 33 00 37 00 00 00 00 00 6B ; .kdr.x.3.7.....k
00000435h: 64 72 2E 78 00 33 00 38 5F 30 00 00 00 00 00 6B ; dr.x.3.8_0.....k
00000445h: 64 72 2E 78 00 33 00 38 5F 31 00 00 00 00       ; dr.x.3.8_1....

Barabajagal

Public documentation on W3GS packet 0x48... doesn't seem to exist. Isn't there an open source bot that handles W3GS somewhere?

World_War_III

Quote from: RealityRipple on April 01, 2009, 03:25 AM
Public documentation on W3GS packet 0x48... doesn't seem to exist. Isn't there an open source bot that handles W3GS somewhere?
This packet not always appear. I think when the data is too long we need several "F7 48" and one "F7 0C".
But i still dont know the detail of packet "F7 0C", where can I get it?

#define W3GS_HOSTSYNC 0x0C // Host Sync packets or/with actions (only sync when packet size = 6)
#define W3GS_HOSTACT  0x0C
struct sW3GS_HOSTACT {
SHORT sync; // 0x6D | 0x6E | 0x7D - possible sync
SHORT crc16; // possible crc16 value
BYTE playerNum; // 1 (for host)
SHORT subPktSize; // sub packet size = packet size - 11
BYTE subPktData[1]; // sub packet data - consist game command
};
this is too simple. Maybe I need the some info of "BYTE subPktData[1]"
--------------------------------------------------------------------------------------------------
My English is not so well, haha. But I believe u can understand me.



Cibes

Are there any news about this?
I've been looking at this packet, too. If there's still no further information i'll get my stuff cleaned up and post it here.

Sveet

is that 1 packet in the first post? where does it start? try just posting the game packet.......

first part is straightforward, and in the sub packet (which is encoded iirc) is just the ingame actions of the players.

i don't see where your 0x48 packet even is in there....

RiffRiot

Quote from: Sveet on May 12, 2009, 12:52 PM
is that 1 packet in the first post? where does it start? try just posting the game packet.......

first part is straightforward, and in the sub packet (which is encoded iirc) is just the ingame actions of the players.

i don't see where your 0x48 packet even is in there....

Uhmm, in the original post it is offset line 00000045h and it is the two bytes: "F7 48".  Please correct me if I am wrong but I believe they start at the 55th byte which would be "F7 48".

Cibes

i think the stuff in the first post still contains some data from the tcp packet.

Anyway, i'll give you what i got, i'm still working on it though. (I'm only looking at DotA packets, i don't know how this works in normal WC3)
Sometimes i capture 2 0x48 packets several seconds apart, so far i can only make sense of the second one.

f7 48   // packet id
4d 04  // packet size
00 00  // always
03 ed 01 1f 00 12 00 00 03 00
0d 00 ff ff ff ff ff ff ff ff f4 1e 92 45 8e 37
a5 45 ff ff ff ff ff ff ff ff 03 1f 00 12 00 00
03 00 0d 00 ff ff ff ff ff ff ff ff a4 ed b1 45
72 49 9b 45 ff ff ff ff ff ff ff ff
        //no clue about those lines above, this seems to be a different number of bytes every time
01 fe 03 // always


After this there are ten blocks with information about each of the 10 players. One line of information in those blocks looks like this:

6b 64 72 2e 78 00  // some kind of constant for every "line"
31  // block id (sometimes 2 bytes: "31 30", "31 31")
00
31  // information id (sometimes 2 or 3 bytes: "38 5f 30", "38 5f 31";   "69 64")
00
06 00 00 00  // data


And now one "block" with all the information about one player (once again, this seems very much DotA specific):

6b 64 72 2e 78 00 31 00 31 00 06 00 00 00 //kills
6b 64 72 2e 78 00 31 00 32 00 03 00 00 00 //deaths
6b 64 72 2e 78 00 31 00 33 00 48 00 00 00 //creepkills
6b 64 72 2e 78 00 31 00 34 00 00 00 00 00 //denies
6b 64 72 2e 78 00 31 00 35 00 0a 00 00 00 //assists
6b 64 72 2e 78 00 31 00 36 00 01 09 00 00 //current gold
6b 64 72 2e 78 00 31 00 37 00 00 00 00 00 //neutral kills
6b 64 72 2e 78 00 31 00 38 5f 30 00 5a 34 30 49 //items (top, left)
6b 64 72 2e 78 00 31 00 38 5f 31 00 5a 34 30 49 //items (top, right)
6b 64 72 2e 78 00 31 00 38 5f 32 00 4b 42 30 49 //items (mid, left)
6b 64 72 2e 78 00 31 00 38 5f 33 00 5a 30 30 49 //items (mid, right)
6b 64 72 2e 78 00 31 00 38 5f 34 00 00 00 00 00 //items (bottom, left)
6b 64 72 2e 78 00 31 00 38 5f 35 00 00 00 00 00 //items (bottom, right)
6b 64 72 2e 78 00 31 00 39 00 42 30 30 4e //hero_id ?!?
6b 64 72 2e 78 00 31 00 69 64 00 01 00 00 00 //playernumber



I don't know if this is of any use or if it is too specific for a single custom map, but oh well, ....