> ## 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.

# PlayFab Online Subsystem (OSS) 專用伺服器設定

> 在 Unreal Engine 中使用 PlayFab Online Subsystem (OSS) 設定專用伺服器的步驟，包括 Party 整合和伺服器端設定。

# 快速入門指南：使用 PlayFab Online Subsystem 設定專用伺服器

本指南可協助您準備已整合 PlayFab Online Subsystem (OSS) 的遊戲，並在專用伺服器案例中加以驗證。本指南著重於使用本機裝載的專用伺服器進行驗證。

在玩家裝載的案例中，PlayFab OSS 預設會使用 PlayFab Party 通訊端進行通訊。不過，在伺服器裝載的案例中，PlayFab Party 通訊端將無法連線，遊戲需要明確呼叫 `ISocketSubsystem::Get(PLATFORM_SOCKETSUBSYSTEM)` 才能與伺服器通訊。

PlayFab OSS 會辨識用戶端何時連線到專用伺服器，並回復為使用原生 `PLATFORM_SOCKETSUBSYSTEM` 進行用戶端對伺服器的通訊。

## 先決條件

* 已整合 [PlayFab Online Subsystem](/zh-TW/services/playfab/multiplayer/networking/party-unreal-engine-oss-overview.md) 且能夠建立用戶端裝載案例的遊戲。
* 可作為遊戲連線用戶端的「用戶端」PC。
* 可作為遊戲裝載伺服器的「伺服器」PC。
  * 建議使用第二台 PC，但如果您偏好，也可以使用同一台 PC、虛擬機器執行個體或 Docker 執行個體。本快速入門指南會逐步引導您使用第二台 PC 進行設定。
  * 確定可以從第一台 PC 透過網路存取第二台 PC 的 IP 位址。

## 設定

### Unreal Engine (UE) 5 的專用伺服器設定

UE 5 [專用伺服器指南](https://docs.unrealengine.com/5.3/en-US/setting-up-dedicated-servers-in-unreal-engine/)以 UE 的 Lyra Game 作為主要範例，逐步引導您將遊戲封裝為專用伺服器。

### Unreal Engine (UE) 4 的專用伺服器設定

UE 4 [專用伺服器指南](https://docs.unrealengine.com/4.27/en-US/InteractiveExperiences/Networking/HowTo/DedicatedServers/)以 UE 的 Shooter Game 作為主要範例，逐步引導您將遊戲封裝為專用伺服器。

### 其他設定

* 設定遊戲的 `<Game>Server.Target.cs` 之後，請確定您能夠為遊戲的 `WindowsClient` 和 `WindowsServer` 版本產生二進位檔。
* 將 `<Game>Server.exe` 二進位檔從 `Binaries/Win64/` 移至第二台 PC 上的任何位置。

## 連線

### 部署伺服器

1. 在第二台 PC 上 `<Game>Server.exe` 所在的目錄中開啟終端機。

```ps theme={null}
PS  C:\WindowsServer\ >
```

2. 啟動專用伺服器。

```ps theme={null}
PS  C:\WindowsServer\ > .\<Game>Server.exe <map> -log –NOSTEAM
```

* `-NOSTEAM` 引數會停用遊戲的預設 OSS (在此例中為 OSS PlayFab)，並以 `OnlineSubsystemNull` 取代。停用預設線上子系統可確保專用伺服器一致地使用正確的子系統。
* `-log` 引數會開啟另一個視窗，即時顯示記錄的內容。
* 如需 UE CLI 引數的詳細資訊，請造訪 [Unreal Engine 的命令列引數](https://docs.unrealengine.com/4.27/en-US/ProductionPipelines/CommandLineArguments/)文件。

會出現另一個視窗，其中的 UE 記錄可確認伺服器已產生。確定記錄中包含下列幾行：

```log theme={null}
LogOnline: Warning: PLAYFAB: PlayFab API disabled!
LogOnline: Display: PLAYFAB: OnlineSubsystemPlayFab::Shutdown()
LogOnline: Verbose: PLAYFAB: FOnlineSubsystemPlayFab::CleanUpPlayFab PartyInitialized 0, LobbyInitialized 0
LogOnline: Verbose: PLAYFAB: FOnlineSubsystemPlayFab::UnregisterNetworkInitCallbacks
```

這些記錄表示 OSS PlayFab 已在專用伺服器上正確停用。

### 連線用戶端

1. 在第一台 PC 上 `<Game>Client.exe` 所在的目錄中開啟終端機。

```ps theme={null}
PS  C:\WindowsClient\ >
```

2. 啟動遊戲用戶端。

```ps theme={null}
PS C:\WindowsClient\ > .\<Game>Client.exe <ipaddress_of_server_machine>:7777 -log
```

* 專用伺服器的預設連接埠通常是 7777。如果遇到連線錯誤，請確定伺服器部署在正確的連接埠上，或變更連線命令以符合該連接埠。

遊戲用戶端會出現並連線到伺服器上啟動的遊戲。您應該會在專用伺服器的記錄視窗中看到表示用戶端已加入的記錄。


## Related topics

- [將 Linux Unreal 伺服器部署至 MPS 雲端](/zh-TW/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/setting-up-a-linux-dedicated-server-on-playfab.md)
- [GSDK 專案雲端部署](/zh-TW/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/third-person-mp-example-project-cloud-deployment.md)
- [適用於 Unreal Engine 4 和 5 的 PlayFab OnlineSubsystem 版本資訊](/zh-TW/services/playfab/multiplayer/networking/unreal-release-notes.md)
- [PlayFab for Unreal Engine 概觀](/zh-TW/services/playfab/sdks/unified-unreal/overview.md)
- [建置您的 Unreal 範例專案](/zh-TW/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/building-the-third-person-mp-example-project.md)
