首页 › games › 《OpenLoco》一个人,重写二十年前的火车

《OpenLoco》一个人,重写二十年前的火车

2004年,Chris Sawyer 发布了《Chris Sawyer's Locomotion》——就是那个一个人用汇编写出《过山车大亨》的传奇程序员。这款运输大亨游戏当年风光,后来却因为只支持老 Windows,被新一代玩家整批错过。二十年后,一群核心只有个位数的开源开发者,用 C++ 把它逐个函数重写了一遍,项目就叫 OpenLoco。对想入局游戏变现的个人开发者来说,这个仓库最值钱的不是游戏本身,而是它演示了三件事:怎么把一个上头的经济循环做成游戏、怎么用“开源逻辑+原版资产”绕开版权雷区、以及免费干活的人到底图什么。

仓库档案

项目 内容
仓库 OpenLoco/OpenLoco
Star 千星级(据仓库页面;本篇成稿时未能实时抓取,以仓库当前页面为准)
语言 C++
License 开源许可(据仓库页面,以仓库 LICENSE 文件为准)
作者 个人开发者发起,核心维护者个位数
状态 多年持续活跃维护、定期发版(据仓库页面)
运行条件 需自备原版《Locomotion》资源文件(Steam/GOG 有售,怀旧价)
在线试玩 无网页 Demo;本地编译或下载发行包,官网 openloco.io(据项目主页)

这游戏是什么

一句话说清:地图上有农场、森林、工厂和城市,货物堆在产地没人运,城镇嗷嗷待哺——你开一家运输公司,修铁路、铺公路、开航线,把货从 A 点运到 B 点,运费进兜,城镇长大,产业扩产,你的车队滚雪球。原版就是这么个游戏:大亨经营的算计 + 火车模型的浪漫,1900 年开档,一路运到磁悬浮时代。

它没有打打杀杀,核心循环简单到只有五步,但这五步咬合得极紧:

flowchart TD
    A[看地图找需求<br/>某城缺木材,某厂压货] --> B[修一段路建一座站<br/>花一笔真金白银]
    B --> C[车辆发车跑起来<br/>货物从A到B]
    C --> D[运费进账<br/>城镇和产业跟着增长]
    D --> E[新需求冒出来<br/>摊子越铺越大]
    E --> B
    F[瓶颈出现<br/>拥堵、亏线、贷款压力] --> B
    D --> G[年份推进/公司估值达标<br/>下一张地图重开]

玩家每回合做的事只有“修”和“调”:修下一段路,调一下线路;系统反馈的是账面数字的变化和地图上肉眼可见的繁荣。驱动“再来一局”的是那个经典大亨钩子——这张图我能运得更便宜、更快、更漂亮吗。

为什么上头

把这套循环拆开,六根杠杆根根清晰,而且每一根都能搬到你的小游戏里:

一、即时反馈写在收入曲线上。 修一段路,下一秒收入报表就变颜色。大亨类游戏最爽的瞬间不是过关,是看到自己的每一笔投资都立刻变成一条上扬的线。反馈延迟以秒计,这是放置类和模拟经营类共同的上头底座。

二、雪球进度感。 钱生钱,城生货:运得越多城镇越大,城镇越大货越多,货越多你的车队越忙。这是一个自我强化的指数系统,再叠加“蒸汽—柴油—电力—高速”的时代科技树,玩家永远有下一个盼头。个人开发者照抄这个结构就行:让玩家的产出成为下一轮产出的原料。

三、网络效应的乐高感。 路网每接入一个新节点,全网效率都会涨——你的每一步都让之前的投资增值。玩家大脑对“复利”毫无抵抗力,这比单点升级爽一个量级。做连线类、合并类小游戏时,“节点之间互相加成”是这个杠杆的低成本实现。

四、优化强迫症。 一条亏钱的支线像鞋里的石子:不修难受,修好浑身舒坦。调度问题本质是给成年人出的解谜题,而这类“自己给自己出的题”几乎没有内容消耗——你不用天天做新关卡,玩家会自己折磨自己。

五、零压力时间切片。 没有敌人推塔,没有体力限制,失败只是“赚得慢”。副业开发者要特别注意这一条:能被上班族在通勤路上开一局、合上屏幕也不焦虑的游戏,留存天然就长。

六、数字攀比。 原版的公司估值排行榜、开源社区里晒“最大路网”“最高分红”的帖子,本质都是社交攀比的低配实现。单机游戏想补这根杠杆,成本最低的做法是排行榜加截图分享。

