LOOHP / Limbo

Standalone Limbo Minecraft Server (Currently 1.21.3)
http://ci.loohpjames.com/job/Limbo/
Apache License 2.0
239 stars 29 forks source link

Some kind of issue with chunk loading #56

Open tadhunt opened 2 years ago

tadhunt commented 2 years ago

I have a .schem file with width 127 and length 113 (according to nbt.getShort("Width") and nbt.getShort("Length") in Schematic.toWorld() ).

With the default spawn point set in server.properties (world-spawn=world;20.5;17;22.5;-90;0), some parts of the map are never sent to the client, which means that they fall out of my map in those areas.

When I make no other changes except set the spawn point in server.properties to world-spawn=world;62.5;21;36.5;-45;0, then the whole map appears to be correctly transmitted to the client. (I have barrier blocks around the outer edge of my map, and have verified that everything I can get to seems to be correctly loaded as they're all showing up.).

As near as I can tell, it's some sort of chunk loading issue, but I haven't been able to figure out exactly what's wrong. I instrumented PlayerInteractManager.update() and don't see the missing chunks get loaded when the player moves, so I suspect there is an issue there somewhere, but I haven't been able to identify the root cause yet.

I'm testing with the latest master commit (e88656b1bf1eb4ff1f940a63da65ef7eb7e889a7) at the time of writing.

default world spawn (world-spawn=world;20.5;17;22.5;-90;0)

Screen Shot 2022-11-02 at 5 16 23 PM

custom world spawn (world-spawn=world;62.5;21;36.5;-45;0)

Note that this is exactly the same place the previous screen shot was taken from. The only change is the world-spawn coordinates in server.properties.

Screen Shot 2022-11-02 at 5 13 54 PM

LOOHP commented 2 years ago

I believe if a chunk is right next to the edge of the world (chunks outside of the schem) they don't render properly. You can try to see if this is the case by adding an extra empty chunk on each side of your schem.