646dbf021c
Fleshes out AI_Chase and AI_Zombie classes Fixes footstep frame numbers Adds unclamped_lerp util function |
||
---|---|---|
.github/workflows | ||
bin | ||
progs | ||
source | ||
tools | ||
.gitignore | ||
LICENSE | ||
README.md |
Nazi Zombies: Portable QuakeC
About
This is the QuakeC portion of the NZ:P source code. QuakeC is responsible for most game-related code such as weapon logic, ai, and Perks. You can read more about QuakeC on the Wikipedia page. NZ:P makes use of CSQC for PC/FTE.
Project Structure
Here is a brief explanation for each of the (sub)directories in this repository:
bin
: Command line binaries for FTEQCC + the ini configuration file.progs
:*.src
files, a list of QuakeC source files each platform is dependent on.source
:client
: FTE-exclusive CSQC, used for the HUD, achievements, and other server->client requests.server
: Game code relevant to all platforms, contains most expected logic.shared
: Definitions for weapon stats and some utility functions shared by both theclient
andserver
.
tools
: Build scripts to compile the QuakeC into.dat
and.lno
files.
Updating
While it's usually recommended to stay on the QuakeC version provided with your build of NZ:P, you may want to update it to the current development builds to test new features and changes. To do this, navigate to the Releases page and follow the instructions there for downloading and installing.
Building (Beginner Friendly)
There are no prerequisites or dependancies needed to build QuakeC other than a working Windows or Linux-based machine (MacOS is not natively supported, but you can use WINE).
Before you can build the NZ:P QuakeC, you must either download this repository (easy) or clone it (for developers).
To build, simply navigate to the tools
directory and run the qc-compiler-*
script for your platform. If unfamiliar with executing shell (.sh
) scripts on Linux systems, give this itsFOSS article a read.
After having done this, a build
directory will have been created, and inside of it will be more directories named after every platform. Copy the contents of the platform directories into your nzp
game directory. (Example: For PSP, copy progs.dat
and progs.lno
from build/handheld
to PSP/GAME/nzportable/nzp
).