跳到主要内容

MegaBlock Survivors 元进度

MegaBlock Survivors 使用**灵魂回响(Soul Echoes)提供跨对局成长。玩家在对局中收集灵魂回响,再到灵魂回响圣坛(Soul Echo Shrine)**消费,永久改善后续对局的初始配置。

持久化状态保存在 plugins/MegaBlockSurvivors/meta_progression.yml 中,以玩家 UUID 为键。保存同步执行,并以原子方式替换文件。如果购买的保存失败,扣款和升级都会回滚。获得的灵魂回响在保存失败后仍留在内存中,但在后续保存成功之前,重启可能使其丢失。加载失败会保留现有内存状态,并禁止保存和购买,直到重新加载成功。请在服务器日志中检查持久化错误。

获得灵魂回响​

灵魂回响在对局中以名为 Soul Echo 的 LAPIS_LAZULI 掉落,积累在玩家背包中,并在对局结束清理时结算到持久化余额。结算只按材质识别,所以会消耗并计入背包内的所有青金石,包括从外部带入的普通青金石。请将小游戏背包与生存背包分开。

来源数量
任意普通(非 Boss)怪物击杀1,按每次击杀 1% 的概率掷出
传送门 Scorpion —— 普通10-15,必得
传送门 Scorpion —— 精英15-24,必得
传送门 Scorpion —— 噩梦25-35,必得
最终 Boss(Challenge 模式)round(100 * 1.5^tributes) —— 无贡品时为 100,带 1 / 2 / 3 份 Boss 贡品时分别为 150 / 225 / 约 338
Soul Shard Cache POI50,立即存入持久化余额(跳过对局结束时的结算)

幽灵大军的怪物被禁用了奖励,不会掉落任何东西。

打开圣坛​

/mbs meta

打开灵魂回响圣坛对话框。该对话框会展示:

  • 当前灵魂回响余额。
  • 每条升级路线的当前等级、上限、当前生效数值、下一级预览以及下一级所需价格。
  • 每条路线对应的购买按钮(或 MAXED 指示)。
/mbs meta upgrade <track>

为指定路线购买一级,并重新打开对话框,从而可以连续购买多次升级。

对局中也允许购买。武器与被动槽位限制读取当前进度记录,因此能在本场对局中改变。初始 HP、幸运、速度、额外生命、禁用代币和重摇代币则在玩家初始化时复制;购买这些路线不会在已开始的对局中补充或改变其初始值。

升级路线​

路线指令键上限效果
初始 HPhp4等级 0 = 10 HP(基准),每级 +2 HP。满级:18 HP。
初始幸运luck4等级 0 = 0 幸运,每级 +2 幸运。满级:8。
初始速度speed4在 BASE_WALK_SPEED 上的步行速度乘数。等级 0 = 1.00x,每级 +0.05。满级:1.20x。
武器槽位weaponslots1等级 0 = 1 槽,等级 1 = 2 槽。
被动槽位passiveslots3等级 0 = 2 槽,每级 +1。满级:5 槽。
额外生命extralives2预存的 Second Wind 复活次数。等级 1 = 1 条命,等级 2 = 2 条命。
禁用代币bantokens3每场对局发放的代币,用于从后续抽取中过滤某种装备类型,但受下述奖励池耗尽时的备用规则影响。
重摇代币rerolltokens3每场对局的代币,可重新抽取当前的奖励三连。

价格曲线​

大多数路线使用默认的几何曲线:

cost(targetLevel) = round(10 * 2.5^(targetLevel - 1))

目标等级价格(灵魂回响)
110
225
363
4156

额外生命 经过手动调校,使用固定的价格表:第一条命 100,第二条命 200。

禁用 / 重摇机制​

禁用与重摇路线会授予每场对局的代币,玩家可以在任意奖励界面消耗它们 —— 升级、宝箱或沙漏。界面在提供这些按钮之前会先记下自己的奖励池类型,因此在宝箱界面重摇会重新抽取被动,而在沙漏界面重摇则会重新抽取完整奖励池。

  • 禁用:消耗一枚禁用代币,把所选装备类型加入本场对局的禁用集合。后续抽取和第一次备用抽取都会过滤这些类型。如果备用池中的所有类型也被禁用,最后的备用方案会恢复未过滤的奖励池,因此候选耗尽时不能保证禁用类型永不返回。可用它排除不想升级的被动,获取其他选项。
  • 重摇 —— 消耗一枚重摇代币,根据(去除已禁用类型后的)奖励池重新抽取当前的奖励三连。不会永久改变奖励池。

剩余数量显示在奖励界面的标题行上(Pick your reward! | X bans X rerolls)。禁用是按槽位的按钮 —— 三个选项各自下方都有一个「Ban <name>」控件 —— 而重摇是单个界面级按钮。任一控件在其代币数归零时会被完全隐藏;若两种代币都没有,标题会回退为简洁的「Pick your reward!」。

代币余额会在每场对局开始时重置为元进度路线决定的数值——它们不会跨场累计。

存储格式​

meta_progression.yml 的布局:

players:
<player-uuid>:
soulEchoes: 0
tracks:
startingHp: 0
startingLuck: 0
startingSpeed: 0
weaponSlots: 0
passiveSlots: 0
extraLives: 0
banTokens: 0
rerollTokens: 0

缓存为并发结构,每次 MetaProgressionManager.save() 运行时(购买时、对局结束的回响结算时、拾取 Soul Shard Cache 时、插件停用时)都会刷写到磁盘。

重置进度​

游戏内没有用于清空元进度的指令。要为某位玩家(或所有人)重置,请停止服务器并编辑 / 删除 meta_progression.yml 中对应的段落。