跳转到内容

OpenTTD

来自 Arch Linux 中文维基
注意:本页面不是英文页面的翻译。请勿不加选择地将英文页面同步至本页面。

OpenTTD 是对受欢迎的 DOS 游戏 Transport Tycoon Deluxe 的自由重新实现。在此游戏里,您是一家运输公司的所有者,您必须长年累月地管理公司以获取利润。

OpenTTD 主窗口,版本:14.1,字体:Noto Sans CJK SC。

安装[编辑 | 编辑源代码]

官方版 OpenTTD[编辑 | 编辑源代码]

游戏本体[编辑 | 编辑源代码]

安装 openttd 包。

也可以安装最新 Git 构建:openttd-gitAUR

基础图形与音效[编辑 | 编辑源代码]

如果您没有原版游戏,openttd-opengfxopenttd-opensfx 包含自由的图形和声音。

基础音乐[编辑 | 编辑源代码]

您可以安装自由的 OpenMSX 音乐包,它可以在游戏中下载,也可以安装 openttd-openmsx(查看 AUR 上的讨论获取有关打包信息)。您可以检查 Fluidsynth#独立模式,以确保 Fluidsynth 能正常工作。安装一个 Soundfont 以确保音乐正常播放,参见#音乐不播放

社交插件[编辑 | 编辑源代码]

OpenTTD 可以加载插件,与 Steam、Discord 等社交平台集成。

要实现这种集成,必须下载特定平台的插件并将其存储在 social_integration 文件夹中。

请参阅 OpenTTD 网站,查看可用插件。

AUR 上已有 Discord 插件的打包:openttd-discord-social-binAUR

Transport Tycoon Deluxe 原始数据(可选)[编辑 | 编辑源代码]

OpenTTD 可以使用原始 Windows/DOS 版本的 Transport Tycoon Deluxe 的非自由图形和声音数据。

注意:虽然您可以从 DOS 或 Windows 版本的游戏中转存文件,但只有 Windows 版本才提供原始音乐。

您可以从游戏光盘、现有安装文件中获取这些文件,也可以从 Abandonia 免费提供的游戏安装存档中获取。

要使用原始图形和音效,请将以下文件复制到 /usr/share/openttd/data/~/.local/share/openttd/baseset

  • Windows : trg1r.grf, trgcr.grf, trghr.grf, trgir.grf, trgtr.grf
  • DOS : TRG1.GRF, TRGC.GRF, TRGH.GRF, TRGI.GRF, TRGT.GRF
  • 来自任意版本的 sample.cat

如果是原始配乐,请将原始 TTD 游戏目录下 gm 文件夹中的文件复制到 ~/.local/share/openttd/gm 中。

openttd-ttdwinAUR 大致实现了安装原始游戏文件的过程

注意:TTD 数据文件受版权保护,不包括在 openttd-ttdwinAUR 内。

含补丁的 OpenTTD[编辑 | 编辑源代码]

注意:以下补丁都不是官方维护的。它们的游戏体验与官方版 OpenTTD 不完全一致(如缺少翻译等)。

JGRPP[编辑 | 编辑源代码]

关于 JGRPP 的详细信息,参见 OpenTTD JGRPP 中文百科英文原版)。

OpenTTD 最有名的补丁莫过于 JGRPP 了,安装 openttd-jgrppAUR 软件包。

n-ice[编辑 | 编辑源代码]

citymania 客户端的分支版,针对 n-ice 和 btpro 社区进行了修改。

要安装此补丁,安装 openttd-n-iceAUR

注意:此 AUR 包已严重过时,建议自行编译

教程[编辑 | 编辑源代码]

游戏一开始可能会让人一头雾水。中文维基英文维基上有很好的教程

对于游戏内的教程,我们已经实现了一个游戏脚本。 只需使用游戏内的在线查找拓展包中下载 Beginner Tutorial -Game Script,然后加载 Beginner Tutorial 场景即可。

配置[编辑 | 编辑源代码]

关于 OpenTTD 目录结构,参见 Github 上的说明文档

游戏配置[编辑 | 编辑源代码]

OpenTTD 主配置文件位于 ~/.openttd/openttd.cfg~/.config/openttd/openttd.cfg,首次启动时会自动创建。每次退出 OpenTTD 时,它都会将任何更改写入配置文件。

配置文件中的各种设置可通过主菜单上的按钮进行编辑。有以下按钮:

  • 游戏选项
  • 设置
  • AI 设置
  • NewGRF 设置
  • 游戏脚本设置

Wayland 支持[编辑 | 编辑源代码]

提示:欲为 JGRPP 等补丁版添加 Wayland 支持,将下述方法略作修改即可。

