5/06/20 KMQuake2 0.20 Update 8 in progress

Due to a large number of bugs reported by MaxEd, an unexpected update to KMQ2 0.20 is currently in progress and nearing release.  I had hoped to have the next major release with scripted huds and new menus out by now, but feature creep and other projects got in the way.

Besides lots of bug fixes, this update will also include the following changes from the development branch:

  • Added support for triple-monitor surround modes via custom resolutions.
  • Added Windows DPI scaling detection from Yamagi Quake2.
  • Added 3840x1600 and 4096x2160 video modes.
  • Added support for 160Hz and 240Hz refresh rates.
  • Added cel shading.
  • Shadow volumes will now be drawn even if the model isn't in view.
  • Added font upscaling (with optional blending by Skuller from Q2Pro) for old 128x128 fonts.
  • Added adjustable horizontal offset to third-person mode.
  • Added support for quake2:// URLs.
  • Added UDP fallback from HTTP downloads and support for Q2Pro-style HTTP URLs.
  • Now reads/writes savegames, config files, demos, etc. to the user profile Saved Games folder, and auto-downloaded files are now written to to the user profile Downloads folder.  This eliminates the need to run the game in Administrator mode when file permissions issues are present.
  • Now compresses .sav and .sv2 savegame files into .savz files.
  • Added basegame3 cvar to load data from up to 3 other other mods.  Works in conjunction with basegame and basegame2, which must be set first.
  • Screenshots now go up to 9999.

Instead of contacting me to get access to private pre-release builds, I've set up a Bitbucket repo with nightly test builds of this latest update.  The full source code is also viewable.  Please email me with any bugs you may find.

4/30/15 KMQuake2 0.20 Update 7

I've been getting a good number of requests for multiplayer-oriented features in KMQ2.  So I've produced one last update to v0.20 before the next major release, intended to make KMQ2 a more viable multiplayer client.

Here's a list of update 7's changes:

  • Added HTTP download support from R1Q2.
  • Decoupled video framerate from network framerate.  This should allow higher framerates as well as better network performance.  The old synchronous mode can be re-enabled by setting the cvar cl_async to 0.
  • Added .loc file support. Loads .loc files (locs/<mapname>.loc) from the current mod dir and baseq2.  Both 1/8th precision integer and floating-point formats are supported.
  • Fixed cl_servertrick and allow_download cvars being forced to 0 when starting a single-player game.  Cl_servertrick is now saved to config.
  • Capped connect message size to 1200 bytes in multiplayer to fix problems with clients geting hung up on connect.
  • Multiplayer network messages are now limited to 2800 bytes (does not apply to local client on a listen server).  This can be disabled by setting the cvar sv_limit_msglen to 0.
  • Fixed imbalance in mouse pitch and yaw sensitivity in widescreen video modes with autosensitivity enabled.
  • Fixed save path being set to Quake2 root instead of baseq2 when gamedir is set to a blank string.
  • Fixed crash on map load with long map names.
  • Fixed undersized viewport and corrupt screenshots at 1366x768 resolution.
  • Gamma ramping now switches off and the desktop resolution is restored when alt-tabbing out of the game.
  • Added 5K (5120x2880) and 3440x1440 video modes.
  • Added custom width and height fields to video menu.
  • Added support for PNG textures/images.
  • Added option for PNG screenshots to the advanced video menu.
  • Added format-specific screenshot commands (screenshot_tga, screenshot_jpg, screenshot_png).
  • Added basegame and basegame2 cvars to load data from other mods.
  • Added option for new Q3-style console background (cvar con_newconback).
  • Added download speed counter by Frank Sapone.
  • Changed savegame format for included Lazarus DLL.  Savegames will now work across DLL builds as long as no changes to data structures (edict_t, etc) are made.

As always, this updated version is in the downloads section.

10/14/13 KMQuake2 0.20 and RtCW SP Unofficial Patch 4K updates

