Новости Анонсирован ремастер Final Fantasy Tactics
  • 41
  • 0
Культовая пошаговая тактическая RPG от Square Enix получит второе дыхание. На проходящей выставке State of Play, где анонсируются игры для Play Station, состоялся анонс ремастера Final Fantasy...
Новости Моддеры Oblivion Remastered нашли способ внедрения абсолютно любых скриптов
  • 146
  • 0
Сообщество моддинга Oblivion Remastered (ORM) переживает настоящий расцвет. После долгих месяцев работы, энтузиасты научили игру работать с мощным скриптовым языком Lua, открыв перед создателями...
Новости Tainted Grail: The Fall of Avalon — Польская «Skyrim» теперь официально
  • 1.451
  • 24
23 мая 2025 после двух лет успешного раннего доступа в Steam польская студия Questline наконец представила свою фэнтези-RPG в полной версии. Tainted Grail: The Fall of Avalon доступна на ПК...
Новости CD Projekt RED представила юбилейный трейлер к 10-летию The Witcher 3: Wild Hunt
  • 996
  • 0
Польская студия CD Projekt Red порадовала поклонников франшизы «Ведьмак», выпустив особый видеообзор в честь десятилетия культовой RPG «Ведьмак 3: Дикая Охота». Что показали в трейлере...
Gothic ½ — Union

Патч Gothic ½ — Union 1.0m (update)

Нет прав доступа на загрузку
Это патч, который исправляет большинство багов движка
Ссылка на архив разработчика с всегда актуальными версиями Union.
Последний актуальный Union 1.0m и сопутствующие файлы.
Патчи
  • Stunlock fix when meatbug tries to draw weapon - Исправление, предотвращающее зависание персонажа, если, играя за "мясного жука", попытаться достать оружие
  • First day in savegame is 1 - Теперь в меню сохранения/загрузки номер первого игрового дня начинается с 1, а не с 0
  • Fit viewport to screen - Автоматически масштабирует элементы интерфейса по размеру экрана, устраняя некоторые негативные эффекты DX7
  • Create drawweapon perception - NPC реагируют, если персонаж достаёт оружие на бегу в G1
  • Create removeweapon perception - NPC реагируют, если персонаж прячет оружие на бегу в G1
  • Fix NPC_KnowsInfo - Исправлена ошибка скриптов, из-за которой ранее скрывались определённые диалоги
Настройки
[DEBUG]
  • FixBinkNew - активирует новую систему исправления видеороликов на базе Union.
  • FixBink_InterpCpuCount - регулирует качество сглаживания видеоряда.
    • 0 - отключено, обеспечивая лучшую производительность
    • 1 - оптимальное качество, при этом производительность ниже
    • 2 - сбалансированное качество и производительность
    • 3 или выше - минимальное качество, но максимальная производительность
  • FixBink_InterpPixelSize - задаёт количество потоков CPU, задействованных для сглаживания видеоряда. Допустимый диапазон от 1 до 16.
Файловая система и плагины
  • Исправлены ошибки при распаковке сжатых томов.
  • Параметры IgnoreList и UnIgnoreList теперь также применяются к VDF томам
  • Приоритет версии dll теперь выше, чем временная метка тома.
  • zParserExtender интегрирован нативно в Union.vdf, что исключает необходимость его отдельного подключения вместе с API скриптами в других VDF.

Звук
  • Для корректной работы звука в G1 на (не)эмуляторах добавлена библиотека Mss32.dll из другой версии игры
Мышь
  • Буфер опроса значительно увеличен для предотвращения возможного залипания кнопок
Фикс роликов
  • Из-за увеличения количества жалоб на фикс от SystemPack, основанный на opencv, была разработана новая библиотека масштабирования видеороликов. Новая реализация не зависит от железа и драйверов, используя для расчётов CPU. Совмещая различные методы оптимизации, алгоритмы позволяют применять библиотеку на любых ПК, а в отдельных случаях даже заметно повышают производительность.

Ознакомьтесь со следующими параметрами в ini:
  • FixBink_InterpCpuCount - этот параметр определяет, сколько ядер CPU будет задействовано для сглаживания изображения. По умолчанию система автоматически подбирает оптимальное количество ядер, исходя из характеристик вашего процессора. Максимальное значение – 16 ядер.
  • FixBink_InterpPixelSize - данный параметр устанавливает качество сглаживания изображения по умолчанию. Значение подбирается автоматически с учётом мощности CPU и разрешения экрана. Это стартовое значение, после которого система корректирует качество в зависимости от времени вычисления кадра. При более высоком значении качество сглаживания снижается, однако оно не опускается ниже исходного уровня (система сама это контролирует). Значение 0 отключает сглаживание.
