Mojira Archive
MC-213713

Client always see overworld worldborder, even if its set differently in other dimmensions

Hello

So, we have a worldborder set command in vanilla, that should work per-dimmension.
And it works. Sorta. 
The problem is, that the server-side border process border normally. Spawns mobs etc. But the client still sees the border, that is set in overworld.

For example: If you set border value to 8000 in overworld and 10000 in the end, you will still see in the end the border at around -4000, but also, you can see, that behind the border endermans spawns. You can glitch thru border via ender pearl and move freely without taking damage, until you get to -5000.

We think its something with this code:

   public void sendWorldInfo(ServerPlayerEntity player, ServerWorld world) {
      WorldBorder worldBorder = this.server.getOverworld().getWorldBorder();
      player.networkHandler.sendPacket(new WorldBorderS2CPacket(worldBorder, WorldBorderS2CPacket.Type.INITIALIZE));
      player.networkHandler.sendPacket(new WorldTimeUpdateS2CPacket(world.getTime(), world.getTimeOfDay(), world.getGameRules().getBoolean(GameRules.DO_DAYLIGHT_CYCLE)));
      player.networkHandler.sendPacket(new PlayerSpawnPositionS2CPacket(world.getSpawnPos(), world.getSpawnAngle()));
      if (world.isRaining()) {
         player.networkHandler.sendPacket(new GameStateChangeS2CPacket(GameStateChangeS2CPacket.RAIN_STARTED, 0.0F));
         player.networkHandler.sendPacket(new GameStateChangeS2CPacket(GameStateChangeS2CPacket.RAIN_GRADIENT_CHANGED, world.getRainGradient(1.0F)));
         player.networkHandler.sendPacket(new GameStateChangeS2CPacket(GameStateChangeS2CPacket.THUNDER_GRADIENT_CHANGED, world.getThunderGradient(1.0F)));
      }

   }

We hope Mojang will take a look at this, as we wanted to limit the overworld in 1.16, so we dont have massive map before 1.17 update.

Have a nice day

Duplicate

Zdeněk Pala

2021-02-03, 12:22 PM

2021-03-23, 11:40 AM

2021-02-03, 03:16 PM

0

2

Unconfirmed

(Unassigned)

1.16.5

-