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

function AttackMobs()
{
    if(!IsWallPresent())
    {
        try
        {
            if(top.frames[external.mainFrameIndex].arrLayers[1][0]["l"].arrUnits[0])
            {
                if(top.frames[external.mainFrameIndex].arrLayers[1][0]["l"].arrUnits[0].action != "")
                {
                    var attack = tkHP >= (maxHP * (parseInt(external.SDungeonAttackHP.Text) / 100));
                    if(external.SCharType.SelectedIndex == 1)
                        attack = attack && tkMana >= (maxMana * (parseInt(external.SDungeonAttackMana.Text) / 100));   
 
                    if(attack)
                    {
                        external.SetStatusLabel("Нападаю на мобов");
                        if(external.SDungeonAttackMobs.Checked)
                            top.frames[external.mainFrameIndex].location = "http://" + external.SCity.Text +".combats.com/" + dungName + "?attack=1&use=" + top.frames[external.mainFrameIndex].arrLayers[1][0]["l"].arrUnits[0].id;
                    }
                    breakAction = true;
                    return;
                }
            }
        }
        catch(err)
        {
 
        }
    }
}

Диалог с озером выглядит так:

Озерцо
Вот и то самое озеро, о котором говорил Макропус. Осталось только положить предмет. И можно будет возвращаться к Макропусу, рапортовать о выполненном задании.

• Положить предмет
--------------------------------------------------------------------------------------------------------------------------------------------------------------
Вы отдали "Непонятная штуковина"

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

• И это отлично! (завершить разговор)
-----------------------------------------------------------------------------------------------------------------------------------------------------------

Петро пишет:

smile
интересно наблюдать, как пытаешься подобрать объект под диалог, а надо то в корне иначе )))

Блин, вот и обламался я(((

Диалог с Озером в Грибнице работает, с помощью этого кода:

else if(s.indexOf("Озеро")>0)     {    top.frames[3].navigate("http://"+external.SCity.Text+".combats.com/main.pl?move_dialog=0"+"&"+Math.random());   }

Но почему то проходит этот диалог больше 5 минут, с чем это может быть связано? Уж слишком долго, там и диалог впринципе небольшой.
И еще после того как бот выходит из диалога, он опять в него вступает и так цикл получается, пока бота не сдвинешь с места, чтоб не клацал на объект. Как можно сделать, чтоб после диалога бот продолжал идти дальше, а не входил в уже совершенный мной диалог.

30

(7 ответов, оставленных в Флейм)

xamepa пишет:

кто бот мало функционален ты что ударился а настроить не пробывал??? я лузер в боте этом но уже разбираюсь потехоньку... Парень ты мочиш))))

Да я про комботс файт говорю, а ботом я доволен полностью, хотя еще и не полностью его изучил)

31

(7 ответов, оставленных в Флейм)

