TrainCarts/卡顿
使用 TC 插件时可能在某些功能上会造成服务器或客户端的卡顿。该页面会展示卡顿的原因细节,以及如何去缓解卡顿。
复杂的 3D 模型
Minecraft 不太擅长渲染复杂的体素模型。如果你的服务器上装载有复杂模型的自定义资源包,这可能会导致客户端的帧数下降。请在上传自定义资源包到服务器之前尽可能优化和查看模型。JSON 文件的大小是最强有力的指标。
巨大的矿车
在组件编辑器中配置矿车的物理属性时,矿车的大小可以设置的非常大。这会改变实体本身的边界框,并导致服务器的 TPS 下降。主要原因是服务器对于碰撞箱的计算量过大。为防止这些卡顿,可禁用列车的方块碰撞。
Command: | /train collision block cancel |
---|---|
Permission: | train.property.collision |
超长的等待距离
配置列车的等待距离属性,以便列车与前车保持距离。这个属性会使列车始终检测前方的轨道。因此如果等待车距设置太高可能会导致服务器的 TPS 下降。
保持区块加载
列车可以设置为保持区块加载,但加载过多的区块也可能会降低服务器的性能。区块加载过多会消耗 RAM,这可能会导致内存耗尽。一些区块可能会包含实体或红石装置,都会导致服务器的 TPS 下降。当启用这个属性的列车移动时,它们会不断加载和卸载区块,这也可能会导致问题。
通常单辆列车启用区块加载属性并不会发生什么,这和玩家移动时会加载和卸载区块相同。但如果服务器上有数百辆这样的列车就可能会造成问题。
限制列车数量
你可以编辑plugins/Train_Carts/config.yml
来限制每个世界的 TC 矿车实体数量,这可以防止失控的生成牌或玩家滥用导致服务器崩溃。
# 限制服务器的矿车数量。 cartLimits: # TC 矿车在世界上能存在的最大数量。 # 如果数量达标,则不能再放置/生成矿车。 # 值设置为 -1 可以禁用限制(默认值)。 maxCartsPerWorld: -1 # 是否将已卸载的列车/矿车算在世界限制的列车数量中。 countUnloaded: false # 列车的最大车厢数量。 # 当列车车厢数量达标时,其他矿车将不会再与这辆列车进行链接, # 并且也不能生成超过车厢数量限制的列车。 # 设置为 -1 可以禁用限制,允许任何长度的列车(默认值)。 maxCartsPerTrain: -1
保存列车生成限制
除了全局限制外,还可以为每个保存的列车设置生成限制。使用/train save name
保存列车后,你可以使用/savedtrain name spawnlimit <limit>
设置生成限制。
当列车数量达标时,配置了列车名称的生成牌和列车生成箱将不能再生成列车。对于交通网络中的自动生成牌特别有用,结合将 config.yml 中的destroyAllOnShutdown
设置为 true 使用更佳。