2018-09-03 09:25:44 -07:00
# Baritone
2018-09-16 20:23:08 -07:00
[![Build Status ](https://travis-ci.com/cabaletta/baritone.svg?branch=master )](https://travis-ci.com/cabaletta/baritone)
2018-09-17 13:44:27 -07:00
[![License ](https://img.shields.io/github/license/cabaletta/baritone.svg )](LICENSE)
2018-09-16 20:23:08 -07:00
[![Codacy Badge ](https://api.codacy.com/project/badge/Grade/7150d8ccf6094057b1782aa7a8f92d7d )](https://www.codacy.com/app/leijurv/baritone?utm_source=github.com& utm_medium=referral& utm_content=cabaletta/baritone& utm_campaign=Badge_Grade)
2018-09-02 23:26:57 -05:00
2018-10-11 20:04:45 -07:00
<!-- Unofficial Jenkins: [![Build Status ](https://plutiejenkins.leijurv.com/job/baritone/badge/icon )](https://plutiejenkins.leijurv.com/job/baritone/lastSuccessfulBuild/) -->
2018-09-23 19:39:04 -05:00
2018-09-22 19:46:18 -07:00
A Minecraft pathfinder bot. This project is an updated version of [MineBot ](https://github.com/leijurv/MineBot/ ),
2018-09-23 11:48:16 -07:00
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-08-26 08:45:02 -07:00
2018-09-23 19:39:04 -05:00
Here are some links to help to get started:
2018-09-02 11:15:43 -07:00
2018-09-23 19:39:04 -05:00
- [Features ](FEATURES.md )
2018-09-03 10:04:48 -07:00
2018-09-23 19:39:04 -05:00
- [Baritone + Impact ](IMPACT.md )
There's also some useful information down below
2018-09-17 14:33:14 -07:00
2018-08-26 08:45:02 -07:00
# Setup
2018-09-13 12:14:10 -05:00
## IntelliJ's Gradle UI
2018-08-26 08:45:02 -07:00
- Open the project in IntelliJ as a Gradle project
- Run the Gradle task `setupDecompWorkspace`
- Run the Gradle task `genIntellijRuns`
2018-08-27 12:12:52 -07:00
- Refresh the Gradle project (or just restart IntelliJ)
2018-08-27 12:02:51 -07:00
- Select the "Minecraft Client" launch config and run
2018-08-27 13:59:36 -05:00
## Command Line
2018-09-02 14:19:21 -07:00
On Mac OSX and Linux, use `./gradlew` instead of `gradlew` .
2018-09-05 21:31:36 -07:00
Running Baritone:
```
$ gradlew run
```
Setting up for IntelliJ:
2018-08-27 13:59:36 -05:00
```
$ gradlew setupDecompWorkspace
$ gradlew --refresh-dependencies
$ gradlew genIntellijRuns
```
2018-08-27 12:12:19 -07:00
2018-08-27 12:02:51 -07:00
# Chat control
2018-09-23 19:39:37 -05:00
[Defined Here ](src/main/java/baritone/utils/ExampleBaritoneControl.java )
2018-08-27 12:02:51 -07:00
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-23 19:23:57 -05:00
BaritoneAPI.getSettings().allowSprint.value = true;
BaritoneAPI.getSettings().pathTimeoutMS.value = 2000L;
2018-08-27 12:02:51 -07:00
2018-09-23 19:23:57 -05:00
BaritoneAPI.getPathingBehavior().setGoal(new GoalXZ(10000, 20000));
BaritoneAPI.getPathingBehavior().path();
2018-08-29 12:25:03 -07:00
```
2018-09-02 18:01:41 -05:00
# FAQ
## Can I use Baritone as a library in my hacked client?
2018-08-29 12:25:03 -07:00
2018-09-17 16:11:54 -07:00
Sure! (As long as usage is in compliance with the LGPL 3 License)
2018-08-29 12:25:03 -07:00
2018-09-02 18:01:41 -05:00
## How is it so fast?
2018-08-29 12:25:03 -07:00
2018-09-23 19:34:04 -05:00
Magic. (Hours of [Leijurv ](https://github.com/leijurv ) enduring excruciating pain)
2018-09-15 08:14:57 -07:00
## Why is it called Baritone?
2018-09-25 19:04:34 -05:00
It's named for FitMC's deep sultry voice.