Parent: #127
Problem
The current in-game Home flow asks Invite friend → Nearby / Online friend → choose person/group. That exposes transport/context before the user has chosen who they want to play with.
For TrainerOS, Nearby/Online are usually implementation circumstances, not the activity the user is choosing.
Goal
Make the primary action Play together / Invite players, then show relevant people and groups in one picker.
Invite players
NEARBY
Sveta Nearby
Alex Nearby
FRIENDS
Mike Online
Kate Online
GROUPS
Retro Night 6 members
Sunday Games 4 members
If the same person is available through more than one route, present one person. TrainerOS chooses/prepares the supported route automatically where possible.
Nearby / Online may remain compact status or troubleshooting detail. Do not force the player to understand LAN, relay, traversal, Bluetooth or runtime transport.
Reverse join
The same vocabulary applies from Social: friend's activity → Join / Ask to join; accepted request → existing party; free-entry group policy → deliberate Join without another organizer prompt.
Transport exceptions
Only ask for a route when there is a genuine user-visible tradeoff that TrainerOS cannot resolve safely. Such a choice should be contextual and explained, not the default first screen.
Acceptance
- In-game Home no longer starts with a transport taxonomy.
- Inviting a known friend is one direct person-first journey.
- Duplicate nearby/online identities do not appear as two unrelated people.
- The same Invite/Join wording is used in Social and Home where semantics match.
- Existing compatibility, nearby/online and no-manual-network-setup guarantees remain intact.
Parent: #127
Problem
The current in-game Home flow asks
Invite friend → Nearby / Online friend → choose person/group. That exposes transport/context before the user has chosen who they want to play with.For TrainerOS, Nearby/Online are usually implementation circumstances, not the activity the user is choosing.
Goal
Make the primary action Play together / Invite players, then show relevant people and groups in one picker.
If the same person is available through more than one route, present one person. TrainerOS chooses/prepares the supported route automatically where possible.
Nearby / Online may remain compact status or troubleshooting detail. Do not force the player to understand LAN, relay, traversal, Bluetooth or runtime transport.
Reverse join
The same vocabulary applies from Social: friend's activity → Join / Ask to join; accepted request → existing party; free-entry group policy → deliberate Join without another organizer prompt.
Transport exceptions
Only ask for a route when there is a genuine user-visible tradeoff that TrainerOS cannot resolve safely. Such a choice should be contextual and explained, not the default first screen.
Acceptance