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

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

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

Bak, да, большое спасибо, так работает.

Собрал все в один пост, вдруг кому пригодится.

uiinventorywnd2.cpp :
bool CUIInventoryWnd::OnItemSelected(CUICellItem* itm)
{
SetCurrentItem (itm);
CGameObject* GO = (CGameObject*)itm->m_pData;
Actor()->callback(GameObject::eItemClicked)(GO->lua_game_object() );
return false;
}

в game_object_space.h в список добавил:

eItemClicked,

в script_game_object_script.cpp:

value("on_item_clicked", int(GameObject::eItemClicked) )

bind_stalker.script:

 

actor_binder:net_destroy()

self.object:set_callback(callback.on_item_clicked, nil)

actor_binder:reinit()

self.object:set_callback(callback.on_item_clicked, self.on_item_clicked, self)

Ну и сама функция:

 

function actor_binder:on_item_clicked(obj)
news_manager.send_tip(db.actor, "Мы кликнули на предмет:")
end 

  • Полезно 4
Ссылка на комментарий

Подскажите, в какой теме находится SVN_portable v230 от Макрона ? Когда вставляю в ЧН версии 1.5.10 собранный xrGame.dll, то игра ругается с вылетом, мол это неправильный файл .. 

DDR

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

@Anders_Basymowski, в этой. Или X-Ray extensions portable r232

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

@Maxmanishe, это можно и скриптом реализовать, ну можно ещё колбек сделать на активацию аномалии(в ХЕ есть колбек на хит аномалией), скрипт смотрит что попало в аномалию и в зависимости от разных факторов спавнит или не спавнит артефакт. В коде вроде нечего конкретного нет. Ещё можно сделать на разрыв тел спавн артов, опять же колбек, т.к. условия для образования арта могут быть разные, в движок не хорошо это железно зашивать.

...в конце концов, важен лишь, машинный код.

СТАЛКЕР только для ПК!

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

@Kondr48, это не клик по итему, а выделение итема, сигнал Selected. а не Clicked, предмет можно выделить и без щелчка мышью и коллбек все равно отработает.

  • Полезно 1
Ссылка на комментарий

Ребят, а есть где-нибудь туториал для практически новичков как редактировать исходники движка X-Ray 1.6? 

Я имею ввиду, где взять,  в чём редактировать (Visual Studio?), какие дополнительно манипуляции делать (дополнительные библиотеки?) вплоть до стадии компиляции. Просто из знаний по C++ у меня минимум, вроде лабораторных на 1-2 курсе, а так можно было бы и знания подтянуть, и нужное дело для мода сделать

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

У меня знания C++ нулевые, даже не на уровне лабораторных. Изучал тутор (с репо) и msdn, уровень прграммирования не от знания конкретного языка зависит, а от общего понимания принципов. Здесь я имею ввиду обычное редактирование на уровне внесения чего-то нового в уже существующее, а не переписывание, например, архитектуры или какого-то иного глубинного кода, где без ясного понимания добиться чего-то вменяемого гораздо труднее (если вообще возможно).

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

 Здесь я имею ввиду обычное редактирование на уровне внесения чего-то нового в уже существующее

Да мне не это сложно, потихоньку можно разобраться, я именно про подготовительную часть - как добавить пути, что скачать дополнительно и пр. Вроде нашёл, попробую https://yadi.sk/d/9VZFHAHrhvrCg

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

 

 

Я имею ввиду, где взять, в чём редактировать (Visual Studio?), какие дополнительно манипуляции делать (дополнительные библиотеки?) вплоть до стадии компиляции

Практически всё библиотечнохедерное барахло есть в SDK (НЕ X-Ray SDK), кроме DX SDK. Если надо - могу подкинуть либы и хедеры от DX SDK June 2010 и DX SDK March 2009. Сборка... делай сравнение стока с OpenXRay или с репо от @Tron, если надо собрать на VS2012-VS2013

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

Уважаемые, помогите разобраться...
ТЧ 1.0007 + НС геймдата + debug конфигурация.

[LUA] SCRIPT RUNTIME ERROR
[LUA] 0 : [C] [C](-1) : 
[LUA] 1 : [C ] add_precondition
[LUA] 2 : [Lua] ...es\stalker_soch\gamedata\scripts\xr_motivator.script(574) : addCommonPrecondition
[LUA] 3 : [Lua] ...games\stalker_soch\gamedata\scripts\xrs_armor.script(2448) : add_to_binder
[LUA] 4 : [Lua] ...\games\stalker_soch\gamedata\scripts\xr_logic.script(544) : assign_storage_and_bind
[LUA] 5 : [Lua] ...games\stalker_soch\gamedata\scripts\xrs_armor.script(2461) : set_scheme
[LUA] 6 : [Lua] d:\games\stalker_soch\gamedata\scripts\xrs_ai.script(56) : enable_schemes
[LUA] 7 : [Lua] ...\games\stalker_soch\gamedata\scripts\xr_logic.script(360) : enable_generic_schemes
[LUA] 8 : [Lua] ...\games\stalker_soch\gamedata\scripts\xr_logic.script(224) : configure_schemes
[LUA] 9 : [Lua] ...\games\stalker_soch\gamedata\scripts\xr_gulag.script(867) : setup_logic
[LUA] 10 : [Lua] ...\games\stalker_soch\gamedata\scripts\xr_gulag.script(384) : object_setup_online
[LUA] 11 : [Lua] ...\games\stalker_soch\gamedata\scripts\xr_gulag.script(1212) : setup_gulag_and_logic_on_spawn
[LUA] 12 : [Lua] ...es\stalker_soch\gamedata\scripts\xr_motivator.script(134) : 
[LUA] s:\xr_3da\xrgame\condition_state_inline.h(44) : "(I == m_conditions.end()) || ((*I).condition() != condition.condition())

 

 

