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

[SoC] Ковыряемся в файлах


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

Вот новая логика, тоже не работает...

 

Тебе @Карлан совершенно верно сказал, ты пытаешься приделать к двери схему кнопки, которая разумеется никаких анимаций открывания/закрывания делать не умеет. Схема определяется по началу названия секции логики. Для двери это будет соответственно ph_door. Возьми готовый пример для двери Сидора, это файл config\scripts\esc_trader_door.ltx. Изучи его внимательно, там в общем-то типовая дверь. В той же папке ещё много схем с дверями.

Добавлено  HellRatz,

Перенесено.

 

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

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

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

 

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

Но почему она работает на вентиле, на затоне ? И у мена же дверь анимационная и простой ph_door сюда не подходит..
А дверь что у сидора, она другая, без в анимаций.. Там 2 кости стоит и в настройках в СДК ставишь на скок градусов поварачивать ту или иную кость, сюда ph_door подойдёт, а у меня гермазатвор, как в путепроводе Припять 1 и нужно как-то активировать анимацию без панельки..
 

Изменено пользователем BFG
Добавлено  HellRatz,

Перенесено.

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

@Tayler, да, был неправ. Тогда действительно схема ph_door не подходит.

 

В случаях таких непоняток, но при наличии рабочего примера я обычно беру и сравниваю свой объект с тем, который работает. Как настроены кости рабочего объекта и твоего в акторедиторе. Нет ли там случаем каких-то конфигов в модели. Как он добавлен в спавне. Нет ли там чего дополнительного в кастомдате. Здесь можно попытаться распаковать спавн в текстовый вид и сравнить буквально построчно.

 

Вообще анимированные двери - редкая птица. По-моему даже разрабы предпочитали использовать двери на физике. А кстати, что мешает эту дверь тоже сделать на физике?

 

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

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

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

 

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

На физике двери, ну. Просто двери.. А я хочу гермодверь.. С деталями и т.п

С красивой анимацией...

Добавлено  HellRatz,

Перенесено.

Добавлено  HellRatz,

Попробуй ph_gate схему.

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

@Карлан, не, не в файл логики, а в кастом дату записать так:

custom_data = <<END
[dont_spawn_character_supplies]
[dont_spawn_loot]
[logic]
cfg = scripts\mod_logic\esc_bandit_camp.ltx
END

В оригинале так используется.

*************************************************************************

Есть 2 схемы поведения, во время первой отыгрывается анимация, как переключиться на вторую, когда анимация закончится?

 

--первая схема
[walker@esc_bandit_camp_lc]
path_walk = esc_bandit_camp_lc_walk
path_look = esc_bandit_camp_lc_look
combat_ignore_cond = {=check_fighting(5485)}, {-esc_bandit_hit =fighting_actor}

А вот пути первой схемы, там в течении t секунд отыгрывается анимация "caution" и вот после неё нужно переключиться на следующую схему [walker]. Как это сделать, мб как-то поршень выдать после времени t?

[esc_bandit_camp_lc_walk]
points = p0
p0:name = wp01
p0:flags = 0x2
p0:position = 363.015, 14.950, -36.735
p0:game_vertex_id = 0
p0:level_vertex_id = 593264

[esc_bandit_camp_lc_look]
points = p0
p0:name = lp01|a=caution|t=10000
p0:flags = 0x2
p0:position = 371.119, 15.015, -40.652
p0:game_vertex_id = 0
p0:level_vertex_id = 594454

 

 

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

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

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

@Vitalik Izotophttp://www.amk-team.ru/forum/topic/6458-uroki-po-modostroeniiu/?p=377332

Посмотри, по моему для тч.

Я правда ни тэстил.

Изменено пользователем UriZzz
  • Нравится 1

 Моя нычкаНычка в арендованном у Опричника холодильнике  

Мы хорошие ребята, жаль патронов маловато:):ukostra:

UriZzz.gif

Ссылка на комментарий
p0:name = lp01|a=caution|t=10000

Я бы сделал так: по прибытии в точку walk взвести сигнал.

Например:

