树场全解析(更新顺序篇)
angel丶抱
2024年10月02日 12:53
收录于文集
共4篇

更新顺序篇

对于活塞

同区块内不同活塞优先级是随机的

对于活塞推动的方块

同一活塞推动:对于附着的方块A,和B,先计算A到B的位置向量AB,然含给定活塞的推动方向P,如果AB和P的点乘(数量积)大于0,也就是这俩相向量的夹角是锐角,那么B会比A先动,否则A先动(出处SAC_Official)

不同活塞推动:依据所推活塞的更新顺序

对于发射器

同区块内优先级遵循计划刻优先顺序。

对于一个区块

每gt的更新顺序

随机刻更新

更新队列更新

更新队列更新

方块实体更新

(出处:hhhxiao_)

对于不同区块

我们需知,mc的随机刻更新,更新队列更新,更新队列更新,方块实体更新(活塞和发射器隶属于此,是以区块为单位的,一个区块的这些内容更新完才会开始更新下一个区块的内容,也就是说不同区块的条件下,发射器和活塞的优先级是固定的。

那么我们是否可以根据此利用优先级做出高速树场呢?很遗憾,同一个玩家加载的区块之间的优先级在世界时钟下,每20gt会随机打乱一次,也就是你所想要的优先级并不是恒有的。

可恶,难道要止步于此了?

非也,固定优先级的办法还是有的。

1,常加载区块一定优先于普通区块,而生存服务器中,末地是天然形成常加载区块

2,上文我们说的是"同一个玩家加载的区块",那要是不同玩家呢?是的,不同玩家之前的区块优先级不会被打乱,只会在玩家本身加载的区块中内部打乱。就是说a玩家加载的区块若是优先于b玩家,那么这个优先级是恒有的。