1

Тема: Приемы Мага Воздух [10] (Бездна)

Приобретя бота, у меня возникла проблема обучить его искусству мага воздуха.
Для начала я начал «обкатывать» его в Бездне.

Пока я имею всего 15 слотов и в программе бота не предусмотрено смена наборов приемов я остановился на следующих:

1. Магический барьер [10] – "wis_gray_manabarrier10"
2. Серое Мастерство - "wis_gray_mastery"
3. Призрачный Топор - "spirit_12_prot_100"
4. Знак Воздуха - "wis_air_sign"
5. Жертва Воздуху - "wis_air_sacrifice"
6. Статика - "wis_air_charge"
7. Заряд: Поражение - "wis_air_charge_dmg"
8. Жертва Огню - "wis_fire_sacrifice"
9. Медитация - "wis_gray_meditation"
10. Цепь Исцеления [10] - "wis_air_chaincure10"
11. Цель Воздуха - "wis_air_mark"
12. Искры [10] - "wis_air_sparks10"
13. Искра - "wis_air_spark"
14. Цепь Молний [10] - "wis_air_chainlight10"
15. Молния [10] - "wis_air_shaft10"
16. Посох  -)

Итак начнем.
Сначало используем защитные приемы:

1. Магический барьер [10]
Если нет Магического барьера
То    Магический барьер
Иначе    Если осталось < 100 Магического барьера
            То Магический барьер


if(typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_gray_manabarrier"]) != "object")
    _name = "wis_gray_manabarrier10";
else
{
    if(parseInt(top.Battle.oBattle.oMySlot.arrEffects["wis_gray_manabarrier"].GetTitle().innerHTML.match("<B>(\\d+)<\\/B>")[1]) < 100)
        _name = "wis_gray_manabarrier10";
}


2. Призрачный Топор (в Бездне больше всего ботов использующих рубящий)
Если дух > 10
То Призрачный Топор

if(top.Battle.oBattle.arrRes["spirit"].innerHTML > 10)
    _name = "spirit_12_prot_100";



3. Очиститься Кровью (для Грибници)

_name = "hp_cleance";


Затем вспомогательные приемы не требующие хода:

4. Серое Мастерство
Если дух > 10
То    Если нет эффекта Серое Мастерство
    То Серое Мастерство
    Иначе    Если целей эффекта Серого Мастерства < 5
                То Серое Мастерство

if(top.Battle.oBattle.arrRes["spirit"].innerHTML > 10)
{
    if(typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_gray_mastery"]) != "object")
        _name = "wis_gray_mastery";
    else
    {
        masteryCount = top.Battle.oBattle.oMySlot.oEffects.innerHTML.match(/<br><span[^>]*>.(\d)?<\/span><\/div><img[^"]*".+\/wis_gray_mastery\.gif">/i);
        if(masteryCount != null)
        {
            if(parseInt(masteryCount[1]) < 5)
                _name = "wis_gray_mastery";
        }
        else
            _name = "wis_gray_mastery";
    }
}

5. Знак Воздуха
Если нет эффекта Знак Воздуха
То Знак Воздуха

if(typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_air_sign"]) != "object")
    _name = "wis_air_sign";


6. Статика
Если на противнике нет Статики
То Статика

if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["wis_air_charge"]) != "object")
    _name = "wis_air_charge";


7. Заряд: Поражение
Если На противнике есть Заряды
То    Если на противнике = 5 Зарядов  ( > 4 )
    То Поражение

if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["wis_air_charge2"]) == "object")
{
    chargeCount = top.Battle.oBattle.oEnemySlot.oEffects.innerHTML.match(/<br><span[^>]*>.(\d)?<\/span><\/div><img[^"]*".+\/wis_air_charge2\.gif">/i);
    if(chargeCount != null)
    {
        if(parseInt(chargeCount[1]) > 4)
            _name = "wis_air_charge_dmg";
    }
}


8. Жертва Воздуху
Если сердец > 5
То Жертва Воздуху

if(top.Battle.oBattle.arrRes["hp"].innerHTML > 5)
    _name = "wis_air_sacrifice";


Приемы востановления манны/жизни:

9. Жертва Огню/Медитация
Если уровень манны < 66%
То   Жажда огню
     Если уровень манны < 10%
     То Медитация

if((top.Battle.oBattle.oMySlot.nMagic * 100 / top.Battle.oBattle.oMySlot.nMaxMagic) < 66)
{
    _name = "wis_fire_sacrifice";
    if((top.Battle.oBattle.oMySlot.nMagic * 100 / top.Battle.oBattle.oMySlot.nMaxMagic) < 10)
        _name = "wis_gray_meditation";
}



10. Искра/Цепь Исцеления [10]
Если уровень жизни < 66%
То Искра
   Если уровень жизни < 33%
   То Цепь Исцеления [10]

if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) < 66)
{
    _target = mylogin;
    _name = "wis_air_spark";
    if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) < 33)
    {
        _target = mylogin;
        _name = "wis_air_chaincure10";
    }
}


11. Цель Воздуха
Если духа > 10
То    Если нет на противнике Цель Воздуха
    To Цель Воздуха
    Иначе    Если на противнике < 5 Целей Воздуха
        То Цель Воздуха

if(top.Battle.oBattle.arrRes["spirit"].innerHTML > 10)
{
    if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["wis_air_mark"]) != "object")
        _name = "wis_air_mark";
    else
    {
        markCount = top.Battle.oBattle.oEnemySlot.oEffects.innerHTML.match(/<br><span[^>]*>.(\d)?<\/span><\/div><img[^"]*".+\/wis_air_mark\.gif">/i);
        if(markCount != null)
        {
            if(parseInt(markCount[1]) < 5)
                _name = "wis_air_mark";
        }
        else
            _name = "wis_air_mark";
    }
}


Боевые приемы:

12. Искры [10]

Если > 1 Противника и есть Жертва Воздуху
То Искры

if((top.Battle.oBattle.oGroupsLayer.getElementsByTagName("IMG")[1].sList.split(", ").length > 1)  &&
(typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_air_sacrifice"]) == "object"))
    _name = "wis_air_sparks10";


13. Искра

Если есть Жертва Воздуху
То Искра

if(typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_air_sacrifice"]) == "object")
    _name = "wis_air_spark";


14. Цепь Молний [10]

Если > 1 Противника
То Цепь Молний

if(top.Battle.oBattle.oGroupsLayer.getElementsByTagName("IMG")[1].sList.split(", ").length > 1) 
    _name = "wis_air_chainlight10";


15. Молния [10]  Выжигаем Большой Тяжёлый Молот

var enemies = top.Battle.oBattle.oGroupsLayer.getElementsByTagName("IMG")[1].sList.split(", ");
for(i=0; i<enemies.length; i++)
{
    if(enemies[i].indexOf("Большой Тяжёлый Молот") > -1)
        _target = enemies[i];
}
_name = "wis_air_shaft10";


16. Посох
Если Боевые приемы не активны
То    Если Медитация активна
    То Медитация
Иначе бьем Посохом

if((!top.Battle.oBattle.arrMethods["wis_air_chainlight10"].oMethod.bEnable) &&
(!top.Battle.oBattle.arrMethods["wis_air_shaft10"].oMethod.bEnable))
{
if(top.Battle.oBattle.arrMethods["wis_gray_meditation"].oMethod.bEnable)
     _name = "wis_gray_meditation";
else
     DoHit();
}

Отредактировано IgorFIN (2009-09-01 11:41:25)

(Please log in or register to see this URL)

2

Re: Приемы Мага Воздух [10] (Бездна)

IgorFIN пишет:

Нужна помощь для  реализации 2, 7 и 11 приемов

Напиши Зергу в аську.
Боюсь что более грамотных людей нет, а вопросы довольно сложные. По крайней мере для меня.

(Please log in or register to see this URL)

3

Re: Приемы Мага Воздух [10] (Бездна)

а ты такую штуку не пробовал - кастануть на противника заряд, потом щелкнуть правой кнопкой на иконке заряда->сохранить как   и глянуть как назвается картинка.   потом еще один заряд повесить и опять глянуть как называется картинка.  Если будут разные названия - то вот тебе и ответ.

БК - зло, БОТ - хорошо ™

4

Re: Приемы Мага Воздух [10] (Бездна)

IgorFIN пишет:

По идеи надо как то влесть в страничку боя в HTML и посмотреть... но пока не соображу как

Я думаю всё очень просто - во время боя нужно нажать ctrl+s , сохранить станичку и поковыряться в ней.

Интуиция - это способность головы чуять жопой.

5

Re: Приемы Мага Воздух [10] (Бездна)

IgorFIN пишет:

10.

if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) < 33)
{
    _target = "MyBot";
    _name = "wis_air_chaincure10";
}

Можно чтобы не мудрить использовать переменную mylogin. Без кавычек прямо пишем:

if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) < 33)
{
    _target = mylogin;
    _name = "wis_air_chaincure10";
}

(Please log in or register to see this URL)

6

Re: Приемы Мага Воздух [10] (Бездна)

IgorFIN пишет:
SnaF пишет:
IgorFIN пишет:

По идеи надо как то влесть в страничку боя в HTML и посмотреть... но пока не соображу как

Я думаю всё очень просто - во время боя нужно нажать ctrl+s , сохранить станичку и поковыряться в ней.

Как именно сохранить страничку с фреймом боя, а не основную?

Даже не имею представления как это сделать.

Отредактировано SnaF (2009-08-06 14:50:36)

Интуиция - это способность головы чуять жопой.

7

Re: Приемы Мага Воздух [10] (Бездна)

Заряд: Поражение

Если На противнике есть Заряды
То    Если на противнике = 5 Зарядов  ( > 4 )
    То Поражение

