Touch Interface Subsystem doesn’t exist on server #
When developing a multiplayer game, be careful where you call up your functions. The Touch Interface subsystem doesn’t exist on the server, it’s not useful. All subsystem functions must be called on the client.
Check if player is local player (exist only on client) #
Each time a new player is added to game, a new subsystem instance is created and assigned to player. You should check if player is local player that exist only on client.
Use On Possess event instead of Begin Play #
if you use the Begin Play event, you may run into problems. Use the On Possess event instead, and you’ll be sure that the player controller is attached to a player.