Привет, Хабр! Думаю, каждый из активных пользователей сайта уже видел рекламку «Северстали» с запуском IT-завода и пинболом.



Короче много её было так что и я тоже не прошел мимо: с трудом набил 3 тысячи, понастольгировал по пинболу из старого Windows, и… на этом не остановился. Решил найти способ победить!

Далее в статье я рассмотрю разные стратегии, игру в целом и баги, позволяющие набить любое количество очков по вашему желанию и набрав 35 тыс. участвовать в розыгрыше, а так же прекрасную модерацию ботов.
Изучение игры и особенности механик
Легальные игровые стратегии
Автоматизация
Баги
Изучение игры
Тут у нас всё просто: по сравнению с 3D Pinball Space Cadet, выпущенным аж в 1995 году, мы имеем поле, систему запуска, пару направляющих, «бамперов» и флипперов, а так же зоны «ускорения».
Флипперы - это палочки, которыми мы управляем.

Запуск шара производится слайдером; тут-то и кроется первая особенность: не важно, как сильно или слабо вы его переместите, сила запуска случайна от раза к разу. Так же, кстати, и с отскоком от игровых элементов: они придают разное ускорение.
Далее — самая важная механика, которую будем абузить в дальнейшем, — это набор очков в зонах. За тик в зоне дают 50 очков, за удар о «бамперы» — всего десять. Больше вариантов заработать очки нет.
Итого: все до боли банально. 3 шарика, запускаем каждый раз, надеясь на удачу, и судорожно пытаемся не дать шарику упасть, при этом отправляя его в сторону зон и бамперов.
Легальные игровые стратегии
Вариант 1: Замастерить навык игры в пинболл, поехать в Америку и победить на чемпионате мира; вы ведь не ищете лёгких путей.
Вариант 2: Выработать стратегию, при которой без вашего непосредственного участия будут зарабатываться очки, например: запускать шар так, чтобы он бился о бампер и возвращался обратно. В таком случае попытка не будет считаться завершенной и жизнь не тратиться. НО вспомните про случайность запуска. Еще вариант: запустить шарик так, чтобы он застрял между стенкой и бампером и начал бесконечно биться между ними. Тут уже проблема в скорости и углах; чисто гипотетически это возможно, но шарик имеет скорость, которая от каждого удара увеличивается. При этом я пытался с помощью скриншотов в тики игры доказать, что и она случайна, но у меня не вышло. И даже если получится его так пропихнуть, то как его потом оттуда доставать?
Вариант 3 (Реализуемый): запустить шар так, чтобы он оказался в зоне ускорения вверх и, соответственно, в зоне набора очков. Он постепенно оттуда выпадет, но может успеть заработать нам большое количество очков.
Вариант 4: Найти такую начальную силу запуска, чтобы шарик без вмешательства набирал по 15к очков за раз. Тут мы довольно логично подходим к идее автоматизации.
Автоматизация
Пусть робот делает за нас действия, чтобы они каждый раз выполнялись одинаково. Именно так я и узнал, что запуски шара различаются по силе, даже если выполнять все действия одинаково. Для начала я автоматизировал запуск, перезапуск игры, а так же нажатие на пробел для отправки шарика. Думал, что, сделав сотню запусков, можно найти тот, который позволит набирать много очков, — не получилось. Далее я просто добавил периодические нажатия на клавиши, управляющие флипперами. Что не только не сильно улучшило результат, но сдаваться я не планировал.
Те, кто знаком с творчеством Code Bullet, понимают, что даже в тетрис или сапер, при желании, можно запихнуть ИИ.

