Перейти к содержанию

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

 
 

Уже писал, попробую продублировать

Цитата

 

С чем связан данный вылет?

[error]Line          : 760
[error]Description   : pure virtual function call

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

 

 


Дополнено 3 минуты спустя

Если быть точнее, то вылет происходит в момент телепортации, но после нее. То есть я на секунду вижу, что все сработало. Еще раз, прям выделю, чтобы лишних вопросов не было: все работает в случае полного выполнения квеста с начала игры без загрузок сохранений, при загрузке любого из сохранений до выполнения этого этапа в квесте - вылет

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

FFFFF Хотя-бы примитивно: задаете заведомо неверное имя активной секции и если при старте получаете вылет, значит логика рестриктора срабатывает.


Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
37 минут назад, justrainy сказал:

Еще раз, прям выделю, чтобы лишних вопросов не было

Ничего не понятно.

37 минут назад, justrainy сказал:

pure virtual function call

Обычно такой вылет происходит, когда движок "теряет" объект.

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

Понятно одно, что вылет  связан именно с диалогом и действиями скриптов.

Изменено пользователем makdm
  • Мастер! 1

Терпение... И все получится.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

denis2000 то есть написать в логике выдачу несуществующего инфопоршня?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

FFFFF В ЗП нет понятия "несуществующий инфопоршень", поскольку их даже прописывать нигде не нужно, как в ТЧ(как пример - файл "info_l01escape.xml"), и игра всё равно будет их засчитывать. Выше предложили прописать неверное имя активной секции. 

Это может выглядеть примерно так: 

Спойлер

[logic]
active = just_for_check

Если игра крашнет, то логика рестриктора работает. Если нет, то и логику рестриктор в принципе не читает.

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

ed1c85bd8aba2500209219c6df96c254.png |  Verge                                                                            

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Я прописал несуществующую секцию.

Спойлер

[logic]

active = sr_idle@checkwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

 

[sr_idle@check]

on_info = {=actor_has_item(labx8_pda_syca)} sr_idle@nil %+jup_b9_blackbox_decryptedqqwwwqqqwwwqqqww%

 

[sr_idle@nil]

Ничего не вылетело. Что делать?

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
9 часов назад, FFFFF сказал:

Что делать?

Искать причину естественно!
Варианты: рестриктор с такой логикой не существует или рестриктор существует, но файл логики в его кастомдате прописан неверно.


Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
11 часов назад, FFFFF сказал:

checkwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww

Это чо? тут просто логика не сработала и всё? Продолжение в пустоту.


Дополнено 6 минуты спустя
12 часов назад, ScR1pt сказал:

Если нет, то и логику рестриктор в принципе не читает

Хрена ли?

[logic]
active =

Вообще то так логику отпускают (глушат, например я), даже при чтении рестриктора логика будет читаться, но в ноль (может не в ноль, но в космос точно).

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
24 минуты назад, Diesel сказал:

Хрена ли?

[logic]
active =

Вообще то так логику отпускают (глушат, например я), даже при чтении рестриктора логика будет читаться, но в ноль (может не в ноль, но в космос точно).

перечитай. я предложил вариант, как проверить то, видит ли рестриктор файл с логикой. если видит и там неверное имя секции - игра крашнет

  • Жму руку 2

ed1c85bd8aba2500209219c6df96c254.png |  Verge                                                                            

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
13 часов назад, ScR1pt сказал:

[logic]
active = just_for_check

Вообще на постоянку так делать не нужно. Лучше оставить  = и ничего.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

День добрый. Такой вопрос. Обрезает модель оружие, ну то есть где приклад/коробка, даже при максимальном отдалении hud_fov.

Мрд Prosectors 1.7 если что, перенес ствол с другой оружейки и такое. Это можно как-то вылечить?

20231206_125550.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Yara Написал вот так:

on_info = %=actor_in_zone(pripyat_plen_sr)% | walker@plen

[error] Expression    : 0
[error] Function      : ErrorLog
[error] File          : D:\a\xray-16\xray-16\src\xrScriptEngine\ScriptEngineScript.cpp
[error] Line          : 40
[error] Description   : object 'pri_gavaets0720': pick_section_from_condlist: function 'actor_in_zone' is not defined in xr_effects.script

Если написать on_info = on_actor_in_zone = pripyat_plen_sr | walker@plen точно так же вылетает. Если добававить проценты (on_info = %on_actor_in_zone = pripyat_plen_sr% | walker@plen) то тоже вылетает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
12 минут назад, Skala сказал:

on_info = %=actor_in_zone(pripyat_plen_sr)% | walker@plen

on_info = {=actor_in_zone(pripyat_plen_sr)} walker@plen

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
18 минут назад, Skala сказал:

on_info = %=actor_in_zone(pripyat_plen_sr)% | walker@plen

Я может что то не догоняю, в конфигах ноль как и в скриптах, но нахрена тут стоит этот разделитель???????


