quakeforge/TODO
2001-02-21 23:27:30 +00:00

101 lines
3.5 KiB
Text

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