|
|
  |
Вся Правда О Oldp.net И Admin Shanahan, Хотите там поиграть? тогда Вам сюда :) |
|
|
tttz |
26.5.2009, 20:20
|
    
Journeyman
Сообщений: 330
Регистрация: 17.12.2008 Группа: Пользователи Наличность: 0
Пользователь №: 11.319

|
тему можно закрыть,от кого я ждал ответа,тот отписался (IMG: style_emoticons/default/smile.gif) за чара не переживаю,не вложил ни рубля,а на чаре фул крафт вещи,кони и т.д. ... про ресенд и догон,всё было проверено ... но в одном ты прав,не надо было мне вылезать и писать на форуме после его админского "мой сервер без догона и спидхака" своё игровое "всё работает,не лей воду" да и ситуация сама по себе комична,все кто читал первые топики улыбались ... и про политику ты прав,но это уже другая история всем спасибо Вап успехов (IMG: style_emoticons/default/smile.gif)
--------------------
|
|
|
|
Wap |
26.5.2009, 20:26
|

         
Администратор Форума
Сообщений: 3.010
Регистрация: 22.12.2006 Группа: Администраторы Наличность: 31900
Пользователь №: 9.227

|
Цитата(Lanceril @ 26.5.2009, 18:15)  Никаких глюков и лагов, операция простая (IMG: style_emoticons/default/smile.gif) отрезок из точки а в точку б, можем пройти - проходим.. Кривая система проверки на сх - могу только посочувствовать, если она считает по кол-ву пакетов, а не пройденых тайлов.. На каждом шаге или раз в какое-то время? Кстати, насчет галочки в инжекте - это бред. Нет в обычном инжекте никакого СХ. Есть глупые ресенды направо и налево(от галочек вроде не зависит и в какой-то мере якобы пофикшено в последней версии). А еще есть галочка такая smooth walk. Ничего не ускоряет, но на лаге чар продолжает движение и после лага все посылается, как будто лага не было. У других игроков - прыжок, который антиСХ сервера тоже заблочит, если лаг длинный. tttz: Спасибо, тебе тоже удачи.
--------------------
|
|
|
|
Lanceril |
26.5.2009, 20:36
|
    
Воскресший из бана :)
Сообщений: 437
Регистрация: 11.10.2004 Группа: Пользователи Наличность: 0
Пользователь №: 2.401

|
Цитата На каждом шаге или раз в какое-то время? на каждом шаге (IMG: style_emoticons/default/smile.gif) в чём проблема то.. нам на шарде не 50к игроков гонять.. в лучшем случае если 500 бегать будут.. Что значит вообще в какое-то время (IMG: style_emoticons/default/smile.gif) Это ультима, тут мы не вектор направления в котором уверенно шагать или точку в которую хотим придти передаём..
|
|
|
|
Wap |
26.5.2009, 20:58
|

         
Администратор Форума
Сообщений: 3.010
Регистрация: 22.12.2006 Группа: Администраторы Наличность: 31900
Пользователь №: 9.227

|
Цитата(Lanceril @ 26.5.2009, 18:36)  на каждом шаге (IMG: style_emoticons/default/smile.gif) в чём проблема то.. нам на шарде не 50к игроков гонять.. в лучшем случае если 500 бегать будут.. Что значит вообще в какое-то время (IMG: style_emoticons/default/smile.gif) Это ультима, тут мы не вектор направления в котором уверенно шагать или точку в которую хотим придти передаём.. Ты можешь, конечно мне не верить, но интуиция подсказывает мне, что так просто это хороших результатов не даст т.е. это страшно усилит лаги, не говоря об нагрузке на сервер. Кроме правильности пакетов, нужно еще проверять временное расстояние между ними, и с этим всем, в особенности, при лагах, могут быть большие проблемы. Результат - больше половины "неправильных" пакетов и лаги усилены во много раз.
--------------------
|
|
|
|
Lanceril |
26.5.2009, 21:07
|
    
Воскресший из бана :)
Сообщений: 437
Регистрация: 11.10.2004 Группа: Пользователи Наличность: 0
Пользователь №: 2.401

|
Цитата Ты можешь, конечно мне не верить, но интуиция подсказывает мне, что так просто это хороших результатов не даст т.е. это страшно усилит лаги, не говоря об нагрузке на сервер. Ну просто я в состоянии выдать этот код на Си, а ты? или мы в интуицию играем ? Цитата нужно еще проверять временное расстояние между ними самое простое решение - добавит ~100байтов на каждого клиента, это два кеш лайна, по которым пробежать и изменить каждый байтик.. это дешевле чем извлечь в скриптах из тега значение (IMG: style_emoticons/default/smile.gif) Цитата Результат - больше половины "неправильных" пакетов и лаги усилены во много раз. пофиг - правильный пакет или нет (IMG: style_emoticons/default/smile.gif) вообще никакой роли не играет. все пакеты правильные, если они подходят под их структуру.. всё что дальше - это уже не неправильные пакеты, а ошибки в сервере.. updatep.s. "самое простое решение" - это то что мне пришло в голову в первые пару секунд при обсуждении(мне почему-то захотелось 100 временных оффсетов у пройденых тайлов хранить), в реальности же придостаточно будет и меньшее количество, так что всё ещё проще (IMG: style_emoticons/default/smile.gif)
|
|
|
|
Lanceril |
26.5.2009, 21:53
|
    
Воскресший из бана :)
Сообщений: 437
Регистрация: 11.10.2004 Группа: Пользователи Наличность: 0
Пользователь №: 2.401

