接下来我将为大家介绍如何为《狂热运输》创建和发布模组。本文仅讲解基本结构和发布机制,不涉及具体内容的修改或创建方法。 “staging_area”文件夹 在《狂热运输》中,所有模组修改都需在“staging_area”文件夹内进行,首先我们需要找到这个文件夹。 该文件夹的位置如下: steam/userdata/$USERID/446800/local/staging_area/ Linux系统:$HOME/.steam steam/位于子文件夹中。Steam位于我们的用户文件夹中 Windows系统:C: Program Files (x86) Steam 在本教程中,我将使用Unix/Linux系统中常见的"/"符号来分隔文件夹,只需将其替换为"\"即可,文件夹结构保持不变。【USERID】是一个游戏识别号码(每个人的都不同),总之我们需要在Steam的【userdata】文件夹中找到包含子文件夹【446800】的文件夹。 同样,一张截图能更好地说明问题。

Mod的基本结构 我们要制作的Mod(模组)结构包含3个部分: 1. 在“staging_area”文件夹内创建一个子文件夹,命名格式为 usuario_modname_x 其中,usuario替换为你的Steam用户名 modname为Mod名称(可自行选择) x为Mod版本号,建议从“1”开始 2. 在刚创建的文件夹内,再创建一个名为“res”的子文件夹 这里存放我们对游戏所做的所有修改或要添加的额外内容,需包含从res/开始的完整文件夹结构 游戏的res/文件夹位于 steam/SteamApps/common/Transport Fever/res “steam”是你安装Steam及其应用的位置(我的情况是在/opt/games)。请注意,如果在安装《狂热运输》时手动选择了其他文件夹而非默认文件夹,那么文件就会在那里。 3. 我们需要3个文件来定义模组的名称和规格,这将在下一章中进行说明。

mod.lua、strings.lua以及图标 现在我们来介绍定义模组的3个文件: 1.mod.lua .lua文件的主要目的是定义变量,也就是选项。 它们是纯文本文件,可以用任何文本编辑器创建,以下是一个可作为基础使用的简单示例: function data() return { info = { tags = { "Europe", "Misc", "Logo" }, minorVersion = 0, name = _("Name"), description = _("Descr"), authors = { { name = "Lagislazuli", role = "CREATOR", }, }, }, } end 【tags】变量定义了其他用户可以找到我们模组的类别,请使用【创意工坊】列表中已有的类别。 在【authors】项下,你可以列出一个或多个参与模组制作的作者以及他们的职能(角色)。name声明我们模组的名称,description则是更详细的描述。目前我们暂时保持这两项不变,不修改它们的值。 2° strings.lua 该文件并非必需,因为我们可以直接在mod.lua中定义其内容,但将其分开有一定优势,因此我会解释如何操作。 function data() return { es = { ["Name"] = "南方铁路标志", ["Descr"] = "添加一个公司标志,名称为【南方铁路】", }, de = { ["Name"] = "南方铁路公司标志", ["Descr"] = "添加一个带有西班牙文名称【南方铁路】的公司标志。", }, } end 这段代码的作用是替换我们之前在mod中定义的"Name"和"Descr"文本。根据用户在Steam或游戏中选择的语言来生成文本。为了简便,这里仅提供两种语言:西班牙语(es)和德语(de)。可以用同样的方式添加更多语言。 3. workshop_preview.jpg 在此处放置一张小图片作为我们Mod的标志,该图片将显示在创意工坊的下载页面上。图片必须为jpeg格式,且名称必须为:workshop_preview.jpg 上传Mod 现在我们已准备好将本地文件夹(staging_area)中的修改内容上传至Steam创意工坊。为此,启动游戏后,主菜单中会出现一个新按钮:

点击【发布修改】进入下一界面

选择我们想要上传的模组(它会以我们在strings.lua中设置的名称显示在列表中),如果一切无误,就会出现【发布】按钮(见红箭头)。 如果有信息缺失,该按钮会显示为灰色。 点击该按钮上传模组,过程需要一些时间,请耐心等待。 模组发布(创意工坊) 成功上传后,Steam界面会打开我们的模组/创意工坊页面。默认情况下,模组处于隐藏或私密模式,仅我们自己以及管理员或协作者可访问。





换一换 




















