PickLeveling 配置
主配置 config/iguanatweakstconstruct.cfg 的 PickLeveling 分类,对应 挖掘等级提升。
分类注释:Leveling Module: Allows pickaxes to gain a mining level with enough XP. Should be used with the HarvestLevel Module.
完整选项
| 配置键 | 类型 | 默认 | 范围 | 含义 |
|---|---|---|---|---|
pickaxeBoostRequired |
boolean | true |
— | 总开关:所有镐的挖掘等级被扣 1,必须完成一次挖掘等级提升(或头颅修饰符)才能恢复 |
allowLevelingBoost |
boolean | true |
— | 镐使用过程中积累挖掘等级经验 |
addMobHeadBoost |
boolean | true |
— | 允许用生物头颅提升镐的挖掘等级 |
mobHeadBoostNeedsModifier |
boolean | false |
— | 头颅提升需要消耗一个空修饰符槽 |
xpRequiredPickBoostPercentage |
int | 100 | 1~999 | 挖掘提升所需经验百分比 |
xpPerBoostLevelMultiplier |
float | 1.12 | 1.0~9.99 | 挖掘提升经验的指数系数 |
⚠️
xpPerBoostLevelMultiplier写在ToolLeveling分类,不在PickLeveling下。源码中configfile.getFloat("xpPerBoostLevelMultiplier", CATEGORY_Leveling, ...)用的第二个参数是CATEGORY_Leveling,与紧邻上方的xpRequiredPickBoostPercentage分类不一致。这是一处源码层面的分类错位,整合包改配置时需注意实际位置。
pickaxeBoostRequired 的效果
默认 true 时,LevelingLogic.addLevelingTags 首次给工具写入等级数据时执行:
tag.setInteger("HarvestLevel", hlvl - 1);
即任何工具(不只是镐)的挖掘等级都被扣掉 1 档。玛玉灵镐造出来只有阿迪特级(7),必须提升一次才能达到设计的 9 级。
pickaxeBoostRequired 为 false 时不扣减,工具保持材料原级。
mobHeadBoostNeedsModifier 的两态行为
ModMiningLevelBoost.canModify 与 modify 的组合:
true:头颅提升需要工具上有空闲修饰符槽(Modifiers > 0),且扣掉 1 个;false(默认):无槽也能用,modify内部调levelUpMiningLevel后手动把Modifiers加回 1,抵消父类ModBoolean.modify的扣减。
经验曲线
base = 100(武器 140 / 弓 200),再按工具类型调整
if (harvestLevel >= _2_copper)
base *= pow(xpPerBoostLevelMultiplier, harvestLevel - 2) // 默认 1.12^(等级-2)
if (harvestLevel == 0)
base /= xpPerBoostLevelMultiplier²
base *= xpRequiredPickBoostPercentage / 100
材料的 xpAmount 系数不作用于挖掘提升 XP(源码注释:// XP Multiplier applies to all tools, but not to "mining boost" XP.)——因为 getXPMultiplier 只在 miningBoost == false 分支被调用。
经验与工具等级共用同一次累积(addXP 同时给两条曲线加同一个值),见 工具等级系统。
相关配置
挖掘等级本身的定义(10 档)、钻石/绿宝石修饰符的改写行为,以及材料耐久速度系数都在 HarvestLevelTweaks 配置。