|
извиняюсь (IMG: style_emoticons/default/smile.gif) запутали вы меня с этими прыжками с помощью непонятных пакетов... попутал, в ультиме передаётся вектор, но в пределах одного шага. Так что прыжок - это обработка двух и более пакетов за очень короткий промежуток времени.. Цитата можно у вас в 1 конкретный момент переместится сразу на 2 клетки? можно на 4 клетки (IMG: style_emoticons/default/wink.gif) private static int m_FwdMaxSteps = 4; p.s. ушёл спать (IMG: style_emoticons/default/biggrin.gif)
|
|
|
|
Deadly |
26.5.2009, 22:19
|

       
ex. Администратор
Сообщений: 1.371
Регистрация: 9.9.2006 Группа: Супермодераторы Наличность: 1245
Пользователь №: 7.737

|
--------------------
Контактная ICQ: 390-899-494. Умейте ценить тех людей, которым всегда есть до вас дело. Они не вечны (с).
|
|
|
|
Lanceril |
27.5.2009, 6:03
|
    
Воскресший из бана :)
Сообщений: 437
Регистрация: 11.10.2004 Группа: Пользователи Наличность: 0
Пользователь №: 2.401

|
Цитата если он правильно понял вопрос, написал что можно вроде. Я конечно не проверял клиентами (IMG: style_emoticons/default/smile.gif) а пробежался по исходникам быстренька.. http://www.google.com/search?q=site%3Asvn.runuo.com+movementЦитата И если и на РАНУО такое можно, то вряд ли имеет смысл писать полную защиту, ибо даже то, что ее по дефолту нигде нет - уже о чем-то говорит... я бы не стал полагаться на РанУо как нечто правильное (IMG: style_emoticons/default/smile.gif) Взять ту же защиту от спидхака.. эти, *кхм* гении, воткнули Queue для 4 временных оффсетов, а всё могло поместиться в 4байта(а это размер одного указателя, коих в сишарповских очередях по две штуки на каждый хранимый итем), при проверке у них может произойти до 4х кеш миссов.. а могло быть и 0 (IMG: style_emoticons/default/smile.gif) Так что не думаю, что они все дружно сидели грели голову над этим вопросом (IMG: style_emoticons/default/smile.gif) Сделали не самую эфективную реализацию алгоритма, который приходит в голову за первые пару секунд ) p.s. а этому взрослому то чертовски повезло, столько времени к лету освободилось (IMG: style_emoticons/default/smile.gif)
|
|
|
|
Lanceril |
27.5.2009, 9:01
|
    
Воскресший из бана :)
Сообщений: 437
Регистрация: 11.10.2004 Группа: Пользователи Наличность: 0
Пользователь №: 2.401

|
Цитата По классу Mobile. А как же PlayerMobile? Ну не скрывай от нас все тайны (IMG: style_emoticons/default/smile.gif) что там в плэйермобайл MovementThrottle_Callback не позволяет несколько шагов делать, ато вапще какую-та кашу эти рануошники наворотили, зачем тогда в мобайл проверки на мув, чо у них AI тоже со спидхаком? ) Я же не рануошник, вон варстоун ей занимается, должен был сразу выдать чёткий и правильный ответ (IMG: style_emoticons/default/smile.gif)
|
|
|
|
Warstone |
27.5.2009, 11:56
|

        
Группа: Модераторы Наличность: 0
Пользователь №: 10.905
Возраст: 25

|
Цитата Кто нибудь со знанием C не хочет написать защиту от ресендов, спидов и прочего в 4 строчки... Если исходники предоставлю =)) А исходники чего, простите за вопрос? Если сфера не позволяет такую защиту сделать, пишите прокси, который будет проверять спидхаки, ресенды и т.д. и их обрывать... Или просто не пускать такие пакеты... Или тупо ставить в очередь. Алгоритм там "никакой" просто... Если в 2-х словах: На каждого пользователя вести свою нить, в контрольной нити вести Эвенты для каждой нити и с поределенной частотой поднимать эти евенты. А в потоке клиента при поступлении запроса на передвижение/действие проверять, если флаг стоит - снять и пропустить, если не стоит - заснуть до того как флаг поднимется. Все. Результат такой: Спидхак врубили? На 5 клеток пробежали, стойте пока сервер ответит... В результате спидхак работать будет, но пинги будут в 2-3 секунды и реальная скорость передвижения будет кол<вырезано анти-матом> рядом с нормальной.
--------------------
Do. Or do not. There is no Try! © Master Joda, Dagobah, Star Wars: Episode V.
|
|
|
|
Lanceril |
27.5.2009, 12:06
|
    
Воскресший из бана :)
Сообщений: 437
Регистрация: 11.10.2004 Группа: Пользователи Наличность: 0
Пользователь №: 2.401

|
Цитата Если исходники предоставлю =)) Да лучше без них (IMG: style_emoticons/default/smile.gif) ставишь линуксы роутером или сферу на линукс, настраиваешь через iptables чтоб пакеты до сферы шли в netfilter queue, далее делаешь маленькую програмку которая будет эту очередь обрабатывать. ловишь пакеты, забираешь нужные пакеты(movement к примеру), тут ты получаешь доступ ещё и к tcp хидэрам - берём tcp timestamp и шаманим со всем этим (IMG: style_emoticons/default/smile.gif) Сможешь попробовать различать множественную отправку пакетов и плохой пинг.. Дело за малым (IMG: style_emoticons/default/wink.gif) вперёд... можно на питоне/руби - для них обёртки над nf queue есть..
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|