如何在 Cheat Engine 中使用 CE 修改表 (Cheat Table)(.CT 檔案)
開啟 .CT 檔案、附加到正確的處理程序、啟用項目並設定快捷鍵。另外也說明遊戲更新後修改表為何會失效,以及如何排除問題與回報。
CE 修改表 (Cheat Table) 是副檔名為 .CT 的檔案,內含一份現成的 Cheat Engine 項目清單:數值、指標、腳本,以及控制它們的快捷鍵。搜尋與測試都已經由別人完成,你只要載入檔案、附加到遊戲,再開啟想要的功能即可。本指南說明操作方式、修改表各部分的運作原理、遊戲更新後修改表為何失效,以及出問題時該檢查什麼。
CE 修改表僅適用於單機和離線遊戲,請勿在線上或多人模式中使用。啟用任何功能前,請先備份存檔,因為變更可能會被寫入遊戲,而且不一定容易復原。
載入修改表之前
你需要從官方網站 cheatengine.org 安裝 Cheat Engine。接著從CE 修改表 (Cheat Table) 列表挑選一個修改表,下載前先在頁面上確認幾項資訊:
- 支援的遊戲版本。修改表是針對遊戲的特定版本製作並測試的。下面會再詳細說明。
- 商店或版本。同一款遊戲的 Steam、GOG、Epic 與 Microsoft Store 版本可能使用不同的執行檔,為其中一個製作的修改表不一定能用在另一個上。
- Cheat Engine 版本。有些修改表會用到近期 Cheat Engine 版本的功能。如果頁面標示了最低版本,請使用該版本或更新的版本。
在 Cheat Engine 中開啟檔案前,最好先看看檔案內容。修改表可能含有腳本,包括以和 Cheat Engine 本身相同權限執行的 Lua 腳本。我們的線上 CT 檢視器可直接在瀏覽器中列出修改表的項目,並標示有風險的腳本函式,而指南CE 修改表 (Cheat Table) 安全嗎?則說明該注意哪些地方。
「此修改表支援的遊戲版本」是什麼意思
CE 修改表並不是真正「理解」遊戲,它只包含精確的指令:某個數值位於這條指標路徑,或是腳本要修改符合這串特定位元組序列的程式碼。這些細節只對作者安裝的那個遊戲版本成立。開發商釋出更新檔時,遊戲會重新編譯,程式碼與資料的位置都可能改變。
所以當修改表頁面寫著支援例如 1.4.2 版,意思是作者是在 1.4.2 上測試的。如果更新檔沒有動到相關程式碼,它在 1.4.3 上可能仍然有效,也可能完全失效。你通常可以在主選單、啟動器、商店的遊戲內容頁面,或是 Windows 檔案總管中遊戲執行檔的內容裡找到遊戲版本。
開啟修改表
- 啟動遊戲並讀取存檔。
- 啟動 Cheat Engine。
- 開啟修改表。使用「檔案」選單,選擇開啟或載入檔案的選項,然後選取 .CT 檔案。如果你的系統已將 .CT 檔案關聯到 Cheat Engine,在 Windows 檔案總管中按兩下檔案即可直接開啟。
- 如果修改表含有 Lua 腳本,Cheat Engine 會詢問是否要執行。只有在你看過腳本內容或信任來源時才同意。
- 附加到遊戲:點選左上角的電腦圖示,然後選擇遊戲的處理程序。
如果開啟處理程序時 Cheat Engine 詢問是否保留目前的位址清單,請回答「是」,這樣剛載入的項目才會留著。許多作者也會在修改表內留下備註;可用主視窗右下角的「Table Extras」按鈕開啟。備註通常會說明啟用各項功能的順序。
啟用項目
位址清單中的每個項目左側都有一個啟用方塊。勾選後的效果取決於項目的類型。
數值項目
數值項目指向記憶體中的某個數字或字串,可能是固定位址,也可能是透過指標路徑。「數值」欄會顯示目前的值。按兩下數值即可修改;勾選「啟用」會凍結該值,讓遊戲無法更改。
腳本項目
腳本項目包含 Auto Assembler 腳本,其「數值」欄顯示的是 <script> 而不是數字。勾選「啟用」會執行腳本的 [ENABLE] 區段,通常會修改遊戲的一小段程式碼,例如讓生命值永遠不會被扣除。取消勾選則會執行 [DISABLE] 區段,把原本的程式碼還原。如果啟用失敗,方塊會維持未勾選,並且 Cheat Engine 會顯示錯誤。
腳本比單純的位址更穩定,因為它們每次都會搜尋位元組特徵碼來找到目標,所以重新啟動遊戲後仍能運作。代價是它們對遊戲版本的依賴更嚴格。
| 項目類型 | 數值欄顯示 | 勾選啟用 | 常見問題 |
|---|---|---|---|
| 數值(位址) | 數字或文字 | 凍結數值 | 位址只在單次遊玩中有效 |
| 數值(指標) | 數字,位址顯示為 P-> | 凍結數值 | 在遊戲建立物件之前顯示 ?? |
| 腳本 | <script> | 執行 [ENABLE];取消勾選則執行 [DISABLE] | 遊戲更新後失效 |
| 群組標題 | 無,或 <script> | 取決於群組設定 | 子項目在啟用前會隱藏 |
許多修改表在最上方有一個必須先啟用的主腳本,其他項目都依賴它。有些以指標為基礎的項目要等遊戲中發生特定事件後才會有值,例如受到一次傷害或開啟背包。請閱讀項目名稱與修改表備註。
群組
作者會把項目整理成群組:一個標題項目,下面有子項目,可用旁邊的小箭頭展開與收合。群組可以只是單純的資料夾,也可以本身就是一個腳本。在項目的右鍵選單中,群組設定選項決定群組的行為,例如啟用標題時是否一併啟用子項目,以及標題關閉時是否隱藏子項目。這就是為什麼有些項目要勾選其上層後才會出現。
設定快捷鍵
快捷鍵讓你不必離開遊戲就能切換項目。在項目上按右鍵,選擇設定或變更快捷鍵的選項。在開啟的對話框中:
- 點選按鍵欄位,按下你想要的按鍵或組合鍵。
- 選擇快捷鍵的功能,例如切換項目的開與關、啟用或停用、設定數值,或增加、減少數值。
- 新增或套用快捷鍵,然後關閉對話框。
請選擇遊戲尚未使用的按鍵;數字鍵盤按鍵以及搭配 Ctrl 或 Alt 的組合都很常見。修改表內建的快捷鍵會列在同一個對話框中。如果希望下次也保留你的快捷鍵,請儲存修改表(檔案選單)。
為什麼遊戲更新後修改表會失效
當更新檔改變了遊戲的執行檔,通常會出現三種問題:
- 找不到 AOB 特徵碼。腳本會搜尋特定的位元組陣列 (AOB) 來找到它要修改的程式碼。如果更新檔改了那段程式碼,甚至只是其中的偏移量,搜尋就會失敗,Cheat Engine 會回報提到該特徵碼或其應定義之符號的錯誤。腳本因此無法啟用。
- 指標指向別處。指標路徑的基底位址或偏移量已經移動。項目會顯示
??或毫無意義的數值。 - 資料結構改變。腳本啟用時沒有錯誤,卻寫入錯誤的欄位,可能造成異常行為或當機。
請不要隨意編輯特徵碼來硬讓壞掉的修改表運作。請檢查修改表是否有更新版本,比對你的遊戲版本與支援版本,如果遊戲當機了,請先關閉遊戲並還原存檔備份再繼續。
疑難排解
- 什麼都無法啟用,錯誤提到 AOB 或符號。幾乎都是版本不符。請參閱上方章節。
- 數值顯示
??。可能是尚未附加、附加到錯誤的處理程序,或是指標還沒有被填入。請讀取存檔並玩一下。 - 處理程序錯誤。許多遊戲會使用啟動器來啟動真正的執行檔。請附加到有遊戲視窗的處理程序。如果有多個處理程序同名,通常「應用程式」分頁中有遊戲視窗的那個才是對的。
- 32 位元或 64 位元。少數遊戲會提供獨立的 32 位元與 64 位元執行檔,或針對不同圖形 API 的不同版本。為其中一個編寫的修改表無法用在另一個上。Cheat Engine 本身可處理這兩種處理程序。
- 需要以系統管理員身分執行 Cheat Engine 嗎?只在必要時。如果遊戲本身以系統管理員權限執行,Cheat Engine 需要相同的層級才能開啟它。否則請正常執行;讓修改表的腳本擁有超出必要的權限沒有任何好處。
- 勾選項目時遊戲當機。停用修改表、重新啟動遊戲,必要時還原存檔備份,並回報問題。
在哪裡回報問題
如果 Cheat-Engine.net 上的修改表無法使用,請到該修改表在 CE 修改表 (Cheat Table) 列表中的頁面回報。有用的回報包含:
- 你的遊戲版本與商店(Steam、GOG、Epic 或其他);
- 你的 Cheat Engine 版本;
- 哪個項目失敗,以及確切的錯誤訊息;
- 失敗前你做了什麼。
如果修改表含有你意料之外的內容,例如會下載檔案或執行程式的腳本,也請一併回報。這有助於讓列表對所有人都保持實用。
留言
尚無留言
成為第一個分享想法的人吧。