Что ж, хотело бы обсудить довольно-таки сложную тему - механизмы читинга в он-лайн игрушках. Сначала разделим игрушки на категории, потому что, например, Ganjawars является обычной текстовой гамой и взаимодействует с пользователем как обычный веб-сайт. Есть игры на графических Java- и Flash-движках, есть более серьёзные вещи, наподобии Lineage - полноценная игра с клиентом, который с сервера хавает только данные. Для меня целевой игрой являются такие вещи, как Lineage и игры на Java. С Lineage мы располагаем графическим движком и непосредственно клиентом, который оперирует с данными и подставляет всё. Для некоторых Java-игр тоже есть клиенты, правда последний, что мне доводилось видеть, это окошко на С# с встроенным элементом WebBrowser =) Подойдем поближе и рассмотрим именно Java игрушки. Итак, предлагаем методы и механизмы читинга (не взлома) в этих играх. Допустим, увеличить деньги и пр. Ведь информация синхронизируется с сервером и некоторые данные хранятся у нас в памяти. Естественно, речь не идет ни о каких ArtMoney. Поехали. Вплоть до написания своего клиента.
если инфа хранится на сервере и организована грамотная синхронизация - никак. тоесть в любой случае на сервере данные мы не можем менять
Если на клиентской стороне только отрисовываются данные, то да. Вообще, любые расчеты и прочее организовано на стороне сервера, то надежды нет =)
Apple Хм, а разве бывает иначе? Даже в текстовых браузерных MMORPG все расчеты выполняются на стороне сервера.
Не, если клиент - нормальный бинарник (как в Lineage), то по-любому разработчика какие-то расчеты было влом дублировать на сервере ))
Apple если про Lineage говорить, то там раньше в старых хрониках с3 - с4, была популярной программка, с помощью нее можно было отлавливать пакеты отправляемые с клиента на сервер. Допустим ты поднял золото или получил уровень, записал себе этот пакет и сидишь отправляешь его на сервер, с патчами таких дырок оставалось все меньше и меньше, сейчас их можно найти только на очень древних локальных серверах. Вот и весь читинг в линейке, ищешь то что не синхронизируется с сервером. Гораздо больше можно поиметь на багах, есть несколько команд которые собирают эти сервера за бабки, ищешь сборку того сервера где играешь, ставишь себе, дальше занимаешься поиском багов. Например смотришь, ага в этой сборке нету эвентовго нпц, а на сервере появился, значит админ своими кривыми руками его настраивал, вероятно там баг Потом все диалоги с нпц это просто <a href=""></a>, есть такая замечательная кнопочка в клиенте FAQ с нарисованным знаком вопроса, это обычный html документ, не помню в какой папке он валяется. Допустим у тебя есть многоразовый квест из 30 заданий.Скачиваешь скрипты с квестами, смотришь id, берешь у нпц задание, потом открываешь html документ (который у нас FAQ в меню), пишешь туда ссылку на завершение задания, подходишь к нпц, открываешь FAQ жмешь на свою ссылку, получаешь опыт и деньги, снова берешь задание, потом настраиваешь бота чтобы сильно не париться и все. Тут 2 проблемы, найти скрипты с квестами, найти квест с которым это прокатывает. Как правило багнутые квесты, те которые никто никогда не делает, где то в жопе после другой серии квестов на низких уровнях либо новые - только что введенные.
Padaboo эта лохопрограмма работала может на лохосерверах =) А так уроненая кучка денег это объект, у него есть координаты. он где-то же лежит. И id тоже. И дважды его хер поднимешь
все баги, программы, читы работали на офф сервере - корейском, только потом добрались до наших пираток
вообще есть такой сайт http://allcheats.ru/ там выкладывают всё с этим связанное, но нужен рейтинг, чтобы смотреть, так что придется настроить пару ботов, пару программок для накрутки рейтинга на http://l2top.ru/ , и смотреть, что народ выкладывает работающее на офф сервере... Все веб обвязки к серверам валяются в паблике, я исходники не смотрел, но уверен, что дырки там есть. Какая цель то в итоге?
Padaboo Меня интересуют готовые решения только как возможность научиться. Я хочу разобраться в этом, мне не для пользования.
Apple тогда ставь свой сервер с последней версией сборки и пробуй, сайт где все это можно найти я дал выше
Apple Слу! Напиши мне читы для Ил-2 Штурмовик Игре больше 10 лет, а для неё нет не одного чита кроме кривинького радара..
Apple Я тебе могу на примере ВоВ сказать. В силу ограничений в клиент-серверной технологии дебаггером поправить можно не так много данных. Обычный чит для ВоВ - спидхак. Чит просто меняет значение переменной, отвечающей за скорость. Но нормальные серверы обязывают ставить античиты - проги, которые смотрят за целостностью адресного пространства игры.
Я вообще не понимаю, что тут обсуждать. Вы в сайтах своих когда каптчу встаиваете рядом вешаете ответ для нее? Доверяете клиенту и не экранируете получаемые данные в запросах? Храните инфу о статусе пользователя (юзер/модер/админ) в куках? Откуда мысли, что игроделы (да еще такого уровня ЛА или ВоВ) тупее вас? Можно попробовать хакнуть то, что предложит сервер. Например выпадающие кучки золота нужно "поднимать" кликом по ним. Если сервер просто шлет инфу о том, что в его видении на сцене появились кучки золота и ждет инфу о том, что клиент их "поднял", то можно написать бота который будет говорить серверу что кучка с таким-то id была поднята, и одним махом очищать близлежащие окресности не кликнув по ним ниразу и не тратя время на пробеги к ним и собсно сами клики. Но можно ввести проверки и все пойдет медным тазом. Elkaz Я бы сказал - тем более в браузерных, на них проще всего наваять тонкий клиент. Игры "потолще" со своим клиентом могут получать "излишнюю" информацию от сервера, например положение игроков недалеко от тебя. Это может быть необходимо при отрисовке сцены - игрока может быть не видно, но слышен звук его шагов, тень, ореол или свет (от магии или фонарика). При этом в игре может не быть "радара", и на основе этих данных делают валхаки. Никакой "целостности данных" не нарушается, дополнительную инфу (свой радар) можно рисовать "оверлеем" (я не про сам оверлей, а про рисование поверх уже нарисованного игрой), а readprocessmemory() вполне себе "добрая" функция и ничего не нарушает. Вообще в теме одно КО...
Все читеры идорасы! Единственное что приветствую взлом (читерство, мошенничество, развод) ради самосдачи, пусть и за вознаграждение, но не ради наживы на багах.