lowmemory: tweak some protocol limits for HL1, restore bit counts (maybe even restore multiplayer compatibility)

This commit is contained in:
mittorn 2019-10-29 11:35:02 +07:00
parent 06cadacb59
commit 5e5ffec67d
1 changed files with 22 additions and 26 deletions

View File

@ -134,32 +134,6 @@ GNU General Public License for more details.
#define MAX_LIGHTSTYLES 64 // original quake limit
#define MAX_RENDER_DECALS 4096 // max rendering decals per a level
#if XASH_LOW_MEMORY == 2
// memory reduced protocol, not for use in multiplayer
#define MAX_VISIBLE_PACKET_BITS 7 // 2048 visible entities per frame (hl1 has 256)
#define MAX_VISIBLE_PACKET (1<<MAX_VISIBLE_PACKET_BITS)
#define MAX_VISIBLE_PACKET_VIS_BYTES ((MAX_VISIBLE_PACKET + 7) / 8)
#define MAX_EVENT_BITS 7
#define MAX_EVENTS (1<<MAX_EVENT_BITS) // 10 bits == 1024 events (the original Half-Life limit)
#define MAX_MODEL_BITS 8 // 12 bits == 4096 models
#define MAX_SUPPORTED_MODELS (1<<MAX_MODEL_BITS)
#define MAX_MODELS 256
#define MAX_SOUNDS 512 // do not change MAX_SOUND_BITS
#define MAX_SOUNDS_NONSENTENCE 2048
#define MAX_CUSTOM_BITS 4
#define MAX_CUSTOM (1<<MAX_CUSTOM_BITS)// 10 bits == 1024 generic file
#define MAX_DLIGHTS 16 // dynamic lights (rendered per one frame)
#define MAX_ELIGHTS 32 // entity only point lights
#define MAX_RENDER_DECALS 64 // max rendering decals per a level
#endif
// sound proto
#define MAX_SND_FLAGS_BITS 14
#define MAX_SND_CHAN_BITS 4
@ -206,6 +180,28 @@ GNU General Public License for more details.
#define FRAGMENT_MAX_SIZE 64000 // maximal fragment size
#define FRAGMENT_LOCAL_SIZE FRAGMENT_MAX_SIZE // local connection
#if XASH_LOW_MEMORY == 2
// memory reduced protocol, not for use in multiplayer
#define MAX_VISIBLE_PACKET 128
#define MAX_VISIBLE_PACKET_VIS_BYTES ((MAX_VISIBLE_PACKET + 7) / 8)
#define MAX_EVENTS 128
#define MAX_SUPPORTED_MODELS 512
#define MAX_MODELS 512
#define MAX_SOUNDS 512 // do not change MAX_SOUND_BITS
#define MAX_SOUNDS_NONSENTENCE 2048
#define MAX_CUSTOM 32
#define MAX_DLIGHTS 16 // dynamic lights (rendered per one frame)
#define MAX_ELIGHTS 32 // entity only point lights
#define MAX_RENDER_DECALS 64 // max rendering decals per a level
#define MAX_RESOURCES 1024
#endif
// Quake1 Protocol
#define PROTOCOL_VERSION_QUAKE 15