欲添加 Wayland 支持,复制 /usr/share/applications/openttd.desktop$XDG_DATA_HOME/applications/(例如 ~/.local/share/applications/),并编辑如下一行:

~/.local/share/applications/openttd.desktop
...
Exec=env SDL_VIDEODRIVER=wayland openttd
...

多人游戏[编辑 | 编辑源代码]

客户端[编辑 | 编辑源代码]

玩家可以使用多人游戏菜单加入服务器。在多人游戏中,禁用快进、玩家暂停和作弊功能。

服务器的所有问题都应由服务器管理员来解决,通常不是 bug,只是服务器配置错误。

服务器[编辑 | 编辑源代码]

您可以通过 -D 参数启动服务器,例如

# openttd -D 0.0.0.0:3979

这将启动服务器并接受附加命令。配置会生成并存储在 ~/.config/openttd/openttd.cfg 中,每次服务器启动时都会读取。在服务器运行时,可以通过直接向服务器发送命令来覆盖配置。某些设置无法在游戏中更改。

您可以创建 Systemd 服务在后台运行,或者使用 GNU Screen 之类的软件。

要公开您的服务器,您需要一个面向公众的服务器,并正确设置所有端口转发。默认端口为 3979。

提示与技巧[编辑 | 编辑源代码]

高度图[编辑 | 编辑源代码]

OpenTTD 允许使用灰度图像作为高度图来生成地形图。terrain.party上有一个基于真实地球地形的出色的高度图生成器。此外,您也可以使用 botherAUR 应用程序,该程序可以下载更大的区域,并包含许多用于微调生成的高度图的选项(使用注意事项请参见 README)。您还可以使用 gimp 对高度图进行微调,其中的 "色阶 "和 "高斯模糊 "工具尤为实用。

沙盒选项[编辑 | 编辑源代码]

在当前游戏按下 Ctrl+Alt+C,即可显示沙盒选项

有关沙盒选项的详细信息,请访问官方 Wiki 页面(英文)

多人游戏[编辑 | 编辑源代码]

一定要为自己的公司设置一个密码,以免被他人接管。有些服务器会在闲置一段时间后重置你的密码。

如果轨道建造菜单未打开,则可使用 t 字母调出聊天。

您可以通过购买股票(如果服务器已启用)投资其他公司。随后,您可以出售股票以获取利润,或亏损。

问题解决[编辑 | 编辑源代码]

无法使用 Fcitx5[编辑 | 编辑源代码]

设置 SDL_IM_MODULE=fcitx 环境变量

参见 Fcitx5#X11

XWayland 下开启垂直同步后卡死[编辑 | 编辑源代码]

使 OpenTTD 在 Wayland 下运行可能会解决问题。

参见 Wayland#SDL

音乐不播放[编辑 | 编辑源代码]

游戏的配乐由 MIDI 文件组成。因此,您需要使用 MIDI 合成器来播放它们。

游戏会自动尝试使用 FluidSynthopenttd 的依赖),无需额外参数。如果出于某种原因您需要/想要使用其他合成器,OpenTTD 提供了 "extmidi" 音乐驱动程序,您可以通过配置命令来播放音乐。

警告:
  • 使用 extmidi 驱动程序时,游戏内的音量控制滑块将被禁用,无法用来更改音量。
  • 如果要运行的命令未包含在 $PATH 中,则必须指定绝对路径。
提示:一般情况下,如果您是首次使用 MIDI 合成器,您只需再安装一个 Soundfont 即可播放音乐,因为 fluidsynth 已作为依赖而被安装。

编辑 openttd.cfg 以配置 extmidi :

~/.config/openttd/openttd.cfg
[misc]
musicdriver = "extmidi:cmd=<command>"
注意:您还可以在启动游戏时配置 extmidi: openttd -m extmidi:cmd=<command>

但是,extmidi 不允许在命令中添加参数。解决办法是使用封装脚本:

~/.config/openttd/playmidi
#!/bin/bash

# 在这里,我们假定要使用 FluidSynth 合成器和声音字体  soundfont-fluid
# 在 soundfont-fluidPulseAudio 中提供。

trap "pkill fluidsynth" EXIT
fluidsynth -a pulseaudio -i /usr/share/soundfonts/FluidR3_GM2-2.sf2 $*

使之可执行

然后,您可以指定脚本的完整路径,作为与 extmidi 一起使用的命令:

~/.config/openttd/openttd.cfg
[misc]
musicdriver = "extmidi:cmd=/home/<user>/.config/openttd/playmidi"

参见[编辑 | 编辑源代码]