I just noticed something else that the client's server.dll is apparently 
responsible for: command line auto-completion of command names.

At 2006/11/30 11:15 AM, Yahn Bernier wrote:
>Structures in memory exported from the .dll
>The server defines the SendPropxxx with the number of bits and ranges,
>so that's why it has to be networked or copied down from the server .dll
>to the client.
>The client only connects to those with the RecvProps, which don't define
>the network encoding
>
>Yahn
>
>-----Original Message-----
>From: [EMAIL PROTECTED]
>[mailto:[EMAIL PROTECTED] On Behalf Of
>[EMAIL PROTECTED]
>Sent: Wednesday, November 29, 2006 8:15 PM
>To: [email protected]
>Subject: RE: [hlcoders] What is the purpose of the client's server.dll?
>
>Ok, so it is correct that the actual code is basically unused, and
>that's intentional.
>
>What exactly is it checksumming?  The .dll file on disk, or the
>structures in memory?
>
>I hope it's not the .dll, since I release server updates for my mod more
>frequently than client updates, so the client's server.dlls will almost
>always differ from the server's server.dll.
>
>If it's just the structures in memory, it seems like the client.dll
>already knows all of the structure sizes, what with all the stuff like
>IMPLEMENT_CLIENTCLASS_DT, so I still don't get what the purpose of the
>server.dll could be.
>
>(In response to the other email about file sizes - well, reducing
>executable size bloat is always a good thing, even if it's just a few
>megs.)
>
>At 2006/11/29 09:35 PM, you wrote:
>>The client uses the class definitions from the server to see if it can
>>avoid having to request the networked class tables from the remote host
>
>>at signon time. It checksums it's version of the servers and if that
>>matches what the server sends down, then it just builds its client side
>
>>network setup directly from the server data.  It saves a bunch of
>>bandwidth.
>>
>>The system assumes that the client and server .dlls are in sync.
>>
>>We could probably investigate unloading the server.dll after verifying
>>the tables and getting what we need, but since we don't call any
>>methods in it, I think the code would get paged out pretty effectively
>anyway.
>>
>>Yahn
>>
>>-----Original Message-----
>>From: [EMAIL PROTECTED]
>>[mailto:[EMAIL PROTECTED] On Behalf Of
>>[EMAIL PROTECTED]
>>Sent: Wednesday, November 29, 2006 6:31 PM
>>To: [email protected]
>>Subject: [hlcoders] What is the purpose of the client's server.dll?
>>
>>I've asked before, but no one seemed to know.  It's been about a year
>>so I figured I'd try my luck again. :)
>>
>>What is the purpose of the client's server.dll?  Basically, if I ever
>>forget to copy over the latest version, then I get weird Valve "server
>>uses different class tables" errors.  But the mod code in it seemingly
>>serves no actual purpose, as I've added large numbers of asserts,
>>tested on the client, and seen that almost none of the mod code is ever
>called.
>>So there's this 5 megs or so of unused code, but somewhere in it is a
>>magic few bytes that causes "server uses different class tables"
>errors.
>>
>>I would like to trim down the file size more for my mod-downloaders,
>>but I'm also just curious.
>>
>>_______________________________________________
>>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

Reply via email to