The weaknesses of having a user be the host and not a dedicated server
It is in the approach of the multiplayer plugin.
It is based on a scenario where the host is one of the players.
Eliminating the need of a server.
This has has the obvious upside.
The downside is that it is not the approach most gamers would expect, and those generally start out applying methods based on an incorrect idea of the expected game mechanic.
One really needs to envision the steps of: (simplistic)
Host wants to move
The host simply moves his object and its movement is synched in a broadcasting like method, telling all the peers where the host object needs to go.
Peers wants to move
In most synched scenarios, the peer needs to tell the host where it wants to move, the host then move the object on the host game, and it broadcasts it to all the peers, including the peer wanting to move.
Peer forced moving:
When the peer wants to optimize the positioning of its object; while sending the movement to the host, the peer can also move its synched object in the direction it has told the host it wanted to move. This forces it in a direction, closer to the next synched position the peer will receive for its own movement, potentially increasing more smoothness on the moving.