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

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

а ты этим не можешь заняться?

А что мешает до или после патчинга бинарника правками из xray-extentions, пропатчить его другими модами по правкам движка? В частности коллизия никак не пересекается, да и другие правки тоже.

 


Для тех, кто может быть до сих пор не разобрался, как искать нужные значения различных параметров у объектов по смещению в памяти, вот функция-пример для актора:

function get_actor_values(type, cycle_length)
    if cycle_length then
        if type == "float" then
            get_console():execute("clear_log")
            for i = 1, cycle_length do
                local value = db.actor:get_actor_float(i)
                if value and value ~= 0 then log1("Float = "..value.." Position = "..i) end
            end
            get_console():execute("flush")
        elseif type == "int" then
            get_console():execute("clear_log")
            for i = 1, cycle_length do
                local value = db.actor:get_actor_int(nil, i)
                if value and value ~= 0 then log1("Int = "..value.." Position = "..i) end
            end
            get_console():execute("flush")
        end
    end
end

Сканирует смещения в диапазоне от 1 до заданной длины цикла cycle_length. Можно задать тип числа int или float. Данные о позиции и значении выводятся в лог и сохраняются. Перед этим лог очищается. Позиции, у которых значение равно нулю не выводятся.

Изменено пользователем Shadows
Ссылка на комментарий

Earth2Space,


а ты этим не можешь заняться?

Чем именно, искать авторов правок или заниматься реверс-инженирингом этих правок и воспроизводить их в этом проекте?

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

Shadows дал хороший совет насчёт использования уже патченного файла. Экзешник так использовать не получится, поскольку в этом проекте принят за основу файл от штатовской версии (без защиты), но xrGame должен подойти. Я так даже делал, вполне работает. И кстати, а что там за правки в экзешнике?

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

Ссылка на комментарий

сейчас весьма сильно занят

Понимаю.

в этом проекте принят за основу файл от штатовской версии (без защиты)

В том тоже.

xrGame должен подойти

Там его нет.

а что там за правки в экзешнике?

В "Доработки графики финалки [ТЧ 1.0006]", что @Deathdoor выложил? Конкретно по пунктам не знаю, но саншафты там включены. Я думал, что тебе об этом должно быть больше известно, ваше же это)

Изменено пользователем Earth2Space
Ссылка на комментарий

Earth2Space, ты меня окончательно запутал. Пакет, который выложил Deathdoor в той теме, содержал некую версию бинарников из этого проекта. Всё, что там есть, есть в последней версии здесь. Я тогда не понимаю, что ты хочешь.

  • Нравится 1
 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

Ссылка на комментарий

Я уже и сам запутался. Начнем сначала: в данный момент меня интересуют саншафты. Если

 

Всё, что там есть, есть в последней версии здесь.
то как мне их включить этим проектом на чистой игре?

Сорри, что я туплю, но хочется разобраться.

Ссылка на комментарий

Глянул давно еще correct_list для ЧН. Увидел строки относящиеся к увеличению пояса артефактов (насколько помню 3). Думал пропатчить способом Cut X-Ray (выписал строки, добавил числа на изменение). Но почему-то не вышло. Интересно почему. Давно еще dark_stalker делал правку по артам через Cut X-Ray, но она пропала. Кстати насколько помню первые буквы\цифры были сходны, последние различались (но не сильно). Может из-за этого? Но ведь данные правки делают одно и то-же. 

P.S. Помом уже писали, есть байда если сделать пояс артов по горизонтали. Не хочет чет никак.

Ссылка на комментарий

 

 


Думал пропатчить способом Cut X-Ray

А можно было не думать, а прочитать ридми к проекту.

 

 

 


Сорри, что я туплю, но хочется разобраться.

И тебе то же самое - читай ридми. Правки экзешника есть _только_ в проекте xray-extensions. Сборка с саншафтами использовала одну из промежуточных ревизий проекта. Отсюда простейший вывод - чтобы включить правки из проекта, надо им пропатчить экзешник. Как именно пропатчить - тыщу раз уже разжевывали.

Дальше. Зачем нужно брать последние ревизии правок экзешника? Там ничего полезного не появилось после выкладывания сборки с саншафтами.

Последнее. Не раз было написано, что правки экзешника нужны только для пыли в саншафтах, они сами и так работают. Если у тебя не работают сами саншафты без правок - делай выводы.

Ссылка на комментарий

KD87, я имел ввиду взять нужные строки и пропатчить другим методом. Уже описал в прошлом посту че да как. Интересно тогда почему же различаются варианты от dark_stalker'a и здесь. Делают одно и то же.

Ссылка на комментарий

Я думаю в пакете Deathdoor лежит все необходимое и то что есть в X-Ray extensions. Но в пакете кроме бинарников лежат еще и папки shaders, которые как раз включают Sunshafts.

Т.е. с одними бинарниками без папки с шейдерами далеко не уедешь...

Заходим в игру и вбиваем r2_sun_shafts(надеюсь правильно написал). Если пишет что-то типа unknow command или т.п., то саншафты не работают. Если появляется строка с "r2_sun_shafts off" - значит работает. Вбиваешь в консоль "r2_sun_shafts low", пот вбиваешь в консоль "vid_restart". Если изменений не видно, то значит криво поставили шейдеры.

Я у себя совмещал шейдеры из пакета OGSE и u3shaders. Работают функции и u3shaders, и саншафты, и soft particles, и soft water.

 

P.S. прошу прощения если не в тему...

Ссылка на комментарий

power-cat,

я имел ввиду взять нужные строки и пропатчить другим методом

Не выйдет. В corrections_list.txt только врезки переходов на собственно фрагменты рабочего кода, где и делается основная работа. А эти фрагменты сидять в дополнительном сегменте, который ещё надо сделать, и пишутся на ассемблере. Кроме того, адреса там - это не физические смещения от начала файла, а смещения от начала сегмента кода, которые патчер ещё должен пересчитать.
 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

