Re: [hlcoders] FW: [hlds_apps] New engine API for CVAR queries
Hello, thank you very much for this update, because this allows some interesting and usefull extensions to plugins for league servers to ensure that cvar values are in range of the values that are allowed (instead of forcing values what could be circumvented). But I wonder if cvars like rcon_password and so on will stay protected like they seem to be when you use the cvarlist command? Greetings and sorry for my bad English Dominik ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] FW: [hlds_apps] New engine API for CVAR queries
Well, that doesn't make much sense. Despite the fact that Florian will kill me if I bump the API version again ;] I really think this is a problem the Engine itself should take care of. Metamod is only a wrapper. We can't solve (easily) the fact that you don't know if the query fails or what cvar the query returns. Nonetheless, Jussi Kivillina and I will come up with something... P.S. to the person who said this would be good for leagues -- yes, at @ esportsea we've been waiting for something like this. Just note that since there's no general clcvar change callback, you'll have to query every few seconds or so, which might generate unnecessary traffic. ---David BAILOPAN Anderson http://www.sourcemod.net/ http://www.sourcemm.net/ Alfred Reynolds wrote: You can use MetaMod to provide this de-confliction layer if you need it. - Alfred Original Message From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of David Anderson Sent: Thursday, August 11, 2005 9:46 PM To: hlcoders@list.valvesoftware.com Subject: Re: [hlcoders] FW: [hlds_apps] New engine API for CVAR queries Wouldn't it be better to have: void(*pfnCvarValue)( const edict_t *pEnt, const char *cvar, const char *value ); Instead? In a multi-plugin system, it's easily conceivable you could have more than one cvar request at a time. The specification doesn't say whether requests are stacked or if one request overwrites the last... but either way, your callback won't know which cvar it's getting information for. If I'm wrong here, please clarify for me :) ---David BAILOPAN Anderson http://www.sourcemod.net/ http://www.sourcemm.net/ Alfred Reynolds wrote: Original Message From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Alfred Reynolds Sent: Thursday, August 11, 2005 3:06 PM To: hlds_apps@list.valvesoftware.com; Zeph; Ruiner Subject: [hlds_apps] New engine API for CVAR queries 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 hlds_apps@list.valvesoftware.com http://list.valvesoftware.com/mailman/listinfo/hlds_apps ___ 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
[hlcoders] FW: [hlds_apps] New engine API for CVAR queries
Original Message From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Alfred Reynolds Sent: Thursday, August 11, 2005 3:06 PM To: hlds_apps@list.valvesoftware.com; Zeph; Ruiner Subject: [hlds_apps] New engine API for CVAR queries 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 hlds_apps@list.valvesoftware.com http://list.valvesoftware.com/mailman/listinfo/hlds_apps ___ To unsubscribe, edit your list preferences, or view the list archives, please visit: http://list.valvesoftware.com/mailman/listinfo/hlcoders
Re: [hlcoders] FW: [hlds_apps] New engine API for CVAR queries
Wouldn't it be better to have: void(*pfnCvarValue)( const edict_t *pEnt, const char *cvar, const char *value ); Instead? In a multi-plugin system, it's easily conceivable you could have more than one cvar request at a time. The specification doesn't say whether requests are stacked or if one request overwrites the last... but either way, your callback won't know which cvar it's getting information for. If I'm wrong here, please clarify for me :) ---David BAILOPAN Anderson http://www.sourcemod.net/ http://www.sourcemm.net/ Alfred Reynolds wrote: Original Message From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Alfred Reynolds Sent: Thursday, August 11, 2005 3:06 PM To: hlds_apps@list.valvesoftware.com; Zeph; Ruiner Subject: [hlds_apps] New engine API for CVAR queries 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 hlds_apps@list.valvesoftware.com http://list.valvesoftware.com/mailman/listinfo/hlds_apps ___ 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] FW: [hlds_apps] New engine API for CVAR queries
You can use MetaMod to provide this de-confliction layer if you need it. - Alfred Original Message From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of David Anderson Sent: Thursday, August 11, 2005 9:46 PM To: hlcoders@list.valvesoftware.com Subject: Re: [hlcoders] FW: [hlds_apps] New engine API for CVAR queries Wouldn't it be better to have: void (*pfnCvarValue)( const edict_t *pEnt, const char *cvar, const char *value ); Instead? In a multi-plugin system, it's easily conceivable you could have more than one cvar request at a time. The specification doesn't say whether requests are stacked or if one request overwrites the last... but either way, your callback won't know which cvar it's getting information for. If I'm wrong here, please clarify for me :) ---David BAILOPAN Anderson http://www.sourcemod.net/ http://www.sourcemm.net/ Alfred Reynolds wrote: Original Message From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Alfred Reynolds Sent: Thursday, August 11, 2005 3:06 PM To: hlds_apps@list.valvesoftware.com; Zeph; Ruiner Subject: [hlds_apps] New engine API for CVAR queries 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 hlds_apps@list.valvesoftware.com http://list.valvesoftware.com/mailman/listinfo/hlds_apps ___ 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