Sponge
Sponge copied to clipboard
Creating objective and setting display slot causes client error
Affected Product(s)
SpongeVanilla
Version
1.20.4-11.0.0-SNAPSHOT
Operating System
Linux
Java Version
21.0.2
Plugins/Mods
WorldEdit
LuckPerms
Spark
SpongeTestPlugin (plugin used to test problem)
NuVotifier
Describe the bug
Creating an objective and setting the display slot causes the client to throw the following error:
[14:12:45] [Render thread/ERROR]: 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) ~[1.20.4-0.15.3.jar:?]
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:470) ~[fabric-loader-0.15.3.jar:?]
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74) ~[fabric-loader-0.15.3.jar:?]
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23) ~[fabric-loader-0.15.3.jar:?]
Caused by: java.lang.IllegalArgumentException: An objective with the name 'sponge-test' already exists!
at net.minecraft.class_269.method_1168(class_269.java:50) ~[client-intermediary.jar:?]
at net.minecraft.class_634.method_11144(class_634.java:1924) ~[client-intermediary.jar:?]
at net.minecraft.class_2751.method_11838(class_2751.java:63) ~[client-intermediary.jar:?]
at net.minecraft.class_2751.method_11054(class_2751.java:14) ~[client-intermediary.jar:?]
at net.minecraft.class_2600.method_11072(class_2600.java:24) ~[client-intermediary.jar:?]
... 10 more
To reproduce, use the following (only works for 1st join):
@Listener
public void onJoin(ServerSideConnectionEvent.Join event) {
final Scoreboard scoreboard = Sponge.server().serverScoreboard().orElseThrow();
Objective objective = Objective.builder().name("sponge-test").criterion(Criteria.DUMMY).displayName(Component.text("Tickets Left", NamedTextColor.YELLOW, TextDecoration.BOLD)).build();
scoreboard.addObjective(objective);
scoreboard.updateDisplaySlot(objective, DisplaySlots.SIDEBAR);
}
Link to logs
No response