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 POI | 50,立即存入持久化余额(跳过对局结束时的结算) |
幽灵大军的怪物被禁用了奖励,不会掉落任何东西。
打开圣坛
/mbs meta
打开灵魂回响圣坛对话框。该对话框会展示:
- 当前灵魂回响余额。
- 每条升级路线的当前等级、上限、当前生效数值、下一级预览以及下一级所需价格。
- 每条路线对应的购买按钮(或
MAXED指示)。
/mbs meta upgrade <track>
为指定路线购买一级,并重新打开对话框,从而可以连续购买多次升级。
升级路线
| 路线 | 指令键 | 上限 | 效果 |
|---|---|---|---|
| 初始 HP | hp | 4 | 等级 0 = 10 HP(基准),每级 +2 HP。满级:18 HP。 |
| 初始幸运 | luck | 4 | 等级 0 = 0 幸运,每级 +2 幸运。满级:8。 |
| 初始速度 | speed | 4 | 在 BASE_WALK_SPEED 上的步行速度乘数。等级 0 = 1.00x,每级 +0.05。满级:1.20x。 |
| 武器槽位 | weaponslots | 1 | 等级 0 = 1 槽,等级 1 = 2 槽。 |
| 被动槽位 | passiveslots | 3 | 等级 0 = 2 槽,每级 +1。满级:5 槽。 |
| 额外生命 | extralives | 2 | 预存的 Second Wind 复活次数。等级 1 = 1 条命,等级 2 = 2 条命。 |
| 禁用代币 | bantokens | 3 | 每场对局的代币,可在剩余对局中将一种奖励选项从奖励池中永久移除。 |
| 重摇代币 | rerolltokens | 3 | 每场对局的代币,可重新抽取当前的奖励三连。 |
价格曲线
大多数路线使用默认的几何曲线:
cost(targetLevel) = round(10 * 2.5^(targetLevel - 1))
| 目标等级 | 价格(灵魂回响) |
|---|---|
| 1 | 10 |
| 2 | 25 |
| 3 | 63 |
| 4 | 156 |
额外生命 经过手动调校,使用固定的价格表:第一条命 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() 运行时(购买时、对局结束的回响结算时、插件停用时)都会刷写到磁盘。
重置进度
游戏内没有用于清空元进度的指令。要为某位玩家(或所有人)重置,请停止服务器并编辑 / 删除 meta_progression.yml 中对应的段落。