In general no. Each client is independent so you can have multiple outstanding requests to different clients without a problem. For each client the network stream should remain ordered so in theory the responses for a particular client would be in order but it may be possible that they get out of order.
I have imagined the usage scenario to be a background process in the server slowly walking a list of cvars over and over for each client (with some randomness to prevent clients from knowing when to revert a cvar). - Alfred ----Original Message---- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Predatory Kangaroo Sent: Thursday, August 11, 2005 8:54 PM To: [email protected] Subject: Re: [hlds_apps] New engine API for CVAR queries > Quick question about this call/callback: > > Seeing as it's a callback without any context in the callback, can we > be assured that the replies are going to arrive in the order they > were requested? > > Regards, > Predatory Kangaroo > > On 8/12/05, Alfred Reynolds <[EMAIL PROTECTED]> wrote: > > With the Half-Life 1: Engine release today we added a new API > > function > > to allow a game server to query the value of clients CVAR settings. > > > > There was a new function added to the end of enginefuncs_t: > > void (*pfnQueryClientCvarValue)( const edict_t *player, > > const > > char *cvarName ); > > > > Calling this function requests the value of cvarName from player. > > The result is returned via a callback from NEW_DLL_FUNCTIONS, here > > is the complete NEW_DLL_FUNCTIONS definition: > > > > typedef struct > > { > > // Called right before the object's memory is freed. > > // Calls its destructor. > > void (*pfnOnFreeEntPrivateData)(edict_t > > *pEnt); void (*pfnGameShutdown)(void); > > int (*pfnShouldCollide)( edict_t > > *pentTouched, edict_t *pentOther ); > > void (*pfnCvarValue)( const edict_t > > *pEnt, const char *value ); } NEW_DLL_FUNCTIONS; > > > > When the client responds to the cvar request you will get a callback > > to > > pfnCvarValue() with the edict of the player who is responding and > > the cvars values. > > > > This interface is implemented using a new server engine to client > > engine network command (so there will be some delay from the request > > to the response). This new network protocol has NOT been versioned > > (to minimise the impact of its release), if you wish to use it you > > must make sure your users have an updated server before they try to > > use it. > > > > - Alfred > > > > > > _______________________________________________ > > hlds_apps mailing list > > [email protected] > > http://list.valvesoftware.com/mailman/listinfo/hlds_apps > > > > _______________________________________________ > hlds_apps mailing list > [email protected] > http://list.valvesoftware.com/mailman/listinfo/hlds_apps _______________________________________________ hlds_apps mailing list [email protected] http://list.valvesoftware.com/mailman/listinfo/hlds_apps