I've put out another minor KMQ2 update (I've stopped calling them hotfixes now) that's a bit different from previous ones.  4K resolution support tops the list, and Pieter Verhoeven has contributed new, high-res HUD numbers along with his excellent high-res menu graphics that have already had screenshots posted.  Also included is a set of higher-res HUD icons I made.

Here's a list of update 6's changes:

  • Added 3200x1800, 3840x2160, and 3840x2400 video modes.
  • Added writeconfig command.  Usage: writeconfig <configname>  Using no parameter will write kmq2config.cfg.
  • Inventory and help computer/scoreboard are now always scaled up from 640x480, instead of sizing based on status bar scale.
  • Added 3D cursor to main menu.
  • Added impact decals for the BFG and disruptor.
  • Optimized load times with filename hashing.
  • Added simplified load screen.  The original load screen can be re-enabled in the interface menu.
  • Fixed savegames in baseq2 being visible in the save and load menus when running with a different game dir.
  • Increased MAX_OSPATH to 256 characters.  This should improve compatibility when Quake2 is installed under C:\Program Files.
  • Fixed lag/stutter on opening save and load game menus.
  • Fixed tag mode not working when set from the start server menu.
  • Added option to display 4-digit numbers on the default HUD.  This can be changed with the status bar digit squeezing option in the screen options menu.
  • Saveshots are now sized to the nearest power of two for each dimension, so a saveshot made at 1024x768 resolution will have a 1024x512 saveshot.
  • Tweaked cvar defaults for bloom effect to be more subtle.

If that wasn't enough, the RtCW SP Unofficial Patch has also been updated with 4K resolution support.  Here's its list of v1.42c's changes:

  • Added 3200x1800 and 3840x2160 video modes.
  • Increased max size of cvar lists in UI module to support additional video modes.
  • Fixed tesla gun and flamethrower firing in noclip mode, when leaning, and when underwater.
  • Fixed hint icon appearing for alarm boxes at ranges farther than they can be activated from.
  • Fixed saved games not properly restoring the g_episode cvar, making the mission debrief tabs disappear in the notebook.
  • Fixed loading autosaves partially breaking briefing cutscenes.

As always, these updated versions are in the downloads section.

5/31/13 Unofficial Quake2 Patch v3.24 released!

After a lengthy private beta, the v3.24 unofficial Quake2 patch is now out.  Refresh rate control and a custom resolution mode have been added to the video menu in the final build.  Note that the source for the fixed missionpack DLLs is in a separate archive due to incompatible licenses.

I've also made some minor updates to the RtCW SP Unofficial v1.42b Patch:

  • Added 2560x1080 ultra-wide video mode.
  • Fixed FOV scaling in cutscenes.
  • The GL_EXTENSIONS string is now printed two extensions per line to avoid possible future buffer overflows.
  • Added custom resolution mode to video menu.

Finally, KMQ2 v0.20 has recieved some minor updates with hotfix 5:

  • Added refresh rate control to the video menu.
  • Added custom resolution mode option to the video menu.
  • Added option to disable non-power-of-2 mipmaped textures to the video menu (workaround for badly implemented NPOT texture support in some drivers).
  • Crosshair scaling now derives from a fixed size, so the first 3 crosshairs can never be misaligned.
  • Better error handling for model scripts.
  • Better tolerance for model_spawn usermodel paths (won't append "models/" if it's already there).
  • Now blocks certain files that shouldn't be in paks/pk3s from loading.
  • Fixed crash that can occur when no hardware acceleration is found.
  • Fixed graphical corruption caused by some errors during map loads.

All this is in the downloads section.

12/27/12 KMQuake2 0.20 hotfix 4

Since I recently discovered a fix for the long-standing bug of missing audio in the intermission cutscenes, I've decided to slip it into again yet another hotfix for v0.20.   This hotfix also includes some optimizations to world rendering in multitexture mode that improve performance in maps with higher than normal r_speeds.

The hotfix is in the downloads section, along with an updated zip of the whole engine and the hotfix's updated source code.

12/16/12 Status update and Unofficial Quake2 Patch v3.24 patch now in testing

