2018-09-03 21:55:44 +05:30
# Baritone
2018-09-17 08:53:08 +05:30
[![Build Status ](https://travis-ci.com/cabaletta/baritone.svg?branch=master )](https://travis-ci.com/cabaletta/baritone)
2018-10-19 03:06:14 +05:30
[![Release ](https://img.shields.io/github/release/cabaletta/baritone.svg )](https://github.com/cabaletta/baritone/releases)
2018-09-18 02:14:27 +05:30
[![License ](https://img.shields.io/github/license/cabaletta/baritone.svg )](LICENSE)
2018-10-14 01:06:05 +05:30
[![Codacy Badge ](https://api.codacy.com/project/badge/Grade/a73d037823b64a5faf597a18d71e3400 )](https://www.codacy.com/app/leijurv/baritone?utm_source=github.com& utm_medium=referral& utm_content=cabaletta/baritone& utm_campaign=Badge_Grade)
2018-10-27 21:55:53 +05:30
[![HitCount ](http://hits.dwyl.com/cabaletta/baritone.svg )](http://hits.dwyl.com/cabaletta/baritone)
[![contributions welcome ](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat )](https://github.com/cabaletta/baritone/issues)
2018-11-01 09:07:18 +05:30
[![Minecraft ](https://img.shields.io/badge/MC-1.12.2-green.svg )](https://minecraft.gamepedia.com/1.12.2)
2018-09-03 09:56:57 +05:30
2018-11-07 09:42:02 +05:30
A Minecraft pathfinder bot.
2018-08-26 21:15:02 +05:30
2018-10-27 08:34:12 +05:30
Baritone is the pathfinding system used in [Impact ](https://impactdevelopment.github.io/ ) since 4.4. There's a [showcase video ](https://www.youtube.com/watch?v=yI8hgW_m6dQ ) made by @Adovin#3153 on Baritone's integration into Impact. [Here's ](https://www.youtube.com/watch?v=StquF69-_wI ) a video I made showing off what it can do.
2018-10-16 05:31:29 +05:30
2018-11-07 09:42:02 +05:30
This project is an updated version of [MineBot ](https://github.com/leijurv/MineBot/ ),
the original version of the bot for Minecraft 1.8, rebuilt for 1.12.2. Baritone focuses on reliability and particularly performance (it's over [29x faster ](https://github.com/cabaletta/baritone/pull/180#issuecomment-423822928 ) than MineBot at calculating paths).
2018-09-24 06:09:04 +05:30
Here are some links to help to get started:
2018-09-02 23:45:43 +05:30
2018-09-24 06:09:04 +05:30
- [Features ](FEATURES.md )
2018-09-03 22:34:48 +05:30
2018-10-16 05:25:13 +05:30
- [Installation ](INSTALL.md )
2018-09-24 06:09:04 +05:30
There's also some useful information down below
2018-09-18 03:03:14 +05:30
2018-08-26 21:15:02 +05:30
# Setup
2018-09-13 22:44:10 +05:30
2018-08-28 00:29:36 +05:30
## Command Line
2018-09-03 02:49:21 +05:30
On Mac OSX and Linux, use `./gradlew` instead of `gradlew` .
2018-09-06 10:01:36 +05:30
Running Baritone:
```
2018-11-03 04:53:57 +05:30
$ gradlew runClient
2018-09-06 10:01:36 +05:30
```
2018-11-03 04:53:57 +05:30
Building Baritone:
2018-08-28 00:29:36 +05:30
```
2018-11-03 04:53:57 +05:30
$ gradlew build
2018-08-28 00:29:36 +05:30
```
2018-08-28 00:42:19 +05:30
2018-11-10 09:51:58 +05:30
For example, to replace out Impact 4.4's Baritone build with a customized one, switch to the `impact4.4-compat` branch, build Baritone as above then copy `dist/baritone-api-$VERSION$.jar` into `minecraft/libraries/cabaletta/baritone-api/1.0.0/baritone-api-1.0.0.jar` , replacing the jar that was previously there. You also need to edit `minecraft/versions/1.12.2-Impact_4.4/1.12.2-Impact_4.4.json` , find the line `"name": "cabaletta:baritone-api:1.0.0"` , remove the comma from the end, and entirely remove the line that's immediately after (starts with `"url"` ).
2018-11-03 04:53:57 +05:30
## IntelliJ's Gradle UI
- Open the project in IntelliJ as a Gradle project
2018-11-05 11:52:04 +05:30
- Run the Gradle tasks `setupDecompWorkspace` then `genIntellijRuns`
2018-11-03 04:53:57 +05:30
- Refresh the Gradle project (or, to be safe, just restart IntelliJ)
- Select the "Minecraft Client" launch config
- In `Edit Configurations...` you may need to select `baritone_launch` for `Use classpath of module:` .
2018-08-28 00:32:51 +05:30
# Chat control
2018-09-24 06:09:37 +05:30
[Defined Here ](src/main/java/baritone/utils/ExampleBaritoneControl.java )
2018-08-28 00:32:51 +05:30
Quick start example: `thisway 1000` or `goal 70` to set the goal, `path` to actually start pathing. Also try `mine diamond_ore` . `cancel` to cancel.
# API example
```
2018-09-24 05:53:57 +05:30
BaritoneAPI.getSettings().allowSprint.value = true;
BaritoneAPI.getSettings().pathTimeoutMS.value = 2000L;
2018-08-28 00:32:51 +05:30
2018-11-19 07:02:16 +05:30
BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ(10000, 20000));
2018-08-30 00:55:03 +05:30
```
2018-09-03 04:31:41 +05:30
# FAQ
2018-11-20 06:44:54 +05:30
## Can I use Baritone as a library in my custom utility client?
2018-08-30 00:55:03 +05:30
2018-09-18 04:41:54 +05:30
Sure! (As long as usage is in compliance with the LGPL 3 License)
2018-08-30 00:55:03 +05:30
2018-09-03 04:31:41 +05:30
## How is it so fast?
2018-08-30 00:55:03 +05:30
2018-09-24 06:04:04 +05:30
Magic. (Hours of [Leijurv ](https://github.com/leijurv ) enduring excruciating pain)
2018-09-15 20:44:57 +05:30
## Why is it called Baritone?
2018-09-26 05:34:34 +05:30
It's named for FitMC's deep sultry voice.