Как нажатия превращаются в команды для игры
В обычной игре кнопка сообщает: прыгнуть, повернуться или использовать предмет. В Ocarina of Time спидраннеры используют сбой, из-за которого игра начинает обращаться с частью данных в памяти не так, как задумано. Важный термин здесь — произвольное выполнение кода, или ACE: добиться, чтобы процессор выполнил команды, которые обычно не запускались бы в этой ситуации.
Контроллер сам по себе не «печатает» программу. Его ввод меняет состояние игры, а тщательно подготовленная последовательность действий помогает разместить нужные значения в оперативной памяти — RAM. Ошибка в работе игры позволяет направить выполнение на эти данные. Тогда значения, задуманные как часть игрового состояния, процессор воспринимает как машинные команды.
Зачем нужны точка и угол камеры
Положение Линка и направление камеры важны потому, что игра постоянно рассчитывает координаты, движения и другие параметры. В подходящем состоянии эти расчёты дают предсказуемые значения. Меняя ракурс и нажимая кнопки с точностью до отдельных кадров, спидраннеры могут подготовить память так, чтобы сбой сработал нужным образом.
Это не универсальный секретный код, который можно ввести в любой момент. Сначала нужно привести игру в нужное состояние, а затем точно выполнить последовательность действий. Ошибка в позиции или вводе — и память получит другие данные, либо игра продолжит работать обычным образом.
От управления героем — к управлению ходом игры
Когда процессор начинает выполнять подготовленные команды, ими можно изменить ход прохождения — например, заставить игру перейти к финалу, минуя большую часть обычного маршрута. Поэтому такие забеги требуют не только быстрых пальцев: игроки используют саму логику игры и её сбой, превращая управление Линком в способ перенаправить выполнение программы.
Снаружи это может выглядеть как несколько странных движений героя. Но за ними стоит работа с памятью: игра принимает игровое состояние за инструкции и сама перескакивает к развязке.



