跳轉到主要內容

在雲端部署並執行 Windows 伺服器

本指南說明如何將 Windows 伺服器組建部署至 PlayFab 多人遊戲伺服器 (MPS) 雲端。這非常適合在開發期間測試和快速反覆修改您的遊戲伺服器。許多使用者在使用 Windows 測試後,會使用 Linux 伺服器進行生產發行。

目標

  • 將專案部署至雲端。
  • 從本機遊戲用戶端連線至該專案

需求

指示

封裝遊戲伺服器

  • [選用] 可以執行本節來重新整理 Unreal 建置至專案中的檔案。如果您最近建立或刪除了檔案,這會很有用。
    • 如果您最近沒有以 “development editor” 設定建置專案,請立即執行
    • 關閉 Visual Studio
    • 瀏覽至專案的 {ProjectName}.uproject 檔案
    • 在檔案編輯器中以滑鼠右鍵按一下 {ProjectName}.uproject 檔案,然後選取 “Generate Visual Studio Project Files”
    • 在 Visual Studio 中重新開啟 {ProjectName}.sln 檔案
  • 選取 Development Editor 設定
  • 執行您的專案
  • 觀察 Unreal Editor,它應該已載入您的專案
  • 在 Unreal 編輯器功能表的左上角,選取 File -> Package -> Build Target -> {ProjectName}Server
  • 選取 File -> Package -> Build Configuration -> Shipping
  • 選取 File -> Package -> Windowsx64
  • 選取並記住輸出位置 {ShippingServerFolder}
  • 您現在可以使用此封裝版本的遊戲伺服器以 LocalMultiplayerAgent 進行測試
  • 使用 LocalMultiplayerAgent 驗證後,請參閱建立組建指南
    • 此時在 MPS 上測試需要 PlayFab MpsAllocatorSample 的中繼工具
    • 此工具暫時略過一些用戶端工作,並讓我們能夠在沒有遊戲用戶端直接要求的情況下配置伺服器
    • 在用戶端上執行此操作的正確方式是另一個主題,涵蓋於配置指南中。
  • 將上方 {ShippingServerFolder} 中的發行伺服器組建壓縮成 zip
    • 您的 zip 應包含 {ShippingServerFolder} 中的所有內容,可以選擇放在 zip 檔案的根目錄
    • [選用] 也就是說,zip 的根目錄應包含 {ProjectName}Server.exe (建議 exe 不要位於 “WindowsServer” 之類的子資料夾中。如有需要,請重新建置 zip)
  • 熟悉組建建立程序指南
  • 特定設定的具體詳細資料如下所述:

在 PlayFab 上設定 Windows 專用伺服器

本節將涵蓋在 PlayFab MPS 中建立組建、上傳您的遊戲伺服器,以及第一次連線至該伺服器。您也可以依照核心 MPS 伺服器建立指南取得較不針對 Unreal 的指示。
  • 瀏覽至 Game Manager -> Multiplayer
  • 選取 New Build
  • 為組建命名
  • 選取虛擬機器 (對於這些指南中所述的範例,核心數最少的建議選項就足夠了)
  • 每部電腦的伺服器數大約可以是 1~10
    • 改善/提高此數字取決於您遊戲伺服器的效能
    • 您可以使用 VM 計量測量遊戲伺服器的效能,並進行最佳化以提高此數字
  • 暫時略過 Server details (在下一個步驟中說明)
  • 在 Assets 區塊中,將上一節的 zip 檔案拖曳至上傳方塊中
    • 如果您是重新推出,可以選取 Use existing assets
  • 等待上傳完成
  • 暫時略過 Start Command (在下一個步驟中說明)
  • 在 Network 區塊中,將 Port Name 欄位設定為 gameport
    • 必須定義將用來連線至遊戲伺服器的連接埠
    • Unreal GSDK 包含自動讀取此連接埠的程式碼,並會根據此值在內部覆寫 Unreal Server 主機連接埠
    • 此連接埠的名稱必須是 gameport
  • 繼續前往符合您要設定之 “Server Details” 的下一個步驟

選項 1:Windows 處理序模式

此選項會直接在 VM 上以處理序的形式執行您的遊戲伺服器。您的處理序將共用整部電腦的存取權,包括連接埠、磁碟機等。此選項會解壓縮您上傳的資產,並以解壓縮檔案的位置作為工作目錄來執行 “Start Command”。
  • 在 Server Details 中,選取 Process 和 Windows
  • 在 Assets 中,將啟動命令設定為:
    • {ProjectName}Server.exe,如果您想要產生記錄檔,則設定為 {ProjectName}Server.exe -log
    • 啟動命令會從命令列執行,並使用解壓縮的資產檔案作為工作目錄
    • 如果您選擇以子資料夾封裝 zip 檔案,可以指定相對路徑,例如:WindowsServer/{ProjectName}Server.exe,以透過相對子路徑存取您的專案
  • 選取 Add Build
  • 跳至下方的 Configure Regions 一節

選項 2:Windows 容器模式

此選項會在 docker 容器中執行您的遊戲伺服器,使它們彼此隔離。每個伺服器處理序都將擁有個別的虛擬磁碟機、虛擬網路連接埠等。此選項會將您的資產解壓縮至您定義的掛接路徑,並預期您的啟動命令是根據掛接路徑的完整路徑。 先決條件需求:設定 Docker 以執行 Windows 容器
  • 在 Server Details 中,選取 Process 和 Windows
  • 在 Assets 中
    • 將 gameServer zip 檔案的 Mount Path 設定為 C:\assets (或類似的路徑,以 {MountPath} 表示)
    • 將啟動命令設定為:{MountPath}\{ProjectName}Server.exe,如果您想要產生記錄檔,則設定為 {MountPath}\{ProjectName}Server.exe -log
    • 啟動命令應代表容器中 -Server.exe 檔案的完整路徑
    • 如果您選擇以子資料夾封裝 zip 檔案,可以指定絕對路徑,例如:{MountPath}\WindowsServer\{ProjectName}Server.exe,以透過絕對子路徑存取您的專案
  • 選取 Add Build
  • 跳至下方的 Configure Regions 一節

後續步驟

許多使用者會想要透過連線遊戲用戶端來測試他們的伺服器。 其他使用者可以選擇繼續使用 Linux 容器重新建置和重新部署伺服器。Linux 可降低大規模部署的伺服器裝載成本。 否則,您可以返回主要的 Unreal GSDK 外掛程式指南。
最後修改於 2026年10月8日