Engine? Who needs an engine?

This is an old post from the year 2012 recovered from the Web Archive.

… We do!

It’s release time again, so here’s a summary of the engine changes (relative to 0.5.1), in no particular order.

Lots of small optimisations! The engine uses less memory and is a little faster; a lot of unnecessary code has been removed. (We’re not finished here.)

Anti-camp has been removed. It just didn’t work too well for us.

Some alien buildables are now properly ‘grown’ while being built. Also, the associated creep growth is adjusted to look more natural: as it approaches completion, growth is slowed.

Marauder zap is no longer blindingly bright.

A few double-tap fixes have been made. It’s no longer possible to dodge, e.g., left by some sequence such as left, right then left again. Also, it now works more reliably.

The /delay command now works…

We now support a URI scheme: unv://server:port. It’s fully supported on GNU/Linux (if you install the .desktop file) and on Mac OS X. Partial support is present on Windows.

Translation handling has been improved. Some languages need two (or more!) variants where English has just the one.

Vertex skinning is disabled for AMD graphics hardware when using the open-source driver: it caused breakage in our MD5 models.

There are a few HUD improvements. It’s now possible to have a poison progress bar and arbitrary images for for health and clip indicators. The health meter also works for aliens.

It’s possible to set the field of view for various classes by setting cg_fov_CLASS to an angle (in degrees). The class names are the same as used with /class.

Anybody who makes use of download-pk3.sh will find that it now handles removal of old, previously-referenced files. It relies on the md5sums file for this, so don’t go deleting that. There’s also a default download directory, currently set for all but Windows.

We have new OpenAL sound code, ported from IOQuake 3.

We have software gamma control, also ported from IOQuake 3.

Num Lock is handled properly, so keypad digits don’t now do two things when you’re typing something.

Console spam is reduced a lot.

QVM files now work on Mac OS X 64-bit.

There’s a pipe file which can be used for communication with the client. One intended use is by launchers to tell a running instance to connect to a specific server. (This requires POSIX compliance; consequently, it doesn’t work on Windows.)

Some commands (/builder, /grep, a few others) have had bugs fixed, including some crashers.

Finally, GUIDs are no more.