本页目录

Simutrans 开源运输模拟游戏

simutrans · simutrans/simutrans

Simutrans 是一款开源运输模拟游戏,玩家扮演运输公司经营者,通过铁路、公路、船舶和航空运送旅客、邮件与货物,并把城区、城市、公共建筑、工业设施和旅游景点连接成运输网络。项目以 C++ 编写,README 提供使用 make、MSVC、CMake 的...

策略 模拟经营 SDL 自研引擎 C++ 存档系统 游戏状态管理 网络联机 UI 系统 中级
★ Stars 106 Forks 31 License 未明确 更新 2026-11-08

国内开发环境适配

Windows
官方声明支持
Linux
官方声明支持
macOS
官方声明支持
引擎 / 框架:SDL 暂无中文教程标记 未标记站长实测
README 未提供国内镜像或加速说明;SVN 主仓库与 GitHub 镜像的访问速度、vcpkg/Homebrew 依赖拉取可能受网络影响,具体待核验。

中文项目介绍

Simutrans 是一款免费开源(freeware and open-source)的运输模拟游戏。在游戏中,玩家的目标是建立一家成功的运输公司:用铁路、公路、船舶乃至航空方式运送旅客、邮件与货物,并通过搭建运输网络,把城区、城市、公共建筑、工业设施和旅游景点连接起来。

项目以 C++ 编写,README 中给出了从获取源码、准备依赖库到编译、跨平台构建的完整说明,也列出了代码、翻译、美术与缺陷反馈等参与方式。

技术架构分析

技术要点与依赖库

Simutrans 的构建依赖一组第三方库,README 用表格区分了必需与可选:

  • 必需:zlib(基础压缩支持)、bzip2(替代压缩方案,可与 zstd 二选一)、libpng(图像处理)、libfreetype(TrueType 字体支持)
  • 平台相关:libSDL2 在 Linux 与 Mac 上为必需,在 Windows 上可选但推荐,作为图形后端
  • 可选:libzstd(压缩更快但存档更大)、libminiupnpc(Easy Server 选项)、libfluidsynth(Linux 推荐、Mac 暂时使用的 MIDI 播放)、libSDL2_mixer(替代 MIDI 播放与声音系统)、libfontconfig(Linux/Mac 字体自动检测)

此外还需要 pkgconfig(Unix)或 vcpkg(MSVC)。README 提供了若干环境准备脚本:MSYS2 使用 tools/setup-mingw.sh,Ubuntu/Debian 使用 tools/setup-debian.sh,Mac 可通过 Homebrew 安装依赖。

如何构建

获取源码

README 说明主仓库为 SVN,可用 SVN 客户端检出 trunk;GitHub 上提供的是 SVN 仓库的镜像。若使用 git 而非 svn,需要手动设置游戏版本号才能加入联机游戏。

三种构建系统

项目提供 make、MSVC、CMake 三套构建方式,README 建议调试构建使用 make 或 MSVC,MacOS 与 Android 使用 CMake。

  • make:Linux 下先执行 autoconf,MacOS 下执行 autoreconf -ivf,然后 ./configure 与 make -j 4;MacOS 还需 make OSX/getversion。产物位于 build/default。
  • Microsoft Visual Studio:单一解决方案文件 simutrans.sln 包含四个项目——Simutrans-Main(共享的非后端相关文件)、Simutrans SDL2(首选后端)、Simutrans GDI(仅 Windows 后端)、Simutrans Server(无图形界面的服务器后端)。选择其一设为启动项目后编译。
  • CMake:命令行方式为 cmake -G "生成器" -B build 后 cmake --build build -j 4;MSVC 下需指定 Visual Studio 生成器、-A x64 与 vcpkg 工具链文件。产物位于 build/simutrans。

需要注意,编译只得到可执行文件,运行仍需一份 Simutrans 安装(含 pakset);可用 -use_workdir 指向已有安装目录。若要从 Linux 交叉编译到 Windows,README 指向 wiki 上的 Cross-Compiling Simutrans 页面。

补充说明

获取与下载

README 指明了几种获取途径:

  • Simutrans 官方网站
  • Steam 商店页面
  • Linux 发行版的包管理器(可通过 pkgs.org 检索)

此外还存在 nightly 版本,但 README 建议大多数人使用最近一次 stable 稳定版。

开源许可证与版权说明

许可证标识:未明确。源码、资源与依赖许可可能不同,请以官方仓库为准。本站仅做索引,不托管源码。

相似项目