Valhalla Legends Forums Archive | Battle.net Bot Development | Receiving 0x0F event EID_INFO in a Starcraft game

AuthorMessageTime
laurion
When I create a game using Starcraft, if someone joins my game, I receive 0x0F, event 0x12 (EID_INFO). It contains the user's record.
[pre]
(source/dest info removed)
0030  -- -- -- -- -- -- ff 0f 3c 00 12 00 00 00 00 00  .9.<....<.......
0040  00 00 4e 00 00 00 00 00 00 00 0d f0 ad ba 0d f0  ..N.............
0050  ad ba 54 61 7a 6f 2d 23 34 00 66 72 61 67 63 68  ..Tazo123.fragch
0060  65 61 70 73 68 6f 74 27 73 20 72 65 63 6f 72 64  eapshot's record
0070  3a 00                                            :.
[/pre]

For some reason, if I create a game using my bot, I never receive 0x0F, and I have no way to tell if people are even joining my games. I have only tested this joining my own game using another bot. If I perform a /who on the bots, both appear to be in the game, but my "host" bot is never notified. I have no trouble starting a game using my "host" bot after I have sent my other bot in the game, even though I was never even notified of the join.

Does Starcraft do something special to request stats from the server that my bot isn't? I didn't notice anything in the packetlog.
August 26, 2007, 6:02 PM
l2k-Shadow
when someone joins games your client sends /astat name
August 26, 2007, 6:05 PM
laurion
[quote author=l2k-Shadow link=topic=16983.msg172047#msg172047 date=1188151521]
when someone joins games your client sends /astat name
[/quote]
Ah, ok. I did not see it in my packetlog.

How is the client notified that someone has joined? UDP?
August 26, 2007, 6:06 PM
l2k-Shadow
[quote author=Tazo link=topic=16983.msg172048#msg172048 date=1188151612]
[quote author=l2k-Shadow link=topic=16983.msg172047#msg172047 date=1188151521]
when someone joins games your client sends /astat name
[/quote]
Ah, ok. I did not see it in my packetlog.

How is the client notified? UDP?
[/quote]

eh? it sends /astat to the battle.net server and receives 0x0f EID_INFO response.
August 26, 2007, 6:07 PM
laurion
[quote author=l2k-Shadow link=topic=16983.msg172049#msg172049 date=1188151678]
[quote author=Tazo link=topic=16983.msg172048#msg172048 date=1188151612]
[quote author=l2k-Shadow link=topic=16983.msg172047#msg172047 date=1188151521]
when someone joins games your client sends /astat name
[/quote]
Ah, ok. I did not see it in my packetlog.

How is the client notified? UDP?
[/quote]

eh? it sends /astat to the battle.net server and receives 0x0f EID_INFO response.
[/quote]
Err, sorry haha, edited my post a few seconds too late. I meant how is the client notified that someone joins? How does it know to send /astat? That's mainly what I'm looking for here.
August 26, 2007, 6:09 PM
l2k-Shadow
yes it's notified through this UDP message:

[code]
                                    00 00 00 00 e4 1e  .d.....B).......
0030  36 00 02 00 02 00 00 07 ff 00 66 72 61 67 63 68  6.........fragch
0040  65 61 70 73 68 6f 74 00 50 58 45 53 20 30 20 30  eapshot.PXES 0 0
0050  20 31 31 20 30 20 30 20 30 20 30 20 30 20 50 58  11 0 0 0 0 0 PX
0060  45 53 00 00                                      ES..
[/code]

which is kinda weird cause the statstring is received there..
August 26, 2007, 6:13 PM
laurion
[quote author=l2k-Shadow link=topic=16983.msg172052#msg172052 date=1188152038]
yes it's notified through this UDP message:

[code]
                                    00 00 00 00 e4 1e  .d.....B).......
0030  36 00 02 00 02 00 00 07 ff 00 66 72 61 67 63 68  6.........fragch
0040  65 61 70 73 68 6f 74 00 50 58 45 53 20 30 20 30  eapshot.PXES 0 0
0050  20 31 31 20 30 20 30 20 30 20 30 20 30 20 50 58  11 0 0 0 0 0 PX
0060  45 53 00 00                                      ES..
[/code]

which is kinda weird cause the statstring is received there..
[/quote]
Cool, thanks :)

Unfortunately, I'm not sure exactly what the client does to get the server to send it this message - I tried sending PKT_CONNTEST2 when logging on, exactly how client does (server token, udp value), but I still don't receive a UDP message when someone joins. Oh well.
August 26, 2007, 6:43 PM
l2k-Shadow
consider checking your create game packet, maybe you're telling the server the wrong port to which clients should send udp too or something similar
August 26, 2007, 6:47 PM

Search