Info: 3 .dat Files - Subject9x/battleMETAL GitHub Wiki
The .dat files
Quake C game code is split into 3 core files, all housed within /iD1/.
Progs.dat
The big one. This contains all compiled server code. Mapping this to the project structure results in the following being put into progs.dat
- [code root] - basically all files directly in /metaldata/qc/
- [/qc/q1src] - legacy q1 code that will be removed as best as possible.
- [/qc/main] - another big one, 90% of battleMETAL server code is here!
- [/qc/dp] - contains all core darkplaces quake C extension code files, leave this as-is.
- [/qc/common] - shared by all 3 .dat modules, contains game data constants and such.
- [/qc/data_dir_backup] - contains a backup of cache scripts, menu scripts, map file scripts
Menu.dat
- [/qc/menu] - contains all game code for the Main Menu system which is defined as all menus seen when player presses the 'escape' button.
- this has its own progs.dat definition file contained here as well.
CSQC.dat
- [/qc/client] - compiles to csqc.dat, contains all in-mission menu and HUD code.
- Quake 1 is a Client/Server architecture even when running single player, all fancy HUD stuff is done client-side regardless of game mode.