Re: [hlcoders] Truncated/Shortened A2S_INFO for TF2
Even loading up these IP's in HLSW give problems, it's probably something running on the server mucking with queries. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Chris Allan Sent: Thursday, May 08, 2008 4:58 AM To: Discussion of Half-Life Programming Subject: Re: [hlcoders] Truncated/Shortened A2S_INFO for TF2 On 7 May 2008, at 18:03, Tom Leighton wrote: > Have you checked its not sending 2 packets ? With the rest of the > packet > following? No, but given that the protocol specifically defines how such a situation would be handled by the first 4 bytes of the reply being 0xFFFE rather than the reply I'm seeing of 0x I doubt that has much to do with it. The replies are also very small (~100 bytes) so I don't see why they'd be split across multiple UDP datagrams. FWIW: [EMAIL PROTECTED] ~/src $ python Python 2.5.1 (r251:54863, Jan 17 2008, 19:35:17) [GCC 4.0.1 (Apple Inc. build 5465)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import socket >>> udpsock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) >>> udpsock.connect(("213.228.232.26", 27015)) >>> udpsock.send("\xFF\xFF\xFF\xFFTSource Engine Query\x00") 25 >>> udpsock.settimeout(10) >>> a = udpsock.recv(1400) >>> b = udpsock.recv(1400) Traceback (most recent call last): File "", line 1, in socket.timeout: timed out Good idea though. :) Ciao. -Chris ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Truncated/Shortened A2S_INFO for TF2
On 7 May 2008, at 21:11, Nephyrin Zey wrote: > What other servers are doing this? Several. I was using a list of servers from HLstatsX's "Official Masterlist" as a test case and 10% of the first 50 servers on that list had truncated A2S_INFO replies. That HLstatsX was causing the problem did cross my mind but Googling for "hlstatsx a2s_info" didn't seem to dredge up anything valuable. > I believe ukcs.net is running a old > version of a plugin that fudges with A2S_INFO that's likely breaking > it. Any idea which plugin specifically? > The short answer is just treat these servers as invalid. I know my > server is suppressing some SourceTV values from A2S_INFO to fix that > old SourceTV port bug, which might be fudging up (admittedly i didn't > test it beyond 'it does what i want in the server browser'). Understood and agreed. My goal of the original post was certainly not to state "my code **must** have a complete A2S_INFO reply and you've broken it!" or to point fingers at people who have servers which reply outside the documented protocol but to understand if I was doing something wrong or incompletely. > Though if it is my plugin doing it I certainly deserve some blame > here :-P Send me your server host and port and I'll poke it to see if it's misbehaving. ;) > > - Neph Ciao. -Chris ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Truncated/Shortened A2S_INFO for TF2
On 7 May 2008, at 18:03, Tom Leighton wrote: > Have you checked its not sending 2 packets ? With the rest of the > packet > following? No, but given that the protocol specifically defines how such a situation would be handled by the first 4 bytes of the reply being 0xFFFE rather than the reply I'm seeing of 0x I doubt that has much to do with it. The replies are also very small (~100 bytes) so I don't see why they'd be split across multiple UDP datagrams. FWIW: [EMAIL PROTECTED] ~/src $ python Python 2.5.1 (r251:54863, Jan 17 2008, 19:35:17) [GCC 4.0.1 (Apple Inc. build 5465)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import socket >>> udpsock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) >>> udpsock.connect(("213.228.232.26", 27015)) >>> udpsock.send("\xFF\xFF\xFF\xFFTSource Engine Query\x00") 25 >>> udpsock.settimeout(10) >>> a = udpsock.recv(1400) >>> b = udpsock.recv(1400) Traceback (most recent call last): File "", line 1, in socket.timeout: timed out Good idea though. :) Ciao. -Chris ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Truncated/Shortened A2S_INFO for TF2
What other servers are doing this? I believe ukcs.net is running a old version of a plugin that fudges with A2S_INFO that's likely breaking it. The short answer is just treat these servers as invalid. I know my server is suppressing some SourceTV values from A2S_INFO to fix that old SourceTV port bug, which might be fudging up (admittedly i didn't test it beyond 'it does what i want in the server browser'). Though if it is my plugin doing it I certainly deserve some blame here :-P - Neph ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Truncated/Shortened A2S_INFO for TF2
Have you checked its not sending 2 packets ? With the rest of the packet following? Tom Edwards wrote: > Maybe this has to do with the addition of server tags. > > Chris Allan wrote: > >> Hi all, >> >> Just been playing with A2S_INFO server query requests, following the >> documentation available on the Developer Community Wiki >> (http://developer.valvesoftware.com/wiki/Server_Queries >> ) and I've been having some problems with certain TF2 servers >> responding with what appears to be a truncated or shortened A2S_INFO >> reply. Specifically, it would appear that certain servers only return >> data up until "Number of bots". FWIW, this breaks SRCDS.py >> (http://sourceforge.net/projects/srcdspy/ >> ) and I would assume various other server query libraries. >> >> Is this something other people have seen? >> >> Is it legal for A2S_INFO responses to be shorter than the documented >> reply format on the Wiki? >> >> Maybe the server administrator has installed some sort of mod to avoid >> returning what they deem to be potentially sensitive information such >> as server platform and/or game version? >> >> Perhaps there is a (undocumented?) server side configuration option >> that I've missed which decreases the amount of information returned in >> a A2S_INFO reply? >> >> Thanks. >> >> -Chris >> >> ___ >> To unsubscribe, edit your list preferences, or view the list archives, >> please visit: >> http://list.valvesoftware.com/mailman/listinfo/hlcoders >> >> >> >> > > > ___ > To unsubscribe, edit your list preferences, or view the list archives, please > visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders > > > ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Truncated/Shortened A2S_INFO for TF2
Game tags are appended to the end of the packet using the EDF flag (the wiki documents this). There isn't any intended feature that would cause this truncation, can you send me some server IP's to look at (in a personal email, don't spam the list :). - Alfred > -Original Message- > From: [EMAIL PROTECTED] [mailto:hlcoders- > [EMAIL PROTECTED] On Behalf Of Chris Allan > Sent: Wednesday, May 07, 2008 10:15 AM > To: Discussion of Half-Life Programming > Subject: Re: [hlcoders] Truncated/Shortened A2S_INFO for TF2 > > > On 7 May 2008, at 17:21, Tom Edwards wrote: > > > Maybe this has to do with the addition of server tags. > > Certainly possible, the server in question does indeed have: > > sv_tags increased_maxplayers,norespawntime,respawntimes > > For those interested, the code snippet and results: > > [EMAIL PROTECTED] ~/src/SRCDS $ python > Python 2.5.1 (r251:54863, Jan 17 2008, 19:35:17) > [GCC 4.0.1 (Apple Inc. build 5465)] on darwin > Type "help", "copyright", "credits" or "license" for more information. > >>> import socket > >>> udpsock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) > >>> udpsock.connect(("213.228.232.26", 27015)) > >>> udpsock.send("\xFF\xFF\xFF\xFFTSource Engine Query\x00") > 25 > >>> a = udpsock.recv(1400) > >>> f = open("payload", "w") > >>> f.write(a) > >>> f.close() > >>> ^D > [EMAIL PROTECTED] ~/src/SRCDS $ hexdump -C payload > ff ff ff ff 49 0e 55 4b 43 53 3a 54 46 32 23 32 | > I.UKCS:TF2#2| > 0010 20 2d 20 4d 65 67 61 20 47 61 6d 65 20 53 65 72 | - Mega > Game Ser| > 0020 76 65 72 20 2d 20 2a 4e 65 77 20 53 74 61 74 73 |ver - > *New Stats| > 0030 2a 20 2d 20 77 77 77 2e 75 6b 63 73 2e 6e 65 74 |* - > www.ukcs.net > | > 0040 00 63 70 5f 67 72 61 76 65 6c 70 69 74 00 74 66 > |.cp_gravelpit.tf| > 0050 00 54 65 61 6d 20 46 6f 72 74 72 65 73 73 00 b8 |.Team > Fortress.?| > 0060 01 19 1a 00 || > 0064 > > > Ciao. > > -Chris > > ___ > To unsubscribe, edit your list preferences, or view the list archives, > please visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Truncated/Shortened A2S_INFO for TF2
On 7 May 2008, at 17:21, Tom Edwards wrote: > Maybe this has to do with the addition of server tags. Certainly possible, the server in question does indeed have: sv_tags increased_maxplayers,norespawntime,respawntimes For those interested, the code snippet and results: [EMAIL PROTECTED] ~/src/SRCDS $ python Python 2.5.1 (r251:54863, Jan 17 2008, 19:35:17) [GCC 4.0.1 (Apple Inc. build 5465)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> import socket >>> udpsock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) >>> udpsock.connect(("213.228.232.26", 27015)) >>> udpsock.send("\xFF\xFF\xFF\xFFTSource Engine Query\x00") 25 >>> a = udpsock.recv(1400) >>> f = open("payload", "w") >>> f.write(a) >>> f.close() >>> ^D [EMAIL PROTECTED] ~/src/SRCDS $ hexdump -C payload ff ff ff ff 49 0e 55 4b 43 53 3a 54 46 32 23 32 | I.UKCS:TF2#2| 0010 20 2d 20 4d 65 67 61 20 47 61 6d 65 20 53 65 72 | - Mega Game Ser| 0020 76 65 72 20 2d 20 2a 4e 65 77 20 53 74 61 74 73 |ver - *New Stats| 0030 2a 20 2d 20 77 77 77 2e 75 6b 63 73 2e 6e 65 74 |* - www.ukcs.net | 0040 00 63 70 5f 67 72 61 76 65 6c 70 69 74 00 74 66 |.cp_gravelpit.tf| 0050 00 54 65 61 6d 20 46 6f 72 74 72 65 73 73 00 b8 |.Team Fortress.?| 0060 01 19 1a 00 || 0064 Ciao. -Chris ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Truncated/Shortened A2S_INFO for TF2
Maybe this has to do with the addition of server tags. Chris Allan wrote: > Hi all, > > Just been playing with A2S_INFO server query requests, following the > documentation available on the Developer Community Wiki > (http://developer.valvesoftware.com/wiki/Server_Queries > ) and I've been having some problems with certain TF2 servers > responding with what appears to be a truncated or shortened A2S_INFO > reply. Specifically, it would appear that certain servers only return > data up until "Number of bots". FWIW, this breaks SRCDS.py > (http://sourceforge.net/projects/srcdspy/ > ) and I would assume various other server query libraries. > > Is this something other people have seen? > > Is it legal for A2S_INFO responses to be shorter than the documented > reply format on the Wiki? > > Maybe the server administrator has installed some sort of mod to avoid > returning what they deem to be potentially sensitive information such > as server platform and/or game version? > > Perhaps there is a (undocumented?) server side configuration option > that I've missed which decreases the amount of information returned in > a A2S_INFO reply? > > Thanks. > > -Chris > > ___ > To unsubscribe, edit your list preferences, or view the list archives, please > visit: > http://list.valvesoftware.com/mailman/listinfo/hlcoders > > > ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
[hlcoders] Truncated/Shortened A2S_INFO for TF2
Hi all, Just been playing with A2S_INFO server query requests, following the documentation available on the Developer Community Wiki (http://developer.valvesoftware.com/wiki/Server_Queries ) and I've been having some problems with certain TF2 servers responding with what appears to be a truncated or shortened A2S_INFO reply. Specifically, it would appear that certain servers only return data up until "Number of bots". FWIW, this breaks SRCDS.py (http://sourceforge.net/projects/srcdspy/ ) and I would assume various other server query libraries. Is this something other people have seen? Is it legal for A2S_INFO responses to be shorter than the documented reply format on the Wiki? Maybe the server administrator has installed some sort of mod to avoid returning what they deem to be potentially sensitive information such as server platform and/or game version? Perhaps there is a (undocumented?) server side configuration option that I've missed which decreases the amount of information returned in a A2S_INFO reply? Thanks. -Chris ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders