Trainz/TRS2012WBE
截至 2012 年 4 月中旬,TRAINZ 2012 世界建造版,作為向更新的軟體系統的重要過渡,能夠利用 64 位架構計算機的最新進步,正在經歷可能被慈善地描述為成長的煩惱,許多資深“Trainzer”(社群稱自己為),擁有大量使用整個產品線產品的經驗和專業知識,正在遇到所謂的錯誤修復(“熱修復”或補丁)和倉促的複合更新,服務包一(SP1)的特別困難。建議不太有經驗和新使用者在此期間不要安裝 SP1。
在初期問題中,許多資深 Trainzer 正在從 SP1 和一些熱修復回退,等待 SP2。在沒有 SP1 的情況下,TRS2012 實際上執行得相當好,儘管存在一些新使用者(非世界建造者或內容建立者)可能幾年都不會注意到的問題,但活躍且經驗豐富的 Trainzer 和開發者社群已經以廣泛的粉絲群體執行數十萬臺計算機的多工效率揭示了這些缺點。一個擁有苛刻且見多識廣的人工智慧的龐大超級計算機。
Trainz 系列已經存在 13 年,跨越兩個所有者群體,擁有超過一百萬註冊的個人使用者,併發布了眾多版本,並託管一個網路伺服器,允許免費下載內容。模擬器主要版本構成一系列升級產品,每個產品都包含新的內容、路線和類似“駕駛員課程”的遊戲,以及支援世界構建的內容,此外,每個版本都改進了軟體,同時保持整體操作完全相同或存在細微差異,因為功能已經擴充套件。許多註冊使用者已經獲得了整個系列,以獲取新的內容和功能。TRS2012 是該系列穩定發展中最激進的進化步驟,在功能和能力方面都實現了飛躍。
圍繞成功且通常高度可靠的產品線而形成的網路社群(複數)經常包含從實際的鐵路工程師和員工、技術專業人員、妻子、母親、平面設計師到六歲兒童的鐵路愛好者。在如此重大的軟體大修中,這些初期問題是可以預期的,並且本次討論不應被視為對產品或公司的抨擊,甚至不應成為拒絕購買的理由。釋出問題和服務包釋出問題在大型軟體升級中很常見,新使用者或休閒使用者可能會像預期的那樣對任何此類錯誤置之不理,就像在電子遊戲中一樣。Trainz 使用者群的要求更高,並且傾向於完美主義,就像許多模型製造者一樣。
同樣的忠實粉絲正在揭示這些“新版本”的成長煩惱問題,就像任何系統升級的重度使用者一樣,因此在短時間內發現了許多錯誤,就像他們在每個新版本中發現的那樣。由於 Trainz 是一個功能強大的工業級軟體系統,致力於娛樂,因此許多人在火車和 Trainz 愛好者的生活中發現了這樣的錯誤。與大多數作為遊戲出售的軟體包相比,Trainz 擁有一個廣泛的全球知識淵博且高度參與的使用者群,並且正在加班加點地解決這些問題。全球社群將識別軟體故障並共同修復此類資料不一致性,這些資料不一致性來自一個新的更嚴格的檢查系統,以相同的方式,這些小的資料斷開連線從最早的 Trainz 版本開始就出現在新版本中。
新使用者被引導到網路搜尋其實驗和早期世界構建嘗試可能產生的任何錯誤情況。任何預釋出捆綁資產都已經沒有錯誤,並且您可以使用基礎系統做很多事情。內容管理器現在捕獲並標記為錯誤的資料型別錯誤只會出現在匯入的資產中,例如缺少縮圖影像的房屋。這些很容易被發現和修復,因為它們在內容管理器的狀態列(大窗格的左側,許多小圖示)中用一個大的紅色感嘆號標記。對於有經驗的人來說,在後面的問題部分討論的資料模型演變涉及一些文字編輯來修復,在大多數情況下,除非下載的資產使用高階功能(那些將是複雜的行業或高階機車和一些互動式車輛)。任何新使用者都建議等待 4-6 個月再下載,同時在勘測員中使用豐富的內建資產積累經驗,並定期瀏覽網路論壇。透過一些經驗並觀察其他人修復和討論此類調整時的執行緒,您將學到很多東西,並且您可以時不時地提出一些問題並結交一些朋友。
如果您無法阻止自己下載或已經下載了有錯誤的東西,請記下錯誤併網絡搜尋在“檢視錯誤”下拉列表中出現的唯一識別符號(kuid)編號或文字短語(選擇資產,右鍵拖動到“檢視錯誤”)。擷取螢幕截圖或記下筆記,以便您可以按確切的術語搜尋。如果這不起作用,找不到修復方法,請查詢新使用者論壇並尋求幫助。
在網站上釋出攻擊性言論是不可容忍的,並且會受到嚴格執行,因此請隨時參與並關注許多主題,提出問題,並使自己為人所知。您不應該也不必只是潛伏。識別具有相同興趣的使用者(使用者的版本所有權將顯示為類似軌道的圖形,分支線指向產品。擁有大多數或所有版本的使用者顯然經驗豐富)。
如果您在論壇上沒有在一兩天內得到回覆,請檢視線上人員並檢視個人資料……找到有經驗的人員傳送私人訊息。解釋您的錯誤,在您的帖子中新增連結,並尋求幫助;網路空間的態度是:我們都曾經是新手,唯一愚蠢的問題是那些沒有問出口的問題。重要的是要保持耐心。
因此,新資產今天無法安裝,因此請完成所有其他您可以做的事情,並等待一些關注。通常,一旦您透過一些帖子確立了自己的身份,有人可能會主動為您修復它,或者透過電子郵件交換引導您完成修復過程。(您很可能正在交換螢幕截圖。)一旦您修復了幾個,您就會看到事物是如何連線起來的,然後可以瘋狂地下載新內容。否則,除了瞭解版本中的錯誤型別外,請玩遊戲並學習。下一部分之後的本頁其餘部分僅供非常高階使用者使用。
基礎版本是穩定的,在 Beta 測試中未捕獲的大多數錯誤都是次要的,並且社群舊內容資產的許多資料不連續性已預先宣佈並預計隨著產品系列切換所需的硬體及其長期執行的軟體系統到更快的 64 位現代微處理器基礎系統,以便為現在廣泛使用的更快的較高解析度顯示卡提供支援。這是根據客戶需求採取的一項長期呼籲的措施,可以理解的是,由於之前的所有者幾乎破產,所以延遲了。切換到 64 位系統和Speedtree 高畫質圖形技術在 GUI 模組中引入了“開發人員預期的資料異常”和輕微-主要的拓撲不連續性,並且更改故意在匯入舊內容時引入了某些資料不相容問題(內容或資產是任何物件(鐵路車輛、機車、人員、火車站、工業、建築物、樹木等)。每個都由一個核心構建,可能包含其他資產,例如車輪是轉向架的一部分,轉向架是車輛底盤的一部分,車輛底盤是鐵路車輛的一部分。每個都需要獨立定義和建模。)可以使用或放置到 Trainz 模擬器引擎及其執行時呈現的虛擬現實世界中,並由資料庫和下載管理器內容管理器 Plus (CMP) 管理)。
許多鐵路俱樂部、團體、粉絲和愛好者已經建立了內容並在公司的下載中心分享了他們的成果超過 13 年。此類專案的版權歸建立者所有,他們已授權公司在其託管網站“下載站”上提供資產,並且與舊內容的主要升級問題可以概括為“無法聯絡作者以獲取許可權以向下載站中超過 100,000 個資產新增修復更新”。例如,許多人已經去世、更換了網際網路或對 Trainz 感到不滿,並且不會支援他們自己的創作。為了嚴格遵守國際版權法,公司也不能更改這些資產。但使用者可以。所以它們必須在本地修復。
隨著64位資料模型和多核64位新一代計算機的出現,出於良好的原因,安裝了更嚴格的資料型別測試。許多舊內容(現在已過時,並且使用不再屬於模型一部分的資料欄位)被內容管理器的新圖形系統增強的錯誤檢查剔除。此檢查可防止使用未定義的資料元素並完全崩潰系統,或者更糟的是將垃圾資料寫入硬碟驅動器。十年前,執行商業軟體並遇到藍色畫面宕機的情況並不少見,這些錯誤檢查旨在防止此類系統崩潰。
此外,許多資源在上傳時沒有遺留要求(只是一個請求),即附加預覽縮圖影像,因此這些資源需要進行一些小的修復,因為它們現在被視為錯誤,截圖和Microsoft Window Paint 就足以建立一個;隨著每個新版本的釋出,敬業的Trainzers都順應了這一變化,儘管伴隨著一些抱怨。
那些不定期參與社群網路論壇的粗心和不知情的人可能會無意中觸犯這些幾乎微不足道的調整。作為一個已經存在十多年的可擴充套件資料系統,出現此類問題是意料之中的,一旦瞭解發生了什麼,其難度等級確實很低。內容管理器模組會標記並列出這些錯誤,修復它們通常是常識,並且需要一點使用記事本或畫圖工具的經驗。
| 本頁的其餘部分僅供經驗豐富的Trainzers幫助N3V識別SP2升級修復的錯誤,因此僅供非常高階使用者使用。 我是一名計算機工程師,在十多年裡我只做過五六次這樣的操作。 |
本章的目的是為TRS2012 SP1社群提供一種安裝並能夠在有或沒有SP1的情況下執行的方法。以下“修復”是對Windows登錄檔編輯的練習“允許在同一臺計算機上執行第二個Trainz 2012”。使用者自行承擔風險,從技術上講,這屬於侵犯版權行為,如果您在沒有認真細緻地注意建議的備份的情況下更改內容,可能會損害恢復工作系統的操作,而建議的備份將作為最後手段防止此類恢復。
此過程類似於使用Microsoft Windows內建工具重新命名一組檔案,但並非使用大多數人熟悉的工具,而是使用計算機專業人員獨有的工具,而且這種情況很少見。使用了兩個工具:Windows資源管理器(或資料夾名稱編輯)來重新命名檔案。Windows Regedit.exe 用於修改登錄檔。您可以透過在開始選單的執行行中鍵入命令來啟動regedit:[開始] -> [執行] -> [鍵入regedit+Enter]
- 使用資源管理器重新命名Trainz 2012的根目錄,將其與系統登錄檔中儲存的任何路徑和程式名稱斷開。我建議將其命名為TRS2112,以獲得最後討論的“去死計劃”補丁選項,因為如果登錄檔編輯等也需要對Exe進行補丁。
- 此過程將透過將其重新命名為新重新命名目錄/資料夾(1)中的備用名稱來手動斷開與某些關鍵.exe檔案的進一步登錄檔聯絡,即TRS2012.exe更改為TRS2112.exe,後者是程式啟動器外殼,它應該呼叫所有其他模組.exe檔案(在其本地根目錄\Bin子資料夾中),或透過其登錄檔項從那裡進行呼叫。
- 進行一系列編輯,將更改後的檔名對映到系統中當前的登錄檔鍵。
- 同時或依次對與上述檔案關聯的路徑進行類似的名稱更改。
- 調整快速查詢登錄檔項以匹配新的.exe檔名
- 可以透過檢查啟動Trainz安裝的任何快捷方式的屬性
[單擊它,[ALT][ENTER]檢查其檔案和路徑]來確定正確的Trainz“載入程式”檔名。如果您在桌面上有一個快捷方式,那麼現在該編輯它了。這是您需要在所有級別(登錄檔中、快捷方式中、登錄檔中)更改的唯一“filenamespec”。此時,找到一個快捷方式來啟動您的Trainz,並使用右鍵單擊並按住或左鍵單擊+[ALT][ENTER]開啟快捷方式的屬性。Regedit的查詢功能看起來和操作方式與記事本(以及DOS)一樣,但顯示兩個窗格(分別為Hkey樹和資料)。您將希望透過使用FIND [CTRL][F]進行大多數導航來在其中操作。
|
- 但首先,請先將整個登錄檔備份到桌面或文件資料夾。此備份可以在檔案>匯入中載入,並撤消您在下面進行的所有regedit更改
- 開啟regedit。如果左側窗格“我的電腦”未突出顯示,請左鍵單擊以選中。它應該透過雙擊展開。
- 在檔案下拉選單中,拖動以匯出,釋放單擊
(檔案>匯出為.reg檔案)提供儲存目標。這應被視為臨時備份檔案,您可以在知道不需要恢復後將其刪除。匯出它需要花費半分鐘到一分鐘。
- 您現在只需要重複搜尋程式的本地根資料夾路徑加上反斜槓即可檢視程式或程式套件的所有Hkey。為了說明,在標準安裝中,您不希望在C:\中以完整路徑名開始pathspec,這將錯過您需要更改的Hkey。我將繼續使用...\Auran\,但...\NV3\對於FIND來說是相同的——regedit不關心它找到的是什麼名稱,並且兩者都很方便地簡短。
- 搜尋載入程式.exe檔名(我假設該路徑上的檔名是TRS2012.exe)應該可以識別對載入程式的所有呼叫,搜尋pathspec\CMP.exe所有對內容管理器的呼叫,如果它們在不同版本中保留了該名稱)
- 您還需要每次從頂部搜尋每個“filename.exe”,並且不帶副檔名,因此不會有偷偷摸摸的遺漏,這可能不會找到路徑來整理和掛鉤這些天,但是對無副檔名的.exe檔名的搜尋將是必要的,並且作為最後一件事情是強制性的。(稍後詳細介紹)
- [Tab]將使您在左右窗格之間彈出以識別鍵名。每個都可以獨立匯出為.reg檔案(我建議您也這樣做——這樣您就可以實驗性地僅更改一個完整的Hkey或重新載入剛剛匯出的備份),因此如果您需要撤消某些操作,每個都將具有每個部分的“粘合細節”。如果您確實匯入,則在退出regedit時更改將生效。(就像提交修復後的資源一樣,現在它已經好了。)
如果這與以前的版本一致,那麼可能只有四到六個重要的Hkey和併發名稱對映在起作用。我上個月使用此基本過程將我所有的Trainz都重新定位到C:\Auran。Find被連續使用(使用[F3]重複上次查詢),並將找到所有需要調整的條目。
- 如果您首先只搜尋路徑,您將看到您可能在每個停止點重新命名的所有.exe。進行一次試執行,並在每個停止點(已找到的字串)四處檢視。此過程就像火車在每個車站短暫停留一樣。我最初傾向於只通過在登錄檔中新增字尾“-1”並作為相應檔案資料夾中的新.exe檔名來重新命名啟動器。如果這不起作用,則另一個修復將需要重新命名,因此請使用一個長度相近的近似匹配字串,即TRS2112。請注意,如果我猜錯了,Exe可能較短,因此請透過稍微更改名稱來匹配長度,而不是按部就班地進行,如果我的猜測是錯誤的。(此外,您鍵入的字元越多,拼寫錯誤導致出錯的可能性就越大。改為使用TRS2112.exe作為您的手動編輯的替換字串;在萬一下面的.exe需要硬補丁才能建立功能副本,則可以使用任何HEX編輯器程式設計工具修改*.exe檔案中的字串以使所有這些都能正常工作。)
您必須位於正確的窗格中才能更改資料,並且Find會為您突出顯示它……根據正常的Windows介面操作。(如果您使用的是Windows 8,我不知道是否可以執行此操作。(它應該在其中!)在VISTA和Windows 7/8中,請確保以管理員身份執行;使用[Windows鍵][R]開啟regedit)
- 資訊:[Tab]鍵在窗格之間來回切換(切換模式),並將垂直定位到左側窗格中相應的包含Hkey名稱。(左側窗格,箱式貨車,右側窗格,資料箱)。
- 包括其完整樹結構和樹Hkey名稱的完整Hkey位於狀態列(regedit底部)。
要匯出“本地 Hkey”(列車編組)的備份,你需要使用 Tab 鍵切換到左側窗格,然後點選樹狀結構中高亮顯示的 Hkey 標籤上方(在樹狀結構中)的父 Hkey 圖示(一個小資料夾)。父標籤沒有縮排(或縮排較少)並且位於高亮顯示的 Hkey 標籤之上,而[F3/查詢] + [Tab] 將你定位到該標籤。這就像在 Windows 資源管理器中編輯 config.txt 檔案或影像子資料夾一樣,看看吧,描述起來可能聽起來很複雜,但實際上非常簡單。
- 瀏覽 Hkey 樹...
- 當你位於當前 Hkey(子鍵,實際子鍵)時,你會立即看到樹狀結構,它是一個子鍵,因此會縮排(位於另一個子鍵之下,就像資料夾包含子資料夾一樣)。
- 選擇該父 Hkey 是你可以將整個 Hkey 匯出為備份的方式。只需向上箭頭鍵或點選即可到達它... 幾個螢幕行,直到它被高亮顯示。
- 找到你定位在螢幕中央左右的葉子節點。當你這樣做時(我使用數字字尾的連續檔名作為 .regs,這樣我就可以按相同的順序重建。從 Windows 95 開始,我從未需要過其中任何一個!在操作過程中記下每個檔名,這樣你就不會重複使用數字,並且實際上覆蓋了你之前儲存在另一個上層 Hkey 中的某個檔案。)無論如何,點選“編輯”下拉選單,匯出 Hkey。左側窗格中高亮顯示的內容就是你正在匯出的內容。[你可以匯出兩次並將其中一個或兩個儲存為文字檔案,並使用記事本訪問 .reg 檔案以檢視差異,但資料是相同的。]
在進行無用的更改之前,請忽略左側窗格中顯示為RunMRU 和MUICache 的 Hkey 欄位,無需編輯,這些是快速啟動項,在重新啟動時會正常工作。因此也不需要備份!只需再次按下 [F3] 繼續...
回到流程,我們只是
- 1) 找到一個搜尋的專案,然後
- 2) 備份父 Hkey,
- 3) 我們只需按下 [F3] 返回到我們需要更改的專案(或專案)。
- 4) 如果我們按下 [Tab] 返回到左側窗格,我們將回到本地父 Hkey 下的 xxx 個 Hkey,然後
- 5) 按 [Tab] 返回到右側窗格(“編輯窗格”)中相同的高亮顯示資料。
- 6) 我們需要更改的資料是一個 pathspec\filespec 格式的字串,其中包含你的 Trainz 父根目錄作為要查詢的索引字串。
- 7) 我們準備好了編輯,只查詢與 TRS2012.exe 檔案匹配的內容。
- 8) 但是在此編輯中,你必須修復 pathspec 以使用新的資料夾名稱,必須像上面介紹的那樣更改 .exe 檔名。
- 所有路徑名,包括 ...\rootname\progfolder\Bin\*.exe 路徑名都需要更新為更改後的 progfolder。如果要使 CMP、啟動器和 CCP 繼續工作,這一點至關重要。
- 我們只需要重複該序列幾次,就像解除安裝列車編組中的連續車輛一樣。儲存本地 Hkey 就像向前拉動... 編輯、載入/解除安裝。重複,根據需要。
再次自動定位(並在右側窗格中),這要歸功於 [F3] - 現在右鍵點選進入編輯模式,選擇使用資料下拉選單中的“修改”並更改該行。再次按下 [F3] 查詢下一個,依此類推。當資料欄位突然更改時,重複按下 Tab 鍵檢查 Hkey 欄位序列,如果它符合條件,請備份本地父 Hkey;再次按下 [F3],在該處進行更改,等等,如上所述。重複此類連續查詢,直到最後。你也可以修復 RunMRU 條目和 MUICache 查詢,但這不會以任何方式影響你。
在某些主要的 Hkey 鍵中,你可能會更改多個數據欄位,因此只需要一個備份。按下 Tab 鍵,回到相同的父位置,意味著你可以使用 Tab 鍵進行編輯。在大多數情況下,你會看到幾個 Exe 的列表,並弄清楚你需要編輯每個 Exe,而無需再次查詢。這可能看起來很可怕,但它很簡單,只需要謹慎和常識:按下 Tab 鍵切換到不同的父 Hkey,表示備份 Hkey。(有些內容是使用者副本,有些是快速啟動內容(Hkey 名稱是“MUICache”,並且會顯示你啟動的許多其他程式(如前所述,可以跳過此補丁),有些是“參考”副本,兩者(或者如果你有第二個/第三個使用者登入到你的 Windows,則可能是全部三個或四個)都必須更改)。登錄檔非常愚蠢,非常臃腫,而且非常重複。它是軟體和人類笨拙的快速參考。只需期望多次看到相同的外觀。
當你找不到新的條目時(你會收到一個彈出訊息,表示找不到更多條目),按下 [Tab] 鍵切換到左側窗格,摺疊它,點選左側窗格(我的電腦)頂部的 Hkey 以重新定位“查詢起點”(它只向下搜尋),並透過搜尋舊字串來檢查你的編輯。如果未找到,至少在 RunMRU 或 Muicache 中未找到,請再次重新定位到頂部,然後鍵入 [Ctrl][F] oldfilename.exe 以仔細檢查所有 exe 重新命名是否已完成,並且路徑是否為新路徑。唯一的停止點應該是我所說的那些 Hkey。按下 [Ctrl][F] 並刪除副檔名和句點,特別是對於啟動器/釋出名稱 TRS2012.exe。因此,現在我們只搜尋 TRS2012。它現在應該停在左側窗格上,高亮顯示,右側窗格將包含完整的 pathspec 和重新命名的檔名。將此左側窗格欄位編輯為與你使用的名稱相同。再次查詢到底部,再次按下 [F3],跳過 RunMRU 和 MUICache
現在退出(儲存是自動的)並重新啟動,然後透過從啟動器 exe 執行來測試更改後的目錄。(所有快捷方式都將成為孤立狀態,等待重新安裝到舊檔名和目錄(我們沒有更改任何內容)... 它可能會執行。如果沒有,它將無法連線,並且你會看到一些錯誤,提示它找不到什麼名稱。嘗試使用 regedit 重新編輯並根據需要重複。請注意,在此過程中沒有更改任何 DLL 檔名。任何在初始查詢中顯示完整路徑的 DLL 檔案,也可能應該重新命名為“-1”。Trainz 中的大多數 DLL 庫都在本地 \Bin 資料夾中,CMP 和 CCP 的主目錄。Exe 檔案知道自己的根目錄,除非給出路徑,或者登錄檔中存在路徑,否則將預設為本地副本(在該 \Bin 中)。
警告:此過程也會破壞當前解除安裝程式資料,但是,它不知道重新命名。因此... 你可以 1) 稍後手動刪除這些鍵(就像上面查詢一樣,而不是修改,而是刪除位於左側窗格中的整個鍵。當你刪除路徑和 Hkey 時 [左側窗格是 Hkey 樹],該目錄即可刪除。)因為兩組將指向相同的目錄(資料夾=之前在此處的目錄)2) 刪除該目錄並使用最佳化和修復實用程式(如 ASC(高階系統護理))清理登錄檔,因為 Hkey 現在將指向一個孤立的目錄。這兩種方法都有效。無論如何,ASC(或其他)都會加快速度,並清除碎片、錯誤的快捷方式等。這些應該定期執行,並且一個版本還替換了一些麻煩的反病毒程式。
關鍵在於使用與你重新命名的資料夾以及資料夾中重新命名的 .exe 檔名和路徑相同的 .exe 檔名和路徑。由於 exe 檔名現在是非標準的,並且與路徑匹配,產品名稱由你的編輯添加了“S”字尾,新安裝將使用舊的標準名稱,但兩者都應該執行。它們不知道彼此的存在。這是你的秘密,也是登錄檔的秘密。SP1 版本應該在遇到相同問題的情況下執行。新副本將使用與修改後的副本以前相同的舊目錄名稱執行相同的操作... 該安裝將重新附加並覆蓋解除安裝工具,因此你將一切正常。快捷方式將恢復到非 SP1 新安裝的工作狀態,並再次從任何地方工作。如果你想擁有指向重新命名工具的快捷方式,可以在之前或之後複製它們,並手動編輯 pathspec 和檔名。
實際上並沒有那麼難。一些資源修復更難。從技術上講,這將違反一份副本一份機器的版權協議,但無論如何,你將在稍後刪除最糟糕的副本。N3V 可能感激這種壓力釋放;無論如何,他們肯定應該這樣做。