From 8d107e3441f13b366cb131b4326c00696b9b2c5b Mon Sep 17 00:00:00 2001 From: Leonn170709 Date: Mon, 19 Jan 2026 23:35:04 +0100 Subject: [PATCH 1/4] Update HighwayBuilder.java Add checks for incompatible active modules and added errors that will be shown --- .../meteorclient/systems/modules/world/HighwayBuilder.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java b/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java index 9a82372443..37dc5726ff 100644 --- a/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java +++ b/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java @@ -19,6 +19,7 @@ import meteordevelopment.meteorclient.systems.modules.Module; import meteordevelopment.meteorclient.systems.modules.Modules; import meteordevelopment.meteorclient.systems.modules.combat.KillAura; +import meteordevelopment.meteorclient.systems.modules.movement.speed.Speed; import meteordevelopment.meteorclient.systems.modules.player.*; import meteordevelopment.meteorclient.utils.Utils; import meteordevelopment.meteorclient.utils.entity.SortPriority; @@ -497,8 +498,12 @@ public void onActivate() { if (blocksPerTick.get() > 1 && rotation.get().mine) warning("With rotations enabled, you can break at most 1 block per tick."); if (placementsPerTick.get() > 1 && rotation.get().place) warning("With rotations enabled, you can place at most 1 block per tick."); - + //all modules that may cause error now print errors if (Modules.get().get(InstantRebreak.class).isActive()) warning("It's recommended to disable the Instant Rebreak module and instead use the 'instantly-rebreak-echests' setting to avoid errors."); + if (Modules.get().get(SpeedMine.class).isActive()) warning("It's recommended to disable the Speedmine module and instead use the 'fast-break' setting to avoid errors."); + if (Modules.get().get(Speed.class).isActive() && dir.diagonal) warning("It's recommended to disable the Speed module to avoid missalignment on diagonals."); + if (Modules.get().get(Timer.class).isActive() && dir.diagonal) warning("It's recommended to disable the Timer module to avoid missalignment on diagonals."); + if (Modules.get().get(NoGhostBlocks.class).isActive()) warning("It's recommended to disable the NoGhostBlocks module to avoid errors."); } @Override From f47079b2b9ed3676d5483627f786715264973060 Mon Sep 17 00:00:00 2001 From: Leonn170709 Date: Tue, 20 Jan 2026 19:28:50 +0100 Subject: [PATCH 2/4] Made the warning more clearer --- .../systems/modules/world/HighwayBuilder.java | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java b/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java index 37dc5726ff..a2066a29b0 100644 --- a/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java +++ b/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java @@ -498,12 +498,13 @@ public void onActivate() { if (blocksPerTick.get() > 1 && rotation.get().mine) warning("With rotations enabled, you can break at most 1 block per tick."); if (placementsPerTick.get() > 1 && rotation.get().place) warning("With rotations enabled, you can place at most 1 block per tick."); - //all modules that may cause error now print errors + //all modules that may cause error now print errors/warnings if (Modules.get().get(InstantRebreak.class).isActive()) warning("It's recommended to disable the Instant Rebreak module and instead use the 'instantly-rebreak-echests' setting to avoid errors."); if (Modules.get().get(SpeedMine.class).isActive()) warning("It's recommended to disable the Speedmine module and instead use the 'fast-break' setting to avoid errors."); - if (Modules.get().get(Speed.class).isActive() && dir.diagonal) warning("It's recommended to disable the Speed module to avoid missalignment on diagonals."); - if (Modules.get().get(Timer.class).isActive() && dir.diagonal) warning("It's recommended to disable the Timer module to avoid missalignment on diagonals."); - if (Modules.get().get(NoGhostBlocks.class).isActive()) warning("It's recommended to disable the NoGhostBlocks module to avoid errors."); + if (Modules.get().get(Speed.class).isActive() && dir.diagonal) warning("It's recommended to disable the Speed module to avoid misalignment on diagonals."); + if (Modules.get().get(Timer.class).isActive() && dir.diagonal) warning("It's recommended to disable the Timer module to avoid misalignment on diagonals."); + //it could be tested to print different warnings depending on the amount of blocks being broken per tick but that would need much testing and wouldn't be reliable + if (Modules.get().get(NoGhostBlocks.class).isActive()) warning("It's recommended to disable the NoGhostBlocks module to avoid packet kicks and wrong statistics."); } @Override From 5fbbb69a2358b1fdc57b8b39f6d5c024ba7c93c8 Mon Sep 17 00:00:00 2001 From: Leonn170709 Date: Fri, 23 Jan 2026 14:53:10 +0100 Subject: [PATCH 3/4] Added Velocity Check just checks if velocity is enabled or not and sends a warmimg ccordingly --- .../meteorclient/systems/modules/world/HighwayBuilder.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java b/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java index a2066a29b0..a50614977f 100644 --- a/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java +++ b/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java @@ -19,6 +19,7 @@ import meteordevelopment.meteorclient.systems.modules.Module; import meteordevelopment.meteorclient.systems.modules.Modules; import meteordevelopment.meteorclient.systems.modules.combat.KillAura; +import meteordevelopment.meteorclient.systems.modules.movement.Velocity; import meteordevelopment.meteorclient.systems.modules.movement.speed.Speed; import meteordevelopment.meteorclient.systems.modules.player.*; import meteordevelopment.meteorclient.utils.Utils; @@ -503,6 +504,7 @@ public void onActivate() { if (Modules.get().get(SpeedMine.class).isActive()) warning("It's recommended to disable the Speedmine module and instead use the 'fast-break' setting to avoid errors."); if (Modules.get().get(Speed.class).isActive() && dir.diagonal) warning("It's recommended to disable the Speed module to avoid misalignment on diagonals."); if (Modules.get().get(Timer.class).isActive() && dir.diagonal) warning("It's recommended to disable the Timer module to avoid misalignment on diagonals."); + if (!Modules.get().get(Velocity.class).isActive()) warning("It's recommended to enable the Velocity module to avoid misalignment."); //it could be tested to print different warnings depending on the amount of blocks being broken per tick but that would need much testing and wouldn't be reliable if (Modules.get().get(NoGhostBlocks.class).isActive()) warning("It's recommended to disable the NoGhostBlocks module to avoid packet kicks and wrong statistics."); } From cac51187b8675507f7b08f98e6d1c2c9e7273ec4 Mon Sep 17 00:00:00 2001 From: Wide_Cat Date: Wed, 4 Feb 2026 16:03:33 +0000 Subject: [PATCH 4/4] update --- .../systems/modules/world/HighwayBuilder.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java b/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java index a50614977f..c62e58eacc 100644 --- a/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java +++ b/src/main/java/meteordevelopment/meteorclient/systems/modules/world/HighwayBuilder.java @@ -452,7 +452,7 @@ public enum BlockadeType { public Vec3d start; public int blocksBroken, blocksPlaced; private final MBlockPos lastBreakingPos = new MBlockPos(); - private boolean displayInfo; + private boolean displayInfo, warned; private boolean suspended = true, inventory = true; private int placeTimer, breakTimer, count, syncId; private final RestockTask restockTask = new RestockTask(this); @@ -499,14 +499,14 @@ public void onActivate() { if (blocksPerTick.get() > 1 && rotation.get().mine) warning("With rotations enabled, you can break at most 1 block per tick."); if (placementsPerTick.get() > 1 && rotation.get().place) warning("With rotations enabled, you can place at most 1 block per tick."); - //all modules that may cause error now print errors/warnings + if (Modules.get().get(InstantRebreak.class).isActive()) warning("It's recommended to disable the Instant Rebreak module and instead use the 'instantly-rebreak-echests' setting to avoid errors."); - if (Modules.get().get(SpeedMine.class).isActive()) warning("It's recommended to disable the Speedmine module and instead use the 'fast-break' setting to avoid errors."); if (Modules.get().get(Speed.class).isActive() && dir.diagonal) warning("It's recommended to disable the Speed module to avoid misalignment on diagonals."); - if (Modules.get().get(Timer.class).isActive() && dir.diagonal) warning("It's recommended to disable the Timer module to avoid misalignment on diagonals."); - if (!Modules.get().get(Velocity.class).isActive()) warning("It's recommended to enable the Velocity module to avoid misalignment."); - //it could be tested to print different warnings depending on the amount of blocks being broken per tick but that would need much testing and wouldn't be reliable - if (Modules.get().get(NoGhostBlocks.class).isActive()) warning("It's recommended to disable the NoGhostBlocks module to avoid packet kicks and wrong statistics."); + if (!Modules.get().get(Velocity.class).isActive()) warning("It's recommended to enable the Velocity module to avoid misalignment (entity pushing, liquid movement)."); + if (!warned && Modules.get().get(NoGhostBlocks.class).isActive()) { + info("The No Ghost Blocks module is useful to prevent desyncs on laggy servers. However, it will also slow Highway Builder down, and comes with the risks of incorrect statistics and packet kicks."); + warned = true; + } } @Override