Some recent development headaches with KMQuake2 have led to a lack of updates.  Power management problems with some recent nVidia drivers were causing what appeared to be application crashes and hangs, and led to a short suspension of work.  Those problems are now past, and I have resumed progress on KMQ2.  Recent changes include:

  • Addional optimizations to rendering (specifically lightmap handling) and map load times.  KMQ2 should now be playable on Intel integerated graphics.
  • Fixed the lack of audio in Quake2's intermission cutscenes (finally!).
  • Added writeconfig command that saves config changes without exiting.
  • Added PNG format screenshots.
  • Added support for the new 21:9 ultra-wide aspect monitors now entering the market.

Among other things, volumetric fog and Quake3-format player models are now planned for the next release.

Due to frequent requests for Ogg Vorbis support to be added to the v3.23 patch, I have been working on a v3.24 unofficial patch that adds that very requrested feature and has several more fixes:

  • The same rendering and map load optimizations that are in the current KMQ2 development build.
  • Added writeconfig command that saves config changes without exiting.
  • Added fix for texture paths with backslashes in BSPs so they can load from inside pak files.
  • Fixed graphical corruption that can be caused by certain errors during map loading.
  • Fixed crash that occurs when conchars.pcx is not found.
  • Fixed culling of rotated models.
  • Screenshots now go up to 999.
  • Restored "disable alt-tab" option to menu.
  • Made 640x480 the default video mode and hid modes below that in the video menu.
  • Added support for the new 21:9 ultra-wide aspect monitors now entering the market.
  • Now includes versions of the Rogue and Xatrix DLLs that fix the "function pointers have moved" save load error.

This patch is currently in the private beta phase.   Email me to get in.  Be sure to replace the separator in the email address with a '@'.

The editing page has also been updated with information on how QuArK users can set the new surface flags that KMQ2 uses.  A file for QuArK that enables the new surface flags has been added to the downloads section.

4/15/12 Back up, and more progress!

You may have noticed that the more recently updated version of this site hosted at QuakeDev disappeared last summer.  Many thanks to Mark Shan, as I once again have upload access to the original KMQ2 site!

A significant amount of progress has been made as well, as several optimizations to the have been added to the current development build.  Load times have been significantly reduced, and framerate improved somewhat.  PNG image loading has been added, and both parts of a level's savegame data are now compressed, making savegames over 90% smaller.  Further optimizations are currently in progress.  A port of CoopOrDie has also been added in the downloads section, this will allow KMQuake2 to connect to CoopOrDie's Worldserver.

Also many thanks to Pieter Verhoeven, who has created an excellent set of high-res images for the menus.  Here's a shot of the main menu with Pieter's new dogtag graphics:

The project would still benefit from improved graphics for the help computer, inventory, HUD numbers, CTF HUD, and new background graphics for the menus and load screen.  Anyone who's interested in helping would be welcome to drop me a line.

I've also added a complete archive of all files from the Lazarus mod in the downloads section as a resource to aid map creation.  It has example maps, map source, textures, sounds, player models for misc_actor, and documentation.

7/14/11 A port and a patch!

There may have been no updates the past 9 months, but that doesn't mean that there's nothing going on.  I've been working on a port of KMQuake 2 to another platform.  What platform, you asK?  Well, take a look below:

That's right, a Mac port!  It's taken quite a few months of work, given that I don't even own a Mac, but have to go to someplace with a computer lab where I can use one.  KMQuake II for Mac OS X is based on Fruitz of Dojo's excellent Quake2 port.  Even though such a Q2 port already existed, it still took a great deal of work to modify the Mac OS-specific code to match all the changes I've made in KMQ2, and to get the rest of KMQ2's code to compile for the Mac.  The port is at feature parity with the current Windows development build, as the Official misson packs, Zaero and 3ZB2 bot have all been ported.  You can expect OS X binaries with the next release.

