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

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


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

Привет всем. @Iriarith в этой сборке помогает загрузка предыдущей сохранки, но в другой локе. 

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

https://drive.google.com/file/d/10nPzF-HkNzpCFs4znIAb9kiyeaamOkfM/view?usp=drivesdk

Удачи всем. 

Изменено пользователем Kashafoch
  • Спасибо 1

Т.Ч. Наследство Коллекционера-форум

Ссылка на комментарий
6 часов назад, Iriarith сказал:

можно как-то удалять проблемные объекты

а если бы "объект" был квестовый его тоже удалять?:) например, Бармен так может некорректно заспавниться. такой вылет происходит когда непись/моб некорректно встают на аи-сетку, как быстрое решение либо понижать радиус а-лайфа, иногда его задирают в модах выше 150, либо при стандартном а-лайфе, дойти до точки за 180-200 м до точки спавна проблемного непися/моба, сохраниться, вылететь, потом загрузить этот сейв и идти от него тогда, когда до объекта останется уже 20-30 м он должен кореектно встать на аи-сетку.

Ссылка на комментарий
15 часов назад, imcrazyhoudini сказал:

Чёрт пойми что.

А это косяк компилятора спавна (?) или конфига предмета с мини-ошибкой (?) (уже точно не помню, но на тот момент четко выловил проблему). Было такое же: ловил железный вылет, искомая секция всегда была рандомным набором символов. Перерыл все, что можно. Пока не дошел до такой же, как у тебя, схемы. Найдя виновника, разобрал спавн АСДС-ей и увидел, что в какой-то предмет(ы) вшиваются непонятные параметры, которые игрой не читаются. В итоге она не понимала происходящего и вылетала, ссылаясь на несуществующую секцию. Вручную почистил лишнее, собрал спавн той же АСДС и вылет ушел

  • Нравится 1
  • Полезно 2
Ссылка на комментарий
15 hours ago, Iriarith said:

через горячие клавиши

Опять же мод. В оригинале единственная назначенная клавиша – [Q] для выхода из игры. Можно добавить свои клавиши в [ui_main_menu.script] аналогично if dik == DIK_keys.DIK_Q …

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

Ссылка на комментарий
24.11.2023 в 19:52, Купер сказал:

Где-то в качестве секции объекта прочитался/записался "мусор".

Все правильно, бьется сейв.

  • Согласен 1

Сталкер - наше всё!

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

Ребята, такой вопрос.

Добавил ноги от первого лица с лост альфы.

Но на статике какая-то беда - ноги отображаются прозрачными и то лишь тогда, когда на них светишь фонарём.
Шейдеры ставил всевозможные - не помогает.

На r2a и выше всё гуд.

В чём может быть дело?

Код показать могу на скринах.

ищу человека, который смог бы заняться разработкой погоды на OGSR.
кто может помочь - пишите в ЛС.

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

Здравствуйте форумчане, возникла такая проблема: создал квест, но после его взятия ветка диалога из игры не пропадает. В таком случае можно попробовать взять квест второй раз, но игра вылетает с ошибкой "No available phrase to say, dialog[bar_dolg_leader_unique_jobs]"

Кто может подсказать, как сделать чтобы диалог после взятия задания пропадал ?

Intel Xeon E5-2689 2.60GHz, Radeon RX 480, ОЗУ 12 GB DDR3, Sata M2 500 GB, 3.5 HDD 500 GB + 2.5 HDD 500 GB

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

