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

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

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

Правила форума
ВНИМАНИЕ: реклама сторонних ботов запрещена! Всякие плюшки - можно :)
DInvalid
Грамотный
Сообщения: 368
Зарегистрирован: Вт ноя 14, 2006 4:54 pm

Сообщение DInvalid » Сб дек 23, 2006 8:33 pm

kLabMouse писал(а):DInvalid
ЫЫ. Незя. Ибо Ето Тики Проца. ТЕ мы могли запустить на П4 и у нас охлажление слетело, теперь тики проца будут медленными, и даже часики идти медленне. ТЕ Система не всегда верно снимает значение генератора часиков. Я видел Приколы когда послежний байт менялся, ТЕ было 12сек и сколько-то там милисек. Для сервака ето значение служит только для того что-бы засеч время от предыдущего до следуйщего синка. Если оно больше определённого значения значит мочим клиента.
Извините конечно, но насколько я помню, это кол-во миллисекунд прошедшее с момента загрузки ОС.
Даже если у нас летела система охлаждения П4 и он ушел в глубокий троттлинг, "часики" не должны замедляться.
Вы не путаете со счетчиками производительности процессора, которые возвращают кол-во тактов, выполнееных между вызовами?

Аватара пользователя
kLabMouse
Профессионал
Сообщения: 4776
Зарегистрирован: Вс ноя 05, 2006 4:32 pm

Сообщение kLabMouse » Сб дек 23, 2006 8:43 pm

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

darzanebor
Грамотный
Сообщения: 221
Зарегистрирован: Чт дек 07, 2006 8:43 pm
Откуда: Бирмингем, ул. Бр.Грим....

Сообщение darzanebor » Сб дек 23, 2006 9:57 pm

Господа, я конечно понимаю, что это все отлично и есть гудь, но по теме топика ктонить может чем помочь?

Аватара пользователя
kLabMouse
Профессионал
Сообщения: 4776
Зарегистрирован: Вс ноя 05, 2006 4:32 pm

Сообщение kLabMouse » Сб дек 23, 2006 10:49 pm

darzanebor
Чиатй.. Уже всё было зделано.

darzanebor
Грамотный
Сообщения: 221
Зарегистрирован: Чт дек 07, 2006 8:43 pm
Откуда: Бирмингем, ул. Бр.Грим....

Сообщение darzanebor » Сб дек 23, 2006 11:04 pm

japplegame писал(а):Я сделал нечто подобное, но без всякого буфера, оно и так должно работать неплохо.
Забыл приаттачить. Воть.
Нашел на странице седьмоц чтоли но там патч до апдейта был а в перле я непонимаю особо ткните пальцем если не трудно что где как!!!

Аватара пользователя
kLabMouse
Профессионал
Сообщения: 4776
Зарегистрирован: Вс ноя 05, 2006 4:32 pm

Сообщение kLabMouse » Сб дек 23, 2006 11:05 pm

darzanebor
Читай дальше =)) Там всё-таки есть обход самого глюка без принудительной синхронизации.

DInvalid
Грамотный
Сообщения: 368
Зарегистрирован: Вт ноя 14, 2006 4:54 pm

Сообщение DInvalid » Сб дек 23, 2006 11:27 pm

#задаем номер нужной нам ф-ии $FuncNum
$FuncNum = 1;

$func = 0x85 * 0x85;
$func &= 0xFFFFFFFF;
$func += unpack("L1",$syncMapSync);
$func &= 0xFFFFFFFF;
$func += unpack("L1",$accountID);
$func &= 0xF;

if ($FuncNum > $func) then {
$increm = $FuncNum - $func;
}
else
if ($FuncNum > $func) then {
$increm = 16 + $FuncNum - $func;
}
$mysync = unpack("L1",$syncSync) & 0xFFFFFFF0 +$increm;

$syncSync = pack("L1", $mysync);

Это так, мысли вслух =)
Последний раз редактировалось DInvalid Сб дек 23, 2006 11:31 pm, всего редактировалось 1 раз.

darzanebor
Грамотный
Сообщения: 221
Зарегистрирован: Чт дек 07, 2006 8:43 pm
Откуда: Бирмингем, ул. Бр.Грим....

Сообщение darzanebor » Сб дек 23, 2006 11:29 pm

это где все пишется?
Изображение
Изображение

Аватара пользователя
kLabMouse
Профессионал
Сообщения: 4776
Зарегистрирован: Вс ноя 05, 2006 4:32 pm

Сообщение kLabMouse » Сб дек 23, 2006 11:40 pm

DInvalid
ЫЫ.. кляс... должно пахать, мож что нуно будет подправить.

darzanebor
Грамотный
Сообщения: 221
Зарегистрирован: Чт дек 07, 2006 8:43 pm
Откуда: Бирмингем, ул. Бр.Грим....

Сообщение darzanebor » Сб дек 23, 2006 11:47 pm

выложите этот многострадальныйе Send.pm и ropp.pl

darzanebor
Грамотный
Сообщения: 221
Зарегистрирован: Чт дек 07, 2006 8:43 pm
Откуда: Бирмингем, ул. Бр.Грим....

Сообщение darzanebor » Вс дек 24, 2006 12:01 pm

Подскажите пожалйсто ставлю дебаг 1 и смотрю что бот делает, так вот он у меня иногда на move - пишет timeout, это можно в файле timeout.txt поменять ai_move_retry 0.9
Изображение
Изображение

darzanebor
Грамотный
Сообщения: 221
Зарегистрирован: Чт дек 07, 2006 8:43 pm
Откуда: Бирмингем, ул. Бр.Грим....

Сообщение darzanebor » Вс дек 24, 2006 12:03 pm

Move - timeout
Route - not moving, decreasing step size to 4
Sending move from (321,61) to (315,57) - distance 7.21
Timeout on Map Server, connecting to Account Server in 7 seconds...
Disconnecting (81.177.13.46:5000)...disconnected
Изображение
Изображение

Аватара пользователя
kLabMouse
Профессионал
Сообщения: 4776
Зарегистрирован: Вс ноя 05, 2006 4:32 pm

Сообщение kLabMouse » Вс дек 24, 2006 4:30 pm

darzanebor
У Тебя Действительно Лаги Парень.

У других в больщуестве случаев проблема с самим Генератором.
А У тебя ЛАГИ если даже дисконектится при муве!

darzanebor
Грамотный
Сообщения: 221
Зарегистрирован: Чт дек 07, 2006 8:43 pm
Откуда: Бирмингем, ул. Бр.Грим....

Сообщение darzanebor » Вс дек 24, 2006 4:42 pm

Да с лагами вроде разобрался, с МТU пошаманил с пингами и прочей ересью, осталось от синка избавится, вот ты мне подскажи мы его макросом делаем как написано выше?

Аватара пользователя
kLabMouse
Профессионал
Сообщения: 4776
Зарегистрирован: Вс ноя 05, 2006 4:32 pm

Сообщение kLabMouse » Вс дек 24, 2006 4:44 pm

darzanebor
Ну ето мы думали так зделать. Оказалось что проблема в другом и DInvalid написал был небольшой фильтр чтоб такое делать.

Ответить