Listen server doesn't let client character teleport or boost

there are booster and respawn functions in my codes.
they work fine without action input mapping with listen server.
but if i make those function occur when pressing keyboard.
character in client goes back to where he was. it’s like teleporting back to where he was.
I belive there’s no problem in logic but in network setting or replication.
because, it looks like server is like “I’m not accepting your transformation go back, i will ignore your last move!”

PlayerInputComponent->BindAction("Respawn", IE_Pressed, this,&AMyCharacter::Respawn);

PlayerInputComponent->BindAction("Use", IE_Pressed, this, &AMyCharacter::UseItem);



    void AMyCharacter::Respawn()
    {
        SetActorLocation(_respawn);
    }

    void AMyCharacter::UseItem()
    {
        if (_itemOn || _inventory.Num()==0)
	        return;

        AMyPickups* item = _inventory.Pop();
        if (item)
        {
	        _worldManager->UpdateHUD();
	        item->Activate();
        }
    }

below’s core logic in boost function

_character->_characterMovementComponent->MaxWalkSpeed *= _effect;

Yes, if you change some movement logic on client, it should be changed on server too. Let’s say your movement speed is 400. You increase it to 600 on client, but it remains 400 on server, and even if you move on client faster, the server will put you back where you should be with the speed of 400, and it happens each “replication tick”, if I can call it like that.

As for teleporting, it too must be done by a Server function. You can’t call it on client only and expect it to work.

thanks for answering. then should i use RPC or any other simpler ways?

I guess. I use a server function only to teleport a player, but to changing move speed requires doing it both on server and client.

okay, I solved it by putting PRC code for server and client. Thanks it helped me a lot