- Revised the tagline in `docusaurus.config.js` for improved clarity on the documentation's focus. - Removed German localization support from the configuration to streamline the user experience. - Updated navigation items in the sidebar to better reflect the current structure, emphasizing player and developer resources. - Enhanced the README and various documentation files to clarify the repository layout and improve accessibility for users. - Adjusted links and descriptions throughout the documentation to ensure consistency and accuracy. This commit aims to enhance the overall clarity and usability of the documentation.
4.2 KiB
title, sidebar_label
| title | sidebar_label |
|---|---|
| FMF.HexLabelMod | FMF.HexLabelMod |
gregMod.HexLabelMod/ (assembly FMF.HexLabelMod.dll)
Purpose
Standalone MelonLoader mod for Data Center (Waseku) that overlays the hex color code of each CableSpinner and Rack directly in-world, so you can identify cable and rack colors at a glance without opening any menu.
Rewritten from the former root HexLabelMod for the FrikaModdingFramework workflow, now running fully standalone.
Requirements
| Dependency | Notes |
|---|---|
| MelonLoader | With generated IL2CPP assemblies |
This mod runs standalone and does not require FMF runtime APIs.
Installation
- Drop
FMF.HexLabelMod.dllinto yourMods/folder. - Launch the game — the config file is created automatically on first run at:
UserData/hexposition.cfg
Configuration
Edit UserData/hexposition.cfg to adjust label positioning and font sizes. The file is auto-generated with defaults on first launch and regenerated if any keys are missing.
# Hex Label Position Config
# File: UserData/hexposition.cfg
# Edit values, then restart game.
# Spinner (UI text near cable spool)
spinner_offset_x=0
spinner_offset_y=-6
spinner_font_min=1.8
spinner_font_max=6.2
spinner_font_scale=0.24
# Rack (world-space text at rack back-right-bottom)
rack_offset_right=-0.03
rack_offset_back=0.06
rack_offset_down=-0.02
rack_font_size=42
rack_character_size=0.05
rack_scale=1
Config Keys
| Key | Type | Default | Description |
|---|---|---|---|
spinner_offset_x |
float | 0 |
Horizontal offset relative to the source label |
spinner_offset_y |
float | -6 |
Vertical offset relative to the source label |
spinner_font_min |
float | 1.8 |
Minimum auto-size font size (TMPro) |
spinner_font_max |
float | 6.2 |
Maximum auto-size font size (TMPro) |
spinner_font_scale |
float | 0.24 |
Scale factor applied to the source label's font size |
rack_offset_right |
float | -0.03 |
World-space offset along rack's right axis |
rack_offset_back |
float | 0.06 |
World-space offset along rack's back axis |
rack_offset_down |
float | -0.02 |
World-space offset along rack's down axis |
rack_font_size |
int | 42 |
Font size for the world-space TextMesh label |
rack_character_size |
float | 0.05 |
Character size for the world-space TextMesh label |
rack_scale |
float | 1 |
Uniform world-space scale of the rack label object |
Live Reload (restricted)
Pressing Ctrl+F1 toggles live config reload (6-second interval), allowing you to tune label positions without restarting the game. This feature is restricted to a specific Steam account and will silently do nothing for all other users.
Build
dotnet build .\gregMod.HexLabelMod\FMF.HexLabelMod.csproj
Output lands in the standard MelonLoader Mods/ folder as configured in the .csproj.
How It Works
- Startup — The mod defers full initialization until MelonLoader's
Latest.logconfirms the Steam runtime is ready (SteamID or Steam marker detected). - Spinner labels — Every
CableSpinnergets a clonedTextMeshProUGUIlabel injected into its UI hierarchy, displaying the resolved hex code in white. Color is read fromrgbColor, then from the_BaseColor/_Colormaterial property as fallback. - Rack labels — Every
Rackgets a world-spaceTextMeshlabel positioned at its back-right-bottom corner, facing away from the rack front. - Scan loop — Active spinners and racks are re-checked every 1.5 seconds to catch newly spawned objects.
- Harmony patch —
CableSpinner.Startis patched to inject the label immediately on spawn, before the first scan cycle runs.
Notes
- Original gameplay behavior is unaffected.
- This mod is developed in
gregMod.HexLabelMod/(workspace root), not under a legacymods/tree. - The config file is fully rewritten if any expected keys are missing (for example, after an update adds new keys).
- FMF assembly presence is no longer required as a startup gate.
Sources
- Module path:
gregMod.HexLabelMod/ - See also: Mods overview