传奇里要让怪物承受伤害呈现固定上限,最稳妥的做法是修改怪物数据库中的mp字段。mp填写200时,怪物单次承受的普通攻击、魔法攻击或道术攻击最高按200点计算;mp填写0时,则不启用伤害封顶。需要这属于受伤害封顶,并不是把每一下伤害强制锁定为200点:角色实际伤害低于200时,仍按真实数值扣血,因此mp只能限制高额爆发,不能让所有攻击显示完全相同的数字。

设置操作应先停止服务端并备份monster.db,再用dbc2000打开对应怪物数据库,按怪物名称或编号找到目标记录,确认mp字段位置后填入需要的上限值。例如将某个首领mp改为200,保存数据库并重新加载怪物数据;如果服务端没有热加载功能,就重启m2后再测试。测试时应分别使用普通攻击、魔法、道术、暴击和高攻击装备,观察单次伤害是否超过设定值。修改后已经存在的怪物可能仍保留旧数据,最稳妥的做法是清除原怪物并重新刷新,再进行对比。
不同玩家阶段应按主力单次伤害确定封顶数值,而不是盲目追求越低越好。新手区域的怪物,可把mp设在普通攻击上限之上,只限制极端装备带来的秒杀;中期地图适合把mp压到主力技能单次爆发的三分之一到二分之一,让持续输出、攻击速度和走位仍有价值;高阶首领则可用较低上限控制瞬间爆发,但必须同步检查怪物血量和刷新时间。比如原本一次技能能打1000点,mp设为200后,该次最高只按200点结算,单次伤害最多减少800点,但连续施法、多人集火和附加扣血效果仍可能维持较高总输出。
真正需要每次都固定造成同一数值时,不能只依赖mp字段,因为mp只负责封顶,不负责抬高低伤害攻击。此时应使用服务端已有的怪物受击脚本、技能伤害接口或插件,将实际伤害直接改写为指定数值,并分别测试物理、魔法、道术、暴击、合击、毒伤、切割和百分比扣血是否绕过规则。常见误区是把mp当成怪物攻击力、把200误解为每次必掉200血,或只测试普通攻击就直接上线;完成修改后应至少用低攻击与高攻击角色各测试一次,确认低伤害不被强行补足,高伤害也不会突破上限。