Trainz/種類
| |||
|
|||
|
| 詞彙表 |
| HKeys-CM |
| HKeys-DVR |
| HKeys-SUR |
| HKeys-WIN |
| 滑鼠使用 |
| 符號 |
操作說明:點選文字主體中的腳註 ([2]) 或註釋標籤 ([note 12]) 將導航您(定位頁面)到條目確切的文字。 • 然後:點選那裡的?符號,將返回您回到您開始閱讀的地方。 |
定義 Trainz 資源 的所有元素,除了 本地安裝 資料庫之外,都包含在一個單個資料夾中——資原始檔夾 或 資源原始檔夾——當資源被開啟進行編輯或構建時,這兩個資料夾都是可以訪問的——兩者都涉及(可能多種編輯)編輯和資料操作。
種類是這些資源原始檔夾中的特殊父資料形式,並在資料夾中唯一的 config.txt 檔案 中定義。Kind 標籤的合法值受到嚴格限制。[note 1] 每個配置都有一個 kind,並且每個配置在本地定義的其他部分的目錄中都有一個家,以建立該資源。因此,資源原始檔夾也可以被分類為 Trainz 容器 的一般資料型別的上一層,每個資源型別都由其明確的唯一關鍵字控制,即Kind 標籤的值。
因此,每個 Kind 表示一組基本的 Trainz 資源型別或 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-容器,很多是 TAG-值,但所有配置資料都是成對出現的。容器中的子容器遵循相同的規則。即使是陣列資料元素——字串、多個值、多種可能性(類別時代和類別區域)都在一行上定義為一對關係。因此,容器是關鍵字標籤,表示期望出現“{”和“}”,並根據標籤名稱定義的規則處理兩者之間的所有資料。
理解 KIND 的作用,可能僅略微低於理解 TrainzBaseSpec 和它們的無所不在的容器,config.txt 檔案的作用。這三者在任何時候,對於使用者來說都是最重要的資料元素,用於修復或建立資源。幸運的是,每種 Trainz 資源都有唯一的 KIND,因此可以在需要時掌握這些內容,或者系統地逐個掌握,類似地,理解每個 容器 也可以逐個進行。
實際上,所有三個元素都緊密地相互關聯,因為它們在資源 根資料夾 中協同工作,該資料夾必須包含 配置,而配置又“必須”包含 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 的標識(僅使用者名稱是不夠的,但合法資產可以在沒有名稱的情況下建立!),最後是一個合法定義的種類標籤。種類負責,是管絃樂隊的指揮,是排長或執行長給出指示——為在之後處理的所有內容設定要求。簡而言之,種類的價值,一小部分嚴格定義的會員制小組——告訴 Trainz 軟體要在我們建立的虛擬世界中渲染和顯示什麼,以及如何在(或在何處)找到將 config.txt 檔案中連結在一起的資產其他部分所需的其餘部分。
以下每個子類別都被認為具有 TrainzBaseSpec 作為其資料的“父類”。[注 4] 以下列出的一些種類,那些帶下劃線的種類是早於 Trainz 資料模型 在 TS2009 版本(即 2008 年後期)中的更改的傳統種類,N3V 程式設計師僅在此後實施了漸進的(增量)更改。
目前可以在 內容建立者指南 的 N3V Trainz Wiki TrainzOnline 網站此處 中找到基於這些傳統種類的修復資產的詳細資訊,並附有說明性的 傳統種類示例此處。強烈建議任何使用 Trainz 下載站 或考慮建立內容的使用者仔細閱讀 CCG。從理解舊內容定義方式的歷史背景中獲得的見解,可以與當前 TrainzOnline 對同類資料的覆蓋範圍進行對比和比較,因為這種過去與現在的比較通常可以為修復、更改和定製資產提供寶貴的見解。更重要的是,CCG 中的寫作是由專業人員製作的,並且更具有語義學——它通常會讓你瞭解如果更改了某些內容,會產生哪些擴充套件影響,而 Trainz Wiki 並沒有提供這些資訊。釋出在 TrainzOnline 上的 CCG 是 TC1&2/TC3 版本——這是自 1999 年 Trainz 以來出版的幾本小冊子中的最新版本;TC3 CCG 包含來自 TRS2004/TRS2006 和 UTC 資料模型的已更改的 Enginespecs 機車資產,需要進行適當的更新。
| TrainzBaseSpec 子類別 KIND(資產型別組) | ||
|---|---|---|
- 本節提供指向一組示例子頁面的連結,這些子頁面展示了常見資產的演變
- 從 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他類似版本中,資料模型 發生了變化,可以使用 檔案比較軟體 檢視差異。
- 什麼是最重要的 KIND?
答案取決於您當前正在處理的資產和資產子型別。機車和貨車在人類思維中都是 "traincars",但在 Trainz 配置檔案中卻是不同的 KIND 宣告。柴油機車和蒸汽機車都需要定義不同的資料引數來模擬資產;這種配置中的差異來自 kind 的定義,以及強制性的 category-class 標籤 僅在 CM 和 surveyor 選擇和排序過濾器中使用。
景觀 KIND
[edit | edit source]這些通常比較簡單,因此可以引入 KIND 的使用。
| 本 Trainz/Kinds 部分是一個佔位符,一個概述或標記,表明本書的這一部分尚未完善。 您可以透過 擴充套件它 來幫助 Wikibooks Trainz 專案,其中包含更完整的話題討論。 需要工作: 本節將提供連結到一組子頁面,展示從 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他類似版本中常見資產 KIND 配置的演變,這些版本中資料模型發生了變化,可以使用比較軟體檢視差異。 |
軌道 KIND
[edit | edit source]| 本 Trainz/Kinds 部分是一個佔位符,一個概述或標記,表明本書的這一部分尚未完善。 您可以透過 擴充套件它 來幫助 Wikibooks Trainz 專案,其中包含更完整的話題討論。 需要工作: 本節將提供連結到一組子頁面,展示從 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他類似版本中常見資產 KIND 配置的演變,這些版本中資料模型發生了變化,可以使用比較軟體檢視差異。 |
軌道邊 KIND
[edit | edit source]| 本 Trainz/Kinds 部分是一個佔位符,一個概述或標記,表明本書的這一部分尚未完善。 您可以透過 擴充套件它 來幫助 Wikibooks Trainz 專案,其中包含更完整的話題討論。 需要工作: 本節將提供連結到一組示例子頁面,展示從 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他類似版本中常見資產 KIND 配置的演變,這些版本中資料模型發生了變化,可以使用比較軟體檢視差異。 |
機車 KIND
[edit | edit source]| 本 Trainz/Kinds 部分是一個佔位符,一個概述或標記,表明本書的這一部分尚未完善。 您可以透過 擴充套件它 來幫助 Wikibooks Trainz 專案,其中包含更完整的話題討論。 需要工作: 本節將提供連結到一組子頁面,展示從 v1.3-v1.5、v2.2、v2.5、v2.9、v3.7、v3.9 或其他類似版本中常見資產 KIND 配置的演變,這些版本中資料模型發生了變化,可以使用比較軟體檢視差異。 |
發動機規格
[edit | edit source]註釋
[edit | edit source]- ↑ KIND 和許多其他 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' 並不常見,它只存在於選單和內容管理器列表中。
參考資料
[edit | edit source]| 本參考頁面改編自 TrainzOnline Wiki,根據 CC-BY-SA 3.0 許可證 釋出。本頁面可能會包含比 同主題的源頁面 更多的文字解釋、說明、歷史和/或示例。 TrainzOnline Wiki 主要由程式設計師或精通 內容建立 的人員維護,可能包含有關當前 trainz-build 程式碼 標準的最新資訊,這些標準隨著軟體功能的新增而有所變化。 |

