Far Cry 2

Far Cry 2

113 ratings
Far Cry 2 Multi Fixer (RUS)
By FoxAhead
Утилита для запуска игры с различными исправлениями без модификации файлов игры.
Опции: патч пленок Шакала, дополнительные миссии с пленками Предшественника и мачете, немигающие предметы, FOV, пропуск видео-заставок, ограничение FPS, читы.
2
   
Award
Favorite
Favorited
Unfavorite
Описание
This article in English:
https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=1620638035
Применение исправлений для Far Cry 2 как правило связано с редактированием исполняемых файлов игры (в частности, движка игры Dunia.dll). Минусы такого подхода очевидны: изменения фиксируются в файле, различные моддеры изменяют файлы на свое усмотрение и предлагают их перезаписать, сложно отследить какие патчи у вас сейчас применены, и, в конце концов, они могут просто «слететь» после перезаписи, например, после проверки целостности локальных файлов игры в Steam или переустановки. Решение данной проблемы – изменять не сами файлы, а вносить изменения в память процесса во время выполнения.

Данная утилита как раз и предназначена для запуска игры и внесения модификаций «на лету» без физического изменения файлов игры. Помимо патчей также присутствуют опции для параметров командной строки, например, для пропуска стартовых роликов или ограничения FPS или включения читов.
Опции
  1. Jackal Tapes Fix
    https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=1563607715

  2. Bonus Predecessor Tapes Unlock
    Пленки предшественника - это записи оставленные предшественником главного героя. При посещении центрального города будет получен телефонный звонок, после чего на карте появится значок конверта. После взятия конверта новое задание будет отмечено белым маркером на карте. Для открытия последующих заданий, необходимо каждый раз посещать центральный город.
    https://farcry.fandom.com/ru/wiki/Записи_предшественника
    https://gtm.steamproxy.vip/sharedfiles/filedetails/?id=1565655871

  3. Bonus Machetes Unlock
    Два дополнительных вида мачете: Примитивное и Самодельное - будут доступны для выбора в меню игры Options - Game - Machete Type. На самом деле они всего лишь меняют текстуру стандартного мачете.
    https://farcry.fandom.com/ru/wiki/Мачете

  4. No Blinking Items
    Интерактивные предметы вроде оружия, кроватей, шкафчиков и т.п. более не мигают для придания большего реализма.

  5. FOV
    Установка FOV (угла обзора) отличного от значения по умолчания 75. Не влияет на значение FOV при взгляде через прицел.

  6. Launch Options
    Параметры запуска для командной строки
    Стабильность:
    • Skip Intro Movies
      Пропуск видео-заставок для ускорения запуска игры.
    • Max FPS
      Ограничение максимального FPS для устранения глюков физического движка игры (прыгающие NPC, ошибки в скриптах и прочее) на современных быстрых компьютерах. Если будет заметен разрыв картинки (Screen Tearing), то поменяйте значение немного, например, 62 вместо 60.
    Читы:
    • All Weapons Unlock
      Открытие всего оружия в магазине, в зависимости от части карты, на которой вы находитесь.
    • Unlimited Reliability
      Неломающееся оружие.
    • Unlimited Ammo
      Бесконечные патроны.
    • God Mode
      Режим Бога.
    • Zombie AI
      NPC не двигаются и игнорируют игрока.
    Прочее:
    • Exec
      Запуск пакетного файла. Это текстовый файл, содержащий список консольных команд, и выполняющийся при старте игры. Если не указан полный путь до файла, то он должен располагаться в папке:
      'C:\Users\USERNAME\Documents\My Games\Far Cry 2'
    • Processor affinity
      Ограничивает использование ядер процессом. Может помочь запустить игру на современных быстрых системах с большим количеством ядер.
Использование
Как всегда проект выложен на GitHub. Скачайте ZIP-архив из раздела релизов
https://github.com/FoxAhead/Far-Cry-2-Multi-Fixer/releases/latest

Распакуйте куда-нибудь два файла: FarCry2MFLauncher.exe и FarCry2MF.dll – в отдельную папку или прямиком в папку с игрой, главное, чтобы эти два файлы были рядом. Запускайте FarCry2MFLauncher.exe:



Программа автоматически определит месторасположение игры и отобразит его сверху. Останется только нажать кнопку Play.

По кнопке Options доступны для настройки все опции с описанием:



По умолчанию включены только самые необходимые.

Чтобы не запускать каждый раз утилиту, можно создать ярлык для запуска. Для этого нажмите кнопку Create shortcut... и сохраните ярлык в удобное для вас место.



Через этот ярлык игра будет запускаться сразу без необходимости нажимать Play.
Совместимость
Утилита подходит для версии игры 1.03 во всех вариациях: Steam, GOG (Retail) и Uplay (на самом деле очень похожа на Steam).
Steam Overlay
Запуск игры через эту утилиту происходит минуя Steam, поэтому Steam Overlay становится недоступен. Однако можно добавить саму утилиту в библиотеку как не-Steam игру.

Для этого в меню выбираем Games - Add a Non-Steam Game to My Library. Через кнопку Browse... ищем либо саму утилиту FarCry2MFLauncher.exe либо созданный с помощью нее ярлык. Добавляем.

Затем находим новый пункт в списке игр и правой кнопкой мыши открываем свойства.



Здесь нажмите кнопку SET LAUNCH OPTIONS... и добавьте параметр:
-play

