I've just written a that allows for semisolid corpses in vanilla quake -- shouldn't require any special engine support. The player can shoot the corpses normally, but his movement is not impeded by them at all. I still have two bugs to fix, though.
Speaking of which... does anyone know if player frames (i.e. player_axe3) are run between PlayerPreThink and PlayerPostThink? That's the only reasonable way I can explain why the axe doesn't hit corpses and the lightning gun only hits when its attack first starts (not while holding down the button).
After I solve these bugs (or perhaps before), I'm going to test if this semisolid method works for solid bsp objects. If so, that will allow for the creation of team-friendly walls that let allies pass but block enemies.
Imagine a game of Mutant where the mutants can pass through certain walls but the humans cannot. That would be cool.

Other examples are TF and CTF. No more problems with enemies getting through team doors.
When my computer inevitably explodes and kills me, my cat inherits everything I own. He may be the only one capable of continuing my work.