[esc_bandit_camp_lc_walk]
points = p0
p0:name = wp01|sig=mesto
p0:flags = 0x2
p0:position = 363.015, 14.950, -36.735
p0:game_vertex_id = 0
p0:level_vertex_id = 593264

Далее, в схему логики:

...
on_signal = mesto | remark

[remark]
anim = caution
on_timer = 10000 | новая_схема

Непись, по прибытию в точку, переключится на remark и будет играть анимацию caution, ну а после 10 сек. реального времени переключится на другую схему.

-------------------------------------------------

Хотя стоп. Ты хочешь после анимации переключиться... Тогда используй сигнал anim_end. Но учти, это работает только для remark'a. Таймер, выходит, можешь убрать.

on_signal = anim_end | твоя_схема
Изменено пользователем BoBaH_671
  • Спасибо 1

Ранее был известен под ником BoBaH_671.

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

@Bak, и так, и этак рассматривал я скрипт... Чего то не нашел: где какие артефакты, к каким аномалиям прописаны...

Или его ещё настраивать надо?

 Моя нычкаНычка в арендованном у Опричника холодильнике  

Мы хорошие ребята, жаль патронов маловато:):ukostra:

UriZzz.gif

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

Как присвоить диалог к определенному НПС? и вот фрагмент диалога и кости: Правильно-ли составлен диалог, игра его видит но не даёт волку?

 

<game_dialogs>
<!--  Диалог с Волком на выдачу оружия  -->
<dialog id="escape_lager_volk_weapon">
<phrase_list>
<phrase id="0">
<text>escape_lager_volk_weapon_0</text>
<next>1</next>
</phrase>
<phrase id="1">
<text>escape_lager_volk_weapon_1</text>
<next>22</next>
<next>21</next>
</phrase>

Вот Сам диалог:

string_table>
<!--  Диалог с Волком на выдачу оружия  -->
<string id="escape_lager_volk_weapon_0">
<text>
Постой, Волк! Ты что меня на бой с бандитами, с пукалкой которая клинит через выстрел, отправить собрался, да?
</text>
</string>
<string id="escape_lager_volk_weapon_1">
<text>
А в чем собственно дело? Ты новичек, я всем новичкам выдаю ПМы, пока Сидорович не отрекомендует надежного бойца. Вот тогда я или Сидорович выдаем ствол, только так.
</text>
</string>
<string id="escape_lager_volk_weapon_21">
<text>Вот, Вот, я сейчас прозрел... что я говно.</text>
</string>
<string id="escape_lager_volk_weapon_31">
<text>
Ну, ну, не стоит так котигорично. А пофиг, Чиши давай!
</text>
</string>
<string id="escape_lager_volk_weapon_22">
<text>
Волк, я что должен тебя умолять? Нет, так не пойдет, давай ствол иначе твои "разведчики" никогда не выбьют бандитов с АТП.

 


Все условности соблюдены в файлы system и localization добавлены имена кости имя диалога

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

Перемещено.

%D0%B8%D0%BE%D1%80%D0%B4%D0%B0%D0%BD%D0% 
Тот, кто думает-думает всегда.
Тот, кто думает, что думает-думает иногда.

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

@Карлан, А можно ли без всяких схем поведения, при получении пси-хита, заставить непися принудительно отыгрывать эту анимацию? И не важно от чего он этот самый хит получил. 

 

Если получен пси-хит(в определённом значении/диапазоне значений)

 

То отыгрываем такую-то анимацию.

 

У человека вон выбросы с RMA стоят, где неписи отыгрывают как раз эту самую аниму. Хотя схема там вообще на другом завязана. Грубо говоря анимка отыгрывается если непись попал в определённую зону в определённое время.

Мы по аномалиям зону разберём!

Сидора повесим, а Бармена убьём!

Ну а вояк мы смоем в унитаз!

Пускай плывет в канализации спецназ!

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

 

function action_wounded:execute()

...

state_mgr.set_state(self.object,wound_manager_state,nil,nil,{look_object = victim},emerg,synsound)

 

