Still better than Counter-Strike on the Source Engine.
Shoots foot, gets headshot.
My guess is that they probably didn't bother rewriting a lot of the base netcode of the engine because nobody really expected the MP to be as popular as it was, and Unreal Engine 3 has fairly poor netcode.
That's on host.
Also Phantom DR on host and not off host is a clear indicator that they didn't bother checking how the game performs off host at all, because the game was made for single player and Phantom DR works on single player.
Same for other glitched enemies. They figured, it doesn't matter that rocket troopers double tap and that sort of stuff, because you're not gonna be fighting them all day long. You're gonna get breaks exploring, chatting with NPC's, wandering around. You're not gonna be fighting all the time, so you're not going to rage so much, not to mention you're a lot tougher in SP. The enemies and locales change a lot more often too.
in MP that doesn't work. You can get one type of enemy 5 times in a row and a few of them can be on the same map. You're not getting the mental break so the rage builds up much more quickly.