Это популярное сообщение. Malandrinus 615 Опубликовано 22 Ноября 2010 Это популярное сообщение. Поделиться Опубликовано 22 Ноября 2010 (изменено) Проект X-Ray extensions Представляет собой набор добавлений, расширяющих возможности движка для скриптёров, а также, в ряде случаев, меняющих поведение игры. Изменения реализованы в виде бинарных патчей библиотек и исполняемых файлов. Адрес проекта на Google CodeДокументация одним файлом в chm формате (зеркало) по состоянию на 15 августа 2013 г. (собрана, отформатирована и скомпилирована @Kontro-zzz).Версии игры, поддерживаемые на данный момент:ТЧ (патч 1.0006): xrGame.dll, XR_3DA.exe, xrRender_R1/2ЧН (патч 10): xrGame.dll, xrRender_R1/2/3ЗП (патч 1.6.02): xrGame.dll, xrRender_R1/2/3/4 svn хранилище не содержит оригинальных файлов игры. Не забывайте делать резервные копии перед заменой файлов игры! Ссылка на адрес нового репозитария: https://github.com/KD87/xray-extensions Изменено 23 Июня 2016 пользователем Malandrinus 12 12 1 8 Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Malandrinus 615 Опубликовано 30 Июня 2013 Автор Поделиться Опубликовано 30 Июня 2013 @Real Wolf, эта консольная команда делает ровно тоже самое, что и функция level.set_weather. Тогда непонятен смысл исходного вопроса. Зачем блокировать эту команду? Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Real Wolf 34 Опубликовано 30 Июня 2013 Поделиться Опубликовано 30 Июня 2013 @Malandrinus, Я методом исключения определил, что это консольная команда не работает из-за той правки. Проверялось на чистой игре. Поэтому и спросил, так как этой командой пользуюсь в моде. Ссылка на комментарий
Malandrinus 615 Опубликовано 30 Июня 2013 Автор Поделиться Опубликовано 30 Июня 2013 Вообще-то работает. Вот выполняю консольную команду, погода меняется. Не сразу, но это так и должно быть, поскольку консольная команда соответствует варианту вызова level.set_weather("name", false), т.е. второй аргумент false, что означает постепенную смену. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Real Wolf 34 Опубликовано 30 Июня 2013 Поделиться Опубликовано 30 Июня 2013 @Malandrinus,Странно, у меня всегда меняла сразу. Ссылка на комментарий
Malandrinus 615 Опубликовано 30 Июня 2013 Автор Поделиться Опубликовано 30 Июня 2013 @Real Wolf, тогда эта команда НЕ работала как надо. Сейчас вспоминаю, что в своё время сам же написал в справочнике: void set_weather(string <weather>, boolean <now>) -- устанавливает погоду. Идентификатор погоды-- должен присутствовать в файле config\weathers\environment.ltx в сеции [weathers] иначе вылет-- второй параметр отвечает за немедленную смену погоды-- если true - меняем прямо сейчас-- если false - то непонятно. У меня также менялось сразу. Видимо сейчас таки заработало =) Кстати, какой смысл использовать консольную команду, если есть функция? Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Real Wolf 34 Опубликовано 1 Июля 2013 Поделиться Опубликовано 1 Июля 2013 @Malandrinus,Сразу в игре использую иногда. А функцией надо save\load делать. Удобство.А у тебя она меняется в течение какого времени? Ссылка на комментарий
Malandrinus 615 Опубликовано 1 Июля 2013 Автор Поделиться Опубликовано 1 Июля 2013 @Real Wolf, для выполнения произвольного кода в игре я предпочитаю использовать скриптовый тестовый полигон. Надо только переключиться из игры в текстовый редактор, но это не намного хуже, чем открыть консоль. Я проверил на чистой сборке. Да, без движковых изменений команда переключает сразу. Но это как раз и неправильно, что я выше объяснял. Если переключает плавно, то это походу происходит от начала следующего погодного фрейма текущей погоды до ближайшего фрейма новой погоды. За точность не ручаюсь, но примерно так. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Real Wolf 34 Опубликовано 3 Июля 2013 Поделиться Опубликовано 3 Июля 2013 (изменено) get_target_obj возвращает только физический объект?Если да, это можно исправить?Иначе скриптами надо перебирать все объекты в онлайне и высчитывать угол( Изменено 3 Июля 2013 пользователем Real Wolf Ссылка на комментарий
SkyLoader 53 Опубликовано 3 Июля 2013 Поделиться Опубликовано 3 Июля 2013 (изменено) get_target_obj возвращает только физический объект? Любой гейм-обжект Изменено 3 Июля 2013 пользователем SkyLoader Ссылка на комментарий
Real Wolf 34 Опубликовано 4 Июля 2013 Поделиться Опубликовано 4 Июля 2013 @SkyLoader, Аномалии, лампы он не возвращает. Ссылка на комментарий
Malandrinus 615 Опубликовано 4 Июля 2013 Автор Поделиться Опубликовано 4 Июля 2013 Функция возвращает то, что сам движок показывает под указателем прицела. Функция на самом деле просто читает уже готовые данные, поэтому повлиять на это невозможно. Движок использует для поиска предмета под курсором функцию рейтрейсинга. Для этой фунции нужен визуал, т.е. набор треугольников, с которыми можно пересечь луч взгляда. У аномалий визуала нет вообще, поэтому с ними не работает в принципе. Большинство ламп на самом деле в большей своей части являются геометрией уровня, а собственно объектом является только колба, да и та скрыта, если лампа выключена. Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Real Wolf 34 Опубликовано 4 Июля 2013 Поделиться Опубликовано 4 Июля 2013 (изменено) В файле 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 То игра запускается нормально.Так почему не работает первый вариант? Изменено 4 Июля 2013 пользователем Real Wolf Ссылка на комментарий
KD87 718 Опубликовано 4 Июля 2013 Поделиться Опубликовано 4 Июля 2013 Так почему не работает первый вариант? Дак посмотри асмовый выхлоп. Ссылка на комментарий
Real Wolf 34 Опубликовано 4 Июля 2013 Поделиться Опубликовано 4 Июля 2013 (изменено) @KD87,В Иде после компиляции всё так, как и задумывалось Изменено 4 Июля 2013 пользователем Real Wolf Ссылка на комментарий
KD87 718 Опубликовано 4 Июля 2013 Поделиться Опубликовано 4 Июля 2013 (изменено) Тогда в отладчике смотри, если код по-твоему нормальный. .text:1006CA18 mov ecx, ds:?Debug@@3VxrDebug@@A ; xrDebug Debug Да ты на релок же попал. Вот и не работал первый вариант В отладчике, кстати, тоже полезно глянуть. Попадание на релок очень хорошо заметно. Изменено 4 Июля 2013 пользователем KD87 Ссылка на комментарий
Earth2Space 305 Опубликовано 12 Июля 2013 Поделиться Опубликовано 12 Июля 2013 А если я в ЗП играю на DX11, то мне только его рендер патчить надо, остальные 3 можно не трогать? добавление консольных команд Это каких, например? Просто вроде пропатчилось нормально, а проверить как - не знаю. P.s. А известно, что изменено в рендере для AtmosFear 3? Ссылка на комментарий
Akcok 164 Опубликовано 13 Июля 2013 Поделиться Опубликовано 13 Июля 2013 (изменено) Решил заюзать правки для ЧН. В принципе вышло, правда вот возникли некоторые вопросы. 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). Почему бы их не внести в проект? Изменено 13 Июля 2013 пользователем power-cat Ссылка на комментарий
KD87 718 Опубликовано 14 Июля 2013 Поделиться Опубликовано 14 Июля 2013 А если я в ЗП играю на DX11, то мне только его рендер патчить надо Разумеется. Это каких, например? r__detail_radius. Если есть и регулируется - все нормально. А известно, что изменено в рендере для AtmosFear 3? Правильный ход солнца - это точно. Вроде больше ничего, но могу быть неправ. Почему бы их не внести в проект? Да там вагон нудной работы. Можно заметить хотя бы по разности во времени запила проектов для ТЧ и ЗП. Тем более, что на ЧН особо запроса нет. Но постараюсь в ближайший месяц что-нибудь запилить. Ссылка на комментарий
Akcok 164 Опубликовано 14 Июля 2013 Поделиться Опубликовано 14 Июля 2013 (изменено) Как эта нет запроса? Это уже какой-то "расизм" в отношении ЧН. В том же ЗП уже запиленна тень от травы. Кстати если можно задам еще пару вопросов. 1 - планируется ли тень от ГГ для r2\r3\r4 ТЧ, ЧН, ЗП? 2 - норм тень от травы для ЧН\ЗП? 3 - вернуть шкалы шума, видимости (освещенности) ГГ, положения ГГ, инфа о названии аммуниции (оружия) на худ для ЧН и отчасти для ЗП? Блудмарок я так понимаю ждать для ЧН\ЗП не стоит. Изменено 14 Июля 2013 пользователем power-cat Ссылка на комментарий
KD87 718 Опубликовано 14 Июля 2013 Поделиться Опубликовано 14 Июля 2013 1 - планируется ли тень от ГГ для r2\r3\r4 ТЧ, ЧН, ЗП? Нет. Она и для ТЧ недоработана. Вот как будет нормальное решение для ТЧ, тогда и подумаем. 2 - норм тень от травы для ЧН\ЗП? Метод из ТЧ в ЧН/ЗП дает уродскую тень. В проекте для ЗП оно есть, можешь сам убедиться. Я так думаю, надо ждать исходников или приставать к тем, у кого они есть. Блудмарок я так понимаю ждать для ЧН\ЗП не стоит. Там код сильно изменен, подход аля ТЧ уже не работает. Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти