90% of ad revenue goes to creators. Go ad-free while supporting creators with Modrinth Plus. Subscribe today!
"Cannot remove from team" workaround
On some buggy servers you may have noticeable lag spikes caused by Error executing task on client
:
net.minecraft.class_148: Main thread packet handler
at net.minecraft.class_2600.method_11072(class_2600.java:33) ~[client-intermediary.jar:?]
at net.minecraft.class_1255.method_18859(class_1255.java:156) ~[client-intermediary.jar:?]
at net.minecraft.class_4093.method_18859(class_4093.java:23) ~[client-intermediary.jar:?]
at net.minecraft.class_1255.method_16075(class_1255.java:130) ~[client-intermediary.jar:?]
at net.minecraft.class_1255.method_5383(class_1255.java:115) ~[client-intermediary.jar:?]
at net.minecraft.class_310.method_1523(class_310.java:1283) ~[client-intermediary.jar:?]
at net.minecraft.class_310.method_1514(class_310.java:888) ~[client-intermediary.jar:?]
at net.minecraft.client.main.Main.main(Main.java:265) ~[Fabric%201.20.4.jar:?]
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470) ~[fabric-loader-0.15.7.jar:?]
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.15.7.jar:?]
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.15.7.jar:?]
Caused by: java.lang.IllegalStateException: Player is either on another team or not on any team. Cannot remove from team 'Z/Sta/517631'.
at net.minecraft.class_269.method_1157(class_269.java:307) ~[client-intermediary.jar:?]
at net.minecraft.class_634.method_11099(class_634.java:2029) ~[client-intermediary.jar:?]
at net.minecraft.class_5900.method_34173(class_5900.java:129) ~[client-intermediary.jar:?]
at net.minecraft.class_5900.method_11054(class_5900.java:14) ~[client-intermediary.jar:?]
at net.minecraft.class_2600.method_11072(class_2600.java:24) ~[client-intermediary.jar:?]
... 10 more
One thing this mod does is it replaces IllegalStateException
throwing with LOGGER.warn()
.
Default net.minecraft.scoreboard.Scoreboard.removeScoreHolderFromTeam()
(class_269.method_1157()
) implementation:
public void removeScoreHolderFromTeam(String scoreHolderName, Team team) {
if (this.getScoreHolderTeam(scoreHolderName) != team) {
throw new IllegalStateException("Player is either on another team or not on any team. Cannot remove from team '" + team.getName() + "'.");
} else {
this.teamsByScoreHolder.remove(scoreHolderName);
team.getPlayerList().remove(scoreHolderName);
}
}
Though I'm not a Java coding guru, I don't understand why the exception is thrown on render thread.
Links
Details
Licensed CC0-1.0
Published 7 months ago
Updated 7 months ago