Trainz/种类
| |||
|
|||
|
词汇表 |
HKeys-CM |
HKeys-DVR |
HKeys-SUR |
HKeys-WIN |
鼠标使用 |
符号 |
操作说明:点击正文中的脚注([2])或注释标签([note 12])将导航您(定位页面)到该条目的确切文本。 • 然后:点击那里的?符号,将返回您回到您开始阅读的地方。 |
除了本地安装数据库之外,定义Trainz资源的所有元素都包含在单个文件夹中——资源文件夹或资源源文件夹——当资源分别打开以进行编辑或构建时,都可以访问这两个文件夹——都涉及(可能多种类型的编辑)编辑和数据操作。
种类是这些资源源文件夹中特殊的父数据形式,并在文件夹的唯一config.txt文件中定义。Kind标签的合法值受到严格限制。[注释 1]每个配置都有一个种类,并且每个配置在本地定义的目录中都有一个存放其余部分的家。因此,资源源文件夹也可以归类为高于Trainz 容器的一般数据类型,并且每个都由其明确的唯一关键字指定类型进行控制,Kind标签值。
因此,每个Kind都表示在自定义的自包含Trainz资源定义层次结构中一组基本的枚举Trainz资源类型或资源种类数据类。其中的config.txt文件负责定义唯一KIND行的“资源类型”数据需求,并将这些由KIND需求定义为必要(或可选)的事物与TBS设置的其他强制性和可选资源数据定义进行聚合——实际上,配置的任务是定义父KIND,将其他TrainzBaseSpec定义行需要的事物与父KIND行(“种类”名称)值所需的定义行合并,以创建种类类型的资源,方法是在TBS中设置“种类“KIND枚举类型名称””行。
将该计算机科学翻译成英语:每个“Kind标签”都设置了资源是什么以及其资源文件夹在提交到Trainz内容管理器进行提交(现在,由于TANE内容管理器出现,奇怪地称为提交)或验证(错误检查和测试,提交(或提交)资源到数据库之前的步骤。也包括在上传到DLS之前。每个种类都与源config.txt文件配对,通常作为其最前面几行之一[注释 2]。一切都是TAG-DATA对的一部分。有些是TAG-容器,很多是TAG-值,但所有配置数据都是配对的。容器中的子容器遵循相同的规则。即使是数组数据元素——字符串、多个值、多种可能性(类别时代和类别区域)都在一行上以对关系定义。因此,容器是关键字标签,这意味着期望“{”和“}”,并根据标签名称定义的规则处理两者之间的数据。
了解KIND的作用可以说仅次于理解TrainzBaseSpec和包含这两者的普遍容器config.txt文件的作用。在这三种情况下,所有这三种都是用户为了修复或创建资源而需要掌握的最重要的数据元素。幸运的是,每种Trainz资源都有一个唯一的KIND,因此可以根据需要或系统地逐个掌握这些KIND,同样,可以逐个理解每个容器。
事实上,所有这三个元素都紧密地相互关联,因为它们在资源根文件夹中一起工作,该文件夹必须包含config,而config又“必须”包含TBS中的Kind标签以及其他强制性TBS支持定义,例如kuid和用户名,并且根据TBS行中定义和选择的KIND,“必须”因此包含该Kind标签以及所有支持定义所需的所有定义……包括必要的容器和子容器。
在较小程度上,KIND和类别-类标签一起告诉内容管理器软件在资源的config.txt文件中哪些其他关键字是必要的、可选的或非法的,并且后者具有定义的目的,即将该类别-类成员(正在定义的资源)添加到各种排序标准的组合中,这些标准对CM的排序和选择操作很有用。
|
Trainz种类是定义用于描述在单个标识KUID下的资源类型的最小数据结构的上层容器。
Trainz模拟器中的KIND定义了与类别-类一起设置的属性,这些属性设置了必要的信息字段,以使资源模型正确渲染。在非常真实的意义上,KIND数据结构(对与模型渲染和运行时模拟需求相关的不同类型相关数据进行分组)是Trainz中的第一级容器(尽管名称特殊,为“KIND”),并且几乎总是需要其他容器级数据组在ini文件中与之一起使用。这些是枚举的支持容器和标签,Kind标签和类别-类的枚举类型组合使用这些容器和标签来确定必须为这种资源定义哪些其他数据元素,这些元素可以被认为是子种类,因为所有类似的资源都需要定义相同的数据元素。
现在所有容器和类似容器的结构都位于 config.txt 文件中,但区别仅仅在于“容器定义类型”通常在几个不同的 KIND 定义的资产中具有作用域(适用性),并表示一个共享属性(一个特征,例如转向架),而每个 KIND 对该类资产都是唯一的。KIND 引擎和 KIND 货车都具有转向架(卡车上的车轮),因此它们各自的 ini 文件中都包含一个转向架容器。
|
下面的列表截至页面撰写时是完整的,并且定期更新。请参阅 Trainz-Wiki KIND TrainzBaseSpec 以获取可能的更新。(那里许多下面的链接连接到 N3V TrainzOnline Wiki,并且这些链接与 Wikibook 部分链接之间存在细微的色彩差异。截至 2014 年 8 月下旬,那些仍然是红链接的链接尚未在 N3V Wiki 中正式定义,尽管该分类很可能已在某个 内容创建者 的论坛中传播。
所有 Trainz 定义的数据(内容)都具有三个必需元素:一个 config.txt 文件 用于组织数据,一个标识,即 kuid(仅用户名对你没有帮助,但是可以创建一个合法的资产而无需名称!)以及最后一个,一个合法定义的 kind 标签。kind 负责指挥,是管弦乐队的指挥,是排长或 CEO 发出指示——为处理后的所有内容设置要求。简而言之,kind 的值,一个小型、精选的、严格定义的仅限成员的组——告诉 Trainz 软件在虚拟世界中要呈现和显示什么以及如何(或在何处)找到使资产的这些部分在该 config.txt 文件中链接在一起的其他必要部分。
以下每个子类都被认为具有 TrainzBaseSpec 作为其数据“父类”。[注 4] 下面列出的一些 kind,那些带下划线的 kind,是早于 Trainz 数据模型 在 TS2009 版本(即 2008 年后期以来)中更改的遗留 kind,自那时起 N3V 程序员仅施加了渐进(增量)更改。
目前可以在 内容创建者指南 部分的 N3V Trainz Wiki TrainzOnline 网站此处 中找到基于这些遗留 kind 修复资产的详细信息,其中包含 此处遗留 KIND 的示例。强烈建议 Trainz 下载站 的任何用户或任何考虑创建内容的人员仔细阅读 CCG。从了解旧内容是如何定义的背景历史中获得的见解,然后可以与 TrainzOnline 对相同数据类型的当前覆盖范围进行对比和比较,因为通常这种过去与现在的对比可以为修复、更改和自定义资产提供宝贵的见解。更重要的是,CCG 中的写作是专业制作的,并且更具赘述性——它通常会让你洞悉如果更改此或彼将产生的扩展影响,而 Trainz Wiki 则无法提供这些信息。TrainzOnline 上提供的 CCG 是 TC1&2/TC3 版本——几个印刷小册子中最后出版的一个,这些小册子可以追溯到 1999 年的 Trainz;TC3 CCG 包含来自 TRS2004/TRS2006 和 UTC 数据模型的已更改的 Enginespecs 机车资产,需要正确更新。
- 本节提供指向 一组示例子页面 的链接,展示常见资产的演变
- 到从 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他此类版本中进行 kind 配置,在这些版本中,活动 数据模型 已发生变化,并且可以使用 文件比较软件 查看差异。
- 最重要的 KIND 是什么?
答案取决于您目前正在处理哪种资产和资产子类型。在人类的思维过程中,机车和货车都是 Kind“货车”,但在 Trainz 配置中是不同的 KIND 声明,并且柴油动力机车和蒸汽机车都需要定义不同的数据参数来模拟资产;配置中的这种差异来自 kind 的定义,并且强制性的 类别-分类标签 仅在 CM 和 勘测员 选择和排序过滤器中具有作用域。
这些通常比较简单,因此可以介绍 KIND 的用法,
本Trainz/种类章节是一个存根占位符,是本书此章节不完整的一个概述或标记。您可以通过Trainz项目扩展它,以更全面地讨论该主题。 需要完成的工作: 本节提供指向一组子页面的链接,这些子页面显示了从 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他数据模型发生变化的版本中,常见资产种类配置的演变过程,并且可以使用比较软件查看差异。 |
本Trainz/种类章节是一个存根占位符,是本书此章节不完整的一个概述或标记。您可以通过Trainz项目扩展它,以更全面地讨论该主题。 需要完成的工作: 本节提供指向一组子页面的链接,这些子页面显示了从 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他数据模型发生变化的版本中,常见资产种类配置的演变过程,并且可以使用比较软件查看差异。 |
本Trainz/种类章节是一个存根占位符,是本书此章节不完整的一个概述或标记。您可以通过Trainz项目扩展它,以更全面地讨论该主题。 需要完成的工作: 本节提供指向一组示例子页面的链接,这些子页面显示了从 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他数据模型发生变化的版本中,常见资产种类配置的演变过程,并且可以使用比较软件查看差异。 |
本Trainz/种类章节是一个存根占位符,是本书此章节不完整的一个概述或标记。您可以通过Trainz项目扩展它,以更全面地讨论该主题。 需要完成的工作: 本节提供指向一组子页面的链接,这些子页面显示了从 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他数据模型发生变化的版本中,常见资产种类配置的演变过程,并且可以使用比较软件查看差异。 |
- ↑ 种类和许多其他 Trainz 数据定义,尽管范围广泛,但都是枚举数据类型……这意味着它们必须是允许单词列表中的<值>。其他都不适用!
- ↑ 配置文件中所有标签和容器的位置无关紧要,除了数据结构在引号、方括号和圆括号中正确的嵌套关系。
- ↑ 虽然 N3V 程序员没有正式承认(我在任何地方都没有看到),但LOD 文件[1](例如'meshname.LM.txt' 和文件规范.texture.txt)文件可以被认为是ini 文件类型或包含文件类型,实际上扩展了配置文件中内联定义。(texture.txt 文件 + LM.txt 文件) 每个文件不仅包含路径信息,还包含必要的如何实现数据指令行,并且与 config.txt 文件行一样,必须采用正确的格式,否则资产将生成错误。
• config.txt 文件和此类包含文件之间的主要区别在于,它们并不严格遵循 Trainz关键字—<值>对在一行格式上,而是经常使用等号作为其语法的一部分。 - ↑ 注意:此列表在 N3V TrainzOnline Wiki 上是“维基化”的,这意味着在“KIND”一词之后第一个字母已大写,而 config.txt 文件中的实际数据标签名称则是全部小写文本。该维基还对相当多的术语使用了双引号,我们将免除您在此处体验这种做法。
- ↑ '种类编组' 通常不会直接显示,它只存在于菜单和内容管理器列表中。
本参考页面改编自TrainzOnline Wiki,根据CC-BY-SA 3.0 许可证。与同一主题的源页面相比,本页面可能会包含更多文本解释、阐述、历史和/或示例。 TrainzOnline Wiki 在很大程度上由程序员或知识渊博的内容创建者维护,并且可能包含有关当前trainz-build 代码标准的更新信息,这些标准随着软件功能的添加而发生变化。 |