mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-05 20:50:43 +00:00
82522a6fd1
it's either done or it's not. Very soone the menu code will be axed and this will aid in replacing it.
181 lines
6.6 KiB
Text
181 lines
6.6 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
|
|
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
|
|
|
|
|
|
Old Menu Structure (for reference when replacing it)
|
|
|
|
Single Player
|
|
New Game
|
|
Load
|
|
Save
|
|
Multiplayer
|
|
Join A Game
|
|
Modem
|
|
Direct connection
|
|
IPX
|
|
TCP/IP
|
|
Address (unchangable)
|
|
Port [editbox]
|
|
Search for local games
|
|
Join game at [editbox]
|
|
New Game
|
|
Modem
|
|
Direct connection
|
|
IPX
|
|
TCP/IP
|
|
Address (unchangable)
|
|
Port [editbox]
|
|
OK
|
|
Begin game
|
|
Max players
|
|
Game type
|
|
Skill
|
|
Frag limit
|
|
Time limit
|
|
|
|
Episode
|
|
Level
|
|
Setup
|
|
Hostname [editbox]
|
|
Your name [editbox]
|
|
Shirt color
|
|
Pants color
|
|
Accept changes
|
|
Options
|
|
Customize controls
|
|
Attack
|
|
Change weapon
|
|
Jump / Swim up
|
|
Walk forward
|
|
Backpedal
|
|
Turn left
|
|
Turn right
|
|
Run
|
|
Step left
|
|
Step right
|
|
Sidestep
|
|
Look up
|
|
Look down
|
|
Center view
|
|
Mouse look
|
|
Keyboard look
|
|
Swim up
|
|
Swim down
|
|
Go to console
|
|
Reset to defaults
|
|
Screen size [slider]
|
|
Brightness [slider]
|
|
Contrast [slider]
|
|
Mouse speed [slider]
|
|
CD music volume [slider]
|
|
Sound volume [slider]
|
|
Always run [on/off]
|
|
Invert mouse [on/off]
|
|
Lookspring [on/off]
|
|
Lookstrafe [on/off] <--- WTF came up with this?
|
|
|
|
Use mouse [on/off]
|
|
Help/Ordering
|
|
Quit
|