Группа мода в VK
Мод делался и тестировался на железе
i5-11400, 32Гб ОЗУ, Radeon RX580  Разрешение 2560 х 1440.  ВСЕ на максималке

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
3 минуты назад, Policai сказал:

в конфигах ноль как и в скриптах

Зато группа разработчики. :u1F603:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Diesel Уже в оригинальных файлах посмотрел :)

Policai Как написали так и сделал.

Теперь вот такой вылет когда в логике рестриктора вызываю спавн сквада:

[error] Expression    : 0
[error] Function      : ErrorLog
[error] File          : D:\a\xray-16\xray-16\src\xrScriptEngine\ScriptEngineScript.cpp
[error] Line          : 40
[error] Description   : You are trying to spawn two or more objects with the same story_id:[pri_dolg_squad] --> [pri_dolg_squad1287] try to add:[pri_dolg_squad1315]

В simulation я ничего не прописывал, только в squad_descr_pripyat.

А ещё как сделать так, чтоб в определённой зоне 2 дефолтных монолитовца без логики не палили по гг и двум сталкерам?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
15 минут назад, Policai сказал:

в конфигах ноль как и в скриптах

Ну ведь не -1 же! :u1F603:


Путь во мгле. Связь времен.
"Он ловко выхватил из-под себя табуретку и очень метко и сильно бросил ее в докладчика..." (Чугунный всадник)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
3 часа назад, Skala сказал:

[error] Description   : You are trying to spawn two or more objects with the same story_id:[pri_dolg_squad] --> [pri_dolg_squad1287] try to add:[pri_dolg_squad1315]

https://modfaq.ru/Script_engine_script.cpp

8 часов назад, Eman Name сказал:

Это можно как-то вылечить?

Если срезает в режиме прицеливания, можно подкрутить в секции худа:

;-влево / +вправо, -вниз / +вверх, -ближе / +дальше
aim_hud_offset_pos     = x,y,z
aim_hud_offset_pos_16x9
gl_hud_offset_pos
gl_hud_offset_pos_16x9

Ещё вариант через двиг, уменьшать VIEWPORT_NEAR, но это приводит к мерцанию объектов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Yara Я проверил все файлы что сегодня редактировал, этот сквад вызывается только один раз в логике рестриктора. В simulation сквад не прописан

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Приветствую!  Проблему с предметом и инфопоршнем я решил. Но возник новый вопрос. Никто не может объяснить что такое "walk_поинт" и как его добавить с помощью СДК.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
48 минут назад, FFFFF сказал:

Приветствую!  Проблему с предметом и инфопоршнем я решил. Но возник новый вопрос. Никто не может объяснить что такое "walk_поинт" и как его добавить с помощью СДК.

Смори, вей поинт по простому говоря - это точка до которой будет идти нпс, моб, верталет и тд, все кто умеют это делать вообщем. Обычно ставят walk точку (куда будет идти условный нпс) и look (куда будет смотреть) функционал вей поинтов большой, лучше почитай об статьи в интернете, просто загугли. Way point ы ставятся в соответсвуюшей вкладке в сдк. Вообщем погугли в инете, это не сложная тема, если будут более конкретная проблема - пиши

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
3 часа назад, Yara сказал:

https://modfaq.ru/Script_engine_script.cpp

Если срезает в режиме прицеливания, можно подкрутить в секции худа:


;-влево / +вправо, -вниз / +вверх, -ближе / +дальше
aim_hud_offset_pos     = x,y,z
aim_hud_offset_pos_16x9
gl_hud_offset_pos
gl_hud_offset_pos_16x9

Ещё вариант через двиг, уменьшать VIEWPORT_NEAR, но это приводит к мерцанию объектов.

То есть, если я отодвину положение вперед через этот конфиг, то обрезаться не будет, даже если я после притяну обратно через сам hud_fov, правильно понимаю?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Eman Name 

Давно такое делал, ещё на оригинальном ЗП, где команда hud_fov недоступна. Раз используешь кастомный двиг, где она есть - тебе и проверять.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
50 минут назад, Yara сказал:

Eman Name 

Давно такое делал, ещё на оригинальном ЗП, где команда hud_fov недоступна. Раз используешь кастомный двиг, где она есть - тебе и проверять.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
16 часов назад, Paracetamol сказал:

Смори, вей поинт по простому говоря - это точка до которой будет идти нпс, моб, верталет и тд, все кто умеют это делать вообщем. Обычно ставят walk точку (куда будет идти условный нпс) и look (куда будет смотреть) функционал вей поинтов большой, лучше почитай об статьи в интернете, просто загугли. Way point ы ставятся в соответсвуюшей вкладке в сдк. Вообщем погугли в инете, это не сложная тема, если будут более конкретная проблема - пиши


Спасибо. Просто хотел заспавнить труп с помощью спей_рестриктора ,а для этого нужен walk_point.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   1 пользователь онлайн