Can somebody tell me IInputComponentData in NetCode For Entities?

I was studying CodeMonkey’s and Turbo Makes Games’ tutorials on NetCode For Entities and noticed that CodeMoneky uses IInputComponentData without Ghost while Turbo Makes Games adds it, and they both use it to handle the player’s movement inputs, both work, but what is the difference? Can anyone tell me?


I have a similar question.


In other words, if someone hacks the Client-assembly, will they be able to change the input of other clients? Or is there a check on the server side that prevents other clients from changing their input?

Netcode for Entities uses a server-authoritative networking model. Clients only send their inputs (and cannot impersonate other clients). The server simulates the game and synchronizes the result to all clients. Assuming your code is correctly written, this prevents primitive forms of cheating and is a good backbone for a secure multiplayer game.

Thanks for the quick reply!