跳轉到內容

Trainz/容器/擴充套件容器

來自Wikibooks,開放世界中的開放書籍
logo
Trainz 註釋參考
TOC | 開始樂趣 | AM&C | 創作 | 書內參考文獻 ORP 參考文獻:  • 索引 • 容器 • 種類 • 標籤 | 附錄  • 版本
[e]
KINDs(資產組型別)
容器


擴充套件容器 是一個頂級 config.txt 檔案 條目,可用於任何從  KIND TrainzBaseSpec 派生的資產——簡而言之,所有資產。該容器的目的是允許內容建立者使用關鍵詞將指令碼化功能或輸入連線在一起,以便可以定義(分配為變數併為特定資產 例項 初始化)而不會導致 ContentManager.exe 或 DLS 上傳軟體出現故障,並且驗證測試不會使資產失敗。簡而言之,它們使靈活性擴充套件成為 Trainz 的一部分,這是自 Trainz (Beta) 0.9 版本釋出以來的標誌之一。

  • 此容器旨在允許第三方開發者引入自定義資產鍵控資料,這些資料可以由自定義指令碼處理。
  • 擴充套件容器是具有特定命名約定的自定義標籤或子容器的列表。
  • 從普通 Trainz 使用者的角度來看,需要新增此容器是為了可接受地 修復資產更新和修復 DLS 上的舊資產,並使用軟體掛鉤。多年來,Trainz 相比於各種競爭對手的 火車模擬器 的主要優勢之一就是其可擴充套件性——內容建立者可以透過新增軟體來擴充套件和增強基礎程式的功能。例如,各種提供替代“車廂塗裝”(油漆貼圖)的Trainz 可擴充套件性方案——其中一個由 TrainzProRoutes 開發的系列被稱為“變色龍貼圖”——或特定車型 kuid 上的例項自動編號系統。DLS 上的舊資產可能無法重新配置,因此會丟擲一個易於修復的錯誤。

支援的標籤

[編輯 | 編輯原始碼]

擴充套件容器”內頂級標籤的命名非常重要。標籤名稱應具有意義,並且必須以連字元結尾,後跟引入擴充套件的內容建立者的 使用者 ID 號碼

  • 此內容建立者全權負責確定適用於標籤或子容器的任何規則和限制,並且理想情況下應努力透過此 wiki 和 TrainzOnline wiki 向其他建立者提供此資訊,並在下面的 擴充套件文件部分 中提供相關頁面的連結。
  • 雖然內容建立者被允許使用彼此的擴充套件格式,但建立者不允許引入新的擴充套件(或更改現有擴充套件的含義),而該擴充套件存在於屬於其他內容建立者的名稱空間中。
  • 擴充套件容器中的每個標籤可以是單個值,也可以是子容器,該子容器對各種資料元素進行分組。如果使用子容器,則應在擴充套件文件中指定子容器的內容。N3V Games 對特定擴充套件中的值沒有施加任何限制。

 

目前,擴充套件容器的內容未經驗證。預計未來版本的 Trainz 和下載站將根據此頁面描述的規則對擴充套件容器進行驗證。此外,N3V 可能會正式採用已進入普遍使用的特定擴充套件。在這種情況下,N3V 可能會選擇將資產驗證引入擴充套件建立者的正式規範,或者在沒有此類規範的情況下,引入由 N3V 根據通用用法編寫的正式規範。 

擴充套件文件

[編輯 | 編輯原始碼]

如果您是第三方內容建立者,並且根據這些規範建立了自定義擴充套件,請在此維基上記錄您的擴充套件,並在此處連結到您的擴充套件頁面

  • 在此處新增您的條目。

擴充套件容器示例

[編輯 | 編輯原始碼]

帶執行編號的機車

[編輯 | 編輯原始碼]
以下行直接取自Trainz 1.3 時代的機車,後來更新到 V2.9 或更高版本(TS09)。
Example from a TBV 1.3 Locomotive upgraded to TBV 2.9. Locomotive configs and many other traincars which share 'traincar parts' will specify such parts (beginning with bogeys) by a kuid reference. 
 • Single key-word—value pairs signify either boolean parameters (only 1 or 0 meaning True or False are allowed)
 • or an integer count= 'Number of fonts', (in this case-meaning font-sub-meshes (really meaning font locations where named attachment points are defined in the mesh) to permit showing a digit) with suffixed identities.
 • These tell a script asset how many memory locations to reserve (allocate) for this traincar's scripts. The value pair with suffixed keywords assign values or initialize such values.[note 1]

bogeys
{
...
}
enginespec                              <kuid:-1:42004231>
enginesound                             <kuid:-1:42003000>
engine                                  1
fonts                                   4

以前的 TBV 級別解析將容忍 config.txt 檔案中直接存在的執行編號容器。

extensions
{
   running-numbers
   {
     rn-0                                  "# 2004"
     rn-1                                  "# 2005"
     rn-2                                  "# 2006"
     rn-3                                  "# 2007"
   }
}
The script of such engine assets utilizes the labeled 'key-name — value-pairs' in the extension to assign a range of locomotive numbers. In this case, the prototype railroad had only four locomotives of this type which were assigned the numbers listed. Other arrangements to list a range of numbers are common, especially for dynamically numbered freight cars such as hoppers. boxcars, flatcars, etc. of specific types.

 

註釋、腳註和參考文獻

[編輯 | 編輯原始碼]

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

  1. 字型本身作為紋理檔案提供——通常為.TGA 檔案,包含一系列混合顏色的數字,字尾為 a、b、c、d。假設使用字尾“a”的約定,該約定也意味著它可以用作alpha蒙版'digit-6a.tga' 紋理兼作黑色字母和 alpha 蒙版,因此在白色背景上顯示為黑色字母。'b 字尾' 數字 tga 檔案可能是運營公司的道路顏色,例如紅色;如果我們示例公司的塗裝使用了這種圖案,則會在引擎網格的一側使用大型易讀的字母,以便在側面上使用。

 

 

參考文獻

[編輯 | 編輯原始碼]

 

華夏公益教科書