TODO (ok) done (--) postponed milestone 1: console text color and wrapping keyboard binds entity axis interpolation camera axis interpolation (--) camera tracking mode camera frustum clip milestone 2: server-client event system, hit-once lightweight entities explosion events weapons fire events filesystem: write a filesystem based on streams write handlers for zip model: support map classes (e.g. func_rotate), requires class VertexData split map loader from model, load vertices into VertexData engine flare key core: connection to remote game (ok) read/write configuration file (ok) split client and server configuration (ok) parse command line options (ok) execute command line options (ok) globe entity (ok) execute config files (ok, autoexec.cfg still missing) game module loading/unloading network: UDP datagrams (ok) buffered sends (ok) client connection state (ok) protocol description chat, channels rcon, commands zlib compression fix lag protocol version in handshake detect and disconnect clients behaving badly client: input handler switching (ok) console chars (ok) keyboard handler, must be able to handle keyboard layouts decent input handling implementation key bindings on-the-fly cl_mousecontrol (toggle function) render: render pipeline (ok) .map models (ok) write RLE tga screenshots (ok) texture registry (ok) text quads render pipe add small camera light, fix lighting without sun sound: sound would be nice win32 port: network not functional (ok) texture loading is broken (ok) screenshots are broken (ok) directory creation