Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions docs/DESIGN.md
Original file line number Diff line number Diff line change
Expand Up @@ -158,4 +158,6 @@ Where it stands (27 October 2026):

What each part still lacks is in [docs/gaps.md](gaps.md).

**Order of the work since 28 October 2026** ([ADR 0042](adr/0042-friends-play-what-runs-share-play-first.md)): share play first, then the virtual LAN with a LAN title, engine compatibility where a game stops early, and platform sessions once a class A game runs far enough. Games that need a publisher's account or servers are out of scope.

Until AnyPS5 decides otherwise, the bridge ships in an AnyPlay build of AnyPS5 that the launcher offers as a toolkit channel. Players who don't pick it stay offline as before. For AnyPS5 itself we will propose only the neutral part: one variable and an openly documented protocol between its network libraries and an outside service, with today's offline behaviour when the variable is unset.
21 changes: 21 additions & 0 deletions docs/adr/0042-friends-play-what-runs-share-play-first.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# Friends play what runs: share play first

The network's aim is the best way to play AnyPS5 games with friends. The order of the work follows what reaches players soonest, for every game that runs, inside the line of [ADR 0021](0021-the-line-is-drawn-at-the-law.md):

1. **Share play** ([spec](../../spec/share-play.md)): watch, take over and play together as a second player by streaming. It needs no work per game, so it reaches every game AnyPS5 runs, and it is polished first.
2. **Virtual LAN**, proven with a game that has a LAN mode and needs no account.
3. **Engine compatibility** where a game stops before the point where people could play it together: a fix there helps every player of that game, online or not.
4. **Platform sessions** for games whose online play is peer to peer through the platform (phase 4 of the [roadmap](../DESIGN.md#roadmap)): when a candidate runs far enough to observe it.

Games whose multiplayer needs a publisher's account, the publisher's servers or anti-cheat are out of scope. ADR 0021 already keeps them offline on the PlayStation side; this decision also stops spending work on them as test cases.

## Considered options

- **Online play of the big titles first.** Rejected: on 28 October 2026 Minecraft Bedrock showed the pattern. Its multiplayer, LAN included, waits on a Microsoft sign-in that needs a platform authorization code only Sony can issue, so no answer of ours unlocks it.
- **Class A titles first.** Kept as step 4, not dropped: the candidates do not run far enough yet (Sackboy stops on a black screen), so the work would wait on the engine either way.

## Consequences

- Share play features (the second player, the guest's controller, the invitation flow) rank above new platform calls in the board.
- A game is a test case only if it runs far enough on AnyPS5 to show the feature being tested.
- The first "played together over the internet" demo is share play; phase 4's goal stays as written.
Loading