主城地图基本上是每次服务器遭熊的重灾区……而且由于co i的功能限制(展示框是实体)还不一定每次都恢复得过来(苦了日酱了)
(昨天听说又来了个熊干掉了27张图和展示框……生无可恋.ing
所以打算升级一下主城地图的维护方式。
目标:
- 保证维护简便,每个玩家都能够参与到更新
- 保证安全性,避免出现某个地图块完全丢失的情况。
现在我们讨论出一个新的方案如下:
- 使用nyaautil 展示框保护功能,把地图先都锁起来:
/nu exhibition set
可以将目标物体展示在展示框内,同时退回物品本身。
- 展示框锁住后退回的地图(称为原件)会被送至一个仓库进行冷备份;同时会复制一份地图副本(记为A);冷备份的仓库的位置可能不会对所有人公开。
- _副本A送往主城的箱子中,作为更新用:对于地图来说复制的地图与原地图具有相同的id,更新一份地图则所有id相同的地图会被更新。为了方便查找,地图应该会被编号,编号规则暂定保持不变,
X = floor(x / 512), Z = floor(z / 512)
。
- 副本A可能还会复制另一份副本B,用于常规异地备份,交通比较方便,一般如果副本A中有图缺失会从副本B中复制回来。
这样的话应该可以降低损失,不过需要在更新图的时候学会找对应编号的图……
大家对这个方案有什么看法吗,或者这个方案有没有我们没注意到的技术问题?