Как взломать игру динозавра в Google Chrome
TL;DR
Игра динозавра в Chrome можно сделать неуязвимой через DevTools. Откройте chrome://dino, откройте вкладку «Консоль» и выполните две команды: одна сохраняет оригинальную функцию gameOver, вторая заменяет её на пустую. Чтобы вернуть всё как было, восстановите сохранённую функцию.
Быстрые ссылки
- Как играть в скрытую игру динозавра Google Chrome
- Взломать игру динозавра в Google Chrome — пошаговая инструкция
Краткое описание
На экране «Нет подключения» в Google Chrome скрыта простая игра — бесконечный раннер с пиксельным динозавром. Игра запускается пробелом. Столкновения с кактусами и птицами вызывают вызов функции gameOver, останавливающую игру.
Ниже показан безопасный способ сделать динозавра неуязвимым, с объяснением кода, проверками и способами отката. Подойдёт для настольной версии Chrome. Не выполняйте неизвестные скрипты из непроверенных источников.

Как играть в скрытую игру динозавра Google Chrome
Если у вас нет сети, просто введите любой URL в адресную строку Chrome. Вы увидите экран с сообщением об отсутствии интернета и динозавром.

Если соединение есть, откройте игру напрямую — введите в адресную строку:
chrome://dino
Нажмите пробел, чтобы начать. Динозавр побежит, и задача — избегать препятствий: кактусов и птиц. Со временем скорость и плотность препятствий растут.

Взломать игру динозавра в Chrome — пошагово
Внимание: инструкции действуют в настольном Chrome. На мобильных устройствах и в других браузерах названия и объекты могут отличаться.
- Откройте chrome://dino.
- Правой кнопкой кликните по странице и выберите «Просмотреть код» или «Просмотр кода страницы» — в Chrome это «Inspect»/«Просмотр кода».
- Перейдите на вкладку «Консоль».

Альтернативный способ: нажмите Ctrl+Shift+I и затем выберите «Консоль».
- Вставьте и выполните команду, сохраняющую оригинальную функцию gameOver:
var original = Runner.prototype.gameOver
- Затем введите команду, заменяющую gameOver пустой функцией:
Runner.prototype.gameOver = function (){}
После этого при столкновении игра не остановится. Вы не услышите звук и не увидите экран «Game Over». Просто продолжайте бег.

Объяснение: что делает этот код
Коротко: игра вызывает Runner.prototype.gameOver(), когда срабатывает условие проигрыша. Первая команда сохраняет оригинальную реализацию в переменной original. Вторая команда присваивает gameOver пустую функцию, поэтому вызов не выполняет никаких действий.
Это простая форма патчинга в рантайме: заменяем функцию на «заглушку», чтобы отключить стандартное поведение.
Как корректно завершить игру и вернуть поведение
Чтобы завершить сеанс и зарегистрировать результат, восстановите оригинальную функцию:
Runner.prototype.gameOver = originalЭто вернёт стандартный механизм, и следующее столкновение завершит игру как обычно.

Альтернативные подходы
- Отключить восклицательный звук и временно приостановить анимацию через другие методы Runner.prototype — требует знания структуры исходного объекта.
- Изменить скорость игры: Runner.instance_.setSpeed(0) — не все версии API имеют такой метод; применяйте с осторожностью.
- Использовать расширения браузера, которые модифицируют страницу, но это безопаснее только если вы доверяете расширению.
Когда это может не сработать
- В мобильном Chrome объект Runner может отличаться или отсутствовать. В таких случаях команды не найдут Runner.prototype.
- В будущих версиях Chrome имена методов могут быть переименованы или минимизированы. Тогда код не сработает и потребует адаптации.
- В строгих окружениях, где сайт блокирует доступ к прототипам, возможно, операции будут запрещены.
Мини-методология (шаблон для экспериментов)
- Подготовка: откройте chrome://dino и DevTools.
- Сохраните оригиналы функций, которые собираетесь менять.
- Примените короткий патч — одна строка, проверка результата.
- Тест: повторите столкновения на нескольких скоростях.
- Откат: восстановите оригинальные функции.
Чеклист для игрока
- Открыл chrome://dino.
- Переключился на вкладку «Консоль» в DevTools.
- Выполнил сохранение оригинала: var original = Runner.prototype.gameOver
- Выполнил замену: Runner.prototype.gameOver = function (){}
- Убедился, что динозавр не погибает при столкновениях.
- Для записи результата восстановил оригинал.
Критерии приёмки
- При выполнении инструкции динозавр остаётся в игре после столкновений как минимум 5 разных типов препятствий.
- Восстановление original приводит к обычному завершению после следующего столкновения.
- DevTools не показывает ошибок, связанных с выполняемыми командами.
Факт-бокс: ключевые команды
- Открыть игру: chrome://dino
- Сохранить оригинал: var original = Runner.prototype.gameOver
- Сделать неуязвимым: Runner.prototype.gameOver = function (){}
- Вернуть поведение: Runner.prototype.gameOver = original
Безопасность и приватность
- Все операции выполняются локально в вашем браузере. Скрипты не отправляются по сети.
- Не вставляйте и не выполняйте код из непроверенных источников. Зловредный код может изменить другие объекты страницы или получить доступ к данным.
- Не используйте подобные модификации для обмана в соревнованиях или публичных таблицах рекордов.
Быстрые советы и ограничениями
- Эта техника полезна для развлечения и изучения JS, но не для эксплуатации уязвимостей.
- На публичных компьютерах или рабочем окружении избегайте изменения настроек браузера без разрешения.
Краткое резюме
Вы научились запускать скрытую игру динозавра, временно отключать условие «Game Over» и возвращать исходное поведение. Метод прост: сохраняем оригинальную функцию, подменяем её пустой функцией и при необходимости восстанавливаем.
Важно: команды работают в настольном Chrome и зависят от реализации игры в данной версии браузера. Всегда проверяйте окружение и не запускайте чужой код без проверки.
Полезные ссылки
- Официальная справка по DevTools в Chrome — используйте для изучения вкладки «Консоль» и безопасной работы с инструментами разработчика.
Автор: локальное руководство по экспериментам с JavaScript в браузере. Проверяйте команды перед выполнением.
Похожие материалы
Клавиатура Mac не работает — войти и починить
Как узнать модель iPad — полный справочник
Выучить язык онлайн бесплатно — Duolingo, Busuu, Livemocha
Массовая загрузка фото из Shutterfly и хранение
Self Service Repair от Apple — инструкция