Как ветеран GTA 3 спрятал читы, но случайно подпортил жизнь спидраннерам

Ветеран Rockstar Games Оббе Вермей, работавший над Grand Theft Auto 3, Vice City и San Andreas, поделился забавной историей о том, как он спрятал читы в коде игры, чтобы хакеры не нашли их сразу после релиза. Однако его хитроумная задумка неожиданно создала проблемы для спидраннеров.

Читы в GTA 3 активировались на ПК, если игрок вводил определенные последовательности символов. Например, команда "ILOVESCOTLAND" вызывала дождь. Однако Вермей решил спрятать читы так, чтобы их было трудно обнаружить, даже разбирая исходный код игры.

Для этого я использовал хэш-коды, чтобы хранить читы. Хэш-код — это число, которое вычисляется на основе строки символов.

— Вермей в твиттере

Без углубления в технические подробности: каждый символ имеет значение в ASCII — например, заглавная буква A равна 65. Хэш-коды суммируют значения букв, таким образом скрывая текстовые команды в коде игры.

Хэш-код для ILOVESCOTLAND равен 983. Для GUNSGUNSGUNS – это 951. Игра сравнивала хэш-коды введенных символов с известными хэшами читов. Это работало. Читы не взломали (но их все же нашли игроки, случайно подбирая символы).

— Вермей

Интересно, что этот метод породил неожиданный эффект. Некоторые фразы, не связанные с читами, активировали команды из-за совпадения их хэш-кодов. Например, ввод "HDLMAAXOPK" также вызывал дождь, как и "ILOVESCOTLAND".

Такое совпадение иногда мешало спидраннерам.

Читы активировались случайно, порой во время спидранов. Эти забеги приходилось прерывать, ведь правила строгие: никаких читов.

— Вермей

Будем ждать новых историй от Оббе о временах GTA 3.

Больше статей на Shazoo
Тэги:

8 комментария

я наверно чегото не понимаю но как играя в гта можно напечатать HDLMAAXOPK? темболее случайно?

4

@mrGrim, там вроде не обязательно HDLMAAXOPK. Гланове что бы нажатые кнопки дали определённую сумму которая была равна читкоду.

4

@TonyH, ааа так-то теперь понятно, спасибо

0

Что-то не понял каким образом они набирали эту комбинацию, даже посмотрев на клаве расположение этих клавиш

1

@Egrassa, склоняюсь к мысли что так как читов там не мало. один из них может быть равным по сумме "цфывке**" особенно учитывая что судя по примеру нет проверки на кол-во символов... что еще более странно.

1

@mrGrim, ну вот идею совпадения случайных комбинаций по сумме на стандартно используемых клавишах для спидраннеров я еще понимаю да, возможно в новости пример неудачно был выбран

0

@Egrassa, посмотрели методами обратной инженерии как функция вычисляет хэш, взяли из памяти эти хэши (с которыми сравнивается результат ввода) и назад посчитали слова. Если хэшы очень маленькие или функция слабая, то получили много вариантов получения одного и того же хэша, один из них вот такой. Естественно надо потом этот набор букв набрать...

0

Так воооот как я запорол себе прохождение 18 лет назад играя в GTA:SA. Я тогда поставил себе челендж пройти игру без читов, но на последних этапах игры у меня внезапно выскочила плашка "Чит активирован", я тогда знатно офигел))

0
Войдите на сайт чтобы оставлять комментарии.