Pokémon Emerald в браузере на «100k FPS» — и это не эмулятор, это декомпилированная игра

Заголовок говорит про 100 000 FPS. Настоящая новизна, как указывает низкоуровневый хакер, в том, что это не GBA-эмулятор, гоняющий ROM, — это сообществная декомпиляция самой игры, скомпилированная в WebAssembly. Сохранения работают. Звук — нет. Боевое меню крашится.

Заголовок хоронит суть

pokeemerald.com запускает Pokémon Emerald в вашем браузере, а заголовок рекламирует «100k FPS». Низкоуровневый хакер в треде указал на то, что реально важно:

«интересно тут, предположительно, что это не wasm-эмулятор GBA (которые тоже существуют и работают). Это сама игра, скомпилированная в wasm. Хотя официальный исходный код никогда не публиковался, была сообществная декомпиляция». — Дмитрий Гринберг, специалист по реверс-инжинирингу

Вот настоящая история. Здесь нет эмулируемой Game Boy Advance, интерпретирующей ROM. Сообщество реверс-инженерило Emerald в собираемый C-исходник (давний проект декомпиляции pokeemerald), а tripplyons скомпилировал его в WebAssembly. Игра работает в браузере нативно, как она сама, — поэтому и может выдавать абсурдную частоту кадров.

Что работает — по словам тех, кто пробовал

«Подтверждаю, что сохранение по-настоящему работает … Интересно, можно ли заставить работать и обмены». — комментатор, подтверждающий сохранения

Что пока не работает

Главный пробел — звук, и человек, который его чинит, объявился сам:

«Работаю над форком со звуком. Если кто-то хочет, чтобы Claude его продолжил, — милости прошу!» — сопровождающий звукового форка

И это всё ещё альфа-сборка — воспроизводимый краш всплыл быстро:

«похоже, есть краш, когда выбираешь „Pokemon“ в меню „Fight/Bag/Pokemon/Run“». — комментатор, сообщающий о краше боевого меню

Почему это больше, чем игрушка

Браузерные эмуляторы старых консолей — давно не новость. Компиляция декомпилированной коммерческой игры в WASM — другая категория: это значит, что логика игры теперь — переносимый исходник, который можно хакать и форкать, а не бинарник, запертый за интерпретатором. Краши и отсутствующий звук — не провалы подхода; это видимый край того, как много от картриджа 2004 года волонтёрское сообщество добросовестно воссоздало на C. Частота кадров — трюк. Происхождение — вот достижение.

Получайте такие разборы каждый день

Главные истории Hacker News — на email, в Telegram или RSS.

Следующая новость · 7 из 23 Читать дальше
🚀Tech

Open-source-инструмент подделывает артефакты VHS и NTSC — ветераны телевещания говорят, что аналог на деле выглядел роскошно

ntsc-rs моделирует реальную NTSC-передачу и VHS-кодирование, а не фильтры-наложения, в реальном времени. Разворот треда: «вид VHS» — это деградация, а не потолок носителя, — а правильная эмуляция всё ещё пропускает PAL, полосы Hanover и сбои фазы поднесущей.

★ 303 · 💬 72 · ntsc.rs · 3 мин