无限拼图游戏

查看原文 HN 讨论

文章摘要

Infinite Jigsaw 是 impostervt 发到 Show HN 的一个大规模多人在线拼图游戏,拿到 27 分和 22 条评论。作者的自述只有一句话:「这个点子想了很久了,终于让它跑起来了。」

站点本身是纯客户端渲染的单页应用(Vite 构建,入口是一个 module script),HTML 里除了容器什么都没有,因此关于玩法最完整的官方描述来自页面的 meta 标签和社交分享卡片:

一张无限画布上的大规模多人拼图。和所有人一起把碎片拼到一起;每完成一幅画,它就会缩进一幅更大的画的中心,永远进行下去。

这就是整个设计的核心机制,也是「无限」二字的来源:拼图不是拼完就结束,而是每完成一层,已完成的整幅图像会收缩成下一幅更大图像的中心区域,外围继续向外扩展新的内容——本质上是把 AI 图像的 outpainting(外扩绘制)做成了一个可以永远玩下去的协作循环。开局那幅画(也是分享卡片上的图)是一间温馨的插画风咖啡馆。

技术上能确认的部分:页面 theme-color 为 #111110,做了完整的移动端适配(mobile-web-app-capable、禁止缩放、touch-action: noneviewport-fit=cover),分享用的 og 图是由仓库里的 tools/make-og-image.mjs 脚本从种子图生成的。多人同步与后端跑在 Cloudflare(Workers / Pages)上——这一点在帖子上首页当天就以最直接的方式暴露了:作者不得不在评论区连发两条道歉,因为免费套餐的 Cloudflare Worker 额度被打爆了,导致部分玩家看不到任何拼图碎片,随后他升级了套餐。

界面上,每个在线玩家有各自颜色的鼠标光标和显示在光标旁的用户名标签。这个设计和「所有人共用同一块画布」的机制一起,构成了评论区反馈最集中的两个问题(详见下文)。作者在回复中透露:目前的图像生成是「AI 加人工策展」的混合流程,预先烘焙好一批关卡;以及这个项目「大约 90% 是用 Claude Opus 4.8(现在是 5)vibe code 出来的」。

HN 评论精华

讨论规模不大但相当聚焦,几乎所有实质性反馈都指向同一件事:人太多了。作者对每一条都做了回应。

核心问题:人多则乱

gokaygurcan 的第一条评论定下了基调:「概念不错。6 个人的时候很好玩,18 个人就不太行了。几百人的话,估计纯粹是混乱。」他提出一个有意思的缓解思路:让不同的人从不同侧看到不同的碎片,也许能帮上忙。作者的回应是考虑「把人数上限设在 12 人,超出后新加入者从 0 级重新开一局」。

SaltyAstronaut 表达了同样的感受:「概念很棒,但厨房里的厨子太多了。事情太多了,小房间会更好。否则很棒。」作者回复:「是啊,可能需要多个房间,每个房间限制人数。」

kalkayan 用最生动的方式描述了这种体验:「谁来把我永久封禁吧,我就算发挥最好也是在破坏别人的游戏。」

次要问题:名字标签挡住了碎片

vunderbabspammer 各自独立提出了同一条改进:用户名标签会遮挡碎片。vunderba 建议「加一个隐藏用户标签的选项,只显示不同颜色的鼠标光标,否则视图很快就会变得杂乱」。bspammer 说得更具体:「别让名字标签盖住碎片区域。因为有人把光标悬在那儿就连碎片都看不见,非常令人沮丧。」

技术讨论:无限 outpainting 怎么做

vunderba 提出了本帖最有技术含量的问题:「你是怎么处理 outpainting 的?除非用开放权重模型,我想用 Nano Banana 或 GPT-Image 这类东西成本会很快变得很高。」

作者坦承了当前状态:「现在是 AI 加一个人做策展。我肯定得想办法做成纯 AI 的,因为按当前的用户负载,预先烘焙好的关卡在接下来 30 分钟内就会被玩完。」

vunderba 分享了自己的经验:「我做过一些无限图像生成的实验,没有一定程度的人工监督真的很难做好。即使模型技术上能生成无限内容,你会发现它最终会重复某些模式,所以结果慢慢会显得非常重复。」他给出的建议是:如果最终要用更便宜的开放权重模型,Flux Klein 9B 可能是最佳选择,它在 outpainting 上表现相当不错,并附上了 ComfyUI 的工作流模板链接。作者表示一定会去研究。

关于开发过程

fraXis 直接问:「聊聊开发吧。花了多久?语言/框架?100% agentic 吗(如果是,用了哪些 LLM,分别用在什么地方)?」作者的回答很干脆:「大约 90% 是用 Claude Opus 4.8(现在是 5)vibe code 出来的。」vivzkestrel 只问了三个字:「WebSocket 连接?」——没有得到回答。

故障与运维

MrCoffee7 报告:「游戏不工作——我看不到任何拼图碎片。」作者回复:「抱歉,比我预想的更快撞上了 Cloudflare 的限制。现在好了。」他另外还单独发了一条说明:「抱歉,免费套餐的 Cloudflare Worker 额度打满了。刚升级了。」

L-patpat 给出了一条关于「上首页之后」的观察:「前天我看了你的游戏,当时在线的人还不少。但今天再看,几乎没人在玩了。另外上次我看拼图序列时,已经循环到第三幅图了;今天打开,它又重置回第一幅了。」

正面评价

M4v3R 的话大概最能代表这个作品的气质:「我太喜欢它了,放下第一块碎片的时候感觉真好 :)。是有一些技术问题,UI 和操作可以更好,但它确实好玩,而这才是真正重要的。」

eth0up 贡献了最有感情的一条:「我爱艺术,而且对你这个项目所用的画风有特别的偏爱。不知道你在不在乎,但我已经把它加了书签,只是为了看着它。我想总会有新的东西出现,而且有活生生的人在那里实时组织这幅图像。作为一个局外人和一个非预期的粉丝,我欣赏你的作品。」他在编辑中补充说,自己看完《借东西的小人阿莉埃蒂》以及其他一些吉卜力作品(《辉夜姬物语》《萤火虫之墓》《千与千寻》)后总是想回到那个世界里待着,「我想偶尔这个能帮上忙」。

luckykiddie:「好玩,能和别人一起在线拼拼图是个好主意。」jekjek:「和别人一起玩这个游戏很有意思。」