if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["wis_air_charge2"]) == "object")
{
    chargeCount = top.Battle.oBattle.oEnemySlot.oEffects.innerHTML.match(/<br><span[^>]*>.(\d)?<\/span><\/div><img[^"]*".+\/wis_air_charge2\.gif">/i);
    if(chargeCount != null)
    {
        if(parseInt(chargeCount[1]) > 4)
            _name = "wis_air_charge_dmg";
    }
}

Отредактировано IgorFIN (2009-08-24 13:47:20)

(Please log in or register to see this URL)

8

Re: Приемы Мага Воздух [10] (Бездна)

Срочно загоняем приемы в тэг [ code ][ /code ], что б ярче было и понятнее smile

Отредактировано Петро (2009-08-24 15:33:43)

Ответы на большинство вопросов связанных с ботом, вы найдёте здесь: (Please log in or register to see this URL)
(Please log in or register to see this URL) - проверил лично! Подробнее (Please log in or register to see this URL)

9

Re: Приемы Мага Воздух [10] (Бездна)

модернизируем

Заряд: Поражение
Если На противнике есть Заряды
То   Если на противнике = 1 Зарядов и Нр врага < 25
       То Поражение
       Если на противнике = 2 Зарядов и Нр врага < 50
       То Поражение
       Если на противнике = 3 Зарядов и Нр врага < 75
       То Поражение
       Если на противнике = 4 Зарядов и Нр врага < 100
       То Поражение   
       Если на противнике = 5 Зарядов
       То Поражение

if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["wis_air_charge2"]) == "object")
{
    chargeCount = top.Battle.oBattle.oEnemySlot.oEffects.innerHTML.match(/<br><span[^>]*>.(\d)?<\/span><\/div><img[^"]*".+\/wis_air_charge2\.gif">/i);
    if(chargeCount != null)
    {
        chargeN = parseInt(chargeCount[1])
        switch(chargeN)
        {
        case 2;
            {
                if(top.Battle.oBattle.oEnemySlot.nHP < chargeN*25)
                    _name = "wis_air_charge_dmg";
            }
            break;
        case 3;
            {
                if(top.Battle.oBattle.oEnemySlot.nHP < chargeN*25)
                    _name = "wis_air_charge_dmg";
            }
            break;
        case 4;
            {
                if(top.Battle.oBattle.oEnemySlot.nHP < chargeN*25)
                    _name = "wis_air_charge_dmg";
            }
            break;
        case 5;
            {
                _name = "wis_air_charge_dmg";
            }
            break;
    }
    else
    {
        if(top.Battle.oBattle.oEnemySlot.nHP < 25)
         _name = "wis_air_charge_dmg";
    }             
}

Не работает

Отредактировано IgorFIN (2009-09-01 13:23:26)

(Please log in or register to see this URL)

10

Re: Приемы Мага Воздух [10] (Бездна)

у меня маг земли, но хочу использовать воздушный щит и туманный образ, кто их использует? помогите написать прием, у меня маг 10. заранее спасибо

11

Re: Приемы Мага Воздух [10] (Бездна)

Tudorake пишет:

у меня маг земли, но хочу использовать воздушный щит и туманный образ, кто их использует? помогите написать прием, у меня маг 10. заранее спасибо

Все еще актуально, сегодня весь день перепробовал много вариантов ни как не могу найди  может кто знает как прописать туманку , прошу поделиться

12

Re: Приемы Мага Воздух [10] (Бездна)

У тебя же маг земли , для тумки нужны умения в воздухе примерно 7

13

Re: Приемы Мага Воздух [10] (Бездна)

firesky пишет:

У тебя же маг земли , для тумки нужны умения в воздухе примерно 7

есть все как надо, только не могу бота научить туманку юзать
там картинка называется wis_air_shield07.gif
пытался гдето 20 версий ни одна не подошла
примеры
_name = "wis_air_shield07";
_name = "wis_air_shield7";
_name = "wis_air_shield10";
_name = "wis_air_shield";
все не хочет

Отредактировано Tudorake (2013-12-19 22:00:49)

14

Re: Приемы Мага Воздух [10] (Бездна)

помогите мага земли настроить на пещеру

15

Re: Приемы Мага Воздух [10] (Бездна)

а как для лука поставить прием
defence_bestposition.gif
тоже не хочет нажимать (((
там их два похожишь... от защиты и от атаки... не тот не тот не нажимает ((

Лучше быть умным и иногда тупить, чем быть тупым и постоянно умничать

16

Re: Приемы Мага Воздух [10] (Бездна)

Юлька пишет:

а как для лука поставить прием
defence_bestposition.gif
тоже не хочет нажимать (((
там их два похожишь... от защиты и от атаки... не тот не тот не нажимает ((



_name = "defence_bestposition_blk";
_name = "defence_bestposition_hit";

17

Re: Приемы Мага Воздух [10] (Бездна)

туманный образ еще актуально

18

Re: Приемы Мага Воздух [10] (Бездна)

Tudorake пишет:

туманный образ еще актуально

Тоже понадобился, кто-нибудь разобрался?