Re: [hlcoders] Sending commands to HLDS
botman wrote: Many devices use a 1400 byte limit for the MTU. Any packets larger than this can be split into multiple packets. IP will preserve the sequence of these packets and reassemble them in the correct order when they reach the destination (even if the packets take different paths to the destination and the first packet arrives at the destination after subsequent packets have arrived). Correct. UDP does NOT do this. UDP will not re-sequence packets and preserve their original structure. It is up to the sending/receiving applications to deal with this problem. What does that have to do with it? Fragmentation and reassembly is done on the IP layer. The protocol layer doesn't ever see fragments as the IP layer will have them already reassembled before they are passed to UDP. The difference is that TCP has mechanisms to determine the size of the maximum datagram that can be processed by the remote host and is careful to avoid fragmentation. UDP has no such mechanism and the application has to take steps to avoid fragmentation on its own. But that is handled on the application layer. Florian. -- Want to produce professional emails and Usenet postings? http://www.netmeister.org/news/learn2quote.html ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Sending commands to HLDS
Precisely. Except for the documented exception of mods that have too many server CVars and exceed the MTU for the "rules" reply, all the queries and replies for Half-Life are well within the limit for almost all configurations. There shouldn't be any need to worry about packet splitting because of this, even in the case of master server query replies (as the list is broken down into subsequent queries automatically by the server). - Original Message - From: "botman" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Thursday, January 02, 2003 3:42 PM Subject: Re: [hlcoders] Sending commands to HLDS > > I've never had any problems with Winsock's handling of packets when > > communicating with Half-Life servers. The connections mentioned here are > > all one-shot, limited length UDP queries and responses; there's no reason > > why anyone should be concerned about how Winsock packetizes the > > information for this purpose. > > TCP/IP will typically preserve the size of a packet as long as the packet > length doesn't exceed the MTU of the devices passing the packet along > (hosts, routers, switches, etc.). Many devices use a 1400 byte limit for > the MTU. Any packets larger than this can be split into multiple packets. > IP will preserve the sequence of these packets and reassemble them in the > correct order when they reach the destination (even if the packets take > different paths to the destination and the first packet arrives at the > destination after subsequent packets have arrived). UDP does NOT do this. > UDP will not re-sequence packets and preserve their original structure. It > is up to the sending/receiving applications to deal with this problem. > > As long as you aren't sending/receiving packets larger than 1400 bytes, you > will probably never notice this problem. As soon as you start > sending/receiving packets larger than 1400 bytes, you will need to deal with > this problem. > > Jeffrey "botman" Broome > > ___ > 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] Sending commands to HLDS
> I've never had any problems with Winsock's handling of packets when > communicating with Half-Life servers. The connections mentioned here are > all one-shot, limited length UDP queries and responses; there's no reason > why anyone should be concerned about how Winsock packetizes the > information for this purpose. TCP/IP will typically preserve the size of a packet as long as the packet length doesn't exceed the MTU of the devices passing the packet along (hosts, routers, switches, etc.). Many devices use a 1400 byte limit for the MTU. Any packets larger than this can be split into multiple packets. IP will preserve the sequence of these packets and reassemble them in the correct order when they reach the destination (even if the packets take different paths to the destination and the first packet arrives at the destination after subsequent packets have arrived). UDP does NOT do this. UDP will not re-sequence packets and preserve their original structure. It is up to the sending/receiving applications to deal with this problem. As long as you aren't sending/receiving packets larger than 1400 bytes, you will probably never notice this problem. As soon as you start sending/receiving packets larger than 1400 bytes, you will need to deal with this problem. Jeffrey "botman" Broome ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] Sending commands to HLDS
I've never had any problems with Winsock's handling of packets when communicating with Half-Life servers. The connections mentioned here are all one-shot, limited length UDP queries and responses; there's no reason why anyone should be concerned about how Winsock packetizes the information for this purpose. - Original Message - From: "Miguel Alemán" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, January 01, 2003 9:07 PM Subject: Re: [hlcoders] Sending commands to HLDS You don't have any control over how WinSock packetizes information. If you run one send() with A information and a second send() with B information, it can be sent in several different ways. A+B -> 1 Packet A -> 1 PacketB -> 1 Packet A+PartOfB -> 1 Packet RestOfB -> 1 Packet etc... You can however send information that is formatted. If I remember correctly an RCON msg started off with 4 bytes of "255" followed by the password and then command. Take a look on the internet and it will be very easy to find a specification. - Original Message - From: "Ryan "Professional Victim" Desgroseilliers" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, January 01, 2003 11:01 PM Subject: Re: [hlcoders] Sending commands to HLDS Of course you can format packets in WinSock, WinSock is the Windows network sockets API. Essentially all the network connectivity functions for Windows programs run through WinSock, even Half-Life's. Some of the MFC stuff that uses WinSock may be higher-level, but WinSock itself can send TCP and UDP packets just fine. You need to do more to use raw sockets to write the whole packet yourself, including the protocol header (and that only works for administrator accounts under 2K/XP), but as Half-Life uses UDP for non-player connections there shouldn't be a problem. The packet format should be in the full SDK (at least it used to be) -- it's in a "Server Info" folder with the name "server protocol.txt". It contains both the old and new formats for querying server info, as well as the master server query protocol, but the RCON protocol isn't there. If you need that, I'm sure I can dig it up. ----- Original Message ----- From: "Miguel Alemán" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, January 01, 2003 3:58 PM Subject: Re: [hlcoders] Sending commands to HLDS > You can't format packets in WinSock. WinSock is a higher level protocol. > > Try searching the newsgroup database (maybe the old one on Topica), I > remember a thread where they discussed the format for sending commands to > the dedicated server using C. You could also try searching Yahoo for an open > source utility which does the same thing, many exist and from the code you > could see how the commands are formatted. > > - Original Message - > From: "Dan Cox" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Wednesday, January 01, 2003 11:50 AM > Subject: RE: [hlcoders] Sending commands to HLDS > > > > Looking for the packet format. Looking to do some Winsock programming > > but completely lost the structure to send/receive about a year ago. > > > > -Original Message- > > From: [EMAIL PROTECTED] > > [mailto:[EMAIL PROTECTED]] On Behalf Of Nick McLaren > > Sent: Wednesday, January 01, 2003 1:20 PM > > To: [EMAIL PROTECTED] > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > > > > > The format of the packet or format of the data. The data is actually the > > same as the way the log entries show up in the local logs. You can also > > view raw logs via HLSW (www.hlsw.de) to see how it is received. As far > > as sending commands to HLDS I assume you mean either to retrieve status > > information about the server or via RCON which I'm certain you can > > either find an object for or use sockets. Of course I don't have the > > protocol data handy, so I guess I'm not a whole lot of help there! Hey, > > I tried! hehe! ;) > > > > --- > > Nick McLaren, CCNA, SCSA > > BattleLAN Technical Admin > > <[EMAIL PROTECTED]> > > http://www.battlelan.com/ > > --- > > > > On Wed, 1 Jan 2003, Dan Cox wrote: > > > > > This is a multi-part message in MIME format. > > > -- > > > [ Picked text/plain from multipart/alternative ] > > > Hello all, > > >I used to have this info a few years ago but it's been lost since. > > > > > I need to know where to look in the SDK to find the info on how to > > > send commands to HLDS using V
Re: [hlcoders] Sending commands to HLDS
You don't have any control over how WinSock packetizes information. If you run one send() with A information and a second send() with B information, it can be sent in several different ways. A+B -> 1 Packet A -> 1 PacketB -> 1 Packet A+PartOfB -> 1 Packet RestOfB -> 1 Packet etc... You can however send information that is formatted. If I remember correctly an RCON msg started off with 4 bytes of "255" followed by the password and then command. Take a look on the internet and it will be very easy to find a specification. - Original Message - From: "Ryan "Professional Victim" Desgroseilliers" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, January 01, 2003 11:01 PM Subject: Re: [hlcoders] Sending commands to HLDS Of course you can format packets in WinSock, WinSock is the Windows network sockets API. Essentially all the network connectivity functions for Windows programs run through WinSock, even Half-Life's. Some of the MFC stuff that uses WinSock may be higher-level, but WinSock itself can send TCP and UDP packets just fine. You need to do more to use raw sockets to write the whole packet yourself, including the protocol header (and that only works for administrator accounts under 2K/XP), but as Half-Life uses UDP for non-player connections there shouldn't be a problem. The packet format should be in the full SDK (at least it used to be) -- it's in a "Server Info" folder with the name "server protocol.txt". It contains both the old and new formats for querying server info, as well as the master server query protocol, but the RCON protocol isn't there. If you need that, I'm sure I can dig it up. - Original Message - From: "Miguel Alemán" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, January 01, 2003 3:58 PM Subject: Re: [hlcoders] Sending commands to HLDS > You can't format packets in WinSock. WinSock is a higher level protocol. > > Try searching the newsgroup database (maybe the old one on Topica), I > remember a thread where they discussed the format for sending commands to > the dedicated server using C. You could also try searching Yahoo for an open > source utility which does the same thing, many exist and from the code you > could see how the commands are formatted. > > ----- Original Message - > From: "Dan Cox" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Wednesday, January 01, 2003 11:50 AM > Subject: RE: [hlcoders] Sending commands to HLDS > > > > Looking for the packet format. Looking to do some Winsock programming > > but completely lost the structure to send/receive about a year ago. > > > > -----Original Message- > > From: [EMAIL PROTECTED] > > [mailto:[EMAIL PROTECTED]] On Behalf Of Nick McLaren > > Sent: Wednesday, January 01, 2003 1:20 PM > > To: [EMAIL PROTECTED] > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > > > > > The format of the packet or format of the data. The data is actually the > > same as the way the log entries show up in the local logs. You can also > > view raw logs via HLSW (www.hlsw.de) to see how it is received. As far > > as sending commands to HLDS I assume you mean either to retrieve status > > information about the server or via RCON which I'm certain you can > > either find an object for or use sockets. Of course I don't have the > > protocol data handy, so I guess I'm not a whole lot of help there! Hey, > > I tried! hehe! ;) > > > > --- > > Nick McLaren, CCNA, SCSA > > BattleLAN Technical Admin > > <[EMAIL PROTECTED]> > > http://www.battlelan.com/ > > --- > > > > On Wed, 1 Jan 2003, Dan Cox wrote: > > > > > This is a multi-part message in MIME format. > > > -- > > > [ Picked text/plain from multipart/alternative ] > > > Hello all, > > >I used to have this info a few years ago but it's been lost since. > > > > > I need to know where to look in the SDK to find the info on how to > > > send commands to HLDS using Visual Basic or C. I'd also like to find > > > the format that the data is sent when logging to a remote computer > > > using the 'logaddress' cvar. > > > ___ > > > To unsubscribe, edit your list preferences, or view the list archives, > > > > > please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders > > > > > > > ___ >
RE: [hlcoders] Sending commands to HLDS
Just noticed there is completely no information available on the filters you can use so using information I have noted down from another list and my extra notes this should be all you need. Game: \gamedir\tfc Basically it's the directory the mod is stored in on your computer (well the servers but I doubt many if any servers change them) e.g. C:/SIERRA/Half-Life/tfc (\gamedir\tfc) for TFC C:/SIERRA/Half-Life/cstrike (\gamedir\cstrike) for CS Map: \map\2fort Dedicated Server: \type\d I did try l for Listen Servers thinking it would be like when 'details' is sent to servers but that didn't work. Servers that are not empty: \empty\1 Servers that are not full: \full\1 Linux only: \linux\1 \linux\0, \win\1, \windows\1 don't work so I don't think Valve want us to find windows servers. :( HLTV Servers: \proxy\1 Even though the filtering ability is in the Half-Life client to not show HLTV proxies there doesn't seem to be an actual filter that is sent to the master server. So those checks are probably done client side. :( Servers running VAC (secure mode): \secure\1 \secure\0 will not show insecure servers, I guess this makes those who use cheats have a harder time finding servers that are not secure and instead have the fun of downloading the full list to check through. The filters can be combined. So for example if you wanted TFC running the HLDM map Bounce that are neither empty or full you would use. \gamedir\tfc\map\bounce\empty\1\full\1 At the time of writing this I only got 2 servers sent back to me, ah well. :P Or maybe CS servers that are secure and running docks (my favourite and the only CS map that I can remember from when I used to play CS, I also do know this has been since removed from CS updates *sulk*) :P \gamedir\cstrike\map\docks\secure\1 There maybe more filters than this so if anyone knows them please post them and feel free to correct me if I'm wrong somewhere but I tested these as I added the notes and they seemed to work fine. > -Original Message- > From: [EMAIL PROTECTED] [mailto:hlcoders- > [EMAIL PROTECTED]] On Behalf Of Detritus > Sent: 02 January 2003 03:40 > To: [EMAIL PROTECTED] > Subject: RE: [hlcoders] Sending commands to HLDS > > Hmm > I couldn't find anything in the VERC articles unless I searched with the > wrong words. :P > Best I found was the protocol information from the SDK on the forums. > http://www.chatbear.com/uploaded/1004597016-server%20protocol.txt > > ^ Might have to register to see it but I doubt it unless it's protected > by .htaccess > > Anyway I think the original poster has all the information now to begin > building something. :) > > > > -Original Message- > > From: [EMAIL PROTECTED] [mailto:hlcoders- > > [EMAIL PROTECTED]] On Behalf Of Ryan "Professional Victim" > > Desgroseilliers > > Sent: 02 January 2003 05:59 > > To: [EMAIL PROTECTED] > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > Yeah, the articles there work nicely (although they do use Delphi > which > > may > > not be particularly intuitive) -- there was also one at the VERC > > collective > > as well if I'm not mistaken. The RCON format used to be fairly > > straightforward, but then it was modified to use a challenge protocol > to > > make it more secure or something to that effect. It's still a > relatively > > simple operation, you just need two messages instead of one. > > > > - Original Message - > > From: "Detritus" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Wednesday, January 01, 2003 6:44 PM > > Subject: RE: [hlcoders] Sending commands to HLDS > > > > > > > > The master server protocol in the SDK is a bit outdated but it still > > works except it will just send you 200+ random IP:Port's. > > I suggest reading through KQuery's article which explains how to use > the > > updated protocol to get a full list of servers (around 28,000) as well > > as use filters. > > http://www.kquery.com/developer/index.php?article=5 > > Also KQuery has written an article on the rcon protocol so that might > be > > handy to read through. > > http://www.kquery.com/developer/index.php?article=13 > > > > > > > > > -Original Message- > > > From: [EMAIL PROTECTED] [mailto:hlcoders- > > > [EMAIL PROTECTED]] On Behalf Of Ryan "Professional > Victim" > > > Desgroseilliers > > > Sent: 02 January 2003 05:01 > > > To: [EMAIL PROTECTED] > > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > > > Of course you can format packets in WinSock, WinSock is the Windows &
RE: [hlcoders] Sending commands to HLDS
Thanks for your help everyone! I'm sure I can find what I need in the links and info provided. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Detritus Sent: Wednesday, January 01, 2003 10:40 PM To: [EMAIL PROTECTED] Subject: RE: [hlcoders] Sending commands to HLDS Hmm I couldn't find anything in the VERC articles unless I searched with the wrong words. :P Best I found was the protocol information from the SDK on the forums. http://www.chatbear.com/uploaded/1004597016-server%20protocol.txt ^ Might have to register to see it but I doubt it unless it's protected by .htaccess Anyway I think the original poster has all the information now to begin building something. :) > -Original Message- > From: [EMAIL PROTECTED] [mailto:hlcoders- > [EMAIL PROTECTED]] On Behalf Of Ryan "Professional Victim" > Desgroseilliers > Sent: 02 January 2003 05:59 > To: [EMAIL PROTECTED] > Subject: Re: [hlcoders] Sending commands to HLDS > > Yeah, the articles there work nicely (although they do use Delphi which > may > not be particularly intuitive) -- there was also one at the VERC > collective as well if I'm not mistaken. The RCON format used to be > fairly straightforward, but then it was modified to use a challenge > protocol to > make it more secure or something to that effect. It's still a relatively > simple operation, you just need two messages instead of one. > > - Original Message - > From: "Detritus" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Wednesday, January 01, 2003 6:44 PM > Subject: RE: [hlcoders] Sending commands to HLDS > > > > The master server protocol in the SDK is a bit outdated but it still > works except it will just send you 200+ random IP:Port's. I suggest > reading through KQuery's article which explains how to use the > updated protocol to get a full list of servers (around 28,000) as well > as use filters. http://www.kquery.com/developer/index.php?article=5 > Also KQuery has written an article on the rcon protocol so that might be > handy to read through. > http://www.kquery.com/developer/index.php?article=13 > > > > > -Original Message- > > From: [EMAIL PROTECTED] [mailto:hlcoders- > > [EMAIL PROTECTED]] On Behalf Of Ryan "Professional Victim" > > Desgroseilliers > > Sent: 02 January 2003 05:01 > > To: [EMAIL PROTECTED] > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > Of course you can format packets in WinSock, WinSock is the Windows > > network sockets API. Essentially all the network connectivity > > functions for Windows > > programs run through WinSock, even Half-Life's. Some of the MFC stuff > that > > uses WinSock may be higher-level, but WinSock itself can send TCP and > UDP > > packets just fine. You need to do more to use raw sockets to write the > > whole > > packet yourself, including the protocol header (and that only works > for > > administrator accounts under 2K/XP), but as Half-Life uses UDP for > > non-player connections there shouldn't be a problem. > > > > The packet format should be in the full SDK (at least it used to be) > -- > > it's > > in a "Server Info" folder with the name "server protocol.txt". It > contains > > both the old and new formats for querying server info, as well as the > > master > > server query protocol, but the RCON protocol isn't there. If you need > > that, > > I'm sure I can dig it up. > > > > > > - Original Message - > > From: "Miguel Alemán" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Wednesday, January 01, 2003 3:58 PM > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > > > > You can't format packets in WinSock. WinSock is a higher level > protocol. > > > > > > Try searching the newsgroup database (maybe the old one on Topica), > I > > > remember a thread where they discussed the format for sending > commands > > to > > > the dedicated server using C. You could also try searching Yahoo for > an > > open > > > source utility which does the same thing, many exist and from the > code > > you > > > could see how the commands are formatted. > > > > > > - Original Message ----- > > > From: "Dan Cox" <[EMAIL PROTECTED]> > > > To: <[EMAIL PROTECTED]> > > > Sent: Wednesday, January 01, 2003 11:50 AM > > > Subject: RE: [hlcoders] Sending commands to HLDS > > > > > &
RE: [hlcoders] Sending commands to HLDS
Hmm I couldn't find anything in the VERC articles unless I searched with the wrong words. :P Best I found was the protocol information from the SDK on the forums. http://www.chatbear.com/uploaded/1004597016-server%20protocol.txt ^ Might have to register to see it but I doubt it unless it's protected by .htaccess Anyway I think the original poster has all the information now to begin building something. :) > -Original Message- > From: [EMAIL PROTECTED] [mailto:hlcoders- > [EMAIL PROTECTED]] On Behalf Of Ryan "Professional Victim" > Desgroseilliers > Sent: 02 January 2003 05:59 > To: [EMAIL PROTECTED] > Subject: Re: [hlcoders] Sending commands to HLDS > > Yeah, the articles there work nicely (although they do use Delphi which > may > not be particularly intuitive) -- there was also one at the VERC > collective > as well if I'm not mistaken. The RCON format used to be fairly > straightforward, but then it was modified to use a challenge protocol to > make it more secure or something to that effect. It's still a relatively > simple operation, you just need two messages instead of one. > > - Original Message - > From: "Detritus" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Wednesday, January 01, 2003 6:44 PM > Subject: RE: [hlcoders] Sending commands to HLDS > > > > The master server protocol in the SDK is a bit outdated but it still > works except it will just send you 200+ random IP:Port's. > I suggest reading through KQuery's article which explains how to use the > updated protocol to get a full list of servers (around 28,000) as well > as use filters. > http://www.kquery.com/developer/index.php?article=5 > Also KQuery has written an article on the rcon protocol so that might be > handy to read through. > http://www.kquery.com/developer/index.php?article=13 > > > > > -Original Message- > > From: [EMAIL PROTECTED] [mailto:hlcoders- > > [EMAIL PROTECTED]] On Behalf Of Ryan "Professional Victim" > > Desgroseilliers > > Sent: 02 January 2003 05:01 > > To: [EMAIL PROTECTED] > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > Of course you can format packets in WinSock, WinSock is the Windows > > network > > sockets API. Essentially all the network connectivity functions for > > Windows > > programs run through WinSock, even Half-Life's. Some of the MFC stuff > that > > uses WinSock may be higher-level, but WinSock itself can send TCP and > UDP > > packets just fine. You need to do more to use raw sockets to write the > > whole > > packet yourself, including the protocol header (and that only works > for > > administrator accounts under 2K/XP), but as Half-Life uses UDP for > > non-player connections there shouldn't be a problem. > > > > The packet format should be in the full SDK (at least it used to be) > -- > > it's > > in a "Server Info" folder with the name "server protocol.txt". It > contains > > both the old and new formats for querying server info, as well as the > > master > > server query protocol, but the RCON protocol isn't there. If you need > > that, > > I'm sure I can dig it up. > > > > > > - Original Message - > > From: "Miguel Alemán" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Wednesday, January 01, 2003 3:58 PM > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > > > > You can't format packets in WinSock. WinSock is a higher level > protocol. > > > > > > Try searching the newsgroup database (maybe the old one on Topica), > I > > > remember a thread where they discussed the format for sending > commands > > to > > > the dedicated server using C. You could also try searching Yahoo for > an > > open > > > source utility which does the same thing, many exist and from the > code > > you > > > could see how the commands are formatted. > > > > > > - Original Message - > > > From: "Dan Cox" <[EMAIL PROTECTED]> > > > To: <[EMAIL PROTECTED]> > > > Sent: Wednesday, January 01, 2003 11:50 AM > > > Subject: RE: [hlcoders] Sending commands to HLDS > > > > > > > > > > Looking for the packet format. Looking to do some Winsock > programming > > > > but completely lost the structure to send/receive about a year > ago. > > > > > > > > -Original Message- > > > > From: [EMAIL PROTECTED] &
Re: [hlcoders] Sending commands to HLDS
Yeah, the articles there work nicely (although they do use Delphi which may not be particularly intuitive) -- there was also one at the VERC collective as well if I'm not mistaken. The RCON format used to be fairly straightforward, but then it was modified to use a challenge protocol to make it more secure or something to that effect. It's still a relatively simple operation, you just need two messages instead of one. - Original Message - From: "Detritus" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, January 01, 2003 6:44 PM Subject: RE: [hlcoders] Sending commands to HLDS The master server protocol in the SDK is a bit outdated but it still works except it will just send you 200+ random IP:Port's. I suggest reading through KQuery's article which explains how to use the updated protocol to get a full list of servers (around 28,000) as well as use filters. http://www.kquery.com/developer/index.php?article=5 Also KQuery has written an article on the rcon protocol so that might be handy to read through. http://www.kquery.com/developer/index.php?article=13 > -Original Message- > From: [EMAIL PROTECTED] [mailto:hlcoders- > [EMAIL PROTECTED]] On Behalf Of Ryan "Professional Victim" > Desgroseilliers > Sent: 02 January 2003 05:01 > To: [EMAIL PROTECTED] > Subject: Re: [hlcoders] Sending commands to HLDS > > Of course you can format packets in WinSock, WinSock is the Windows > network > sockets API. Essentially all the network connectivity functions for > Windows > programs run through WinSock, even Half-Life's. Some of the MFC stuff that > uses WinSock may be higher-level, but WinSock itself can send TCP and UDP > packets just fine. You need to do more to use raw sockets to write the > whole > packet yourself, including the protocol header (and that only works for > administrator accounts under 2K/XP), but as Half-Life uses UDP for > non-player connections there shouldn't be a problem. > > The packet format should be in the full SDK (at least it used to be) -- > it's > in a "Server Info" folder with the name "server protocol.txt". It contains > both the old and new formats for querying server info, as well as the > master > server query protocol, but the RCON protocol isn't there. If you need > that, > I'm sure I can dig it up. > > > ----- Original Message - > From: "Miguel Alemán" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Wednesday, January 01, 2003 3:58 PM > Subject: Re: [hlcoders] Sending commands to HLDS > > > > You can't format packets in WinSock. WinSock is a higher level protocol. > > > > Try searching the newsgroup database (maybe the old one on Topica), I > > remember a thread where they discussed the format for sending commands > to > > the dedicated server using C. You could also try searching Yahoo for an > open > > source utility which does the same thing, many exist and from the code > you > > could see how the commands are formatted. > > > > - Original Message - > > From: "Dan Cox" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Wednesday, January 01, 2003 11:50 AM > > Subject: RE: [hlcoders] Sending commands to HLDS > > > > > > > Looking for the packet format. Looking to do some Winsock programming > > > but completely lost the structure to send/receive about a year ago. > > > > > > -Original Message- > > > From: [EMAIL PROTECTED] > > > [mailto:[EMAIL PROTECTED]] On Behalf Of Nick > McLaren > > > Sent: Wednesday, January 01, 2003 1:20 PM > > > To: [EMAIL PROTECTED] > > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > > > > > > > > > The format of the packet or format of the data. The data is actually > the > > > same as the way the log entries show up in the local logs. You can > also > > > view raw logs via HLSW (www.hlsw.de) to see how it is received. As far > > > as sending commands to HLDS I assume you mean either to retrieve > status > > > information about the server or via RCON which I'm certain you can > > > either find an object for or use sockets. Of course I don't have the > > > protocol data handy, so I guess I'm not a whole lot of help there! > Hey, > > > I tried! hehe! ;) > > > > > > --- > > > Nick McLaren, CCNA, SCSA > > > BattleLAN Technical Admin > > > <[EMAIL PROTECTED]> > > > http://www.battlelan.com/ > > > --- >
RE: [hlcoders] Sending commands to HLDS
The master server protocol in the SDK is a bit outdated but it still works except it will just send you 200+ random IP:Port's. I suggest reading through KQuery's article which explains how to use the updated protocol to get a full list of servers (around 28,000) as well as use filters. http://www.kquery.com/developer/index.php?article=5 Also KQuery has written an article on the rcon protocol so that might be handy to read through. http://www.kquery.com/developer/index.php?article=13 > -Original Message- > From: [EMAIL PROTECTED] [mailto:hlcoders- > [EMAIL PROTECTED]] On Behalf Of Ryan "Professional Victim" > Desgroseilliers > Sent: 02 January 2003 05:01 > To: [EMAIL PROTECTED] > Subject: Re: [hlcoders] Sending commands to HLDS > > Of course you can format packets in WinSock, WinSock is the Windows > network > sockets API. Essentially all the network connectivity functions for > Windows > programs run through WinSock, even Half-Life's. Some of the MFC stuff that > uses WinSock may be higher-level, but WinSock itself can send TCP and UDP > packets just fine. You need to do more to use raw sockets to write the > whole > packet yourself, including the protocol header (and that only works for > administrator accounts under 2K/XP), but as Half-Life uses UDP for > non-player connections there shouldn't be a problem. > > The packet format should be in the full SDK (at least it used to be) -- > it's > in a "Server Info" folder with the name "server protocol.txt". It contains > both the old and new formats for querying server info, as well as the > master > server query protocol, but the RCON protocol isn't there. If you need > that, > I'm sure I can dig it up. > > > - Original Message - > From: "Miguel Alemán" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Wednesday, January 01, 2003 3:58 PM > Subject: Re: [hlcoders] Sending commands to HLDS > > > > You can't format packets in WinSock. WinSock is a higher level protocol. > > > > Try searching the newsgroup database (maybe the old one on Topica), I > > remember a thread where they discussed the format for sending commands > to > > the dedicated server using C. You could also try searching Yahoo for an > open > > source utility which does the same thing, many exist and from the code > you > > could see how the commands are formatted. > > > > - Original Message - > > From: "Dan Cox" <[EMAIL PROTECTED]> > > To: <[EMAIL PROTECTED]> > > Sent: Wednesday, January 01, 2003 11:50 AM > > Subject: RE: [hlcoders] Sending commands to HLDS > > > > > > > Looking for the packet format. Looking to do some Winsock programming > > > but completely lost the structure to send/receive about a year ago. > > > > > > -Original Message- > > > From: [EMAIL PROTECTED] > > > [mailto:[EMAIL PROTECTED]] On Behalf Of Nick > McLaren > > > Sent: Wednesday, January 01, 2003 1:20 PM > > > To: [EMAIL PROTECTED] > > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > > > > > > > > > The format of the packet or format of the data. The data is actually > the > > > same as the way the log entries show up in the local logs. You can > also > > > view raw logs via HLSW (www.hlsw.de) to see how it is received. As far > > > as sending commands to HLDS I assume you mean either to retrieve > status > > > information about the server or via RCON which I'm certain you can > > > either find an object for or use sockets. Of course I don't have the > > > protocol data handy, so I guess I'm not a whole lot of help there! > Hey, > > > I tried! hehe! ;) > > > > > > --- > > > Nick McLaren, CCNA, SCSA > > > BattleLAN Technical Admin > > > <[EMAIL PROTECTED]> > > > http://www.battlelan.com/ > > > --- > > > > > > On Wed, 1 Jan 2003, Dan Cox wrote: > > > > > > > This is a multi-part message in MIME format. > > > > -- > > > > [ Picked text/plain from multipart/alternative ] > > > > Hello all, > > > >I used to have this info a few years ago but it's been lost > since. > > > > > > > I need to know where to look in the SDK to find the info on how to > > > > send commands to HLDS using Visual Basic or C. I'd also like to > find > > > > the format that the data
Re: [hlcoders] Sending commands to HLDS
Of course you can format packets in WinSock, WinSock is the Windows network sockets API. Essentially all the network connectivity functions for Windows programs run through WinSock, even Half-Life's. Some of the MFC stuff that uses WinSock may be higher-level, but WinSock itself can send TCP and UDP packets just fine. You need to do more to use raw sockets to write the whole packet yourself, including the protocol header (and that only works for administrator accounts under 2K/XP), but as Half-Life uses UDP for non-player connections there shouldn't be a problem. The packet format should be in the full SDK (at least it used to be) -- it's in a "Server Info" folder with the name "server protocol.txt". It contains both the old and new formats for querying server info, as well as the master server query protocol, but the RCON protocol isn't there. If you need that, I'm sure I can dig it up. - Original Message - From: "Miguel Alemán" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, January 01, 2003 3:58 PM Subject: Re: [hlcoders] Sending commands to HLDS > You can't format packets in WinSock. WinSock is a higher level protocol. > > Try searching the newsgroup database (maybe the old one on Topica), I > remember a thread where they discussed the format for sending commands to > the dedicated server using C. You could also try searching Yahoo for an open > source utility which does the same thing, many exist and from the code you > could see how the commands are formatted. > > - Original Message - > From: "Dan Cox" <[EMAIL PROTECTED]> > To: <[EMAIL PROTECTED]> > Sent: Wednesday, January 01, 2003 11:50 AM > Subject: RE: [hlcoders] Sending commands to HLDS > > > > Looking for the packet format. Looking to do some Winsock programming > > but completely lost the structure to send/receive about a year ago. > > > > -Original Message- > > From: [EMAIL PROTECTED] > > [mailto:[EMAIL PROTECTED]] On Behalf Of Nick McLaren > > Sent: Wednesday, January 01, 2003 1:20 PM > > To: [EMAIL PROTECTED] > > Subject: Re: [hlcoders] Sending commands to HLDS > > > > > > > > The format of the packet or format of the data. The data is actually the > > same as the way the log entries show up in the local logs. You can also > > view raw logs via HLSW (www.hlsw.de) to see how it is received. As far > > as sending commands to HLDS I assume you mean either to retrieve status > > information about the server or via RCON which I'm certain you can > > either find an object for or use sockets. Of course I don't have the > > protocol data handy, so I guess I'm not a whole lot of help there! Hey, > > I tried! hehe! ;) > > > > --- > > Nick McLaren, CCNA, SCSA > > BattleLAN Technical Admin > > <[EMAIL PROTECTED]> > > http://www.battlelan.com/ > > --- > > > > On Wed, 1 Jan 2003, Dan Cox wrote: > > > > > This is a multi-part message in MIME format. > > > -- > > > [ Picked text/plain from multipart/alternative ] > > > Hello all, > > >I used to have this info a few years ago but it's been lost since. > > > > > I need to know where to look in the SDK to find the info on how to > > > send commands to HLDS using Visual Basic or C. I'd also like to find > > > the format that the data is sent when logging to a remote computer > > > using the 'logaddress' cvar. > > > ___ > > > 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 > > > > > > ___ > 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] Sending commands to HLDS
You can't format packets in WinSock. WinSock is a higher level protocol. Try searching the newsgroup database (maybe the old one on Topica), I remember a thread where they discussed the format for sending commands to the dedicated server using C. You could also try searching Yahoo for an open source utility which does the same thing, many exist and from the code you could see how the commands are formatted. - Original Message - From: "Dan Cox" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, January 01, 2003 11:50 AM Subject: RE: [hlcoders] Sending commands to HLDS > Looking for the packet format. Looking to do some Winsock programming > but completely lost the structure to send/receive about a year ago. > > -Original Message- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED]] On Behalf Of Nick McLaren > Sent: Wednesday, January 01, 2003 1:20 PM > To: [EMAIL PROTECTED] > Subject: Re: [hlcoders] Sending commands to HLDS > > > > The format of the packet or format of the data. The data is actually the > same as the way the log entries show up in the local logs. You can also > view raw logs via HLSW (www.hlsw.de) to see how it is received. As far > as sending commands to HLDS I assume you mean either to retrieve status > information about the server or via RCON which I'm certain you can > either find an object for or use sockets. Of course I don't have the > protocol data handy, so I guess I'm not a whole lot of help there! Hey, > I tried! hehe! ;) > > --- > Nick McLaren, CCNA, SCSA > BattleLAN Technical Admin > <[EMAIL PROTECTED]> > http://www.battlelan.com/ > --- > > On Wed, 1 Jan 2003, Dan Cox wrote: > > > This is a multi-part message in MIME format. > > -- > > [ Picked text/plain from multipart/alternative ] > > Hello all, > >I used to have this info a few years ago but it's been lost since. > > > I need to know where to look in the SDK to find the info on how to > > send commands to HLDS using Visual Basic or C. I'd also like to find > > the format that the data is sent when logging to a remote computer > > using the 'logaddress' cvar. > > ___ > > 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 > > ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
RE: [hlcoders] Sending commands to HLDS
Looking for the packet format. Looking to do some Winsock programming but completely lost the structure to send/receive about a year ago. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Nick McLaren Sent: Wednesday, January 01, 2003 1:20 PM To: [EMAIL PROTECTED] Subject: Re: [hlcoders] Sending commands to HLDS The format of the packet or format of the data. The data is actually the same as the way the log entries show up in the local logs. You can also view raw logs via HLSW (www.hlsw.de) to see how it is received. As far as sending commands to HLDS I assume you mean either to retrieve status information about the server or via RCON which I'm certain you can either find an object for or use sockets. Of course I don't have the protocol data handy, so I guess I'm not a whole lot of help there! Hey, I tried! hehe! ;) --- Nick McLaren, CCNA, SCSA BattleLAN Technical Admin <[EMAIL PROTECTED]> http://www.battlelan.com/ --- On Wed, 1 Jan 2003, Dan Cox wrote: > This is a multi-part message in MIME format. > -- > [ Picked text/plain from multipart/alternative ] > Hello all, >I used to have this info a few years ago but it's been lost since. > I need to know where to look in the SDK to find the info on how to > send commands to HLDS using Visual Basic or C. I'd also like to find > the format that the data is sent when logging to a remote computer > using the 'logaddress' cvar. > ___ > 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] Sending commands to HLDS
The format of the packet or format of the data. The data is actually the same as the way the log entries show up in the local logs. You can also view raw logs via HLSW (www.hlsw.de) to see how it is received. As far as sending commands to HLDS I assume you mean either to retrieve status information about the server or via RCON which I'm certain you can either find an object for or use sockets. Of course I don't have the protocol data handy, so I guess I'm not a whole lot of help there! Hey, I tried! hehe! ;) --- Nick McLaren, CCNA, SCSA BattleLAN Technical Admin <[EMAIL PROTECTED]> http://www.battlelan.com/ --- On Wed, 1 Jan 2003, Dan Cox wrote: > This is a multi-part message in MIME format. > -- > [ Picked text/plain from multipart/alternative ] > Hello all, >I used to have this info a few years ago but it's been lost since. I > need to know where to look in the SDK to find the info on how to send > commands to HLDS using Visual Basic or C. I'd also like to find the > format that the data is sent when logging to a remote computer using the > 'logaddress' cvar. > ___ > 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