this adds multiple things regarding netcode/resynching code
Adds gamestate resending instead of karts old resynch code (which is barely functional) while retaining it
this allows for actual being able to resynch when desyinching most of the time when both the Server and Client are running Saturn
If a client does not run Saturn, the server will just fallback to vanilla resynching and also if the Client is Saturn but not the Server, same thing there
Can be disabled by compiling with NOSATURNSYNCH=1
Adds "cv_allownewsaturnplayer" which allows the server to block connecting vanilla clients but not saturn clients
Very useful for maps that have a habit of making connecting players desynch on join
Its state will always match "cv_allownewplayer" unless its set to another value per CV_StealthSet externally (ex joinblock lua)
This will be disabled when compiled with NOSATURNJOIN=1 (compiling with NOSATURNSYNCH also automatically disables it, since its pretty useless without it)
Adds some preparation for a Packettype to mark connecting clients as a Saturn client
This might be useful in the future to synch extra things between Saturn server and Client
For now this is completely disabled, since unused, though the Packet is reserved in packettype_t to prevent any potential future issues regarding packet order
Every toggle and configurable cvar is in the Server Options/Advanced Server Options
The way everything is Implemented should remain FULL compability between Saturn and Vanilla clients, regardless of Server or Client
this adds multiple things regarding netcode/resynching code
Adds gamestate resending instead of karts old resynch code (which is barely functional) while retaining it this allows for actual being able to resynch when desyinching most of the time when both the Server and Client are running Saturn If a client does not run Saturn, the server will just fallback to vanilla resynching and also if the Client is Saturn but not the Server, same thing there Can be disabled by compiling with NOSATURNSYNCH=1
Adds "cv_allownewsaturnplayer" which allows the server to block connecting vanilla clients but not saturn clients Very useful for maps that have a habit of making connecting players desynch on join Its state will always match "cv_allownewplayer" unless its set to another value per CV_StealthSet externally (ex joinblock lua) This will be disabled when compiled with NOSATURNJOIN=1 (compiling with NOSATURNSYNCH also automatically disables it, since its pretty useless without it)
Adds some preparation for a Packettype to mark connecting clients as a Saturn client This might be useful in the future to synch extra things between Saturn server and Client For now this is completely disabled, since unused, though the Packet is reserved in packettype_t to prevent any potential future issues regarding packet order
Every toggle and configurable cvar is in the Server Options/Advanced Server Options
The way everything is Implemented should remain FULL compability between Saturn and Vanilla clients, regardless of Server or Client