仓库档案
这不是一个还在更新的项目,而是一份被完整开源的“游戏设计标本”:一个只有两个按键的周末原型,后来长成了销量以百万计的商业系列(据发行商 Raw Fury 历年公布)。今天拆它,看的是两件事——极简怎么做到上头,以及一个 48 小时的原型如何变成一门生意。
这游戏是什么
一句话:你是一个骑在马上的国王,马永远不停,你只能按左和右;白天你捡硬币、扔硬币,看王国自己长起来;天一黑,怪物从森林深处的传送门里涌出来,抢你的钱、你的工具和你的人民——你能做的,只有提前把墙砌到足够远。
没有菜单,没有按钮,没有教程。所有建造行为都被压缩成同一个动作:把一枚硬币抛到想去的地方。想雇一个流浪汉?扔一枚硬币在他面前,他捡起来就成了你的臣民;想让某个工匠去砌墙?把硬币扔到墙的工地上;想买弓箭、买锤子、买农具,全是同一枚硬币,扔在不同的位置。
整个游戏的核心循环长这样:
flowchart TD
A[白天:骑马巡视] -->|射兔子 / 翻遗迹宝箱| B[金币进袋]
B -->|把硬币抛向目标| C[流浪汉拾币成为臣民]
C -->|领工具后自动干活| D[种田 / 砌墙 / 造箭塔]
D --> E[黄昏:收工回城,紧张感上升]
E --> F[夜晚:Greed 怪从传送门涌来]
F -->|墙够硬| G[守住金币与人口,天亮]
F -->|墙被破| H[丢钱、丢工具、丢王冠]
G --> A
H -->|从头再来| A
驱动“再来一夜”的,是这个循环里天然的时间压力:每一夜都是一个存档点,也是一次审判。活过第 N 夜,天亮那一刻系统什么都不给你——但你自己会想“这波赚的钱,该拿去把南墙推远两格了”。
为什么上头
《Kingdom》是“极简主义做到上头”的教科书案例,值得逐层拆。
第一层:剥夺输入,反而放大决策。 玩家唯一能做的是控制国王的朝向。马不能停、不能加速、不能攻击,这意味着传统 RTS 里“同时操作十个单位”的多线程快感被整个砍掉,只剩一个单线程问题:现在该往哪边走? 每一次折返都有机会成本——往东多捡两枚硬币,西边的墙就晚砌一分钟。这种“永远差一点”的取舍感,是两个按键撑起策略深度的全部秘密。很多新手做的游戏上不了头,恰恰是因为给了玩家太多按钮,每个按钮都稀释了下一次点击的分量。
第二层:金币即指令,反馈链短到极致。 硬币抛出去、落地、叮一声、目标拾起、行为改变——这条反馈链不到两秒。更妙的是,同样的硬币扔给不同对象产生完全不同的结果:扔给流浪汉是招募,扔给工匠是开工,扔进许愿池纯属图个响。玩家在五分钟内就能建立“钱是万能动词”的心智模型,之后所有的贪婪和犹豫,都围绕同一个道具展开。这是随机奖励和即时反馈的复合:捡钱是即时的,钱变成什么又是未定的。
第三层:间接管理带来的涌现感。 你永远不能直接命令任何臣民。给流浪汉一把锤子,他会自己跑去最近的工地;给一把锄头,他会自己找水边开田;弓箭手白天自己射兔子创收,晚上自己站上城墙。你做的只是环境工程——钱撒在哪,人就在哪。这带来一种传统管理游戏给不了的体验:王国是自己活起来的。农民在雨里插秧、工匠在火把下敲墙,这些画面不是你操作的,是你“安排了条件”之后自己发生的,成就感因此翻倍。
第四层:昼夜循环自带压力曲线。 一天 24 分钟(体感),白天越到黄昏越慌,夜晚紧绷,黎明松一口气——一个内置的心跳节律。对比多数放置游戏匀速的进度条,这种张弛让“再玩一天”变成生理本能:天亮了,谁舍得在存档点退出?
第五层:氛围替玩法讲故事。 雨点打湿旗帜、雾从森林里漫进来、萤火虫围着营地转、月亮有阴晴圆缺——这些纯视觉元素不参与数值,却让玩家脑补出整个王国的命运感。上头游戏的共同点是留白让玩家自己写故事,而留白需要用氛围去填。
技术拆解
仓库本身就是一个 AS3 时代的独立游戏标本库:
org/flixel/ 目录整个内置在仓库里)。Flixel 是当年 Flash 独立游戏圈的明星框架,和 Canabalt 作者的 Flixel 系出同门。今天读它,类名结构可以直接翻译成任何现代引擎的心智模型。PlayState.as 主循环、Player.as 国王、Citizen.as 臣民、Troll.as 怪物、Coin.as/Coinsack.as 经济系统、Wall.as/Castle.as/Farmland.as/Campfire.as 建造体系。一个几百行的状态类就是一个玩法模块,单文件可读性极高,非常适合当“怎么把游戏拆成类”的入门读物。Weather.as、WeatherPresets.as、weathers.json、Fog.as、Haze.as、Light.as、Torch.as、Firefly.as、Sparkle.as、SunMoon.as……一个玩法极简的游戏,把最多的代码花在了天气、光效和情绪上。还有 convert_weather.py、convert_tiles.py、convert_sounds.sh 三个素材管线脚本——个人开发者自己写工具链的经典操作。Minimap.as 小地图、ExplodingText.as 爆炸文字、Dust.as 尘土粒子,连兔子(Bunny.as,前期唯一的稳定收入来源)都有独立类。todo.txt 还躺在仓库里,你可以看到作者自己的开发清单。mochi/as3/ 目录——MochiAds,Flash 时代最大的游戏广告分成平台,2014 年关门。也就是说,这个开源仓库里连当年的变现基础设施都一起埋着。变现观察
这个仓库最值得抄的其实是它的许可协议和它背后的路径。
License 本身是一份“防扒皮协议”范文。 作者在许可里写得很直白:禁止把这份代码编译了上手机商店卖钱,禁止加广告、加内购——因为他见过太多 Flash 游戏被人扒皮上架。但他紧接着补了一句:如果你用这里的素材和思路做出一个全新的游戏,尽管去赚钱,赚多少都随你。一句话划清了“搬运”和“创作”的边界,既保护了自己,又给学习者留了完整的商业化通道。做开源小游戏的开发者都该抄这份作业。
真正的变现路径在仓库外面,而且跑通了。 时间线是这样的:2013 年 4 月,Ludum Dare 26,主题"Minimalism",van den Berg 用一个周末交出这个只有左右键的原型;原型免费开源后放了两年;2015 年,扩展版《Kingdom: New Lands》上架 Steam 和主机、手机平台,由发行商 Raw Fury 发行;2017 年底系列第三作《Kingdom Two Crowns》(Noio 与 Fury Studios 合作开发)全平台发售,系列累计销量达到百万量级(据发行商历年公布)。全系列走的是付费买断路线,不靠广告不靠内购——极简玩法的商业版,恰恰把收入做在了“内容增量”上:新地图、新君主、坐骑系统、双人合作。
给个人开发者的参照系:原型免费开源,作用是积累社区和反馈(203 颗星在这个体量里不算多,但 LD 社区的曝光和后继开发者的引用才是隐性收益);商业版做垂直增量和多平台发行,收入全在买断。这条“周末原型→开源放养→商业系列”的路径,比“先憋三年大作”的风险低得多。
给我的灵感
点子一:换皮“守夜人”。 把“骑马国王+昼夜防御”的骨架整个搬过来,换成中式题材:你是一座边城烽燧的守将,白天巡视城墙、给民夫扔铜钱,夜里狼群和流寇从荒原扑来。美术可以全用像素剪影(原版就证明了剪影比细节省事),保持“只有一个方向键”的交互。网页版免费引流,itch.io 放付费完整版。工作量:核心循环一周,打磨两周。
点子二:继承制 roguelike。 原版死了就重开,这里加一层钩子:国王死了,继承人登基——每个继承人随机带一项“祖训”(开局多一枚金币 / 弓箭手射程 +20% / 墙便宜一半),血脉可以延续三五代。随机继承人就是随机奖励,家族树就是收集欲,两套上头机制几乎零成本接进原循环。适合做成手机买断或 Steam 小品。工作量:两到四周。
点子三:每日一城。 给网页版加“今日种子”:全世界玩家同一天拿到同一张地图、同一波怪物时序,比谁活过更多夜,配一个每日排行榜。这是 Wordle 验证过的传播机制,成本只是一段种子随机数生成器和一个记分板,换来的是每天回访的日活结构。变现走网页广告或赞助位。工作量:两到三周。
上手
todo.txt 全在里面)一个只有左右键的周末原型,把“做减法”做到了能卖百万份的程度。下次立项前,先问问自己:我的游戏,能不能砍到只剩两个键?
[!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 等场景全覆盖。
