support "+map ad_tears"-style command-line arguments
clean up garbage in mathlib
turn DotProduct into a C function; provide arm64 neon implementation
force teleport surfaces to be non-transparent
.alpha: part 4 - draw water-like surfaces in non-VISed maps when r_*alpha is set to 1
.alpha: part 3 - build full alphamaps on startup once
.alpha: part 2 - drawing/blending
.alpha: part 1 - pr and protocol
add r_lavaalpha and r_slimealpha; leave teleports alone (non-transparent)
build an alpha map for each new alpha value
don't care about ram pic
R_RecursiveClipBPoly, R_DrawSolidClippedSubmodelPolygons: simplify just a bit
remove d_subdiv16 cvar (unused)
add initial water alpha support
steal fence drawing from super8 (useless comments removed)
detect fence-like textures but ignore them when drawing - they look like shit
surfs: short → int
pr: expose DP_EF_NODRAW extension
sv_protocol: use protocol version instead of id
MAX_SFX → MAX_SOUNDS; reclaim sfx from previous maps if no free ones
makestatic: fix for RMQ protocol
PR_Str: a bit more robust checks
d_init: remove unused stuff
add EF_NODRAW support
model: allow extents <= 2000
set signon buffer size to NET_MAXMESSAGE
sizebuf_t: report the name of the buffer which got overflowed
simpler backface cull check expression
make particles smaller by default, provide r_part_scale to customize
adjust particle max size based on FOV
use unsigned short for zbuffers
span in C: make it look simpler
model: don't care if texture is not 16-byte aligned
steal a fix for items falling out of world from JoeQuake
qc: normalize, vlen: increase precision
dtime: plot twist - nanosec() already starts from 0
rewrite sky loading and rendering
a bit more precision in a few places
minmaxs are float, no need to cast
loadgame: bring loading plaque back
sv: make sure there is no funky business happening with float modelindex - use int, always
don't out-of-bounds access type_size
yes, use locals
quake: add optimized pal2xrgb for 386
I don't like defines
use Q_MAXFLOAT; increase bmodel limits
add bsp2 support
Con_DPrintf: print to stderr if "developer" cvar is > 1
CL_ParseStartSoundPacket: sv.protocol → cl.protocol
sv: typoed "model" vs "modelindex"
more static; uncomment what that spams the console because of a bug
oops. put the stack back as it was
remove dprint, replace [df]print with Con_DPrintf
add "developer" cvar, Con_DPrintf, and shut up qc dprint
add basic RMQ net protocol support (for bigger mods)
put MSG_ReadCoord and MSG_ReadAngle into protocol_t
cl: 1024 → MAX_DATAGRAM, like on the server side
cl: no need to memset efrags/entities; remove Hunk_Memset0
dummy sv protocol change and structures
declare more stuff as static
pr: better string and temp string handling
memset now-hunk-allocated arrays correctly
edge: use memset instead of for loop
zone: alignment would make wrong offsets in model loading logic - remove that
fix pvs for huge maps; define and use mclipnode for bigger maps; few short→int retypings
surf: import the moving brush dynamic light fix
shut up a lot of spam
raise a bunch of limits; get rid of packet overflow on loopback interface
snd: allow too many sounds
model: more random fixes
model: don't underflow on mark surfaces
clean up dynamic reallocation of arrays; fix nonsensical MAXEDGES value
dynamically adjust surface/edge/span limits
reduce mainstacksize
normal quake: completely rewrite memory management; increase default limits
qc: add "pr_checkextension", no extensions are defined (yet)
pr_exec: print *which* builtin number is invalid
cmd: increase cmd text buffer: 8k → 64k
normalquake: redo screen image conversion; remove scaling; make sound chop less
add "showfps" cvar
qw: remove broken Sys_FileTime
D_DrawSpans16 + loop unroll (thanks qbism & others)
qw/sys: use dir(f)stat in place of raw stat reading
don't print any debug or console messages to stdin/err by default
snd: fix playback from physical cd's and put it in its own proc
qw: always use %d instead of %i in printf functions
sys: always kill all threads on exit, use the same code for qw
qwsv: setfcr for ignored fp exceptions