Now for the patch.  It's not another hotfix for KMQ2, or another vanilla Q2 patch (not yet, at least).  With the release last year of the Return to Castle Wolfenstein source code, I've been put together an unofficial patch for RtCW single player.  It fixes the OpenGL-related startup crash, adds native widescreen support (without stretching of the menus and HUD), anisotropic filtering, hardware brightness control (no need to restart), and support for mouse buttons 4 and 5.  The RtCW SP v1.42 Patch is in the downloads section, along with its source code.

Also, I'm looking for someone interested in creating new HUD graphics.  What I'd like made are higher-res, 24-bit remakes of the help computer, inventory, and HUD numbers.  These graphics could be used with other Quake2 engines, as well.  If you're interested in helping out, contact me.

12/10/10 3ZB2 port, progress update, and help wanted

A port of the 3rd Zigrock Bot II (3ZB2) has been added to the downloads section.  Special thanks to Octavian Briceag for an included enhancement.

I've finished creating all the graphics for the Quake4 HUD (including CTF) and have also made further changes to the menus.  Sliders now show the current value of the variable being manipulated, and the code required to implement a menu has been significantly decreased, getting ever closer to a scripted system.  Here's a shot of the finished Quake4 HUD:

On another note, I'm looking for someone interested in creating new graphics for the menus and loading screen.  What I'd like made are higher-res, 24-bit remakes of the dogtag images used for the main menu, menu banners, and the loading plaque.  Better backgrounds for the main menu and default loadscreen (in both 4:3 and 16:10 aspects) are also desired.  These graphics could be used with other Quake2 engines, as well.  If you are interested in helping with this, contact me.

7/11/10 Progress update

I've continued working on KMQ2's menus, improving the controls and further moving toward implementing a scripted system.  A scripted HUD system based on the one in Quake2Evolved has been added, allowing a large degree of customization.  The next thing to be added will be a Quake3-style shader system, which will complement the scripted HUD system.  I'm also currently exploring adding a legacy game interface, which would allow KMQ2 to load regular Quake2 game DLLs, and adding client protocol compatibility for R1Q2.

Here some shots of the improved menu controls and two scripted HUDs (a Dooom3-style one originally made for Quake2Evolved, the other a Quake4 one made by me) supported by the scripting system:

1/11/10 Hotfix 3

I realized that a potential crash with particle effects which I fixed in the development build of 0.21 was not fixed in the hotfixes I've released so far.  So i've put out yet another hotfix that plugs this vulnerability.  The hotfix also corrects a rendering error with shadow volumes on certain models.

The hotfix is once again in the downloads section, along with an updated zip of the whole engine and the hotfix's updated source code.

11/15/09 Unofficial Quake2 Patch v3.23

I've received some requests for a leaner version of KMQuake2 (less particle-intensive) to allow Quake2 to run in widescreen mode on systems with integrated Intel graphics.  Because this would be a large undertaking for relatively little gain, I've instead decided to create a patch for vanilla Quake2 that adds widescreen support and fixes other problems, including the nVidia 191.x driver crash.

The patch has over 40 fixes and tweaks in the client, menus, console, and OpenGL renderer, many of which are already in KMQuake2.  What it doesn't do is add any new features, as not even a framerate counter is to be found, keeping purists happy.  The patch replaces quake2.exe, ref_gl.dll, and the baseq2 and ctf game DLLs.  The full list of fixes can be found in 3.23_Changes.txt, in the docs folder inside the patch's archive.

The patch is posted in the downloads section, along with its source code.  If you find any problems with this, or have suggestions for additions in a later patch, tell me.  

11/02/09 Hotfix redux

I've recently found out that KMQ2 breaks in very wide aspect modes (greater than 16:8), such as in mult-monitor surround setups.  I've put out another hotfix that fixes this with a new FOV adjustment algorithm.  The problem with the first 3 crosshairs being misaligned is also fixed.

The fix is once again in the downloads section, along with an updated zip of the whole engine and the hotfix's updated source code.

10/14/09 Oops!  Hotfix, take2

It looks like I didn't fix enough places in the source where it was vulnerable to the crash.  I've posted a new version of the hotfix, and the updated source code.  If you downloaded them previously, please do so again.

