2 926

(451 ответов, оставленных в Проблемы / Баги / Неполадки)

Jonik пишет:

Ребят почему бот нехочет подавать заявку на бой 1 на 1 ??????

Точно не подаёт?
У меня например подаёт отлично, но её никто не принимает. Этот вид заявки игроки БК попросту не любят.

2 927

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

YOk0 пишет:

5*1+3*3+2*4=10 smile

Я не силён в математике... Но почему десять? roll

2 928

(7 ответов, оставленных в Торговля / Коммерческие дела)

YOk0 пишет:

люди а продажа где?

Прямо тут. Говори чего продаёшь smile

2 929

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

В Москве проводят операцию "чистые госномера", смотреть и офигевать:
()
big_smile

Admin пишет:

Все, 1-ый этаж Канализации полностью работает smile

А пощупать эту продвинутую версию можно? wink Очень не терпится.

2 931

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

Tester пишет:

в плагинах от СэрАртём для макстона такое реализовано для автонавигации.

Ссылкой поделись пожалуйста. Где он их выкладывает? Хочется посмотреть smile

2 932

(160 ответов, оставленных в Качалка)

Я не знаю как вы настраиваете бота, но у меня до 4-го перс добирается за ТРИ-ЧЕТЫРЕ дня. Я наверное читер? big_smile

Отлично! Главное что нашёл! smile

абадон висит.
возможно что проблемы у серверов

А "на пальцах" объясни что именно написано в этой строке маршрута?
Я не воткнул.
Или это не реальная строка, а пример? Повторяются какие-то параметры, даже дробные. Нипанятна sad

2 936

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

Пример готового ().

2 937

(0 ответов, оставленных в Торговля / Коммерческие дела)

За креды, за екры, за персов. Разные способы smile
Предлагайте, обсудим.

2 938

(7 ответов, оставленных в Торговля / Коммерческие дела)

Чёрный рынок БК? big_smile

В новой версии бота будут новый способ описания приёмов.
Вот попробовал написать приёмы для мага огня [9] с четырьмя умениями в серой магии.
Пока что протестировать это не удалось. Но в ближайшем будущем, я надеюсь, получится опробовать.

Набор приёмов для простой пещеры, типа Бездны:
Знак земли (wis_earth_sign),
Силовое поле[9] (wis_gray_forcefield09),
Испепеление[9] (wis_fire_incenerate09),
Очиститься кровью (hp_cleance),
Магический барьер[9] (wis_gray_manabarrier9),
Ярость (hp_enrage), 
медидация (wis_gray_meditation),
вспышка[9] (wis_fire_burst09),
тепло жизни[9] (wis_fire_heal09),
Жертва огню (wis_fire_sacrifice)

Пишем приёмы.
Для мага характерно то что мы будем прописывать приёмы не по доступности, а по потребностям. Исходя из состояния персонажа. Нам нельзя нажимать всё что есть, в отличии от воина.
В первую очередь отталкиваемся от трёх основных событий, по нисходящей по важности: нет защиты, мало HP, мало маны.

Выставляем первый приём:

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

Если на боте нет силового поля, то ставим силовое поле.

Второй приём защиты это магический барьер.

if(typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_gray_forcefield09"]) != "object" && typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_gray_manabarrier"]) != "object")
_name = "wis_gray_manabarrier9";

если на боте нет ни силового ни магбарьера, то ставим магбарьер.
!!! обратите внимание что название эффекта ["wis_gray_manabarrier"] без девятки в конце! Это "фича" БК, название приёма и название эффекта не всегда совпадает!
В противном случае условие будет удовлетворять заданному даже если на вас уже есть барьер и бот всякий размен будет начинать с магбарьера, что разумеется не айс. Если подобная ошибка видна в логе сразу ищем подобные несоответствия.

Знак земли описываем просто. Если его нет то ставим.

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

С защитой разобрались.
Теперь пошли второстепенные приёмы. Это отхил и восстановление маны.
Сначала тепло жизни. С условием что HP у нас меньше половины. При этом параметр цели (target) меняем чтобы каст шёл в себя, а не во врага.

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

Потом не требующий духа приём "жертва огню". Если маны менее 80% и нет силового (пусть лучше в барьер жертвует, безопаснее).

if(top.Battle.oBattle.oMySlot.nMagic * 100 / top.Battle.oBattle.oMySlot.nMaxMagic < 80 && typeof(top.Battle.oBattle.oMySlot.arrEffects["wis_gray_forcefield09"]) != "object")
_name = "wis_fire_sacrifice";

Потом жёсткая медитация жрущая дух. Если маны совсем мало, в данной настройке менее 30%.

if((top.Battle.oBattle.oMySlot.nMagic * 100 / top.Battle.oBattle.oMySlot.nMaxMagic) < 30)
_name = "wis_gray_meditation";

Теперь приёмы третьего приоритета. Это всякая прочая муть. Тут могут быть цели стихий, ярости, стойкости и т.п.
Вот у меня ярость тут будет:

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

И наконец только в концовке идут ударные приёмы. Для мага огня это сначала вспышка, потом испепеление. Не наоборот! Иначе вспышка никогда не пройдёт.

_name = "wis_fire_burst09";
_name = "wis_fire_incenerate09";

