26

Re: Приемы для уворота

Fadal пишет:
pop-corn пишет:

//   ставь перед строкой - тогда код этой строки не будет работать

Например:
//top.Chat.Self.AddMessage("Выполнено");

НЕ помогло... sad

А не проще удалить ? ето ведь просто послания нам  smile....

27

Re: Приемы для уворота

Все разобрались....Спасибо ZhEkA_BK....

28

Re: Приемы для уворота

Fadal пишет:
pop-corn пишет:

//   ставь перед строкой - тогда код этой строки не будет работать

Например:
//top.Chat.Self.AddMessage("Выполнено");

НЕ помогло... sad

не может быть)
скопируй код приема, который правил, посмотрим

а всё, вопрос решен

Отредактировано pop-corn (2011-01-09 22:13:53)

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

29

Re: Приемы для уворота

Толковая статья! большое спасибо!

30

Re: Приемы для уворота

Вот, Анахроник помог, спасибо ему за это огромное, довел до ума прием ослабляющее острие:

if(window.EnemyTarget && get_mainframe().document.all[0].innerHTML.match(window.EnemyTarget) && (typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object"))
{
_name = "counter_weakblow";
_break = false;
_target = EnemyTarget;
top.Battle.oBattle.Send( { special: _name, enemy: top.Battle.oBattle.sEnemy, login: _target } );
}
else
if(Intell > 50)
{
EnemyTarget = top.Battle.oBattle.sEnemyLogin;
if(typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object")
{
_name = "counter_weakblow";
_break = false;
_target = EnemyTarget;
top.Battle.oBattle.Send( { special: _name, enemy: top.Battle.oBattle.sEnemy, login: _target } );
}
}
else
if((typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object") && (Sila > 149 || Lovka > 149 || Inta > 149 || EnemiesCount < 4))
{
_name = "counter_weakblow";
_break = false;
_target = top.Battle.oBattle.sEnemyLogin;
top.Battle.oBattle.Send( { special: _name, enemy: top.Battle.oBattle.sEnemy, login: _target } );
}

Теперь должен работать по принципу: если висит поступь, закидывать острием противников с бонусом в 150 статов, но если напротив маг, запомнить его имя и закидывать острием (если поступь висит) именно его, чтоб тот приемы не мог юзать, если маг умер- цикл повторяется. В подземке затестил, прием бота не вешает, в хаоты не ходил, так что кто протестит- отпишитесь как работает.

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

31

Re: Приемы для уворота

возьмусь потестить , такой глупый вопрос : не может ли бот лагать из-за вот к примеру таких условий  big_smile
просто уворот через пару часов начинает лажить , а крит хоть бы хны - сутку может пахать и в норме

Искать в реале smile

32

Re: Приемы для уворота

Это уже вопрос к Анахронику или Зергу smile

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

33

Re: Приемы для уворота

в принципе все работает , не было к сожалению такого момента чтоб на мага спамить острием , то тактик не было , то убивали , но мне не нравится надпись которая вылазит " у вас недостаточно энергии" или что то типо того , когда тактик атаки много

Искать в реале smile

34

Re: Приемы для уворота

Тоже тестил. На бой успевал ток 1-2 раза кинуть острие, все остальное ишло на поступь. Надпись что выскакивает тоже мешала , но думаю если задать условия на хит и контру она пропадет. Мое мнение чтоб не заморачиваться лутше использовать первый вариант без условия на мага...

35

Re: Приемы для уворота

Ну условие на удары и контру и сами допишите smile
А насчет закида магов, тут уже дело в том, насколько жирный уворот smile Екровым и полуекровым уворотам с пещерами второе условие пригодится.

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

36

Re: Приемы для уворота

я катаю уворотом, доволен как слон... всем огромное спасибо за приемы, вот что у меня вышло:
Воля к победе
Усиленные удары
(можно заменять на Удачный удар)
Если хп больше 33 - Усиленные удары, меньше - Воля к победе, кончился дух - снова усиленные.

if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) >33 ){    _name = "hit_empower";}else if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) < 33 && parseInt(top.Battle.oBattle.arrRes["spirit"].innerHTML) > 0){    _name = "hit_willpower";}    else    {        _name = "hit_empower";    }

Полная защита(можно и активную ставить, по желанию, но как по мне с закалкой так лучше)
используется когда количество щитов больше 6, что б оставались щиты для отмены

if(parseInt(top.Battle.oBattle.arrRes["block"].innerHTML) > 5)_name = "block_fullshield";

Ослабляющее острие

ZhEkA_BK тто что ты писал как Анахроник дал, неработает, бот виснет, а то что было раньше работает

только я выставил бонусы не в 150, а в 50, так как на 7 лвле у танков даже 75 силы нету

if((top.Battle.oBattle.oMySlot.nHP > 0) && (typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object") && (Sila > 49 || Lovka > 49 || Inta > 49 || Intell > 50 || EnemiesCount < 4)){_name = "counter_weakblow";_break = false;_target = top.Battle.oBattle.sEnemyLogin;top.Battle.oBattle.Send( { special: _name, enemy: top.Battle.oBattle.sEnemy, login: _target } );}

Поступь смерти
Танец ветра

если хп больше 15% - Поступь смерти, меньше - танец ветра

if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) > 15)_name = "counter_deathwalk";else_name = "counter_winddance";

писали что нужно вставить в следующий слот отдельный прием танец ветра

if((Intell < 10) && top.Battle.oBattle.sEnemyLogin.indexOf("Страж") < 0 && top.Battle.oBattle.sEnemyLogin.indexOf("(зверь") < 0 && (typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object"))_name = "counter_winddance";

но я сколько проверял, ниразу невидел что б он юзал танец, только поступь и ослабляющее острие, настроить и разобраться до конца руки недоходили, но мне кажется что нужно в приеме Ослабляющее острие добавить что б юзалось только если хп больше 15, но неуверен
Ярость

_name = "hp_enrage";

Утереть пот

_name = "hp_regen";

Превосходство

_name = "parry_supreme";

Отменить
Для этого приема нужно использовать 2 слота для приемов в боте, в самый первый (№1, если он занят другим приемом, передвиньте все приемы ниже и пропишите:

if(window.MyHp_temp && (MyHp_temp-top.Battle.oBattle.oMySlot.nHP)>=85) //количество урона, после которого юзать отменить{_name = "multi_rollback";top.Chat.Self.AddMessage("Выполнено");}  if(window.MyHp_temp && (MyHp_temp-top.Battle.oBattle.oMySlot.nHP)>1)top.Chat.Self.AddMessage("Получен урон = "+(MyHp_temp-top.Battle.oBattle.oMySlot.nHP));MyHp_temp = top.Battle.oBattle.oMySlot.nHP;

бот будет использовать прием если по вам нанесли повреждения больше 85
и в последний слот вставте следующее:

MyHp_temp = top.Battle.oBattle.oMySlot.nHP;

незнаю для чего, сделал все как писали собраться по форуму, за что вам огромнейшее спасибо
по поводу приема, чесно говоря еще неуспел как следует протестить, незамечал еще что он его юзал, потом отмечу smile
последним приемом у меня стоит
Разгадать тактику
этот прием в первую очередь нужен против танков, снимать Глухую защиту, но к сожалениб я так и ненашел как же правильно прописать этот прием, встречалось на форуме несколько вариантов, но от них бот вис sad (точнее в бою он ненажимает вперед)
поэтому я этот прием невыставлял, юзаю его вручную если просматриваю бой

Это вариант для хаота, так как довольно частенько играю руками, отдельно сделал для груповых и против магов
если кому нужно, то добавлю

Боже, храни сумасшедших!
Милые мультяшки... Они так быстро ростут...

37

Re: Приемы для уворота

вот вам файлом, если кому удобнее

<?xml version="1.0" encoding="windows-1251"?>
<Methods>
  <Priem1>if(window.MyHp_temp &amp;&amp; (MyHp_temp-top.Battle.oBattle.oMySlot.nHP)&gt;=85) //количество урона, после которого юзать отменить{_name = "multi_rollback";top.Chat.Self.AddMessage("Выполнено");}  if(window.MyHp_temp &amp;&amp; (MyHp_temp-top.Battle.oBattle.oMySlot.nHP)&gt;1)top.Chat.Self.AddMessage("Получен урон = "+(MyHp_temp-top.Battle.oBattle.oMySlot.nHP));MyHp_temp = top.Battle.oBattle.oMySlot.nHP;</Priem1>
  <Priem2>if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) &gt;60 ){    _name = "hit_empower";}else if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) &lt; 60 &amp;&amp; parseInt(top.Battle.oBattle.arrRes["spirit"].innerHTML) &gt; 0){    _name = "hit_willpower";}    else    {        _name = "hit_empower";    }