Изменено назначение кнопок.
При extendedVideoKeys=0:
Код:
Esc пропустить ролик
Space пропустить ролик
Enter пропустить ролик
Shift + Space приостановить/возобновить ролик
При extendedVideoKeys=1:
Код:
Q вкл/выкл звук
Left отмотать назад
Right отмотать вперед
Up увеличить громкость
Down уменьшить громкость
Esc пропустить ролик
Home начать с начала
Space приостановить/возобновить ролик
ВАЖНО!!!
Если у вас установлен GD3D11, библиотека zBinkFix будет отключена, и все операции масштабирования будут выполняться DirectX11.

Исходный код zBinkFix:
GitHub - Gratt-5r2/zBinkFix
Универсальный первичный патч (без разбивки на x32/x64).
Исправление ошибок
На данный момент это полностью рабочая тестовая версия, которая в ближайшее время не претерпит изменений или останется без изменений вовсе.

SystemPack 2.0
  • Внедрены ассемблерные вставки, существенно упрощающие создание патчей
  • Добавлены вызовы API для реализации сложных патчей
  • Реализована возможность переопределения значений из SystemPack.ini с помощью слова OVERRIDES_SP. Функциональность аналогична соответствующей секции ini мода. Переопределения не изменяют физический файл SystemPack.ini, однако их значения имеют более высокий приоритет.
  • Введены приоритеты выполнения патчей. По умолчанию первым запускается Union.patch, а остальные – в порядке их обнаружения в игровых файлах. Для повышения приоритета файл должен начинаться с нижнего подчёркивания. Такие патчи будут исполняться до Union.patch, причем приоритет определяется количеством нижних подчёркиваний.
    Подробнее см. в теме Union - формат .patch файла
SystemPack - Изменения патчей
  • InteractCollisions - теперь фикс отключает не сами коллизии NPC, а выборочный обработчик. Это означает, что столкновения с персонажем всё ещё возможны, но он становится невосприимчивым к окружению, при этом объекты, с которыми происходит взаимодействие, сохраняют свои коллизии.
  • No_strafe_while_fall - помимо стрейфов, отключаются и прочие состояния, способные прерывать падение: parade, attackforward, attackleft, attackright
  • Shield - устранена ошибка, при которой щит не снимался со спины, если адрес предмета попадал в отрицательный знаковый диапазон
  • Реализация чтения Bink из VDF полностью перенесена в Shw32.dll

SystemPack - новые патчи
  • |G1 G2| Фикс зависания спела при одновременном касте и открытии инвентаря
  • |G1 | Превью предмета в его описании теперь отрисовывается максимально справа
  • |G1 | Исправлен баг падения персонажа с лестницы, когда другой NPC обращается к ней преждевременно
  • |G1 G2| Выравнивание NPC с учётом кривизны наклона лестницы
  • |G1 | Фикс, предотвращающий «сталкивание» NPC на лестнице при их подпирании другим NPC
  • |G1 | Для предотвращения выхода за барьер вводится смертельный урон в воде и при взаимодействии с монстрами
  • |G1 G2| Будучи монстром, устранён баг, позволяющий возвращаться в (живую) человеческую форму в первые секунды после смерти
  • | G2| Исправлена проблема с неотображающимися субтитрами минидиалога
  • | G2| Удалена угрожающая музыкальная тема в зонах 'WALD' (например, дом Эрола)
  • | G2| Исправлена возможность стрейфа в состоянии, когда движение запрещено
  • |G1 | Исправлен баг множественного вызова AI при открытом инвентаре (исправляет эффекты «летающих» факелов над рудокопами, выпадение предметов из рук NPC, прерывание диалогов и т.п.)
  • | G2| Исправлена возможность пропуска диалогов и катсцен стрейфом
  • |G1 G2| Устранена ошибка, при которой NPC не слышал шаги другого NPC во время стрейфа, прыжков и обратного шага
  • |G1 G2| Введена установка состояний (BS_SNEAK, BS_WALK, BS_RUN) при стрейфах
  • |G1 G2| Исправлена недоработка, из-за которой не посылалось уведомление о доставании и убирании оружия на бегу
  • |G1 G2| Если текстура мультидокумента имеет прозрачный контур, её изображение немного корректируется
  • |G1 | Исправлена ошибка, когда при первом открытии инвентаря не отображались все предметы торговца или показывались неправильные их количества
  • |G1 G2| Исправлен двойной выныривание после падения персонажа в воду
  • |G1 G2| Персонажи не обновляют и не восстанавливают здоровье в полночь, если находятся в зоне видимости игрока
  • |G1 G2| Устранено световое пятно, возникающее после удаления света от факела или иного источника
  • |G1 G2| Исправлена возможность открытия инвентаря во время диалога
  • |G1 | Реализовано автоматическое закрытие инвентаря, когда NPC обращается к игроку
  • |G1 G2| Исправлена проблема с телепортацией через стены при использовании свитка превращения
  • | G2| Исправлена ошибка, когда пираньи, находящиеся далеко от острова, определялись с неверной дистанции
  • | G2| Исправлены луки и арбалеты, находящиеся на спине, которые бесконечно проигрывали анимацию
  • |G1 G2| Опция ForceFlip (рекомендуемая при использовании технологий G-sync, FastSync или EnhancedSync) устраняет мерцающие артефакты
  • [G1 G2] Опция DisableOcclusionCulling отключает фильтрацию видимых объектов, что исправляет их мерцание или исчезновение, но может снизить общую производительность
