2013年,一个叫 Michael Townsend 的开发者发了款网页小游戏:打开是一片黑,屏幕上只有一句话和一根火柴。没有美术、没有音效、没有教程,全靠一行行文字往外蹦。就是这间“小黑屋”,第二年被人移植到 iOS 之后,冲上了美区 App Store 付费榜第一,作者在博客里把整个冲榜过程写成了一组复盘文章,成了独立游戏圈的教科书案例。
十三年过去了,这间黑屋还没凉。GitHub 上有人在用 Godot 复刻这套公式——今天要挖的就是这个仓库:TinyTakinTeller/GodotProjectZero,一个叫 A Dark Forest 的实验性极简放置游戏。Star 不多,但它复刻的这套玩法,到今天仍然是个人开发者“零美术、纯文字、两周出活”的最佳起手式之一。
先把丑话说在前面:这个仓库 Star 只有三位数,跟你印象里“开源爆款”不沾边。但它值一篇文章,原因不在仓库本身,而在它选的那个“祖师爷”——A Dark Room 是文字放置这个品类的活化石,看一个人怎么复刻它,比自己啃原版更能看清这套玩法的骨架。
一句话说清:你从一间冷屋子和一根火柴开始,靠一行行冒出来的文字,把一个文明慢慢点着。
A Dark Room 的经典开局是这样的:屏幕漆黑,只有“生火”一个按钮。点了,火亮了,屋子暖了,按钮变成“添柴”。你出去捡柴火,回来发现火又灭了。来回几次,系统赏你一排置物架;再过一会儿,出现“做陷阱”的选项;陷阱抓到毛皮,你学会盖小屋;小屋盖起来,陌生人陆续入住,变成村民——你得给他们分派工作:采集的、打猎的、制皮的。然后地图展开,旧道路、荒野、铁矿、洞穴……一处一处冒出来,每处都藏着新的文字、新的资源、新的危险。
A Dark Forest 复刻的就是这套公式,并且按“极简”两个字往死里砍:砍掉美术、砍掉动画,只留状态、资源和文字,用 Godot 重写成实验版。整个游戏的核心循环,画出来长这样:
flowchart TD
A[生火/添柴<br>维持温度] --> B[出门采集<br>捡柴/设陷阱]
B --> C[资源入袋<br>木头/毛皮/肉]
C --> D{资源够解锁<br>下一格了吗?}
D -- 不够 --> B
D -- 够了 --> E[盖建筑<br>柴火房/小屋/陷阱]
E --> F[村民入住<br>分派工种]
F --> G[工人持续产出<br>离线也在涨]
G --> H[触发新事件文字<br>村庄消息/地图地点]
H --> I[好奇心被勾住<br>想看下一行字]
I --> A
I --> B
注意这个循环里最狠的一环:驱动玩家回来的不是资源,是“下一行字”。木头可以算出来,但“荒野深处那间废弃小屋里有什么”算不出来。这就是这类游戏和普通数值放置的分水岭,后面细说。
把这间黑屋拆开,你会发现它几乎是一份“人类成瘾机制”的清单,每一条都能对应到具体的按钮:
1. 文字即奖励——进度感最便宜的实现。 一般游戏要做出“进度感”,得画新地图、做新怪、配新音乐。A Dark Room 只需要多打一行字:“村民中开始流传森林里有狼出没。”十一个字,玩家的多巴胺一样照给不误。对个人开发者来说,这是天大的好消息:别人用美术买的情绪,你用文案就能买。一条新事件文字的成本是一个字符串,一条新怪物模型的成本是一个月的美术外包。
2. 选择权膨胀曲线——按钮从 1 个长到 20 个。 开局你只有一个“生火”,这不是偷懒,是精心设计的压迫感:没有选择的时候,给你一个选择就是恩赐。之后每几分钟赏你一个新按钮,玩家的体感是“我在不断变强、不断解锁”,其实系统只是把预先写好的表按序弹出。这种“漏斗式解锁”让前 30 分钟的流失率极低——因为每一分钟都有新东西看。
3. 稀缺制造心流——柴火永远差一点。 火会灭,这一条是整个游戏的心跳。你添的柴在烧,村民在吃,陷阱会空——所有资源的出口都在漏。玩家永远处在“刚够又不太够”的边缘,这是心流理论里最标准的张力区间。太富了无聊,太穷了挫败,“差一点”刚刚好。
4. 离线成长的错觉——放置游戏的回访钩子。 村民一旦入住,就算你关掉浏览器,他们也在“替你打工”。几小时后回来一看:仓库满了,村庄里又冒出一行新文字。这个设计同时命中两件事——给玩家一个回来的理由(看看涨了多少),和给玩家一个骄傲的资本(我睡着的时候我的文明还在生长)。移动端放置游戏那套“离线收益翻倍,看个广告?”的印钞机,烧的就是这条人性。
5. 不解释的美学——好奇心缺口。 这游戏从头到尾不给你说明书。毛皮是干嘛的?铁匠铺为什么是灰的按钮? wandering stranger 给你的东西有什么用?一律不解释。玩家被迫去搜攻略,于是有了社区 Wiki,有了“剧透警告”的攻略帖——一个游戏能让玩家主动建 Wiki,留存就不用愁了。这个“故意不解释”的招数,零成本,可惜绝大多数新手不敢用。
对照经典的上头六因子:即时反馈(每下点击数字都动)、进度感(新按钮新文字)、随机奖励(事件和地图掉落)、策略深度(工种分配的资源平衡)、收集欲(物品栏一格格填满)、社交攀比(讨论帖里晒进度)——它前五项全占,唯独不靠第六项。一个不联网的单机文字游戏能做到这个覆盖度,这就是它被复刻十三年的原因。
从仓库信息看,这是一个 Godot + GDScript 项目。对想入局的人来说,这个技术选型本身就是答案:
为什么是 Godot 而不是网页三件套? 原版 A Dark Room 2013 年用 HTML+JS 写成,是当年最顺的路。今天你再写纯网页版,要跟几千个 Wordle 克隆抢曝光;而 Godot 一键导出 Windows/Mac/Android/iOS/Web 五端,同一个文字放置游戏,就能同时上 Steam、手机商店和 itch.io——对变现来说,“能上几个店”比“代码多优雅”重要十倍。GDScript 语法接近 Python,会一点脚本语言就能上手,MVP 学习成本几乎为零。
这类游戏真正要拆的不是引擎,是“内容管线”。 A Dark Room 全部秘密在数据结构里,A Dark Forest 的复刻价值也在这里。照着原版的骨架,你需要实现的是这么几张表:
{名称, 前置条件, 造价, 解锁后开放的按钮}——整个游戏的“选择权膨胀曲线”就是这张表按序弹出;{名称, 获取途径, 用途标签},“不解释美学”靠它控制信息披露的节奏;{触发条件, 概率, 文案, 奖励/惩罚}——随机奖励全从这里抽;{工种, 每秒产出, 消耗}——离线收益的核心。四张表配一个滚动文字日志组件(新事件往上插一条,带渐隐),游戏就立起来了。这几个组件全是通用的:你换成修仙题材、开饭店题材、末日生存题材,管线一字不改,只换表内容。
存档和离线结算,各只需十行左右的核心逻辑。 存档:把资源、建筑、事件进度序列化成 JSON 写进用户目录,读档时做版本迁移;离线收益:记录时间戳,读档时用 当前时间 - 上次时间 乘以工种产出,封个顶。这两个不起眼的小函数,恰恰是商业放置游戏付费点的地基——“离线收益×2,看广告解锁”卖的就是它们。
MVP 工作量估算:核心循环(生火—采集—建造—村民—离线)一两周;填上 30~50 条事件文案和三张地图地点,才是一个“完整感”够卖的作品,再加一两周。对照原版是一个人业余时间做出来的量级,这个估算不算乐观。
这间黑屋的祖师爷,本身就是一份完整的变现教案:
A Dark Room 本尊的路径:网页版免费上线,攒口碑攒玩家;2014 年开发者 Amir Rajan 把它移植上 iOS,低价付费下载,冲到美区 App Store 付费榜第一,并在自己博客上公开了完整的榜单冲刺复盘——从选关键词到控制评分节奏,写得明明白白。一个零美术的文字游戏,靠这套打法登顶付费榜,这件事至今还在给文字放置品类背书:这个品类的天花板,是被验证过的。
落到今天,复刻这套玩法的现实变现路径有四条,按门槛从低到高:
三个可以直接动手的点子,按投入从小到大排:
1.《出租屋创业记》——换皮复刻,MVP 两三周。 把黑屋换成出租屋:生火→交房租续命,捡柴→接外卖单,盖小屋→租下第二间房,村民→雇兼职店员,工种分配→排班,地图→整栋楼的神秘房间。事件文案全部本地化:房东查房、邻居投诉、隔壁烧烤摊来挖人。竖屏纯文字,直接上微信小游戏,变现走激励视频(“离线收益×2”)。这是三条里最快见到钱的,核心代码照着 A Dark Forest 的表结构抄思路就行。
2. 给黑屋加一个“每日种子”。 A Dark Room 类游戏最大的遗憾是通关即弃。学 Wordle 的传播思路:每天固定一个随机种子,全服同一套事件序列,玩家比谁当天爬得远,结果导出成一张 emoji 网格图分享。这一改动把“单机放置”变成“轻社交攀比”,补上了上面说的第六因子——而且实现成本只是把随机数发生器换成可播种的,一周内能加完。适合在 H5 版上做,传播和广告变现互相放大。
3. 卖模板不卖游戏。 把这类仓库的结构吃透之后,整理成一份“文字放置游戏 Godot 模板”:四张数据表 + 日志组件 + 存档/离线结算代码 + 一份换皮教程,上架 itch.io 和 Godot Asset Library,定价 10~15 美元。ADR-like 是独立开发者练手的热门品类,“想做个黑屋游戏”的人永远在源源不断地出现——淘金热里,卖铲子的比挖金子的先赚到钱。
一句话收尾:这间黑屋烧了十三年还没灭,说明的不是情怀,是需求。火种开源了,柴火得你自己捡。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