技术拆解

OpenLoco 的技术故事比游戏本身更硬核,因为它的本质是逆向工程重写:原版闭源,没有源码,团队对着反汇编出来的 x86 汇编,一个函数一个函数翻成现代 C++,目标是行为级复现——同一个存档,原版和新版跑出同样的结果。这套做法对你有三层直接价值:

一、资产与逻辑分离,是同人复刻的法律安全垫。 OpenLoco 的仓库里没有原版美术和音效,玩家必须自备原版资源文件。这一步棋同时解决了版权风险和商业道德问题:代码开源免费,资产花钱买原作——原作厂商不恨你,老玩家买原版还推动了原作销量。想做怀旧向、IP 同人向小游戏的人,这个结构直接照抄。

二、数据驱动的内容管线,现成可抄。 车辆、货物、产业、建筑在项目里都以数据对象的形式定义,新增一辆火车是加一份配置而不是改引擎。你的小游戏如果想长期运营,第一周就该把数值表和内容做成数据文件——这条纪律在 FreeKill、2048 这些仓库里我们反复见过,OpenLoco 是它的重型示范。

三、存档兼容与跨平台,是老游戏复活的通用手术。 兼容原版存档格式、从 Windows-only 走向三平台构建,这两件事覆盖了“老游戏移植外包”市场九成的技术难点。如果你以后想接这类私活,这个仓库就是免费的教科书。

可复用组件清单:等距视角渲染的组织方式、经济系统的 tick 推进、多车辆路径调度、公司财务(贷款/现金流/估值)模型——任何一款“调度+经营”小游戏,这四件套直接决定成色。

变现观察

先说结论:这个仓库本身不直接赚钱,它赚的是钱以外的三样东西。 项目接受社区赞助(据其项目主页的赞助入口),但开发者投入的时间远超赞助回报——这是公益型开源的常态,别把它当商业模式。

真正值得你抄的是它周边跑通的三条钱路:

一、“免费逻辑+付费资产”导流模式。 开源复刻逼玩家去买原版,原版厂商躺赢,社区口碑白赚。同类的 OpenTTD 生态、以及大量老游戏复刻项目都验证过:厂商默许甚至乐见这种“数字文博”式复刻,因为它延续 IP 生命。想做老 IP 同人的个人开发者,这是唯一不会吃律师信的姿势。

二、复刻即简历。 逆向、移植、兼容层开发,是接单市场上明码标价的稀缺技能。开源复刻项目是这类能力最硬的公开证明,历史上不少复刻项目贡献者借此进入游戏行业或接到商业移植订单。对想靠游戏开发搞副业的人,一个千星复刻仓库的获客能力,可能超过十个平庸的上架游戏。

三、品类本身的买断制验证。 运输/基建模拟这个品类在 Steam 是被反复验证的买断制富矿——Mini Metro、Mini Motorways 这类极简运输游戏证明了“大亨循环缩到一屏”照样卖爆,商业版的 Transport Fever 系列则守住了硬核价位。开源版免费,恰恰说明这个品类的钱在内容深度和打磨度上,不在玩法独占上——玩法是公有的,执行是私有的,这句话本栏目说过很多次,这里再验证一遍。

给我的灵感

点子一:一屏运输,关卡制微缩版。 把大亨循环压进手机竖屏:每关一张小地图、一笔预算、三个目标(运量/时长/盈利率),过关解锁新车型。MVP 就是“等距小地图+三种车+三十个关卡数据表”,1-2 周量级。变现走小游戏平台广告+去广告内购,对标 Mini Metro 在移动端跑通的买断+关卡模式。

点子二:换皮运输,一套代码吃三个赛道。 核心循环不动(接单—调度—扩容),皮一换就是三个产品:快递驿站、婚车公司、末日车队。每次换皮就是一次上架和一波买量测试,皮肤包顺便当内购卖。运输循环的好处是题材脱敏、全年龄通吃,这是它比“倒爷”“黑帮”类经济游戏更适合上平台的地方。

点子三:单模块复刻,接私活的敲门砖。 不必学 OpenLoco 重写整个游戏——挑一个你热爱的老游戏,只复刻它最迷人的一个系统:地图生成器、调度 AI 或存档格式解析器,开源发布并写清实现笔记。2-4 周一个模块,攒三个就是一份别人给不出的作品集,下游接老游戏移植、怀旧小游戏定制的单子,这条路比裸投简历宽得多。

上手

[!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学通信知识星球海报-扫码加入