PIE Client Fails to Connect to Remote Dedicated Server (MissingLevelPackage)

ISSUE: PIE client cannot stay connected to a remote Dedicated Server. The server closes the connection with CloseReason=MissingLevelPackage referencing a PIE temporary world name.

ENVIRONMENT

- Unreal Engine: 5.5.4 (source build)

- Project: Multiplayer project using World Partition

- Client: PIE (Play-In-Editor), single client

- Server: Packaged Dedicated Server (Development), running on LAN/public network

- Online Subsystem: OSSv2 + EOS (Device ID login)

STEPS TO REPRODUCE

1. Launch DS:

MyGameServer.exe /Game/Maps/Main?listen -log

(Server log shows the map loaded and World Partition initialized.)

2. In the Editor, open the same map and start PIE.

3. In the PIE console, run:

open 192.168.X.X:7777

(Alternatively in code: GetWorld()->GetFirstPlayerController()->ClientTravel(TEXT(“192.168.X.X:7777”), TRAVEL_Absolute):wink:

ACTUAL BEHAVIOR

- Client attempts to connect but is disconnected by the server within a few seconds.

- DS log contains:

LogNet: Close: Reason=MissingLevelPackage, Context: /Memory/UEDPIE_0_Main.Main:PersistentLevel

- Client falls back to the entry map:

Browse: /Game/Maps/Entrance?closed

- Using a packaged client (non-PIE) to the same DS works as expected.

ADDITIONAL OBSERVATIONS

- Client log shows its world is /Memory/UEDPIE_0_Main.Main (PIE temporary world).

- World Partition external actors and data layers are saved and included in the packaged build.

EXPECTED BEHAVIOR

- A PIE client should be able to connect to a remote Dedicated Server similarly to a packaged client, or at least provide a clear error instead of being rejected due to temporary package names.

HYPOTHESIS

- PIEInstanceID / temporary package names used in PIE do not match the DS MapPackageName and cause MissingLevelPackage.

- World Partition runtime level or ActorFolder references may differ in PIE and be considered invalid by the server.

REFERENCES

- UE Forums: Using PIE to connect to Dedicated Server running World Partition crashes

Using PIE to connect to Dedicated Server running World Partition crashes

- Epic Docs: Play in Editor Multiplayer Options

https://dev.epicgames.com/documentation/en\-us/unreal\-engine/play\-in\-editor\-multiplayer\-options\-in\-unreal\-engine

QUESTIONS FOR EPIC

- Is PIE → remote Dedicated Server officially supported in UE 5.5+?

- If supported, are there recommended practices (e.g., prefer Standalone Game over PIE)?

- Any known fixes/CLs for PIE + World Partition + Dedicated Server interoperability?

- Recommended workarounds:

* Map PIE temporary package names to the real map package name when syncing?

* CVar/Editor setting to avoid temporary package names in replication?

* Force a PackageMap refresh before travel?

重现步骤

ENVIRONMENT

- Unreal Engine: 5.5.4 (source build)

- Project: Multiplayer project using World Partition

- Client: PIE (Play-In-Editor), single client

- Server: Packaged Dedicated Server (Development), running on LAN/public network

- Online Subsystem: OSSv2 + EOS (Device ID login)

STEPS TO REPRODUCE

1. Launch DS:

MyGameServer.exe /Game/Maps/Main?listen -log

(Server log shows the map loaded and World Partition initialized.)

2. In the Editor, open the same map and start PIE.

3. In the PIE console, run:

open 192.168.X.X:7777

(Alternatively in code: GetWorld()->GetFirstPlayerController()->ClientTravel(TEXT(“192.168.X.X:7777”), TRAVEL_Absolute):wink:

Hi,

It is not a supported operation to connect an editor client/server instance (either PIE or standalone) to a packaged server/client instance. There are a number of differences between a packaged and editor instance that can cause networking issues, such as differing package names (as noted here) and layouts of classes being different.

I have opened an internal task to improve the error messaging when this occurs, so that this limitation is more clear in the future.

Thanks,

Alex