Для Spacer
  • [G1 ] В G1 добавлены патчи для Spacer (crc32:6C370582), аналогичные тем, что присутствуют в G2 (crc32:B1B45718)
  • [G1 G2] Исправлено сворачивание главного окна
SystemPack - фичи
  • |G1 | Оружия, кольца и амулеты теперь группируются в пачки
  • |G1 | Предметы в инвентаре всегда отображаются поверх игрового мира
  • |G1 G2| Адаптивная дистанция прорисовки устанавливается автоматически в зависимости от частоты кадров (для DirectX 7)
  • |G1 G2| Реализовано построение графика производительности в реальном времени (для DirectX 7 или DirectX 11 [v17.7-dev17])
  • |G1 G2| Скорректирована высота спуска с лестницы, предотвращающая провал ног NPC под землю
  • |G1 G2| Введён более адекватный ограничитель частоты кадров для оконного режима
  • |G1 G2| Встроен плагин, устраняющий множественные VFX-уроны с участием нескольких дочерних частиц
  • |G1 G2| Видео в оконном режиме больше не зависают
  • |G1 G2| Реализовано переключение между оконным и полноэкранным режимами через Alt+Enter
  • |G1 G2| Загрузка из Data\ModVdf возможна даже если том занят другим процессом и не может быть перемещён в Data
Union - мышь
  • Отключение мыши и клавиатуры происходит при потере фокуса окна
  • Мышь не «отваливается», даже если происходит зависание с потерей фокуса или подключён дебаггер
  • Осуществляется очистка буфера нажатых клавиш между загрузками
  • Добавлен режим no-DirectX, позволяющий управлять осями через фактическое расстояние, пройденное мышью на экране. Этот режим более отзывчив и полезен для пользователей с GFA (Gothic Free Aim), низким FPS, а также для корректной работы таких плагинов, как «Расширенный инвентарь от Hedin» или «Меню крафта в Returning 2.0 AB и NB».
Union - система
  • Ядро переработано для оптимальной работы с Windows 7 и (не)эмуляторами под macOS & Linux
  • Обновлены паттерны байткодов, повышающие эффективность «безопасных» хуков
  • Исправлена ошибка в zip-vdf, теперь многопоточное чтение разрешено только после точки входа в движок
  • Добавлена полная виртуализация системной папки, позволяющая ей иметь любое название и создавать несколько системных папок для различных задач
  • Параметры PluginList и IgnoreList могут переопределять запуск Ninja, поэтому он вынесен в отдельную опцию в SystemPack.ini
  • Введён «пассивный» zParserExtender, который будет запущен, если в папке Autorun присутствуют скрипты или включён его принудительный запуск
  • Добавлена возможность сборки плагинов со статической run-time библиотекой (libcmt.lib /MT[d]) начиная с SDK 1.0l
