o = todo
X = done
? = maybe but not likely
M = more testing
I = in progress
W = waiting on other work

M  it seems possible to crash a QF server still - need to fix this!
M  Scitech MGL used in win32 is screwed - dump it and use SDL
I  GL is still way too slow
I  Client side QuakeC.
I  mingw cross compiling
I  merge nq and qw code bases
W  fix skybox/dome vis problems (workable solution found, needs new renderer)
o  ogg support
o  It's possible to stick on some obtuse-angled corners qwsv 2.3x didn't
o  better server control of certain cvars
o  triggers (f_respawn, f_death, f_took; cl_triggers)
o  software PCXs don't work in X11 at least if you're using 16/24/32 color
o  stateful console (eg, rcon mode, chat mode, normal command mode...)
o  menu rewrite
o  scripted hud
o  doublesize modes (eg, render in 320x240 but display in 640x480)
?  more direct intra-team comms (eg, talk to offense or defense directly)
?  Draw_Pic and friends need a cleanup in GL at least
?  console commands to see a user, ignore talk from them, etc
?  improved crosshairs (custom file, 32 bit for GL, etc)
?  software targets should mix color at 16/16 or 24/32 color
?  Draw_Pic and other tex draw functions should use local palettes
?  wad loader should load wad3 and fall back to wad2 if necessary
?  better control over client console logging
?  ban reasons and expire times

Future directory tree:
o  todo
X  done (a parent dir is not done until its children are done:)

  quakeforge
o  +--- tools             useful/needed tools
X  |      +--- Forge      Forge.app map/model/everything editor
X  |      +--- cvs2cl
X  |      +--- gas2masm
X  |      +--- pak        massively enhanced pak tool
X  |      \--- qfcc       QuakeForge Gamecode Compiler
o  +--- include           API definitions for all subsystems
o  +--- nq                Non-common NQ code
o  +--- qw                Non-common QW code
o  \--- libs              common code libs
o         +--- audio
o         |       +--- cd
o         |       +--- recording
o         |       +--- renderer           3D audio rendering
o         |       |       +--- soft       Software 3D spatialization
o         |       |       \--- openal     Passing the buck to OpenAL
o         |       \--- targets            Raw sound I/O
o         |               +--- null       No raw output (none or OpenAL)
o         |               +--- alsa       ALSA
o         |               +--- oss        OSS or kernel sound
o         |               +--- dsound     MS DirectSound
o         |               \--- sdl        SDL (gack) output
o         +--- filesystem         Filesystem code
          |       |               (the code for normal fs is also here)
o         |       +--- pakfile    Quake Pakfiles
o         |       +--- qfp        QuakeForge Package
o         +--- formats
o         |       +--- bsp29      Quake BSP read/write
o         |       +--- bsp66      QuakeForge native BSP read/write
o         |       +--- mdl        Quake model read/write
o         |       +--- md2        Quake2 model read/write [would be nice]
o         |       +--- qfm        QuakeForge native model format
o         |       \--- textures   PCX, QFS (multi-skins), TGA
o         +--- gamecode           Progs interpreter (core)
o         |       +--- client     Client bindings
o         |       \--- server     Server bindings
o         +--- network            Network code (like netchan, but sane)
o         |       +--- transport  Low-level protocols (UDP, TCP+UDP, etc.)
o         |       +--- netquake   Quake's wire protocol
o         |       +--- null       Null protocol, for single-player
o         |       \--- quakeworld QuakeWorld's wire protocol
o         +--- system             Platform-dependant system lib
          |       |               (raw IO/filesystem/dlopen code)
o         |       +--- null       Portability aid, a skeleton system lib
o         |       +--- unix       POSIX stuff
o         |       \--- win32      Win32 system lib
X         +--- util               Utility library
          |       contents: Commands, Cvars, Quake-format scripts,
          |       property lists, console parsing/formatting/output, the
          |       heap and zones.
o         +--- video              Video input and output
o         |       +--- renderer           3D video rendering
o         |       |       +--- soft       Software 3D rendering
o         |       |       \--- opengl     Passing the buck to OpenGL
o         |       \--- targets
o         |               +--- null       Portability aid, skeleton
o         |               +--- console    Non-graphical, "readline" input
          |               |               (also needs old-style stuff for
          |               |               dumb-ass systems/terminals)
o         |               +--- sdl
o         |               +--- svgalib
o         |               +--- win32
o         |               \--- x11
o         \--- world              3D layout engine (includes objects)
                                  Talks to the sound and video renderers
                                  to output frames