Well, in theory a cheater could sent set it up where they can send false signals, or maybe connect another Area node so that it sends false signals. All it would (in theory) require is editing the scene tree on the client’s end, perhaps by injecting GDScript code into the runtime. I have no idea if that is possible though.
Since Godot’s Enet implementation is open source and anyone can view it, in theory someone could retool the Enet implementation so that they can send false signals from a completely separate client to the game’s server.
The best way to stop cheating, as far as I know, is to have clients only send data for things the client specifically controls (like their player). Then you have the server process all of the players, collision, etc. Then the server sends all of that data back to all of the clients connected. That way the only way to cheat and effect other players is to use a altered server (granted the cheater can still effect their player, but not everyone else’s).
Though I have never published an online game, so I have no real working experience with this kind of thing. I would take what I have to say with a grain of salt. :smile:
However, all of that above said, personally I would suggest not worrying too much about cheaters right until you are fairly far through development.
For the most part, people don’t cheat and those who cheat will find a way around most of the measures you can put in place anyway. Not to say that having some form of cheat protection is bad, but I would put time and resources into getting the majority of the game working, and then perhaps refactor the project so cheating is harder after that.