Documentation

Changelog

Release history for MTR Surveyor.

v1.0.0

Initial release of the Xaero-focused fork.

New features

  • Xaero World Map route view integration — MTR route networks are now rendered directly onto Xaero’s World Map, using an environment-matrix-projection coordinate transform to map world X/Z into the map’s screen space. Lines follow the actual platform-to-platform geometry and are colored per route.
  • Conditional mixin loading via XaeroMixinPlugin — Xaero world-map mixins are only applied when Xaero’s World Map is detected at startup, so the mod loads safely when only Xaero’s Minimap (or neither) is installed. No more NoClassDefFoundError crashes from missing dependencies.
  • Fully decoupled client-side data access — the mod no longer relies on MTR’s server-side data as the sole source. It reads from both the live MinecraftClientData instance and the dashboard instance directly on the client. This lets it run as a standalone client component on third-party servers without the mod installed, and fixes the desync and crashes caused by the old server-broadcast approach.

Fixes & internal optimizations

  • Improved read success for platform, station and depot route data, fixing occasional NullPointerExceptions and missing station names during the initial data inspection.
  • Refactored the waypoint sync iteration and dispatch logic, fixing multi-point reuse confusion in the map loader and duplicate-coordinate stacking caused by chunk-refresh iteration.

Compatibility

  • Target: Forge 1.20.1
  • MTR: ≥ v4.0.2-hotfix-1
  • Xaero’s World Map: ≥ v1.40.11
  • Xaero’s Minimap: ≥ v25.3.10

Credits

Forked from mtrsurveyor by AmberFrost. Maintained by BenLi06. Released under the MIT License.