Ребят, что-то новенькое, меня в игру не впускает((

stack trace:

0023:005489B4 xrCore.dll, IReaderBase<IReader>::find_chunk()

 Удаляю "system.ltx" вылет уходит... Распаковал архивы и тут на те

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

народ, помогите разобраться

 

составил значит диалог из 4 фаз

Скрытый текст

<dialog id="marsh_doctor_medbrat">
        <!--dont_has_info>marsh_doctor_medbrat_start</dont_has_info-->
        <phrase_list>
            <!-- первый диалог -->
            <phrase id="1">
                <text />
                <dont_has_info>marsh_doctor_medbrat_start</dont_has_info>
                <next>2</next>
            </phrase>
            <phrase id="2">
                <text>marsh_doctor_medbrat_start_0</text>
                <next>3</next>
            </phrase>
            <phrase id="3">
                <text>marsh_doctor_medbrat_start_1</text>
                <next>4</next>
            </phrase>
            <phrase id="4">
                <text>marsh_doctor_medbrat_start_2</text>
                <give_info>marsh_doctor_medbrat_start</give_info>
                <next>5</next>
            </phrase>
            <phrase id="5">
                <text>marsh_doctor_medbrat_start_4</text>
                <action>dialogs.break_dialog</action>
            </phrase>
            <!-- Привели Грыца к доктору -->
            <phrase id="10">
                <text />
                <has_info>marsh_gryts_neyrub_start_done</has_info>
                <dont_has_info>marsh_doctor_interrogation_start</dont_has_info>
                <next>11</next>
            </phrase>
            <phrase id="11">
                <text>marsh_doctor_medbrat_done_0</text>
                <next>12</next>
            </phrase>
            <phrase id="12">
                <text>marsh_doctor_medbrat_done_1</text>
                <next>13</next>
            </phrase>
            <phrase id="13">
                <text>marsh_doctor_medbrat_done_2</text>
                <give_info>marsh_doctor_interrogation_start</give_info>
                <next>14</next>
            </phrase>
            <phrase id="14">
                <text>marsh_doctor_medbrat_done_01</text>
                <action>dialogs.break_dialog</action>
            </phrase>
            <!-- Притащили доктору саквояж -->
            <phrase id="20">
                <text />
                <has_info>esc_sidor_medicines_done</has_info>
                <dont_has_info>marsh_doctor_medicines_done</dont_has_info>
                <next>21</next>
            </phrase>
            <phrase id="21">
                <precondition>dialog_drda.precond_medical_container</precondition>
                <text>marsh_doctor_medicines_done_0</text>
                <next>22</next>
            </phrase>
            <phrase id="22">
                <text>marsh_doctor_medicines_done_1</text>
                <next>23</next>
            </phrase>
            <phrase id="23">
                <text>marsh_doctor_medicines_done_2</text>
                <give_info>marsh_doctor_medicines_done</give_info>
                <action>dialog_drda.we_give_medical_container</action>
                <next>24</next>
            </phrase>
            <phrase id="24">
                <text>marsh_doctor_medicines_done_01</text>
                <action>dialogs.break_dialog</action>
            </phrase>
            <phrase id="0">
                <text />
                <next>1</next>
                <next>10</next>
                <next>20</next>
                <next>30</next>
            </phrase>
            <!-- Финальный диалог с доктором с отсылкой на Штыря -->
            <phrase id="30">
                <text />
                <has_info>marsh_bulat_interview</has_info>
                <next>31</next>
            </phrase>
            <phrase id="31">
                <has_info>marsh_bulat_interview</has_info>
                <text>marsh_doctor_trial_done_0</text>
                <next>32</next>
            </phrase>
            <phrase id="32">
                <text>marsh_doctor_trial_done_1</text>
                <next>33</next>
            </phrase>
            <phrase id="33">
                <text>marsh_doctor_trial_done_2</text>
                <next>34</next>
            </phrase>
            <phrase id="34">
                <text>marsh_doctor_trial_done_3</text>
                <next>35</next>
            </phrase>
            <phrase id="35">
                <text>marsh_doctor_trial_done_4</text>
                <next>36</next>
            </phrase>
            <phrase id="36">
                <text>marsh_doctor_trial_done_5</text>
                <next>37</next>
            </phrase>
            <phrase id="37">
                <text>marsh_doctor_trial_done_6</text>
                <next>38</next>
            </phrase>
            <phrase id="38">
                <text>marsh_doctor_trial_done_7</text>
                <action>dialogs.break_dialog</action>
            </phrase>
        </phrase_list>
    </dialog>

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

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

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

@DarkSnowder можно предположить, что у тебя в стартовой фразе сначала идёт текст , а только потом проверка на инфопоршень, а должна сначала идти проверка, а потом текст. Но вообще для стартового диалога НПС, для начальной фразы, лучше не задавать никаких условий, потому что если условие не выполнится, т.е. условие будет не true, игра просто вылетит в логом типа "нет доступной фразы", а если задавать условие, которое всегда выполняется, то зачем оно нужно? ну и в случае с инфопоршнями , можно сделать 4 диалога, с разными начальными фразами, где в id диалога задавать проверку на инфопоршень, так чтоб после прокрутки первого диалога, он больше не появлялся, а выдавался поршень на появлении второго, и так далее.

 

 

 

Ссылка на комментарий
1 час назад, CiberZold сказал:

сначала идёт текст , а только потом проверка на инфопоршень,

Оно там закомментировано, если чё.

1 час назад, CiberZold сказал:

Но вообще для стартового диалога НПС, для начальной фразы, лучше не задавать никаких условий

Звезда Сидоровича :good:

 

@DarkSnowder, см. чётко наличие инфопоршней в ветках диалога: в первой ветке поршень выдали, в следующей ветке проверили его наличие и т.д.

 

Как вариант: разбить на несколько диалогов (если так проще) и выдавать их непосредственно в логике NPC в секции meet.

На примере Волка:

[meet@wolf]
...
--* тут наши поршни
meet_dialog = {-agroprom_military_case_have} escape_lager_volk_talk, escape_lager_leader_hello

 

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

Потестил диалог, оставив из всех проверок только <dont_has_info>:

• понятная ошибка: фразы с заглушенным текстом <text /> не считаются существующими – либо не выводится весь диалог, либо случается вылет "нет доступных фраз"

• непонятная ошибка: при выборе фразы 0 случайным образом выдается одна из доступных веток (1, 10, 20, 30), хотя должны отображаться все

   • тест: выбор, выход, повтор

   • с проверкой <has_info> и выданными инфо-поршнями фраз 10, 20, 30 картина та же

• если ввести начальные тексты и прокрутить какую-то ветку диалога до получения инфо, эта ветка, как положено, перестает выдаваться при выборе фразы 0

   • после трех инфо-поршней остается только ветка с начальной фразой 30 – указанной в исходном посте ошибки с повтором нет

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

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

@Norman Eisenherz @Купер @CiberZold Хотел знаете ли сделать как в билде АМКII диалог у сидора - в один диалог все его фразы квестовые вставлены, и выдавались они по инфопоршням. Но чёт у меня ни шиша не выходит, значит придется откатывать на раздельные диалоги.

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

Лучше сделать мод с 0, чем пытаться залатать багованный.

DarkSnowder.gif

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

@DarkSnowder, на первый взгляд с диалогом всё в порядке...

Проверь не удаляется ли инфопоршень "marsh_doctor_medbrat_start" где-нибудь ещё, вне этого диалога.

S.T.A.L.K.E.R. CoP Objects (upd 15.11.24)

Ссылка на комментарий
11 часов назад, DarkSnowder сказал:

Хотел знаете ли сделать как в билде АМКII диалог у сидора

брать то как делали в АМК 15 лет назад не самый лучший пример:) вообще нулевой фразе непися ставить условия это плохо, мало ли где-то упустишь что-то и вылет по отсутствующей фразе, потому что не выполнилось условие, а у тебя уже мод в релиз вышел  - и пошли патчи-фиксы) условия появления в самом id диалога - это надежней, максимум что будет , в таком случае, если условие не выполнится просто не будет этого диалога у НПС.

Кстати, скрипт на рандомные задания также сделан по принцпу отдельных диалогов, там просто под каждую ситуацию (проверка на наличие квестов и выдача квеста, получение награды) каждый раз генерится отдельный диалог со своим id, всё в один диалог не пихается)

Изменено пользователем CiberZold
Ссылка на комментарий
14 hours ago, CiberZold said:

каждый раз генерится отдельный диалог

Разве отдельный? Там всего два диалога на NPC, (parent)_trader_dialog и (parent)_trader_reward, а дальше список заданий (с фильтром) в качестве фраз.

Мини-моды: ТЧ ЧН ЗП

Шпаргалка

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

Здравствуйте, можно ли как-то сделать так чтобы на горячую клавишу в инвентаре разряжалось всё оружие? И так же на горячую клавишу можно было взять весь хабар с сталкера или с тайника?

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

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

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

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

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

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

Войти

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

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

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