Насколько я понял - в xr_motivator.addCommonPrecondition пытаются добавить евалуатор с condition , id которого уже было добавлено в список conditions ранее. По логике скрипта - эти эвалуаторы должны перекрывать существующие в этом списке, но в коде ни о каком перекрытии (переназначении) речь не идет. Я вообще такого функционала (замещение/перекрытие condition) не нашел в коде... Конечно, можно собрать с undef XRAY_EXCEPTIONS и undef DEBUG - ошибка пропадет, но список conditions будет расти постоянно. 
Насколько критично наличие дублей в этом списке и на каком принципе вообще работают эти conditions?
Спасибо за любую информацию!

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

Уважаемые знающие, кто сталкивался с тем что движок не может высчитать для какого-либо рестриктора его границы?

space_restriction_abstract_inline.h

CSpaceRestrictionAbstract::border () m_border.empty()==true

Это ошибки в all.spawn (неправильно выставлены координаты, например, или тип рестриктора) или на локации (LevelEditor-ом как то криво поставили рестриктор)? И может ли быть ситуация, когда у ретриктора действительно может не быть бордера?

Благодарю за информацию.

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

 

 

И может ли быть ситуация, когда у рестриктора действительно может не быть бордера?

В СДК ставим на локации спавн-объект "спэйс-рестриктор", но забываем назначить ему шейп... Или в all.spawn'е, когда через uACDC его ковыряем.

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

Уважаемые,_установил модификацию "Под прикрытием смерти : Клондайк 2.0 Reborn",_мод использует свой правленый xrgame.dll,_в котором не учтена возможность смены угла обзора,_по умолчанию стоит значение "55"-"_руки под подбородком",_вопрос в следующем,_какой скрипт использовать для правки данного файла,_либо какие варианты есть для того чтобы сделать "fov" под себя._Платформа Зов Припяти 1.6.0.2.

 

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

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

814c6be3d974t.jpg

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

В СДК ставим на локации спавн-объект "спэйс-рестриктор", но забываем назначить ему шейп... Или в all.spawn'е, когда через uACDC его ковыряем.

в том то и дело  - объект в распакованном аллспавне имеет секцию shape... :( т.е. вроде как придраться не к чему.

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

Кое-что еще осталось от ассемблерных правок для оригинального ЧН 1.5.10.
Правки вобщем-то мелочные, но выложу их здесь.
 

1) Правка xrEngine_color_text_cons.exe немного изменяет цвет шрифта в консоли игры.


*****************************************************************************************************
2) Правка xrEngine_vis_dist_max_2_5.exe расширяет пределы регулирования параметров макс.значения с 1.500 до 2.500 :

Дальность видимости
rs_vis_distance (1. ) --- float value in range [0.400,2.500]

Яркость
rs_c_brightness (1. ) --- float value in range [0.500,2.500]

Контрастность
rs_c_contrast (1. ) --- float value in range [0.500,2.500]

Гамма
rs_c_gamma (1. ) --- float value in range [0.500,2.500]

*****************************************************************************************************
3) xrEngine_demo_record_m_color.exe - изменяет цвет шрифта и добавляет полупрозрачность в меню демо_рекорда.
*****************************************************************************************************
4) xrEngine_particles_time_06_2.ехе - увилчивает задержку (раза в х2) партиклов дождя, при ударе об поверхность.
Правка сама по себе бесполезная, и вредная по производительности, возможно пригодится разве что для каких-нибудь настроек дождя.

 

PS

Патчится файл xrEngine.exe, предполагаю должно сработать для  DVD, noDVD и GOG версиях.


Скачать: http://rusfolder.com/44990867

 

  • Нравится 1
Ссылка на комментарий

Подскажите пожалуйста от куда ноги растут у класса C_NIVA.? Я весь движок перерыл, но там не нашел, даже зацепки. Странно, что этого класса даже нет в скриптах оригинального ЗП, а класс как бы присутствует и функционирует частично, без добавления в класс-регистратор.

andreyholkin.gif

rod_cccp.gif

 

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

 

 

Подскажите пожалуйста от куда ноги растут у класса C_NIVA.?

Регистрация классов находится в class_registrator.script. Если в ЗП ее нет, значит надо делать по аналогии с ТЧ, если этот класс там был.

  • Согласен 1
  • Не согласен 1
Ссылка на комментарий

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

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

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

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

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

Войти

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

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

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

AMK-Team.ru

×
×
  • Создать...