Difference between revisions of "L4D2 Campaign Add-on Tutorial:zh-cn"

From Valve Developer Community
Jump to: navigation, search
(汉化完成。如有问题欢迎联系。有能力可以自行修正。)
Line 1: Line 1:
 
{{otherlang2
 
{{otherlang2
 +
|title=L4D2自制战役打包教程
 
|en=L4D2 Campaign Add-on Tutorial
 
|en=L4D2 Campaign Add-on Tutorial
 
|ru=L4D2 Campaign Add-on Tutorial:ru
 
|ru=L4D2 Campaign Add-on Tutorial:ru

Revision as of 16:41, 30 May 2018

English Русский

本简体中文页面由 Gloria 汉化。

在求生之路2代中打包你的自定义战役一共分为六个基本步骤:

  1. 创建Add-on文件夹与对应子文件夹。
  2. 创建好各类游戏资源并放入对应的子文件夹。
  3. 创建好数据描述文件(addoninfo.txt等)并放如对应的子文件夹。
  4. 将Add-on的所有内容打包成 .VPK 文件。
  5. 完整测试VPK文件,并修复出现的问题。
  6. 创建一个玩家可以从中下载你的地图的主页。

安装开发工具

为了创作求生之路2的三方内容,你需要安装求生之路2开发工具(Left 4 Dead 2 Authoring Tools)。它提供了用于创作游戏内容的各类程序与工具。一般来说,可以使用 Hammer 程序创建关卡,使用其它工具创建自定义纹理模型

如何创建各类游戏资源不在这个教程的介绍范围之内。你可以进入L4D关卡制作基础教程找到相关的内容。介于这篇教程的重点在于讲解如何将所有地图内容打包到VPK中,因此当你开始学习这篇教程之前,应该已经熟悉了如何创建那些游戏内容。

开发工具附带了一个叫做 Dead Line 的战役示例,包含了各类源文件示例。

创建 Add-on 文件夹

首先,在你的求生之路2代游戏安装路径下找到 'addons' 文件夹。对于大多数人来说,应该是类似下面的路径:

C:\Program Files\Steam\steamapps\common\left 4 dead 2\left4dead2\addons
注意:
如果你的文件夹是带连字符的,例如“add-ons”,确认它如果是空的就可以直接删除。正确的名称应该是不带连字符的“addons”。

注意:你的L4D2开发工具安装后可能并没有 'addons' 文件夹

在 'addons' 中创建一个新的文件夹,并取个合适的名称。这将会是你最后创建并发布的VPK文件名称。全部使用小写字母、避免使用空格是一个好习惯。你还可以将游戏名写入标题,同其它标题加以区分,并可以考虑添加一个版本号。为了便于阅读,我们的示例中还是使用了“deadline”而非“l4d_deadline”。

...\left4dead2\addons\deadline2

概念上来说,这个文件夹就相当于地图的游戏根目录,它的目录结构是下面将要介绍的用于发布的 .VPK 文件的镜像。

创建基础游戏资源

你创建的这些内容实际上将会与其它内容一块附加到游戏中。对于一张战役图来说,最基本的地图资源是 .BSP 文件和 .NAV 文件。

在你的工程文件夹下新建一个 'maps' 文件夹:

...\left4dead2\addons\deadline2\maps

在这个 maps 文件夹中,将你地图的 .BSP 文件和 .NAV 文件复制到这里。在 Dead Line 教程示例中,有两组 bsp/nav 地图文件:

文件 描述
l4d_deadline01 精简的初始地图,包含合作、对抗
l4d_deadline02 最终的地图,包括合作、对抗、生存、清道夫

在一张单独的地图中制作多种游戏模式的优点在于可以节省空间,尽管增加了制作复杂度,这样做还是值得的。

你还可以创建并在地图中使用自定义的 .VTF 纹理文件、自定义的 .VMT 材质描述文件、以及自定义的 .MDL 模型文件。为了减小VPK包的体积,建议你尽可能多地使用游戏自带的纹理。

额外的 .VMT 与 .VTF 文件(见自定义材质教程)应该放在下面的文件夹中:

...\left4dead2\addons\deadline2\materials

文件与相关的模型文件(见导出模型编译模型)应该放在下面的文件夹中:

...\left4dead2\addons\deadline2\models
注意:
从“牺牲”更新开始,模型的 .vtx 文件在打包时将不再被重命名。例如,打包一个 .dx90.vtx 文件将不再被重命名成简单的 .vtx。所有原本是 .vtx 的官方文件都转换回了 .dx90.vtx 文件。在此更新之前发布的某些带自定义模型的战役中,模型在游戏中会变得不可见。在2010年10月的更新之前,包含了 .sw.vtx 与 .dx80.vtx 文件的战役在打包时会崩溃。

模型的材质文件放在下面的文件夹中:

...\left4dead2\addons\deadline2\materials\models

需要注意的是,L4D2将 /deadline2 文件夹的内容当作 /left4dead 的内容一样处理,因此如果你使用了 /materials 与 /models 下的任何纹理与模型,都应该在你的战役文件夹中添加一份。

创建次要游戏资源

次要的游戏资源例如海报与缩略图并不是必要的,但它们能让你的战役更加出彩。(再说了,海报/概念图恐怕是你头一项制作的东西,不是吗?)如果还没有制作的话,新建一个 materials 文件夹,并在其中创建一个 vgui 文件夹:

...\left4dead2\addons\deadline2\materials\vgui

战役海报

在 vgui 文件夹下需要放置两个 .VTF 文件,以及两个引用它们的 .VMT 文件:

LoadingScreen_DeadLine2.vtf 
这是一张在你的战役加载界面出现的海报图片。标准的尺寸为1024×1024像素,并带有表示透明度的Alpha通道。
OutroTitle_DeadLine2.vtf 
这是一张在关卡最后的鸣谢/数据统计界面出现的标题图片。标准的尺寸为1024×256像素。你创作的图片应该适合显示在黑色背景下,并且让上方滚动的白色文字易于阅读。

地图缩略预览图

除了上述两张图片之外,你还要有展示战役每一关的缩略图。这些图片能让玩家在游戏大厅中选择地图“章节”时有可见的、更直观的提示。

为了添加缩略图,在 vgui 文件夹下新建一个 'maps' 文件夹:

...\left4dead2\addons\deadline2\materials\vgui\maps

在这个文件夹中,为每一张地图创建 VTF/VMT 缩略图。它们的尺寸均为256×128像素。在合适的情况下,也可以使用一张缩略图表示多个 .BSP 地图,例如既用于对抗又用于生存的一关。

用于界面元素的 .VMT 文件例如战役海报、缩略图等(也就是通常放在 material/vgui 文件夹中的那些文件)一般需要指定为“UnlitGeneric”材质。 见 Deadline vgui .VMT File 示例。

创建音频缓冲文件

如果在你的 add-on 中包含了自定义音频,你需要创建游戏引擎可以加载的音频缓冲文件。在VPK根目录下的“sound”文件夹放置你的音频文件,在L4D2运行时输入指令“snd_buildsoundcachefordirectory <path>”,其中path表示你放置音频的文件夹位置。例如,在 Deadline 示例中,音频文件放置在:

..\left4dead2\addons\deadline2\sound

使用下面的指令进行重建:

snd_buildsoundcachefordirectory "..\left4dead2\addons\deadline2"

这条指令将会在你的音频文件夹中创建一个 sound.cache 文件,在打包VPK时可以添加进去。

创建元数据文件

还需要一些文件才能保证你的附件能够在游戏中正常工作。

addoninfo.txt

首先是 addoninfo.txt 文件。该文件让你的内容能被游戏识别。它应该放在VPK的根目录中,也就是上面最开始创建的文件夹:

...\left4dead2\addons\deadline2\addoninfo.txt

这个文件用在游戏中的Add-ons界面。文件简要地描述了 add-on 中提供了什么内容。示例文件 Deadline AddonInfo File 中包含了完整的注释与使用说明,可以直接拿来作为你的 add-on 模板。

addonimage.jpg

另一个需要在根目录下创建的是图片文件 addonimage.jpg。它将作为你的 add-on 的图标显示在游戏的用户界面上,同时显示的还有 addoninfo.txt 中列出的内容。部分JPG格式可能会失效,这与创建它们的软件有关。如果遇到了JPG失效的头疼头疼问题,不妨使用 VTFEdit 来导出。

Mission 文件

其次需要的文件是战役文件。 它描述了战役的结构与内容,并且会被用于战役选择的用户界面、 匹配系统、以及游戏服务器。它应当是一个有独有命名的 .TXT 文件。将它放置在 'missions' 文件夹中,这个文件夹也是你需要创建的:

...\left4dead2\addons\deadline2\missions\deadline2.txt

示例中的 Deadline Mission File 文件包含了完整的注释与使用说明,可以直接拿来作为你的 mission 文件模板。

注意:
将 mission.txt(或是其它任何txt文件)添加到 missions 文件夹都会让VPK被标记为战役而不是附加内容包。尚不清楚有没有其它影响VPK标记类型的因素。VPK中特定的几组文件并不会影响到其它战役。这些内容包括但不仅限于:独有的与替换的材质/纹理、模型、音频、音频缓冲、粒子、以及粒子效果。目前,脚本文件(位于 scripts 文件夹中)以及资源文件仍然会被其他的 add-on 覆盖,不论打包成什么类型的VPK。如果出现了命名重复,将与官方或是其它 add-on 中的战役产生冲突

测试VPK

目前为止,你的 add-on 应该已经功能完备了。可以进入游戏,打开Add-ons菜单来启用你的 add-on。如果在控制台中输入 path,你将会在底部附近看到你的 add-on 的根目录。这意味着游戏如果在标准的游戏目录下找不到对应资源时,将会进入你的 add-on 文件夹中搜索。在其它电脑中完整运行你的地图来检查有无错误,例如崩溃或是游戏资源丢失。你可以继续调整你的内容,直到准备好了面对那神奇的一刻:向外界发布。

打包与发布

剩余的最后一步就是将你的 add-on 文件夹打包成用于发布的 .VPK 文件。

.VPK 文件的作用是为了方便其他人只用一个文件就能安装好你的附加内容。玩家只需要将 .VPK 放在自己的 add-on 文件夹下就行了。或者,假如他们像大多数非地图作者的玩家一样,没有将 .VPK 扩展名关联到其他的程序上,就可以通过双击VPK来自动安装到正确的位置。

每个 .VPK 文件都有一个独一无二的ID,来确保所有人运行的是相同的内容。如果你的元数据文件配置正确,有必要的情况下,游戏将会提示玩家下载新的版本。

找到这个文件夹:

C:\Program Files\Steam\steamapps\common\left 4 dead 2\bin\

找到 vpk.exe 打包工具并在桌面上创建快捷方式。拖动你的 add-on 根文件夹到快捷方式上运行。该工具将会在你原有文件夹的位置创建一个 .VPK 文件。默认情况下并不会包含源文件例如 .VMF、.TGA、.SMD、.QC 等,并且会移除可执行二进制文件。移除文件夹版的 add-on(或是放到安全的位置)以便单独测试 .VPK 文件。 .VPK 文件应该能像文件夹版的一样正常工作。如果工作正常的话,就算是准备好将它上传到你在元数据文件中描述的下载位置了。

Ideally, you'll want an add-on "homepage" that includes ratings, screenshots, and player comments.理想情况下,最好有一个包含了评分、截屏以及玩家评论的 add-on“主页” 。这里是一个简单的例子。

压缩

由于一张L4D2的完整战役可能会非常大,因此建议在上传到分享站点用于发布之前,最好将它们进行压缩。开源的Windows工具 7-zip 支持将文件压缩成 7z格式/LZMA算法,它的压缩率非常高。 .BSP 地图文件占了战役文件的大部分体积,而该文件可压缩性很好,因此一个vpk压缩后的体积可以减小到原来的25%甚至更低。例如一张由粉丝制作并打包的非官方地图 Death Aboard,压缩前的VPK大小为267MB,压缩成zip后大小为92MB,压缩成7z后大小仅为55MB。

最终测试

进行到这一步,你应该已经测试完成了下载功能。在本地服务器上建立一个游戏大厅,邀请你的朋友加入。他们接受邀请后,将会收到下载必要的 add-on 的提示,接着会在浏览器窗口中打开你的下载主页。他们应当能够在无需重启游戏的情况下,下载并安装好你的 add-on,然后加入你的游戏大厅。

另见