@@ -1211,6 +1211,31 @@ void SV_MVD_SendInitialGamestate(mvddest_t* dest)
12111211
12121212 MSG_WriteByte (& buf , svc_serverdata );
12131213
1214+ #ifdef FTE_PEXT_256PACKETENTITIES
1215+ demo .recorder .fteprotocolextensions |= FTE_PEXT_256PACKETENTITIES ;
1216+ #endif
1217+ #ifdef FTE_PEXT_MODELDBL
1218+ demo .recorder .fteprotocolextensions |= FTE_PEXT_MODELDBL ;
1219+ #endif
1220+ #ifdef FTE_PEXT_ENTITYDBL
1221+ demo .recorder .fteprotocolextensions |= FTE_PEXT_ENTITYDBL ;
1222+ #endif
1223+ #ifdef FTE_PEXT_ENTITYDBL2
1224+ demo .recorder .fteprotocolextensions |= FTE_PEXT_ENTITYDBL2 ;
1225+ #endif
1226+ #ifdef FTE_PEXT_SPAWNSTATIC2
1227+ demo .recorder .fteprotocolextensions |= FTE_PEXT_SPAWNSTATIC2 ;
1228+ #endif
1229+ #ifdef FTE_PEXT_TRANS
1230+ demo .recorder .fteprotocolextensions |= FTE_PEXT_TRANS ;
1231+ #endif
1232+ #ifdef FTE_PEXT_COLOURMOD
1233+ demo .recorder .fteprotocolextensions |= FTE_PEXT_COLOURMOD ;
1234+ #endif
1235+ #ifdef FTE_PEXT2_VOICECHAT
1236+ demo .recorder .fteprotocolextensions2 |= FTE_PEXT2_VOICECHAT ;
1237+ #endif
1238+
12141239#ifdef FTE_PEXT_FLOATCOORDS
12151240 //fix up extensions to match sv_bigcoords correctly. sorry for old clients not working.
12161241 if (msg_coordsize == 4 )
@@ -1327,8 +1352,15 @@ void SV_MVD_SendInitialGamestate(mvddest_t* dest)
13271352 MSG_WriteByte (& buf , n );
13281353 SV_WriteRecordMVDMessage (& buf );
13291354 SZ_Clear (& buf );
1330- MSG_WriteByte (& buf , svc_modellist );
1331- MSG_WriteByte (& buf , n + 1 );
1355+ if (n + 1 > 0xff )
1356+ {
1357+ MSG_WriteByte (& buf , svc_fte_modellistshort );
1358+ MSG_WriteShort (& buf , n + 1 );
1359+ } else
1360+ {
1361+ MSG_WriteByte (& buf , svc_modellist );
1362+ MSG_WriteByte (& buf , n + 1 );
1363+ }
13321364 }
13331365 n ++ ;
13341366 s = sv .model_precache [n + 1 ];
0 commit comments