Как я вернул LAN-кооп в Neverwinter Nights 2 на Switch
Reider0 51 минуту назад Объяснить с Как я вернул LAN-кооп в Neverwinter Nights 2 на Switch Средний 9 мин 1.2K Python * GitHub * Реверс-инжиниринг * Игры и игровые консоли Assembler * Кейс У нас с супругой есть традиция:...
Will Anthropic have the best AI model at the end of October 2026?
Вот важная новость с фронта ИИ: Reider0 51 минуту назад Объяснить с Как я вернул LAN-кооп в Neverwinter Nights 2 на Switch Средний 9 мин 1. 2K Python * GitHub * Реверс-инжиниринг * Игры и игровые консоли Assembler * Кейс У нас с супругой есть традиция: по вечерам погамать в коопчики, каждый со своей Switch. После Divinity захотелось чего-то в том же духе, и выбор пал на старую добрую Neverwinter Nights 2 (оригинал 2006 года).
Запустили, нажали «Мультиплеер» и получили окно «Требуется аккаунт Nintendo» и подписку NSO. У нас обе консоли прошиты (Atmosphere), так что онлайн Nintendo отпадает сразу. А самое интересное, что на ПК у NWN2 всегда была обычная игра по LAN и прямое подключение по IP.
Технические детали
Хотелось проверить на лень товарищей разработчиков - остался ли этот код в Switch-версии или все-так его вырезали. Делал я это в паре с Claude Code. Самую тяжёлую часть — дизассемблирование, поиск нужных мест в коде, первые версии патчей и работу с отладчиком — взял на себя он.
Я по его находкам дописывал и доводил код, проверял всё на консолях, решал, куда копать дальше, и собирал итоговый релиз. Код в Switch-версии действительно остался, его просто спрятали. Дальше рассказываю, как мы его доставали: семь слоёв защиты от дурака, ловушки отладчика на живой консоли и в сумме семь правок в бинарнике.
В конце отдельно про то, каково это — реверсить с ИИ. Готовый патч лежит здесь: для консолей с Atmosphere. Онлайн Nintendo он не открывает, он включает локальную сеть, которая в игре уже есть.
Отраслевые последствия
ИнструментыДамп игры через DBI: база + обновление v65536. hactool / nstool + свои prod. keys, чтобы достать exefs/main (NSO).
Python + capstone для дизассемблирования. IDA не было, и, как оказалось, для такой задачи хватает пары скриптов на 50 строк. Их по ходу дела писал Claude.
Claude Code: ИИ-ассистент в терминале, который сам запускает команды, читает вывод и пишет скрипты. Atmosphere: exefs_patches для IPS-патчей кода, LayeredFS (atmosphere/contents//romfs) для подмены файлов. Atmosphere standalone gdbstub + aarch64-none-elf-gdb (Arm GNU Toolchain).
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.






