现在的《英雄传说 6》存档修改器都可以修改人物的经验值(EXP),但是我发现修改成9999……,回游戏中战斗后增加经验值并不能提高相应的Level和其它属性值很是不爽。
通过玩的过程中我发现它的经验值和等级是有一定关系的。比如:等级3-NEXT 160,等级4-NEXT 250,等级5-NEXT 360,等级6-NEXT 490,其中160,250,360,490中临近两数的差是90,110,130,这3个差值之间刚好是等差的值20,我就大胆的猜测以后等级于经验值也是如此计算规则,找到了规律马上动手用C#写了一个规则类,用于计算等级于所需经验值。
public class CalcLevelExp
{
private int _Level;
// 等级 0 时的经验值
private int _Exp = 10;
/// <summary>
/// Initializes a new instance of the <see cref="CalcLevelExp"/> class.
/// </summary>
/// <param name="n_Level">等级</param>
public CalcLevelExp(int n_Level)
{
_Level = n_Level;
}
/// <summary>
/// Gets the exp.
/// </summary>
/// <value> 经验值</value>
public int Exp
{
get
{
Calc();
return _Exp;
}
}
/// <summary>
/// 计算规则
/// </summary>
private void Calc()
{
// 初始差值
int stNumber = 30;
// 差值
int inNumber;
for(int i=1; i<=_Level; i++)
{
// 循环计算累加到经验值上
inNumber = stNumber + (i - 1) * 20;
_Exp = _Exp + inNumber;
}
}
}
// 调用
private void button1_Click(object sender, System.EventArgs e)
{
// 计算30集所需要的经验值
CalcLevelExp _c = new CalcLevelExp(30);
textBox1.Text = _c.Exp.ToString();
}
哈哈这下输入等级计算出经验值在写入修改器,保存,进入游戏在打一仗,经验值升了,看看吧这回等级也自动升级了。