Steam Overlay и игровое время (альтернативный способ)
Если вам не подходит способ с не-стимовской игрой в библиотеке и вы хотите, чтобы игровое время считалось для основой игры, тогда вот хитрый трюк предложенный на форуме:
Originally posted by Virago:
Переименуйте
FarCry2.exe -> FarCry2Game.exe
FarCry2MFLauncher.exe -> FarCry2.exe
Все это нужно делать в папке BIN. Не забудьте также поместить в папку файл FarCry2MF.dll.
Теперь при запуске Far Cry 2 из библиотеки Steam вместо игры должен запускаться лаунчер. Он должен автоматически определить новое имя файла игры и отобразить его в верхнем поле. Если этого не происходит и поле пустое, то скорее всего вы что-то напутали. В таком случае перепроверьте целостность файлов игры и повторите всю процедуру сначала.
Чтобы не нажимать каждый раз кнопку Play в лаунчере, добавьте параметр командной строки:
-play
Параметр позволит сразу запускать игру минуя экран лаунчера.
Также обратите внимание, что имевшиеся до этого параметры командной строки (типа пропуска интро, лимита FPS и прочее) более не имеют силы, т.к. они были для оригинального FarCry2.exe. Но все это можно настроить и в самом лаунчере.
Режим разработчика
В версии v1.4.0.43 были добавлены две консольные команды в игре (нажмите ~ чтобы в игре открыть консоль)
devmodeon - включает режим разработчика
devmodeoff - выключает режим разработчика
Обе команды неофициальные, поэтому игра всегда будет ругаться "Unknown command: ...". Не обращайте внимание, команды работают.
Включение режима разработчика добавляет в консоль еще больше команд: читы, отладка, команды Domino (скриптовый движок), которые недоступны в обычном режиме. Используйте клавишу TAB в консоли, чтобы просмотреть их все. Можете смело с ними экспериментировать, на свой страх и риск.
38 Comments
DomaDengi 4 Jan @ 6:20pm 
Pablo, в твоём случае, нужно ограничить использование ядер игрой. У меня точно такая же проблема, как и у тебя, только с отличием тем, что у меня стоит Intel Xeon E5-2699v4 и RTX 2080 Ti. У моего процессора какое-то е_анутое количество ядер и потоков, а именно 22/44. У тебя же конфигурация состоит из 24/32 (8/16 (P) + 16/16 (E)). Скачиваешь утилиту FarCry2 MultiFixer Tool и кидаешь её в FarCry2/bin. Затем открываешь FarCry2MFLauncher.exe, заходишь в Options и ищешь Processor Affinity (обычно она в самом конце находится). В ней я выставил значение 15. Жмёшь Ok и в ней же нажимаешь Play. Игра подумает и без проблем запустится.
Pablo 3 Dec, 2024 @ 3:19pm 
Ребят, игра запускается (октрывается лого Far Cry 2) и просто закрывается. 13900k 4090 , как фиксить?
veter 11 Jul, 2024 @ 8:40am 
Разобрался, нужно нажать Alt + Enter. Только нужно прожимать не правый альт, а левый :awkward:
veter 11 Jul, 2024 @ 8:28am 
Очень полезно, спасибо. Только теперь игра в оконном режиме всё время. Не подскажите, что можно сделать, чтобы развернуть её на весь экран?
FoxAhead  [author] 28 Mar, 2024 @ 2:43am 
В любом случае, действительно, практически все самое нужное, что делает программа, можно сделать отдельными патчами: и пленки пофиксить, и доп. миссии включить и 60 fps залочить. Единственное - FOV нормально не выставить. Для FOV можно попробовать использовать WidescreenFixer, но он меняет FOV глобально, т.е. и для прицелов тоже.
FoxAhead  [author] 28 Mar, 2024 @ 2:43am 
Еще возможен был бы вариант, что система загружает dunia.dll по другом адресу отличному от дефолтного 10000000 (так называемый address space layout randomization - ASLR), но в характеристиках dunia.dll нет флага позволяющего это делать (IMAGE_DLLCHARACTERISTICS_DYNAMIC_BASE). Т.е. он должен грузиться всегда по фиксированному адресу.
FoxAhead  [author] 28 Mar, 2024 @ 2:42am 
dmitrogorsky,
я в очередной раз жалею, что не добавил больше отладочной информации в программу :)
Ошибка 01E7 это ERROR_INVALID_ADDRESS. Т.е. программа пытается патчить невалидные адреса. Адреса фиксированы для каждой версии игры. И такое может случиться, если некорректно определена версия.
Я даже сначала подумал, что стим обновил игру и перепроверил свою установленную версию, но никаких обновлений не обнаружил. На всякий случай для Стима:
FarCry2ExeSize = 28296
FarCry2ExeCRC32 = 0x5F78917A
DuniaDllSize = 20183176
Панкстер 26 Mar, 2024 @ 5:26am 
BytesRead 512
BytesWritten 273
BytesWritten 13
1. Recieved message: wParam = FFFFFFFF, lParam = 0001
2. Recieved message: wParam = FFFFFFFF, lParam = 01E7
3. Recieved message: wParam = FFFFFFFF, lParam = FFFFFFFF
Error: There was an error while loading dll

Девственно чистая версия игры со Steam. Запуск от имени администратора не помог, перемещение папки с игрой в корень диска не помогло, антивирусами не пользуюсь. Пока пришлось ограничить кадры через параметр запуска, накачу фиксы плёнок отдельно. :sacrificed:
Zveroboy NB 29 Feb, 2024 @ 11:58am 
FoxAhead, здравствуйте! Нашел Вас в Дискорде, хотел поблагодарить за ту огромную работу по починке FC 2, которую Вы проделали. Не уверен, дошло ли сообщение, поэтому дублирую здесь. С уважением!
Underdog______ 15 Dec, 2023 @ 2:28am 
Именно он, но проблема в том, что когда я ставил вариант с метками на карте, то был этот надоедливый респавн блокпостов.