From 1389f81c7cb04b96159603f5b761e60a3a3bcab7 Mon Sep 17 00:00:00 2001 From: Jakob Schulz <55949993+Lordikak@users.noreply.github.com> Date: Sun, 1 Nov 2026 00:46:13 +0100 Subject: [PATCH] make world identifier valid by hex encoding them --- .../src/de/steamwar/fightsystem/FightSystem.java | 2 +- MissileWars/src/de/steamwar/misslewars/MissileWars.java | 3 +-- .../src/de/steamwar/core/WorldIdentifier.java | 7 +++++++ TNTLeague/src/de/steamwar/tntleague/TNTLeague.kt | 3 +-- TowerRun/src/de/steamwar/towerrun/TowerRun.java | 3 +-- 5 files changed, 11 insertions(+), 7 deletions(-) diff --git a/FightSystem/FightSystem_Core/src/de/steamwar/fightsystem/FightSystem.java b/FightSystem/FightSystem_Core/src/de/steamwar/fightsystem/FightSystem.java index 66cc8fff..94b45ea4 100644 --- a/FightSystem/FightSystem_Core/src/de/steamwar/fightsystem/FightSystem.java +++ b/FightSystem/FightSystem_Core/src/de/steamwar/fightsystem/FightSystem.java @@ -81,7 +81,7 @@ public class FightSystem extends JavaPlugin { String arenaMap = System.getProperty("arenaMap"); if (arenaMap != null) { - WorldIdentifier.set("arena/" + Core.getVersion() + "/" + arenaMap); + WorldIdentifier.setArena(arenaMap); } message = new Message("de.steamwar.fightsystem.FightSystem", FightSystem.class.getClassLoader()); diff --git a/MissileWars/src/de/steamwar/misslewars/MissileWars.java b/MissileWars/src/de/steamwar/misslewars/MissileWars.java index 44467069..f360f616 100644 --- a/MissileWars/src/de/steamwar/misslewars/MissileWars.java +++ b/MissileWars/src/de/steamwar/misslewars/MissileWars.java @@ -19,7 +19,6 @@ package de.steamwar.misslewars; -import de.steamwar.core.Core; import de.steamwar.core.WorldIdentifier; import de.steamwar.linkage.AbstractLinker; import de.steamwar.linkage.SpigotLinker; @@ -60,7 +59,7 @@ public class MissileWars extends JavaPlugin { String arenaMap = System.getProperty("arenaMap"); if (arenaMap != null) { - WorldIdentifier.set("arena/" + Core.getVersion() + "/" + arenaMap); + WorldIdentifier.setArena(arenaMap); } SpigotLinker spigotLinker = new SpigotLinker(this, null) { diff --git a/SpigotCore/SpigotCore_Main/src/de/steamwar/core/WorldIdentifier.java b/SpigotCore/SpigotCore_Main/src/de/steamwar/core/WorldIdentifier.java index 2fa27b1e..fb02eab9 100644 --- a/SpigotCore/SpigotCore_Main/src/de/steamwar/core/WorldIdentifier.java +++ b/SpigotCore/SpigotCore_Main/src/de/steamwar/core/WorldIdentifier.java @@ -27,6 +27,9 @@ import net.minecraft.resources.ResourceKey; import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.Level; +import java.nio.charset.StandardCharsets; +import java.util.HexFormat; + @Linked public class WorldIdentifier { @@ -36,6 +39,10 @@ public class WorldIdentifier { resourceKey = new ResourceKey<>(new ResourceLocation("minecraft", "dimension"), new ResourceLocation("steamwar", name)); } + public static void setArena(String map) { + set("arena/" + Core.getVersion() + "/" + HexFormat.of().formatHex(map.getBytes(StandardCharsets.UTF_8))); + } + public WorldIdentifier() { TinyProtocol.instance.addFilter(ClientboundLoginPacket.class, (player, packet) -> { if (resourceKey == null) return packet; diff --git a/TNTLeague/src/de/steamwar/tntleague/TNTLeague.kt b/TNTLeague/src/de/steamwar/tntleague/TNTLeague.kt index f5a3893d..a6954d1e 100644 --- a/TNTLeague/src/de/steamwar/tntleague/TNTLeague.kt +++ b/TNTLeague/src/de/steamwar/tntleague/TNTLeague.kt @@ -19,7 +19,6 @@ package de.steamwar.tntleague -import de.steamwar.core.Core import de.steamwar.core.WorldIdentifier import de.steamwar.message.Message import de.steamwar.tntleague.command.* @@ -47,7 +46,7 @@ class TNTLeague : JavaPlugin() { val arenaMap = System.getProperty("arenaMap") if (arenaMap != null) { - WorldIdentifier.set("arena/" + Core.getVersion() + "/" + arenaMap) + WorldIdentifier.setArena(arenaMap) } ReadyCommand.register() diff --git a/TowerRun/src/de/steamwar/towerrun/TowerRun.java b/TowerRun/src/de/steamwar/towerrun/TowerRun.java index f75a6747..5519d79a 100644 --- a/TowerRun/src/de/steamwar/towerrun/TowerRun.java +++ b/TowerRun/src/de/steamwar/towerrun/TowerRun.java @@ -20,7 +20,6 @@ package de.steamwar.towerrun; import de.steamwar.command.SWCommand; -import de.steamwar.core.Core; import de.steamwar.core.WorldIdentifier; import de.steamwar.linkage.AbstractLinker; import de.steamwar.linkage.LinkedInstance; @@ -60,7 +59,7 @@ public class TowerRun extends JavaPlugin { String arenaMap = System.getProperty("arenaMap"); if (arenaMap != null) { - WorldIdentifier.set("arena/" + Core.getVersion() + "/" + arenaMap); + WorldIdentifier.setArena(arenaMap); } SpigotLinker spigotLinker = new SpigotLinker(this, message) {