2012-03-02 4 views
2

Для тех из вас, кто не знает, Glide - это программа для World of Warcraft, которая позволяет автоматизировать игру путем изменения ее памяти и, по сути, имитации ввода. Я видел фрагменты кода из похожих программ, и они, похоже, меняют данные по определенным адресам памяти.Как работает Glide?

Очевидно, что должен быть какой-то способ определения того, какие адреса нужно изменить, и как их изменить. Как это делается? В общем смысле, как я могу изменить поведение программы, изменив ее состояние в памяти?

Я понимаю, что это представляет собой некоторые этические проблемы. Использование Glide или аналогичных приложений является неприемлемым нарушением, и я буду лгать, если скажу, что я не собираюсь пытаться перепрограммировать свою версию на этой или другой RPG. Как программист, писать сценарии, которые играют в игры для меня, гораздо веселее, чем играть в игры. Но меня это интересует и с точки зрения компьютерной науки. С большинством проблем с программированием, даже если я точно не знаю, как их решить, я знаю, с чего начать, какие ресурсы посмотреть, и вообще какой будет этот подход. В этом случае, однако, я полностью потерян. Может ли кто-нибудь привести меня в правильном направлении?

ответ

2

Я думаю, вам нужно взглянуть на более простой пример изменения базовой памяти, чтобы понять это.

Ищите программу под названием Cheat Engine. По сути, это позволяет отфильтровать места памяти по значению.

У меня есть воображаемая игра, в которой оценка хранится как целое число в неизвестном месте памяти, то, что вы делаете, это поиск ее начального значения (ноль), а затем изменение оценки, сделав что-то в игре, и примените другой фильтр с новым значением. Cheat-движок будет постепенно отображать все меньше и меньше 4-х байтовых последовательностей памяти, которые совпадают с результатом, пока вы не сможете убедиться, что нашли его. Тогда это всего лишь случай обновления этой памяти.

 Смежные вопросы

  • Нет связанных вопросов^_^