10/13/09 Hotfix time!

It has come to my attention that nVidia's latest 191.x drivers crash nearly all Quake2 engines by having an OpenGL extension string that's longer than Quake2's text ouput buffer.  I've whipped up a hotfix to address this crash.  I also threw in fixes for a few other minor issues that will be in 0.21:

  • Fixed round-off error that was limiting the accuracy of the crosshair.
  • Fixed disappearing textures on bmodels with mixed standard and warp faces (e.g. the moving pillar by the laser array in city3).
  • Fixed camera glitch with thirdperson mode and demos.

The fix is in the downloads section, along with the updated source code.  Of course, if you encounter any other issues, let me know.  Also, thanks to Kirk Barnes for finding the source of this crash.

9/26/09 It's been a long time...

Having been over 18 months since the last update, I'm posting this to let everyone know that although I haven't been able to do a great deal of work on KMQ2, I haven't stopped working on it either.  While there isn't yet a new version ready for release, I have made a nontrivial amount of changes.  The in-progress build is now called 0.21, instead of another 0.20 beta.  Here are some of the changes so far:

  • Removed the old, decrepit single-texture mode.  GL_ARB_multitexture support is now required.
  • Decoupled video framerate from network framerate.  This should allow higher framerates as well as better network performance.  The old, synchronous mode can be re-enabled by cvar.
  • Added impact decals for the BFG and disruptor.
  • Re-did all HUD icons in higher-res form (128x128).  This is noticeably better looking on hi-res displays.
  • Added compressesion of .sv2 savegame files into .sav2 files, making most savegames at least 50% smaller.
  • Added option to display 4-digit numbers on the HUD.
  • Fixed round-off error that was limiting the accuracy of the crosshair.
  • Fixed shadow volume errors with certain models.
  • Fixed disappearing textures on bmodels with mixed standard and warp faces (e.g. the moving pillar by the laser array in city3).
  • Fixed camera glitch with thirdperson mode and demos.
  • Fixed railgun infinite loop (hang) bug in game DLLs.

One other thing I'm working on is a major revamp of the menu system. The control system has been significantly reworked, with the goal being to move toward a scripted system. Here's a peek at the video menu showing some new control types:

3/14/08 0.20 Public Beta 3 Released!!

It's finally ready.  I've decided to make this beta open to the public to speed up the finding of bugs/issues.  Lightmap softening didn't make it in to this release, nor are there Linux binaries, but several tweaks and bug fixes did:

  • Support for non-power-of-2 textures on cards implementing the ARB_texture_non_power_of_two extension.  This greatly improves the quality of most skins in-game.
  • Improved the accuracy of the FPS counter.
  • Fixed dark corners on most warp surfaces when vertex lighting is enabled.
  • Added a separate cvar, r_warp_lighting, to disable vertex lighting on warp surfaces without affecting non-warp trans surfaces.  Useful for maps where vertex lighting doesn't work well, but lightmaps on trans surfaces do.  This is also now a separate option in the advanced section of the video menu.
  • Added support for Quake3-style .arena files inside pak/pk3 files.  These are added to the maplist in the start server menu and filtered by gametype.
  • Added support for an Ogg Vorbis ambient looping track, for when the game has been left idle for quite a while in single player.  The CD music system has always had this feature, so I decided to duplicate it for the Ogg Vorbis system.  This cvar (ogg_ambient_track) defaults to track11, the same as with the CD system.

Go and get now in the downloads section.  And if you find any bugs/issues, be sure to contact me.

11/14/07 Still Alive...

I haven't had that much time to work on KMQ2 over the last two months.  However, I have managed to improve widescreen support for all of us, except the ones who have 4:3 screens.  Here are some improvements I've made for 0.20 Beta 3:

  • Added support for 1280x720, 1280x768, 1440x900, 1920x1080, and 2560x1600 widescreen modes, in addition to the existing 856x480, 1024x480, 1280x800, 1680x1050, and 1920x1200 modes.  These resolutions make a beautiful line.
  • Tweaked FOV autoscaling code.  It was previously making the FOV too wide.
  • Cinematics are now displayed in anamorphic form.
  • Added support for widescreen-aspect levelshots.
  • Console font size is now resolution-independent.  Default size is 8 pixels scaled up from 640x480 resolution.

