Перейти к публикации
Планета Deus Ex

LoadLine Calibration

Invisible Hand
  • Публикации

    3099
  • Зарегистрирован

  • Посещение

Все публикации пользователя LoadLine Calibration

  1. Недавно Lander смог разобраться с форматом .lin, и это помогло ему вскрыть игру Splinter Cell (2002) для XBox. Почитать об этом можно здесь (на английском языке) https://landaire.net/a-file-format-uncracked-for-20-years-part-2/ DeusEx The Conspiracy тоже использует формат .lin. Если не вдаваться в подробности нескольких длинных диалогов с ChatGPT с применением материалов Lander, то можно сказать что кое-что удалось достать. Пока ещё не всё, но добыча ценная. Буду добавлять сюда новые модели/ресурсы когда они будут распакованы. Архив #1: Игровые скрипты (Scripts_DeusEx_PS2_Reconstructed.zip). Первое, это все, или почти все игровые скрипты. Для экономии памяти игру оптимизировали, перерабатывали карты на более мелкие, а некоторые игровые скрипты перенесли в C++, скорее всего для ускорения и оптимизации. Самих игровых скриптов в исходном виде как на ПК-версии тоже нет, но UnrealScript это байт-код, который можно декомпилировать и восстановить. Также с помощью ИИ были реконструированы некоторые части C++ кода, он также есть в приложенном архиве. Конечно (и очевидно) его нельзя скомпилировать, но эти C++ фрагменты вполне подойдут для того, чтобы понять, как что в этой версии игры было устроено, что вынесли в C++, как работает автоприцеливание, и многое другое. Scripts_DeusEx_PS2_Reconstructed.zip Архив #2: Скелетные модели (DeusEx_PS2_SkeletalMeshes_Inventory.zip). PS2 версия игры использует более новый билд движка: 420, и уже имеет поддержку скелетных моделей psa/psk. ПК-версия игры использует более ранний билд движка: 400, и технически имеет много общего с Unreal Tournament 99, не имеет поддержки скелетных моделей. В архиве всё оружие, которое есть в игре, модели для вида от первого лица, а также инструменты: мультиинструмент и отмычка. Pickup/third-person модели включены не были. Наноключа нет от PS2 версии нет, поскольку этой версии эту механику упростили. Текстур в архиве нет, при необходимости можно взять от ПК-версии, они подходят, а в PS2 версии они были в меньшем разрешении. В архиве также есть модель наноключа от ПК-версии, отличается добавленным рукавом. Анимация тоже скелетная, была скопирована с ПК-версии с помощью ИИ, как и добавление рукава. DeusEx_PS2_SkeletalMeshes_Inventory.zip
  2. С помощью ИИ и материалов с https://landaire.net/ (A File Format Uncracked for 20 Years) удалось распаковать из PS2 версии Deus Ex некоторые ресурсы, в их числе есть пока одна скелетная модель с анимациями - GM_Trench. Её используют JC, Walton Simons, и другие персонажи. Она уже задействована в проекте. Различия GM_Trench для ПК и PS2: ПК версия: 339 вершин, 604 полигона. PS2 версия: 711 вершин, 1324 полигона. Есть и сложности - PS2 версия использует другие текстуры как минимум для головы, остальные вроде бы подходят от PC-версии без явных искажений. Поэтому возможно придётся использовать текстуры от PS2 версии.
  3. Этот UnrealEd не будет работать с большинством файлов из оригинальной игры, в этом и есть его главный недостаток. Приходится делать по две версии одного и того-же package. Чтобы использовать DumpInt, нужно загружать карты по одной в оригинальный UED1, и выполнять эту команду через лог-окно редактора. Другого способа для модов я не знаю.
  4. Восстановленная Extension.dll была адаптирована под x64 движок, и сейчас практически все UI скрипты из оригинальной игры перенесены на движок 227. Изменения в UI скриптах минимальные - вместо прямого присваивания некоторых значений используются Setters/Getters, поскольку я не могу добавлять поля в базовые Native классы движка. Также был написан конвертер файлов диалогов, он корректирует файлы типа DeusExConText.u так, чтобы 227 мог их правильно читать. Поскольку 227, в отличие от Deus Ex, не умеет декодировать mp3, конвертер ещё и заменяет mp3 файлы в пакетах типа *Audio.u на .ogg вариант. Для этого используются библиотеки BASS.
  5. Новая версия: обновление 1. Изменения и исправления: В браузер ресурсов добавлены вкладки Sounds и Conversations. Для Sounds поддерживается поиск, воспроизведение/пауза/остановка и отображение информации о ресурсе (Wav/MP3/OGG, частота, и прочее). Звук теперь воспроизводится с использованием библиотеки BASS. Требуется наличие файла bass.dll рядом с файлом программы (есть в архиве) Добавлен редактор кривых (Curve Editor). Позволяет создать график и преобразовать его в скрипт. Например если нужно плавно изменить какое-то значение, то этот редактор в этом поможет. Имеются предустановки. F9 теперь правильно скрывает/отображает нижнюю панель редактора. Реализовано автодополнение для команд типа #EXEC, также закрыта часть случаев, где автодополнение не работало. В контекстное меню дерева классов добавлен пункт меню "Show in explorer" Для звуков (как и для текстур) добавлено контекстное меню: Copy Reference + Copy DynamicLoadObject code. Улучшения в Collect descendants: теперь можно выбирать/снимать выбор классов по packages. В меню "Build" добавлена команда "Reindex project" Разные мелкие улучшения и исправления. Примечание: содержимое вкладки Conversations сейчас может отображаться неправильно. Это будет исправлено в следующих версиях. Скриншоты: Скачать можно во вложении. UScriptEdit_Update1.7z
  6. Кажется что год так незаметно пролетел... И вот нашей любимой игре уже 26 лет!
  7. Поскольку мне так и не удалось найти редактор скриптов, который бы меня полностью устраивал, было принято решение сделать свой. Редактор написан на Delphi 11 и использует SynEdit - продвинутый компонент с множеством функций. Этот-же компонент использует например PyScripter или Dev C++. Пока что это бета-версия, которая дорабатывается, но я уже им пользуюсь по назначению. Как он работает: При запуске редактор читает файл DeusEx.ini, находит в нём раздел EditPackages, и по нему пытается найти одноимённые каталоги со скриптами, и производит их индексацию. Например DeusEx\Engine\Classes\*.uc, DeusEx\Core\Classes\*.uc, и так далее. Чем больше таких каталогов со скриптами найдено, тем больше полей и методов редактор будет "знать". Индексация происходит в несколько потоков (максимум 6). Интерфейс программы: Сверху над вкладками редактора есть 2 кнопки для быстрой навигации по скриптам + история навигации (кнопки со стрелочкой вниз). Там же находится и Method Navigator - выпадающий список, где находятся все методы и состояния текущего скрипта. Слева расположено дерево классов на основе найденных и проиндексированных скриптов. Справа от дерева классов расположен сам редактор кода, поддерживается несколько скриптов одновременно (например как в Notepad++). Внизу по нажатию F9 доступно три вкладки: Check Results, Build Output и Packages. Check Results отображает результаты базовой проверки текущего скрипта, Build Output отображает результаты компиляции через UCC, а также отображает различную диагностическую информацию. Packages отображает список пакетов, найденных в разделе EditPackages ini файла игры. Возможности редактора кода: Сворачивание структур, перечислений (enum) и методов (функций), также известное как Code Folding. Ctrl + Click практически везде, для навигации по полям, методам, вызовам из родительских классов, и так далее. Также Ctrl + Click может открывать C++ реализацию нативных скриптовых функций, при условии что исходный код был найден. Редактор цвета: Ctrl + Click по строке вида str = str $ "|c80ff80P="; откроет редактор цвета, где можно посмотреть, что это за цвет, и при необходимости изменить его. Также это работает и с цветом типа Color, то есть (R=255,G=200,B=100,A=100). Автодополнение и подсказка параметров. Активируется нажатием Ctrl + Пробел, Ctrl + Shift + Пробел. Шаблоны кода. Find References - поиск ссылок на поле/метод/перечисление под курсором. GoTo Symbol - позволяет найти нужный класс и/или его метод. Скриншоты: Дополнительные инструменты: Сейчас в качестве дополнительных инструментов есть Game Font/Texture Browser. Этот браузер позволяет просматривать игровые шрифты, что может быть полезно при проверке поддержки кириллицы, а также текстуры. Скриншоты: Браузер шрифтов/текстур интегрирован с редактором кода, и если выполнить Ctrl + Click по ссылке на текстуру/шрифт, браузер откроет эту ссылку, при условии что требуемый ресурс был найден в существующих packages игры. Поддерживаемые игры: Deus Ex, Unreal 227. Установка: Исполняемый файл необходимо поместить в базовый каталог игры. Программа хранит все настройки в .ini файле и ничего не сохраняет в системной реестре, что позволяет использовать её как портативную. Настройки: По умолчанию редактор ищет файл System\DeusEx.ini, но это поведение можно изменить. Для этого нужно отредактировать файл UScriptEdit.ini и изменить значение frmMain.GameIniFile. Также можно перенаправить редактор на считывание другого каталога игры, для этого нужно изменить значение frmMain.RootDirectoryName frmMain.RootDirectoryName=C:\Games\DeusEx_RTX frmMain.GameIniFileName=DeusEx.ini Редактор может работать со скриптами любой игры на UE1, а для Deus Ex и Unreal 227 имеются специальные режимы навигации и шаблоны кода. Скачать можно во вложении. UScriptEdit.7z
  8. Проект жив и понемногу продвигается, хоть и не напрямую, а косвенно. За это время была полностью восстановлена и реконструирована логика двух ключевых файлов из оригинальной игры: Extension.dll + DeusEx.dll. Именно там находится вся логика и управление окнами и интерфейсом, система флагов, система сохранений, переходов, и многое другое. Реконструкция и реверс производились с помощью ИИ, затем эти две восстановленные DLL были скомпилированы, и сейчас я прохожу оригинальную игру с этими файлами, ищу несовпадения, вылеты, в общем сравниваю с оригиналом. А это первые скриншоты после первых удачных компиляций Extension.dll, настолько всё было сломано, в дальнейшем конечно всё это было исправлено. Похоже у меня случайно получился DXHR на движке оригинала А систему окон пришлось отрезать, и почти готовый интерфейс пошёл под нож. Но в дальнейшем после адаптации классов из Extension.dll под движок 227, я уже смогу просто взять готовые скрипты интерфейса из оригинальной игры с минимальными правками.
  9. Раздел "Изображения" я всё-же обновила, поскольку насколько я себя помню, в оригинальной игре я им ни разу не воспользовалась. А теперь можно менять размер заметок и перетаскивать их + краткая справка. Также, с помощью нейронки были увеличены все Datavault images, на мой взгляд вышло неплохо, и можно будет интегрировать их. Скачать можно здесь: https://drive.google.com/file/d/1wn7eH7Ou776vTRswgADsDnXCPDpJ6tUv/view?usp=sharing
  10. Работа над проектами, в том числе и этим, продолжается. Работаю над Datavault - экраны "Инвентарь", "Здоровье" и прочее. Изначально планировалось использовать оконную систему UWindow, которую использует Unreal/Unreal Tournament, но она требует своего подхода, у неё свои стили, да и в целом для моего случая слишком много лишнего. Поэтому было принято решение создать свою оконную систему, с оглядкой на UWindow и оригинал. В ней только нужное и нет ничего лишнего. Уже на своей системе окон были воссозданы экраны "Инвентарь", "Цели/Заметки", ведётся работа над остальными. Показывать скриншоты нет смысла, поскольку они на 99% копируют оригинал, разница небольшая.
  11. LoadLine Calibration

    Vanilla? Madder.

    Вышла версия 2.0: https://www.moddb.com/mods/vanilla-madder
  12. Мод обновлён, теперь для редактора оверлеев используется более безопасный метод, что должно устранить вероятные странности с управлением.
  13. RenderExtended - мод, который решает проблему с исчезающими моделями, поднимает некоторые лимиты движка, а также добавляет ряд новых возможностей (преимущественно для модов). Для установки достаточно скопировать файл RenderExtended.dll в DeusEx\System\, отредактировать файл DeusEx.ini или ini файл мода, и заменить строку Render=Render.Render на Render=RenderExtended.RenderExtended Что делает этот мод: Устраняет исчезающие модели — для этого используется гибридный подход Hybrid Z / bounds-near path. Загрязнение флагов текстур — когда одна и та же текстура с разными PolyFlags портила рендер других поверхностей. PF_Unlit на геометрии — unlit-поверхности больше не тащат за собой LightMap. Анимированные и процедурные текстуры теперь должны обновляться всегда и не застывать. Баг 7 из 8 AABB points в BoundVisible() — теперь проверяются все 8 углов bounding box. Crash/лимиты при большом числе lit surfaces — расширены лимиты/буферы рендера для BSP геометрии Fatness в зеркалах — Fatness > 128 больше не отображается в зеркале как Fatness < 128. Профайлер/overlay — FPS, frame/render time, mesh problems, Hybrid Z, current frame, overlay cost. Может пригодиться при поиске тяжёлых мест на карте. Редактор overlay-панелей — удерживая Ctrl + Alt можно отключать/включать панели, перемещать их и изменять их размер. ShowCollision — безопасное рисование цилиндра коллизии по NAME= или CLASS=. ShowPaths — рисование ИИ-путей рядом с игроком. ShowPaths имеет две цветовых схемы. DX - как в старом UnrealEd. UT469 - как в редакторе Unreal Tiourament 99 с патчем 469. Подсказка по новым консольным командам встроена в мод, наберите в консоли RENDEXT GRAPH ON и она появится вместе с другими оверлеями. RenderExtended_OverlayEditorAltInput.zip
  14. А откуда информация? У меня есть распакованные скрипты от демо-версии и 1.112fm, везде Damage=40
  15. Да, "отсебятина" в этих модах есть. Кому-то нравится, кому-то не очень. Но плазмапушку можно усилить другим способом, через консольные команды. Она выстреливает три Projectile класса PlasmaBolt, поэтому можно изменить значение Damage этого класса. Значение 40 стоит по умолчанию Например: set PlasmaBolt Damage 50 При этом пистолет PS20 тоже будет усилен, он использует этот же класс PlasmaBolt.
  16. Насколько я знаю, чтобы именно PlasmaGun отдельно, такого мода нет. Но есть другие моды, которые меняют баланс игры и оружия в целом, например Shifter. Скачать можно здесь: https://www.moddb.com/mods/shifter1
  17. LoadLine Calibration

    Deus Ex: Machine God

    Версия 0.7 доступна для скачивания https://machine-god.dxgalaxy.org/news/2026-04-19/
  18. LoadLine Calibration

    Deus Ex: Machine God

    2026-04-15 08-18-52-00.00.01.310-00.01.23.787.mp4 Пример новых кат-сцен (WIP).
  19. Без VPN долго и не полностью загружается и сайт и форум. И нет изображений.
  20. LoadLine Calibration

    Vanilla? Madder.

  21. Довольно давно для моделей в формате Unreal .3d существует программа UnrealFX. Она позволяет менять свойства полигонов модели. Но почему-то не было аналога для формата DeusEx .3d, а он отличается от Unreal версии повышенной точностью. Так или иначе, теперь аналог у нас есть, и вы можете скачать его и использовать для настройки своих моделей. https://github.com/LoadLineCalibration/DeusExFX/releases Я перечислю возможные свойства полигонов модели, которые можно установить. Тип полигона(ов): Normal - обычный полигон Two Sided - двухсторонний полигон Translucent and two sided - прозрачный и двухсторонний Masked and two sided - для использования с текстурами, где есть прозрачные участки Modulated and two sided - использовать модулированную прозрачность + двухсторонний Weapon Triangle - особый тип, сюда движок игры привязывает оружие (как правило для NPC) Флаги полигона(ов): Unlit - игнорирует освещение и светится сам по себе. Пример: лампа в верхней части публичных терминалов Flat - плоский? Неизвестно. Environment mapped - добавляет блеск, требует чтобы у актора была подходящая текстура в поле Texture No smoothing - отключает фильтрацию текстуры, будет выглядеть "пиксельной" Интерфейс программы: Интерфейс частично скопирован с UnrealFX, при этом все элементы управления объединены в одном окне. Здесь всё довольно просто. Важно: изменения в Type и Flags а также Material num применяются сразу только если установлен флажок Apply automatically. Viewport options позволяет включить/отключить индикатор осей, Bounding box/Bounding sphere модели и отсечение невидимых полигонов, в том числе с учётом двухсторонних полигонов. Ползунки ShadeDiffuse и ShadeAmbient доступны только в режимах Flat shaded и Smooth Shaded. Режимы переключаются через контекстное меню вьюпорта. Управление: Правая кнопка мыши + перемещение - вращение модели Левая + правая кнопка мыши + перемещение - переместить модель во вьюпорте. Колёсико мыши - приближение/отдаление модели. Выделение полигонов: Левая кнопка мыши + перемещение - выделение множества полигонов под выбранной областью. Левая кнопка мыши - выделить один полигон. Левая кнопка мыши + Ctrl или Shift - добавить выделение.
  22. С Новым Годом!
  23. Да, есть в планах. Сделаю. Движок очень даже позволяет. И не только декали, но и частицы/фрагменты, в зависимости от поверхности.
  24. ... вот в чём вопрос! В любом случае, можно это отключить, а можно и наоборот, сделать так, чтобы перцовка вызывала срабатывание.
×
×
  • Создать...