Concept: Multiplayer & Authority

The interact-ability shape from the Quick Start is LocalPredicted and instanced per actor: scan and input run on the owning client while authority-only work stays on the server.

ConcernWhere it runs
Scanning / option detectionOwning client (drives the local prompt). Gate the scan-task spawn on IsLocallyControlled() so dedicated servers do not trace every tick.
Granting option abilitiesServer only - GrantNearbyInteraction early-outs unless IsOwnerActorAuthoritative(), and revokes grants for interactables that leave range. Gate its spawn on IsNetAuthority().
Firing the interactionThrough GAS - TriggerInteractionOption triggers by replicated handle, so the granted/target ability runs with normal GAS prediction and server authority.
Handler side effectsA LocalPredicted handler runs on owning client and server - guard authoritative mutations (loot, doors) with HasAuthority().
Progress displayLocal - broadcast via the message bus and filtered on Instigator == local pawn.
AI and non-controlled avatars
The scan tasks' aim helpers tolerate a missing PlayerController (AI, server-driven, or non-locally-controlled avatars) instead of asserting, so a listen-server host running multiple pawns will not crash.