One last graphical improvement I've been attempting is lightmap softening.  I've kept running into glitches with this, but I'll keep on trying until I run out of cake.

I've been looking for better menu background and loadscreen art.  If you'd like to contribute some, the backgrounds should be in a decent format.  Maybe 320x240 .lbm.  That was a joke.  Ha ha.  Fat chance.  They should have versions in both 4:3 and 16:9 aspect ratios, and both versions should be resized to 1024x1024.

Finally, I've started remaking the included levelshots in matched sets of 4:3 and 16:9 images.
Contributions of these are also welcome.  The desired maps include the baseq2 single player and DM maps (including match1), the 64-player DM maps, the CTF maps (including Outlands II), the 3Team CTF maps, and The Reckong, Ground Zero, and Zaero mission packs.  They should be taken with the crosshair disabled, hud_alpha and cl_gun set to 0, and r_screenshot_jpeg_quality set to 100.  They need to be pairs of 512x512 matched images in standard and widescreen aspect ratios.  

When all this is done, I should be out of beta and releasing on time.

9/2/07 Update on 0.20 Beta 3

After looking at all the changes required to support R1Q2's protocol in the client, I've decided it won't be in 0.20 beta 3.  It may make it into 0.21, though.

I'm also looking for someone to compile the updated version of QuDos' Linux port.  If you're a Linux user interested in seeing KMQ2 on Linux and are proficent with GCC or another compiler, email me.

8/25/07 0.20 Beta 3 in progress

I've decided to add a few more features before the public release:

  • QuDos' Unix port has been added to the source tree, and updated from 0.19.  I don't know if it will compile yet.  Item bobbing and Ogg Vorbis commands (play, pause, resume, stop, etc) have also been added from QuDos' port.
  • The network protocol version has been changed from 35 to 56 to avoid conflicts with R1Q2.
  • The client will now autodownload the pk3 file containing the current map from the server (thanks to Jay Dolan and Quake2World).
  • R1Q2 protcol support is also a possibility.

A GTKRadiant 1.50 game profile for KMQ2 is also in progress.  This will add KMQ2's new surface flags to the surface inspector, as well as add in-editor support for tga/jpg textures and md3 models.  However, I have hit a small snag with the presence of retextures showing up in the editor and not being resized like they are ingame.

6/25/07 0.20 Beta 2 ready!

Email me to get in.  Be sure to replace the separator in the email address with a '@'.

This release took another 2 weeks to get ready because I decided to go the extra yard and add in fragment shader support for water warping so that users with ATI cards can get the same cool effects as nVidia users.  The pixelation seen on newer nVidia cards is now gone, and this effect can also be enabled for caustics.

6/9/07 Well, it took a lot more than a week...

I've been rather busy the last few months, so the new beta got delayed.  I did, however, end up doing a lot more than just a few tweaks.  It should be ready real soon, unless I decide to add something else.

New features since the last beta include:

  • Added support for the game DLL to set the attentuation of looped sounds.
    Support has been added to both the Lazarus and missionpack DLLs for mappers to override the attenuation for any bmodel entity.  Func_train, func_tracktrain, and func_vehicle now default to idle attenuation.
    This changes the protocol and game DLL interface again (sigh), so DLLs from the last beta will no longer work.
  • Added support for lightmaps on trans surfaces.  Set transparent lighting to lightmap in the advanced video menu to enable this.
  • Added support for caustics on bmodels.
  • Added support for camera effect and letterbox screen modes.  These effects can be enabled by setting the RDF_CAMERAEFFECT and RDF_LETTERBOX bits in a client's refdef flags in the game DLL.
    The Lazarus and missionpack DLLs have had spawnflags added to func_monitor, target_monitor, and info_player_intermission (letterbox only) to use these effects.
  • Added Jalisko's fix for black lines appearing when light blooms are enabled at 1280x1024 resolution.
  • Changed savegame slot names to better cohabitate with other engines.

