The F2P game "Path of Exile" (similar to Diablo) does everything on the server and it causes so many problems that you need to avoid certain character skills that are more prone to causing desync issues between server and client. They even include a chat command that will sync you with the server which most people have macro'd to a key on their keyboard or mouse it's so prevalent.
You've already explained a big chunk of the issue right there. There are many poorly written games. PoE is one of them. That doesn't mean you can't write a similar game well.