Skip to content

Commit 511c1e8

Browse files
committed
LootRunner
1 parent cc280d9 commit 511c1e8

File tree

5 files changed

+3525
-2
lines changed

5 files changed

+3525
-2
lines changed

README.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -651,6 +651,15 @@ Credits to [Trouser-Streak](https://github.com/etianl/Trouser-Streak/blob/main/s
651651
- Phasing through walls horizontally generally doesn't work unless going on an angle.
652652
- There are toggles for Allow Liquids, Render Path, and separate colours for the regular and phasing boxes so you can adjust the visuals without clutter.
653653

654+
### LootRunner
655+
656+
This hack is still undergoing development and has only been tested in the end. A fork of [Baritone](https://github.com/wagyourtail/baritone) may be implemented to ensure better movement, additional structure support and reduce settings clutter.
657+
658+
- Automatically loads SeedMapper export waypoints and runs the nearest valid target first.
659+
- Travels with Baritone or Flight, scans for nearby chests/barrels/shulkers, then opens and loots them.
660+
- Loot filters support All, List, Item ID, or Query mode (for example `diamond`).
661+
- Handles full inventory with optional QuickShulker support, with stop/quit behaviour if needed.
662+
- Saves progress per server (completed targets, logs, and resume position) so runs can continue later.
654663

655664
## What's changed or improved in this fork?
656665

src/main/java/net/wurstclient/hack/HackList.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -255,6 +255,8 @@ public final class HackList implements UpdateListener
255255
public final ChestSearchHack chestSearchHack = new ChestSearchHack();
256256
public final net.wurstclient.hacks.LootSearchHack lootSearchHack =
257257
new net.wurstclient.hacks.LootSearchHack();
258+
public final net.wurstclient.hacks.LootRunnerHack lootRunnerHack =
259+
new net.wurstclient.hacks.LootRunnerHack();
258260
public final CoordLoggerHack coordLoggerHack = new CoordLoggerHack();
259261
public final TownyHack townyHack = new TownyHack();
260262

src/main/java/net/wurstclient/hacks/FlightHack.java

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,9 @@ public final class FlightHack extends Hack
7979
new CheckboxSetting("Enable NoFall with Flight",
8080
"Automatically enables NoFall while Flight is enabled.", false);
8181

82+
private Boolean antiKickOverride;
83+
private Boolean slowSneakingOverride;
84+
8285
private int tickCounter = 0;
8386
private final PlayerRangeAlertManager alertManager =
8487
WURST.getPlayerRangeAlertManager();
@@ -183,7 +186,7 @@ public void onUpdate()
183186
player.setDeltaMovement(velocity.x, -verticalSpeed.getValue(),
184187
velocity.z);
185188

186-
if(antiKick.isChecked())
189+
if(isAntiKickEnabled())
187190
doAntiKick(velocity);
188191

189192
Double alignStep =
@@ -200,7 +203,7 @@ public void onGetAirStrafingSpeed(AirStrafingSpeedEvent event)
200203
{
201204
float speed = horizontalSpeed.getValueF();
202205

203-
if(MC.options.keyShift.isDown() && slowSneaking.isChecked())
206+
if(MC.options.keyShift.isDown() && isSlowSneakingEnabled())
204207
speed = Math.min(speed, 0.85F);
205208

206209
event.setSpeed(speed);
@@ -229,6 +232,28 @@ private void doAntiKick(Vec3 velocity)
229232
tickCounter++;
230233
}
231234

235+
boolean isAntiKickEnabled()
236+
{
237+
return antiKickOverride != null ? antiKickOverride
238+
: antiKick.isChecked();
239+
}
240+
241+
boolean isSlowSneakingEnabled()
242+
{
243+
return slowSneakingOverride != null ? slowSneakingOverride
244+
: slowSneaking.isChecked();
245+
}
246+
247+
void setAntiKickOverride(Boolean override)
248+
{
249+
antiKickOverride = override;
250+
}
251+
252+
void setSlowSneakingOverride(Boolean override)
253+
{
254+
slowSneakingOverride = override;
255+
}
256+
232257
@Override
233258
public void onIsPlayerInWater(IsPlayerInWaterEvent event)
234259
{

0 commit comments

Comments
 (0)