Сейчас думаю как использовать пылающий ужас (wis_fire_flameshock) и Пожирающее пламя[9] (wis_fire_flamming09). Но как их грамотно настроить пока в голову не пришло sad Надо чтобы они кастовались именно на ботов-магов, тем самым шеломили их. Может быть через имена ботов? Только я пока не знаю каким параметром описывается имя соперника и есть ли оно вообще. Вобщем это пока в далёких планах smile

В мечтах также остаются пока идеи научить бота стрелять в сильных соперников через слабых. Не всё сразу smile

Делитесь мыслями, комрады.

2 940

(451 ответов, оставленных в Проблемы / Баги / Неполадки)

Батонъ пишет:

"Комната запечатана еще $ln"

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

Бот пытается пройти в направлении которое не предусмотрено картой.
Иначе говоря он заблудился.

У сожалению при нынешней, линейной системе пути бота, при отсутствии возможности определять своё положение и карты как таковой у бота, такие ошибки не редкость. Причин ошибки может быть много. Наиболее вероятен сбой сервера БК. Бот шагнул а сервер выдал "Service Unavaible" или "Bad Gateway", вот и пошёл сбой. Потом бот обратился во фрейм main.pl снова появилась картинка, но своё положение бот уже потерял и найти нужный шаг уже не может.

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

Lyushen
Нынешние маршруты, обсуждаемые тут, будут работать только на версии 7.1
В следующих версиях система принципиально изменится.
Подробнее можно читать и следить за ходом работ тут: ()

Lyushen Уже приходила такая мысль на ум, что не плохо бы научить бота анализировать карту, да и картинку. Но какими средствами это делать? Боюсь что это слишком сложное решение, которое силами нескольких энтузиастов не потянуть. Хотя если вы хорошо знаете этот раздел программирования, то все только рады будут если вы сумеете продемонстрировать какое-то работающее решение.

Кроме того для такого алгоритма потребуется составить карты подземелий БК, с которыми бот будет сопоставлять увиденное. Я не представляю в каком формате это должно быть и как это будет работать.

Хотя идея конечно не лишена смысла. Спасибо. Но по-моему решение сложное. Особенно учитывая те глюки, которые порой способны выдавать серверы БК smile

KniFe Не мудри.

Admin пишет:

Да, я про это не упомянул, нужно чтобы бот не повторял точное местоположение:
Координаты + направление, то есть если через одинаковую клетку проходит смотря в разные стороны все будет ок.

Боюсь не получится. Слишком многим придётся пожертвовать. Например в канализации надо почистить второй этаж. Телепорт входа на второй этаж придётся повторять по-любому, иначе ходить кругами далеко sad Не говоря о других пещерах БК.
Лучше сразу предусмотреть какую-то переменную для обозначения посещения этой клетки.
текущее_местоположение : действие при первом посещении; действие при втором; действие при третьем
Или это очень сложно?

Тут ещё есть подводный камень небольшой. Дело в том что текущее местоположение бота будет повторяться. Есть такие клетки на карте которые надо посетить неоднократно. Но думаю это решится созданием неких переменных у бота, он будет себе отмечать что какое-то действие он уже совершал, был тут, значит исполняется следующее. Правда на случай перезапуска бота он начнёт с первого действия для данной позиции. Ну да и ладно, это мелочи.

KniFe

Да. В конструкторе задаёшь.
Вот смотри что Автор писал:

Admin пишет:

Маршрут будет состоять из строчек вида:
текущее_местоположение : действие
текущее_местоположение определяется скриптом на основании навигационной карты.

Под действием мы будем понимать разное поведение бота. Нападать, беседовать (тут посложнее), смотреть-шарить-обнюхивать, не нападать, не смотреть, ждать события (уйдёт ПП или Брод в Катах, полностью восстановятся HP перед опасным шагом) и т.п. Сейчас только от нас с вами зависит на сколько грамотно мы предусмотрим все варианты поведения бота, чтобы потом уже начисто писать маршруты.

Lyushen
Уважаемый пользователь! Спасибо что обратились на наш форум.
В настоящее время разработчиками Combots ведутся опытные разработки новой системы навигации персонажа в "пещерных" локациях. Дело в том что самой игрой никаких координат персонажа на карте предусмотрено не было, поэтому разработчикам приходится создавать довольно сложные, а потому нестабильные механизмы управления персонажем.

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

Спасибо вам за ваше обращение.

Admin пишет:

Про кроватку ниче сказать не могу, даже не знаю что это такое, в общем посмотрим smile

Если ты обратил внимание бот (v.7.1) в режиме ненападения на монстров всё равно смотрит всё что перед ним есть. Например может в каналке кликнуть на решётку и получить сообщение "Попахивает..."
Вот "Кровать" в Бездне это такая же штука. Надо на неё кликнуть, но на стоящего на этом месте бота нападать не надо.
Всё просто smile

Для бота в маршруте должно быть три типа действия: 1)Всё смотреть и нападать (по умолчанию), 2)не смотреть, но нападать (для неприятных ловушек, типа куч мусора в Демонсе), и 3) смотреть, но не нападать (для "кроватей" и ненужных монстров).

Разреши полюбопытствовать, а как бот узнает в какой точке он находится?

С нетерпением жду демонстрации нового формата файла пути (карты). Хотя бы примерного наброска.

2 950

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

KniFe пишет:

О чем будут жалеться палам?

"Завки подаёт круглосуточно вторую неделю подряд" - примерно так.