HasAuthority returns false on the server for an AI-controlled actor?

Okay, that's exactly what I'm doing. I have a function that sets a variable in my local copy of an AI and then calls a server RPC that sets the variable in the server's authoritative version of the AI.

But if I do the first thing, setting a variable in my local copy, on the server (like if I were playing on a listen server), then I wouldn't need a server RPC, because by setting the variable on my local version of the AI, I've set the variable on the authoritative version of the AI, since the authoritative version of the AI is the server's local version.

Since I wouldn't want to call the server RPC if I'm already on the server, I check with HasAuthority(). If it returns true and I'm on the server, I don't need to call the RPC. If it's false and I'm on a client, then I do need to call the RPC.

But when trying to do this, the behavior is flipped. When I'm on a listen server, HasAuthority() returns false. And when I'm on a client, HasAuthority() returns true.

/r/unrealengine Thread Parent