</Priem2>
  <Priem3>if(window.EnemyTarget &amp;&amp; get_mainframe().document.all[0].innerHTML.match(window.EnemyTarget) &amp;&amp; (typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object")){_name = "counter_weakblow";_break = false;_target = EnemyTarget;top.Battle.oBattle.Send( { special: _name, enemy: top.Battle.oBattle.sEnemy, login: _target } );}elseif(Intell &gt; 50){EnemyTarget = top.Battle.oBattle.sEnemyLogin;if(typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object"){_name = "counter_weakblow";_break = false;_target = EnemyTarget;top.Battle.oBattle.Send( { special: _name, enemy: top.Battle.oBattle.sEnemy, login: _target } );}}elseif((typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object") &amp;&amp; (Sila &gt; 49 || Lovka &gt; 49 || Inta &gt; 49 || EnemiesCount &lt; 4)){_name = "counter_weakblow";_break = false;_target = top.Battle.oBattle.sEnemyLogin;top.Battle.oBattle.Send( { special: _name, enemy: top.Battle.oBattle.sEnemy, login: _target } );}</Priem3>
  <Priem4>if(parseInt(top.Battle.oBattle.arrRes["block"].innerHTML) &gt; 5)_name = "block_fullshield";
 
</Priem4>
  <Priem5>_name = "hp_enrage";
</Priem5>
  <Priem6>_name = "hp_regen";
</Priem6>
  <Priem7>
  </Priem7>
  <Priem8>if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) &gt; 15)_name = "counter_deathwalk";else_name = "counter_winddance";</Priem8>
  <Priem9>if((Intell &lt; 10) &amp;&amp; top.Battle.oBattle.sEnemyLogin.indexOf("Страж") &lt; 0 &amp;&amp; top.Battle.oBattle.sEnemyLogin.indexOf("(зверь") &lt; 0 &amp;&amp; (typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object"))_name = "counter_winddance";
</Priem9>
  <Priem10>_name = "parry_supreme";
</Priem10>
  <Priem11>
  </Priem11>
  <Priem12>MyHp_temp = top.Battle.oBattle.oMySlot.nHP;</Priem12>
  <Priem13>
  </Priem13>
  <Priem14>
  </Priem14>
  <Priem15>
  </Priem15>
  <Priem16>
  </Priem16>
  <Priem17>
  </Priem17>
  <Priem18>
  </Priem18>
  <Priem19>
  </Priem19>
  <Priem20>
  </Priem20>
  <Priem21>
  </Priem21>
  <Priem22>
  </Priem22>
  <Priem23>
  </Priem23>
  <Priem24>
  </Priem24>
</Methods>
Боже, храни сумасшедших!
Милые мультяшки... Они так быстро ростут...

38

Re: Приемы для уворота

Отменить неработает
а очень жаль sad
и Танец ветра при <15 неработает sad
но зато бот не тупит, и свое набивает (хотя можно и больше)

Боже, храни сумасшедших!
Милые мультяшки... Они так быстро ростут...

39

Re: Приемы для уворота

МДС пишет:

Отменить неработает
а очень жаль sad
и Танец ветра при <15 неработает sad
но зато бот не тупит, и свое набивает (хотя можно и больше)

Возьми "отменить" с моего файла - все работает - проверено.
Танец тоже.

40

Re: Приемы для уворота

[b]Barkass[/b]

спасибо большое, сейчас проверю

Боже, храни сумасшедших!
Милые мультяшки... Они так быстро ростут...

41

Re: Приемы для уворота

Barkass
огромное спасибо
все работает как часы
вот вам рабочий вариант, уже с исправлениями
единственное до сих пор нету Разгадать Тактику, а так все супер

<?xml version="1.0" encoding="windows-1251"?>
<Methods>
  <Priem1>if(window.dfghj &amp;&amp; (dfghj == top.Battle.oBattle.oMySlot.nHP))
{
_name = "multi_rollback";
top.Chat.Self.AddMessage("Работает");
}
 
if(window.rftyh &amp;&amp; (rftyh-top.Battle.oBattle.oMySlot.nHP)&gt;=85) // количество урона, больше которого отменять
{
dfghj = top.Battle.oBattle.oMySlot.nHP;
_name = "multi_rollback";
top.Chat.Self.AddMessage("Выполнено");
}
 
rftyh = top.Battle.oBattle.oMySlot.nHP;</Priem1>
  <Priem2>if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) &gt;60 ){    _name = "hit_empower";}else if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) &lt; 60 &amp;&amp; parseInt(top.Battle.oBattle.arrRes["spirit"].innerHTML) &gt; 0){    _name = "hit_willpower";}    else    {        _name = "hit_empower";    }
