Baritone Client Mod (1.21.8, 1.20.1) – Autominer, Build with AI, Xray
Baritone Client Mod (1.21.8, 1.20.1) is a pathfinding system in the Minecraft game which is being used in Impact. It helps the players to travel to different locations and mine ores and other mineable blocks with the help of an artificial intelligence pathfinding system. Baritone is an automated Minecraft-playing robot. It can assist you with traveling to certain locations, mining ores, and other minable blocks, and performing Worldedit-style operations by manipulating your Minecraft client using an artificial pathfinding intelligence.
Features:
Pathing Features:
- Long distance pathing and splicing Baritone calculates paths in segments, and precalculates the next segment when the current one is about to end, so that it’s moving towards the goal at all times.
- Chunk caching Baritone simplifies chunks to a compacted internal 2-bit representation (AIR, SOLID, WATER, AVOID) and stores them in RAM for better very-long-distance pathing. There is also an option to save these cached chunks to disk. Example
- Block breaking Baritone considers breaking blocks as part of its path. It also takes into account your current tool set and hot bar. For example, if you have a Eff V diamond pick, it may choose to mine through a stone barrier, while if you only had a wood pick it might be faster to climb over it.
- Block placing Baritone considers placing blocks as part of its path. This includes sneak-back-placing, pillaring, etc. It has a configurable penalty of placing a block (set to 1 second by default), to conserve its resources. The list of acceptable throwaway blocks is also configurable, and is cobble, dirt, or netherrack by default. Example
- Falling Baritone will fall up to 3 blocks onto solid ground (configurable, if you have Feather Falling and/or don’t mind taking a little damage). If you have a water bucket on your hotbar, it will fall up to 23 blocks and place the bucket beneath it. It will fall an unlimited distance into existing still water.
- Vines and ladders Baritone understands how to climb and descend vines and ladders. There is experimental support for more advanced maneuvers, like strafing to a different ladder / vine column in midair (off by default, setting named allowVines). Baritone can break its fall by grabbing ladders / vines midair, and understands when that is and isn’t possible.
- Opening fence gates and doors
- Slabs and stairs
- Falling blocks Baritone understands the costs of breaking blocks with falling blocks on top, and includes all of their break costs. Additionally, since it avoids breaking any blocks touching a liquid, it won’t break the bottom of a gravel stack below a lava lake (anymore).
- Avoiding dangerous blocks Obviously, it knows not to walk through fire or on magma, not to corner over lava (that deals some damage), not to break any blocks touching a liquid (it might drown), etc.
- Parkour Sprint jumping over 1, 2, or 3 block gaps
- Parkour place Sprint jumping over a 3 block gap and placing the block to land on while executing the jump. It’s really cool.
- Pigs It can sort of control pigs.
Pathing Method:
- Baritone uses A*, with some modifications:
- Segmented calculation Traditional A* calculates until the most promising node is in the goal, however in the environment of Minecraft with a limited render distance, we don’t know the environment all the way to our goal. Baritone has three possible ways for path calculation to end: finding a path all the way to the goal, running out of time, or getting to the render distance. In the latter two scenarios, the selection of which segment to actually execute falls to the next item (incremental cost backoff). Whenever the path calculation thread finds that the best / most promising node is at the edge of loaded chunks, it increments a counter. If this happens more than 50 times (configurable), path calculation exits early. This happens with very low render distances. Otherwise, calculation continues until the timeout is hit (also configurable) or we find a path all the way to the goal.
- Incremental cost backoff When path calculation exits early without getting all the way to the goal, Baritone it needs to select a segment to execute first (assuming it will calculate the next segment at the end of this one). It uses incremental cost backoff to select the best node by varying metrics, then paths to that node. This is unchanged from MineBot and I made a write-up that still applies. In essence, it keeps track of the best node by various increasing coefficients, then picks the node with the least coefficient that goes at least 5 blocks from the starting position.
- Minimum improvement repropagation The pathfinder ignores alternate routes that provide minimal improvements (less than 0.01 ticks of improvement), because the calculation cost of repropagating this to all connected nodes is much higher than the half-millisecond path time improvement it would get.
- Backtrack cost favoring While calculating the next segment, Baritone favors backtracking its current segment. The cost is decreased heavily, but is still positive (this won’t cause it to backtrack if it doesn’t need to). This allows it to splice and jump onto the next segment as early as possible, if the next segment begins with a backtrack of the current one. Example
- Backtrack detection and pausing While path calculation happens on a separate thread, the main game thread has access to the latest node considered, and the best path so far (those are rendered light blue and dark blue respectively). When the current best path (rendered dark blue) passes through the player’s current position on the current path segment, path execution is paused (if it’s safe to do so), because there’s no point continuing forward if we’re about to turn around and go back that same way. Note that the current best path as reported by the path calculation thread takes into account the incremental cost backoff system, so it’s accurate to what the path calculation thread will actually pick once it finishes.
Goals:
- The pathing goal can be set to any of these options:
- GoalBlock one specific block that the player should stand inside at foot level
- GoalXZ an X and a Z coordinate, used for long distance pathing
- GoalYLevel a Y coordinate
- GoalTwoBlocks a block position that the player should stand in, either at foot or eye level
- GoalGetToBlock a block position that the player should stand adjacent to, below, or on top of
- GoalNear a block position that the player should get within a certain radius of, used for following entities
- GoalAxis a block position on an axis or diagonal axis (so x=0, z=0, or x=z), and y=120 (configurable)
- And finally GoalComposite. GoalComposite is a list of other goals, any one of which satisfies the goal. For example, mine diamond_ore creates a GoalComposite of GoalTwoBlockss for every diamond ore location it knows of.
Baritone Commands:
Prefix
- Baritone’s chat control prefix is # by default. In Impact, you can also use .b as a prefix. (for example, .b click instead of #click)
- Baritone commands can also by default be typed in the chatbox. However if you make a typo, like typing “gola 10000 10000” instead of “goal” it goes into public chat, which is bad, so using # is suggested.
- To disable direct chat control (with no prefix), turn off the chatControl setting. To disable chat control with the # prefix, turn off the prefixControl setting. In Impact, .b cannot be disabled. Be careful that you don’t leave yourself with all control methods disabled (if you do, reset your settings by deleting the file minecraft/baritone/settings.txt and relaunching).
- All of these commands may need a prefix before them.
help
To toggle a boolean setting, say its name in chat (e.g., allowBreak
toggles whether Baritone will consider breaking blocks). For a numeric setting, say its name then the new value (e.g., primaryTimeoutMS 250
). To reset a setting to its default value, say acceptableThrowawayItems reset
. To reset all settings, say reset
. To see all settings modified from their default values, say modified
.
Commands in Baritone:
thisway 1000
thenpath
: Go in the direction you’re facing for a thousand blocks.goal x y z
orgoal x z
orgoal y
, thenpath
: Set a goal to a certain coordinate then path to it.goto x y z
orgoto x z
orgoto y
: Go to a certain coordinate (starts going immediately).goal
: Set the goal to your player’s feet.goal clear
: Clear the goal.cancel
orstop
: Stop everything,forcecancel
is also an option.goto portal
orgoto ender_chest
orgoto block_type
: Go to a block. (In Impact,.goto
is an alias for.b goto
for the most part.)mine diamond_ore iron_ore
: Mine diamond ore or iron ore (turn onlegitMine
to only mine ores it can see. It will explore randomly around y=11 until it finds them.) An amount can be specified, e.g.,mine 64 diamond_ore
.click
: Click your destination on the screen. Right click to path on top of the block, left click to path into it (foot or eye level), left click and drag to select an area (#help sel
to see selection options).follow player playerName
: Follow a player.follow players
to follow any players in range.follow entities
to follow any entities.follow entity pig
to follow entities of a specific type.wp
: For waypoints. A “tag” is likehome
(created on right-clicking a bed),death
(created on death), oruser
(created manually). E.g.,#wp save user coolbiome
, then#wp goal coolbiome
, then#path
to path to it. For death,#wp goal death
lists waypoints under the “death” tag.build
: Build a schematic.build blah.schematic
loadsschematics/blah.schematic
and builds it with the origin at your feet.build blah.schematic x y z
to set the origin. Use relative coordinates, e.g.,~ 69 ~-420
.schematica
: Build the schematic currently open in Schematica.tunnel
: Dig and make a 1×2 tunnel. Deviates only to avoid lava. For a simpler tunnel, usetunnel 3 2 100
to clear an area 3 high, 2 wide, 100 deep.farm
: Harvest, replant, or bone meal crops. Usefarm <range>
orfarm <range> <waypoint>
to limit max distance from the starting point or a waypoint.axis
: Go to an axis or diagonal axis at y=120 (axisHeight
is configurable, defaults to 120).explore x z
: Explore the world from the origin of x,z. Leave out x and z to default to player feet. Paths to the closest unseen chunk. Useexplorefilter filter.json
with optionalinvert
to load a list of chunks.invert
: Invert the current goal and path to get as far away as possible. E.g.,goal
theninvert
to run far from your starting position.come
: Head towards your camera, useful when freecam doesn’t move your player position.blacklist
: Stop Baritone from going to the closest block.eta
: Get estimated time until the next segment and goal (goal ETA is imprecise).proc
: View miscellaneous information about the current Baritone process.repack
: Re-cache chunks around you.gc
: CallSystem.gc()
to free up memory.render
: Fix glitched chunk rendering without reloading all chunks.reloadall
: Reload Baritone’s world cache.saveall
: Save Baritone’s world cache.find
: Search Baritone’s cache to find the location of a block.surface
ortop
: Head towards the closest surface-like area (surface or highest available air space).version
: Get the version of Baritone you’re running.damn daniel
Notable Settings:
allowBreak
allowSprint
allowPlace
allowParkour
allowParkourPlace
blockPlacementPenalty
renderCachedChunks
(andcachedChunksOpacity
): Very fun but requires a beefy computer.avoidance
: Avoidance of mobs/mob spawners.legitMine
followRadius
backfill
: Fill in tunnels behind you.buildInLayers
buildRepeatDistance
andbuildRepeatDirection
worldExploringChunkOffset
acceptableThrowawayItems
blocksToAvoidBreaking
mineScanDroppedItems
allowDiagonalAscend
Screenshots:
Explanation of files:
- API: Only the non-api packages are obfuscated. This should be used in environments where other mods would like to use Baritone’s features.
- Forge/Fabric API: Same as API, but packaged for Forge/Fabric. This should be used where another mod has a Baritone integration.
- Standalone: Everything is obfuscated. This should be used in environments where there are no other mods present that would like to use Baritone’s features.
- Forge/Fabric Standalone: Same as Standalone, but packaged for Forge/Fabric. This should be used when Baritone is your only Forge/Fabric mod, or none of your other Forge/Fabric mods integrate with Baritone.
- Unoptimized: Nothing is obfuscated. This shouldn’t be used ever in production.
- Forge/Fabric Unoptimized: Same as Unoptimized, but packaged for Forge/Fabric.
Requires:
Minecraft Forge or Fabric API or Quilt Loader or NeoForge Installer
How to install:
Click the following link to view details: How to Install Mods for Minecraft Java Edition on PC: A Beginner Guide
Baritone Client Mod (1.21.8, 1.20.1) Download Links
For Minecraft 1.12.2
Forge version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.13.2
Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.14.4
Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.15.2
Forge/Fabric/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.16.5
Forge/Fabric/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.17.1
Forge/Fabric/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.18.1
Forge/Fabric/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.18.2
Forge/Fabric/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.19.2, 1.19.1, 1.19
Forge/Fabric/Quilt/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.19.3
Forge/Fabric/Quilt/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.19.4
Forge/Fabric/Quilt/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.20.1, 1.20
Forge/Fabric/Quilt/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.20.2
Forge/Fabric/Quilt/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
Meteor Team Fork Fabric version: Download from Server 1 – Download from Server 2
For Minecraft 1.20.4
Forge/Fabric/Quilt/NeoForge/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
Meteor Team Fork Fabric version: Download from Server 1 – Download from Server 2
For Minecraft 1.20.6
Forge/Fabric/Quilt/NeoForge/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
Meteor Team Fork Fabric version: Download from Server 1 – Download from Server 2
For Minecraft 1.21.1, 1.21
Forge/Fabric/Quilt/NeoForge/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
Meteor Team Fork Fabric version: Download from Server 1 – Download from Server 2
For Minecraft 1.21.3
Forge/Fabric/Quilt/NeoForge/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
Meteor Team Fork Fabric version: Download from Server 1 – Download from Server 2
For Minecraft 1.21.4
Forge/Fabric/Quilt/NeoForge/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
Meteor Team Fork Fabric version: Download from Server 1 – Download from Server 2
For Minecraft 1.21.5
Forge/Fabric/Quilt/NeoForge/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
Meteor Team Fork Fabric version: Download from Server 1 – Download from Server 2
For Minecraft 1.21.6
Forge/Fabric/Quilt/NeoForge/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.21.7
Forge/Fabric/Quilt/NeoForge/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
For Minecraft 1.21.8
Forge/Fabric/Quilt/NeoForge/Standalone version (Unzip file): Download from Server 1 – Download from Server 2
Meteor Team Fork Fabric version: Download from Server 1 – Download from Server 2