戰(zhàn):從 PCK / APK 把 Godot 項(xiàng)目源碼完整救回來(快速上手))
GDRE 實(shí)戰(zhàn)從 PCK / APK 把 Godot 項(xiàng)目源碼完整救回來快速上手【免費(fèi)下載鏈接】gdsdecompGodot reverse engineering tools項(xiàng)目地址: https://gitcode.com/GitHub_Trending/gd/gdsdecompGDREGodot Reverse Engineering Tools是一款 Godot 逆向工具能從 PCK、APK、EXE 這類打包文件里把工程源碼和資源完整恢復(fù)出來。如果你手頭的源碼丟了、只剩打包好的游戲它能幫你找回場(chǎng)景、腳本和素材適合需要修復(fù)、分析或遷移 Godot 項(xiàng)目的開發(fā)者和學(xué)生。它都能做哪些事恢復(fù)完整工程從 APK / PCK / EXE 載入資源反編譯全部 GDScript 腳本重建工程文件批量把 GDScript 字節(jié)碼腳本編譯后的中間格式反編譯回可讀源碼把二進(jìn)制資源轉(zhuǎn)回文本格式并把導(dǎo)入過的資源還原成原始導(dǎo)入格式重建插件配置文件支持給現(xiàn)有 PCK 打補(bǔ)丁、從目錄新建 PCK處理加密工程支持 64 位十六進(jìn)制密鑰解密也可加載自定義解密腳本什么處境會(huì)需要它原始工程目錄找不到了只剩打包好的 APK 或 EXE想把項(xiàng)目救回來繼續(xù)開發(fā)老師手里只有學(xué)生交上來的作業(yè) PCK想看看游戲邏輯具體是怎么寫的項(xiàng)目是 2.x / 3.x 的舊工程想先恢復(fù)源碼再遷移到新版引擎快速上手圖形界面 3 步恢復(fù)源碼先裝好帶 GDRE 模塊的 Godot 編輯器從 Release 下載或自行編譯在 RE Tools 菜單打開 Recover project...也可以直接把 PCK / EXE 拖進(jìn)窗口在恢復(fù)對(duì)話框里確認(rèn)檢測(cè)到的 Godot 版本指定輸出目錄點(diǎn) Extract等進(jìn)度走完輸出目錄里就是恢復(fù)好的工程習(xí)慣命令行的話最常用的一條是在系統(tǒng)終端中運(yùn)行Windows / macOS / Linux 均可gdre_tools --headless --recovergame.pck --outputrecovered_dir加密工程則同樣在終端運(yùn)行加上密鑰和強(qiáng)制字節(jié)碼版本gdre_tools --headless --recovergame.pck --key0001020304050607... --force-bytecode-version4.3.0 --outputrecovered_dir卡住了加密、版本識(shí)別、路徑錯(cuò)亂怎么排查解密失敗如果日志報(bào)解密錯(cuò)誤先核對(duì)密鑰是否為完整的 64 位十六進(jìn)制串用--keyKEY重新傳入如果游戲用了非標(biāo)準(zhǔn)加密算法不是 Godot 默認(rèn)的 AES-256-CFB就寫一個(gè)繼承CustomDecryptor的 GDScript通過--custom-decryption-script傳入寫法參考 docs/custom_decryptors.md版本識(shí)別失敗如果恢復(fù)日志判斷不出腳本對(duì)應(yīng)的字節(jié)碼版本就用--force-bytecode-version4.3.0手動(dòng)指定跑一下gdre_tools --headless --list-bytecode-versions可以看到全部支持的版本列表資源路徑錯(cuò)亂如果只想恢復(fù)部分文件用--include/--exclude加通配符過濾例如--includeres://**/*.gdc如果腳本里引用的資源加載不出來先檢查是不是沒用對(duì)應(yīng)版本的引擎恢復(fù)日志會(huì)寫明檢測(cè)到的版本換對(duì)應(yīng)版本重新打開工程恢復(fù)后怎么驗(yàn)打開恢復(fù)日志核對(duì)檢測(cè)到的版本與原工程編譯版本是否一致順帶看每類文件的處理狀態(tài)用對(duì)應(yīng)版本的 Godot 編輯器打開恢復(fù)目錄確認(rèn)場(chǎng)景能打開、沒有紅色報(bào)錯(cuò)把項(xiàng)目跑一遍走通核心流程確認(rèn)關(guān)鍵腳本的邏輯完整收尾做完這幾步工程就能重新打開恢復(fù)出的 .gd 和場(chǎng)景文件可以直接在編輯器里繼續(xù)改。各版本字節(jié)碼與引擎版本的對(duì)應(yīng)關(guān)系可查 BYTECODE_HISTORY.md。幾條實(shí)用提醒編輯恢復(fù)的工程時(shí)用和原游戲編譯時(shí)相同版本的 Godot恢復(fù)日志里記錄了檢測(cè)到的版本2.x 模型和 GDNative / GDExtension 腳本暫不支持轉(zhuǎn)換這兩部分需要手動(dòng)處理自定義解密腳本里別把密鑰寫死隨腳本分發(fā)密鑰有版權(quán)風(fēng)險(xiǎn)【免費(fèi)下載鏈接】gdsdecompGodot reverse engineering tools項(xiàng)目地址: https://gitcode.com/GitHub_Trending/gd/gdsdecomp創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考