Ссылка на комментарий

А можно подробнее узнать о правках? Например об этих:

ОЧИСТКА РЕНДЕРТАРГЕТА RT0

ШЕЙДЕР САМОСВЕЧЕНИЯ НА ХУДЕ
ВИРТУАЛЬНЫЙ РАДИУС ЛАМП
ДЕФАЙНЫ ШЕЙДЕРОВ
РЕГИСТРАЦИЯ СЭМПЛЕРОВ
РЕГИСТРАЦИЯ СЭМПЛЕРОВ ДЛЯ ПАРТИКЛОВ

0x10054AD7 7 ; фикс оффлайнового движения неписей
0x10221D75 12 ; блокирование кривого движкового переключения гранат

0x101DE76F 6 ; fdiv ds:g_fov
0x1023B20D 8 ; divss xmm0, ds:g_fov
0x1027401D 8 ; divss xmm0, ds:g_fov
0x10287828 8 ; divss xmm0, ds:g_fov

0x102065B7 9 ; jmp loc_1020663C_return_true ; фикс инвентаря часть 1
0x1020432D 5 ; jmp CInventory__CInventory_fix ; фикс инвентаря часть 2
;;0x102046B1 5 ; jmp CInventory__Take_fix ; фикс инвентаря часть 3
0x10204ED4 5 ; jmp CInventory__Ruck_fix ; фикс инвентаря часть 4
0x10204A57 5 ; jmp CInventory__DropItem_fix ; фикс инвентаря часть 5

 

И еще: если патчить на "ПРАВИЛЬНОЕ ПОЛОЖЕНИЕ СОЛНЦА", то получаю вылет

stack trace:

0023:043C0515 xrRender_R2.dll

Если в [spoiler=ПРАВИЛЬНОЕ ПОЛОЖЕНИЕ СОЛНЦА]

;=====================================

0x1006E564 4
0x10030515 8

 

закомментить "0x10030515 8" - вылета нет, можно играть.

И, вроде бы, пока что, последний вопрос по

0x10023D7A 5 cache_initialize_1

0x10023D85 5 cache_initialize_2
0x10024144 5 cache_update_1
0x100241A9 5 cache_update_2
0x1002422E 5 cache_update_3
0x1002428B 5 cache_update_4
0x10023E2A 5 cache_task_1
0x10022F2E 5 cache_upvism_1
0x10022F3E 5 cache_upvism_2
0x10022A53 5 cache_upvism_3
0x10024121 5 update_30h_1
0x10024130 5 update_30h_2
0x10024173 5 update_30h_3
0x100241FA 5 update_30h_4
0x10024254 5 update_30h_5
0x10024276 5 update_30h_6
0x10023D8D 5 cache_init_4
0x10023DA5 5 cache_init_5
0x10024420 5 cache_upd_6
0x1002444A 5 cache_upd_7
0x10023DD4 5 cache_init_C4_1
0x10024201 5 cache_upd_C4_2
0x10024260 5 cache_upd_C4_3
0x1002229E 5 const_960_1
0x100224E1 5 const_960_2
0x1002223F 5 cache_level1_length
0x10024197 5 red_cl1_line_size_minus
0x1002421C 5 cache_size_w_o_last_line_minus
0x100242A6 5 cache_length
0x10023DF0 5 four_lines_length_in_cache
0x10022BC7 5 vis
0x10022BED 5 circle
;test
0x10002D42 5 con_comm
;обработчик
0x10007607 5 calculate_stuff
;смещения
0x10023D57 5 offset_1
0x10024077 5 offset_3
0x100240FE 5 offset_4
0x1002416B 5 offset_5
0x100241F2 5 offset_6
0x10024245 5 offset_7
0x100242F6 5 offset_8
0x10024306 5 offset_9
0x10024323 5 offset_10
0x100243BD 5 offset_11
0x100243CB 5 offset_12
0x100243E0 5 offset_13
0x100243FE 5 offset_14
0x10022A76 5 offset_15

Всеми правками патчить надо? В итоге станет возможным применение команды "r__detail_radius"?

Изменено пользователем Earth2Space
Ссылка на комментарий

А можно подробнее узнать о правках? Например об этих

0x10221D75 12 ; блокирование кривого движкового переключения гранат

Если в игре было больше двух видов гранат, то переключение между ними происходило абы как. Так вот его тут совсем выключили. Для переключения следует писать свою скриптовую обвязку (либо обратно включить движковую).

Изменено пользователем Shadows
  • Нравится 1
Ссылка на комментарий

power-cat

Если надо могу попробовать помочь пропатчить, скинь свою дллку и строки из корректион лист, что именно нужно(только ЧН).

Изменено пользователем Kontro-zzz
Ссылка на комментарий

Earth2Space,

это относится только к ручным или к подствольным тоже?

Только к ручным. Подствольные - это технически патроны в пачках по одной штуке.

 

Плагины Total Commander для работы с игровыми архивами:

Архиваторный плагин (для работы с одиночным архивом): link1 link2

Системный плагин (для распаковки установленной игры): link1 link2

 

Ссылка на комментарий

Установил. Всё норм но загружаю сейф и ловлю 0023:076C80ED xrGame.dll, CxImage::`copy constructor closure'() вроде бы ругается на картинку. Помогите!

OEbjLrX.gif

Ссылка на комментарий

 

 

Сборка с саншафтами использовала одну из промежуточных ревизий проекта.
Можно где-нибудь найти эту ревизию?

Или как, например, 60ой ревизией пропатчить рендер на включение пыли в саншафтах (а так же на мягкие партиклы и воду, но не критично).

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

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