Американский инженер-любитель создал механический аимбот, автоматически прицеливающийся в компьютерных играх. Чтобы его было практически невозможно обнаружить, он снимает экран с помощью веб-камеры и управляет прицелом не программно, а аппаратно — двигая мышку по столу с помощью колес.
Аимбот — это программа, которая автоматически нацеливает оружие игрока на противников. Поскольку это дает игрокам в шутеры существенное преимущество, разработчики игр активно борются с читами программным образом, пытаясь обнаружить подозрительные файлы и программы на компьютере. Также обнаружить аимбот можно за счет безупречного движения прицела к цели, которое непохоже на человеческие неидеальные движения мышью.
Американец Камал Картер (Kamal Carter) создал аимбота, который выполняет ту же задачу, но вообще не связан с компьютером программно, благодаря чему его сложнее обнаружить. Аимбот состоит из двух основных частей: модифицированной компьютерной мышки и камеры, которая снимает содержимое экрана. За основу Картер взял обычную мышку, оставив от нее лишь плату без корпуса. Вместо него он напечатал свой корпус на 3D-принтере и добавил к мышке два всенаправленных колеса с моторами — за счет них бот может двигаться по столу в любую сторону. Также разработчик добавил линейный актуатор, который нажимает на левую кнопку мыши.
Изображение поступает на бота с веб-камеры, которая стоит на штативе перед монитором. Затем нейросеть YOLOv5 находит на кадрах противников и выделяет их, чтобы затем алгоритм мог прицелиться в голову — верхнюю часть рамки. Инженер выбрал для проверки аимбота простой шутер Unturned, в котором игроку нужно ходить по городу и стрелять в наступающих зомби, при этом графика в ней выполнена в стиле Minecraft. Чтобы обучить алгоритм обнаруживать зомби, Картеру пришлось вручную разметить около пяти тысяч кадров, и в результате программа научилась достаточно хорошо целиться, хотя иногда у нее бывают проблемы, например, когда противник стоит слишком близко и занимает весь экран.
Инженер отметил, что поскольку это любительский проект для развлечения, он не планирует ни дорабатывать до коммерческого устройства, ни выкладывать исходный код и документацию проекта, чтобы его могли продолжить другие.
Компьютерные игры — это не только развлечение и повод для любительских инженерных проектов, но и объект настоящих исследований. О том, как изучают особенности работы мозга киберспортсменов, можно узнать из нашего партнерского материала «Нелегкие игры».
Григорий Копиев
Разобраться в этом помогло видео с Чемпионата про каратэ