The invitation is four letters, not a link
A URL only opens the installed app on Android; on an iPhone it opened a second copy of the game in Safari, with its own storage and none of the name picked in the app. So the share sheet now sends "JOIN ME IN SPLATTER TENNIS — THE CODE IS ABCD" and nothing else, and the button says SEND THE CODE. The #net-ABCD door stays — it is exactly what a deep link will carry the day this is a real app with universal links. Nothing sends it in the meantime. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
89b2488d3c
commit
2b7eb04e19
3 files changed
+21
-19
No files matched your search
+10
-6
@@ -430,12 +430,16 @@ screen (`#vs`, `index.html` + THE LOBBY in `main.js`); the protocol underneath i
|
||||
the kit/tour selection `start()` performs is already done when the `look` message reads it.
|
||||
Two more hooks join `intoSplatter`: `room` (the code landed) and `lost` (returns true when the
|
||||
lobby said so itself, which is what suppresses the card). Headless leaves them null.
|
||||
- **SHARE THE LINK, then the code.** `navigator.share` is the phone's own sheet — the friend is in
|
||||
WhatsApp, not in a room reading letters aloud — with `clipboard.writeText` as the desktop
|
||||
fallback and the four letters still big on screen for when they are in the same room. The link is
|
||||
the URL door that already existed (`#net-ABCD`): it opens the lobby with the code prefilled,
|
||||
ONE tap from the court. Deliberately not an auto-join — that tap is where the joiner sees, and
|
||||
can change, the name the other phone will call them.
|
||||
- **SEND THE CODE — and no link (settled same day).** `navigator.share` is the phone's own sheet —
|
||||
the friend is in WhatsApp, not in a room reading letters aloud — with `clipboard.writeText` as
|
||||
the desktop fallback. It shipped as SHARE THE LINK for an hour and the link came straight back
|
||||
out: **a URL only opens the INSTALLED app on Android** (the manifest's scope covers the site, so
|
||||
its WebAPK claims these URLs), while **an iOS home-screen app can claim nothing**, so on an
|
||||
iPhone the invitation opened a second copy of the game in Safari — its own storage, none of the
|
||||
name they picked in the app. Four letters typed into the app they already have is the honest
|
||||
version until this is a real app with universal links; the `#net-ABCD` door still exists and is
|
||||
exactly what a deep link will carry the day there is one, nothing merely sends it now. That door
|
||||
prefills the lobby rather than auto-joining, so the joiner still sees the name they will wear.
|
||||
- **ONE NAME PER PLAYER.** The field is prefilled from `stats.savedName()` and written back through
|
||||
the new `stats.saveName` (which `submit` now shares), so the world board's name and the netplay
|
||||
name cannot become two things. It crosses on the EXISTING `look` message as `n` — no new message
|
||||
|
||||
Reference in new issue
Block a user