Description
Quote from discord (https://discord.com/channels/343440455738064897/1353305956494213211)
Scenario:
Consider an empty map running on a dedicated headless server, where N users connect and roam around.When a user joins, a player object is allocated to them with visibility = Default.
A leaderboard runs on the server, and the top two users on the leaderboard have their visibility set to ForceShown (top players can change any time , ex if the top player go below the 2nd position then there visibility would be set back to default again), making them visible to all players, regardless of interest management.STR:
User A joins and spawns with visibility initially set to Default.
The leaderboard updates, determines that User A is the top player, and sets visibility = ForceShown.
User B joins later and spawns (with visibility = Default) at a location outside User A’s visibility range, based on interest management.
At this point: User A cannot see User B. However, User B can see User A because A’s visibility was previously set to ForceShown.
The leaderboard updates again, determines that User B is also one of the top two players, and sets visibility = ForceShown.Expected Behavior: Both A and B should now be visible to each other.
Actual Issue:
User B can see User A.
User A cannot see User B.
Even if B moves within A’s visibility range, B still does not appear on A’s device.
Initial thoughts without too much digging is that we should have better handling for changing visibility at runtime, this kinda works sometimes at the moment, but doesn't seem very consistent