1

Тема: Случайный юз приёма

... (вместо вступления)
и в продолжение темы (Please log in or register to see this URL) давайте сделаем случайный юз приёма.

Идея первая: есть ситуации, когда приём никогда не надо использовать, вообще. Например: 11м лвл критом королеву и хлюпов быстрее убить на энтере, не кидая порезов ни на кого из них.

Идея вторая: есть ситуации, когда приём надо использовать обязательно: например, если тактик удара уже 25, то сделаем усиленные.

Идея третья: при возможности я могу захотеть использовать приём Прикрыться, а могу не захотеть... Скажем в 35 случаях из 100 я буду использовать этот приём...

Засовываем это всё в код приёма:

var v_cast = Boolean(false);
var v_cast_abs = Boolean(false);
var v_dont_cast_abs = Boolean(false);
var v_cast_rand = Number(35);    // % шанса каста (при не срабатывании абсолютов)
var v_cast_rand_min = Number(0);
var v_cast_rand_max = Number(99);
 
/*******************************
| НЕ используем приём (всегда) |
*******************************/

if (   (false)
// если в команде противников есть ...
    || (top.Battle.oBattle.oGroupsLayer.getElementsByTagName("IMG")[1].sList.indexOf("Хлюп") != -1)
    || (top.Battle.oBattle.oGroupsLayer.getElementsByTagName("IMG")[1].sList.indexOf("Королева Грибницы") != -1)
// если ХП противника маньше ... && противник не марочный
    || ((top.Battle.oBattle.oEnemySlot.nMaxHP < 500) && (top.Battle.oBattle.oEnemySlot.nMaxHP != 100))
// если на противнике есть ggsvern и у него 2к ХП (гусеницы с 3 этажа)
    || (   (true)
        && (top.Battle.oBattle.oEnemySlot.nMaxHP == 2000)
        && (typeof(top.Battle.oBattle.oEnemySlot.arrEffects["ggsvern"]) == "object")
        && (top.Battle.oBattle.sEnemyLogin.indexOf("Увесистый Гусениц") == 0)
       )
   )
{
    v_dont_cast_abs = true;
}
 
/*******************************
| Используем приём (всегда)    |
*******************************/

if (v_dont_cast_abs === false)
{
    if (   (false)
// если противник ...
                    // Бездна
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Страж Дайтон") == 0)
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Служитель Бездны") == 0)
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Большой Тяжелый Молот") == 0)
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Гарл Йонни Салистон") == 0)
                    // Катакомбы
            || (false)
                    // Потеряный вход
            || (false)
                    // ПТП
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Дарьяна Корт") == 0)
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Изгнанник Мглы") == 0)
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Маул Счастливчик") == 0)
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Заблудшая Душа") == 0)
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Дух-Хранитель") == 0)
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Механический Убийц") == 0)
                    // Sand
            || (false)
                    // Грибница
            || (false)
                    // Передовая
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Душа Кроггентайла") == 0)
        || (top.Battle.oBattle.sEnemyLogin.indexOf("Командир") == 0)
       )
    {
        v_cast_abs = true;
    }
/*******************************
| Используем приём (иногда)    |
*******************************/

    if (v_cast_abs === false)
    {
        if (   (false)
// если - иногда!
            || (true)
           )
        {
            if (v_cast_rand > Math.floor(v_cast_rand_min + Math.random() * (v_cast_rand_max - v_cast_rand_min + 1)))
                v_cast = true;
            else
                v_cast = false;
        }
    }
/*******************************
| Приём                        |
*******************************/

  if ((v_cast_abs === true) || (v_cast === true))
    {
//    _name = "Призрачная защита";
        _name = "spirit_block25";
//        _break = true;
    }
}

Принимаются ваши коменты/замечания...

п.с. это пример кода, шаблон, а не готовый приём под призрак... реальные условия и сам приём выбирать вам на свой вкус....

Отредактировано otherway (2013-07-27 15:58:01)

(Please log in or register to see this URL)

2

Re: Случайный юз приёма

идея шикарная, шаблонность боя пропадет.

3

Re: Случайный юз приёма

Пещеры уже сто лет не меняются. Шаблонность боя в пещерах даже у людей выработалась.
В хаотах же нет такого понятия "хочу/не хочу", есть прием- надо клацнуть пока не убили  big_smile Либо сложные скрипты по выжиданию определенных комбинаций.
Первые две идеи не имеют ничего общего с рандомизацией, третья, в принципе, не особо нужна.
Имхо: сложно, не нужно, но спасибо smile

У меня все работает, что я делаю не так ?

4

Re: Случайный юз приёма

мне 11му например грибницу рыть быстрее на энтере) хотя можно перед определенными босами менять файл приемов