# Make Client Pawn Replicate Server Pawn Movement Exactly

**URL:** <https://forums.unrealengine.com/t/make-client-pawn-replicate-server-pawn-movement-exactly/330012>\
**Category:** Multiplayer & Networking\
**Tags:** server-to-client, networking-replicat, unreal-engine, Scripting, question\
**Created:** [August 26, 2015, 6:27pm UTC](https://forums.unrealengine.com/t/make-client-pawn-replicate-server-pawn-movement-exactly/330012 "2015-08-26T18:27:36Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![Devero](https://d3kjluh73b9h9o.cloudfront.net/original/4X/2/8/5/28502927f1d97ba1051b3b47ccfe17233bf41ef0.png) [@Devero](https://forums.unrealengine.com/u/Devero)\
**Post date:** [August 26, 2015, 6:35pm UTC](https://forums.unrealengine.com/t/make-client-pawn-replicate-server-pawn-movement-exactly/330012/2 "2015-08-26T18:35:07Z")

</div>

The first thing that pops out too me is the “virtual” missing from the declaration. This may mess up UHT.

Try:

```
UFUNCTION(Reliable, Client, WithValidation)
 virtual void Client_UpdatePosition(FRotator newRot);
 virtual void Client_UpdatePosition_Implementation(FRotator newRot);
 virtual bool Client_UpdatePosition_Validate(FRotator newRot);
```

---

_[View the full topic](https://forums.unrealengine.com/t/make-client-pawn-replicate-server-pawn-movement-exactly/330012)._
