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 配置。