Тема: Прием заявок хаоты v8.2. Фикс багов.
Бот иногда принимает кулачные хаоты,хотя стоит прием с оружием.Подскажите пожалуйста в чем проблема может быть?
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Чтобы отправить ответ, вы должны вход или регистрация
Бот иногда принимает кулачные хаоты,хотя стоит прием с оружием.Подскажите пожалуйста в чем проблема может быть?
+1 заметил то же самое. Раньше такого не было.
Решение для хаотов:
Открываем файл Main.js.
Находим строку
var battleType = (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt == "Кулачный бой") ? 1 : 0;
и заменяем на
var battleType = (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt == "Групповой кулачный бой") ? 1 : 0;
Отредактировано anahronik (2009-12-16 01:12:27)
О! Только заметил ответ! Сейчас протестирую. Огромное спасибо если поможет.
Тут вот вдруг бот принял заявку хаоты "бой без правил" .Есть ли способ уберечься от приема таких заявок?
кстати да, когда юзал 8.0 - та же фигня была, принимало и кулачки, и кровавые(
var battleType = (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/кулачный/)) ? 1 : 0;
Вот новая замена для строки.
Теперь если у картинки описания боя фигурирует слово "кулачный", то эта заявка будет игнорироваться(естественно, если в настройках не стоит, что вы дерётесь на кулаках...тогда ничего не игнорируется ).
Т.е. плевать, просто групповой кулачный, или кровавый или ещё какая-то помесь...
В игре не проверялась - проверял через DebugBar в собственном созданном файле для удобства.
Отредактировано anahronik (2010-01-08 00:10:01)
Последнее изменение внес.Сегодня просмотрел завершенные бои и опять увидел кровавый бой (на оружии).
И,кстати, реально ли сделать так,чтобы бот принимал заявки с заданным таймаутом?Ато маг на таймауте в 1 минуту из-за подвисания бота набивает в разы меньше чем при таймауте 2-3 минуты.
Нене....всё правильно...кровавый бой я не запрещал....я запрещал кулачные бои.
Дайте время....сразу столько задач ставите, что хоть бросай всё и удаляйся с форума
Ждём запрет кровавок
Полечил сегодня тяж на 10 часов... и через 3 боя этот тупица полез в кровавый - снова тяж... на 20 часов ((
Из-за 250% опыта придётся лечиться ещё раз
xx:xx "XXXXXXX" заплатил 23 кр. за лечение травмы
xx:xx "XXXXXXX" забрал 13.00 кр. с почты (от "XXXXXXX")
xx:xx "XXXXXXX" заплатил 23 кр. за лечение травмы
Вод и осталося 0,13 кр ))
<INPUT TYPE=radio NAME=gocombat value=1263191504 disabled> <font class=date>09:35</font> (<i>неизвестно</i>) (5-5) <IMG SRC="http://img.combats.com/i/fighttype6.gif" WIDTH=20 HEIGHT=20 ALT="Бой без правил">
<IMG SRC="http://img.combats.com/i/misc/commut/hidden.gif" WIDTH=20 HEIGHT=20 ALT="Невидимый Бой
(не видно противников ни в заявке, ни в бою. +5% опыта)">
<font class=dsc><i>Бой начнется через <B>10.0</B> мин., таймаут 1 мин. </font></i><BR>
Отредактировано Петро (2010-01-11 09:42:15)
var battleType = (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/кулачный/)) ? 1 : (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/без/)) ? 3 : 0;
вот замена для строки.
Точно определяет, где кулачный бой, где без правил и где групповой.
В Бой без правил никогда не пойдёт.
Это всё, что вы хотели?
(ну, кроме тайм-аута...я про него помню)
var battleType = (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/кулачный/)) ? 1 : (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/без/)) ? 3 : 0;вот замена для строки.
Точно определяет, где кулачный бой, где без правил и где групповой.
В Бой без правил никогда не пойдёт.Это всё, что вы хотели?
(ну, кроме тайм-аута...я про него помню)
Вроди как да ,спасибо
Огромное спасибо! А то сутки с травмой из за кровавого простоял во время новогоднего кача. ;( Кучу опыта потерял. Обидно однако...
У всех стопорится, пока эта заявка не уйдет. Вернее даже не стопорится, а заявку на бой не принимает.
У всех стопорится, пока эта заявка не уйдет. Вернее даже не стопорится, а заявку на бой не принимает.
У меня не стопориться сегодня увидел надпись - эта заявка не может быть принята вами и он принял заявку выше через 4 сек
У меня не стопорится,все идет как надо.
Только что при приёме заявки выставил, чтоб он показывал все заявки, а не только моего уровня. Плюс, самая первая(нижняя, т.к. перебор заявок идёт снизу) висела заявка 2-21(не кулачная).
Бот принял именно ту, что должен был и не колебался ни секунды
Покажи мне из своего main.js функцию
function SelectHaotZayavka()
Отредактировано anahronik (2010-01-23 20:34:09)
function SelectHaotZayavka()
{
var elements = top.frames[3].document.F1.getElementsByTagName("input");
for(i = elements.length - 1; i >= 0; i--)
{
var element = elements[i];
if(element.type == "radio" && element.name == "gocombat")
{
var battleInvisible = (element.nextSibling.nextSibling.nextSibling.nextSibling.innerHTML == "неизвестно") ? true : false;
if(battleInvisible)
{
var battleType = (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/кулачный/)) ? 1 : (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/без/)) ? 3 : 0;
if(battleType == external.SBattleHaotType.SelectedIndex)
{
var battleLevels = element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nodeValue.match("\\((" + external.level + ")-(" + external.level + ")\\)");
if(battleLevels != null)
{
if(battleLevels[1] == external.level && battleLevels[2] == external.level);
{
var _element = element;
var _count = 0;
for (m = 0; m < 20; m++)
{
_element = _element.nextSibling;
_count = (_element.tagName == "FONT") ? ++_count : _count;
if (_count == 2)
{
var time = parseInt(_element.innerHTML.match(/<B>(.+)<\/B>/)[1]);
if(time < 10)
{
element.checked = true;
top.frames[3].document.F1.confirm1[0].click();
return;
}
break;
}
}
}
}
}
}
}
}
PutHaotZayavka();
}
меняй
Отредактировано anahronik (2010-01-23 21:00:37)
это у меня старый файл от версии 8.1....может ты про 8.2 говорил?
или ставил 8.1 до того, как Зерг починил файл,когда ему сказали, что бота клинит на 2-21(ух и дано же это было)...
в общем фиг его знает))
Сделал по аналогии для таймаута в 1 мин, иначе принимало все бои подряд с разными таймаутами.
У меня вроде работает. тестил для тайма в 2 мин. тоже работало
{
var time = parseInt(_element.innerHTML.match(/<B>(.+)<\/B>/)[1]);
var timeout = parseInt(_element.innerHTML.match(/таймаут (.+) мин./)[1]);
if(time < 10 && timeout==1) //здесь менять 1ку на другой тайм
{
element.checked = true;
top.frames[3].document.F1.confirm1[0].click();
return;
}
break;
}
а можно ещё значения тайма брать из настроек для подачи заявки.. т.е. что бы принимал только такие же как и подавал
Сделал по аналогии для таймаута в 1 мин, иначе принимало все бои подряд с разными таймаутами.
У меня вроде работает. тестил для тайма в 2 мин. тоже работало{
var time = parseInt(_element.innerHTML.match(/<B>(.+)<\/B>/)[1]);
var timeout = parseInt(_element.innerHTML.match(/таймаут (.+) мин./)[1]);
if(time < 10 && timeout==1) //здесь менять 1ку на другой тайм
{
element.checked = true;
top.frames[3].document.F1.confirm1[0].click();
return;
}
break;
}
ребят кто-то это тестил? работает для выбора только 1минуток?
Должно работать.
логика верная.
Вот тут как я понял если он не находит нужную заявку то падаёт сам да?
При значении тайма в 2 минуты.
function SelectHaotZayavka()
{
var elements = top.frames[3].document.F1.getElementsByTagName("input");
for(i = elements.length - 1; i >= 0; i--)
{
var element = elements[i];
if(element.type == "radio" && element.name == "gocombat")
{
var battleInvisible = (element.nextSibling.nextSibling.nextSibling.nextSibling.innerHTML == "неизвестно") ? true : false;
if(battleInvisible)
{
var battleType = (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/кулачный/)) ? 1 : (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/без/)) ? 3 : 0;
if(battleType == external.SBattleHaotType.SelectedIndex)
{
var battleLevels = element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nodeValue.match("\\((" + external.level + ")-(" + external.level + ")\\)");
if(battleLevels != null)
{
if(battleLevels[1] == external.level && battleLevels[2] == external.level);
{
var _element = element;
var _count = 0;
for (m = 0; m < 20; m++)
{
_element = _element.nextSibling;
_count = (_element.tagName == "FONT") ? ++_count : _count;
if (_count == 2)
{
var time = parseInt(_element.innerHTML.match(/<B>(.+)<\/B>/)[1]);
var timeout = parseInt(_element.innerHTML.match(/таймаут (.+) мин./)[1]);
if(time < 10 && timeout==2) //здесь менять 1ку на другой тайм
{
element.checked = true;
top.frames[3].document.F1.confirm1[0].click();
return;
}
break;
}
}
}
}
}
}
}
}
PutHaotZayavka();
Хм да вроде так и работает)Только как бы сделать,чтоб подавал заявку при половине хп с временем до начала боя 10 минут,и в то же время палил если ли заявка с тем же таймом и в случае если есть принимал,если нет то подавал во как ^^Вот такое вот условие было бы круто, а так получается теряешь время, при приёме с фулл хп и подаче естественно...
Отредактировано ProFly (2010-03-07 14:08:45)
var battleType = (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/кулачный/)) ? 1 : (element.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.nextSibling.alt.match(/без/)) ? 3 : 0;вот замена для строки.
Точно определяет, где кулачный бой, где без правил и где групповой.
В Бой без правил никогда не пойдёт.Это всё, что вы хотели?
(ну, кроме тайм-аута...я про него помню)
поставил это-всеравно в кровавые уже 3 раза подавал!помогите!как лошпэн с тяж травмой сижу.
Чтобы отправить ответ, вы должны вход или регистрация