怎么和朋友开一个网页语音房打游戏(不用装 App)
这个语音房把“开房、语音、下棋”放在一个网页里:不用注册,不用装 App,朋友打开链接、输入 4 位房号就能进来。房主可以在井字棋、五子棋、四子棋之间切换。下面是从开房到落子的完整步骤,以及它现在做不到的事。
开房前:浏览器和麦克风
用较新的 Chrome、Edge、Safari 或 Firefox 打开页面即可。页面需要 HTTPS(本站满足),第一次点“开麦”时浏览器会请求麦克风权限;不允许也能进房、下棋,只是听不到也说不了。昵称最多 12 个字,只用于房间里显示。
四步开一局
第一步:创建房间
打开 /games/voice-room/,填昵称,点“创建房间”。系统会随机分配一个 4 位数字房号(1000–9999)。最早进房的人成为房主,房主执 X、先手。
第二步:把房号发给朋友
把 4 位房号发给要一起玩的人,或者点“复制邀请链接”。链接里带着 ?room=房号,朋友打开后会自动填好房号。朋友填昵称、点“加入”即可。房间最多 4 人,第 5 个连接会收到“房间已满”。
第三步:各自点“开麦”
麦克风默认关闭,不点“开麦”就不会请求权限。每个人都要自己点一次;按钮变成“静音”就表示正在说话。iOS Safari 如果听不到声音,点一下页面任意位置即可解锁音频播放,这是浏览器的自动播放限制。
第四步:选游戏并落子
房主在“选择游戏”里切换井字棋、五子棋或四子棋,所有人会看到同一个棋盘;换游戏会重置棋盘和比分。房主执 X 先手,第二位成员执 O;第三、第四位成员进房后是观战。
规则:井字棋是 3×3,横、竖或斜线三连即胜;五子棋是 15×15,任意方向五连即胜;四子棋是 7×6,棋子按重力落到该列最下面,横、竖或斜线四连即胜。所有落子坐标都由服务端校验轮次与合法性,客户端只负责发“我要下在 (x, y)”。
房主可以点“新一局”重置棋盘,比分会在同一批成员、同一种游戏之间累计。断线后 60 秒内用同一个标签页重连,可以接回原来的棋局;房主离开会自动移交给下一位,新房主可以点“新一局”重新开始。
如实说明的限制
- 最多 4 人。语音是纯 mesh:每个人和其他每个人都单独建立一条音频连接。4 人时每人最多 3 路上行,更多人的带宽、CPU 和混音压力会明显上升,所以没有开放到 5 人以上。
- 房号只有 4 位,可被猜中或碰撞,也没有密码和账号。不要在公开群、论坛或社交媒体上发房号,只发给要一起玩的人。创建房间时如果随机到的房号刚好有人,可能会直接进入别人的房间;进房后先看一眼成员列表。
- iOS Safari 首次播放远端音频需要一次页面点击解锁。这不是麦克风坏了,点一下页面即可。
- 没有文字聊天、屏幕共享、录音和战绩持久化。网络打不通时语音可能经 TURN 中继转发,但同样不录制。
隐私:语音点对点,服务器不录制
语音使用 WebRTC:能直连时,音频在两台设备之间点对点传输;网络环境打不通时,会通过 Cloudflare TURN 中继转发。服务器负责信令、成员名单和棋局状态,不录音、不存储任何音频。麦克风默认关闭,只有你点“开麦”才请求权限;点“静音”后本地音轨会停止。
房号和昵称在房间存续期间保存在房间服务里,用来维持成员列表和棋局;房间空了之后会清空。页面没有账号体系,也不会上传通讯录或其他个人信息。
常见问题
需要注册或下载 App 吗?
不需要。用浏览器打开页面,填一个昵称就能开房或加入。
朋友为什么进不来?
先确认房号是 4 位数字且没有输错;房间最多 4 人,满员时第 5 人会收到“房间已满”。如果对方网络受限,语音可能连不上,但下棋通常仍可用。
语音会被录下来吗?
不会。语音优先点对点直连,必要时经 TURN 中继转发;服务器只转发,不录制、不存储音频,本站也不提供录音功能。