Найден способ пройти Grand Theft Auto: San Andreas менее, чем за полчаса

7 жовтня 2019
Masak0vske


Спидран GTA: SA оставался самым длинным из всей линейки GTA Trilogy. Мировой рекорд по скоростному прохождению (он же спидран) составляет на момент написания этой статьи 3 часа 52 минуты и 7 секунд. Теперь же, самой \"долгой\" в плане спидрана игрой будет Grand Theft Auto III. Как же так вышло?
В среде спидраннеров, не только по SA, есть один очень значимый человек - его никнейм 'Powdinet'. Этот португалец четыре года назад долго рылся в коде и нашёл способ пройти GTA: Vice City не за 50 с лишним минут (мировой рекорд на данный момент составляет 49 минут 46 секунд), а за 20 и даже меньше! Сейчас мировой рекорд по GTA: Vice City в категории Any% Script Stack Underflow (SSU) составляет 8 минут 38 секунд.
Powdinet три года искал похожий глитч в San Andreas. И наконец, 5 октября 2019 года он его нашёл и протестировал. Известный спидраннер Joshimuz уже практикует этот трюк и даже пытался выполнить его в качестве отдельного \"забега\". Представляем вам способ, как же пройти San Andreas за примерное время в 30 минут:
\"Если коротко, то активация миссии Vigilante во время определённого момента в миссии Ryder заставляет игру прыгнуть на произвольную строчку кода игры (.scm), в зависимости от того, какое значение у переменной, привязанной к началу игры. [Powdinet имеет ввиду момент с начала игры до выключения миссии Vigilante - прим. ред.] С возможностью выполнить любую строчку скрипта, мы можем телепортироваться на любую угодную нам миссию. Глитч работает лишь на Windows Store версии игры.

Что нужно сделать для этого:




1. Начните игру.
2. Сразу же достаньте полицейский мотоцикл. (начните процесс заново, если не получится достать мотоцикл до 7:46).
3. Активируйте миссию Vigilante в промежутке 82070 до 82094 миллисекунд. Этот промежуток происходит около 7:46 на внутриигровых часах.
4. Пока ожидаете 7:46, вы можете:
а) убить наркодилера и получить 2000$
б) получить гранаты в Айдлвуде
Эти два пункта необязательны, но помогут пройти игру чуть быстрее.
5. Пока ожидаете 7:46, припаркуйте мотоцикл перпендикулярно стене гаража, чтобы когда вы ускорялись, мотоцикл разворачивался в обратную сторону и СиДжей смог бы упасть.
6. Пройдите миссию Big Smoke.
7. Избегайте автоматов с газировкой и чипсами! Стандартный путь обозначен на картинке красным, а нужный нам путь - синим. Красными точками обозначены автоматы с газировкой и чипсами, которых нужно избегать, ибо они сбрасывают таймер, заданный отменой миссии Vigilante.

8. Достаньте Boxburg [в оригинальной версии игры на PS2 и PC он называется Boxville - прим. ред.]. На картинке он обозначен синим квадратом. [Можно достать Boxburg ещё на миссии Boxville и приехать на нём в маркер на Гроув Стрит - прим. ред.]
9. Войдите в Boxburg, перед тем как войти в дом СиДжея, чтобы он не исчез.
10. Сохранитесь один раз.
11. Пройдите миссию вора. Из-за автоматов с газировкой и чипсами, нужно ехать по более длинному пути, обозначенному на картинке.

