Overf1rst 1 490 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Тень Чернобыля. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 6 4 1 3 1 3 6 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 22 июня, 2023 (изменено) if (math.random() < test_complete) then something_test() return end Так можно делать? Я имею ввиду при соблюдении условий функция something_test воспроизведется нормально? а все, что под этой строкой не выполнится? Изменено 23 июня, 2023 пользователем ian98 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
N42 687 Опубликовано 24 июня, 2023 (изменено) ian98 да Изменено 24 июня, 2023 пользователем N42 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 24 июня, 2023 N42 спасибо. я в принципе был уверен на 99.99%, но все-таки далек от темы. уточнил. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 26 июня, 2023 (изменено) Можно как-то получить координаты отметки на задание из pda? Отследить по Стори ид? И просто получить координаты через :position()? Изменено 26 июня, 2023 пользователем ian98 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
N42 687 Опубликовано 27 июня, 2023 (изменено) ian98 координаты метки на глобальной карте? Координаты объекта, на котором метка? Что именно надо-то? Если координаты метки на карте - никак Изменено 27 июня, 2023 пользователем N42 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 27 июня, 2023 N42 а в чем разница глобальной карты от мини карты? Мне нужна метка, например, которая вешается квестом и указывает на место его прохождения. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
N42 687 Опубликовано 27 июня, 2023 ian98 координаты метки или координаты объекта, на котором метка? Если координаты объекта - строго определенный объект или рандомный? Задание определенное? Описывай подробнее, что нужно, и что ты хочешь сделать, если хочешь получить нормальный ответ Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Foxeded 0 Опубликовано 27 июня, 2023 FeeRuMK1NG , у меня вот на уме только OGSR CoP оружие с ЗП в принципе норм пак. Но можешь сообщить если найдёшь что то на подобии STCoP пж Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 27 июня, 2023 N42 не знаю как лучше. Где правильнее и удобнее. Если объектов к метке привязано несколько, то можно и рандомный из них. Тут я тоже не знаю просто как это работает и где почитать об этом. Ну я и не искал пока особо, если честно. Задание активное, если есть такая возможность. Координаты метки на карте никак, но на глобальной карте можно? Я не понимаю разницы между картой и глобальной картой. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
N42 687 Опубликовано 28 июня, 2023 ian98 активное задание - оно какое? Строго с определенным идом или разные? Прописанное в task_manager.ltx или просто в gameplay? Про карту уже неважно, уже стало понятно, о чем речь. Разницы между миникартой и глобальной нет, просто изначально вопрос непонятен был, показалось, что речь может быть про координаты метки на картинке карты, а не про координаты объекта с меткой в игре. Поэтому надо подробнее писать, чтобы сразу понятно было, а не растягивать выяснение на кучу сообщений. И здорово ты проигнорил мою просьбу писать подробно что ты хочешь сделать Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 28 июня, 2023 N42 Подробнее, вот у нас есть задание, любое, от убить сталкера(сайдквест) до отключить антенны выжигателя(сюжетка). Квесты подобные сопровождаются меткой на карте, чтобы игрок знал куда ему идти. Я хочу, если один из таких квестов активный, получить координаты такой метки. На самом деле, необязательно даже выдавать координаты метки прям активного квеста(в табе), можно одного из активных. Мне кажется второе было бы легче сделать. Еще, может знаешь, как пользоваться send_event_key_press(number)? Из движка огср функция. Я пробовал так level.send_event_key_press(28), но ничего в игре не произошло. Возможно я просто не понял как это работает в принципе... Я думал и продолжаю так думать, что функция вместо игрока нажимает на кнопку. Этого бы мне и хотелось изобразить в своих задумках. Спойлер Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Ostrov igr lego 230 Опубликовано 28 июня, 2023 такой вопрос, как поменять скорость перезарядки? Я сделал новую анимацию перезарядки для оружия, но длительность анимации и не совпадает со дефолтной скоростью перезарядки Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
frankenshtayn 17 Опубликовано 28 июня, 2023 (изменено) Здравствуйте. Необходимо проверить наличие нескольких НПС на локации либо по сиду, либо по имени, т.к. по сюжету могут "дойти" до локации как все 6, так может дойти и максимум 2 т.е. от одного до четвех НПС могут "погибнуть по дороге". После диалогов со всеми НПС (диалоги есть у всех, но поскольку 4 могут "не дойти" отработать могут не все) дошедшие телепортируются (т.е. удаляются) и после их удаления необходимо запустить функцию funkciya. Есть рестриктор (на всю локацию, т.е. ГГ постоянно находится в нем) с логикой: [logic] active = sr_idle [sr_idle] on_actor_inside = {+del_telep_vis !est_npc} %=funkciya% Есть функция est_npc в xr_conditions local npc = { level_object_by_sid(441), level_object_by_sid(442), level_object_by_sid(443), level_object_by_sid(444), level_object_by_sid(445), level_object_by_sid(446) } function est_npc() for _, v in ipairs(npc) do if npc and level.name() == "l02_garbage" then return true else return false end end end соответственно в эффект.скрипт есть функция funkciya, но что-то я сделал наверное не так: почему-то моя конструкция работает некорректно. Т.е. при получении инфо del_telep_vis и удаления всех оставшихся НПС с локации, функция funkciya может сработать, может не сработать (сама функция funkciya 100% рабочая), некорректно работает только вся конструкция в сборе.. Изменено 28 июня, 2023 пользователем frankenshtayn Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Gnomi123 148 Опубликовано 29 июня, 2023 Возможно ли как-нибудь изменить отношение к актору нпс, находящемуся в офлайне на другой локации? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
N42 687 Опубликовано 29 июня, 2023 (изменено) ian98 тогда будет проще в цикле перебрать объекты и проверять наличие метки level.map_has_object_spot(id, "метка"). Или через биндер на нетспавне нпс, если координаты у нпс в онлайне. Но тоже смотря когда и сколько раз это получается, если часто - надо оптимизировать, а не циклы крутить. Получить цель можно только у квестов, которые прописаны в task_manager.ltx (в task_manager.script создается табличка активных квестов с параметрами). Если задание из xml файлов - цель не получить (или составлять для них конфиг с идами заданий и целями) В 28.06.2023 в 16:17, ian98 сказал: может знаешь, как пользоваться send_event_key_press(number)? Попробуй писать не цифры, а так level.send_event_key_press(DIK_keys.DIK_RETURN). Я за этим движком больше не слежу, хз что там, работает ли вообще frankenshtayn level_object_by_sid возвращает объект, у тебя таблица с объектами получается. Оставь в таблице сиды или имена, и потом в цикле сравнивай 20 часов назад, frankenshtayn сказал: for _, v in ipairs(npc) do if npc and level.name() == "l02_garbage" then Переменной npc нету, нечего проверять. Точнее, только существование таблицы проверяет. Или есть другая функция с удалением полей таблицы? Изменено 29 июня, 2023 пользователем N42 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Stalkervernite 347 Опубликовано 29 июня, 2023 Всем доброго времени суток Мододелы!Есть вопрос,"Как сделать написать нормальный сценарий к моду?Насколько я знаю 60% успешного мода,это сценарий,так я задаюсь вопросу,как написать нормальный сценарий?а не фуфло... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Hunter 2 470 Опубликовано 29 июня, 2023 Stalkervernite в смысле, как? Тебе с технической точки зрения или с художественной? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Stalkervernite 347 Опубликовано 30 июня, 2023 Hunter Привет,с точки зрения художественной Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
frankenshtayn 17 Опубликовано 30 июня, 2023 22 часа назад, N42 сказал: Переменной npc нету, нечего проверять. Таблица содержит имена: local npc = { "вася", "петя", "саша", "дима", "федя", "коля" } В попыхах просто не тот вариант вставил в пост. А вообще с таблицами у меня беда. Как отследить нпс по сиду или имени, это понятно, а вот как отследить отсутствие данных нпс на локации в данном случае? Не, можно конечно обьявить их всех локальными и перебирать "если нету васи и нету пети...", но хотелось бы во первых "красивее", а во вторых понять как. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
N42 687 Опубликовано 30 июня, 2023 (изменено) frankenshtayn я правильно понял, есть 6 равнозначных нпс, и если осталось 2 любых - они удаляются? Или есть важные среди них? Если они равнозначны - можно сделать счетчик, который сохраняется гг в пстор, добавить каждому нпс в on_death функцию с увеличением счетчика и потом в рестрикторе проверять значение, если == 4 - удалять других нпс Изменено 30 июня, 2023 пользователем N42 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Stalkervernite 347 Опубликовано 1 июля, 2023 N42 Привет,что такое cond,я знаю что это проверка,в каких случаях она употребляеться,и как пишиться. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
N42 687 Опубликовано 1 июля, 2023 (изменено) Stalkervernite привет, имя какой-то переменной, а какой - надо в коде смотреть, гадать не буду Изменено 1 июля, 2023 пользователем N42 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Stalkervernite 347 Опубликовано 1 июля, 2023 Привет всем,знаете как после выдачи инфопоршня нас перебрасывала в титры Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
frankenshtayn 17 Опубликовано 1 июля, 2023 21 час назад, N42 сказал: frankenshtayn я правильно понял, есть 6 равнозначных нпс, и если осталось 2 любых - они удаляются? Есть 6 нпс, двое из них с увеличенным иммунитетом. По сюжету гг с этими нпс проходит определенный маршрут с несколькими боёвками, затем переходят на другую локацию, затем после дохождения до нужной точки все телепортируются. Соответственно в зависимости от прохождения, на локацию где все телепортируются могут дойти как все шесть, так и пять, и четыре и три и два (двое доходят обязательно). Далее, после диалога со всеми дошедшими они идут в телепорт и удаляются. После того, как все нпс удалены необходимо, запустить функцию. Т.е. отследить, есть ли на локации эти нпс, и если их нет, то запускаем нужную функцию. В принципе всё это реализовано и работает, но как я уже говорил, хотелось бы сделать проверку отсутствия этих нпс на локации одной функцией. Дополнено 10 минуты спустя 38 минут назад, Stalkervernite сказал: Привет всем,знаете как после выдачи инфопоршня нас перебрасывала в титры Нужно вызвать функцию game_credits из xr_effects.script и запустятся титры 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Stalkervernite 347 Опубликовано 1 июля, 2023 frankenshtayn В том то и дело,как саму функцию вызвать,можешь скрипт написать Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты