From 12482c0274f07f27c6db7f2bbb556a6b37e5619b Mon Sep 17 00:00:00 2001 From: DylanTaylor1 <89085119+DylanTaylor1@users.noreply.github.com> Date: Sun, 6 Sep 2026 21:36:01 +0200 Subject: [PATCH 1/6] Update Default Minimum Zoom Levels --- src/main/java/com/sinthoras/visualprospecting/Config.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/sinthoras/visualprospecting/Config.java b/src/main/java/com/sinthoras/visualprospecting/Config.java index 513e475..679c0a2 100644 --- a/src/main/java/com/sinthoras/visualprospecting/Config.java +++ b/src/main/java/com/sinthoras/visualprospecting/Config.java @@ -15,8 +15,8 @@ private static class Defaults { public static final int cacheGenerationLogUpdateMinTime = 5; public static final boolean recacheVeins = false; public static final int minDelayBetweenVeinRequests = 2000; - public static final int minZoomLevelForOreLabel = 2; - public static final int minZoomLevelForUndergroundFluidDetails = 3; + public static final int minZoomLevelForOreLabel = 1; + public static final int minZoomLevelForUndergroundFluidDetails = 2; public static final int uploadBandwidthBytes = 2000000; public static final int maxTransferCacheSizeMB = 50; public static final boolean enableVoxelMapWaypointsByDefault = false; From 86d115782e0bde3213d09cb7c868dab10681f0f9 Mon Sep 17 00:00:00 2001 From: DylanTaylor1 Date: Sun, 6 Sep 2026 23:04:41 +0200 Subject: [PATCH 2/6] Fix Displayed L/Op Amount --- .../model/render/UndergroundFluidRenderStep.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java index 2229037..6869617 100644 --- a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java +++ b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java @@ -54,8 +54,8 @@ public void draw(double topX, double topY, float drawScale, double zoom) { title = location.getFluid().getLocalizedName(); values = MessageFormat.format( "{0}-{1} L/Op", - formatAmount(location.getMinProduction()), - formatAmount(maxAmountInField)); + formatAmount(location.getMinProduction()/2), + formatAmount(maxAmountInField/2)); } int textColor = 0xFFFFFFFF; @@ -131,7 +131,7 @@ private void renderChunks(double x, double y) { if (drawLabels) { DrawUtils.drawLabel( - MessageFormat.format("{0} L/Op", formatAmount(amount)), + MessageFormat.format("{0} L/Op", formatAmount(amount/2)), cellX + cellW / 2, cellY + cellH / 2 + cellLabelOffsetY, 0xFFFFFFFF, From 881aa13c4f4c8ccf6bc70637d71b97434970f369 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 6 Sep 2026 23:16:09 +0200 Subject: [PATCH 3/6] Spotless apply for branch fox/config for #106 (#107) --- .../model/render/UndergroundFluidRenderStep.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java index 6869617..c681344 100644 --- a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java +++ b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java @@ -54,8 +54,8 @@ public void draw(double topX, double topY, float drawScale, double zoom) { title = location.getFluid().getLocalizedName(); values = MessageFormat.format( "{0}-{1} L/Op", - formatAmount(location.getMinProduction()/2), - formatAmount(maxAmountInField/2)); + formatAmount(location.getMinProduction() / 2), + formatAmount(maxAmountInField / 2)); } int textColor = 0xFFFFFFFF; @@ -131,7 +131,7 @@ private void renderChunks(double x, double y) { if (drawLabels) { DrawUtils.drawLabel( - MessageFormat.format("{0} L/Op", formatAmount(amount/2)), + MessageFormat.format("{0} L/Op", formatAmount(amount / 2)), cellX + cellW / 2, cellY + cellH / 2 + cellLabelOffsetY, 0xFFFFFFFF, From 656d66eca428fdace78e4ab7a5d51eba7cc02c51 Mon Sep 17 00:00:00 2001 From: DylanTaylor1 Date: Sun, 6 Sep 2026 23:20:19 +0200 Subject: [PATCH 4/6] Spotless and Bitshifts --- .../model/render/UndergroundFluidRenderStep.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java index 6869617..91a771a 100644 --- a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java +++ b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java @@ -54,8 +54,8 @@ public void draw(double topX, double topY, float drawScale, double zoom) { title = location.getFluid().getLocalizedName(); values = MessageFormat.format( "{0}-{1} L/Op", - formatAmount(location.getMinProduction()/2), - formatAmount(maxAmountInField/2)); + formatAmount(location.getMinProduction() >> 1), + formatAmount(maxAmountInField >> 1)); } int textColor = 0xFFFFFFFF; @@ -131,7 +131,7 @@ private void renderChunks(double x, double y) { if (drawLabels) { DrawUtils.drawLabel( - MessageFormat.format("{0} L/Op", formatAmount(amount/2)), + MessageFormat.format("{0} L/Op", formatAmount(amount >> 1)), cellX + cellW / 2, cellY + cellH / 2 + cellLabelOffsetY, 0xFFFFFFFF, From b33b6bea6cdfdb9f3ed15c7b76b1a0f4962559ab Mon Sep 17 00:00:00 2001 From: DylanTaylor1 Date: Sun, 6 Sep 2026 23:30:20 +0200 Subject: [PATCH 5/6] Remove weird merge lines --- .../model/render/UndergroundFluidRenderStep.java | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java index 6be2d0a..91a771a 100644 --- a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java +++ b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/UndergroundFluidRenderStep.java @@ -54,13 +54,8 @@ public void draw(double topX, double topY, float drawScale, double zoom) { title = location.getFluid().getLocalizedName(); values = MessageFormat.format( "{0}-{1} L/Op", -<<<<<<< HEAD formatAmount(location.getMinProduction() >> 1), formatAmount(maxAmountInField >> 1)); -======= - formatAmount(location.getMinProduction() / 2), - formatAmount(maxAmountInField / 2)); ->>>>>>> 881aa13c4f4c8ccf6bc70637d71b97434970f369 } int textColor = 0xFFFFFFFF; @@ -136,11 +131,7 @@ private void renderChunks(double x, double y) { if (drawLabels) { DrawUtils.drawLabel( -<<<<<<< HEAD MessageFormat.format("{0} L/Op", formatAmount(amount >> 1)), -======= - MessageFormat.format("{0} L/Op", formatAmount(amount / 2)), ->>>>>>> 881aa13c4f4c8ccf6bc70637d71b97434970f369 cellX + cellW / 2, cellY + cellH / 2 + cellLabelOffsetY, 0xFFFFFFFF, From cfe69108cba1163864de4d8ae61cc7cb59e77f67 Mon Sep 17 00:00:00 2001 From: Algent Date: Mon, 7 Sep 2026 11:16:30 +0200 Subject: [PATCH 6/6] Add two row offset at lower zoom on ore veins --- .../integration/model/render/OreLabelLayout.java | 11 +++++++++++ .../integration/model/render/OreVeinRenderStep.java | 9 +++++---- 2 files changed, 16 insertions(+), 4 deletions(-) create mode 100644 src/main/java/com/sinthoras/visualprospecting/integration/model/render/OreLabelLayout.java diff --git a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/OreLabelLayout.java b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/OreLabelLayout.java new file mode 100644 index 0000000..5602a3b --- /dev/null +++ b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/OreLabelLayout.java @@ -0,0 +1,11 @@ +package com.sinthoras.visualprospecting.integration.model.render; + +final class OreLabelLayout { + + private OreLabelLayout() {} + + static double staggerOffset(double blockX, double zoomStep, double labelHeight) { + // Ore columns are three chunks wide. Floor keeps alternation continuous across X = 0 + return zoomStep <= 1 && (((long) Math.floor(blockX / 48)) & 1) != 0 ? labelHeight + 1 : 0; + } +} diff --git a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/OreVeinRenderStep.java b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/OreVeinRenderStep.java index 56b940e..64b07f2 100644 --- a/src/main/java/com/sinthoras/visualprospecting/integration/model/render/OreVeinRenderStep.java +++ b/src/main/java/com/sinthoras/visualprospecting/integration/model/render/OreVeinRenderStep.java @@ -43,25 +43,26 @@ public void preRender(double topX, double topY, float drawScale, double zoom) { @Override public void draw(double topX, double topY, float drawScale, double zoom) { + final double labelScale = getLabelScale(); + final double labelOffset = (fontHeight + 5) * (isXaero ? 1 : labelScale) + + OreLabelLayout.staggerOffset(location.getBlockX(), getZoomStep(), (fontHeight + 2) * labelScale); // Xaero culling relies on Navigator's visible cache; add centered bounds if that cache grows costly. if (!isXaero) { final Minecraft mc = Minecraft.getMinecraft(); final double scale = 1.0; final double screenW = mc.displayWidth * scale; final double screenH = mc.displayHeight * scale; - final double topMargin = (fontHeight + 5) * getLabelScale() * scale; - if (topX + width < 0 || topX > screenW || topY + height < -topMargin || topY > screenH) { + if (topX + width < 0 || topX > screenW || topY + height < 0 || topY - labelOffset > screenH) { return; } } if (zoom >= Config.minZoomLevelForOreLabel && !location.isDepleted()) { - final double labelScale = getLabelScale(); final int fontColor = location.drawSearchHighlight() ? 0xFFFFFF : 0x7F7F7F; DrawUtils.drawLabel( location.getName(), topX + width / 2, - topY - (fontHeight + 5) * (isXaero ? 1 : labelScale), + topY - labelOffset, fontColor, 0, true,