@@ -547,6 +547,7 @@ void SV_SpawnServer( const char *mapname ) {
547547 qboolean isBot ;
548548 const char * p , * pnames ;
549549 char bspname [MAX_QPATH ];
550+ int pakChecksum = 0 ; // checksum of pk3 map is in
550551
551552 // ydnar: broadcast a level change to all connected clients
552553 if ( svs .clients && !com_errorEntered ) {
@@ -676,6 +677,8 @@ void SV_SpawnServer( const char *mapname ) {
676677 Cvar_Set ( "mapname" , mapname );
677678
678679 Cvar_Set ( "sv_mapChecksum" , va ( "%i" ,checksum ) );
680+ FS_FileIsInPAK ( bspname , & pakChecksum , NULL );
681+ Cvar_Set ( "sv_currentPak" , va ( "%d" , pakChecksum ) );
679682
680683 // serverid should be different each time
681684 sv .serverId = com_frameTime ;
@@ -780,6 +783,12 @@ void SV_SpawnServer( const char *mapname ) {
780783 // rebuild referenced paks list
781784 p = FS_ReferencedPakNames ( NULL );
782785 }
786+ if ( sv_pure -> integer == 0 ) {
787+ int cgameChksum = 0 , uiChksum = 0 ;
788+ FS_FileIsInPAK ( SYS_DLLNAME_CGAME , & cgameChksum , NULL );
789+ FS_FileIsInPAK ( SYS_DLLNAME_UI , & uiChksum , NULL );
790+ Cvar_Set ( "sv_clientPaks" , va ("%d %d" , cgameChksum , uiChksum ) );
791+ }
783792 Cvar_Set ( "sv_referencedPakNames" , p );
784793
785794 p = FS_ReferencedPakChecksums ( NULL );
@@ -950,6 +959,8 @@ void SV_Init( void )
950959 Cvar_Get ( "sv_referencedPaks" , "" , CVAR_SYSTEMINFO | CVAR_ROM );
951960 sv_referencedPakNames = Cvar_Get ( "sv_referencedPakNames" , "" , CVAR_SYSTEMINFO | CVAR_ROM );
952961 Cvar_SetDescription ( sv_referencedPakNames , "Variable holds a list of all the pk3 files the server loaded data from" );
962+ Cvar_Get ( "sv_currentPak" , "0" , CVAR_SERVERINFO | CVAR_ROM );
963+ Cvar_Get ( "sv_clientPaks" , "0 0" , CVAR_SERVERINFO | CVAR_ROM );
953964
954965 // server vars
955966 sv_rconPassword = Cvar_Get ( "rconPassword" , "" , CVAR_TEMP );
@@ -1188,6 +1199,10 @@ void SV_Shutdown( const char *finalmsg ) {
11881199 Cvar_Set ( "sv_referencedPakNames" , "" );
11891200 Cvar_Set ( "sv_mapChecksum" , "" );
11901201 Cvar_Set ( "sv_serverid" , "0" );
1202+ Cvar_Set ( "sv_paks" , "" );
1203+ Cvar_Set ( "sv_pakNames" , "" );
1204+ Cvar_Set ( "sv_currentPak" , "0" );
1205+ Cvar_Set ( "sv_clientPaks" , "0 0" );
11911206
11921207 Sys_SetStatus ( "Server is not running" );
11931208}
0 commit comments