跳轉到內容

Trainz/GameScript

來自華夏公益教科書,開放世界開放書籍
警告:  此頁面正在用作新模板功能的測試平臺,這些功能將顯著幫助頁面編輯和執行緒化。因此,如果外觀在幾天內很奇怪,它是一個正在進行的工作,請耐心等待!
  • 問題請諮詢:FrankB 2015年8月12日23:53(UTC)



GameScript 是 Trainz 1.3-Trainz UTC 時代的 TrainzScript 應用程式的衍生後繼 C 語言,它賦予 Trainz 可擴充套件性和互動功能。在 TRS2004 中,該語言被概括為一組 規則,包含在 會話 中,使用者可以使用 會話編輯器 功能(勘察員 模組)進行更改。這些規則是圖示、輸入或賦值程式碼以及使用上述資料輸入的執行時指令碼的組合,與安裝的 Trainz 指令碼庫一起,允許以更輕鬆的方式實現當時對場景作者可用的大多數 TrainzScript.exe 實用程式功能——這僅限於一小部分具有程式設計技能的內容創作者。GameScript 的生成完全依賴於內容管理器和執行時 GUI 應用程式來驗證、錯誤檢查和驗證新指令碼的編譯和載入能力。


GS 檔案

[編輯 | 編輯原始碼]
GameScript 是一種 類 C 計算機語言,它生成GS 檔案——用於包含在資產和遊戲指令碼庫中的 Gamescript 原始檔。

許多互動式資產依賴於這些指令碼檔案與 Trainz 執行時模組互動。指令碼更新是互動式或動畫資產變得過時或可能無法執行的常見原因,因為從一個版本到另一個版本(包括熱修復和服務包之類的更新)的指令碼庫通常會演化一些庫檔案。這種版本漂移的另一個主要影響是,有時難以將使用高階 TBV 的資產更新到更早版本的 Trainz(例如 TS2009、TC 或甚至 TRS2004/TRS2006)。一般來說,大多數資產可以降級,但當它們不能降級時,程式碼構建中的指令碼語言特性及其後繼者是此類資產無法降級的主要原因。

示例
在 2014 年夏季,Andi06 釋出了一套新的資產,這些資產依賴於 TS2012 的服務包 1 和該系列中的第四個熱修復程式。TS2012-SP1+hf3 無法與新的交叉鑽石資產一起使用。執行時模組勘察員和駕駛員中所需的軟體鉤子在 TS12 的熱修復程式 4 之前不存在。這也是一個例子(很多例子中的一個),程式設計師響應使用者的請求並透過滿足我們的願望改進了 Trainz。大多數此類改進都是由使用者需求驅動的。這是一個保持活躍關注 Auran 論壇的好理由。

 

註釋、腳註和參考文獻

[編輯 | 編輯原始碼]

Config.txt 檔案在 Trainz 資產中無處不在,因為沒有一個資產可以不定義這種型別的 計算機科學容器。在編輯或建立 Trainz 內容時,必須始終牢記關鍵字-鍵值對。 TrainzBaseSpec 包含在資產定義 Config.txt 檔案中最常見的鍵值對和容器。 

註釋

 

腳註

 

參考文獻

logo
Trainz 基礎知識參考
TOC | 開始趣味 | AM&C | 創作 | 書內參考文獻 ORP 參考文獻:  • 索引 • 容器 • 種類 • 標籤 | 附錄  • 版本


華夏公益教科書