UE5.7 Packaging Error: "World Partition reached the current limit of large world coordinates" after upgrading from UE5.3

Hi everyone,

I recently upgraded my project from UE5.3 to UE5.7, and since then I’ve been running into a reproducible issue when packaging for Windows that I haven’t been able to solve.

The project uses World Partition with Runtime Spatial Hash and a very large open‑world map. Everything worked fine in UE5.3, including packaging. After upgrading to 5.7, however, I now get the following error right at the beginning of the packaging process:

World Partition reached the current limit of large world coordinates.
Ensure condition failed: Index >= 0
(RuntimeSpatialHashGridHelper.h, Line 50)

The packaging process does continue after this message, but this error appears at the very start, which makes me think it’s the root cause of the overall problem.

To rule out migration issues, I already tried the following:

  • Created a completely new map

  • Created a new landscape

  • Manually copied all assets sector by sector into the new map

  • Performed an EditorRebase

  • Ran Validate World / Fix Issues

  • Rebuilt all HLODs

  • Resaved all actors

  • Cleared the DerivedDataCache

  • Tested migration into a fresh 5.7 project

The map is very large — according to the World Partition grid, the current extent is around 43.3 km x 43.3 km (coordinates: 4336708478122.96 x 4336708478122.96). This might be hitting the new large‑world coordinate checks in UE5.7, but I cannot find any actors outside the bounds or any negative coordinates.

I’m aware that there are also some asset‑related warnings later in the log. These are known to me, but they are not the main issue, because the World Partition error appears first, before anything else, and seems to be the underlying problem I need to solve.

My suspicion is that in UE5.7 either:

  • RuntimeSpatialHash behaves differently than in 5.3,

  • or certain World Partition data is validated differently during packaging,

  • or the new large‑world coordinate checks are stricter and causing this failure.

I’ve attached the full packaging log and callstack below.

Any help or insights on how to resolve this in UE5.7 — or whether there are known changes to RuntimeSpatialHash between 5.3 and 5.7 — would be greatly appreciated.

Thanks in advance!
Himiko

Log.txt (4.6 KB)

Those coords are 43 MILLION km in standard unreal units, not 43km. That’s nearly quarter the distance to the sun… It would take light over two minutes to travel that distance. Is this your intent? Something seems off there.

The limits of LWC are about 88M km so those coords are right at the limit.

Odd it worked before tho.

I haven’t defined that yet. Where and how can I do that?

The water volume is just 25.610325 x 27.228306

Defined what? Not sure what you’re referring to. I was pointing out the extreme size of the coords you posted.

If referring standard Unreal units, it is cm.

That’s way too big, too. My water volume is only 25.610325 x 27.228306 g. My question is just whether that’s adjustable—I didn’t set it that way.

You can adjust editor units in project settings, but if you’re making a human scale game, stick with the standard cm. It’s the sweet spot for precision. Even with LWC expect issues with physics and shaders as you move away from world center at those scales.

Theoretically, there should be no limits. In practice, this is Unreal. It’s built with ducktape. There are Low limits everywhere.

This particular issue like it was pointed out seems to be the fact you are asking the coordinate system to exceed the values you can allocate to a double (large world coordinates should be using Double by now).

There is likely no way you have a map this large. In reality, you probably moved some item by typing in the coordinates wrong and didn’t realize. If you find the item and delete it from the map or place it back at 0,0,0 you will probbaly correct the issue.

For doing that, if you have a full scene then you need to create a bluetility script that tests all objects for the location, compares ot to an accepted maximum and moves the item for you if it exceeded that position. Iterating a full scene can take hours, but it’s likely faster than you searching if you have no idea what it is or where.

The old world composition system could actually have helped here. The mini-map would expand in the direction of the object giving you some idea of where to look.

Don’t discount things like lights, or other editor stuff that got randomly dragged in.

A less sensible option would be to start from scratch in a new copy of the project, and copy/paste items into the new level after selecting them from the pie view window. It will obviously omit the problematic object(s), but it will also require re-doing all the level settings and light etc.

1 Like