принудительная синхронизация / проблемы синхронизации / PP

Официальный сервер Ragnarok On-Line в России - https://ru.4game.com/ro/install/

Модератор: 4epT

Правила форума
ВНИМАНИЕ: реклама сторонних ботов запрещена! Всякие плюшки - можно :)
Аватара пользователя
kLabMouse
Профессионал
Сообщения: 4776
Зарегистрирован: Вс ноя 05, 2006 4:32 pm

принудительная синхронизация / проблемы синхронизации / PP

Сообщение kLabMouse »

И Так.
В связи с проблемами для Офф Сервера связвніми с Лагами а так-же ищезновениями некоторых пакетов Предлагаю зделать макрос который будет принудительно синхронизировать БОТа с Сервером.
Ключевые слова
Attacking:
Teleporting...
You attack
You are sitting.
You are standing.

Идея Состоит в том что-бы поставить некое значение A = 1 если в консоли пишет Attacking:
В Случае если в консоле При A = 1 написало Teleporting... или You attack то ставим значение A = 0.
В Ином случае если A = 1 и в консоли написало You are sitting. или You are standing. Принудительно синхронизировать вызвав команду соответвенную процедуру с Send.pm и поставить A = 0.

Кто Хорошо Знает Макро Команды. Попрошу зделать что нибудь подобное. :)
Многие ВАМ Будут ООчень Благодарны
Последний раз редактировалось kLabMouse Вс дек 10, 2006 8:37 pm, всего редактировалось 1 раз.
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8207
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Погоди, еще раз и медленно. В каких именно случаях возникает в этом необходимость?

ЗЫ: Иными словами - покажите лог консоли с "плохим поведением" бота!
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
¤Seii¤
Энтузиаст
Сообщения: 62
Зарегистрирован: Чт ноя 30, 2006 4:38 pm

Сообщение ¤Seii¤ »

Target died
Attacking: xxx
You are sitting
You are sitting
You are sitting
You are sitting
You are sitting
You are sitting
You are sitting

:wink:
Remember botting can be fun and not just because you get to taste the fruit without much work, but because you can have a lot of memorable moments.
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8207
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Ну... раз такая пьянка... ага.. нам надо отловить несколько сообщений sittind/standing подряд, что-ли?

ЗЫ: Да нет.... "вы гоните", господа! Ну... тут все пишут, что... "он по 5 минут стоит втыкает". Но это же не может быть! Маскимум 12 секунд - таков период синхронизации. Как он может стоять больше этого срока?!

ЗЗЫ:

doCommand (......) { <--- тут вставить посылку синхро;
timeout 5
}

Ы? Почему нет?
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
ravenclaw_
Энтузиаст
Сообщения: 66
Зарегистрирован: Вс дек 03, 2006 12:31 pm
Откуда: Москва

Сообщение ravenclaw_ »

piroJOKE писал(а):Ну... раз такая пьянка... ага.. нам надо отловить несколько сообщений sittind/standing подряд, что-ли?

ЗЫ: Да нет.... "вы гоните", господа! Ну... тут все пишут, что... "он по 5 минут стоит втыкает". Но это же не может быть! Маскимум 12 секунд - таков период синхронизации. Как он может стоять больше этого срока?!
Не, тупит бот как раз секунд 10-15, но для печального исхода этого вполне хватает :)
Да, имеет смысл отлавливать два таких сообщения подряд.
Желательно чтобы опционально срабатывало и на 1 сообщение "о посидеть"...
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8207
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Блин, у меня почему-то eval-ом не отсылается синхро! :shock: %)
Остальное безобразие работает, например фрагмент с форума О.К.:

Код: Выделить всё

eval sendForgeItem(\$remote_socket, 505)
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
demm
Энтузиаст
Сообщения: 63
Зарегистрирован: Ср ноя 22, 2006 1:51 pm

Сообщение demm »

automacro Sync1 {
var a == 0
console /Attacking:/
call {
$a = 1
}
}

automacro SyncA0 {
var a == 1
console /You attack/
call {
$a = 0
}
}

automacro SyncT0 {
var a == 1
console /Teleporting.../
call {
$a = 0
}
}

automacro SyncSit {
var a == 1
console /You are standing./
call {
#Вместо этой строчки надо както вызвать sendSync из Send.pm
$a = 0
}
}

automacro SyncStand{
var a == 1
console /You are sitting./
call {
#Вместо этой строчки надо както вызвать sendSync из Send.pm
$a = 0
}
}
Что-то типа того...
Чуть подправте и вызовите sendSync и должно заработать...
Почему, то если запишу так:
automacro SyncSit {
var a == 1
console /You are standing./, /You are Sitting./
call {
#Вместо этой строчки надо както вызвать sendSync из Send.pm
$a = 0
}
}
то не срабатывает. Поэтому разбил на отдельные аутомакросы.
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8207
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Я ему пишу...

