Trainz/Kinds
| |||
|
|||
|
| 詞彙表 |
| HKeys-CM |
| HKeys-DVR |
| HKeys-SUR |
| HKeys-WIN |
| 滑鼠使用 |
| 符號 |
操作說明:點選文字主體中的腳註 ([2]) 或註釋標籤 ([note 12]) 將導航您(定位頁面)到條目的確切文字。 • 然後:點選那裡的?符號,將使您回到您開始閱讀的地方。 |
定義 Trainz 資源 的所有元素,除了 本地安裝 資料庫之外,都包含在單個資料夾中 - 資原始檔夾 或 資源原始檔夾 - 當資源分別開啟以進行編輯或構建時,兩者都可以訪問 - 兩種方法都涉及(可能許多種編輯)編輯和資料操作。
Kinds 是這些資源原始檔夾內的特殊父資料形式,並在資料夾的唯一 config.txt 檔案 內定義。Kind 標籤的合法值受到嚴格約束。[note 1] 每個配置都有一個 Kind,並且每個配置在包含本地定義以建立該資源的其他部分的目錄中都有一個家。因此,資源原始檔夾也可以分類為比 Trainz 容器 的一般資料型別高一級,並且每個都由它們明確的唯一關鍵字來指定型別,即Kind 標籤的值。
因此,每個 Kind 表示一組基本的 Trainz 資源型別或資源種類資料類別的基本集合,這些類別是在自定義的自包含 Trainz 資源定義層次結構中列舉的。內部的config.txt 檔案負責定義唯一的 KIND 行的 '資源型別' 資料需求,並將這些需求定義為 KIND 要求(或可選)所必需的,並與由 TBS 設定的其他強制性和可選資源資料定義進行聚合 - 事實上,配置負責定義 父 KIND,將這些由其他 TrainzBaseSpec 定義行所需的內容與 父 KIND 行(Kind "名稱")值所需的定義行 合併,以建立型別為 KIND的資源,如在 TBS 中設定 'Kind "KIND 列舉型別名稱"' 行所定義。
將這些計算機科學內容翻譯成英語:每個 'Kind 標籤' 設定了 資源 的規則,以及其 資原始檔夾 在提交到 Trainz 內容管理器以進行 提交(現在,奇怪地稱為 提交,因為 TANE 內容管理器出現了)或 驗證(錯誤檢查和測試,提交(或提交)資源到資料庫之前的步驟。也是上傳到 DLS 之前)時必須包含哪些資料型別和定義。每個 Kind 都與一個源 config.txt 檔案配對,作為(通常)其最開始的幾行之一[note 2]。一切都是 TAG--DATA 對的一部分。有些是 TAG-Container,很多是 TAG-Value,但所有配置資料都是成對的。容器中的子容器遵循相同的規則。即使是陣列資料元素 - 字串、多個值、多個可能性(類別時代和類別區域)在一行上定義為成對關係。因此,容器是關鍵字標籤,這意味著期望出現 '{' 和 '}',並根據標籤名稱定義的規則處理兩者之間的資料。
瞭解 KINDs 的作用可以說僅次於理解 TrainzBaseSpec 的作用,以及它們無處不在的容器,即 config.txt 檔案。所有這三種元素在某種程度上都是使用者為修復或建立資源而掌握的最重要的資料元素。幸運的是,每種 Trainz 資源都有一個唯一的 KIND,因此可以根據需要或系統地逐個掌握,同樣地,可以逐個理解每個 容器。
事實上,所有這三個元素都緊密地相互關聯,因為它們在資源 根資料夾 內協同工作,該資料夾必須包含 配置,反過來,'必須'包含 TBS 中的 Kind 標籤 和其他強制性 TBS 支援定義,例如 kuid 和 使用者名稱,並且從 TBS 行中定義和選擇的 KIND 開始,因此'必須'包含該 Kind 標籤 所需的這些定義,以及所有支援定義... 包括必需的容器和子容器。
在較小程度上,KIND 和 類別-類別標籤 共同告訴 內容管理器 軟體哪些其他關鍵字是必要的、可選的或非法的,這些關鍵字在資源的 config.txt 檔案 內,而這些關鍵字的定義目的是將該類別-類別成員(正在定義的資源)新增到各種排序標準的組合中,這些標準對 CM 中的排序和選擇操作非常有用。
|
Trainz Kinds 是定義用於在單個識別 kuid 下表徵資源型別的最小資料結構的高階 容器。
Trainz 模擬器中的KINDs 定義了與類別-類別一起設定的屬性,這些屬性需要提供資訊欄位以使資源模型正確渲染。從非常現實的角度來看,KIND 資料結構(將與模型渲染和執行時模擬需求相關的不同型別相關資料分組)是 Trainz 中的一級 容器(儘管有一個特殊的名稱,“KIND”),並且幾乎總是需要其他容器級資料組與它一起出現在 ini 檔案中。這些是列舉的支援容器和標籤,它們透過 Kind 標籤和類別-類別的組合使用來確定為這種資源必須定義哪些其他資料元素,這些資料元素可以被視為一種子 Kind,因為所有類似資源都需要定義相同的資料元素。
現在,所有容器和類似容器的結構都位於 config.txt 檔案中,但區別僅僅在於'容器定義型別' 通常在幾個不同的 KIND 定義的資源中具有作用域(適用性),並代表一個共享屬性(一個特徵,例如轉向架),而每個 KIND 對於該類資源都是唯一的。KIND Engines 和 KIND Traincar 都有轉向架(卡車上的車輪),因此它們的 ini 檔案中都有轉向架容器。
|
以下列表截至頁面編排時是完整的,並會定期更新。有關可能的更新,請參閱 Trainz-Wiki KIND TrainzBaseSpec。(許多連結都指向 N3V TrainzOnline Wiki,與 Wikibook 部分的連結略有顏色差異。截至 2014 年 8 月底,仍為紅色連結的條目尚未在 N3V Wiki 中正式定義,儘管該類很可能已在 內容創作者 的論壇中公佈。
所有 Trainz 定義的資料(內容)都包含三個必不可少的元素:用於組織資料的 config.txt 檔案、一個代表 kuid 的身份(僅使用者名稱無法實現,但合法資產可以在沒有名稱的情況下建立!),以及最後,一個合法定義的 kind 標籤。kind 負責指揮、指揮樂隊、指揮排長或 CEO 指揮方向,為之後處理的所有內容設定要求。簡而言之,kinds 的值,是一個由一小部分精選的嚴格定義的成員組成的小組,它會告訴 Trainz 軟體在虛擬世界中渲染和顯示什麼以及如何(或在何處)找到 config.txt 檔案中關聯這些資產部分所需的其它部分。
以下所有子類都將 TrainzBaseSpec 視為其資料的“父類”。[註釋 4] 以下列出了一些 kind,其中帶下劃線的 kind 屬於舊版 kind,它們早於 TS2009 版本中對 Trainz 資料模型 的更改(即 2008 年底至今),N3V 程式設計師只對這些 kind 進行了漸進式(增量式)更改。
當前可以在 N3V Trainz Wiki 的 內容創作者指南 部分中找到修復基於這些舊版 kind 的資產的詳細資訊 TrainzOnline 站點在此,並有啟發性的 舊版 KIND 示例在此。強烈建議所有使用 Trainz 下載站 的使用者或任何考慮建立內容的使用者仔細閱讀 CCG。通過了解舊版內容的定義方式,可以對比當前 TrainzOnline 對同類資料型別的覆蓋範圍,並進行比較,因為這種過去與現在的對比往往會提供寶貴的見解,幫助修復、更改和自定義資產。更重要的是,CCG 在 TrainzOnline 上釋出的版本是 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/Kinds 部分只是一個佔位符,一個概述或標記,表明本書的本部分尚未完成。您可以透過 擴充套件本部分內容,更全面地討論本主題,幫助 Wikibooks Trainz 專案。 需要的工作: 本節提供指向一組子頁面的連結,這些子頁面展示了從 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他資料模型發生變化的版本中常見的資產型別配置的演變,並且可以使用比較軟體檢視差異。 |
| 本 Trainz/Kinds 部分只是一個佔位符,一個概述或標記,表明本書的本部分尚未完成。您可以透過 擴充套件本部分內容,更全面地討論本主題,幫助 Wikibooks Trainz 專案。 需要的工作: 本節提供指向一組子頁面的連結,這些子頁面展示了從 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他資料模型發生變化的版本中常見的資產型別配置的演變,並且可以使用比較軟體檢視差異。 |
| 本 Trainz/Kinds 部分只是一個佔位符,一個概述或標記,表明本書的本部分尚未完成。您可以透過 擴充套件本部分內容,更全面地討論本主題,幫助 Wikibooks Trainz 專案。 需要的工作: 本節提供指向一組示例子頁面的連結,這些子頁面展示了從 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他資料模型發生變化的版本中常見的資產型別配置的演變,並且可以使用比較軟體檢視差異。 |
| 本 Trainz/Kinds 部分只是一個佔位符,一個概述或標記,表明本書的本部分尚未完成。您可以透過 擴充套件本部分內容,更全面地討論本主題,幫助 Wikibooks Trainz 專案。 需要的工作: 本節提供指向一組子頁面的連結,這些子頁面展示了從 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他資料模型發生變化的版本中常見的資產型別配置的演變,並且可以使用比較軟體檢視差異。 |
- ↑ 型別和其他許多 Trainz 資料定義,雖然範圍很廣,但都是列舉資料型別... 意味著它們必須是來自合法允許詞語列表的< >值> 。其他不適用!
- ↑ 在配置檔案中所有標籤和容器的位置無關緊要,但資料結構在引號、方括號和圓括號中的正確巢狀很重要
- ↑ 雖然 N3V 程式設計師(我在任何地方都沒有看到)沒有正式承認,但LOD 檔案[1],例如 'meshname.LM.txt' 和 filespec.texture.txt 檔案,可以認為是ini 檔案 型別或 包含檔案 型別,實際上擴充套件了配置檔案中內聯定義的範圍。 (texture.txt 檔案 + LM.txt 檔案) 每個檔案不僅包含路徑資訊,還包含重要的 如何實現資料指令行 ,並且與 config.txt 檔案行一樣,必須以正確的格式,否則資產會生成錯誤。
• config.txt 檔案和此類包含檔案之間的一個主要區別是,它們不嚴格遵循 Trainz 關鍵字—<值> 對 的單行格式,而是經常在語法中使用等號。 - ↑ 注意: 此列表在 N3V TrainzOnline Wiki 上是“維基化”的,這意味著“KIND”一詞後面的首字母被大寫,而 config.txt 檔案中實際的資料標籤名稱是全部小寫文字。該維基還使用雙引號來表示相當多的術語,我們將在本文中免除您經歷這種做法。
- ↑ 'kind consist' 不常直接看到,它只存在於選單和內容管理器列表中。
| 本參考頁面改編自 TrainzOnline Wiki,根據 CC-BY-SA 3.0 許可證釋出。本頁面可能包含比 同一主題的源頁面 更多文字解釋、說明、歷史或示例。 TrainzOnline Wiki 主要由程式設計師或經驗豐富的 內容建立者維護,可能擁有有關當前 trainz-build 程式碼標準的更新資訊,這些標準隨著軟體功能的新增而不斷變化。 |

