创建赛道地图:分叉²

创建赛道地图:分叉²

您的大型网络²版创火车网络的实时网页地图。

Create Track Map: Fork²

你的 Create 火车网络的实时网页地图,为大规模场景重建。相同的功能,在巨大网络上的性能显著提升。

⚠️ 这是一个分支的分支。 它不是 原版,也不是 AyOhEe 的非官方分支。如果你的网络规模较小,请使用其中之一。

为什么存在这个分支

原版 CTM 基于全状态轮询和 Leaflet SVG 渲染器构建。两者在超过几百个轨道段时都会崩溃。本分支保持用户可见行为不变,并重写了底层所有内容:

  • 使用增量更新的 OpenLayers Canvas 渲染器
  • 单个 SSE 端点提供增量更新,取代四个全状态流
  • 列车运动在客户端插值;服务器以 1 Hz 而非 2 Hz 轮询
  • 传输时使用 Gzip 压缩、三位小数坐标、服务器端曲线展平
  • 每边缓存和拓扑短路优化,使静态网络几乎不消耗每 Tick 资源

压力测试结果(3000 个轨道段,200 个信号,20 辆列车,5 个客户端):

上游版本 本分支
线路字节/s ~6.4 MB/s ~3 KB/s
浏览器操作/Tick ~6000 DOM ~20 个要素

兼容性

Minecraft 加载器 Create
1.21.1 NeoForge 21.1.x ≥ 6.0
1.20.1 Forge 47.1.x (也支持 NeoForge 1.20.1) ≥ 6.0.6

网络协议变更

原有的四个 *.rt SSE 端点已被替换为 /api/v2/stream。传统的 REST GET 请求仍然可用。使用旧流式 API 的第三方客户端需要更新。

致谢

本分支由 NexusRealms 创建,未经上述两者认可。请不要就本分支的任何问题向他们提交 Issue——在我们的 Discord 上报告。