</Priem2>
  <Priem3>if(typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object" &amp;&amp; parseInt(top.Battle.oBattle.arrRes["counter"].innerHTML) &gt; 3 &amp;&amp; top.Battle.oBattle.oMySlot.nHP &gt; 0 &amp;&amp;  top.Battle.oBattle.arrRes["hit"].innerHTML &gt; 1 &amp;&amp; (typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object") &amp;&amp; (Sila &gt; 49 || Lovka &gt; 49 || Inta &gt; 49 || Intell &gt; 50 || EnemiesCount &lt; 4))
{
_name = "counter_weakblow";
_break = false;
_target = top.Battle.oBattle.sEnemyLogin;
top.Battle.oBattle.Send( { special: _name, enemy: top.Battle.oBattle.sEnemy, login: _target } );
}</Priem3>
  <Priem4>if(parseInt(top.Battle.oBattle.arrRes["block"].innerHTML) &gt; 6)_name = "block_fullshield";
 
</Priem4>
  <Priem5>_name = "hp_enrage";
</Priem5>
  <Priem6>_name = "hp_regen";
</Priem6>
  <Priem7>
  </Priem7>
  <Priem8>if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) &gt; 15)
_name = "counter_deathwalk";
else
_name = "counter_winddance";
</Priem8>
  <Priem9>if((Intell &lt; 10) &amp;&amp; top.Battle.oBattle.sEnemyLogin.indexOf("Страж") &lt; 0 &amp;&amp; top.Battle.oBattle.sEnemyLogin.indexOf("(зверь") &lt; 0 &amp;&amp; (typeof(top.Battle.oBattle.oMySlot.arrEffects["counter_deathwalk"]) == "object"))
