Hosting and domain costs until October 2024 have been generously sponsored by dumptruck_ds. Thank you!
EXT CSQC
From Quake Wiki
Introduction
QuakeC code is normally run only on the server as a progs.dat file. Engines which support the EXT_CSQC extension run QuakeC code on the client. This enables the mod to control certain extra features:
- Customize the status bar.
- Adjust models and draw extra things on models (even with only one entity on the server).
- Implement prediction.
- Override the FOV.
- Launch sounds locally.
- Implement what would otherwise require another QSG extension.
By standard, CSQC should be compiled into and loaded from a csprogs.dat. Engines can provide cvars to specify a different name but that isn't part of this extension.
EXT_CSQC is intended to replace as much of the fixed function engine code as possible, without requiring knowledge of the engine code mechanisms and in a way that is consistent with the existing style of QuakeC.
The extension defines the whole csprogs, as well as adding some builtins and constants on the server.
EXT_CSQC System Globals Fields and Builtins List lists the core features of EXT_CSQC on the client. The following sections in this article explain their use.