<!-- title: 《Spelunky》白送的那一版，才是印钞机 -->
<!-- domain: games -->
<!-- repo: yaauie/spelunky-classic -->

## 仓库档案

**Spelunky Classic 源码**（`yaauie/spelunky-classic`）是《Spelunky》初代免费版的源码存档。这游戏的原作者叫 Derek Yu，美国独立开发者，画插画出身，工作室叫 Mossmouth。2008 年他把《Spelunky》Classic 版做成免费游戏放到网上；第二年，他做了一个在当时的独立游戏圈相当罕见的动作——把整个工程的源文件原样公开，任何人都能下载、拆开、改成自己想要的样子。仓库里存的就是这套 GameMaker 工程源码，语言是 GameMaker 脚本，没什么框架依赖，一个目录装下一整个游戏。Star 数与近期提交记录以仓库页面为准，此处不另列。

这个仓库的特殊性在于：它不是某个半成品 demo，而是一款后来卖出数百万份付费续作的系列游戏的“第一块砖”。免费版负责口碑，源码负责传承，真正收钱的是 2012 年的《Spelunky》HD 和 2020 年的《Spelunky 2》。看懂这条链路，比看懂任何变现教程都有用。

## 这游戏是什么

一句话：**每次进去都不一样的 2D 洞穴探险**。你操纵一个小探险家跳进随机生成的地下世界，目标是往下走，越深越好；路上挖土、放炸弹、躲尖刺、抢金币，被任何东西碰到一下就死，死了从头再来。操作只有移动、跳、攻击外加炸弹和绳索两样消耗品，五分钟能教会，一辈子学不完。

它和传统平台跳跃游戏的根本区别是“地图不留存”。每局开始，系统把一张 4×4 的房间网格重新拼一遍：房间本身是手工设计好的模板，连接方式随机，宝物和陷阱的位置随机。你上一局的肌肉记忆只能带走一部分，另一部分必须现场学。

它的核心循环长这样：

```mermaid
flowchart TD
    A[跳进随机洞穴] --> B[探索: 4x4房间重新拼图]
    B --> C[决策: 挖矿/炸墙/绕路/抢宝]
    C --> D{本局生死}
    D -- 生还 --> E[深入下一层 金币道具累积]
    D -- 死亡 --> G[结算 死亡回放 几分钟一局]
    E --> F{停留太久?}
    F -- 是 --> H[幽灵登场 穷追不舍]
    H --> G
    F -- 否 --> C
    G --> I[看分数与死因]
    I --> J[每日挑战: 全网同一个种子]
    J --> A
```

注意图里那个“幽灵”：只要你在某一层磨蹭太久，一个碰即死、无视地形的幽灵就会追上来。这个设计后面细说，它是整个循环的节拍器。

## 为什么上头

**第一，死亡便宜，开局快。**一局 Classic 大概一到五分钟，死掉按个键就重开。玩家不会为失败付太多情绪成本，反而会立刻把“死因”转成“下一局的预习”：这回我记住尖刺会从天花板上掉了。免费版年代没有成就系统，玩家自发干的事是比谁死得远、进得深。

**第二，随机的是布局，不变的是规则。**纯随机游戏最怕“这一把不可玩”——出口被墙封死、关键道具刷在必死点。Spelunky 用“模板拼合”解决了这个问题：每个房间都是人肉测试过的可玩单元，随机只发生在房间怎么连、怪往哪放。玩家感受到的是“每局都新鲜”，系统保证的是“每局都公平”。上头感的前提是不冤枉，这一条是地基。

**第三，资源决策密度高。**炸弹能炸墙抄近路，也能用来杀一群敌人；绳索能救命，但背包里就那么几根。捡不捡金像（拿了会触发机关）、追不追那袋被蛇守着的宝石，每一个选择都在“收益”和“暴毙风险”之间划价。这种小额赌局高频出现，正好卡在多巴胺系统的敏感区间。

**第四，软时限逼你前进。**很多游戏用倒计时催玩家，体验很糙。Spelunky 的办法是在你赖着不走之后才放出幽灵——前一分半你自由探索，超时后代价是“必死的追猎者”。玩家学到的是节奏感：贪要贪在刀刃上，探完就走。这比屏幕上跳红的倒计时优雅一个量级。

**第五，也是对后来者影响最大的：每日挑战。**HD 版引入的 Daily Challenge 把随机种子固定成当天日期——全世界玩家今天玩到的是同一张地图，只有一次机会，成绩上榜。这一下把单机游戏变成了没有服务器的竞技场：你可以和朋友比较同一局的表现，明天这张地图就永远消失。稀缺感+可比性+零运维成本，后来《以撒的结合》《Hades》《Slay the Spire》全都把这套抄了进去。

## 技术拆解

对想动手的人来说，这个仓库的含金量在“生成算法的骨架”，拆三层看：

**1. 房间模板拼合，而不是纯噪声。**每层是一个 4×4 网格，每个格子从模板库里取一个预制房间，房间之间打通道，出口固定在底层。模板保证了可玩性下限，网格随机保证了上限。你做任何 roguelite 都可以直接套这个思路：先手工做 30 个可玩小单元，再写一个连接器，两周内能跑通一个像样的生成器。纯 Perlin 噪声看着高级，实际做出来大概率是不可玩的地形。

