From 58fe5b0054f0b2b1604b36b615f29de456651a5c Mon Sep 17 00:00:00 2001 From: esbraff Date: Fri, 29 May 2026 06:02:26 +0300 Subject: [PATCH 1/4] Make max address length configurable --- .../content/logistics/packagePort/PackagePortScreen.java | 8 +++++++- .../simibubi/create/infrastructure/config/CLogistics.java | 2 ++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java b/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java index eaa769c403..e29275fb96 100644 --- a/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java +++ b/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java @@ -14,6 +14,8 @@ import com.simibubi.create.foundation.gui.widget.IconButton; import com.simibubi.create.foundation.utility.CreateLang; +import com.simibubi.create.infrastructure.config.AllConfigs; + import net.createmod.catnip.gui.element.GuiGameElement; import net.createmod.catnip.gui.widget.AbstractSimiWidget; import net.createmod.catnip.platform.CatnipServices; @@ -62,7 +64,7 @@ protected void init() { addressBox = new EditBox(new NoShadowFontWrapper(font), x + 23, y - 11, background.getWidth() - 20, 10, Component.empty()); addressBox.setBordered(false); - addressBox.setMaxLength(25); + addressBox.setMaxLength(getMaxAddressLength()); addressBox.setTextColor(0x3D3C48); addressBox.setValue(menu.contentHolder.addressFilter); addressBox.setFocused(false); @@ -103,6 +105,10 @@ private int nameBoxX(String s, EditBox nameBox) { return getGuiLeft() + background.getWidth() / 2 - (Math.min(font.width(s), nameBox.getWidth()) + 10) / 2; } + protected int getMaxAddressLength() { + return AllConfigs.server().logistics.maxAddressLength.get(); + } + @Override protected void containerTick() { acceptPackages.visible = menu.contentHolder.target != null; diff --git a/src/main/java/com/simibubi/create/infrastructure/config/CLogistics.java b/src/main/java/com/simibubi/create/infrastructure/config/CLogistics.java index 726f5c7c1b..4954ac595f 100644 --- a/src/main/java/com/simibubi/create/infrastructure/config/CLogistics.java +++ b/src/main/java/com/simibubi/create/infrastructure/config/CLogistics.java @@ -16,6 +16,7 @@ public class CLogistics extends ConfigBase { public final ConfigInt brassTunnelTimer = i(10, 1, 10, "brassTunnelTimer", Comments.brassTunnelTimer); public final ConfigInt factoryGaugeTimer = i(100, 5, "factoryGaugeTimer", Comments.factoryGaugeTimer); public final ConfigBool seatHostileMobs = b(true, "seatHostileMobs", Comments.seatHostileMobs); + public final ConfigInt maxAddressLength = i(25, 1, 128, "maxAddressLength", Comments.maxAddressLength); @Override public String getName() { @@ -37,6 +38,7 @@ private static class Comments { static String brassTunnelTimer = "The amount of ticks a brass tunnel waits between distributions."; static String factoryGaugeTimer = "The amount of ticks a factory gauge waits between requests."; static String seatHostileMobs = "Whether hostile mobs walking near a seat will start riding it."; + static String maxAddressLength = "Maximum length of an address for a Package Port."; } } From 9a61d0b64e00ee711cdd884c03e2cf6464cfef74 Mon Sep 17 00:00:00 2001 From: esbraff Date: Fri, 29 May 2026 14:24:49 +0300 Subject: [PATCH 2/4] Update other address GUI to use the config --- .../simibubi/create/content/logistics/AddressEditBox.java | 4 +++- .../content/logistics/packagePort/PackagePortScreen.java | 6 +----- .../create/content/trains/station/StationScreen.java | 4 +++- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/simibubi/create/content/logistics/AddressEditBox.java b/src/main/java/com/simibubi/create/content/logistics/AddressEditBox.java index ccab8f7550..1e6cb687a5 100644 --- a/src/main/java/com/simibubi/create/content/logistics/AddressEditBox.java +++ b/src/main/java/com/simibubi/create/content/logistics/AddressEditBox.java @@ -3,6 +3,8 @@ import java.util.List; import java.util.function.Consumer; +import com.simibubi.create.infrastructure.config.AllConfigs; + import org.lwjgl.glfw.GLFW; import com.mojang.blaze3d.vertex.PoseStack; @@ -44,7 +46,7 @@ public AddressEditBox(Screen screen, Font pFont, int pX, int pY, int pWidth, int setBordered(false); setFocused(false); mouseClicked(0, 0, 0); - setMaxLength(25); + setMaxLength(AllConfigs.server().logistics.maxAddressLength.get()); } @Override diff --git a/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java b/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java index e29275fb96..63e90f8df2 100644 --- a/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java +++ b/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java @@ -64,7 +64,7 @@ protected void init() { addressBox = new EditBox(new NoShadowFontWrapper(font), x + 23, y - 11, background.getWidth() - 20, 10, Component.empty()); addressBox.setBordered(false); - addressBox.setMaxLength(getMaxAddressLength()); + addressBox.setMaxLength(AllConfigs.server().logistics.maxAddressLength.get()); addressBox.setTextColor(0x3D3C48); addressBox.setValue(menu.contentHolder.addressFilter); addressBox.setFocused(false); @@ -105,10 +105,6 @@ private int nameBoxX(String s, EditBox nameBox) { return getGuiLeft() + background.getWidth() / 2 - (Math.min(font.width(s), nameBox.getWidth()) + 10) / 2; } - protected int getMaxAddressLength() { - return AllConfigs.server().logistics.maxAddressLength.get(); - } - @Override protected void containerTick() { acceptPackages.visible = menu.contentHolder.target != null; diff --git a/src/main/java/com/simibubi/create/content/trains/station/StationScreen.java b/src/main/java/com/simibubi/create/content/trains/station/StationScreen.java index 20fbad5ce5..afd1925739 100644 --- a/src/main/java/com/simibubi/create/content/trains/station/StationScreen.java +++ b/src/main/java/com/simibubi/create/content/trains/station/StationScreen.java @@ -19,6 +19,8 @@ import com.simibubi.create.foundation.gui.widget.IconButton; import com.simibubi.create.foundation.gui.widget.Label; import com.simibubi.create.foundation.gui.widget.ScrollInput; +import com.simibubi.create.infrastructure.config.AllConfigs; + import net.createmod.catnip.platform.CatnipServices; import com.simibubi.create.foundation.utility.CreateLang; @@ -74,7 +76,7 @@ protected void init() { nameBox = new EditBox(new NoShadowFontWrapper(font), x + 23, y + 4, background.getWidth() - 20, 10, Component.literal(station.name)); nameBox.setBordered(false); - nameBox.setMaxLength(25); + nameBox.setMaxLength(AllConfigs.server().logistics.maxAddressLength.get()); nameBox.setTextColor(0x592424); nameBox.setValue(station.name); nameBox.setFocused(false); From 18554e7f5b3f460b81564e4f4dec78450217fa50 Mon Sep 17 00:00:00 2001 From: esbraff Date: Fri, 29 May 2026 14:57:25 +0300 Subject: [PATCH 3/4] Move the config to client category and fix the description --- .../com/simibubi/create/content/logistics/AddressEditBox.java | 2 +- .../create/content/logistics/packagePort/PackagePortScreen.java | 2 +- .../simibubi/create/content/trains/station/StationScreen.java | 2 +- .../java/com/simibubi/create/infrastructure/config/CClient.java | 2 ++ .../com/simibubi/create/infrastructure/config/CLogistics.java | 2 -- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/simibubi/create/content/logistics/AddressEditBox.java b/src/main/java/com/simibubi/create/content/logistics/AddressEditBox.java index 1e6cb687a5..aad83c75dc 100644 --- a/src/main/java/com/simibubi/create/content/logistics/AddressEditBox.java +++ b/src/main/java/com/simibubi/create/content/logistics/AddressEditBox.java @@ -46,7 +46,7 @@ public AddressEditBox(Screen screen, Font pFont, int pX, int pY, int pWidth, int setBordered(false); setFocused(false); mouseClicked(0, 0, 0); - setMaxLength(AllConfigs.server().logistics.maxAddressLength.get()); + setMaxLength(AllConfigs.client().maxAddressLength.get()); } @Override diff --git a/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java b/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java index 63e90f8df2..2223ad8e5f 100644 --- a/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java +++ b/src/main/java/com/simibubi/create/content/logistics/packagePort/PackagePortScreen.java @@ -64,7 +64,7 @@ protected void init() { addressBox = new EditBox(new NoShadowFontWrapper(font), x + 23, y - 11, background.getWidth() - 20, 10, Component.empty()); addressBox.setBordered(false); - addressBox.setMaxLength(AllConfigs.server().logistics.maxAddressLength.get()); + addressBox.setMaxLength(AllConfigs.client().maxAddressLength.get()); addressBox.setTextColor(0x3D3C48); addressBox.setValue(menu.contentHolder.addressFilter); addressBox.setFocused(false); diff --git a/src/main/java/com/simibubi/create/content/trains/station/StationScreen.java b/src/main/java/com/simibubi/create/content/trains/station/StationScreen.java index afd1925739..5642497c21 100644 --- a/src/main/java/com/simibubi/create/content/trains/station/StationScreen.java +++ b/src/main/java/com/simibubi/create/content/trains/station/StationScreen.java @@ -76,7 +76,7 @@ protected void init() { nameBox = new EditBox(new NoShadowFontWrapper(font), x + 23, y + 4, background.getWidth() - 20, 10, Component.literal(station.name)); nameBox.setBordered(false); - nameBox.setMaxLength(AllConfigs.server().logistics.maxAddressLength.get()); + nameBox.setMaxLength(AllConfigs.client().maxAddressLength.get()); nameBox.setTextColor(0x592424); nameBox.setValue(station.name); nameBox.setFocused(false); diff --git a/src/main/java/com/simibubi/create/infrastructure/config/CClient.java b/src/main/java/com/simibubi/create/infrastructure/config/CClient.java index 2e0e2bd666..789190e269 100644 --- a/src/main/java/com/simibubi/create/infrastructure/config/CClient.java +++ b/src/main/java/com/simibubi/create/infrastructure/config/CClient.java @@ -34,6 +34,7 @@ public class CClient extends ConfigBase { Comments.ignoreFabulousWarning); public final ConfigBool rotateWhenSeated = b(true, "rotateWhenSeated", Comments.rotatewhenSeated); + public final ConfigInt maxAddressLength = i(25, 1, 128, "maxAddressLength", Comments.maxAddressLength); // custom fluid fog public final ConfigGroup fluidFogSettings = group(1, "fluidFogSettings", Comments.fluidFogSettings); @@ -122,6 +123,7 @@ private static class Comments { }; static String ignoreFabulousWarning = "Setting this to true will prevent Create from sending you a warning when playing with Fabulous graphics enabled"; static String rotatewhenSeated = "Disable to prevent being rotated while seated on a Moving Contraption"; + static String maxAddressLength = "Maximum length of an address for a Package Port."; static String overlay = "Settings for the Goggle Overlay"; static String overlayOffset = "Offset the overlay from goggle- and hover- information by this many pixels on the respective axis; Use /create overlay"; static String overlayCustomColor = "Enable this to use your custom colors for the Goggle- and Hover- Overlay"; diff --git a/src/main/java/com/simibubi/create/infrastructure/config/CLogistics.java b/src/main/java/com/simibubi/create/infrastructure/config/CLogistics.java index 4954ac595f..726f5c7c1b 100644 --- a/src/main/java/com/simibubi/create/infrastructure/config/CLogistics.java +++ b/src/main/java/com/simibubi/create/infrastructure/config/CLogistics.java @@ -16,7 +16,6 @@ public class CLogistics extends ConfigBase { public final ConfigInt brassTunnelTimer = i(10, 1, 10, "brassTunnelTimer", Comments.brassTunnelTimer); public final ConfigInt factoryGaugeTimer = i(100, 5, "factoryGaugeTimer", Comments.factoryGaugeTimer); public final ConfigBool seatHostileMobs = b(true, "seatHostileMobs", Comments.seatHostileMobs); - public final ConfigInt maxAddressLength = i(25, 1, 128, "maxAddressLength", Comments.maxAddressLength); @Override public String getName() { @@ -38,7 +37,6 @@ private static class Comments { static String brassTunnelTimer = "The amount of ticks a brass tunnel waits between distributions."; static String factoryGaugeTimer = "The amount of ticks a factory gauge waits between requests."; static String seatHostileMobs = "Whether hostile mobs walking near a seat will start riding it."; - static String maxAddressLength = "Maximum length of an address for a Package Port."; } } From ed965e8c430c6d3c5651393a541d12d90db2da2f Mon Sep 17 00:00:00 2001 From: esbraff Date: Fri, 29 May 2026 15:00:02 +0300 Subject: [PATCH 4/4] Actually fix the description --- .../java/com/simibubi/create/infrastructure/config/CClient.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/simibubi/create/infrastructure/config/CClient.java b/src/main/java/com/simibubi/create/infrastructure/config/CClient.java index 789190e269..3276ece17c 100644 --- a/src/main/java/com/simibubi/create/infrastructure/config/CClient.java +++ b/src/main/java/com/simibubi/create/infrastructure/config/CClient.java @@ -123,7 +123,7 @@ private static class Comments { }; static String ignoreFabulousWarning = "Setting this to true will prevent Create from sending you a warning when playing with Fabulous graphics enabled"; static String rotatewhenSeated = "Disable to prevent being rotated while seated on a Moving Contraption"; - static String maxAddressLength = "Maximum length of an address for a Package Port."; + static String maxAddressLength = "Maximum length of an address in various UI."; static String overlay = "Settings for the Goggle Overlay"; static String overlayOffset = "Offset the overlay from goggle- and hover- information by this many pixels on the respective axis; Use /create overlay"; static String overlayCustomColor = "Enable this to use your custom colors for the Goggle- and Hover- Overlay";