常見問題
遊戲不理我的鼠標和鍵盤
模塊在實例的 mods\ 目錄裡,常常是測試框架留下的副本:遊戲於是無頭運行,只顯示在管理窗口裡。在管理窗口裡關掉它,
然後刪掉 mods\BeDD。測試框架會在 finally 裡調用 Uninstall-BeDDMod,
並在"把其他模組挪開"那一步跳過 BeDD,以免出現這種情況。
多開時報"發生錯誤"(代碼 "Blaze")
同一臺電腦上的遊戲共用一個聯機登錄,多個多人存檔同時打開會失敗。用 Set-WorldSinglePlayer <存档目录> 把測試存檔設成單人。
必須在線加入服務器的測試,在 Start-Game 之前設 $script:ExclusiveSignaling = $true,等其他遊戲關掉後獨佔整臺電腦。
見並行測試的規矩。
遊戲用了我平時的 Minecraft 存檔和設置
只有以 Minecraft.Windows.exe 啟動、且 exe 裡有 LeviLauncher 的加載器時,遊戲才用實例自己的數據。用
Start-BeDDGame.ps1 啟動就兩者都滿足:準備步驟會通過 LeviLauncher 啟動一次實例來加上加載器。
每個新實例都彈 Windows 防火牆提示
loopbackOnly(默認打開)時遊戲只在本機通信,不會彈提示。測試框架自己啟動的專用服務器每個服務器目錄還是會問一次,點取消即可。
啟動遊戲時閃一下控制台窗口
那是 LeviLamina 的 CrashLogger.exe。Install-BeDDMod 和 Start-BeDDGame.ps1 會把實例切到內置崩潰記錄器;
其他方式準備的實例,在 mods\LeviLamina\config\Config.json 裡設 modules.crashLogger.builtin。
我關掉了別人的遊戲
按實例目錄找自己的遊戲,別隻看進程名 Minecraft.Windows;每個實例用自己的鎖文件。
關掉管理窗口,所有遊戲都關了
它就是這樣設計的(會先確認):電腦上所有測試的遊戲都在裡面,而遊戲從不脫離管理窗口運行。
遊戲啟動時自己關掉了
90 秒內沒有管理窗口連上它(或者它失去了管理窗口),所以它關掉了;原因寫在它的 logs\latest.log 裡。沒有管理窗口時,
遊戲用配置裡的 managerScript 啟動一個:檢查路徑是否正確(Install-BeDDMod 會寫),以及是否裝了 PowerShell 7(pwsh)。
管理窗口自己的日誌在 %LOCALAPPDATA%\BeDD\manager.log。
Set-BeDDLook 超時,或暫停後遊戲操作沒反應
暫停的單人世界不走遊戲刻,而 look、slot、action 和 button 都在客戶端遊戲刻裡執行。在單人世界
Invoke-BeDDAction pause 之後,用 Send-BeDDKey ESC 恢復。
某個操作返回 code:"disabled"
這個操作需要打開配置項:gameHooks、tap、allowSend 或 allowStack(配置)。
當前版本沒有的操作返回 unknown op。
報告 bug
在 GitHub 開 issue,附上:
- Be.D.D.、LeviLamina 和 Minecraft 的版本;
- 腳本發了什麼(JSON 請求或 PowerShell 調用),遊戲實際做了什麼;
mods/BeDD/config/config.json;logs/latest.log的相關部分,最好打開"trace": true(它顯示哪些輸入到達了遊戲,以及是合成的還是真實的)。