From 266e2dada9e5218ea94f4b102c5d104403a33aa2 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Sat, 16 Feb 2019 20:49:38 -0800 Subject: [PATCH 01/18] cleanup --- src/main/java/baritone/utils/PathRenderer.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/main/java/baritone/utils/PathRenderer.java b/src/main/java/baritone/utils/PathRenderer.java index 9f07efdf4..73bccbd5b 100644 --- a/src/main/java/baritone/utils/PathRenderer.java +++ b/src/main/java/baritone/utils/PathRenderer.java @@ -57,8 +57,6 @@ public final class PathRenderer implements Helper { private PathRenderer() {} public static void render(RenderEvent event, PathingBehavior behavior) { - // System.out.println("Render passing"); - // System.out.println(event.getPartialTicks()); float partialTicks = event.getPartialTicks(); Goal goal = behavior.getGoal(); From 530cecea5b8f3877cf5af2392b45504dbd77a055 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Sun, 17 Feb 2019 21:41:54 -0800 Subject: [PATCH 02/18] it flows better this way --- src/main/java/baritone/utils/PathRenderer.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/baritone/utils/PathRenderer.java b/src/main/java/baritone/utils/PathRenderer.java index 73bccbd5b..b9a6ad15e 100644 --- a/src/main/java/baritone/utils/PathRenderer.java +++ b/src/main/java/baritone/utils/PathRenderer.java @@ -78,7 +78,7 @@ public final class PathRenderer implements Helper { } if (goal != null && Baritone.settings().renderGoal.value) { - drawLitDankGoalBox(renderView, goal, partialTicks, Baritone.settings().colorGoalBox.get()); + drawDankLitGoalBox(renderView, goal, partialTicks, Baritone.settings().colorGoalBox.get()); } if (!Baritone.settings().renderPath.get()) { return; @@ -259,7 +259,7 @@ public final class PathRenderer implements Helper { GlStateManager.disableBlend(); } - public static void drawLitDankGoalBox(Entity player, Goal goal, float partialTicks, Color color) { + public static void drawDankLitGoalBox(Entity player, Goal goal, float partialTicks, Color color) { double renderPosX = player.lastTickPosX + (player.posX - player.lastTickPosX) * (double) partialTicks; double renderPosY = player.lastTickPosY + (player.posY - player.lastTickPosY) * (double) partialTicks; double renderPosZ = player.lastTickPosZ + (player.posZ - player.lastTickPosZ) * (double) partialTicks; @@ -330,7 +330,7 @@ public final class PathRenderer implements Helper { maxY = 256 - renderPosY; } else if (goal instanceof GoalComposite) { for (Goal g : ((GoalComposite) goal).goals()) { - drawLitDankGoalBox(player, g, partialTicks, color); + drawDankLitGoalBox(player, g, partialTicks, color); } return; } else { From d2bb8c374ea9316739e7e7f08e535d80a2b0135e Mon Sep 17 00:00:00 2001 From: Leijurv Date: Mon, 18 Feb 2019 21:18:37 -0800 Subject: [PATCH 03/18] explain --- src/main/java/baritone/cache/CachedWorld.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/baritone/cache/CachedWorld.java b/src/main/java/baritone/cache/CachedWorld.java index b604ce485..db85339de 100644 --- a/src/main/java/baritone/cache/CachedWorld.java +++ b/src/main/java/baritone/cache/CachedWorld.java @@ -45,7 +45,7 @@ public final class CachedWorld implements ICachedWorld, Helper { /** * The maximum number of regions in any direction from (0,0) */ - private static final int REGION_MAX = 58594; + private static final int REGION_MAX = 30_000_000 / 512 + 1; /** * A map of all of the cached regions. From c486d8241e20cf36e77ccc5bf465f4cc316388be Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 07:53:36 -0800 Subject: [PATCH 04/18] continue --- src/main/java/baritone/utils/PlayerMovementInput.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/baritone/utils/PlayerMovementInput.java b/src/main/java/baritone/utils/PlayerMovementInput.java index 4ffbef2bd..c2e2db2a5 100644 --- a/src/main/java/baritone/utils/PlayerMovementInput.java +++ b/src/main/java/baritone/utils/PlayerMovementInput.java @@ -31,7 +31,7 @@ public class PlayerMovementInput extends MovementInput { this.moveStrafe = 0.0F; this.moveForward = 0.0F; - jump = handler.isInputForcedDown(Input.JUMP); // oppa + jump = handler.isInputForcedDown(Input.JUMP); // oppa gangnam if (this.forwardKeyDown = handler.isInputForcedDown(Input.MOVE_FORWARD)) { this.moveForward++; From 6702b44b3ea4941884547e44d1baa0a3e4a2ef7f Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 12:43:44 -0800 Subject: [PATCH 05/18] reformatted and fixed stuck on break fall --- .../baritone/pathing/movement/movements/MovementFall.java | 4 ++-- .../baritone/pathing/movement/movements/MovementPillar.java | 2 +- src/main/java/baritone/pathing/path/PathExecutor.java | 3 +++ 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/main/java/baritone/pathing/movement/movements/MovementFall.java b/src/main/java/baritone/pathing/movement/movements/MovementFall.java index b06748878..93f60f5d1 100644 --- a/src/main/java/baritone/pathing/movement/movements/MovementFall.java +++ b/src/main/java/baritone/pathing/movement/movements/MovementFall.java @@ -78,7 +78,7 @@ public class MovementFall extends Movement { } BlockPos playerFeet = ctx.playerFeet(); - Rotation toDest = RotationUtils.calcRotationFromVec3d(ctx.playerHead(), VecUtils.getBlockPosCenter(dest),ctx.playerRotations()); + Rotation toDest = RotationUtils.calcRotationFromVec3d(ctx.playerHead(), VecUtils.getBlockPosCenter(dest), ctx.playerRotations()); Rotation targetRotation = null; Block destBlock = ctx.world().getBlockState(dest).getBlock(); boolean isWater = destBlock == Blocks.WATER || destBlock == Blocks.FLOWING_WATER; @@ -141,7 +141,7 @@ public class MovementFall extends Movement { } if (targetRotation == null) { Vec3d destCenterOffset = new Vec3d(destCenter.x + 0.125 * avoid.getX(), destCenter.y, destCenter.z + 0.125 * avoid.getZ()); - state.setTarget(new MovementTarget(RotationUtils.calcRotationFromVec3d(ctx.playerHead(), destCenterOffset,ctx.playerRotations()), false)); + state.setTarget(new MovementTarget(RotationUtils.calcRotationFromVec3d(ctx.playerHead(), destCenterOffset, ctx.playerRotations()), false)); } return state; } diff --git a/src/main/java/baritone/pathing/movement/movements/MovementPillar.java b/src/main/java/baritone/pathing/movement/movements/MovementPillar.java index d8c03b122..d430f8c58 100644 --- a/src/main/java/baritone/pathing/movement/movements/MovementPillar.java +++ b/src/main/java/baritone/pathing/movement/movements/MovementPillar.java @@ -151,7 +151,7 @@ public class MovementPillar extends Movement { IBlockState fromDown = BlockStateInterface.get(ctx, src); if (MovementHelper.isWater(fromDown.getBlock()) && MovementHelper.isWater(ctx, dest)) { // stay centered while swimming up a water column - state.setTarget(new MovementState.MovementTarget(RotationUtils.calcRotationFromVec3d(ctx.playerHead(), VecUtils.getBlockPosCenter(dest),ctx.playerRotations()), false)); + state.setTarget(new MovementState.MovementTarget(RotationUtils.calcRotationFromVec3d(ctx.playerHead(), VecUtils.getBlockPosCenter(dest), ctx.playerRotations()), false)); Vec3d destCenter = VecUtils.getBlockPosCenter(dest); if (Math.abs(ctx.player().posX - destCenter.x) > 0.2 || Math.abs(ctx.player().posZ - destCenter.z) > 0.2) { state.setInput(Input.MOVE_FORWARD, true); diff --git a/src/main/java/baritone/pathing/path/PathExecutor.java b/src/main/java/baritone/pathing/path/PathExecutor.java index 1a221af3c..44882b987 100644 --- a/src/main/java/baritone/pathing/path/PathExecutor.java +++ b/src/main/java/baritone/pathing/path/PathExecutor.java @@ -479,6 +479,9 @@ public class PathExecutor implements IPathExecutor, Helper { if (dir.getY() < -3) { return null; } + if (!movement.toBreakCached.isEmpty()) { + return null; // it's breaking + } Vec3i flatDir = new Vec3i(dir.getX(), 0, dir.getZ()); int i; outer: From ed2b0f0bb90a2ccfa6524197469a87ba86cf8c49 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 12:44:29 -0800 Subject: [PATCH 06/18] fix jump before place ascend --- src/main/java/baritone/pathing/path/PathExecutor.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/baritone/pathing/path/PathExecutor.java b/src/main/java/baritone/pathing/path/PathExecutor.java index 44882b987..07fe09430 100644 --- a/src/main/java/baritone/pathing/path/PathExecutor.java +++ b/src/main/java/baritone/pathing/path/PathExecutor.java @@ -541,6 +541,9 @@ public class PathExecutor implements IPathExecutor, Helper { if (!MovementHelper.canWalkOn(ctx, current.getDest().down())) { return false; } + if (!MovementHelper.canWalkOn(ctx, next.getDest().down())) { + return false; + } for (int x = 0; x < 2; x++) { for (int y = 0; y < 3; y++) { BlockPos chk = current.getSrc().up(y); From 76c4ca9ba6ef0089e038f77bdbfac641d3d1391a Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 12:55:58 -0800 Subject: [PATCH 07/18] fix path reliability after lateral movement --- .../movement/movements/MovementAscend.java | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/src/main/java/baritone/pathing/movement/movements/MovementAscend.java b/src/main/java/baritone/pathing/movement/movements/MovementAscend.java index f26970164..5bb6281fe 100644 --- a/src/main/java/baritone/pathing/movement/movements/MovementAscend.java +++ b/src/main/java/baritone/pathing/movement/movements/MovementAscend.java @@ -181,14 +181,21 @@ public class MovementAscend extends Movement { return state; } - if (headBonkClear()) { - return state.setInput(Input.JUMP, true); - } - int xAxis = Math.abs(src.getX() - dest.getX()); // either 0 or 1 int zAxis = Math.abs(src.getZ() - dest.getZ()); // either 0 or 1 double flatDistToNext = xAxis * Math.abs((dest.getX() + 0.5D) - ctx.player().posX) + zAxis * Math.abs((dest.getZ() + 0.5D) - ctx.player().posZ); double sideDist = zAxis * Math.abs((dest.getX() + 0.5D) - ctx.player().posX) + xAxis * Math.abs((dest.getZ() + 0.5D) - ctx.player().posZ); + + double lateralMotion = xAxis * ctx.player().motionZ + zAxis * ctx.player().motionX; + if (Math.abs(lateralMotion) > 0.1) { + return state; + } + + if (headBonkClear()) { + return state.setInput(Input.JUMP, true); + } + + // System.out.println(flatDistToNext + " " + sideDist); if (flatDistToNext > 1.2 || sideDist > 0.2) { return state; From a8ddb2fcf1254384cd4b7d191f51bff0d782de66 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 13:28:58 -0800 Subject: [PATCH 08/18] also disallow while breaking --- src/main/java/baritone/pathing/path/PathExecutor.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/main/java/baritone/pathing/path/PathExecutor.java b/src/main/java/baritone/pathing/path/PathExecutor.java index 07fe09430..d4897eecb 100644 --- a/src/main/java/baritone/pathing/path/PathExecutor.java +++ b/src/main/java/baritone/pathing/path/PathExecutor.java @@ -544,6 +544,9 @@ public class PathExecutor implements IPathExecutor, Helper { if (!MovementHelper.canWalkOn(ctx, next.getDest().down())) { return false; } + if (!next.toBreakCached.isEmpty()) { + return false; // it's breaking + } for (int x = 0; x < 2; x++) { for (int y = 0; y < 3; y++) { BlockPos chk = current.getSrc().up(y); From 87705246790830c3ecf722b0cf81e00bcb1ebcce Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 14:29:08 -0800 Subject: [PATCH 09/18] fix weird angle forcing behavior, fixes #341 --- src/main/java/baritone/behavior/LookBehavior.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/baritone/behavior/LookBehavior.java b/src/main/java/baritone/behavior/LookBehavior.java index c2d0326c9..9ee059c60 100644 --- a/src/main/java/baritone/behavior/LookBehavior.java +++ b/src/main/java/baritone/behavior/LookBehavior.java @@ -103,7 +103,7 @@ public final class LookBehavior extends Behavior implements ILookBehavior { @Override public void onPlayerRotationMove(RotationMoveEvent event) { - if (this.target != null && !this.force) { + if (this.target != null) { event.setYaw(this.target.getYaw()); From 5617c595b2259fa1838c356f1c37373b5135704c Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 14:43:48 -0800 Subject: [PATCH 10/18] public init --- src/api/java/baritone/api/IBaritone.java | 7 +++++++ src/main/java/baritone/Baritone.java | 1 + 2 files changed, 8 insertions(+) diff --git a/src/api/java/baritone/api/IBaritone.java b/src/api/java/baritone/api/IBaritone.java index 6bdb7d108..21157eb15 100644 --- a/src/api/java/baritone/api/IBaritone.java +++ b/src/api/java/baritone/api/IBaritone.java @@ -76,4 +76,11 @@ public interface IBaritone { IPlayerContext getPlayerContext(); IEventBus getGameEventHandler(); + + /** + * Call as soon as Minecraft is ready. + *

+ * Or whenever your overeager utility client wants. + */ + void init(); } diff --git a/src/main/java/baritone/Baritone.java b/src/main/java/baritone/Baritone.java index 3414fdf3f..2eb69cba6 100755 --- a/src/main/java/baritone/Baritone.java +++ b/src/main/java/baritone/Baritone.java @@ -92,6 +92,7 @@ public class Baritone implements IBaritone { this.gameEventHandler = new GameEventHandler(this); } + @Override public synchronized void init() { if (initialized) { return; From f7a9380b9dc2507e439f1fa9c57d1c082d8e6f21 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 14:53:43 -0800 Subject: [PATCH 11/18] v1.1.6 --- build.gradle | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.gradle b/build.gradle index d31ea10ec..996a8e0f7 100755 --- a/build.gradle +++ b/build.gradle @@ -16,7 +16,7 @@ */ group 'baritone' -version '1.1.5' +version '1.1.6' buildscript { repositories { From 8fd687f9d77223a6b96527b390427252c0bdef41 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 15:04:18 -0800 Subject: [PATCH 12/18] more usage help --- src/main/java/baritone/utils/ExampleBaritoneControl.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/baritone/utils/ExampleBaritoneControl.java b/src/main/java/baritone/utils/ExampleBaritoneControl.java index aa57e3469..edd426a3c 100644 --- a/src/main/java/baritone/utils/ExampleBaritoneControl.java +++ b/src/main/java/baritone/utils/ExampleBaritoneControl.java @@ -77,7 +77,8 @@ public class ExampleBaritoneControl extends Behavior implements Helper { "sethome - Sets \"home\"\n" + "home - Paths towards \"home\" \n" + "costs - (debug) all movement costs from current location\n" + - "damn - Daniel "; + "damn - Daniel\n" + + "Go to https://github.com/cabaletta/baritone/blob/master/USAGE.md for more information"; private static final String COMMAND_PREFIX = "#"; From 6d847577d8266f98eab3262e280440671831c6c8 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 18:22:59 -0800 Subject: [PATCH 13/18] somehow missed those --- src/api/java/baritone/api/Settings.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/api/java/baritone/api/Settings.java b/src/api/java/baritone/api/Settings.java index 4e1cc9cdd..2878e4d69 100644 --- a/src/api/java/baritone/api/Settings.java +++ b/src/api/java/baritone/api/Settings.java @@ -500,18 +500,18 @@ public final class Settings { *

* SOLID is rendered as stone in the overworld, netherrack in the nether, and end stone in the end */ - public Setting renderCachedChunks = new Setting<>(false); + public final Setting renderCachedChunks = new Setting<>(false); /** * 0.0f = not visible, fully transparent * 1.0f = fully opaque */ - public Setting cachedChunksOpacity = new Setting<>(0.5f); + public final Setting cachedChunksOpacity = new Setting<>(0.5f); /** * If true, Baritone will not allow you to left or right click while pathing */ - public Setting suppressClicks = new Setting<>(false); + public final Setting suppressClicks = new Setting<>(false); /** * Whether or not to use the "#" command prefix From d9625dfe78f1d0b66884eb8594e3def74f58a990 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 18:24:06 -0800 Subject: [PATCH 14/18] no longer needed crab rave --- scripts/proguard.pro | 3 --- 1 file changed, 3 deletions(-) diff --git a/scripts/proguard.pro b/scripts/proguard.pro index df6ad43a9..dc08bd9e2 100644 --- a/scripts/proguard.pro +++ b/scripts/proguard.pro @@ -21,9 +21,6 @@ -keep class baritone.BaritoneProvider -keep class baritone.api.IBaritoneProvider -# hack --keep class baritone.utils.ExampleBaritoneControl { *; } # have to include this string to remove this keep in the standalone build: # this is the keep api - # setting names are reflected from field names, so keep field names -keepclassmembers class baritone.api.Settings { public ; From 66356d53349dde6d9939b732cd46ab8b68758540 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 18:27:05 -0800 Subject: [PATCH 15/18] hmm --- src/main/java/baritone/utils/PathingControlManager.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/baritone/utils/PathingControlManager.java b/src/main/java/baritone/utils/PathingControlManager.java index e748042e4..54ed848a8 100644 --- a/src/main/java/baritone/utils/PathingControlManager.java +++ b/src/main/java/baritone/utils/PathingControlManager.java @@ -82,6 +82,7 @@ public class PathingControlManager implements IPathingControlManager { public void preTick() { inControlLastTick = inControlThisTick; + inControlThisTick = null; PathingBehavior p = baritone.getPathingBehavior(); command = executeProcesses(); if (command == null) { From 70d216b29fbe4902edb0ff37a2ad3ccde4d42534 Mon Sep 17 00:00:00 2001 From: Brady Date: Tue, 19 Feb 2019 21:00:14 -0600 Subject: [PATCH 16/18] Fix renderGoalXZBeacon path rendering incorrect color --- src/main/java/baritone/utils/PathRenderer.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/baritone/utils/PathRenderer.java b/src/main/java/baritone/utils/PathRenderer.java index b9a6ad15e..06e298be3 100644 --- a/src/main/java/baritone/utils/PathRenderer.java +++ b/src/main/java/baritone/utils/PathRenderer.java @@ -295,6 +295,8 @@ public final class PathRenderer implements Helper { GoalXZ goalPos = (GoalXZ) goal; if (Baritone.settings().renderGoalXZBeacon.get()) { + glPushAttrib(GL_LIGHTING_BIT); + mc.getTextureManager().bindTexture(TileEntityBeaconRenderer.TEXTURE_BEACON_BEAM); if (Baritone.settings().renderGoalIgnoreDepth.get()) { @@ -316,6 +318,8 @@ public final class PathRenderer implements Helper { if (Baritone.settings().renderGoalIgnoreDepth.get()) { GlStateManager.enableDepth(); } + + glPopAttrib(); return; } From 84d8f826ff5372141c6c4a29e8b9a41144c005f3 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 19:41:19 -0800 Subject: [PATCH 17/18] fine lol, fixes #340 --- .../baritone/pathing/movement/movements/MovementTraverse.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/baritone/pathing/movement/movements/MovementTraverse.java b/src/main/java/baritone/pathing/movement/movements/MovementTraverse.java index c1d660d07..d618cf1a0 100644 --- a/src/main/java/baritone/pathing/movement/movements/MovementTraverse.java +++ b/src/main/java/baritone/pathing/movement/movements/MovementTraverse.java @@ -178,7 +178,7 @@ public class MovementTraverse extends Movement { float pitchToBreak = state.getTarget().getRotation().get().getPitch(); state.setTarget(new MovementState.MovementTarget(new Rotation(yawToDest, pitchToBreak), true)); - return state.setInput(Input.MOVE_FORWARD, true); + return state.setInput(Input.MOVE_FORWARD, true).setInput(Input.SPRINT, true); } //sneak may have been set to true in the PREPPING state while mining an adjacent block From a72040f83d6815bcc2dffbe2c8e8f757e9b1f806 Mon Sep 17 00:00:00 2001 From: Leijurv Date: Tue, 19 Feb 2019 19:52:11 -0800 Subject: [PATCH 18/18] imagine breaking the build --- scripts/proguard.pro | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/proguard.pro b/scripts/proguard.pro index dc08bd9e2..e4189f7f3 100644 --- a/scripts/proguard.pro +++ b/scripts/proguard.pro @@ -14,6 +14,7 @@ # lwjgl is weird -dontwarn org.lwjgl.opengl.GL14 +-dontwarn org.lwjgl.opengl.GL11 -keep class baritone.api.** { *; } # this is the keep api