Это популярное сообщение. Dennis_Chikin 3 658 Опубликовано 16 Мая 2014 Это популярное сообщение. Поделиться Опубликовано 16 Мая 2014 Ковыряемся в файлах ТЧ Прежде чем писать в тему - внимательно читаем первый пост, и пользуемся поиском. Возможно, ответ на Ваш вопрос уже есть. Касательно телепатии: если Вы передаете Ваши файлы телепатическим путем - ответы будут передаваться тоже телепатически. Если Вы предлагаете угадать, отчего у Вас в подвале происходит странный стук - ответ будет передан стуком. 4 8 6 12 Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Zander_driver 10 333 Опубликовано 4 Апреля 2015 Поделиться Опубликовано 4 Апреля 2015 А я тут наведаюсь с вопросом... для Кашпировских, если честно. Потому как сам ничего пока не накопал, хотя вроде постарался. Знал бы точнее - решил бы сам, свою проблему. Есть просто небольшая надежда что у кого-то подобное было и дадут подсказку в какую сторону копать Собственно, суть проблемы. Периодически какими-то "наплывами" происходят странные тормоза. Причем, мониторинг апдейтов всех биндеров всего-на свете, который я к слову в соседней теме и выложил, показал что все там нормально, в том числе апдейт актора и все что к нему прицеплено. Никаких заоблачных цифр нигде не нашлось. Входов в онлайн/выходов в оффлайн массовых тоже не происходит ни у каких объектов, ГГ неподвижен, массовых миграций кого-то/чего-то тоже не происходит. А при наступлении этих тормозов (которые повторюсь, не постоянно а некими "наплывами") - время самого апдейта актора, остается то же, все прочие апдейты всех объектов - те же, Но, время между апдейтами актора становится равно ста миллисекундам. т.е. апдейт 10 раз в секунду, delta сообщенная движком = 100. и так по несколько апдейтов, затем опять поехали нормально.По апдейтам проверял актора, неписей, монстров, физ. объекты, рестрикторы не стал (они ведь через актора обновляются?), гулаги-смарты, менеджеры кампов и анимаций, везде время сжираемое на апдейты в пределах нормы, более чем. У кого есть идеи что это может быть? куда еще стоит воткнуть profile_timer чтоб посмотреть?зы. если это я сам что-то нахимичил то я же и раскопаю, не переживайте. Вопрос задается единственно на случай если у кого-то такое было. Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Ссылка на комментарий
Dennis_Chikin 3 658 Опубликовано 4 Апреля 2015 Поделиться Опубликовано 4 Апреля 2015 Респавн ? Длительность апдейта самого актора перед этим тоже нормальная ? То есть, вот того, "между которыми" длительность вылезает ? Ну и всякое внутридвижковое в общем ни как не отловить. Типа мусоросборки. И отрисовки графики. Впрочем, по графике отлавливается "кручением головой" - в разные стороны и "под ноги - в небо". Солянка обезжиренная, диетическая, полезные советы по "солянке", текущий тестовый патч Ссылка на комментарий
Zander_driver 10 333 Опубликовано 4 Апреля 2015 Поделиться Опубликовано 4 Апреля 2015 Респавн оригинальный у меня отрублен полностью. А свой - вызывается только в определенные моменты, после выброса + два раза в сутки в определенные часы. Больше никогда. Длительность апдейта актора именно что нормальная. кручение головой - не влияет, смотрел себе под ноги на серый бетон, происходило то же самое.Чем таким может заниматься движок, вопрос хороший... и в каком месте искать причину. Мод, где не бывает одинаковых путей - Судьба Зоны. (Лучшее, что у меня получилось на X-Ray) На базе модифицированного движка OGSR Engine. Бывший мододел на X-Ray / Начинающий игродел на Unreal Engine. Программист. AMD Ryzen 9 7950X (16 ядер, 32 потока, 5.75 ГГц); RTX 3080; 128 ГБ DDR5; Arctic Liquid Freezer II-420; 3 ТБ SSD PCIe 4.0; 4ТБ HDD. Ссылка на комментарий
Карлан 1 049 Опубликовано 4 Апреля 2015 Поделиться Опубликовано 4 Апреля 2015 @UnLoaded, я конечно не совсем понимаю зачем рестриктору указывать этот параметр (тем более у аномалии, у которой всегда должен быть NOT A restrictor)... вот совсем этого делать не нужно (не возбраняется, но глупо по крайней мере). В общем это все в двух словах не расскажешь, но на самом деле это ограничители, которые используются безобидно для объектов. Проще наверное тебе самому все устройство посмотреть в движке, там в целом конечно запутано (я плохо разбираюсь в скриптах/движке), но основную суть и принцип работы вполне уловить можно. Если на пальцах, то out - откуда не выходить, in - куда не входить. По какому принципу это все реализуется можно посмотреть в движке (я просто подозреваю, что это тебе не интересно). Ссылка на комментарий
UnLoaded 313 Опубликовано 5 Апреля 2015 Поделиться Опубликовано 5 Апреля 2015 (изменено) Карлан, подозрительность Ваша однако не по делу, было-бы не интересно - стал бы я спрашивать ? Насчет в движке посмотреть - ну мне проще спросить, чем разобраться в мегатонне сишного кода... Насчет "всегда должен быть NOT A restrictor" - смотрел для Кордона, нашел 11 аномалий с IN default restrictor, остальные NONE default restrictor, с NOT а restrictor всего 5. И ничего не вылетает. Так, что пока от Вашего ответа пользы... А посылать в движке копаться я и сам могу. Изменено 5 Апреля 2015 пользователем UnLoaded Ссылка на комментарий
Карлан 1 049 Опубликовано 5 Апреля 2015 Поделиться Опубликовано 5 Апреля 2015 @UnLoaded, я разве где-то сказал, что из-за этого должно вылетать (странный вывод)? Я сказал, что это делать неразумно, но прописывать эти типы им вполне возможно. Какая мегатонна там весь принцип работы написан в одном файле. К слову, твой вылет не связан конкретно с типами рестрикторов. ну мне проще спросить, чем разобраться Давайте вместе подождем, пока кто-то лекцию напишет об устройстве рестрикторов, мне тоже будет интересно. Если лень мозги напрягать, то поиграй и посмотри в игре чем эти аномалии отличаются, ну и очевидный вывод не заставит себя долго ждать . 1 Ссылка на комментарий
NL-Vincenz 12 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 [873] ; cse_abstract properties section_name = stalker name = esc_poter position = 1.1648344993591,2.2486491394043,61.42854309082 direction = 0,0.00316426996141672,0.062321275472641 version = 118 script_version = 6 ; cse_alife_trader_abstract properties money = 5000 character_profile = esc_poter ; cse_alife_object properties game_vertex_id = 89 distance = 9.80000019073486 level_vertex_id = 278058 object_flags = 0xffffffbf custom_data = <<END [spawner] cond = {+elev_zone_psih} [logic] active = patrol danger = danger_ignore [danger_ignore] ignore_distance = 10 ignore_distance_grenade = 10 ignore_distance_corpse = 0 ignore_distance_danger_hit = 20 ignore_distance_sound = 0 danger_inertion_time_hit = 1 [patrol] def_state_moving = rush path_walk = esc_poter_walk END story_id = 5484 ; cse_visual properties visual_name = actors\novice\green_stalker_2 ; cse_alife_creature_abstract properties g_team = 0 g_squad = 1 g_group = 5 health = 1 dynamic_out_restrictions = dynamic_in_restrictions = upd:health = 1 upd:timestamp = 0x617a6b75 upd:creature_flags = 0x6b upd:position = 1.1648344993591,2.2486491394043,61.42854309082 upd:o_model = 0 upd:o_torso = 0.00316426996141672,0.062321275472641,0 upd:g_team = 0 upd:g_squad = 1 upd:g_group = 5 ; cse_alife_monster_abstract properties upd:next_game_vertex_id = 65535 upd:prev_game_vertex_id = 65535 upd:distance_from_point = 0 upd:distance_to_point = 0 equipment_preferences = 2,2,0,1,1 main_weapon_preferences = 0,2,0,2 ; cse_ph_skeleton properties ; cse_alife_human_stalker properties upd:start_dialog = ; se_stalker properties Прописал условие появление сталкера, если он получит инфопоршень elev_zone_psih, то он соспавниться. [spawner] cond = {+elev_zone_psih} Но он почему-то игнорирует данное условие. Не понимаю в чем может быть ошибка. В свое время данную инфопорцию выдает space_restrictor. [874] ; cse_abstract properties section_name = space_restrictor name = elev_zone_psih position = 1.1648344993591,2.2486491394043,61.42854309082 direction = -0.000350999995134771,-0.0109850000590086,0.0319279991090298 version = 118 script_version = 6 ; cse_alife_object properties game_vertex_id = 89 distance = 0 level_vertex_id = 278058 object_flags = 0xffffff3e custom_data = <<END [spawner] cond = {+kuznecov_pogovoril_2} [logic] active = sr_idle [sr_idle] on_actor_inside = %+elev_zone_psih% END story_id = 5485 ; cse_shape properties shapes = shape0 shape0:type = sphere shape0:offset = 0,0,0 shape0:radius = 28.99492645263672 ; cse_alife_space_restrictor properties restrictor_type = 3 У него тоже имеется условие что после разговора с определенным НПС выдается инфопорция которая дает разрешение на спавн space_restrictor. Ссылка на комментарий
UnLoaded 313 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 (изменено) Но он почему-то игнорирует данное условие. Игнорировать он ничего не может, если прописан спавнер - отработает как надо, а вот если само условие не выполняется, вот тогда запросто. Сначала проверь: зарегистрирована ли инфо-порция, нет ли просто грамматической ошибки в именах, затем сделай проверку выдачи инфо-порции - к примеру ф-цию типа function spawn_test() local text = "спавним" news_manager.send_tip(db.actor, text, nil, nil, 30000) end пропиши в xr_effects.script, затем добавь ее вызов [sr_idle]on_actor_inside = %+elev_zone_psih =spawn_test% Увидишь сообщение - значит рестриктор заспавнен и отработал появление актора в своей зоне... Блин, чет я не смотрю на все внимательно - а с каких пор у нас рестрикторы по спавнеру спавнятся ? Спавнер для них не работает. Вот и решение твоей проблемы! Изменено 6 Апреля 2015 пользователем UnLoaded 1 Ссылка на комментарий
NL-Vincenz 12 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 @UnLoaded, Спасибо! В таком случае как написать в on_actor_inside = %+elev_zone_psih% так что-бы при получении определенной инфопорции (например kuznecov_pogovoril_2), выдалась вот эта: elev_zone_psih.. Ссылка на комментарий
Карлан 1 049 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 @NL-Vincenz, очевидно: [logic] active = sr_idle [sr_idle] on_actor_inside = {+kuznecov_pogovoril_2} nil %+elev_zone_psih% [spawner] для зон не существует. 1 Ссылка на комментарий
AndrewMor 527 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 А кто подскажет, можно в тайники класть некое подобие денег (или мешка какого), чтобы при его взятии у ГГ увеличивалась сумма на кармане? Сталкер - наше всё! Ссылка на комментарий
Карлан 1 049 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 @AndrewMor, можно. 1 Ссылка на комментарий
UnLoaded 313 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 (изменено) чтобы при его взятии у ГГ увеличивалась сумма на кармане? Ну это-же элементарно, Ватсон Сделать инвентарный предмет на классе к примеру хлебушка. Тока поменять визуал на пачку денег(туго набитый мешочек), и подсказку сменить: вместо "Съесть" на как Вам захочется. По факту употребления добавлять денег в нужном кол-ве, которое можно прописать новым параметром в конфиге этого добавленного предмета(и соответственно вычитывать при выполнении действия). Можно и по факту взятия в инвентарь(или on_use или on_item_take) - на что повесите, то и будет... @NL-Vincenz on_actor_inside = {+kuznecov_pogovoril_2} nil %+elev_zone_psih% здесь nil - перевод спейс_рестриктора в неактивное состояние, чтоб отработав свое, более ресурсы движка не кушал... Изменено 6 Апреля 2015 пользователем UnLoaded 1 Ссылка на комментарий
AndrewMor 527 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 Тока поменять визуал на пачку денег(туго набитый мешочек), и подсказку сменить: вместо "Съесть" на как Вам захочется. По факту употребления добавлять денег в нужном кол-ве, которое можно прописать новым параметром в конфиге этого добавленного предмета(и соответственно вычитывать при выполнении действия). Можно и по факту взятия в инвентарь(или on_use или on_item_take) - на что повесите, то и будет... Вот и я в этом же направлении подумал. А вешать именно по факту появления в инвентаре (поначалу хотел их именно съедать). Тогда еще вопрос: если вешать на on_item_take (это ведь появление в инвентаре), можно ли его сразу того... удалить? Берешь в инвентарь - предмет удаляется и бабло добавляется? Можно ли удалить именно СРАЗУ, в одном обработчике? Сталкер - наше всё! Ссылка на комментарий
Карлан 1 049 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 @AndrewMor, выясни. Ссылка на комментарий
UnLoaded 313 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 Можно ли удалить именно СРАЗУ, в одном обработчике?Можно. Обработчик срабатывает по факту появления объекта в инвентаре - следовательно делай с ним что хочешь... 1 Ссылка на комментарий
AndrewMor 527 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 Идея возникла, может, бредовая: а можно ли поговорить с Монолитом? Он же вроде, физический объект? Сталкер - наше всё! Ссылка на комментарий
UnLoaded 313 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 (изменено) а можно ли поговорить с Монолитом? Он же вроде, физический объект? И что ? Почитай на Вики раздел "A-Life - статьи об использовании ССЖ A-Life". Разберешься - будет у тебя и Монолит разговаривать... Ответ ни о чём. Какая из статей по указанному адресу имеет отношение к сути заданного вопроса? Malandrinus Изменено 6 Апреля 2015 пользователем Malandrinus Ссылка на комментарий
Карлан 1 049 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 (изменено) @AndrewMor, в привычном смысле этого слова - нельзя (ну разве что ты со всякими бочками не говоришь, но вроде большинство - не говорят). Сделай на CUIWindow подобие диалогового окна, ну и вызывай при юзе. @Malandrinus, подобные операции с созданием подобия физобъекта на основе людей/торговцев у меня ничем положительным не закончились. Хотя вот помнится в огсе 0692 что-то подобное было, но как это будет выглядеть с монолитом я не знаю, нужно тестировать. Поэтому советовать не стал. Изменено 6 Апреля 2015 пользователем Карлан Ссылка на комментарий
Malandrinus 615 Опубликовано 6 Апреля 2015 Поделиться Опубликовано 6 Апреля 2015 можно ли поговорить с Монолитом? Он же вроде, физический объект? Технически говоря, вопрос сводится к задаче вызвать стандартный диалог разговора для неживого объекта. Строго говоря, это невозможно, поскольку диалог можно вызвать только для сталкеров и торговцев. Но можно как-то обойти это. Я вижу два пути: 1. Создать объект торговца с визуалом монолита и тогда с ним можно будет говорить. Надо будет конечно повозиться с тем, чтобы вписать движковую механику торговца в левый визуал. Как-то поставить заглушки на анимации и т.п. 2. (меня опеределили) сделать своё окно диалога. 1 Плагины Total Commander для работы с игровыми архивами: Архиваторный плагин (для работы с одиночным архивом): link1 link2 Системный плагин (для распаковки установленной игры): link1 link2 Ссылка на комментарий
Рекомендуемые сообщения
Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий
Комментарии могут оставлять только зарегистрированные пользователи
Создать аккаунт
Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!
Зарегистрировать новый аккаунтВойти
Есть аккаунт? Войти.
Войти