**2. 实体行为模型简单到可以直接抄。**蛇是来回走、蝙蝠是睡着等玩家靠近再扑、洞穴水獭追人。没有状态机框架，就是几个条件分支。这套“简单规则+物理交互”叠出复杂局面：一次塌方可以同时触发蝙蝠苏醒、尖刺坠落和金币散落，涌现出设计者都没见过的名场面。做小游戏时别急着上行为树，先看看规则够不够正交。

**3. 没有存档，死亡即清算。**roguelike 的存档系统是最省事的那种：不做。省下来的工程量全部投进“再来一局”的顺滑度上——死亡瞬间结算、一键重开。对所有小游戏开发者这都是一个提醒：存档系统的复杂度要跟游戏时长匹配，一局五分钟的游戏做云存档纯属自找麻烦。

**4. 每日挑战的实现成本被严重高估了。**本质就是“用日期字符串做随机种子”。任何带随机数的游戏，加一个 `seed = YYYYMMDD` 的入口参数就完成了 80%，剩下 20% 是排行榜和分享文案。这是全文最值得划走前抄走的一句话。

源码本身是 GameMaker 工程，直接读脚本就能看懂每一层怎么拼、每种怪怎么动。不是你熟悉的栈也没关系，逻辑是通用的，翻译成 Godot、Phaser、LÖVE 都不难。

## 变现观察

Spelunky 是“免费开源做前半场，付费卖货做后半场”的教科书案例，每一拍都能对上：

**Classic 免费**——零门槛拿到第一批玩家和第一批传播。2008 年前后独立游戏还靠论坛口口相传，一个完全免费又耐玩的洞穴游戏是极好的传播材料。
**源码公开**——表面是馈赠，实际是二次传播：同人改版、玩家移植、分析文章接踵而至，游戏的曝光周期被拉长了好几年，而且全是零成本自来水。
**HD 收费**——2012 年登陆 Xbox 主机平台后转付费，随后上 PC，系列累计卖出数百万份。付费买的是高清画面、新内容和每日挑战，而玩家之所以愿意掏钱，恰恰是因为免费版已经把“这游戏好玩”证明过了。
**2 代续作**——2020 年发售，靠前两代攒下的口碑直接冲榜。

这套节奏放在今天依然是网页/独立开发者的最优解之一：网页版免费挂广告引流，itch.io 和 Steam 放带成就、创意工坊、每日挑战的付费完整版；源码或者编辑器选择性开放，把 mod 社区变成你的市场部。同类跑通的路不少见——前面聊过的开源地牢生态、卡牌爬塔的网页开源版，走的都是“免费版证明玩法，付费版收割深度玩家”的同一套逻辑，区别只在各家把钩子放在哪一层。

给个人开发者的具体启示：**免费版的任务不是赚钱，是制造“欠你一个人情”的玩家**。人情在先，客单价在后。

## 给我的灵感

**1. 给你现成的小游戏加“每日种子”。**你手上任何带随机性的游戏——合成、消除、爬塔、扫雷变体——加一个日期种子入口和成绩排行榜，就成了“每天全网同一张卷子”的轻竞技产品。MVP 一个周末：随机数种子改造成日期字符串，加一个本机排行榜和分享文案生成（“我今天在 1024 洞穴走了 14 层，你呢”）。变现走广告：留存和每日打开次数上来后，广告展示量是线性回报。

**2. 把 Spelunky 公式搬进中文题材。**随机房间拼合+软时限+资源三角，换成“下斗”题材：洛阳铲当绳索、黑驴蹄子当道具、粽子当洞穴水獭、鸡鸣灯灭不摸金当软时限（灯灭了才出鬼，跟幽灵机制严丝合缝）。题材情绪价值拉满，核心系统全部照抄。MVP 两到三周，变现可以走移动端激励视频——“看广告换一根绳索”跟资源三角完美兼容。

**3. 做“模板拼合”生成器组件。**把 4×4 网格+房间模板库的生成逻辑抽成独立组件（Godot 或 Phaser 插件形态），卖给同样想做 roguelite 的开发者。这个需求的痛点极其具体：人人都会写噪声，人人都做不出“可玩的随机”。源码就是现成参考实现，组件化之后在 itch.io 和各引擎商店按小工具定价卖，属于给同行“卖铲子”的生意。

## 上手

仓库地址：`https://github.com/yaauie/spelunky-classic`，Classic 版源码以 GameMaker 工程形式存放，可直接下载阅读或改造。想先玩后读，Classic 版在作者当年的发布页仍可免费获取，HD 与《Spelunky 2》在 Steam 等平台有售。建议路线：先免费版打两小时，亲身体会幽灵出场那一下的脊背发凉——然后打开源码，去数一数实现这个恐惧只用了多少行脚本。

> [!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 等场景全覆盖。

![51学通信知识星球海报-扫码加入](https://wiki.500nian.com/images/zhixingqiu_qrcode.png)
