“Normally”?
More control compared to what? This is just nonsense. I never mentioned blueprints or anything else for that matter. I work solely in C++, but that’s not the topic here and it doesn’t matter where I come from.
In a game class like a ACharacter derived one, I shouldn’t have to worry about whether my code works on a Listen server, when it already works on a Dedicated one. This low level logic should be made elsewhere. This is the very essence of abstraction.
Having different code paths for things like this shoots complexity trough the roof. It’s not consistent and it increases code maintenance. It also means we have to test two times with both combinations.