Следующим шагом было добавление отслеживания шарика по цвету, а точнее по 3м белым пикселям, расположенным по вершинам треугольника.
Если они опускались ниже, чем нужно, срабатывали флиперы. С первого раза система показала себя плохо: при попадании в зону шар менял цвет с серого на красный, и, вероятно, это и мешало. Закончить автоматизацию я так и не успел, потому что нашел БАГ. Хотя признаюсь, в голове была уже идея делать нейронку для пинболла.
Баги
Так получилось, что я тестировщик не по призванию, а вынуждено: вокруг меня всегда ломается ПО; пока делал статью, обнаружил баг в 10 винде. Если сделать скриншот, открыть «Набросок фрагмента на экране», приблизить через Ctrl и колесо мыши, а затем нажать на кнопку линейки, то попросту окно закроется.
Короче, во время тестов заметил, что количество очков явно больше, чем должно было быть, и полез тестировать.
Оказалось, что если перейти со страницы с пинболлом, то очки ещё какое-то время считаются, а вот шар зависает на месте и даже теряет или набирает скорость в некоторых случаях. Соответственно если выйти пока он находился в зоне с очками, то они продолжат капать.
За одно зависание добавлялось по 3-4 тыс очков. Первое, что я сделал (конечно, после того как немного побаловался и подтвердил результаты тестирования в другом браузере), — это написал в аккаунт «Северстали» и заодно спросил, могу ли я написать эту статью.
Ответом мне было молчание. Я не сдался, полез искать другие контакты. Телефон не подходил. Звонить на завод и говорить: «Дяденька, я тут баг нашел… в пинболле» — я не хотел, так что написал на почту. Оттуда я так и не получил ответа, а баг остался. Видимо, письмо попало в спам или ещё что. Собственно говоря, статью я все же решил не выкладывать, чтобы не портить проходящий конкурс.
Пока лазил, обнаружил, что им прям в ВК ужи писали про вариант бага с раздвоением экрана, но там тоже реакции не было.

Итого: Очки заработаны, до админв достучаться не удалось, вероятно я не единственный, кто его нашел, ну или там мастер пинболла набрал 190 тыс. пошел так скажем по 1 Варианту. Если с помощью этого бага я выиграю наушники, то думаю продам их и отдам деньги какому-нибудь приюту.
Спасибо за прочтение, далее я просто хочу высказать свое мнение по поводу проведения таких конкурсов и, главное, бот-аккаунтов в них.
Боты
А теперь немного о наболевшем. Я понимаю, что модерация розыгрыша — дело не очень благодарное, но все же: в верхнем списке претендентов на самый крутой приз всего человек 30. Цифры взяты не с потолка: перед написанием я взял чужой аккаунт и догнал его до 40 тыс. очков. Так вот, я решил посмотреть тогда на 10 лидеров; среди них — 7 новых аккаунтов, созданных, вероятно, только для участия в розыгрыше.
Ниже скрины с тогдашней таблицей лидеров:

Хотел разместить тут скриншоты аккаунтов и дат их регистрации с последней активностью, но думаю это не правильно, особенно если кто-то просто завел новый аккаунт, но вот пример

Если вам интересно, попробуйте найти кто там сейчас бот. Сейчас еще добавились какие-то чуваки с космическими цифрами, созданные недавно. Видимо целый клан мастеров пинболла пришёл на хабр.
Даже если предположить, что по итогу в главном розыгрыше участвовало аккаунтов 50, то приблизительно половина из них — это чьи-то дубли, созданные ради конкурса и на которые после того, как набили очки, не заходили. Почему их не удалили, вот что мне интересно; мне казалось, что все затеяно ради репутации компании и пиара, а такой пиар…
Ладно, всем спасибо, всем пока, заходите потестить пока есть время https://severstal-pinball.habr.io/
Комментарии (2)
GoodTimeForMe
10.09.2025 05:33А я бот, и ничуть этого не стыжусь, я тоже готов выигрыш пустить на благотворительность
d_ilyich
У меня однажды шарик остановился прям на верхнем краешке напрявляющей, вдоль которой он вылетает. Оставался там достаточно долго, потом упал. А если управлять щупами с помощью Shift-ов, а не стрелок, то щупы периодически "залипают". Для стрелок такого не замечал.
По поводу читерства. Конкурс, вроде, сегодня завершается. Интересно будет посмотреть - изменится ли ТОП игроков и сам счёт к моменту завершения.