This is interesting.
Obviously the big problem we keep seeing in the videos is whenever there's a change in direction there's a "warp". When jumping there appears to be an inverted effect where the player gets put into the ground. However, run server side it might be different. Let me think... Server side it would basically add a certain constant defined by the player's ping multiplied by the player's velocity vector for the position coordinates to each client. Yes, that should work. Though I don't know if that would remove the warp factor due to directional change (or acceleration, what have you). The server is still receiving the position packet with some delay, as defined by the ping between the player whose position corresponds to the packet and the server. Due to this you'd still see some directional warpage, though it would be half as strong as shown in the video. Overall it'd still make a difference, probably positive. Of course, if this becomes used by many servers players would start taking advantage of this by changing direction a lot (short strafing), which is already done by some skilled players. This would lead to a lot of desync corrections (warps, what have you) because position is being simulated ahead of time. Thus short-strafing would in a sense counter the usefulness of the program entirely. But it's certainly worth a test.
... I wrote a whole bunch more after this but modacity logged me out so it was lost. Fiddlesticks.
In short: because collision between dynamic objects is calculated client-side and because there's still delay between client and server you aren't going to be able to fix this, unless you recode halo's netcode to deal with collisions between dynamic objects server-side.
-Mator
Bookmarks