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

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

@Real Wolf, эта консольная команда делает ровно тоже самое, что и функция level.set_weather. Тогда непонятен смысл исходного вопроса. Зачем блокировать эту команду?

 

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

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

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

 

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

@Malandrinus,

Я методом исключения определил, что это консольная команда не работает из-за той правки. Проверялось на чистой игре. Поэтому и спросил, так как этой командой пользуюсь в моде.

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

Вообще-то работает. Вот выполняю консольную команду, погода меняется. Не сразу, но это так и должно быть, поскольку консольная команда соответствует варианту вызова level.set_weather("name", false), т.е. второй аргумент false, что означает постепенную смену.

 

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

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

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

 

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

@Real Wolf, тогда эта команда НЕ работала как надо. Сейчас вспоминаю, что в своё время сам же написал в справочнике:
 

 

void set_weather(string <weather>, boolean <now>) -- устанавливает погоду. Идентификатор погоды
-- должен присутствовать в файле config\weathers\environment.ltx в сеции [weathers] иначе вылет
-- второй параметр отвечает за немедленную смену погоды
-- если true - меняем прямо сейчас
-- если false - то непонятно. У меня также менялось сразу.

 

Видимо сейчас таки заработало =)  Кстати, какой смысл использовать консольную команду, если есть функция?

 

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

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

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

 

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

@Real Wolf,

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

 

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

 

Если переключает плавно, то это походу происходит от начала следующего погодного фрейма текущей погоды до ближайшего фрейма новой погоды. За точность не ручаюсь, но примерно так.

 

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

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

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

 

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

get_target_obj возвращает только физический объект?
Если да, это можно исправить?

Иначе скриптами надо перебирать все объекты в онлайне и высчитывать угол(

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

Функция возвращает то, что сам движок показывает под указателем прицела. Функция на самом деле просто читает уже готовые данные, поэтому повлиять на это невозможно. Движок использует для поиска предмета под курсором функцию рейтрейсинга. Для этой фунции нужен визуал, т.е. набор треугольников, с которыми можно пересечь луч взгляда. У аномалий визуала нет вообще, поэтому с ними не работает в принципе. Большинство ламп на самом деле в большей своей части являются геометрией уровня, а собственно объектом является только колба, да и та скрыта, если лампа выключена.

 

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

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

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

 

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

В файле misc указана новая строка для вылета по модели сталкера, но там не стоит ноль-символ в конец. Так и задумано?

Имеется такой код в xrgame_stubs:

org 1006CA18h - shift ; Врезка 5 байт.
    jmp        CALifeStoryRegistry__add_fix

org 1006CA65h - shift
loc_1006CA65:

И метка в том же файле misc:

CALifeStoryRegistry__add_fix:
    ;PRINT_UINT "Duplicate story id: %d", dword ptr [edi]
    jmp        loc_1006CA65

В итоге вылет с пустым stack_trace.
Однако если сделать так:

org 1006CA18h - shift
    jmp        loc_1006CA65

То игра запускается нормально.
Так почему не работает первый вариант?

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

Тогда в отладчике смотри, если код по-твоему нормальный.



.text:1006CA18                 mov     ecx, ds:?Debug@@3VxrDebug@@A ; xrDebug Debug

Да ты на релок же попал. Вот и не работал первый вариант :)

В отладчике, кстати, тоже полезно глянуть. Попадание на релок очень хорошо заметно.

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

А если я в ЗП играю на DX11, то мне только его рендер патчить надо, остальные 3 можно не трогать?

 

добавление консольных команд

Это каких, например? Просто вроде пропатчилось нормально, а проверить как - не знаю.

P.s. А известно, что изменено в рендере для AtmosFear 3?

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

Решил заюзать правки для ЧН. В принципе вышло, правда вот возникли некоторые вопросы.

 

 

1 - из correction_list удалил

0x10214151 6 ; fdiv [g_fov]
0x102AF54D 8 ; divss xmm0, [g_fov]
0x102C3068 8 ; divss xmm0, [g_fov]

так как приводят к вылету с такими строками

0023:03A94151 xrGame.dll, CDialogHolder::shedule_Scale()
0023:03D8DD98 xrGame.dll, CDialogHolder::`vftable'()
0023:03A58D50 xrGame.dll, CDialogHolder::shedule_Scale()

Собственно вот этот g_fov что такое и за что отвечает? Чет не похоже это на fov который увеличивает поле зрения в прямом назначении.

2 - неужели максимум артефактов для пояса это всего навсего 10 штук? :(

Я так понял править их количество надо через xrgame_stubs. В итоге любое число которое больше 10 (делал 20, 50 и 100) заканчиваются вылетом при одевании одежки где слотов больше 10.

0023:03FBF5CF xrGame.dll, CDialogHolder::CleanInternals()

3 - в correction_list указано убирание постоянного включения видимости миникарты в CUIMainIngameWnd::Draw, CUIZoneMap::Init, CUIActorMenu::SetMenuMode и CUIActorMenu::InitInventoryMode. Правда как оно висит так и весит. Или я чет не понял, метод какой-то добавляется чтобы через скрипт его убрать?

4 - для рендеров ЧН есть только правки по дальности отрисовки травы и плотности, а фикс движения солнца и различные расширения консольных команд отсутствуют? Как-то не густо, учитывая что уже есть тот фикс движения солнца (точнее чтобы солнце ходило юзая позицию из конфига, помом еще давно делал вроде как Kolgomor) и есть dll-ки с некоторыми расширениями команд (типа r1\r2_tf_mipbias и другими делал dark_stalker чтоль, r__geometry_lod от Shadows). Почему бы их не внести в проект?

 

 

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

 

 


А если я в ЗП играю на DX11, то мне только его рендер патчить надо

Разумеется.

 

 

 


Это каких, например?

r__detail_radius. Если есть и регулируется - все нормально.

 

 


А известно, что изменено в рендере для AtmosFear 3?

Правильный ход солнца - это точно. Вроде больше ничего, но могу быть неправ.

 

 

 


Почему бы их не внести в проект?

Да там вагон нудной работы. Можно заметить хотя бы по разности во времени запила проектов для ТЧ и ЗП. Тем более, что на ЧН особо запроса нет. Но постараюсь в ближайший месяц что-нибудь запилить. 

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

Как эта нет запроса? Это уже какой-то "расизм" в отношении ЧН. :) В том же ЗП уже запиленна тень от травы. Кстати если можно задам еще пару вопросов.

1 - планируется ли тень от ГГ для r2\r3\r4 ТЧ, ЧН, ЗП?

2 - норм тень от травы для ЧН\ЗП?

3 - вернуть шкалы шума, видимости (освещенности) ГГ, положения ГГ, инфа о названии аммуниции (оружия) на худ для ЧН и отчасти для ЗП?

Блудмарок я так понимаю ждать для ЧН\ЗП не стоит.

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

 

 


1 - планируется ли тень от ГГ для r2\r3\r4 ТЧ, ЧН, ЗП?

Нет. Она и для ТЧ недоработана. Вот как будет нормальное решение для ТЧ, тогда и подумаем.

 

 

 


2 - норм тень от травы для ЧН\ЗП?

Метод из ТЧ в ЧН/ЗП дает уродскую тень. В проекте для ЗП оно есть, можешь сам убедиться. Я так думаю, надо ждать исходников или приставать к тем, у кого они есть.

 

 

 


Блудмарок я так понимаю ждать для ЧН\ЗП не стоит.

Там код сильно изменен, подход аля ТЧ уже не работает.

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

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

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

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

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

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

Войти

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

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

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