Busher,
This is a client/server environment, not a server-based one.
In a server-based system, which would track and control every aspect of the environment (including plane positions and bullets/ords), what you desire would work. The server calculates everything and sends the results of all data to your front-end. If the server decides two planes collided, they both take damage. The biggest issue with that kind of system is that you never really have full real-time control of your plane. You send inputs to the server, and hope the packets arrive and get processed in time to move your plane where you want it in order to avoid a collision or shoot a bad guy. If the server is busy or otherwise doesn't get the info in time, you sit and watch helpless as your plane runs into something or you miss a shot.
In a client/server system as in Aces High, your front-end calculates and sends all of your data to the server, which then sends that data to others in your immediate area. You fly your plane on your computer (not on the server) and your front-end client sends your positional data to the server, and also gets everyone else's data from the server. The biggest benefit of this kind of system is that you are in complete control over your plane at all times. What you see on your screen is what determines if your plane hits another object (plane, building, ground, etc.). Also, if you shoot at something and hit it (again you see this in real-time on your screen), you get credit for the hit and that data is transmitted across the network to the other guy. One drawback to this system, the positives greatly outweigh the negatives, is that sometimes you get shot by someone from "an impossible angle", or you are involved in a one-sided collision.
I personally much prefer the client/server model of Aces High, and how it is implemented. I am in full control over where I fly and what my plane does.