Skip to content

Commit 502f607

Browse files
committed
Ignore NPCs in PlayerESP
1 parent de4bc82 commit 502f607

File tree

2 files changed

+20
-0
lines changed

2 files changed

+20
-0
lines changed

README.md

68 Bytes

Breadcrumbs

  • Leaves a line trail behind you (toggle-able/pause-able).
  • Trail can be infinitely long
  • Trail can be applied to other players (toggleable unique colors for each player (shared with PlayerESP))
  • Settings: color, max sections, section length, thickness, targets, keep trails toggle, unique colors toggle.

BreadCrumbsBreadCrumbs

LogoutSpots

  • Records where players log out.
  • Removes spots when they rejoin.
  • Rendering: solid box + outline, optional tracers, name labels with adjustable scale.
  • Settings: side color, line color, name scale, tracers toggle, waypoint toggle.

PlayerESP Improvements

  • Added toggle for unique colors for each player (shared with Breadcrumbs)
  • Added box fill with transparency slider
  • Added static color option
  • Improved coloring for default close/far red to green (when all above off)
  • Able to ignore NPCs

ESPESP

Nuker Improvements

  • Auto toggle AutoTool option (If it wasn't on already, it will be enabled when using Nuker then turned off with Nuker)

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

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,13 @@ public final class PlayerEspHack extends Hack implements UpdateListener,
6060
+ "palette and forces it into the shared color registry.\n"
6161
+ "PlayerESP takes ownership of these colors (overrides Breadcrumbs).",
6262
false);
63+
private final CheckboxSetting ignoreNpcs = new CheckboxSetting(
64+
"Ignore NPCs",
65+
"When enabled, players not present on the client's tab-list are\n"
66+
+ "considered likely NPCs and will be ignored. This filters common\n"
67+
+ "server-side NPCs but may hide real players who are intentionally\n"
68+
+ "hidden from the tab-list.",
69+
true);
6370
private final CheckboxSetting filledBoxes = new CheckboxSetting(
6471
"Filled boxes",
6572
"When enabled, renders solid filled boxes instead of outlined boxes.",
@@ -90,6 +97,7 @@ public PlayerEspHack()
9097
addSetting(playerColor);
9198
addSetting(boxSize);
9299
entityFilters.forEach(this::addSetting);
100+
addSetting(ignoreNpcs);
93101
}
94102

95103
@Override
@@ -119,6 +127,18 @@ public void onUpdate()
119127
.filter(e -> !(e instanceof FakePlayerEntity))
120128
.filter(e -> Math.abs(e.getY() - MC.player.getY()) <= 1e6);
121129

130+
// If enabled, filter out players that aren't present on the client's
131+
// player list (likely NPCs spawned by server plugins).
132+
if(ignoreNpcs.isChecked())
133+
{
134+
stream = stream.filter(e -> {
135+
if(MC.getNetworkHandler() == null)
136+
return true;
137+
return MC.getNetworkHandler()
138+
.getPlayerListEntry(e.getUuid()) != null;
139+
});
140+
}
141+
122142
stream = entityFilters.applyTo(stream);
123143

124144
players.addAll(stream.collect(Collectors.toList()));

0 commit comments

Comments
 (0)