Is a client allowed to change a variable locally?

For example can I change an actor’s bool in a client without getting permission from a server ?

It depends on the variable. If it’s replicated, then usually no. If it’s client side only, then yes. If you’re trying to change a bool on another actor, then you want to do it through the server.

Yes you can always change a variable on the client even if it is replicated. The difference is - if it IS replicated, it is overwritten on the next Replication from Server to Client. What are you trying to do? Normally you setup an Event like “setFoo”, set this to runOnServer and in that event you alter the replicated Variable Foo. You can also use RepNotify to react on your client side if a variable is changed by the server. Read on “Owning connection” or “Ownership in Multiplayer” if you have’nt already. Make your locic server side in Classes like Gamemode (exists only on the server) to prevent client cheating. Also there is a free plugin in Launcher to protect local client variables (Memory Adresses) which doesn’t have to do a thing with multiplayer, but it works quite good to make things harder!