The first thing to understand is that if you are connecting to someone else's computer to play, you are a client. If you are hosting the game other people connect to, you are the server. Things that the server controls are said to be serverside. Things that the client controls are clientside. Here's the breakdown of what's what:
Serverside:
- Which aircraft are available to fly
- The contents of the dat of the aircraft
- Who's alive and who's dead when it comes to death from collisions and ground objects. There's a lot of lag in this area, so sometimes you will see people survive things that should kill them, and you will often see them crash when they haven't due to distance lag.
- Where you see the other players in your game
- The regions of the map that affect you
- The weather
- Day or night
- What weapons are allowed
- The server CAN control blackout, or they may make it client side
- The distance at which players can see usernames
- Whether or not you are automatically kicked after a certain amount of time of doing nothing in the lobby
- Whether or not ground objects shoot at you
- The dats of ground objects
- whether f3 view is available
- The radar altitude limit. The server admin may make this clientside
- Whether or not mid-air collisions occur. This can be made clientside
- How many times the same player can connect to a server
- Whether or not there is a radar gunsight.
- Any missions that run on the server
- How often the server resets
- Whether or not chat is enabled
- What notifications you get
- What aircraft, ground objects, the map and your weapons LOOK like.
- Your aircraft's position. If the server thinks you are somewhere else, it will show you as somewhere else to the other players, but will eventually put your airplane back to the right place in their view. You will always be in the right place in your view. The significance of this is that you will never "lag jump/teleport" but you will see other players do it often. See this article for more detail.
- Who you killed. If you kill someone, they WILL be dead. However, there is a lot of lag in this and the server may not register your kill straight away. I've seen lag of several minutes between when I kill someone and how much longer they stay alive. In that interval you might kill them many more times to no avail.
- FPS lag. The server renders nothing but positions and states. If you get a performance drop, that's entirely on your computer.
- Network lag. Blame the fact that ysflight uses TCP instead of UDP, which we really can't fix. I'm sure Dr. Yamakawa had his reasons.