金X簡介
金庸羣俠傳X是由漢家松鼠工作室製作的一款半即時半回合制戰棋單機遊戲,於2013年發行。
遊戲劇情由金庸筆下的十五部小說改編及創造,有0.1~0.7,1.0八個正式版本,並且有web版、安卓版、ios版、mod編輯器版。目前最新版本爲金庸羣俠傳X1.1.0.6。
很遺憾的是,遊戲因爲設計侵權而終止了開發,永遠的暫停在了1.1.0.6版本。
前言
本人一直很喜歡這款遊戲,也做過一些開發工作。最近在Mod交流羣裏看到斷點操作,說實話,本人不會,但是詢問的時候卻石沉大海。所以最終只能自己探索如何利用EmmyLua插件進行斷點操作,經過了一下午的實驗,終於成功了,但貌似和羣裏的實現方法不同? 我希望大家都能打破技術壁壘,互相交流。
當然,本人這麼做的原因之一其實是不想承認自己比他們差,也算是攀比吧,但不得不承認,也許我的確愚笨了一些。但是我相信,勤能補拙,所以下面直接開始教程吧。
軟件準備
-
Microsoft在2015年4月30日Build 開發者大會上正式宣佈了 Visual Studio Code 項目:一個運行於 Mac OS X、Windows和 Linux 之上的,針對於編寫現代 Web 和雲應用的跨平臺源代碼編輯器。
該編輯器支持多種語言和文件格式的編寫,截止2019年9月,已經支持瞭如下37種語言或文件:F#、HandleBars、Markdown、Python、Java、PHP、Haxe、Ruby、Sass、Rust、PowerShell、Groovy、R、Makefile、HTML、JSON、TypeScript、Batch、Visual Basic、Swift、Less、SQL、XML、Lua、Go、C++、Ini、Razor、Clojure、C#、Objective-C、CSS、JavaScript、Perl、Coffee Script、Java、Dockerfile。 -
國人弄的基於IntelliJ IDE 弄得插件 EmmyLua,現在也已經支持VsCode了。本教程使用EmmyLua進行lua調試。
文件配置
關於如何安裝VS Code此處不再贅述,EmmyLua插件請直接在VsCode的拓展管理裏下載就可以了。
這邊我們先啓動我們的金X程序(當然原理是一樣的,你調試其他程序也是一樣的),先不要加載自己的Mod,停留在下面的界面就好了。
然後我們打開我們的Lua工作目錄 (F:\遊戲\【MOD編輯器】金X 1.1.0.6\gamedata\modcache\ 這裏是你的Mod文件夾名字
\lua) 請注意,一定要打開lua這個文件夾,看到我箭頭指的地方是LUA就行。這裏我們就成功了一半了!!!
打開之後,我們先找到我們想打斷點的文件,在對應行按F9
打上斷點,這時候還不行,我們還需要一個調試機制,這時候直接按F5運行或者切換到生成運行設置文件的欄生成一個配置文件。這裏我選擇的是先生成配置文件然後再F5運行。
點擊完成之後選EmmyLua Attach Debug
理論上直接默認配置就好了,這裏把我默認生成的代碼po出來。
{
// 使用 IntelliSense 瞭解相關屬性。
// 懸停以查看現有屬性的描述。
// 欲瞭解更多信息,請訪問: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"type": "emmylua_attach",
"request": "attach",
"name": "通過進程ID附加",
"pid": 0
}
]
}
然後我們找到我們需要打斷點的文件打上斷點,然後按F5
直接運行,會讓你選擇綁定的程序,我們選擇剛剛我們打開的 【金X】 就可以執行斷點操作了。
我的斷點打在了人物開局屬性選擇那裏,所以最後會在那裏暫停,大家可以自己試驗一下。