My own personal preference would be ZDoom, but with code support to back it up. Zandronum just lags behind so much for what we'd want to do. And it will keep lagging at some point because it won't be able to keep parity between the GL and the software renderer as it integrates more code from ZDoom main.
Code support then would want a heavy focus on making ZDoom feel like a legitimate multiplayer option.
At the very least, code support would ideally include:
- Slope logic modification
- Viewpoint script (more in a minute)
- Support for multiplayer drop-in and drop-out
The viewpoint script is something I'd like to suggest to handle the third person camera. It's a special script that gets executed once per rendered frame and is responsible for setting the viewpoint parameters. SetViewX/Y/Z and SetViewPitch/Yaw/Roll at the very least would be functions it is responsible for. SetViewScript would be required from a mod before the script is executed. With just that kind of set up, I can do a ton more with cameras than the current solution (and even a hard coded third person camera) can. Although I'd really want a ray casting function to go with that so I can query the world accurately.