Actor parameters don't replicate?

Why should I manually set parameters in every instance with multicast event in GameState (or other object existed on every client)?

I just want to spawn actor in PlayerCharacter on the server and set some parameters, so they replicate as well as the actor does.

What the point of replicates property then?

Yeah, I’m seeing something like this. I have an instance editable variable in an actor which I am using with a child actor component. I set the variable in the BP editor, on the child actor component, and in-game the Server has the correct value but the client does not.

Not a lot of information here but I’ll try a guess at the issue.

  1. The actor itself must be Spawned on the Server and must have the PlayerController somewhere in its owner path. The currently controlled character should work for that. When spawning set the Character as the owner in the spawnActor node.
  2. The new actor must have Replicates=true, this can be set in the BP or at runtime after spawning
  3. The variable must be set to Replicated or RepNotify
  4. Lastly, setting the variable must ALWAYS be done on the server or it will only change on the current client. This usually means creating a custom event and setting its Replicates=RunOnServer and and make sure Reliable=True (at least for testing)