跳轉到內容

Trainz/Config.txt 檔案

來自華夏公益教科書
(重定向自 Trainz/Config.txt)
logo
Trainz 註釋參考

Trainz 初學者基礎知識
目錄 | 開始樂趣 | AM&C | 創作 | 書內參考 ORP 參考:  • 索引 • 容器 • 種類 • 標籤 | 附錄  • 版本

Config.txt 檔案

[編輯 | 編輯原始碼]
此頁面是 Trainz 中 Config.txt 檔案的簡要概述,供外行和初學者瞭解,Config.txt 檔案是 Trainz 中非常重要的資料定義元素;


這是Trainz config.txt 檔案的介紹,這是一種用於跟蹤和初始化 Trainz 資料定義和資料庫系統中幾乎所有資產ini 檔案

年輕的讀者可能不太熟悉 INI 檔案的概念,但該技術仍在現代應用程式中使用,儘管曾經儲存在 ini 檔案中的許多設定資料現在已放入 Windows 登錄檔項中,其餘部分通常隱藏在一個普通 Trainz Windows 使用者無法訪問的資料夾中。{{efn| 從 C:\ 根目錄搜尋 *.ini 將發現 ini 檔案仍然存在,甚至在 Microsoft Windows C:\Windows(系統)資料夾及其子資料夾中。較新的 Windows 通常將應用程式的使用者控制選項放在 \Users\User's-LogInName\...\AppData 資料夾中的 .ini 檔案中——因此,Trainz 在 Windows 2000 和 Windows ME 版本(連線 Windows NT 版本)之前就已存在,[註釋 1]如果它能很好地發揮作用,那麼它將繼續使用該技術,這一點也就不足為奇了。

但是,Trainz 無法採用登錄檔路徑,因為典型的 Trainz 版本中內建了超過 130,000 個資產,有些版本可能將此數量翻倍——在新增來自 下載站 或第三方網站的免費或付費內容之前,並且使用登錄檔來記錄即使是新增內容也會導致 Windows 登錄檔迅速膨脹,從而導致速度變慢,這與登錄檔的最初設計目標相悖,其目標是透過隱藏普通使用者無法訪問的各種內容並調整設定來加快 Windows 應用程式的啟動速度並提高可靠性(從軟體支援人員的角度來看)。(是的,家長式思維!) 總體而言,隨著登錄檔現在已經使用了十多年,Windows 程序切換速度確實快了很多,並且應用程式信任登錄檔,因此獲得了在自啟動操作中減少安全保護測試的許可權。

  然後還有第二個問題,Trainz 資產 ini 檔案是 .txt 檔案,並且大多數 Trainz ini 檔案很快就會丟失——它們所在的 根資料夾 只是暫時存在,並且作為一個包含 資料定義 集的檔案,它們的元件檔案通常會被壓縮到其他部分處理、組織和索引的檔案中(參見 chump 檔案),Trainz 資料庫在 執行時 GUI 模組和 CM 中使用這些檔案。這個處理後的“資產狀態”被稱為已提交,這意味著根資料夾中的臨時檔案會被捆綁並插入到 Trainz Asset Data Base(TAD)中,準備包含在路線或會話中,或由 CM 操作(例如檢查 依賴項 或依賴資產)進一步引用。

因此,我們現在必須解決一個重要的入門問題

到底什麼是 Trainz 資產 [註釋 2]???

Trainz 元素、Trainz 活動以及您想做的任何事情,除了解除安裝 Trainz 安裝,都依賴於 KUID 和資產。您駕駛會話,使用您有權訪問的任務填充路線(地圖,虛擬世界),這些任務供您完成,都是透過程式設計指令碼”(參考、其可能的郵件列表(HTML 或文字資產)以及當然還有 機車車輛——基本上,可以定義為程式碼的任何專案,或者作為 Trainz 的某個部分的整體的一部分的任何元素都是資產。我們使用內容管理器中由 KUID 唯一標識的 Config.txt 檔案來整理所有這些資訊,KUID 是一種索引和互動關係識別符號,可用於統一顏色(紋理或可見皮膚)、網格(由皮膚覆蓋的形狀)、網格集合(例如 火車車廂 的一部分,車輪、耦合系統卡車轉向架、貨物框架和形狀[另一個網格,可能是網格庫資產的一部分],所有這些都包含顏色檔案和反射屬性,使看不見的形狀看起來具有真實的形態)等各種不同的部分。


什麼是 config.txt 檔案?

[編輯 | 編輯原始碼]

Trainz 中的每個資源(或內容項)都以檔案資料夾的形式開始,並且每個部分都由內容建立者定義。在 Trainz 早期,由於技術原因,每種型別也都有一個定義的資料夾和子資料夾結構,一些名稱受到限制,帶有後綴,或者根據常見約定,傳統上以某種特定方式定義。一些圖形軟體包,特別是 Autodesk 的 3ds Max(N3V 的開發人員使用)以及更簡單的遊戲專用 Gmax(3ds Max 的子集,以前“與 Trainz 捆綁在一起”)喜歡使用某些子資料夾安排,並且其中許多內容延續到 Trainz 資料夾組織中。因此,對於一輛火車車廂資源,你通常會看到以下子資料夾位於其**根資料夾**下,根據舊標準(TRS2006 之前),*該資料夾將以曾經是“資原始檔名”標籤的值命名*(AssetName),在後續的資料模型中,通常是 username 標籤值(Asset_Name):[註釋 3] 早期的 Trainz 資料模型(結構)依賴於*“資原始檔名”*以及字尾_art、_body 和 _shadow。一個名為 Asset_Name(username)的資源,其“略有不同的”資原始檔名將在根資料夾“Assetname”中定義以下資料夾結構。

  • Assetname\Assetname_art
  • Assetname\Assetname_body
  • Assetname\Assetname_shadow,存在明顯的冗餘。

其他一些資源型別可能會有不同的資料夾結構,特別是風景資源。一個帶有燈光(夜間模式)的簡單建築可能有一個 body 子資料夾,但更有可能只是將其元件檔案儲存在其本地根資料夾中,但仍然保留舊式資料夾“night”,其中包含用於在黑暗中顯示物件的不同的網格和紋理。這會在路燈下產生光池,商業建築(如酒吧)的霓虹燈,發光的窗戶,汽車展廳中大廳內容的清晰視野等等。關鍵在於,雖然在包含 mesh-table 容器 以及減少和最終消除資原始檔名標籤之後,放置檔案層次結構和命名約定不再是必需的,但活躍的內容建立者仍然會嚴重依賴這些習慣性的定義以及內容釋出的每個版本(直至 TRS2009)中釋出的 內容建立者指南 組織事物的方式。因此,TC3 CCG 由使用者社群釋出在 Trainz Wiki 上,儘管 N3V 程式設計人員提出了反對意見,但它仍然是一個非常有用的資源,可以幫助你瞭解如何修復資源。

config.txt 檔案是將自定義 3D 圖形模型的各個部分粘合在一起的粘合劑,並提供有關 Trainz 虛擬世界背後的 Auran JET 3.0 圖形引擎如何解釋這些檔案和子資料夾的說明。它可以引用其他資源,對其網格進行別名並替換不同的紋理套件,從而更改火車車廂的鐵路塗裝,完成一個稱為重新蒙皮的過程。兩組紋理都應用於資源的網格,但可見且位於頂部的紋理是來自定義為重新蒙皮另一個基本資源的資源的紋理。配置檔案還將複雜的資源粘合在一起;有時透過直接包含對許多網格的引用,有時透過使用其 KUID 引用一個部分。透過考慮常見的貨車,這一點會更加清晰。此類資源具有定義耦合器、制動軟管、轉向架(轉向架)、車輪以及車身的網格。如果車身允許可見的負載,例如漏斗車、敞車、平板車或井車,則資源定義可能會包含與相關負載型別相關的動畫元件,這些元件可以顯示排水或填充負載水平的錯覺。其中兩種型別通常不承載散裝貨物,而是承載離散貨物,例如板條箱,Auran 稱之為“一般貨物”的產品型別。它們還可以承載奇形怪狀的物品,如農業裝置、建築產品、廢料。在火車車廂定義中容納每種貨物都是一種浪費。相反,每種可能的負載都有 連線點,為負載建立無形的對接點,並在需要時自定義外觀。所有這些部件都需要定義和配置才能協同工作。此類連線點需要與可能“停靠”在其上的負載型別具有相同的方位。這種魔法發生在資源的配置檔案中。上面列出的許多部件都是通用的,並且對許多車輛都適用,因此可能會由其自己的配置檔案定義,並由 Kuid 引用。所需內容以及如何指定和收集到整體內容取決於資源 種類

必須在配置檔案中定義各種資料元素,其他資料元素是可選的。此類資料元素在 TrainzBaseSpec 中列出,這是一個 KIND 類資料集合,可能或必須在每個 Trainz 子資源中定義。子資源是部件、車輪、機車駕駛室、轉向架(轉向架)、耦合器、連線到互動式工廠的軌道等等,許多較大的資源可能會使用這些部件。工廠中的軌道或貨車(貨車)的車輪是兩個易於理解的例子。

配置檔案的風格

[編輯 | 編輯原始碼]


以下是來自實際機車資源引擎元件檔案資料夾的配置檔案的小示例。聲音也是資源的一部分,此聲音將聲音(可能適用於其他機車)連線到“引擎規範”配置檔案,該檔案透過引用其 KUID “<kuid:32711:100430>” 來呼叫此聲音(請參見下文)。引擎規範資源依次在機車的配置檔案中被引用,這意味著此資源既有父資源又有祖先資源級別;並且可能存在許多此類關聯。

username                                "0-4-0T Sounds"
description                             "0-4-0T sounds"
category-class                          "ZS"
kind                                    "enginesound"
{{TR|T|trainz-build}}                            2.9
author                                  "Ben Neal original author/ updated and reskinned by Dap"
contact-email                           "dawxyz-ha-ha@noway.com"
license                                 "You may not sell this package. You may not claim it as your own.
You may repaint it if you wish, just give bdaneal credit for original mesh and textures.
All items are presented as is, no warranty is included nor implied. I doubt this would 
cause any damage to your computer, but if it does bdaneal and/or Dap may not be held liable. 
The contents of this package are copyright 2008 Ben Neal. Thank you for your cooperation."

{{TR|C|thumbnails}}
{
  0
  {
    image                               "preview.jpg"
    width                               240
    height                              180
  }
}
{{TL|kuid}}                                   <kuid:32711:100430>
kuid-table
{
}

必填標籤和容器

[編輯 | 編輯原始碼]
請注意,在過去幾年中,隨著 Trainz 和 MAC 計算機世界的互動,此列表一直在快速發展。過去可選的標籤現在在 TrainzOnline Wiki 上顯示為在 trainz-build 3.4 或其他版本之後成為必填項。此外,DLS 驗收測試通常領先於 Trainz 軟體版本,因此上傳的資源可能會因需要定義某些必填標籤列表的要求而被退回。

包含在“{”和“}”之間的資源元素位於“容器”或 KIND 中。

 

*在 trainzoptions.txt(TR04—TS12)中設定“freeintcam”開關引數或在 TANE 及其後續版本中選中具有相同功能的複選框(**釋放內部攝像頭**),會將鍵盤箭頭的功能從旋轉和傾斜功能更改為前後或左右滑動攝像頭位置。Freeintcam 模式使使用者能夠將許多攝像頭完全移出駕駛室或移至更具優勢的觀看(和滑鼠控制)角度。

註釋、腳註和參考文獻

[編輯原始碼]

Config.txt 檔案在 Trainz 資源中普遍存在,因為如果沒有這種型別的 計算機科學容器,就無法定義任何資源。在編輯或建立 Trainz 內容時,必須始終牢記關鍵字-鍵值對。 TrainzBaseSpec 包含在定義資源的 config.txt 檔案中最常見的值和容器。

註釋

  1. Windows 98 和早期的 Windows NT 大大增加了作業系統可定址的硬碟空間——磁碟大小已達到上限,Windows NT 中的新架構和 Windows 98 中的橋接技術允許使用更大的硬碟。
  2. 故意的“s”……編輯器的本地方言。問問西賓夕法尼亞州的任何人!
  3. 新的 Trainz 使用者將瞭解或被提醒,資源名稱標籤在 TRS2009 中已過時,並且自此之後,如果存在該標籤並且資源的 Trainz 構建標籤值高於 2.8(對應於 TC3 技術級別),則會生成錯誤。

 

腳註

 

參考文獻

華夏公益教科書