Union - SDK
  • По умолчанию при создании проекта устанавливается версия платформы v142
  • Добавлены варианты сборки со статической run-time библиотекой, что означает отсутствие необходимости в предварительной установке vcredist для ваших плагинов. Это достигается посредством экспорта указателя на RTDynamicCast из статической libcmt.lib через объект самого плагина (см. Interface.cpp)
  • Режим сборки MP разделён на два типа:
    А. MP x2 – сборка плагина только для G1 и G2A
    Б. MP x4 – сборка плагина для G1, G1A, G2, G2A
  • В Gothic API добавлены комментарии с размерами классов, полей и их смещениями
  • Добавлены сниппеты для быстрого создания хуков. Для этого достаточно начать вводить слово hookPatch или hookDetours (в зависимости от требуемого хука) и нажать TAB. Будет создан шаблон, куда следует перенести сигнатуру перехватываемой функции. Сниппет также дополнит прототип, который можно вставить в UserAPI.
Новое в SystemPack.ini
  • |G1 | [Parameters] MultislotWeapons – разрешает группировку оружий в пачки [по умолчанию – 1]
  • |G1 | [Parameters] MultislotMagic – разрешает объединение колец и амулетов в пачки [по умолчанию – 1]
  • |G1 G2| [Parameters] AdaptiveSightDistance – включает автоматическую настройку дистанции прорисовки [по умолчанию – 0]
  • |G1 G2| [Parameters] AdaptiveSightDistance_ShowInfo – позволяет отображать значения адаптивной дистанции прорисовки [по умолчанию – 0]
  • |G1 G2| [Parameters] AdaptiveSightDistance_LowerFPS – задаёт нижнюю границу FPS, ниже которой дистанция прорисовки уменьшается [по умолчанию – 55]
  • |G1 G2| [Parameters] AdaptiveSightDistance_UpperFPS – задаёт верхнюю границу FPS, выше которой дистанция прорисовки увеличивается [по умолчанию – 60]
  • |G1 G2| [Parameters] VisualizePerfomance – разрешает отрисовку графика производительности [по умолчанию – 0]
  • |G1 G2| [Parameters] HeightCorrectionOnLadder – предотвращает провал ног под землю при использовании лестницы [по умолчанию – 1]
  • |G1 G2| [Parameters] FPS_Limit – ограничивает FPS до заданного значения [по умолчанию отключено – 0]
  • |G1 G2| [Parameters] ClearKeyBufferOnLoad – включает очистку буфера ввода при загрузках [по умолчанию – 1]
  • |G1 G2| [Core] Ninja – разрешает загрузку Ninja.dll [по умолчанию – 1]
  • |G1 G2| [Core] ParsetExtenderAlwaysOn – включает загрузку zParserExtender.dll независимо от наличия скриптов в Autorun [по умолчанию – 0]
  • |G1 G2| [Mouse] NoDirectXMode – позволяет отслеживать перемещение мыши не через dinput [по умолчанию – 0]
  • |G1 G2| [Debug] GPUName – системный параметр, указывающий последнюю работавшую видеокарту
  • |G1 G2| [Debug] ForceFlip – устраняет мерцающие артефакты при использовании G-sync, FastSync или EnhancedSync. Рекомендуется для пользователей с данными технологиями. [по умолчанию – 0]
  • |G1 G2| [Debug] DisableOcclusionCulling – отключает фильтрацию видимых объектов, что исправляет их мерцание/исчезновение, но снижает производительность. [по умолчанию – 0]
Дополнительно
Visual C++ 2008 более не требуется для работы фикса Bink
  • Особенности нового zParserExtender см. в теме Расширение возможностей парсера | zParserExtender [плагин для Union]
  • В папке Gothic добавлен прямой деинсталлятор Union
  • Обновлены некоторые ресурсы Первичного патча, а также оставлен только Патч с 4GB патчем
  • Менеджер ресурсов самостоятельно скачает и установит Visual C++ 2010 (при согласии пользователя)
  • Исправлен патч FindNextFightAction_Workaround_1 – теперь скелеты в Gothic 1 атакуют с нормального расстояния.
  • Исправлен и возвращен патч Transform crashfix – теперь при переходе между локациями персонаж не будет умирать.
  • Анизотропная фильтрация по умолчанию выключена (для оптимизации на старом железе при чистой установке). Чтобы включить обратно, используйте опцию AnisotropicFiltering.