function init_wounded( npc, ini, section, st, scheme )

...

st.psy_state = xr_meet.parse_data(npc,utils.cfg_get_string(ini,section,"psy_state",npc,false,"",def.psy_state))

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

Как присвоить диалог к определенному НПС?

Прописываешь в профиль (character_desc_*) диалог в теги actor_dialog, вставляешь туда свой escape_lager_volk_weapon.

игра его видит но не даёт волку?

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

Изменено пользователем HellRatz
Ссылка на комментарий
в файлы system и localization добавлены имена кости имя диалога

 

Под костями ты имеешь ввиду структуру диалога что-ли? Ты точно поставил всё правильно? Попробуй без систем и локализации - засунь свой диалог куда-нибудь в dialogs_escape.xml. Посмотри на структуру, ты скинул незакрытый диалог, в конце должны быть </phrase_list> и </dialog>, а в конце документа, после всех диалогов ещё и </game_dialogs>. Ещё диалог может не появляться, если НПСю задан стартовый диалог и пока его не закончишь, твой не появится - твой диалог должен появиться одновременно с "есть работа", "о чём можешь рассказать" и прочими "до свидания". В диалоге не должно быть никуда ведущих next.

 

УПД.

moderator_global_small.png HellRatz и хорошо, что отрывок, я даже боюсь представить текста диалога дальше. ^_^

Изменено пользователем dPlayer
Добавлено  HellRatz,

Он написал, что это отрывок из диалога. Так что по тегам не понятно. Но если бы был косяк с ними, был бы вылет я полагаю, как обычно.

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

Диалог отображается, только вот другая проблема. Написал скрипт, вставил действие в "скелет", инфопоршни работают. Вот сам скрипт:

 

 

function give_ak(first_speaker, second_speaker)
dialogs.relocate_item_section(second_speaker, "wpn_ak74", "ammo_5.45x39_fmj", "in")
	end
		end
 

 

Вот скелет:

 

 

game_dialogs>
<!--  Диалог с Волком на выдачу оружия  -->
<dialog id="escape_lager_volk_weapon">
<dont_has_info>volk_maybe_give_ak</dont_has_info>
<phrase_list>
<phrase id="0">
<text>escape_lager_volk_weapon_0</text>
<next>1</next>
</phrase>
<phrase id="1">
<text>escape_lager_volk_weapon_1</text>
<next>22</next>
<next>21</next>
</phrase>
<phrase id="22">
<text>escape_lager_volk_weapon_22</text>
<next>32</next>
</phrase>
<phrase id="21">
<text>escape_lager_volk_weapon_21</text>
<next>31</next>
</phrase>
<phrase id="32">
<text>escape_lager_volk_weapon_32</text>
<action>test.give_ak</action>
<next>4</next>
</phrase>
<phrase id="31">
<text>escape_lager_volk_weapon_31</text>
<next>4</next>
</phrase>
<phrase id="4">
<text>escape_lager_volk_weapon_4</text>
<action>actor_break_dialog</action>
<give_info>volk_maybe_give_ak</give_info>
</phrase>
</phrase_list>
</dialog>
</game_dialogs

 

Надеюсь на вашу помощь!

В чем ошибка в скрипте или в "скелете"?

Скрипт называется test.

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

Такой объем текста под спойлер.

%D0%B8%D0%BE%D1%80%D0%B4%D0%B0%D0%BD%D0% 
Тот, кто думает-думает всегда.
Тот, кто думает, что думает-думает иногда.

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

 

 

только вот другая проблема

Какая проблема-то? Тяжело угадать самим. Давай без шарад, пиши сразу в чем дело.

 

 

Вот сам скрипт

Зачем там два end'а?

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

 

 

Зачем там два end'а?

end основной и конец действия.
 

 

 

Какая проблема-то?


скрипт на выдачу ак не работает.

%D0%B8%D0%BE%D1%80%D0%B4%D0%B0%D0%BD%D0% 
Тот, кто думает-думает всегда.
Тот, кто думает, что думает-думает иногда.

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

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

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

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

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

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

Войти

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

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

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