You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Show alternate biome names beside the minimap - #142
Append active alternate biome names to the existing small-minimap biome label. For example, Mountain becomes Mountain (Drake Mountain). Align alternate labels to the top of the existing text area so wrapped lines extend downward inside the minimap border. Preserve the original width, horizontal alignment, and ordinary-biome alignment. The large map is unchanged.
Add the local [Minimap] ShowAlternateBiomeName setting, enabled by default. Read the player's current BiomeSector, preserve its localized name, and omit empty or duplicate alternate names. No new network messages or Expand World Data dependency are required. Version: 0.1.100.
Reproduced the centered-wrap overflow in the previous live Drake Mountain screenshot. Repeated that location with the fix: both lines remain inside the top border.
Tested on valnet-client-01 with the maintained praetoris-season-8 profile. Package dependency versions matched deployed production release 8.0.45, apart from the candidate and existing test tools. The existing BepInEx loader reports pack 5.4.2350 rather than the manifest's 5.4.2351.
In TestingWorld, biomeinfo confirmed Drake Mountain, Fortress Mountain, Dandelion Meadows, and Birch Meadows. Inspected full-resolution 1920x1080 OBS screenshots for all four. Labels wrap downward inside the existing border. Each capture followed completed teleportation.
Returned to ordinary Meadows in the same session and confirmed the suffix disappears and the normal label position returns.
The earlier feature validation verified the disabled setting shows only Mountain after restarting. Linux file edits did not reload during that session; README documents the restart fallback.
Logs still contain shader/platform and Water material errors, plus PieceManager thumbnail-generation exceptions in ZDOMan.AddIfPortal. Their stacks do not involve the label patch. Other baseline warnings include asset-name conflicts, ExtraSlots backup format, reset configuration, and DvergerAutomation/Epic Loot compatibility.
New evidence: /Users/benjmarston/Develop/artifacts/alternate-biome-layout-20261016/ contains drake.png, fortress.png, dandelion.png, birch.png, ordinary.png, corresponding biome/player-state output, dependency inventory, and client logs. Earlier disabled-setting and before-fix evidence remains in /Users/benjmarston/Develop/artifacts/alternate-biome-label/. Validation covers client UI in a local world, not a dedicated-server multiplayer session.
Cleanup: restored the original profile content and mmcli registry, verified checksums, and confirmed the original PraetorisClient 0.1.94 loads with successful BepInEx startup. Removed the temporary character. The original registry reports 0.1.97 for that older DLL; restoration preserves the original state.
AlternateBiomeLabel.cs logic is sound. The Priority.Last Harmony postfix runs after Minimap.UpdateBiome and any other patches, correctly appending the alt-biome suffix. Null guards on player, sector, and individual AltBiome entries are in place. The deduplication loop (names.Contains(name)) correctly prevents repeated names in the parenthetical.
Label reconstruction is safe. Reading sector.GetName() as the base label rather than stripping a previously written suffix avoids state-accumulation bugs across frames and correctly handles toggling the setting off mid-session. The guard if (__instance.m_biomeNameSmall.text != label) avoids unnecessary text writes on frames where nothing changed.
Config binding follows existing patterns.ShowAlternateBiomeName is declared internal static ConfigEntry<bool>, initialized to null!, and bound in BindConfig() without SyncedDescription, consistent with the other local-only settings. Default true matches the PR description.
Version bump is consistent across AssemblyInfo.cs (AssemblyVersion and AssemblyFileVersion), Plugin.cs (ModVersion), manifest.json, and CHANGELOG.md.
One thing worth noting (not blocking): The postfix always sets m_biomeNameSmall.text from sector.GetName() rather than preserving whatever UpdateBiome just wrote. For ordinary biomes the guard prevents a spurious overwrite only if sector.GetName() returns exactly the same string that UpdateBiome puts in m_biomeNameSmall.text. The PR's validated Meadows screenshot (no alternate suffix, correct label) confirms these match in practice, but if a future game update causes them to diverge, ordinary biome labels would be silently clobbered. Reading __instance.m_biomeNameSmall.text as the base (and stripping a previous suffix if present) would remove this dependency on internal label parity, though it introduces its own complexity. Not a bug in the current build.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Append active alternate biome names to the existing small-minimap biome label. For example,
MountainbecomesMountain (Drake Mountain). Align alternate labels to the top of the existing text area so wrapped lines extend downward inside the minimap border. Preserve the original width, horizontal alignment, and ordinary-biome alignment. The large map is unchanged.Add the local
[Minimap] ShowAlternateBiomeNamesetting, enabled by default. Read the player's current BiomeSector, preserve its localized name, and omit empty or duplicate alternate names. No new network messages or Expand World Data dependency are required. Version: 0.1.100.Validation:
git diff --checkpassed.biomeinfoconfirmed Drake Mountain, Fortress Mountain, Dandelion Meadows, and Birch Meadows. Inspected full-resolution 1920x1080 OBS screenshots for all four. Labels wrap downward inside the existing border. Each capture followed completed teleportation.Mountainafter restarting. Linux file edits did not reload during that session; README documents the restart fallback.New evidence:
/Users/benjmarston/Develop/artifacts/alternate-biome-layout-20261016/containsdrake.png,fortress.png,dandelion.png,birch.png,ordinary.png, corresponding biome/player-state output, dependency inventory, and client logs. Earlier disabled-setting and before-fix evidence remains in/Users/benjmarston/Develop/artifacts/alternate-biome-label/. Validation covers client UI in a local world, not a dedicated-server multiplayer session.Cleanup: restored the original profile content and mmcli registry, verified checksums, and confirmed the original PraetorisClient 0.1.94 loads with successful BepInEx startup. Removed the temporary character. The original registry reports 0.1.97 for that older DLL; restoration preserves the original state.