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

Внимание. На форуме проводятся технические работы с боковым меню.

_Val_ _Val_

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

Akella-96,

будь лаской, не сочти за труд прочесть десяток предыдущих сообщений.

  • Нравится 1
 

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

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

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

 

Всем доброго времени суток. Все сделал по инструкции:

скачал X-Ray extensions

xrGame.dll переименовал в xrGame_orig.dll и забросил в папку 3795_cs_10010(не знаю, почему она называется не 1510)

скачал masm32 10 версии

ml.exe перебросил в папку tools

xrGame.dll собралась. Запускаю игру и вылезает ошибка:

 

"xrGame.dll не является образом программы для windows NT. Проверьте назначение установочного диска."

 

Loading DLL: xrGame.dll

 

FATAL ERROR

 

[error]Expression : hGame

[error]Function : CEngineAPI::Initialize

[error]File : E:\priquel\sources\engine\xrEngine\EngineAPI.cpp

[error]Line : 101

[error]Description : Game DLL raised exception during loading or there is no game DLL at all

 

 

stack trace:

 

 

sealis,

10 в данном случае - это номер версии сборки masm32 (последняя кажется 11). При этом сам ассемблер ml.exe в этих сборках имеет версию 6 с чем-то, т.е. не годится. Нужен ml.exe от Visual Studio не меньше 10-й.

 

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

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

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

 

В сотрудничестве с Shadows добавил макрос для регистрации консольной команды для чтения/записи логических значений. Использовать также, как и прочие в файле console_commands_reg_fix.asm

REGISTER_CC_FLAG g_test_flags, 20h, "test_flag_6"

g_test_flags - переменная с флажками 32 бита

20h - значение маски, которая задаёт конкретный бит (в данном случае шестой по счёту, начиная счёт с единицы)

"test_flag_6" - имя консольной команды

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

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

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

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

 

Патчинг xrGame текущей ревизией невозможен из-за нескольких ошибок.

 

Поддерживаю. Та же проблема.

ColR_iT

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

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

UPD:кажись нарыл там, но хз то это или не то, и еще, можно узнать номер и дату последней ревизии на ЗП и изменения плз

UPD2: смотрю развитие проекта идет в основном на ТЧ, а что с ЗП?

Изменено пользователем Viнt@rь

Viнt@rь, последние изменения можешь увидеть здесь: >>Click Me<<.

Скачивать, а точнее обновлять ревизию нужно с помощью программы TortoiseSVN.

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

ColR_iT

вот же понаделали прог... зачем?

:) на каждый проект разная, дропбокс и тп, выходит что, ради того что бы скачать файл нужно устанавливать прогу ппц

 

 

и это для ЗП тоже?

 

Вообще для проекта. :)

ColR_iT

 

UPD: я имел ввиду список изменений/нововведений, да и вообще, те ревизии, что там написаны: 34 и тп это и в ЗП добавляется тот функционал? или нет? :)

Изменено пользователем Viнt@rь

В 33 ревизии не хватает довольно большого количества функций, при сборке жалуется на это. Можно конечно лишнее отрубить, но хотелось бы полный комплект :)

 

 

UPD2: смотрю развитие проекта идет в основном на ТЧ, а что с ЗП?

Ну там же по коду можно посмотреть, какие изменения вносились в ту или иную версию. Но в основном да - проект для ТЧ.

Telegram-канал RayTwitty Space

Залил недостающие файлы.

 

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

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

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

 

Заметил небольшую опечатку: в 35 ревизии в папке render/3967_cop_1602/R4 в файле patch_diff.cmd

вместо xrRender_R4 везде xrRender_R3

мелочь, но...

Хотел задать два вопроса:

1) В каком .asm файле из проекта под ТЧ находится код, который отвечает за скрытие произвольной кости на оружии (weapon_fix.asm?)

2) Каким образом скрытие реализовано в движке. Оружию просто присваивается определённый флаг скрыть ту или иную кость, или есть какая то функция, которой передаётся, например, индекс кости? И если второе, то её ведь можно вызвать зная адрес в памяти?

  • Нравится 1

Можно просто Shoker, форум АМК съел моё старое имя и не хочет отдавать о_О

Мастер аномалий на свою заднюю точку.

*Shoker*,

1) Нету такой функции. И вообще, вопрос не корректен. Кость на оружии для мировой модели или для худа? Есть функция для управления видимостью костей, но именно определенных. Само управление видимостью костей в game_object_fix.asm, а в weapon_fix.asm врезка, как видно в функции апдейта видимости аддонов.

 

2)Не оружию, а кости присваивается флаг видимость/невидимость. А кость получается из получения названия кости (один из аргументов) в set_wpn_bone_visible(...). Насчет второго - нет, нельзя.

  • Нравится 1

malandrinus, попробовал добавить отсутствующий метод определения объекта как вертолет (obj:is_helicopter()):

xrgame_stubs

org 105558A0h - shift
off_105558A0 dd ?

В движке:

.data:105558A0 off_105558A0	dd offset off_10459240 ; DATA XREF: 00000000101DFD4Eo
.data:105558A0										; 000000001027B0BEo ...
.data:105558A4				 align 8
.data:105558A8 a_?avcse_alifeh db '.?AVCSE_ALifeHelicopter@@',0
.data:105558C2				 align 4
.data:105558C4 off_105558C4	dd offset off_10459240 ; DATA XREF: .rdata:104F3534o
.data:105558C4										; .rdata:off_104F3554o

 

game_object_castings

MAKE_CASTING2 CScriptGameObject__CHelicopter, off_105558A0

и

MAKE_CHECK_FUN CScriptGameObject__IsHelicopter		 , CScriptGameObject__CHelicopter

 

game_object_fix

PERFORM_EXPORT_BOOL__VOID CScriptGameObject__IsHelicopter,		 "is_helicopter"

В игре метод появился, но работать не хочет.

Может место врезки не то выбрал?

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

Telegram-канал RayTwitty Space

Извиняюсь за жуткую настойчивость(в прошлый раз пост удалили),но всё таки есть люди которые смогли бы сделать поднимающиеся болты для ЗП и ЧН?

Изменено пользователем Артём Карпенко

Shadows,

здесь ты не место врезки выбираешь, а вид макроса и значение его аргумента. На основании чего они были выбраны?

 

Артём Карпенко,

я бы попробовал частично сделать это скриптами.

1. Делаешь специальную гранату с беззвучным и невидимым взрывом с визуалом и иконкой болта.

2. Следишь за её фейковой частью и при её пропадании (взрыве), спавнишь на уровне новый болт, который уже можно будет подобрать.

 

Задачи, которые останется решить:

1. сделать так, чтобы неписи этого болта не шугались

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

 

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

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

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

 

Простите, если не в ту тему отписываю, просто есть надобность использовать методы данного набора(ЗП)

Возможно ли при получении окна(ПДА) методом

...

oPda = CUIListBox():GetMainInputReceiver()

...

Получить обьект (окна ПДА) класса CUITabControl(InitTab) и вручную задать ему активную кнопку

...

oPda.oTab:SetActiveTab("button_id")

...

(проверить самому пока что нет возможности)

Изменено пользователем Viнt@rь

Мне как то не по душе этот метод,раздражает подскакивающий болт...

Изменено пользователем Артём Карпенко

Что за подскакивание?

 

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

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

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

 

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

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

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

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

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

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

Войти

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

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

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