Не понравился мне этот клиент( мало функциональный он какой-то

32

(27 ответов, оставленных в Подземелье / Маршруты)

Я так понимаю это фразы 1-2 этажей грибницы только, выложу я свои фразы, включая фразы 3-го этажа Грибницы
Получится полный комплект фраз по всей Грибнице

if(s.indexOf("получили")>0 || s.indexOf("А что - неплохая мазь от комаров!")>0 || s.indexOf("По форме и цвету свисающих сверху соплей, становится понятно, что лучше туда не соваться.")>0 || s.indexOf("Тяжелые капли уныло вылетают из дырки и шлепаются о землю.")>0 || s.indexOf("Админы ВЦ!")>0 || s.indexOf("А вам было бы приятно, если бы ваше яйцо трогали чужие люди?")>0 || s.indexOf("Интересно, ЧТО там внутри?..")>0 || s.indexOf("Вы подозрительно посмотрели на яйцо. Яйцо подозрительно посмотрело на вас.")>0 || s.indexOf("Вы почесали яйцо.")>0 || s.indexOf("Мертвая вода.")>0 || s.indexOf("Как бы не подскользнуться.. ")>0 || s.indexOf("Выпей отсюда - и ни один доктор тебя не спасет!")>0 || s.indexOf("На поверхности плавает радужная пенка...")>0 || s.indexOf("Омерзительная слизь гнойного цвета.")>0 || s.indexOf("С потолка свисают осклизлые корни")>0 || s.indexOf("С потолка на вас капнуло немного слизи.")>0 || s.indexOf("Напоминает сопли.")>0 || s.indexOf("Что было вначале - курица или яйцо?")>0 || s.indexOf("Того и гляди лопнут ядовитыми спорами...")>0 || s.indexOf("Большие яйца - большая яичница!")>0 || s.indexOf("Большие яйца - большая яичница!")>0 || s.indexOf("Старый и твердый гриб. Он пугает своей неподвижностью")>0 || s.indexOf("Из него получился бы неплохой доспех, только вот оторвать его от стены трудновато.")>0 || s.indexOf("Уродливый нарост.")>0 || s.indexOf("Ваши попытки заговорить с грибом успехом не увенчались.")>0 || s.indexOf("Мягенький...но скверно пахнет.")>0 || s.indexOf("Опасный мох. Сунешь палец - останешься без руки.")>0 || s.indexOf("Похож на чей-то старый парик.")>0 || s.indexOf("Вы потрогали мох. Непонятно, правда, зачем.")>0 || s.indexOf("Из дыры раздаются чавкающие звуки.")>0 || s.indexOf("А вдруг там что-то ценное?")>0 || s.indexOf("Наверняка там живет кто-то страшный..")>0 || s.indexOf("На вид не очень глубокая.")>0 || s.indexOf("Поганки - поганочки!")>0 || s.indexOf("Какие огромные грибы..")>0 || s.indexOf("Шел медведь по лесу, видит - машина горит. Сел в нее и сгорел.")>0 || s.indexOf("Хватит в меня тыкать!")>0 || s.indexOf("Выпученное моргало на ложноножке.. неприятное зрелище.")>0 || s.indexOf("Хватит всякую гадость трогать!")>0 || s.indexOf("По корням ползают отвратительные мелкие насекомые.")>0 || s.indexOf("Там внутри что-то шевелится..")>0 || s.indexOf("Странное, неизвестное биологам растение.")>0 || s.indexOf("Вы почесали глаз.")>0 || s.indexOf("Выглядят вполне съедобно...даже аппетитно!")>0 || s.indexOf("У тебя два, у меня один.")>0 || s.indexOf("Какой пристальный взгляд...")>0 || s.indexOf("не произошло")>0 || s.indexOf("нет необходимых ингредиентов")>0 || s.indexOf("У вас слишком много таких объектов")>0 || s.indexOf("Тухлятина.. противно даже ботинок об такие пачкать..")>0 || s.indexOf("Можно собрать и насушить на зиму..")>0 || s.indexOf("Мерзость! Пакость!")>0 || s.indexOf("Эх, сейчас бы грибочков, да с картошечкой..")>0 || s.indexOf("Явно разрослись на чьем-то трупе...")>0 || s.indexOf("С Вашего счета списано 10.00 кр. за назойливость. Желаем удачной игры!")>0 || s.indexOf("Запах странный, но вкус, неплохой.")>0 || s.indexOf("Надкусил... и ничего. Жив остался.")>0 || s.indexOf("Совсем как опята, только большие и зеленые!")>0 || s.indexOf("Грибочки, грибочки, вкусняшки.")>0 || s.indexOf("Какие огромные грибы..")>0 || s.indexOf("Все заросло какой-то слизью и мхом...")>0 || s.indexOf("А свой сачок вы и не захватили. Ловить нечем.")>0 || s.indexOf("Ловля светлячков очень успокаивает. Особенно в сумрачном подземелье наполненном монстрами.")>0 || s.indexOf("Замечательный источник света, компактный, неприхотливый, жалко умирает быстро!")>0 || s.indexOf("Симпатяга, так бы и врезал бы ему от умиления.")>0)                    usedObjects["\"" + _object.id + "\""] = true;

По мере нахождения новых фраз буду добавлять их, чтоб уже окончательно создать полный список и уже не возвращаться к нему)
А пока я сейчас хожу нормально уже, фразы не беспокоют, беспокоют только те грибы, которые не выдают фразу при кликаньи на них, пустышки какие-то, может кто знает как решить проблему с ними, чтоб бот не зацикливался на этих грибах?

33

(6 ответов, оставленных в Общий)

круто, надо составлять уже маршуты начинать)

34

(8 ответов, оставленных в Подземелье / Маршруты)

Я вот не понимаю зачем на каждом шаге юзать клик по объектам?
Напримео если в Грибнице на каждой клетке кликать на все объекты, то можно пол дня ходить по пещере.
Кликать по квестовым, например, цветочкам это другое дело, но они же не всегда там).

Петро пишет:
Kela пишет:

А можно хотя бы пример скрипта увидеть? А там бы я уже разобрался может быть  smile

Конечно можно!  Качай бота и смотри smile))
+ посмотри про наковальню скрипт.. через поиск... самое то, что тебе надо (имхо)

Да бота уже скачал, во всю маршуты пишу, а вот с диалогами пока не могу разобраться, что и как((
Смотрю на этот пример и в ступор себя загоняю))

else if(s.indexOf("Наковальня")>0)        {            top.frames[3].navigate("http://"+external.SCity.Text+".combats.com/main.pl?move_dialog=0"+"&"+Math.random());        }

Уже  вместо наковальни все объекты ставил, ничего. Видимо в другом месте кода менять нужно что-то

36

(347 ответов, оставленных в Настройки / Плагины)

hyppo пишет:

Kela Второе предупреждение.

Я понял за что, теперь буду все делать как положено, извиняюсь.
Получил месагу от Вас

37

(347 ответов, оставленных в Настройки / Плагины)

За что предупреждение то?((
А за ответ спасибо, все работает, дальше буду аккуратен, задавая вопросы.

else if(s.indexOf("Наковальня")>0)        
{ top.frames[3].navigate("http://"+external.SCity.Text+".combats.com/main.pl?move_dialog=0"+"&"+Math.random());

подскажите как вместо накавальни в Бездне, где колят сушки поставить Озерцо в Грибнице, напротив Шизожука которое, чтоб можно было в него класть "непонятную штуковину", которую мы берем у Макропуса на выполнения квеста.
Уже пробовал заменять названия вместо "Наковальни" ставил и "Заросший пруд" и "Озеро", все равно только заходит в диалог, но не выходит с него, надо самому проводить диалог и выходить с него(

39

(347 ответов, оставленных в Настройки / Плагины)

если я ставлю один такой прием, который мне нужен в первую очередь, то он работает нормально
  <Priem11>
if(top.Battle.oBattle.arrRes["hit"].innerHTML &gt; 5) _name = "hit_empower";
</Priem11>
а если я ставлю 2 приема
  <Priem11>
if(top.Battle.oBattle.arrRes["hit"].innerHTML &gt; 5) _name = "hit_empower";
</Priem11>
  <Priem12>if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["ggsvern"]) != "object") _name = "hit_empower";
</Priem12>
то первый работает, но не выполняет условие юзать усиленные после 5 набранных мечей, а второй вообще не работает, бьет усиленными в свернуться

40

(347 ответов, оставленных в Настройки / Плагины)

вот еще 2 приема, где фигуригует hit_empower

<Priem12>
if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["ggsvern"]) != "object") _name = "hit_empower";
</Priem12>
 
  <Priem13>
if((top.Battle.oBattle.oMySlot.nHP * 100 / top.Battle.oBattle.oMySlot.nMaxHP) > 10)
    _name = "hit_empower";
else
    _name = "hit_willpower";
  </Priem13>

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

Народ как можно войти в диалог с ботом?
При кликаньях на объектах бота игнорирует, при нападении на бота пишет:
$VAR1 = [ 'dialog=gg3_macropus_welcome&use=Поговорить' ]; Какая-то ошибка?

кто знает как это сделать?

Петро пишет:

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

А можно хотя бы пример скрипта увидеть? А там бы я уже разобрался может быть  smile

43

(347 ответов, оставленных в Настройки / Плагины)

прописал себе, что когда увесистый гусениц юзает свернутся(все удари по нему по -1)чтоб я не включал усиленные удары, пример взял выше
  <Priem12>
if(typeof(top.Battle.oBattle.oEnemySlot.arrEffects["ggsvern"]) != "object") _name = "hit_empower";
</Priem12>
но ничего не работает, так же и лупит усиленные в свернуться. может чето не так?
и вообще прописал чтоб усиленные юзались с 5-го мечика. а они юзаются сразу, как 3 набираю(

44

(347 ответов, оставленных в Настройки / Плагины)

Подскажите что я не так сделал с приемом "усиленные удары", когда я хочу, чтоб он включался при наборе тактик боя больше 5шт
Вот мой пример:
if(parseInt(top.Battle.oBattle.arrRes["hit"].innerHTML) > 5) _name = "hit_empower";

и еще, скиньте пример насторойки приема "очищение кровью", а то я настроил, но он не сразу чистит икак можно прописать, чтоб чистились все эфекты, которые я бы прописал для него
Мой прмер:
if(typeof(top.Battle.oBattle.oMySlot.arrEffects["standart_effect"]) == "object")
_name = "hp_cleance";

И еще один вопрос, можно ли реализовать так сказать выбор объектов, на которые можно кликать, а на которые нет. Мы заносим названия этих объектов в эти группы и кликаем на кого хотим. А так получается что клик работает на все без исключения, для ускорения продвижения по подземкам надо ввести исключения для кликанья объектов

Было бы круто все это реализовать, я готов помогать по максимуму
Можно было бы сделать сразу все выполнение квеста в одном маршуте, без личного вмешательства)

47

(12 ответов, оставленных в Подземелье / Маршруты)

killer пишет:

скиньте пожалуйста у кого есть фразы из грибницы, после которых объект считается обработанным. спасибо

Возник следующий вопрос, в Грибнице при выполнии квеста есть задание: найти и срезать кусочек гриба. Существуют такие грибы, на которые клацаешь и ничего не происходит(даже нет фразы с гриба, как обычно бывает) и получается, что этот самый гриб нельзя полностью доработать, как объект и бот останавливается и постоянно кликает на этот гриб, пока в ручную не продвинешь его вперед.
Может кто сталкивался с этой ситуацией и как это можно разрешить?

Есть ли возможность реализовать, чтоб при выполнении квестов в Грибнице можно было бы на автомате заходить в диалог с квестовым ботом и общаться с ним по заданному алгоритму, выбирая себе нужные ответы в диалогах?
Например я создаю маршуты конретно по квесту, но так как надо много раз премещаться с бота к боту, то с ботами приходится разговаривать в ручном режиме(. А вот если бы можно было на автомате заходить в диалоги, то квест полностью проходил бы на автомате или приближенно к этому.

У кого какие идеи есть по этому поводу?