Код: Выделить всё

automacro testing {
	timeout 5
	call {
		do eval sendSync(\$remote_socket,0)
	}
}
А оно мне...
[macro] automacro testing triggered.
Can't call method "version" on unblessed reference at
D:/!/!!!!test!!!!/193SVN5168/src/Network/Send.pm line 2698.

[macro] automacro testing triggered.
Can't call method "version" on unblessed reference at
D:/!/!!!!test!!!!/193SVN5168/src/Network/Send.pm line 2698.

[macro] automacro testing triggered.
....
...непонятно, что это значит! :cry:
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
demm
Энтузиаст
Сообщения: 63
Зарегистрирован: Ср ноя 22, 2006 1:51 pm

Сообщение demm »

Тут ты темку апнул, похоже что в этом и загвоздка.

Блин, в интернет-експлорере %20 - означает пробел, нельзя-ли в перле вместо скобок, тоже какой-то символ поставить, может тогда заработает?
Пример из ИЕ (ro-fan.ru/Open Kore/):
ro-fan.ru/Open%20Kore/
перечитал твое сообщение выше, понял что глаза мои меня подводят... оказывается фордже у тебя работает, а я прочел что не работает.
Последний раз редактировалось demm Пт дек 08, 2006 1:13 pm, всего редактировалось 2 раза.
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8207
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Не уверен. Остальные функции вызываюццо успешно, например выше было eval sendForgeItem(\$remote_socket, 505).
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Аватара пользователя
kLabMouse
Профессионал
Сообщения: 4776
Зарегистрирован: Вс ноя 05, 2006 4:32 pm

Сообщение kLabMouse »

piroJOKE

Можна доделать в Макро отдельную команду Sync
или Вызвать всё что нуно так
Network::Send::sendSync(\$remote_socket,0)

Короче хз, думать нуно
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8207
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

kLabMouse писал(а):Вызвать всё что нуно так
Network::Send::sendSync(\$remote_socket,0)
Ноль эффекта:

Код: Выделить всё

		do eval Network::Send::sendSync(\$remote_socket,0) 
Can't call method "version" on unblessed reference at
D:/!/!!!!test!!!!/193SVN5168/src/Network/Send.pm line 2698.
[macro] automacro testing triggered.
Can't call method "version" on unblessed reference at
D:/!/!!!!test!!!!/193SVN5168/src/Network/Send.pm line 2698.
[macro] automacro testing triggered.
...
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8207
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

И ваще... грязные извращенцы делают так, это команда... timeout ai_sync 3 :shock:
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
DInvalid
Грамотный
Сообщения: 368
Зарегистрирован: Вт ноя 14, 2006 4:54 pm

Сообщение DInvalid »

Господа, вы уверены что это связано с лагами?

У меня на версии SVN 5157 все равботало, а вот после обновления
начались интересные глюки:

[Dec 8 17:01:26 2006.20] Attacking: Monster Willow (1)
[Dec 8 17:01:32 2006.60] Target died
[Dec 8 17:01:32 2006.18] [17:01:32] Exp gained: 3/2 (0.51%/0.00%)
[Dec 8 17:01:34 2006.34] Attacking: Monster Willow (0)
[Dec 8 17:01:37 2006.45] You are standing.
[Dec 8 17:01:38 2006.46] You are standing.
[Dec 8 17:01:39 2006.63] You are standing.
[Dec 8 17:01:40 2006.49] You are standing.
[Dec 8 17:01:40 2006.82] Target died
[Dec 8 17:01:41 2006.45] [17:01:41] Exp gained: 5/4 (0.85%/0.00%)
[Dec 8 17:01:42 2006.60] Attacking: Monster Willow (1)
[Dec 8 17:01:44 2006.77] You are standing.
[Dec 8 17:01:47 2006.60] You are standing.
[Dec 8 17:01:48 2006.76] You are standing.
[Dec 8 17:01:49 2006.92] You are standing.


Откуда тут standing? Он что вместо атаки начинает подавать команду встать? Предварительно не сев?


-_-
Аватара пользователя
piroJOKE
Модератор
Сообщения: 8207
Зарегистрирован: Сб ноя 04, 2006 2:20 am
Сервер RO:: localhost
Откуда: Molvania

Сообщение piroJOKE »

Плз, у кого это всё время - вот такое безобразие - посмотрите со стороны, с другого чара, как это выглядит?
Use brain against brain, ai against ai... · как правильно задавать вопросы · faq · download
Ответить