Quick answer: Unreal Blueprint cast on a remote player's pawn returning null? PawnClass differs between server and client - replicate the pawn class or use interface-based interactions.
Server has APlayerCharacter; client has APlayerCharacterClient (same parent but different class). Cast PlayerCharacter to PlayerCharacterClient fails.
Use a shared base
Both server and client cast to the shared base (APlayerBase). Subclasses are server- or client-specific.
Or use interfaces
Define IPlayer interface. Both pawn classes implement it; consumers query via interface.
Audit pawn classes
If your project has split pawn classes, the cast bug class is endemic. Refactor to shared base.
“Casting in multiplayer is fragile. Interfaces are robust.”
For network-relevant types, design around interfaces from the start. Casts are convenient and brittle.