> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 連線至雲端裝載的 Unreal 伺服器

> 使用略過標準配置的開發公用程式，將 Unreal Engine 用戶端連線至 PlayFab 多人遊戲伺服器 (MPS) 裝載的專用伺服器組建。

# 連線至 MPS 裝載的組建

本文說明如何使用公用程式工具，將用戶端連線至 PlayFab 多人遊戲伺服器 (MPS) 裝載的伺服器。此工具在開發期間用來略過佈建和啟用伺服器的一般步驟。此範例系列中的先前步驟涵蓋了將 Unreal GSDK 新增至標準 ThirdPersonMP 教學課程專案。在此過程中，我們設定了伺服器連線端，但忽略了正確的用戶端連線順序。PlayFab 要求伺服器必須先經過佈建和啟用，用戶端才能連線。我們不會在此說明該程序，但 [MPS 文件](/zh-TW/services/playfab/multiplayer/servers/connecting-clients-to-game-servers)中提供了更多詳細資料。在此範例中，我們將略過這些複雜的步驟，改用手動公用程式快速測試用戶端與伺服器之間的連線。

## 先決條件

* 複製或下載 [MpsSamples 存放庫](https://github.com/PlayFab/MpsSamples)
* 處於 "Deployed" 狀態的完整部署 ThirdPersonMP 伺服器，且至少有一部伺服器已完全準備並處於 "Standby" 模式
  * ThirdPersonMP 是在本指南先前頁面中[建置](/zh-TW/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/building-the-third-person-mp-example-project)和[部署](/zh-TW/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/third-person-mp-example-project-cloud-deployment)的範例專案。
  * 當組建包含已準備好接受連線的伺服器時，其狀態會變為 "Deployed"。這些伺服器被視為處於 "Standby"
* 已準備好連線的[已建置遊戲用戶端](/zh-TW/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/building-the-third-person-mp-example-project)
* 具有 .NET Core 3.1 的 Visual Studio (在 Visual Studio 安裝程式中為選擇性核取方塊)

## 如何自動將用戶端連線至伺服器

您建置的遊戲用戶端可能是 **ThirdPersonMP.exe**，且位於您的專案中或附近。如果您未使用 ThirdPersonMP 作為起始範本，則您建置的遊戲用戶端將是 **\{YourProjectName}.exe**，同樣位於您的 Unreal 專案中或附近。請找到此檔案。

* 找到 `ThirdPersonMP.exe`
* 在其旁邊建立新檔案 `RunCloud.bat`
* 在您選擇的文字編輯器中開啟此檔案，並設定下列內容：

```Batch theme={null}
ThirdPersonMP {IP-ADDRESS}:{PORT} -log
```

注意：如有必要，請將 `ThirdPersonMP` 取代為您的專案名稱。

* 目前我們還不知道 IP-ADDRESS 或 PORT，因此只需儲存，並保持編輯器開啟。
* 找到檔案 `{MpsSamples Repo}/MpsAllocatorSample/MpsAllocatorSample.csproj`
* 在 Visual Studio 中開啟此檔案
* 執行此程式
* 依照螢幕上的指示，並在出現提示時輸入下列值：
  * \{您的 PlayFab TitleId}
  * \{您 PlayFab 遊戲的任何有效且作用中的秘密金鑰}
  * 選擇 **1** 以執行 **RequestMultiplayerServer**
  * 輸入您要測試之 **Deployed** 狀態伺服器組建的 \{BuildId}
    * 這可以在所有組建清單中的名稱旁、特定組建的 **Details** 索引標籤中，或任何組建特定頁面的 URL 中找到
  * 如果您定義了多個區域，系統會提示您選取一個。否則，如果只有一個可用區域，會自動選取。
  * 對於玩家識別碼，您可以輸入真實或虛構的十六進位數字值
    * 對於依照 ThirdPersonMP 設定的使用者，您可以選擇任何十六進位數字，例如 1337、abc123 等。
    * 至少輸入一個數字，然後再按一次 Enter 以完成
* 您應該會收到類似下列的回應：

```json theme={null}
{
  "ConnectedPlayers": [],
  "FQDN": "...",
  "IPV4Address": "52.180.68.101",
  "LastStateTransitionTime": "2021-12-06T22:12:46.212Z",
  "Ports": [
    {
      "Name": "gameport",
      "Num": 30000,
      "Protocol": "UDP"
    }
  ],
  "Region": "WestUs",
  "ServerId": "...",
  "SessionId": "...",
  "State": "Active",
  "VmId": "..."
}
```

* 注意：與此範例無關的值已以 `...` 取代
* 在回應中尋找 **IPV4Address** 和 **Ports.Num**
  * 在上述範例中，這些值分別為：`52.180.68.101` 和 `30000`
  * 您的值可能/將會不同
* 返回您的 `RunCloud.bat` 檔案，並為 IP-ADDRESS 和 PORT 填入這些值。範例：

```Batch theme={null}
ThirdPersonMP 52.180.68.101:30000 -log
```

* 從 Windows 檔案總管中，按兩下此 .bat 檔案以執行遊戲用戶端，稍待片刻，然後再按兩下一次
* 這應該會啟動兩個遊戲用戶端執行個體，兩者都連線至您雲端裝載的遊戲伺服器
* 從這裡，您可以在兩個遊戲中四處移動，並應該會看到兩位使用者的移動和動作都反映在兩位玩家的兩個遊戲用戶端中
  * 成功！如果您看到這種情況，表示您已完成完整的設定/建置/部署/連線程序

## 瀏覽

對於某些使用者而言，本指南系列到此結束。您可以返回主要的 [Unreal GSDK 外掛程式](/zh-TW/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk)指南。

如果您的測試是在 Windows 伺服器上執行，則可以嘗試更進階的 [Linux 伺服器](/zh-TW/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/setting-up-a-linux-dedicated-server-on-playfab)部署指南。


## Related topics

- [將用戶端連線至遊戲伺服器](/zh-TW/services/playfab/multiplayer/servers/connecting-clients-to-game-servers.md)
- [使用 PlayFab 多人遊戲伺服器裝載多人遊戲](/zh-TW/services/playfab/multiplayer/servers/using-playfab-servers-to-host-games.md)
- [PlayFab Online Subsystem (OSS) 專用伺服器設定](/zh-TW/services/playfab/multiplayer/networking/party-unreal-engine-oss-dedicated-servers.md)
- [GSDK 專案雲端部署](/zh-TW/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/third-person-mp-example-project-cloud-deployment.md)
- [將 Linux Unreal 伺服器部署至 MPS 雲端](/zh-TW/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/setting-up-a-linux-dedicated-server-on-playfab.md)