Если вы убили драгдилера, вынесите из домов 20 предметов. Если не убили - 22. [Рекомендуется делать 23, чтобы игра \"наградила\" вас бесконечным бегом - прим. ред.].
12. Доберитесь до дома в Джефферсоне по следующему пути:

Начните миссию вора и отмените её. Когда появится надпись о завершении миссии, быстро посмотрите на внутриигровое время и прибавьте к нему 20 секунд, например, если надпись появилась в 10:00, вы должны получить 10:20. Выйдите из машины и встаньте на иконку дома. В полученное время, зажмите кнопку принятия звонка и покупки дома. Если катсцены покупки дома нет, а иконка покупки пропала вы всё сделали правильно.
Садитесь в Boxburg и спамьте клавишу начала миссии. Когда услышите определенный звук (вы точно поймете, что это он), загрузите автосейв. Если вы заспавнились на Гроув Стрит, вам не повезло и нужно проделать этот шаг ещё раз. Если вы появились на том же месте, всё получилось, езжайте к дому Сиджея тем же путём, которым вы приехали. Похожий процесс можно видеть здесь, только с домом в Уиллоуфилде:

Причина, по которой здесь не использован дом в Уиллоуфилде - рядом с ним находится автомат с чипсами.
13. Возвращайтесь назад на Гроув Стрит тем же путём, сохранитесь в доме Сиджея.
14. Выйдите из дома и зажмите звонок, миссия вора провалится. Начните миссию Ryder. Во время затемнения отпустите звонок. Далее езжайте к парикхмахерской, если вы не подбирали гранаты в начале, подберите их по пути. Ни в коем случае не отвечайте на звонок, который будет поступать вам во время этой миссии!
15. После прибытия на маркер, выйдите из машины, дождитесь звонка. Зажмите звонок, когда он поступит, войдите в парикхмахерскую, выберите причёску Afro или Jheri Curl, в зависимости от суммы ваших сбережений.
16. Когда Сиджей выйдет из парикхмахерской (будет анимация выхода через дверь), отпустите клавишу принятия звонка. Когда начнётся катсцена Сиджея и Райдера, быстро нажимайте клавишу входа в транспорт (F по умолчанию). Вы получите контроль над Сиджеем в катсцене. Далее в катсцене вы должны найти дверь парикхмахерской. При этом важно помнить, что фраза Райдера \"You know something? I take it back. Old Reece still got it cracking\" не должна закончиться, поэтому на словах \"still got it\" входите и выходите в меню игры, нажимая Esc. После того как вошли в парикхмахерскую, выйдите из неё и бегите до Гроув Стрит. Повторяйте вход-выход в меню, когда фраза Райдера будет подходить к завершению.
17. Как только прибежите на Гроув, начните миссию Ryder заново. Садитесь в машину, не забывайте вновь входить-выходить из меню до момента телепорта к End of the Line.
18. Подойдите к гаражу Сиджея. Выйдите из машины Райдера, бросьте гранату в машину Райдера, быстро сядьте на байк. Как только граната взорвётся и машина Райдера загорится, приготовьтесь жать W. Когда машина Райдера взорвётся, быстро активируйте миссию Vigilante и жмите W. Должно получиться как здесь:
19. Пройдите миссию End of the Line до конца!\"

Теперь несколько пояснений:


В: Зачем нужно достать байк до 7:46 по внутриигровому времени и в 7:46 выключить миссию Vigilante?
О: Чтобы получить значение переменной $TIME_IN_MS от 82070 до 82094. Данное значение позволит нам далее телепортироваться именно на миссию End of the Line part 3, а не на любую другую.
В: Зачем нужно избегать автоматов с едой и напитками? И как далеко от них нужно держаться?
О: Каким-то образом автоматы с едой и напитками влияют на переменную $TIME_IN_MS и сбрасывают её. Естественно, это нам не нужно. Просто придерживайтесь указанного пути в гайде, чтобы избегать их без проблем.
В: Зачем нужно было выполнять миссию вора?
О: Чтобы получить 10.000$, необходимых для покупки дома.
В: Зачем покупать дом?
О: В игре есть переменная $ON_MISSION. Если вкратце, она контролирует, находится ли игрок на миссии или нет. Однако работает она довольно криво и даже во время миссии мы можем поставить значение этой переменной на 0. С помощью звонка и одновременной покупки дома мы это делаем.
В: Зачем нужно не дать фразе \"You know something...\" закончиться?
О: Чтобы не началась новая катсцена и игрок не потерял контроль над камерой, и смог добежать до Гроув Стрит. (Мы возвращаем контроль над камерой путём входа-выхода в парикхмахерскую)
В: Зачем нужно взорвать машину Райдера?
О: Чтобы, очевидно, закончить миссию Ryder.
В: Зачем нужно начать Vigilante в момент взрыва машины Райдера и упасть с байка?
О: Для \"прыжка\" в коде игры на миссию End of the Line part 3.
В: Что за Part 3? Разве она делится на части?
О: End of the Line - довольно сложная миссия для новичков, и Rockstar это прекрасно понимали. Для облегчения жизни они разбили одну миссию на три отдельные. Переход с part 1 на part 2 и с part 2 на part 3 происходит в катсценах и не заметен для игрока. Это отголосок чекпоинтов в нынешних мобильных версиях игры. Если игрок провалит миссию на моменте с горящим зданием, затем придёт на маркер к дому Свита, миссия начнётся с момента смерти Биг Смоука. Если провалите миссию на моменте погони с Тенпенни, то она начнётся с момента начала погони.
В: Почему Windows Store версия?
О: Из-за разницы в скриптах и возможности ставить на паузу игру во время катсцен.
В: Это невозможно, вы гоните!
О: Выше есть ролик-доказательство такой телепортации.
В: Можно ли использовать Cheat Engine, чтобы посмотреть значение переменной $TIME_IN_MS и убедиться, что попал в окно?
О: Если вы делаете это для себя, для тренировки или просто ради интереса - да, конечно! Если же вы хотите попасть в таблицу рекордов на speedrun.com, то делать это запрещено, и во время такого спидрана нужно показывать на записи свой диспетчер задач, чтобы все могли знать, что Cheat Engine у вас выключен. Если включен - это будет считаться за читерство.
В: Где скачать бесплатно версию с Windows Store?
О: Бесплатно она нигде недоступна. Стоит она 452 рубля (7$) и может быть куплена лишь на Windows 8/8.1/10.
Новая эра скоростных прохождений благодаря Powdinet началась!
UPD от 15:55:
Только что спидраннер Joshimuz всё-таки побил мировой рекорд по Any% GTA SA на два часа. Мировой рекорд сейчас составил 1 час 32 минуты 8 секунд. Почему не полчаса? Его спидран не идеален и может быть улучшен в разы! Поздравим!
Рейтинг: 5 (7 голосів)