跳转到内容

Trainz/规则

来自维基教科书,开放的书籍,开放的世界
logo
Trainz 培训生基础

Trainz 简介 - 每页说明
TOC | 开始乐趣 | AM&C | 创建 | 书中参考资料 ORP 参考:  • 索引 • 容器 • 类型 • 标签 | 附录  • 版本
 词汇表
 HKeys-CM
 HKeys-DVR
 HKeys-SUR
 HKeys-WIN
 鼠标使用
 符号


司机指令

[编辑 | 编辑源代码]
另请参见:符号的 规则,以及词汇表的 规则 和主要主题:司机指令场景编辑器.
司机指令是一个规则类别,很可能首先在 司机场景 中看到,封装在一个带有图标的小图形矩形中,这些图标代表(替代)Trainz 可扩展 GameScript 语言中的一个可重入脚本程序。大多数 AI 司机指令都很简单易懂。前往那个轨道标记,导航到那个企业,在那里装载或卸载,等待某个事件,以及类似的任务。我们希望在 司机指令 中更深入地涵盖这些内容,但在这里提到它们是为了让新 Trainz 用户意识到它们与场景程序流程中其他地方出现的场景规则是相同的技术。最大的区别是司机指令是排队的,这意味着它们的执行是线性的 - 第一条规则必须执行完毕才能让下一条规则有机会控制;下一条规则必须完成才能让第三条规则上场。“排队等待”,就像棒球一样,意味着您还无法影响游戏玩法。一个人必须上场才能轮到您!

规则概述

[编辑 | 编辑源代码]

许多场景规则(正式名称),与较小的“司机指令”列表的不同之处在于,它们接收输入或指令(包括动态定义的运行时评估值),因此它们可以与 Trainz 世界(地图 + 场景创建)的虚拟现实进行交互。它们提供或使用内置的软件“挂钩”(变量和对服务的可重入调用),允许在场景中进行动态操作和交互式行为。一个测试条件的规则是一个“门卫” - 一个需要触发器或 TRUE 条件才能满足的模块,在任何缩进(在它之下(之后))的规则无法控制之前,必须满足触发器报告的 True 情况,然后才能让缩进规则控制,并且只有在触发器报告 True 情况之后,才能让缩进规则控制。

在幕后,框架、任务、测试和评分由 场景编写者 CC 定义的交互式规则处理。在场景的“初始化部分”中,早些时候定义了一个可用的“司机指令”列表(这些指令使人类可以向 AI 司机提供司机指令规则,或将选择限制在特定的几个指令),因此在驾驶不同的场景时会发生变化。

(其他初始化示例:场景开始时间 [晚上、白天、小时]、天气和可变性、脱轨 [从容易到现实] 和司机模式规范 [用户选择,或固定驾驶室模式或 DCC 模拟]
各种规则代表程序流控制、状态报告和测试组件,以及显示输出到编写场景的 CC。DLS 上有超过 1,000 种不同类型的规则。启动内容管理器,自己看看。
  • 对场景编写者来说,脚本程序是构建块,并具有允许与虚拟世界地图元素进行动态数字接口的“挂钩”。
     • 场景规则通常允许定义和初始化其他参数的值,这些参数连接到运行时软件。
     • 对 规则编写者 CC 来说,规则是一个独立的资产,编写用于满足一般需求或允许在场景游戏玩法中动态执行某项任务。这些规则通常与 CC 或其合作者制作的特定资产配合使用效果更佳。它们可以在 CM 中按类别排序。
  • 脚本程序可以看作是一个子程序,在每个 实例 中可以接受各种定义或关联,这些定义或关联是场景运行时软件需要的。这些代码定义的挂钩是将路线或列车编组元素与状态测试或轨道值(例如动态游戏玩法中的得分)相关联所必需的。当在测量员中创建司机场景时,以及在其 场景编辑器 API 中,会指定规则及其参数的包含。
     • 司机指令规则是在 AI 司机 的指令队列(列表)中放置的指令,按顺序执行。

 

规则编辑
许多规则在“编辑”时(编程、定义、初始化或指定会更准确,但“编辑”是 场景编辑器 按钮的标签)会打开一个条目小程序,在添加到场景序列中或在场景序列中遇到时。编辑规则是场景设计者/编辑者 CC 用于定义要传递到 司机 GUI 模块 中的运行时接口的参数的方法,可能是为了直接更改 Trainz 地图 中的某些元素(例如,道岔、信号状态) - 或通过设置一个软件状态检查的关联“变量” 从地图渲染游戏软件中获取,或者是为了保持一个计数器样式的得分。
华夏公益教科书