Перейти к контенту

Редактирование движка X-Ray


Rolan

Рекомендуемые сообщения

_Призрак_, снимаю шляпу, как говорится, однако, выглядят блудмарки хуже некуда.

Поделиться этим сообщением


Ссылка на сообщение
_Призрак_, вряд ли это можно обойти малой кровью. Проверку перед вылетом и я могу заткнуть, да вот только все равно же потом вылезет. Проверка с вылетом стоят не просто так. Сейчас хотя бы примерно понятно, в чем дело, а после удаления проверки пойдут вовсе рандомные вылеты.

Поделиться этим сообщением


Ссылка на сообщение
serega-gamer, это не по графике вылет. К нему приводит большая дальность видимости на равнинных локациях (болота - канонический пример).

Поделиться этим сообщением


Ссылка на сообщение

macron, а где брал локи, портированные из ЗП? Спрашиваю, потому что вылет происходит в движке, в методе VertexStream::Lock, очевидно, связанным с вертексами :). Возникает вылет из-за переполнения некоего буфера (mSize) Если ты брал портированные локи в мап-паке для ТЧ, то там в процессе портирования было сурово урезано количество вертексов на локациях (раз так в 6). Может, как раз поэтому нет переполнения и вылетов не наблюдается.

 

Добавлено через 1 мин.:

Gektor, А что за возможности звукового движка такие? И в ТЧ можно настроить звук, с помощью sound_env, например.

Изменено пользователем KD87

Поделиться этим сообщением


Ссылка на сообщение
Gektor, sound_occlusion для материала - это параметр отражения звука, а не глушения. Соответственно, для глушения звука надо ставить зоны sound_env в LE. Флаг воллмарков надо ставить в материале (Shader Editor -> Material).

Поделиться этим сообщением


Ссылка на сообщение
SibireaStalker, To enable motion blur in STALKER, you first need to add the -mblur switch to your STALKER launch icon. Это еще со времен ТЧ известно.

Поделиться этим сообщением


Ссылка на сообщение
SibireaStalker, да можно и батник, если с ним удобно. А вообще Cyclone правильно написал, добавь -mblur в свойствах ярлыка. Еще нюанс - это только включение возможности включения блюра, так сказать) Сам блюр потом еще надо настраивать в консоли вот такой командой: r2_mblur. Принимает значения от 0 (выкл) до 1 (на максимум). Экспериментируй.

Поделиться этим сообщением


Ссылка на сообщение
SibireaStalker, user.ltx удали. По логу видно же, что не может оттуда что-то прочитать.

Поделиться этим сообщением


Ссылка на сообщение

Erwin Rommel, 001B:0040B289 xrEngine.exe, CCC_LoadCFG_custom::operator=()

Это говорит о том, что еще не применил :)

Поделиться этим сообщением


Ссылка на сообщение
SibireaStalker, таких шейдеров нет, потому что это не шейдеры :). Если по-русски, то в логе написано: "неправильный синтаксис параметра r2_aa_break. Правильный синтаксис: три флоат-значения в интервале [0.000000e+000,0.000000e+000,0.000000e+000]-[1.000000e+000,1.000000e+000,1.000000e+000]". Блокнот в руки - редактируй user.ltx, переделывай проблемные параметры. Или удаляй вовсе.

Поделиться этим сообщением


Ссылка на сообщение
-StalkMen-, pdb - отладочная информация для бинарников. Если не ковыряешься с декомпиляцией - выкинь из головы. Это не имеет отношения к ресурсам игры.

Поделиться этим сообщением


Ссылка на сообщение

SkyLoader, _Призрак_, в CScriptBinder::set_object() есть проверка на сингловый тип игры. Надо не на нуль там заменять, а убрать проверку.

На билде 2947 выглядит вот так:

.text:1006F91F                 call    ?IsGameTypeSingle@@YA_NXZ; IsGameTypeSingle(void)
.text:1006F924                 test    al, al
.text:1006F926                 jz      short loc_1006F92F

Поделиться этим сообщением


Ссылка на сообщение
SkyLoader, билд 2947 - это фактически билд финалки. Для какого патча ты пытаешься что-то поменять?

Поделиться этим сообщением


Ссылка на сообщение

SkyLoader, скажи, а зачем пытаться перенести найденное в билдах 18xx в финалку? тебе недостаточно билдов 29xx с _отладочной информацией_?

Как бы то ни было, я нашел нужную тебе функцию в dll от четвертого патча:

  ассемблерный листинг (Показать)
Изменено пользователем KD87

Поделиться этим сообщением


Ссылка на сообщение

SkyLoader, а чего там искать? имена всех экспортированных функций есть в функциях script_register_... Выполняешь поиск по нужному имени, дальше дело техники. Если отладочной информации нет и нужное имя не находится, можно взять ближайший билд с оной и с умом сравнивать - обычно удается найти то, что нужно (в этом случае так и сделал). Это в данном конкретном случае. В общем случае, конечно, сложнее - когда я составлял список версий спавна по билдам, искал вообще по битовым маскам, применяемым в CAE_Abstract::Spawn_read(). В общем, свой подход каждый раз.

 

Поделиться этим сообщением


Ссылка на сообщение
malandrinus, мне, например, нужны были форматы спавна для universal_acdc. Больше незачем :)

Поделиться этим сообщением


Ссылка на сообщение

_Призрак_, ну не только я так выражаюсь. pdb - контейнер для отладочной информации, разработанный Microsoft. А отладочная информация - это не столько имена функций, сколько их прототипы, указания типов и прочая радость. Конкретный набор данных определяется ключами при компиляции приложения (вроде как). В билдах 29xx отладочных данных настолько богато, что можно восстановить прототипы функций, структуры, перечисления, пользовательские типы, шаблоны. Местами даже имена переменных есть. Думаю, удастся восстановить даже классы - если попотеть.

 

SkyLoader, нет. А почему должно быть? CSE_Abstract::Spawn_read() - начальная часть чтения секции из all.spawn. По прочитанному s_name_replace определяется серверный класс объекта, и дальше запускается соответствующий метод STATE_Read. Кстати, правильно CSE_Abstract::Spawn_read(), это я опечатался.

Изменено пользователем KD87

Поделиться этим сообщением


Ссылка на сообщение
702, через скрипты - однозначно нет. Можно попробовать поковырять скриптовые шейдеры (gamedata/shaders/).

Поделиться этим сообщением


Ссылка на сообщение
dark_stalker, это в общем-то консольный параметр r__wallmark_ttl, он есть даже в ТЧ. Определяет, как долго остаются воллмарки, кажется. А зачем ковырять движок ради размера травы? Его можно изменить и в build.details. Xiani как-то даже делал парсер для этого.

Поделиться этим сообщением


Ссылка на сообщение
dark_stalker, естественно. Запусти игру, подойди к дереву и ударь по нему ножом. Увидишь свои воллмарки.

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...