Основные изменения в Union, файловой системе и SDK
(*Больше информации по SDK будет представлено в соответствующей теме.)

  • Добавлена поддержка сжатых томов
    • Сжатые тома используют zip-архивирование, но файлы в них разделены на сегменты. Это позволяет быстро получать доступ к данным в любой части файла. Средняя скорость распаковки достигает 1.5 ГБ/с, но на практике этот показатель зависит от конкретного мода. Сжатие отлично подходит для плагинов и небольших проектов.
  • Исправлена ошибка файловой системы VFILE
    • Ошибка возникала при использовании 4GB патча. В движке проверка валидности хендлера работала некорректно: если его числовое значение становилось отрицательным, система ошибочно считала его недействительным. Это происходило, если указатель на файл превышал 2GB.
  • Исправление файлов с нарушенным доступом
    • Файлы с поврежденными правами доступа теперь автоматически исправляются системой, вне зависимости от причин их повреждения.
  • VDF-тома теперь можно запускать из DATA\PLUGINS
    • Чтобы не загромождать корневую папку, плагины теперь хранятся в DATA\PLUGINS. Разработчики могут использовать этот путь по своему усмотрению.
  • Настройка языка через ini-файл
    • Union и плагины определяют язык системы и используют его для локализации. Если необходимо задать другой язык, его можно указать в SystemPack.ini в параметре Language.
  • Интеграция патчей прямо в плагины
    • Теперь патчи можно включать непосредственно в плагин. В шаблон проекта SDK добавлены патчи Plugin.patch, которые автоматически загружаются вместе с плагином. Дополнительные патчи можно запускать с помощью:
      Код:
      SystemPack::CPatch::ExecuteResource( module, resource_id, resource_group )
      module - модуль, в котором находится патч
      resource_id - идентификатор ресурса
      resource_group - наименование группы, в которой состоит патч
      Пример:
      SystemPack::CPatch::ExecuteResource( module, MAKEINTRESOURCE( 103 ), "PATCH" );
  • Поддержка dynamic_cast в debug-библиотеках (RTTI патч)
    • Теперь dynamic_cast доступен в debug-конфигурации.
  • Предварительная распаковка OGG
    • Файлы OGG (музыкальные и звуковые дорожки) теперь можно предварительно распаковывать в память. Это позволит избежать фризов при загрузке крупных аудиофайлов.
  • Опции для (не)эмуляторов
    • Для работы с Wine и аналогами можно включить EmulatorMode в SystemPack.ini.
  • Новые патчи
    • skip EV_AIMAT
      zFILE_VDFS::open unsigned
      Regen mana without hp
  • Новые опции
    • DecompressedCacheSize
      UnzipThreadsCount
      EmulatorMode
      GpuFixes
      Language
  • Первичный патч
    • Добавлены оригинальные ini и rtf файлы для каждой локализации.
Рекомендация
Для слабого железа можно отключить параметр AnisotropicFiltering, чтобы повысить производительность.
Первичный патч (и +4gb) от 15.05.2021
Добавлена поддержка Wine и аналогичных решений, что было протестировано на Ubuntu 20.04 и macOS 11.1 с использованием Wine 5.0. Основное отличие от стандартной версии 1.0i заключается в том, что под Wine GPU-патчи, мешающие запуску игры, не активируются.

Требования для корректной работы под Wine (аналогично для других (не)эмуляторов):
  1. Менеджер ресурсов и автономные установщики требуют установленного .NET Framework 4.0 и Visual C++ 2010.
  2. Запуск самой Gothic возможен при наличии установленных Visual C++ 2008 и 2010.

Важно! В Wine библиотеки времени выполнения (MSVCR[XXX]) являются сторонними и могут вызывать критические ошибки. Например, MSVCR100 необходимо заменить на оригинальную версию для Windows, иначе возможны сбои в работе, сопровождающиеся критическими ошибками.
Union-1.0j-00001.png


Настройка Wine для корректной работы библиотек:
  1. Открыть терминал и выполнить команду winecfg. В появившемся окне перейти на вкладку “Библиотеки”.
  2. В поле “Новое замещение для библиотеки” добавить следующие библиотеки:
    • MSVCR100.DLL
      MSVCR110.DLL
      MSVCR120.DLL
      MSVCR140.DLL
      (и другие, если в будущем появится необходимость).
      Это позволит Wine в первую очередь использовать установленную на ПК библиотеку, а при ее отсутствии — встроенную.
      Union-1.0j-00002.png
  3. Установить Microsoft Visual C++ 2010 x86, а также версии 2012–2019, если они требуются для работы каких-либо плагинов. Как правило, этого достаточно для нормального запуска игры.
Если по каким-либо причинам Wine не находит стороннюю MSVCR-библиотеку, можно попробовать разместить ее в папке с исполняемым файлом игры. Однако такая ситуация встречается редко:
Union-1.0j-00003.png
Сверху Снизу