3/3/07 0.20 Beta 2 almost here!

There are just a few minor tweaks remaining before beta 2 of 0.20 is ready for testing.  This build has several more optimizations and bugfixes than are in beta 1.  I should have it ready within a week.

1/3/07 0.20 Beta 1 ready!

Email me to get in.  Be sure to replace the separator in the email address with a '@'.  What are you waiting for?  Go!  Go now!

12/30/06 0.20 Nearing beta release!

There are just a few more critical bugs remaining to be removed before I can release a beta of 0.20.

New features since v0.19 include:

  • Increased max coordinate range.  Includes kmqbsp3 to support large maps.
    Note that this breaks all existing game DLLs and demos.  Be sure to download updated game DLLs that are compatible with this version.
    Clients and servers will have to upgrade to maintain compatibility.
  • Greatly improved md3 support.  Md3's render faster, are frustum-culled, and are properly vertex-lit.  Per-mesh, per-skin rendering scripts are also added (see md3_scripting.txt).
  • Overall optimizations to rendering.
  • Added support for alpha test surfaces (textures with holes, bypassing the problems of TRANS33+TRANS66 rendering).
    This can be enabled on a texture with an alpha channel (TGA's) or color 255 (pink) areas (.wals) by setting the 0x02000000 surface flag in the surface inspector (only QERadiant 1.47 seems to show this flag).
    Use the included version of KMQBSP3 to compile maps with these surfaces.
  • Added modified version of debug/dedicated console from Quake2Evolved.
  • Added improved version of Kirk Barnes's underwater caustics and view warping.
  • Renamed all gl_* renderer cvars to r_*.
  • Removed support for ancient, decrepit SGIS multitexture.
  • Fixed particle overdraw option so it only redraws on top of alpha surfaces.
  • Now supports streaming Ogg Vorbis files from inside pak/pk3 files.
  • Added saveshots to quicksaves (savegames named "quick" or "quik").

9/12/05 Released just in time for QExpo 2005!

New features since v0.16 include:

  • Integrated renderer into exe.  Ref_kmgl.dll is no longer needed.
  • Added support for custom resolutions.  Uses cvars r_customwidth and r_customheight when gl_mode is set to -1.
  • Added projection entity shadows.  This is selectable from the advanced section of the video menu.
  • Added option for model shading (off, low, high) to advanced video menu.  Also, dynamic lights now light models by the vertices.
  • Added option for flowing shell effects to advanced video menu.
  • Added light blooms.  This is selectable from the advanced section of the video menu.
  • Added support for Ogg Vorbis music.  To hear tracks ingame, rip the Q2 CD's audio tracks (2-11) to track02-track11.ogg and put them in baseq2/music.  For the mission pack audio tracks, rip the Ground Zero CD's audio tracks (2-11) to track12-track21.ogg.
  • Added support for Quake3's RoQ format cinematics.
  • Added improved version of decal system from Quake2Max.
  • Added pk3 support from Quake2Evolved.
  • Added support for JPG and up to 1024x1024 skyboxes.
  • Anisotropic filtering now works properly and video menu allows selection from modes supported by the video card.
  • Added support for custom door, plat, and button sounds.  See kmquake2_lazarus.txt.
  • Fixed looped sound sourcing bug with bmodel entities (func_door, func_plat, etc).
  • Added Jitspoe's Fix for sliding bug where steep sloped surfaces meet floors.
  • Added cvar cl_rail_length to control length of rail trails for performance purposes. Defaults to 2048.  Rail trails are now drawn starting from the point closest to the player.
  • Now opens menu when disconnected.
  • Reset defaults option in the menus now loads cvar defaults for all settings in that menu.
  • Added enhanced player setup display from Quake2Max.
  • Added levelshots to start server menu.
  • Added new default font based on one from Jitspoe's Digital Paint 2.0.