Исходный код Resident Evil 4 для GameCube полностью декомпилировали с помощью нейросетей

Энтузиаст Адитья Сингх опубликовал полностью побайтово идентичную декомпиляцию отладочной сборки Resident Evil 4 для консоли Nintendo GameCube. Проект содержит свыше 523 тыс. строк кода на языках C и C++, в точности воспроизводя оригинальный исполняемый файл и все 110 подключаемых модулей прототипа от 25 ноября 2004 года. Весь процесс обратной разработки занял менее 7 дней благодаря практически непрерывной работе автономных нейросетевых агентов на базе модели Fable-5.1.
Как отметил автор проекта Адитья Сингх, суммарно за 5 дней работы в среде разработки Cursor было израсходовано чуть менее 20 млрд вычислительных токенов. Нейросети не требовалось задавать конкретные пошаговые цели, хотя саму программу приходилось периодически перезагружать из-за утечек оперативной памяти. Для достижения абсолютного совпадения машинного кода нейросеть запускала специализированных субагентов, которые с нуля пересобирали компилятор GCC 1999 года от компании SN Systems, внедряли отладочные хуки в алгоритмы распределения регистров и создавали рабочую модель компилятора CodeWarrior.
Существенную роль в проекте сыграл оригинальный отладочный файл символов Bio4.sym, в котором сохранились изначальные наименования функций. Тем не менее исследователю и искусственному интеллекту потребовалось расставить 782 специальные метки для компилятора, включая пустой ассемблерный код и специфические конструкции выравнивания, чтобы машинный код совпал байт в байт. Итоговый проект включает 992 модуля, из которых 673 относятся к главному файлу DOL, а оставшиеся 319 распределены по подключаемым библиотекам REL, отвечающим за врагов, оружие и игровые комнаты.
Декомпиляция помогла раскрыть скрытые программные механики, над разгадкой которых спидраннеры и моддеры бились на протяжении 20 лет. В коде наконец обнаружили точную формулу скрытого рангового модификатора динамической сложности, которую ранее не удавалось точно вычислить по дампам памяти. Выяснилось и то, что вся игра функционирует на 16-битном генераторе случайных чисел, который запускается с одинаковым значением при каждом старте и полностью повторяет цикл через 8064 броска. Помимо этого, в исходниках нашли неиспользуемые читы вроде команды KAIOUKEN для ускорения цикла обновления персонажа и скрытое послание от японских программистов из Capcom, переводящееся как Профессор идиот.
Создатель репозитория подчеркнул, что проект опубликован исключительно в исследовательских целях для сохранения цифрового наследия и не содержит защищенных авторским правом текстур, звуков или бинарных файлов от Capcom, Nintendo и CRI Middleware. Для сборки проекта пользователям потребуется собственный легальный образ диска. При этом наличие полностью открытого исходного кода открывает сообществу путь к созданию нативных неофициальных портов оригинальной версии хоррора для современных платформ без необходимости использовать эмуляцию.
Bizning Telegram kanalga obuna bo‘ling
Barcha yangi maqolalar, treylerlar va Steam chegirmalari telefoningizda birinchi bo‘lib paydo bo‘ladi.
Fikrlar va muhokama0