Multiplayer ClickToMove and GAS

Hello! My question has two parts

1 Is it still best practice, in a multiplayer top-down click-to-move project, to use an AI pawn and AI controller that is controlled by a player controller with a player pawn only serving as a camera? If you’re unfamiliar with what I’m talking about, it was a solution by Alex.Holyman in this thread from 2014.

That solution was proposed in 2014 and at that time several Epic staff responded that’s probably how they would handle it since simple move-to-location is not meant for Multiplayer. Are there any better ways to handle multiplayer click to move in 2020? I have also tried enabling client navmesh and using simple move-to-location in multiplayer (again, not recommended by Epic staff in that thread), but that leads to some pretty jittery movement, even without considering lag, because the server is always trying to correct the client.

So that leads me to my second question:

[2] If that is still the best way to handle multiplayer click-to-move, then how does one go about getting the Gameplay Ability System to work on an AI pawn? Since it is AI, it is ROLE_SimulatedProxy and not ROLE_AutonomousProxy. As such, it cannot receive or activate Gameplay Abilities. Is there a way around this, to reassign the character as AutonomousProxy? I’ve been struggling with this for weeks and cannot seem to get clients to have access to Gameplay Abilities.

Although I’m not sure if they are using GAS, there are other developers that are successful with MP click-to-move. Torchlight 3 and Pagan Online are two examples I can think of.

Any help with this would be greatly appreciated! Thank you.

Character > CharacterMovmentComponent > Use Acceleration For Paths [✓]

Project Setting > Engine > Navigation Mesh Force Rebuild On Load [✓],

Runtime Generation Dynamic [✓]

Project Setting > Engine > Navigation Settings > Allow Client Side Navigation [✓]