跳转至

避免浪费魔法

法术训练器在机器人使用者中也很常见。法术训练器等到玩家魔法值满,然后施放法术增加玩家的魔法等级或属性。这让玩家能快速提升魔法技能,因为他们永远不会因为魔法值满而浪费魔法恢复。

有了检测魔法变化的方法和施放法术的动作函数,机器人可能包含以下法术训练器伪代码:

void onManaIncrease(int mana, int delta) {
    if (delta >= 100) // 玩家在使用魔法药水,
        return; // 他们肯定需要魔法,中止
    if (mana >= MAX_MANA - 10) // 魔法几乎满了,浪费一

        castManaWasteSpell();
}

这个函数把玩家魔法值和魔法增加量(delta)作为参数。如果魔法增加量高于某个数量,它假设玩家在使用药水或其他物品补充魔法,不会施放任何额外法术。否则,如果玩家有充足魔法,函数就发射任意旧法术为玩家赚取经验值。

其他常见的响应式破解包括自动装填(立即重装弹药)、自动闪避(躲避来袭的投射物)和自动连击(立即攻击附近盟友攻击的同一目标)。实际上,你能添加到机器人的响应式破解数量,只受机器人能观察到的游戏事件数量乘以它能对每个事件发送的有效且有帮助的响应数量限制。