跳到正文
本頁目錄

多開

每個遊戲有自己的克隆(約 90 MB,幾秒鐘)和 WebSocket;需要服務器的運行各自啟動一個。

powershell
BeDD.exe launch --slot 2 --json
BeDD.exe launch --slot 3 --json
BeDD.exe ps

槽位和克隆

N 號槽位就是克隆 <gameVersion>-<N>(克隆);1 號槽位也是,基礎實例從不運行。沒有上限。 每個並行運行(worktree、CI 任務)用自己的槽位:同一槽位意味著共用一個克隆及其存檔。

並行測試的規矩

  • 按實例找自己的遊戲(ps --json、run\<pid>.json),從不按進程名 Minecraft.Windows;用 BeDD.exe stop <pid> 關閉。
  • 只用 BeDD.exe launch 啟動遊戲(否則會用你平時的配置文件數據)。
  • 恢復測試存檔後運行 BeDD.exe world singleplayer <worldDir>:遊戲共用一個聯機登錄,同時打開多個多人存檔會報 "Blaze"。
  • 在線加入服務器的運行用 launch --exclusive-signaling:每個遊戲在整個生命期內共享持有信令鎖(locks);帶此參數的遊戲 等其他遊戲都關掉後獨佔它。鎖由遊戲進程持有,腳本崩潰不會洩漏它。

管理窗口

遊戲只顯示在管理窗口裡:在屏幕外,沒有任務欄按鈕,不在 Alt+Tab 裡;管理窗口從不搶焦點。雙擊 BeDD.exe,或由 launch 打開;之後的運行復用它。

看標題欄:只有終端是激活的

  • 每個遊戲:實時畫面、--label、實例、pid、輸入活動。雙擊標題欄:只看它。右鍵:控制它、播放它的聲音、關閉、 打開 latest.log 或實例目錄、複製 WebSocket URL。
  • 單擊遊戲畫面即可控制它,像虛擬機一樣:鍵盤、鼠標、滾輪和視角都交給這個遊戲;指針限制在畫面內;Windows 鍵和 Alt+Tab 也交給遊戲。按 Ctrl+左 Alt 釋放(AltGr 照常輸入),切換到別的窗口也會釋放。控制期間 Alt+F4 無效。
  • 在本機播放它的聲音(右鍵):這個遊戲的聲音從揚聲器播放,直到取消勾選或關閉窗口。其餘時間遊戲都是靜音的。
  • 關掉它(先確認)或強制結束它會關掉所有遊戲。
  • 命令行:BeDD.exe ps、stop <pid>、manager status、manager stop(不確認,全部關閉)。

30 秒內沒有管理窗口接管或失去管理窗口的遊戲會關閉(原因寫在 latest.log)。無頭 CI:配置 manager=false(配置);遊戲保持隱藏、從不自行關閉;用 BeDD.exe stop。