_name = "counter_winddance";</Priem9>
  <Priem10>_name = "parry_supreme";
</Priem10>
  <Priem11>
  </Priem11>
  <Priem12>MyHp_temp = top.Battle.oBattle.oMySlot.nHP;</Priem12>
  <Priem13>
  </Priem13>
  <Priem14>
  </Priem14>
  <Priem15>
  </Priem15>
  <Priem16>
  </Priem16>
  <Priem17>
  </Priem17>
  <Priem18>
  </Priem18>
  <Priem19>
  </Priem19>
  <Priem20>
  </Priem20>
  <Priem21>
  </Priem21>
  <Priem22>
  </Priem22>
  <Priem23>
  </Priem23>
  <Priem24>
  </Priem24>
</Methods>

Отменить - если сняли больше 85 хп
Ослабляющее острие - если у противника бонус с от 50 статов (изменил для 7 лвла)
Поступь смерти
Танец ветра
если хп больше 15% - Поступь смерти, меньше - танец ветра

Боже, храни сумасшедших!
Милые мультяшки... Они так быстро ростут...

42

Re: Приемы для уворота

Отменить бери с поста номер 14, там обновленная версия. Если не будет работать, напиши мне в приват, подправлю код.
Уверен что танец ветра не работает? Может просто ты в процентах 15% хп неправильно у себя определил?
Разгадать тактику должен работать попробуй с этой темы (Please log in or register to see this URL) пост номер 9. Работать должен, просто вероятность что бот попадет в подходящие условия очень маленькая
Ослабляющее острие с выжиганием магов, к сожалению, действительно неработает sad Исправить чтоб работала можно, но там такой скрипт получается неслабый, что бот через час работы на dual core e5200 начинает подтормаживать.

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

43

Re: Приемы для уворота

ZhEkA_BK
спасибо большое
теперь вообще супер smile

Боже, храни сумасшедших!
Милые мультяшки... Они так быстро ростут...

44

Re: Приемы для уворота

Спасибо.Полезная штука)

45

Re: Приемы для уворота

Ох, чувствую, сейчас уворотов разведется. Надо срочно тему с другими классами развивать, а то дисбаланс пойдет.

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

46

Re: Приемы для уворота

ZhEkA_BK пишет:

Ох, чувствую, сейчас уворотов разведется. Надо срочно тему с другими классами развивать, а то дисбаланс пойдет.

Их и так уже много)

47

Re: Приемы для уворота

Учитывая то, что на форуме тема про уворотов единственная более менее доведенная до конца по приемам- станет еще больше.

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

48

Re: Приемы для уворота

Еще и я присоединюсь к уворотикам)))Попробовать)

Вранье.Вранье.Вранье.Правда.(с)Rand

49

Re: Приемы для уворота

Mr Blanco пишет:

Еще и я присоединюсь к уворотикам)))Попробовать)

Не гони! На ком мы качаться будем?  big_smile

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

50

Re: Приемы для уворота

Да ладно вам, здесь еще много фанатов танков, луков и арбов smile