钻得越深,矿越值钱 ------ 记得留够油回家。
⚠️ 先说清楚:这是一个 Java 程序,电脑上要先装 Java(8 或以上版本)才能玩。 怎么检查、怎么装,第三节一步步写了。
一、那台小小的矿车
不知道还有没有人记得「熔岩矿车」。
那是塞班还在的年代。手机屏幕只有巴掌大,按键是实体的,玩游戏全靠方向键和中间那颗确认键。课间十分钟、晚自习下课前那一小会儿,把手机藏在桌肚里,开着一台小矿车往地底下钻 ------ 那是我高中时最上头的游戏之一。
规则简单到一句话就能说完:往下挖矿,回地面卖钱,升级车子,再挖得更深。
可它偏偏有一个让人又爱又恨的设定:油。
越往下矿越值钱,可回去的路也越长。你看着货舱里那颗刚挖出来的红宝石,再看看见底的油表,心里开始算:再挖一块,还回得去吗?
很多次答案是回不去。矿车在半路"砰"一声炸掉,一整趟的货全没了。然后你骂一句,重新加满油,又一头扎下去。
后来塞班没了,那台手机不知道丢在了哪儿,那个游戏也再没找到过。
十几年后,我用 Java 把它重新做了出来。

二、它现在长这样
还是那个熟悉的循环:地面上有四家店 ------ 加油站、矿石收购站、改装厂、道具店。加满油,找块空地往下钻。

浅层是煤炭、铁矿、铜矿,值个十几几十块;往下是金矿、翡翠、红宝石、钻石;再往下,是欧泊、陨铁、星核。一共 27 种矿石,每一种都有自己的样子 ------ 有的会闪光,有的会冒烟,有的带着电弧。

地底最深处,一千多米的地方,藏着 6 颗「熔岩之心」,一颗卖 30000。全部挖出来卖掉,就通关。
路上还埋着 4 种宝藏:古钱罐、恐龙骨架、远古神像,还有一种......挖到你就知道了。
赚来的钱拿去改装厂,7 种部件,每种 7 档,从"出厂"一路升到"传说":

当年那种"再挖一块就回去"的纠结,我也原样留下来了,还多加了几道坎:
- 熔岩:钻进去会烧伤,越深越疼
- 瓦斯:长得和普通泥土一模一样,偶尔冒个小气泡,一挖就炸
- 地热:150 米以下越深越热,越热越费油
- 地震落石:300 米以下,头顶开始掉灰,就是碎石要下来了
燃油条上有一根白线,那是"飞回地面大约要的油"。油快掉到白线时,屏幕会闪红、报警 ------ 这是我给当年那个一次次炸在半路上的自己,补上的一点温柔。

但规矩没变:油烧光或者车身打坏,车就会爆炸。一整舱的货全丢,还要交 25% 的救援费。满了就是满了,炸了就是炸了 ------ 没有这份心疼,就不是那个游戏了。
三、怎么玩起来
⚠️ 运行环境:必须先装 Java(8 或以上版本)。 游戏本身就是一个 jar 文件,电脑上没有 Java 的话,它打不开。
第 1 步:检查电脑上有没有 Java
Windows 按 Win + R,输入 cmd 回车,在黑窗口里输入:
bash
java -version
- 能看到
java version "1.8.0_xxx"、openjdk version "17.x"这类版本号 → 已经装好了,直接跳到第 3 步 - 提示「'java' 不是内部或外部命令」→ 没装,看第 2 步
第 2 步:安装 Java(已经装了就跳过)
去 Adoptium 下载 Temurin,版本选 17 或 21 都行(8 也能跑),Windows 下载 .msi 安装包,一路下一步装完。装完重新开一个 cmd 窗口,再输一次 java -version,能看到版本号就成功了。
macOS 也是在 Adoptium 下载 .pkg 安装;Linux 用系统的包管理器装 OpenJDK 就行。
第 3 步:下载游戏
https://github.com/xiaoqiMikko/games/releases/download/v1.0/LavaDigger.jar
第 4 步:运行
在 jar 所在的文件夹打开命令行,输入:
bash
java -jar LavaDigger.jar
Windows 上如果 .jar 已经关联了 Java,直接双击也能打开。双击没反应,或者被解压软件当成压缩包打开了,说明没关联,用上面的命令行方式启动就行。
操作按键:
| 按键 | 作用 |
|---|---|
| ← → (或 A D) | 左右行驶 |
| ↑ (或 W) | 喷气往上飞(很费油);往下掉时按住能刹车 |
| ↓ (或 S) | 向下钻 |
| 贴着墙按 ← / → | 横着钻 |
| 回车 (或 E) | 在商店门口进店 |
| F / R / X / T | 备用油桶 / 修理包 / 炸药 / 紧急传送 |
| Esc | 暂停 / 存档 / 看说明 |
| M / F11 | 静音 / 全屏 |
会自动存档,存在 jar 旁边的 save/lava.properties。关掉游戏,下次打开选「继续游戏」,矿车还停在你离开的地方。
四、做的时候的几个小心思
写给同样想动手做点小游戏的朋友。
1. 一张图片都没有。
整个游戏只有一个约 90KB 的 jar。矿车、四家商店、几十种矿石的贴图、土层的颜色、窗口和任务栏的图标,全部是启动时用 Java2D 一笔一笔画出来的;爆炸声、挖矿声也是用代码合成的 PCM 波形。
这么做一开始是图省事 ------ 不用找素材、不用管版权、不用操心资源路径。做到后面发现它有个意外的好处:想给矿石加个闪光、给宝藏加圈光晕,改几行代码就有了。
2. 纯 Swing,零依赖。
没有用任何游戏引擎和第三方库,只用 JDK 自带的 Swing。画面先画到一张固定 960×640 的缓冲图上,再等比缩放到窗口,所以窗口随便拉、F11 全屏都不会变形。游戏逻辑用 1/120 秒的小步长更新,高速下落时也不会穿墙。
3. 用一个"机器人玩家"来调数值。
这类游戏最难的不是写代码,是数值:升级太便宜,一小时就通关,没意思;太贵,挖到最后也凑不够钱,更没意思。
我写了一个经济模拟程序,让它按固定策略自动玩完一整局,算出通关要多少小时、全部升满要多少小时,换 8 个随机种子各跑一遍。每次改价格、改矿价、改油耗,都重跑一次。现在的节奏大概是通关 3~5 小时。
4. 存档要能"长大"。
游戏前后改了四个大版本,矿从 8 种加到 27 种,又加了宝藏。老存档不能因为更新就作废,所以存档带版本号:读到老版本存档时,自动往还没挖过的泥土里补上新矿、补上宝藏。为此定了一条死规矩 ------ 矿石的编号就是存档里的格子编码,新矿只能往后追加,不能插队。
整个项目源码 src/ 下一共 11 个文件、不到 5000 行,另外配了离屏自测:不开窗口,模拟按键把各种场景跑一遍、断言结果、把画面存成图片检查。
五、最后
写到最后一颗熔岩之心被卖掉、通关画面弹出来的那一刻,我愣了一下。
高中那会儿,我好像一直都没能通关过。
如果你也玩过塞班上的熔岩矿车,或者只是想找个能安安静静玩几个小时的小游戏,欢迎下载试试。也欢迎在评论区聊聊:你当年在塞班上玩的是哪个游戏?
源码在这里,喜欢的话点个 Star:
👉 https://github.com/xiaoqiMikko/games
钻得越深,矿越值钱。
记得留够油回家。