幻獸帕魯 - 魔法獸怪物的弓箭傷害
在這段提供的CE腳本中,我們可以看到一個有關遊戲"Palworld 幻獸帕魯"的作弊表(Cheat Table)的描述。其中,描述了一個名為"Bullet damage"的作弊項,用於修改遊戲中的弓箭傷害。
以下是對這段程式碼的詳細解釋:
CE腳本
所有站內附件皆會附上安全掃描報告 請會員查看純淨度百分比後判斷使用
相關檔案須知: 取得檔案前,請先詳細閱讀文章內容 避免不必要錯誤與誤會發生。 也可多參考文章討論樓層內容 了解附件檔案相關討論資訊。
- 1. `<CheatTable>` - 這是XML檔案的根元素,它標識了這個文件是一個作弊表。
- 2. `<CheatEntries>` - 這是作弊表的條目列表。
- 3. `<CheatEntry>` - 這是一個作弊項的開始標記。
- 4. `<ID>53</ID>` - 這個作弊項的唯一識別碼,用於在作弊表中區分不同的項目。
- 5. `<Description>"Bullet damage"</Description>` - 這是作弊項的描述,它指示了這個作弊項的功能,即修改弓箭的傷害值。
- 6. `<VariableType>Auto Assembler Script</VariableType>` - 這個作弊項的變數類型,它指定了這個作弊項使用的指令碼類型,這裡是"Auto Assembler Script",用於修改遊戲記憶體。
- 7. `<AssemblerScript>` - 這是作弊項的實際指令碼部分,包含了具體的操作步驟和程式碼。
- - `[ENABLE]` - 啟用部分,指示開始執行下面的指令碼。
- - `aobscanmodule(INJECT,Palworld-Win64-Shipping.exe,89 91 B4 02 00 00 C3)` - 這行程式碼用於掃描遊戲處理程序中的指定記憶體地址,以尋找特定的位元組序列(0x89 0x91 0xB4 0x02 0x00 0x00 0xC3)。
- - `alloc(newmem,$1000,INJECT)` - 分配一塊新的記憶體空間($1000位元組),用於儲存修改後的程式碼。
- - `label(code)` 和 `label(return)` - 定義了兩個標籤,用於在指令碼中跳轉。
- - `newmem:` - 新記憶體塊的開始標記。
- - `code:` - 用於修改遊戲記憶體的程式碼段。
- - `mov edx,(int)10000` - 將暫存器edx設定為10000,這是新的傷害值。
- - `mov [rcx+Palworld-Win64-Shipping.Chaos::GThreadLockCheckData+14],edx` - 將新的傷害值寫入遊戲記憶體的指定地址。
- - `jmp return` - 跳轉到標籤"return",繼續執行下面的程式碼。
- - `INJECT:` - 標記作弊項的位置,用於後續的停用操作。
- - `jmp newmem` - 跳轉到新記憶體塊的程式碼段。
- - `nop` - 插入一個nop(空操作)指令。
- - `return:` - 標記返回點。
- - `registersymbol(INJECT)` - 註冊作弊項,以便在作弊表中顯示。
- - `[DISABLE]` - 停用部分,指示停止執行下面的指令碼。
- - `INJECT:` - 標記作弊項的位置,用於停用操作。
- - `db 89 91 B4 02 00 00` - 恢復原始的遊戲記憶體內容。
- - `unregistersymbol(INJECT)` - 註銷作弊項,以便在作弊表中移除。
- - `dealloc(newmem)` - 釋放分配的新記憶體空間。
複製代碼 這段XML程式碼實際上是一個用於修改遊戲記憶體以提高弓箭傷害的作弊指令碼。當啟用作弊項時,它會在遊戲處理程序中尋找指定的記憶體地址,並將傷害值修改為10000。當停用作弊項時,它會恢復原始的遊戲記憶體內容,以保持遊戲的平衡性。這種作弊指令碼通常用於自訂遊戲體驗,但也可能違反遊戲的使用規定。
|