Overf1rst 1 499 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Чистое Небо. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 4 3 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 4 июля, 2023 В 02.07.2023 в 13:51, makdm сказал: Жмете на нужную и видите время. где собственно это время? уже в трёх версиях сдк посмотрел, нигде не вижу Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 5 июля, 2023 Mass есть вариант прикрутить target при действующем anim? Дополнено 11 минуты спустя с вашим вариантом на чн случается вылет, чего ранее не было https://drive.google.com/file/d/10zBoGtzCR5p7u-lmq4frkUBlsGF5iv2D/view?usp=sharing Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
makdm 672 Опубликовано 5 июля, 2023 (изменено) В 03.07.2023 в 21:08, Mass сказал: 2) Не работают анимации из таблицы anim, моб просто виснет Скрипт был разработан для проигрывания уникальных анимаций мобом, а не для стандартных движковых. Но я поправил это и допилил скрипт. Ниже смотрите. mob_remark.script Дополнено 9 минуты спустя 6 часов назад, imcrazyhoudini сказал: есть вариант прикрутить target при действующем anim? Вот представьте ситуацию - спит собака. Вы подходите к ней и она, продолжая спать, разворачивается в вашу сторону. Это как? Одновременно и спать и поворачиваться в сторону ГГ не получится. Поэтому сначала в схеме ремарк разверните моба в вашу сторону ( он встанет на лапы и повернётся ), затем переключитесь снова на ремарк и проиграйте анимацию. [mob_remark@1] target = actor anim_movement = false combat_ignore_cond = true combat_ignore_keep_when_attacked = true on_signal = action_end | mob_remark@2 [mob_remark@2] anim = lie_idle_0, lie_idle_1, lie_idle_2 time = 2330, 7340, 7340 anim_movement = false combat_ignore_cond = true combat_ignore_keep_when_attacked = true Изменено 5 июля, 2023 пользователем makdm Терпение... И все получится. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 95 Опубликовано 5 июля, 2023 (изменено) 7 часов назад, imcrazyhoudini сказал: есть вариант прикрутить target при действующем anim Ничто не мешает вызвать по on_info через xr_effects в функции если прям очень надо без target = actor action(self.object, look(look.point, db.actor:position()), cond(cond.time_end, 1000)) Так тоже не получиться иначе будет конфликт! Тогда может быть лучше так? --\\ Запускаем анимацию. if self.st.anim_movement == true then --\\ Анимация с движением. action( self.object, anim( self.anims[ self.count ], true ), sound( sound.idle ), self.cnd ) else --\\ Разворот в сторону ГГ, если задан параметр target. if self.st.target and self.st.target == "actor" then local target = db.actor:position() local look_pt = utils.vector_copy_by_val( target ):sub( self.object:position() ) look_pt:normalize() action(self.object, look(look.direction, look_pt), cond(cond.time_end, 1000)) action( self.object, anim( self.anims[ self.count ] ), sound( sound.idle ), self.cnd ) else --\\ Анимация без движения и без разворота в сторону ГГ. Куда моб до анимации смотрел - туда и смотрит во время анимации. action( self.object, anim( self.anims[ self.count ] ), sound( sound.idle ), self.cnd ) end end То есть если надо смотреть на актора, тогда даем секунду на это и уже играем анимку, иначе сразу играем анимку 53 минуты назад, makdm сказал: допилил скрипт. Ниже смотрите. Но проблему по пунктам 1 и 3 это не решает! 7 часов назад, imcrazyhoudini сказал: с вашим вариантом на чн случается вылет Я бы для начала посмотрел и исправил что вызывает это ! [LUA][ERROR] ERROR: xr_logic: pstor_load_all: not registered type in single_player encountered и ! Invalid HOM triangle (-221.605316,5.137728,-190.486877)-(-222.920380,5.138325,-188.826935)-(-222.508392,5.138325,-189.346985) Изменено 5 июля, 2023 пользователем Mass Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
makdm 672 Опубликовано 5 июля, 2023 В 03.07.2023 в 21:08, Mass сказал: При переключении логики с mob_walker монстр уходит в алайф У меня нет такой проблемы. В 03.07.2023 в 21:08, Mass сказал: При дебаге движок ругается на Entity Action removed!!! У меня в модах на что только не ругается. Как правило вся эта ругань не критичная. Собака лает - караван идет. Терпение... И все получится. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 6 июля, 2023 makdm вылетает при переходе во вторую секцию, а именно mob_remark Спойлер [logic] active = mob_remark@1 [mob_remark@1] target = actor anim_movement = false combat_ignore_cond = true combat_ignore_keep_when_attacked = true state = vis on_signal = action_end | mob_remark [mob_remark] combat_ignore_cond = true combat_ignore_keep_when_attacked = true state = vis anim = boloto_attack_prepare,boloto_attack_link_bone time = 1000,2533 on_signal = action_end | mob_jump@go [mob_jump@go] path_jump = blood_look ph_jump_factor = 0.6 ; прыгнет в небо аки Нео offset = 0,0,0 on_signal = jumped | mob_walker@m2 [mob_walker@m2] path_walk = blood_walk path_look = blood_look friendly = true state = vis Спойлер xrEngine.exe caused an EXCEPTION_ACCESS_VIOLATION in module <UNKNOWN> at 0000000000000000 stack trace: 0x0000000000000000 xrEngine.exe 0x00000000EBC19A8E luabind.dll, luabind::detail::class_rep::constructor_dispatcher + 206 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\3rd party\luabind\src\class_rep.cpp, 499 0x00000000EB1E54D0 LuaJIT.dll, lj_BC_FUNCC + 66 byte(s) 0x00000000EB1EF24A LuaJIT.dll, lua_pcall + 170 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\3rd party\luajit\src\lj_api.c, 1144 0x00000000EBC1FB85 luabind.dll, luabind::detail::pcall + 101 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\3rd party\luabind\src\pcall.cpp, 40 + 17 byte(s) 0x00000000EAA59E1D xrGame.dll, CScriptBinderObjectWrapper::shedule_Update + 125 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrGame\script_binder_object_wrapper.cpp, 85 + 106 byte(s) 0x00000000EA88D3EB xrGame.dll, CGameObject::shedule_Update + 123 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrGame\GameObject.cpp, 842 0x00000000EA872E07 xrGame.dll, CEntity::shedule_Update + 23 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrGame\Entity.cpp, 329 0x00000000EA875BF2 xrGame.dll, CEntityAlive::shedule_Update + 18 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrGame\entity_alive.cpp, 218 0x00000000EA828684 xrGame.dll, CCustomMonster::shedule_Update + 356 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrGame\CustomMonster.cpp, 339 0x00000000EA6F04C4 xrGame.dll, CBaseMonster::shedule_Update + 20 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrGame\ai\Monsters\BaseMonster\base_monster.cpp, 237 0x00000000EA6FA36E xrGame.dll, CAI_Bloodsucker::shedule_Update + 14 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrGame\ai\Monsters\Bloodsucker\bloodsucker.cpp, 600 0x000000003F187EAC xrEngine.exe, CSheduler::ProcessStep + 476 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrEngine\xrSheduler.cpp, 342 0x000000003F187C3F xrEngine.exe, CSheduler::Update + 367 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrEngine\xrSheduler.cpp, 434 0x00000000EA891837 xrGame.dll, CGamePersistent::OnFrame + 935 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrGame\GamePersistent.cpp, 615 0x000000003F12C5C7 xrEngine.exe, CRegistrator<pureFrame>::Process + 87 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrEngine\pure.h, 115 0x000000003F159961 xrEngine.exe, CRenderDevice::FrameMove + 321 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrEngine\device.cpp, 522 0x000000003F159EFB xrEngine.exe, CRenderDevice::on_idle + 395 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrEngine\device.cpp, 313 0x000000003F159D4F xrEngine.exe, CRenderDevice::message_loop + 111 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrEngine\device.cpp, 427 0x000000003F159B70 xrEngine.exe, CRenderDevice::Run + 480 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrEngine\device.cpp, 471 0x000000003F19F958 xrEngine.exe, Startup + 344 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrEngine\x_ray.cpp, 277 0x000000003F19F0E6 xrEngine.exe, WinMain_impl + 1830 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrEngine\x_ray.cpp, 757 0x000000003F19E959 xrEngine.exe, WinMain + 9 byte(s), D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrEngine\x_ray.cpp, 808 0x000000003F15544E xrEngine.exe, __scrt_common_main_seh + 262 byte(s), D:\a\_work\1\s\src\vctools\crt\vcstartup\src\startup\exe_common.inl, 288 + 33 byte(s) 0x000000007753651D kernel32.dll, BaseThreadInitThunk + 13 byte(s) 0x0000000077A1C201 ntdll.dll, RtlUserThreadStart + 33 byte(s) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 95 Опубликовано 7 июля, 2023 imcrazyhoudini 1)Не думаю что все ошибки о ссылкой на xr_logic были исправлены. Это может быть важным!. Так как таких строк у вас мильон! И могу с уверенностью сказать сохранения у вас нерабочие. Рано или поздно будут безлоговые вылеты! 2)При неизменном xr_logic, следует менять логику объектам которые еще не проспаунились, иначе в сейве могут остаться данные от схемы где логика объекта еще не менялась. Вроде как схемы должны сбрасываться, но мало ли для монстров могут быть исключения Сначала разберитесь с этими проблемами, а потом можно будет говорить о скрипте Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 7 июля, 2023 Mass тот вылет возникал лишь при вашем варианте скрипта я поставил последней от makdm и их не было а логику я меняю у объекта который ещё не проспавнился Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 95 Опубликовано 7 июля, 2023 (изменено) imcrazyhoudini тогда попробуйте заремить в скрипте строку look_pt:normalize() 12 минут назад, imcrazyhoudini сказал: тот вылет возникал лишь при вашем варианте скрипта Возможно в Чн в deactivate нельзя юзать xr_logic.mob_capture(self.object, true) Также попробуйте совсем убрать функцию deactivate в этом скрипте Изменено 7 июля, 2023 пользователем Mass Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 7 июля, 2023 Mass имеете ввиду использовать ваш скрипт? а вы на чн оттестировать данную логику с вашим скриптом не можете? а то я уже отчаялся... второй месяц уже с этой сценкой:/ Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 95 Опубликовано 7 июля, 2023 imcrazyhoudini Очевидно мой скрипт не работает, раз портится сейв! Отредактировать скрипт от товарища makdm для ЧН Оттестить логику на ЧН? - это будет морока для меня, нужно будет подключать скрипты и прочие правки Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 7 июля, 2023 Mass а что там редактировать? если не изменяет память во всех частях этот скрипт идентичен Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 95 Опубликовано 7 июля, 2023 imcrazyhoudini ну, мы же говорили о скрипте от камрада makdm. Попробуйте сделать так как я написал. Больше ничем не могу помочь Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
makdm 672 Опубликовано 9 июля, 2023 (изменено) В 07.07.2023 в 17:17, imcrazyhoudini сказал: а вы на чн оттестировать данную логику с вашим скриптом не можете? а то я уже отчаялся... второй месяц уже с этой сценкой: Вот только пять минут назад протестировал схему jump на ЗП с кровососом. Прыгает как миленький. Выкладываю вам его логику. Вы можете переделать под ЧН и попробовать. Путь blood_3_walk имеет такой вид [esc_sim_8_blood_3_walk] points = p0 p0:name = wp00|sig=path_1_end p0:flags = 0x1 p0:position = 327.387054443359,16.0682029724121,-9.58210563659668 p0:game_vertex_id = 31 p0:level_vertex_id = 655572 esc_sim_8_logic.ltx Изменено 9 июля, 2023 пользователем makdm Терпение... И все получится. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 9 июля, 2023 makdm да, так конечно проблем и у меня не возникает, но мне нужно чтобы он пред этим отыграл две анимации Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
makdm 672 Опубликовано 9 июля, 2023 (изменено) 11 минут назад, imcrazyhoudini сказал: но мне нужно чтобы он пред этим отыграл две анимации Ну так отыгрывайте. Доработанный файл mob_remark я вам сбросил. Скорее всего вы что-то не то в логике делаете. Сбрасываю последнюю версию. mob_remark.script Дополнено 6 минуты спустя В 02.07.2023 в 12:41, imcrazyhoudini сказал: появляется кровосос, смотрит на гг, отыгрывает анимацию рычания со звуком, переходит в режим прыжка, подпрыгивает к гг, всё Исправил файл mob_jump.script Теперь, если в логике прописать: path_jump = actor нпс будет прыгать точно в позицию ГГ. Надеюсь теперь ваши двухмесячные мучения закончатся. mob_jump.script Изменено 9 июля, 2023 пользователем makdm 1 Терпение... И все получится. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 95 Опубликовано 9 июля, 2023 (изменено) makdm Монстр при переключении схемы на ремарк по прежнему висит в алайфе какое-то время и сдвигается с места. Возможно причина в самой машине, так как на разных компьютерах разный апдейт. Я доработал эту ситуацию if self.st.target then ... else action(self.object, look(look.cur_dir), cond(cond.time_end, 500)) -- без этого моб находится в алайфе end И тогда elseif self.anims[ self.count ] then -- При вышеуказанной правке сюда будет приходить нил! --\\ Анимация без движения и без разворота в сторону ГГ. Куда моб до анимации смотрел - туда и смотрит во время анимации. action( self.object, anim( self.anims[ self.count ] ), sound( sound.idle ), self.cnd ) end БАГРЕПОРТ! Также когда в секции указанны анимации из движка и мы переключаемся на обычную анимацию, то когда мы возвращаемся с помощью логики в секцию где анимация из таблицы anim монстр отыгрывает всё равно обычную анимацию, хотя секция переключилась и анимация тоже должна была бы переключиться , но почему-то виснет action( self.object, anim( xray_anim[ self.anims[ self.count ] ], 0 ), sound( sound.idle ), self.cnd ) на этой строке Изменено 9 июля, 2023 пользователем Mass Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 9 июля, 2023 у меня с новой версией валится Спойлер FATAL ERROR [error]Expression : fatal error [error]Function : CScriptEngine::lua_pcall_failed [error]File : D:\S.T.A.L.K.E.R. Clear Sky\Hike\xray\xrServerEntities\script_engine.cpp [error]Line : 192 [error]Description : <no expression> [error]Arguments : LUA error: ....a.l.k.e.r. clear sky\gamedata\scripts\mob_remark.script:188: attempt to perform arithmetic on local 'pos' (a nil value) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 95 Опубликовано 10 июля, 2023 (изменено) imcrazyhoudini нужно так по формату из ЗП target = path | pri_a28_horror_look, 0 Для актора и других со стори ид в ЧН нужно поменять на число id target_id = get_story_object_id(story_id) Поменять на это local sid = tonumber(story_id) if sid == 0 then target_id = 0 else target_id = id_by_sid(sid) end тогда в логике можете написать target = story | 0 Дополнено 41 минуты спустя 15 часов назад, Mass сказал: БАГРЕПОРТ! Это появилось после моей правки! Каюсь! Без этого анимации работают, однако при дебаге в лог в вашем скрипте и в моём также =) Object zat_b18_dog_noah7093 has an empty script queue! Это очень критично. Так как если в этот момент моба убить, то игра его неправильно разрегистрирует. Плюс подводные камни в самом движке с зависшими функциями! Изменено 10 июля, 2023 пользователем Mass Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 13 июля, 2023 Mass уважаемый мастер, не возвращали ли вы спавн по инфопоршню монстров как это было в ТЧ? по типу [spawner] cond = {+info} мои попытки безуспешны se_monster.script Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
asarkus 1 Опубликовано 14 июля, 2023 (изменено) Слушайте, начал делать мод на зов припяти, но при запуске новой игры просто бесконечная загрузка. В диспетчере задач пишет, что движок не отвечает, хотя советы переключаются... Правки небольшие пока что, замени имя гг, поменял меню, его иконку и стартовый набор. Немного исправил сложности (теперь меньше времени неуязвимости на сложности новичок и сталкер) Изменено 14 июля, 2023 пользователем asarkus Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 95 Опубликовано 14 июля, 2023 imcrazyhoudini se_monster.script Попробуйте этот скрипт! Я не проверял если что! Но я бы изменил на ЗП вариант on_offline из логики мне кажется лучше подходит тыкни меня Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 14 июля, 2023 51 минуту назад, Mass сказал: из логики мне кажется лучше подходит а как его добавить то? если я дуб в этом скрипт не сработал, вот с тч рабочий, может вам это даст что-то se_monster.script Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mass 95 Опубликовано 14 июля, 2023 (изменено) imcrazyhoudini Под обычной логикой или под смартом? Если 2-ое тогда еще надо изменять сам смартерейнскрипт Изменено 14 июля, 2023 пользователем Mass Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
imcrazyhoudini 1 112 Опубликовано 14 июля, 2023 Mass без смарта, под обычной логикой Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты