Игры > Игры на персональном компьютере
Неофициальные консольные порты на ПК .
blackoff:
--- Цитата: Vincent7 от 28 Сентября 2026, 17:48:00 ---Тут один делает полноценный порт silent hill downpour на пк
--- Конец цитаты ---
ужеж есть ,я играл месяц назад ... или то другой?
Dyons:
--- Цитата: blackoff от 28 Сентября 2026, 18:04:34 ---ужеж есть ,я играл месяц назад ... или то другой?
--- Конец цитаты ---
а черт ногу сломит, один типа на основе слитой беты, другой толи нейронка, толи еще чето там
blackoff:
ну этот
https://github.com/LittleBitUA/DownpourRecomp
Dyons:
ну этот "че то там", зачем там "xenia_patches.toml", если типа рекомпиляция непонятно
blackoff:
--- Цитата: Dyons от 28 Сентября 2026, 19:10:13 ---ну этот "че то там", зачем там "xenia_patches.toml", если типа рекомпиляция непонятно
--- Конец цитаты ---
похож на сборку с ксеней...
Anybody:
xenia_patches.toml здесь — это не признак работы через эмулятор, а готовый конфиг с инструкциями по модификации исходного бинарника. Рекомпилятор использует формат Xenia просто как общепринятый стандарт описания патчей для игр Xbox 360.
Сообщество эмулятора Xenia годами исследовало исполняемый файл Silent Hill: Downpour (default.xex для Xbox 360). В формате xenia_patches.toml записаны точные адреса памяти (в адресном пространстве PowerPC) и байты, которые нужно заменить, чтобы:
Разблокировать частоту кадров (убрать лок в 30 FPS до 60+ FPS);
Отключить тяжелый или багованный пост-процессинг (Motion Blur, Depth of Field);
Исправить соотношение сторон (Aspect Ratio / FOV);
Обойти известные краши или бесконечные циклы, специфичные для архитектуры консоли.
Вместо того чтобы вручную искать эти места в миллионах строк сгенерированного C/C++ кода, проект использует уже готовые адреса из базы Xenia.
Анализ самого файла
Анализ конкретного содержимого этого файла окончательно расставляет всё по местам. Перед нами конфигурационный файл графических улучшений (Quality of Life) и разблокировки лимитов консоли, взятый напрямую из репозитория Xenia.
Игра Silent Hill: Downpour разработана на движке Unreal Engine 3, и в коде Xbox 360 зашиты жёсткие ограничения, рассчитанные на слабое железо 2005 года.
Вот что конкретно делает каждый патч из вашего файла и зачем он нужен нативному порту/рекомпиляции:
1. Unlock FPS (Разблокировка частоты кадров)
toml
[[patch.be32]]
address = 0x825c64c8
value = 0x60000000
Зачем: На Xbox 360 игра залочена на 30 FPS (а часто проседала и до 20). При рекомпиляции на ПК игра по умолчанию попытается воспроизвести это же поведение и лок.
Как работает: По адресу 0x825c64c8 вставляется 0x60000000 — в архитектуре PowerPC это машинная инструкция nop (No Operation), затирающая вызов внутренней функции ограничения кадров. Байт 0x01 по второму адресу включает внутренний флаг разблокировки тикрейта.
2. Disable FXAA & MLAA (Отключение мыльного сглаживания)
address = 0x82a04ba0 # SHGame.MLAAPostProcess
value = 0x38600000 # li r3, 0x0
address = 0x82a10964 # Engine.GlobalPostProcessSettings.ForceFXAA
value = 0x39600000 # li r11, 0x0
Зачем: На консолях использовалось раннее полноэкранное сглаживание FXAA и MLAA, чтобы скрыть "лесенки" при низком разрешении (720p). На ПК при рендере в 1080p, 2K или 4K это сглаживание превращает картинку в кошмарное мыло, особенно если вы захотите использовать FSR/DLSS.
Как работает: Обратите внимание на комментарии (SHGame, Engine.GlobalPostProcessSettings). Инструкции li r3, 0x0 принудительно передают аргумент 0 (False/Отключено) прямо в системные функции рендера Unreal Engine 3. Игра рекомпилируется уже с вырезанным мылом.
3. 16x Anisotropic Filtering (Анизотропная фильтрация текстур)
address = 0x829d342c
value = 0x38a00010 # 0x10 в шестнадцатеричной системе = 16 в десятичной
Зачем: Из-за нехватки пропускной способности памяти на Xbox 360 текстуры под углом (например, асфальт или пол) сильно размывались. На современных ПК фильтрация текстур 16x практически бесплатна по ресурсам видеокарты.
Как работает: Заменяет внутреннюю переменную дискретизации семплера в коде рендера на значение 16 (Hex: 0x10). Картинка становится значительно четче.
4. Show FPS (Встроенный счетчик кадров)
address = 0x837a9b14
value = 0x01
Зачем: В Unreal Engine 3 есть скрытый служебный отладочный оверлей с отображением FPS и времени кадра (Frametime), который разработчики оставили в коде, но отключили (выставили флаг в 0). Этот патч принудительно выставляет 1 (true), активируя встроенный в движок счетчик без необходимости подключать сторонние утилиты вроде RTSS.
Почему везде стоит is_enabled = false?
В репозитории этот файл лежит в состоянии «по умолчанию» (vanilla):
Чтобы обеспечить максимальную стабильность и аутентичность базовой сборки. (Если запустить рекомпиляцию с разлоченным FPS сразу, из-за физики UE3 могут сломаться тайминги скриптов или камера — о чем честно предупреждает комментарий: "Camera movement slows down over 60 FPS").
Разработчик порта (или пользователь, компилирующий билд) может просто открыть этот файл, изменить нужные пункты на is_enabled = true, и тулчейн автоматически пересоберет игру уже с этими улучшениями.
Итог
Этот файл — набор готовых твиков движка игры. Вместо того чтобы переписывать код рендерера и логики в тысячах C++ файлов проекта, рекомпилятор использует этот стандартизированный файл для точечного изменения поведения движка.
Razor:
Забыли Unleashed Recompiled. Один из первых и один из самых качественных портов с Xbox 360.
Скачать
Беларус:
--- Цитата: Anybody от 28 Сентября 2026, 20:52:54 ---рассчитанные на слабое железо 2012 года
--- Конец цитаты ---
Тебе лень исправлять косяки ИИ или ты вообще не читал написанное? :facepalm:
Razor, и вообще - 'начальник' всево этово бума рекомпиляцый.
Anybody:
--- Цитата: Беларус от 28 Сентября 2026, 23:24:43 ---Тебе лень исправлять косяки ИИ или ты вообще не читал написанное? :facepalm:
--- Конец цитаты ---
Там информации было в разы больше :) Исправил на 2005 :)
Vincent7:
--- Цитата: blackoff от 28 Сентября 2026, 18:04:34 ---ужеж есть ,я играл месяц назад ... или то другой?
--- Конец цитаты ---
Другой. Это именно порт без всяких рекомп костылей, с неиспользованным в релизной версии контентом
Dyons:
Немного оффтопа, про любителей постить нейровысеры не вникая. Все настройки Silent Hill: Downpour хранятся в Coalesced_INT.bin, поэтому ценность этого запощенного нейровысера, не то что нулевая, а даже отрицательная :lol:
--- Цитата: Anybody от 28 Сентября 2026, 20:52:54 ---xenia_patches.toml здесь — это не признак работы через эмулятор, а готовый конфиг с инструкциями по модификации исходного бинарника. Рекомпилятор использует формат Xenia просто как общепринятый стандарт описания патчей для игр Xbox 360.
Сообщество эмулятора Xenia годами исследовало исполняемый файл Silent Hill: Downpour (default.xex для Xbox 360). В формате xenia_patches.toml записаны точные адреса памяти (в адресном пространстве PowerPC) и байты, которые нужно заменить, чтобы:
Разблокировать частоту кадров (убрать лок в 30 FPS до 60+ FPS);
Отключить тяжелый или багованный пост-процессинг (Motion Blur, Depth of Field);
Исправить соотношение сторон (Aspect Ratio / FOV);
Обойти известные краши или бесконечные циклы, специфичные для архитектуры консоли.
Вместо того чтобы вручную искать эти места в миллионах строк сгенерированного C/C++ кода, проект использует уже готовые адреса из базы Xenia.
Анализ самого файла
Анализ конкретного содержимого этого файла окончательно расставляет всё по местам. Перед нами конфигурационный файл графических улучшений (Quality of Life) и разблокировки лимитов консоли, взятый напрямую из репозитория Xenia.
Игра Silent Hill: Downpour разработана на движке Unreal Engine 3, и в коде Xbox 360 зашиты жёсткие ограничения, рассчитанные на слабое железо 2005 года.
Вот что конкретно делает каждый патч из вашего файла и зачем он нужен нативному порту/рекомпиляции:
1. Unlock FPS (Разблокировка частоты кадров)
toml
[[patch.be32]]
address = 0x825c64c8
value = 0x60000000
Зачем: На Xbox 360 игра залочена на 30 FPS (а часто проседала и до 20). При рекомпиляции на ПК игра по умолчанию попытается воспроизвести это же поведение и лок.
Как работает: По адресу 0x825c64c8 вставляется 0x60000000 — в архитектуре PowerPC это машинная инструкция nop (No Operation), затирающая вызов внутренней функции ограничения кадров. Байт 0x01 по второму адресу включает внутренний флаг разблокировки тикрейта.
2. Disable FXAA & MLAA (Отключение мыльного сглаживания)
address = 0x82a04ba0 # SHGame.MLAAPostProcess
value = 0x38600000 # li r3, 0x0
address = 0x82a10964 # Engine.GlobalPostProcessSettings.ForceFXAA
value = 0x39600000 # li r11, 0x0
Зачем: На консолях использовалось раннее полноэкранное сглаживание FXAA и MLAA, чтобы скрыть "лесенки" при низком разрешении (720p). На ПК при рендере в 1080p, 2K или 4K это сглаживание превращает картинку в кошмарное мыло, особенно если вы захотите использовать FSR/DLSS.
Как работает: Обратите внимание на комментарии (SHGame, Engine.GlobalPostProcessSettings). Инструкции li r3, 0x0 принудительно передают аргумент 0 (False/Отключено) прямо в системные функции рендера Unreal Engine 3. Игра рекомпилируется уже с вырезанным мылом.
3. 16x Anisotropic Filtering (Анизотропная фильтрация текстур)
address = 0x829d342c
value = 0x38a00010 # 0x10 в шестнадцатеричной системе = 16 в десятичной
Зачем: Из-за нехватки пропускной способности памяти на Xbox 360 текстуры под углом (например, асфальт или пол) сильно размывались. На современных ПК фильтрация текстур 16x практически бесплатна по ресурсам видеокарты.
Как работает: Заменяет внутреннюю переменную дискретизации семплера в коде рендера на значение 16 (Hex: 0x10). Картинка становится значительно четче.
4. Show FPS (Встроенный счетчик кадров)
address = 0x837a9b14
value = 0x01
Зачем: В Unreal Engine 3 есть скрытый служебный отладочный оверлей с отображением FPS и времени кадра (Frametime), который разработчики оставили в коде, но отключили (выставили флаг в 0). Этот патч принудительно выставляет 1 (true), активируя встроенный в движок счетчик без необходимости подключать сторонние утилиты вроде RTSS.
Почему везде стоит is_enabled = false?
В репозитории этот файл лежит в состоянии «по умолчанию» (vanilla):
Чтобы обеспечить максимальную стабильность и аутентичность базовой сборки. (Если запустить рекомпиляцию с разлоченным FPS сразу, из-за физики UE3 могут сломаться тайминги скриптов или камера — о чем честно предупреждает комментарий: "Camera movement slows down over 60 FPS").
Разработчик порта (или пользователь, компилирующий билд) может просто открыть этот файл, изменить нужные пункты на is_enabled = true, и тулчейн автоматически пересоберет игру уже с этими улучшениями.
Итог
Этот файл — набор готовых твиков движка игры. Вместо того чтобы переписывать код рендерера и логики в тысячах C++ файлов проекта, рекомпилятор использует этот стандартизированный файл для точечного изменения поведения движка.
--- Конец цитаты ---
blackoff:
клепают сборки на базе эмулей получается ...
Dyons:
--- Цитата: blackoff от 30 Сентября 2026, 18:12:29 ---на базе эмулей
--- Конец цитаты ---
Что нейронки навайбкодили, то и вываливают, а на базе чего, наверно только нейронка и знает :biggrin:
З.Ы. впрочем странно, что во всех этих патчах к СХД отключают что угодно, только не bSmoothFrameRate, из-за которого в игре была половина статтеров.
grooomy:
Dyons:
А знаете почему нету ссылок на сорцы этого чуда, а потому что :lol:
--- Цитата --- I have a github for backing up the mappings and code, it's just private for now because I use my own custom programming language + compiler toolchain, no one would even be able to compile the project anyways
https://www.reddit.com/r/timesplitters/comments/1wqxz49/comment/pd0yfpg/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button
--- Конец цитаты ---
KDash:
Saints Row
https://github.com/whompay/SaintsReborn
lupus:
--- Цитата: Dyons от 30 Сентября 2026, 21:03:54 ---А знаете почему нету ссылок на сорцы этого чуда, а потому что :lol:
--- Конец цитаты ---
У меня у бабушки в деревне есть комп, сырцы на нём лежат.
Беларус:
Описание процеса и отличие от декомпиляцыи: fogplay.mts.ru/blog/staticheskaya-rekompilyaciya-igr
Roosya:
А когда-то смотрел видео - эмуляторы не нужны, пришла спасительная рекомпиляция. А там гемору больше, чем с эмуляторами. Эмулятор создаёт универсальную площадку для тысячи образов. А с рекомпиляторами нужен отдельный запускатор для каждой игры... Универсального решения нет и каждую игру приходится поддерживать индивидуально. Идеальный порт должен тогда запускаться на старом железе - современнике приставки. Именно так тогда и портировали игры.
И по итогу опять ждать, ждать и ждать... Ну либо не ждать и тупо запускать нужное через те же эмуляторы. Ну и вишенка на торте, когда для запуска якобы порта нужен образ приставочной игры. То есть не оптимизированная под запускатор выжимка из файлов с диска допотопной эры, а именно образ ещё и нужного региона... Но это понятно, это же типа не законно использовать чужие наработки для благих целей сохранение игрового наследия. Парадокс только в том, что и правообладатели клали на это наследие. У них только юристы рыщут, кого бы нагнуть на этой теме.
Moonsiner:
--- Цитата: Roosya от 03 Октября 2026, 15:26:25 ---либо не ждать и тупо запускать нужное через те же эмуляторы.
--- Конец цитаты ---
либо приобрести\достать собственно консоль и игрушку.
либо ломанную консоль и образ.
А чем не устраивает SH Downpour на эмуле? Он к слову, на соньке3 еще некаизстей шёл. Даже вис бывало на загрузке. Так что его оригинал рекомпилировать это плохая идея - ремастер нужен нормальный. И блюреи это кагбэ уже нифига не допотопная эра.
Навигация
Перейти к полной версии