Client authorative location not working

has anyone used this for movement component replication?

[/Script/Engine.GameNetworkManager]

MAXPOSITIONERRORSQUARED=1000000

ClientAuthorativePosition=true

this should be efficient according to source

/** If client update is within
MAXPOSITIONERRORSQUARED then he is
authorative on his final position */

UPROPERTY(GlobalConfig)

bool ClientAuthorativePosition;

but my client still gets rubber banded around.

if I override

bool UCharacterMovementComponent::ServerCheckClientError
to always return false seems to work. But the potion where server trusts client and update location doesn’t work (leads to complete desync).

source:
https://github.com/EpicGames/UnrealEngine/blob/dbced2dd59f9f5dfef1d7786fd67ad2970adf95f/Engine/Source/Runtime/Engine/Private/Components/CharacterMovementComponent.cpp

is if (GetDefault()->ClientAuthorativePosition) returning false? meaning it’s not reading config from DefaultEngine.ini ?

thanks in advance if anyone knows a thing or two about this

Found it. You gotta put the config in DefaultGame.ini because there is “config=Game” in UCLASS() for GameNetworkManager.

1 Like