title: What kind of issues are there in implementing realtime multiplayer games
body: <p>I have some experience making multiplayer <strong>turn-based</strong> games using sockets, but I've never attempted a realtime action game. What kind of extra issues would I have to deal with? Do I need to keep a history of player actions in case lagged players do something in the past? Do I really need to use UDP packets or will TCP suffice? What else?</p>
  
  <p>I haven't really decided what to make, but for the purpose of this question you can consider a 10-player 2D game with X Y movement.</p>