mirror of
https://github.com/alliedmodders/hl2sdk.git
synced 2025-12-07 10:38:23 +00:00
Update INetworkGameServer
This commit is contained in:
parent
12479b44d2
commit
c6b64d5fb0
116
public/iserver.h
116
public/iserver.h
@ -15,6 +15,7 @@
|
|||||||
#include <resourcefile/resourcetype.h>
|
#include <resourcefile/resourcetype.h>
|
||||||
#include <tier1/checksum_crc.h>
|
#include <tier1/checksum_crc.h>
|
||||||
#include <engine/IEngineService.h>
|
#include <engine/IEngineService.h>
|
||||||
|
#include <netadr.h>
|
||||||
|
|
||||||
class IGameSpawnGroupMgr;
|
class IGameSpawnGroupMgr;
|
||||||
struct EventServerAdvanceTick_t;
|
struct EventServerAdvanceTick_t;
|
||||||
@ -28,56 +29,149 @@ class CServerChangelevelState;
|
|||||||
class ISource2WorldSession;
|
class ISource2WorldSession;
|
||||||
class INetworkGameClient;
|
class INetworkGameClient;
|
||||||
class GameSessionConfiguration_t;
|
class GameSessionConfiguration_t;
|
||||||
|
class KeyValues3;
|
||||||
|
class CSVCMsg_ServerInfo_t;
|
||||||
|
class CServerSideClientBase;
|
||||||
|
class CCLCMsg_SplitPlayerConnect_t;
|
||||||
|
|
||||||
|
typedef int ChallengeType_t;
|
||||||
|
|
||||||
abstract_class INetworkGameServer : public IConnectionlessPacketHandler
|
abstract_class INetworkGameServer : public IConnectionlessPacketHandler
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual void Init( const GameSessionConfiguration_t &, const char * ) = 0;
|
virtual void Init( const GameSessionConfiguration_t &, const char * ) = 0;
|
||||||
|
|
||||||
virtual void SetGameSpawnGroupMgr( IGameSpawnGroupMgr * ) = 0;
|
virtual void SetGameSpawnGroupMgr( IGameSpawnGroupMgr * ) = 0;
|
||||||
virtual void SetGameSessionManifest( HGameResourceManifest ) = 0;
|
virtual void SetGameSessionManifest( HGameResourceManifest ) = 0;
|
||||||
|
|
||||||
virtual void RegisterLoadingSpawnGroups( CUtlVector<unsigned int> & ) = 0;
|
virtual void RegisterLoadingSpawnGroups( CUtlVector<unsigned int> & ) = 0;
|
||||||
|
|
||||||
virtual void Shutdown( void ) = 0;
|
virtual void Shutdown( void ) = 0;
|
||||||
virtual void AddRef( void ) = 0;
|
virtual void AddRef( void ) = 0;
|
||||||
virtual void Release ( void ) = 0;
|
virtual void Release ( void ) = 0;
|
||||||
|
|
||||||
virtual CGlobalVars *GetGlobals(void) = 0;
|
virtual CGlobalVars *GetGlobals(void) = 0;
|
||||||
|
|
||||||
virtual bool IsActive( void ) const = 0;
|
virtual bool IsActive( void ) const = 0;
|
||||||
|
virtual bool IsPaused( void ) const = 0;
|
||||||
|
|
||||||
virtual void SetServerTick( int tick ) = 0;
|
virtual void SetServerTick( int tick ) = 0;
|
||||||
virtual int GetServerTick( void ) const = 0; // returns game world tick
|
// returns game world tick
|
||||||
|
virtual int GetServerTick( void ) const = 0;
|
||||||
|
|
||||||
virtual void SetFinalSimulationTickThisFrame( int ) = 0;
|
virtual void SetFinalSimulationTickThisFrame( int ) = 0;
|
||||||
virtual int GetMaxClients( void ) const = 0; // returns current client limit
|
|
||||||
virtual float GetTickInterval( void ) const = 0; // tick interval in seconds
|
// returns current client limit
|
||||||
|
virtual int GetMaxClients( void ) const = 0;
|
||||||
|
|
||||||
virtual void ServerAdvanceTick( const EventServerAdvanceTick_t & ) = 0;
|
virtual void ServerAdvanceTick( const EventServerAdvanceTick_t & ) = 0;
|
||||||
virtual void ServerPollNetworking( const EventServerPollNetworking_t & ) = 0;
|
virtual void ServerPollNetworking( const EventServerPollNetworking_t & ) = 0;
|
||||||
virtual void ServerProcessNetworking( const EventServerProcessNetworking_t & ) = 0;
|
virtual void ServerProcessNetworking( const EventServerProcessNetworking_t & ) = 0;
|
||||||
|
|
||||||
virtual void ServerSimulate( const EventServerSimulate_t & ) = 0;
|
virtual void ServerSimulate( const EventServerSimulate_t & ) = 0;
|
||||||
virtual void ServerPostSimulate( const EventServerPostSimulate_t & ) = 0;
|
virtual void ServerPostSimulate( const EventServerPostSimulate_t & ) = 0;
|
||||||
|
|
||||||
virtual void LoadSpawnGroup( const SpawnGroupDesc_t & ) = 0;
|
virtual void LoadSpawnGroup( const SpawnGroupDesc_t & ) = 0;
|
||||||
virtual void AsyncUnloadSpawnGroup( unsigned int, /*ESpawnGroupUnloadOption*/ int ) = 0;
|
virtual void AsyncUnloadSpawnGroup( unsigned int, /*ESpawnGroupUnloadOption*/ int ) = 0;
|
||||||
virtual void PrintSpawnGroupStatus( void ) const = 0;
|
virtual void PrintSpawnGroupStatus( void ) const = 0;
|
||||||
virtual float GetTimescale( void ) const = 0; // returns the game time scale (multiplied in conjunction with host_timescale)
|
|
||||||
|
// returns the game time scale (multiplied in conjunction with host_timescale)
|
||||||
|
virtual float GetTimescale( void ) const = 0;
|
||||||
|
|
||||||
virtual bool IsSaveRestoreAllowed( void ) const = 0;
|
virtual bool IsSaveRestoreAllowed( void ) const = 0;
|
||||||
|
|
||||||
virtual void SetMapName( const char *pszNewName ) = 0;
|
virtual void SetMapName( const char *pszNewName ) = 0;
|
||||||
virtual const char *GetMapName( void ) const = 0; // current map name (BSP)
|
// current map name (BSP)
|
||||||
|
virtual const char *GetMapName( void ) const = 0;
|
||||||
virtual const char *GetAddonName( void ) const = 0;
|
virtual const char *GetAddonName( void ) const = 0;
|
||||||
|
|
||||||
virtual bool IsBackgroundMap( void ) const = 0;
|
virtual bool IsBackgroundMap( void ) const = 0;
|
||||||
virtual float GetTime( void ) const = 0; // returns game world time
|
|
||||||
virtual void ActivateServer( void ) = 0;
|
// returns game world time (GetServerTick() * tick_interval)
|
||||||
virtual void PrepareForAssetLoad( void ) = 0;
|
virtual float GetTime( void ) const = 0;
|
||||||
virtual int GetServerNetworkAddress( void ) = 0;
|
|
||||||
|
virtual bool ActivateServer( void ) = 0;
|
||||||
|
virtual bool PrepareForAssetLoad( void ) = 0;
|
||||||
|
|
||||||
|
virtual netadr_t GetServerNetworkAddress( void ) = 0;
|
||||||
|
|
||||||
virtual SpawnGroupHandle_t FindSpawnGroupByName( const char *pszName ) = 0;
|
virtual SpawnGroupHandle_t FindSpawnGroupByName( const char *pszName ) = 0;
|
||||||
virtual void MakeSpawnGroupActive( SpawnGroupHandle_t ) = 0;
|
virtual void MakeSpawnGroupActive( SpawnGroupHandle_t ) = 0;
|
||||||
virtual void SynchronouslySpawnGroup( SpawnGroupHandle_t ) = 0;
|
virtual void SynchronouslySpawnGroup( SpawnGroupHandle_t ) = 0;
|
||||||
|
|
||||||
virtual void SetServerState( server_state_t ) = 0;
|
virtual void SetServerState( server_state_t ) = 0;
|
||||||
virtual void SpawnServer( const char * ) = 0;
|
virtual void SpawnServer( const char * ) = 0;
|
||||||
|
|
||||||
virtual int GetSpawnGroupLoadingStatus( SpawnGroupHandle_t ) = 0;
|
virtual int GetSpawnGroupLoadingStatus( SpawnGroupHandle_t ) = 0;
|
||||||
virtual void SetSpawnGroupDescription( SpawnGroupHandle_t, const char * ) = 0;
|
virtual void SetSpawnGroupDescription( SpawnGroupHandle_t, const char * ) = 0;
|
||||||
|
|
||||||
virtual CUtlVector<INetworkGameClient *> *StartChangeLevel( const char *, const char *pszLandmark, void * ) = 0;
|
virtual CUtlVector<INetworkGameClient *> *StartChangeLevel( const char *, const char *pszLandmark, void * ) = 0;
|
||||||
virtual void FinishChangeLevel( CServerChangelevelState * ) = 0;
|
virtual void FinishChangeLevel( CServerChangelevelState * ) = 0;
|
||||||
virtual bool IsChangelevelPending( void ) const = 0;
|
virtual bool IsChangelevelPending( void ) const = 0;
|
||||||
|
|
||||||
virtual void GetAllLoadingSpawnGroups( CUtlVector<SpawnGroupHandle_t> *pOut ) = 0;
|
virtual void GetAllLoadingSpawnGroups( CUtlVector<SpawnGroupHandle_t> *pOut ) = 0;
|
||||||
|
|
||||||
virtual void PreserveSteamID( void ) = 0;
|
virtual void PreserveSteamID( void ) = 0;
|
||||||
virtual void OnKickById( const CCommandContext &context, const CCommand &args) = 0;
|
|
||||||
virtual void OnKickByName( const CCommandContext &context, const CCommand &args) = 0;
|
virtual void unk001() = 0;
|
||||||
|
|
||||||
|
virtual void ReserveServerForQueuedGame( const char *pszReason ) = 0;
|
||||||
|
|
||||||
|
virtual void unk101() = 0;
|
||||||
|
virtual void unk102() = 0;
|
||||||
|
virtual void unk103() = 0;
|
||||||
|
|
||||||
|
virtual void BroadcastPrintf( const char *pszFmt, ... ) FMTFUNCTION( 2, 3 ) = 0;
|
||||||
|
|
||||||
|
virtual void unk201() = 0;
|
||||||
|
virtual void unk202() = 0;
|
||||||
|
virtual void unk203() = 0;
|
||||||
|
virtual void unk204() = 0;
|
||||||
|
virtual void unk205() = 0;
|
||||||
|
|
||||||
|
// Always returns -1 (0xFFFF) as a userid
|
||||||
|
virtual CPlayerUserId GetPlayerUserId( CPlayerSlot slot ) = 0;
|
||||||
|
// Always returns "GetPlayerNetworkIDString"
|
||||||
|
virtual const char *GetPlayerNetworkIDString( CPlayerSlot slot ) = 0;
|
||||||
|
|
||||||
|
// Returns udp port of this server instance
|
||||||
|
virtual int GetUDPPort() = 0;
|
||||||
|
// Returns hostname of this server instance
|
||||||
|
virtual const char *GetName() = 0;
|
||||||
|
|
||||||
|
// AMNOTE: arg names are speculative and might be incorrect!
|
||||||
|
// Sums up across all the connected players.
|
||||||
|
virtual void GetNetStats( float &inflow, float &outflow ) = 0;
|
||||||
|
|
||||||
|
virtual void FillKV3ServerInfo( KeyValues3 *out ) = 0;
|
||||||
|
|
||||||
|
virtual void unk301() = 0;
|
||||||
|
virtual void unk302() = 0;
|
||||||
|
|
||||||
|
// Returns sv_password cvar value, if it's set to "none" nullptr would be returned!
|
||||||
|
virtual const char *GetPassword() = 0;
|
||||||
|
|
||||||
|
virtual void unk401() = 0;
|
||||||
|
virtual void unk402() = 0;
|
||||||
|
|
||||||
|
virtual void FillServerInfo( CSVCMsg_ServerInfo_t *pServerInfo ) = 0;
|
||||||
|
virtual void UserInfoChanged( CPlayerSlot slot ) = 0;
|
||||||
|
|
||||||
|
// 2nd arg is unused.
|
||||||
|
virtual void GetClassBaseline( void *, ServerClass *pClass, intp *pOut ) = 0;
|
||||||
|
|
||||||
|
virtual void unk501() = 0;
|
||||||
|
|
||||||
|
virtual CServerSideClientBase *ConnectClient( const char *pszName, ns_address *pAddr, int socket, CCLCMsg_SplitPlayerConnect_t *pSplitPlayer,
|
||||||
|
const char *pszChallenge, const byte *pAuthTicket, int nAuthTicketLength, bool bIsLowViolence ) = 0;
|
||||||
|
|
||||||
|
virtual void unk601() = 0;
|
||||||
|
virtual void unk602() = 0;
|
||||||
|
|
||||||
|
virtual ChallengeType_t GetChallengeType( const ns_address &addr ) = 0;
|
||||||
|
virtual bool CheckChallenge( const ns_address &addr, const char *pszChallenge ) = 0;
|
||||||
|
|
||||||
|
virtual void CalculateCPUUsage() = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
abstract_class INetworkServerService : public IEngineService
|
abstract_class INetworkServerService : public IEngineService
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user