Overf1rst 1 496 Опубликовано 1 июля, 2020 Тема посвящена моддингу на платформе Тень Чернобыля. Правила темы: Здесь задают вопросы и получают на них ответы. Прежде чем задать вопрос, воспользуйтесь поиском, ответ на него, вероятно, уже есть. Если у вас произошёл вылет, проверьте лог и поищите информацию об ошибке в справочнике. Также будет полезно посмотреть справочник ошибок. Если у Вас вылетает какой-то мод, то следует написать в тему этого мода. Грамотно оформляйте свой пост, чётко доносите суть своего вопроса (ответа). Благодарность выражаем в личке или же ставим реакцию. Посты с благодарностями в теме будут удаляться. 6 4 1 3 1 3 6 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
vader_33 1 142 Опубликовано 1 июня, 2021 9 часов назад, Alex Kireev сказал: Функции рандом принимает 2 параметра 1й это название секции, артефакты, еда, медикаменты, 2й колличество то есть, не одну штуку надо есть, а несколько? Или что вторым аргументом передается, не очень понял Дополнено 42 минуты спустя Alex Kireev Спойлер function eat_rand() local medik_table = { ["bread"] = "true", ["conserva"] = "true", ["kolbasa"] = "true" } local actor_items = {} db.actor:iterate_inventory(function (tmp, item) if medik_table[item:section()] then table.insert(actor_items, item) end end,obj) if table.getn(actor_items) ~= 0 then local rnd = randome(actor_items) db.actor:eat(rnd) actor_items = {} end end function randome(medik_table) local rnd = medik_table[math.random(#medik_table)] return rnd end В беге за рассветом приближаешь свой закат Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Alex Kireev 18 Опубликовано 2 июня, 2021 6 часов назад, vader_33 сказал: что вторым аргументом передается Смотри например есть колбаса, и батон в рюкзаке, то тогда рандомно выбираем что ГГ будет есть, колбасу или батон, если будет ещё энергетик и консерва, то тогда рандомно выбираем из 4х позиций Дополнено 9 минуты спустя Я это так представляю Есть 2 массива 1й хранит например список еды, 2й список медикаментов. В самом массиве несколько позиций, ну то есть колбаса, хлеб, энергетик и вот команда рандом принимает параметр секция, то есть еда, 2й колличество находившихся в рюкзаке типов продуктов (например есть 2 колбасы, и 1 банка энергетика) и вот в конечном итоге это выглядит приблизительно так функция рандом генерирует случайное число которое может быть равно или 1 или 2, где 1 это колбаса, 2 энергетик Дополнено 10 минуты спустя Извините если плохо объяснил, я не очень хорошо понимаю принцип работы программирования Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
vader_33 1 142 Опубликовано 2 июня, 2021 Alex Kireev тогда достаточно просто таблицу передать без второго аргумента, если я правильно понял В беге за рассветом приближаешь свой закат Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Alex Kireev 18 Опубликовано 2 июня, 2021 vader_33 то есть как в примере с предыдущего поста? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
vader_33 1 142 Опубликовано 2 июня, 2021 (изменено) Alex Kireev скинул уже рабочий код, проверил у себя. Но как по-мне, лучше не нагружать игру лишними переборами, и есть без рандома первый попавшийся объект Изменено 2 июня, 2021 пользователем vader_33 В беге за рассветом приближаешь свой закат Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mopa 15 Опубликовано 2 июня, 2021 (изменено) В 31.05.2021 в 12:37, ian98 сказал: artefacts = af_medusa,0.8, af_cristall_flower, 0.2,af_night_star, 0.0 BirthProbability = 0.1 ;----------- Anomaly settings ----------------------- min_artefact_count = 0 max_artefact_count = 1 artefact_spawn_idle = 24 ;насколько часто спонить артефакты в офлайне, в часах artefact_spawn_rnd = 50 ;вероятность заспавнить артефакт в процентах. К вопросу порождения артов аномалиями - выше ключевые строки в конфигах аномалий. Медузы, выверты, всякие огнешары, капли и прочее в чистом ТЧ порождаются именно аномалиями в момент старта НИ Изменено 2 июня, 2021 пользователем Mopa 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 2 июня, 2021 Mopa т.е, если я не хочу их спавнить, то мне выкрутить пропы на 0? Я уже замучался с этим спавном. Удалить из него ничего не получается - в 100% случаев вылет. Прятать под землю, блин, оно иногда вылазит в разных местах. Ужас. В зп почему-то не было таких проблем вообще. Удалил что-то из спавна и удалил. Здесь же... Хотя, вот прям сейчас мысль пришла, можно ли прописывать всему в спавне вот такое, как с машинами: [spawner] cond = never Может хоть так уберу эти горы лута по всей чзо? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Askar 0 Опубликовано 2 июня, 2021 а как можно сделать что бы когда выкидываешь оружие оно автоматически разряжалось, а патроны добавлялись в рюкзак Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
vader_33 1 142 Опубликовано 3 июня, 2021 (изменено) Askar или в старых версиях Нового арсенала или как аддон для него было авторазряжение оружия ts mod Изменено 3 июня, 2021 пользователем vader_33 В беге за рассветом приближаешь свой закат Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
oleg19966 296 Опубликовано 3 июня, 2021 22 часа назад, ian98 сказал: Хотя, вот прям сейчас мысль пришла, можно ли прописывать всему в спавне вот такое, как с машинами: [spawner] cond = never Может хоть так уберу эти горы лута по всей чзо? Это сработает только для: НПС, мутантов, сматров, респавнов, машин ииии.... все. Артефакты, патроны, ящики, оружие, броня, еда, статические объекты, разные предметы в т.ч. квестовые, аномалии, физ. объекты и тд не читают условие спавна, так как оно не предусмотрено для них в движке. Так что нет, это не сработает. 1 1 Внимание! Ищу любые фиксы/исправления для оригинального ТЧ. Спойлер Или людей, которые желают помочь с этим делом. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mopa 15 Опубликовано 3 июня, 2021 23 часа назад, ian98 сказал: Mopa т.е, если я не хочу их спавнить, то мне выкрутить пропы на 0? Я уже замучался с этим спавном. Удалить из него ничего не получается - в 100% случаев вылет. Прятать под землю, блин, оно иногда вылазит в разных местах. Ужас. В зп почему-то не было таких проблем вообще. Удалил что-то из спавна и удалил. Здесь же... Хотя, вот прям сейчас мысль пришла, можно ли прописывать всему в спавне вот такое, как с машинами: [spawner] cond = never Может хоть так уберу эти горы лута по всей чзо? Да, в конфигах нужных аномалий прописать BirthProbability = 0.0. Можно до кучи строку artefacts = af_medusa,0.8, af_cristall_flower, 0.2,af_night_star, 0.0 укоротить: artefacts = А в спавне останутся только арты, там прописанные. И как тебе правильно подсказали, секция [spawner] для артов не работает. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 3 июня, 2021 Mopa Хорошо, что я и не пробовал с [spawner] cond = never А по аномалиям, то обязательно нужно менять строчку spawn_blowout_artefacts = on/off В случае, если просто выкрутить все пропы на ноль, игра будет крашить ссылаясь на нулевые значения в спавне. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mopa 15 Опубликовано 5 июня, 2021 В 03.06.2021 в 09:34, ian98 сказал: А по аномалиям, то обязательно нужно менять строчку spawn_blowout_artefacts = on/off Может быть, уже запамятовал. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 5 июня, 2021 Mopa А может и нет. У меня все равно вылеты) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mopa 15 Опубликовано 5 июня, 2021 12 часов назад, ian98 сказал: У меня все равно вылеты) Выложи весь конфиг целиком, и лог вылета. Кстати, возможно, нужна новая игра. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 5 июня, 2021 Mopa Я посносил их. Попробую внимаиельнее все выключить еще раз. Новая игра была. Я ее постоянно начинаю после каждой правки. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
AsuraH 80 Опубликовано 5 июня, 2021 Добрый вечер, возникла такая проблема, глючит моделька Акс74У подобным вот образом в милке моделька отображается правильно, а в игре вот такая вот проблемка. Кто нибудь в курсе как решить эту проблему? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mopa 15 Опубликовано 6 июня, 2021 7 часов назад, ian98 сказал: Новая игра была. Я ее постоянно начинаю после каждой правки. И это правильно Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 7 июня, 2021 (изменено) А знает кто как цветным текстом писать? Вот, я делаю так: <text>\n%c[01,255,128,0]ТЕКСТ%c[01,255,128,0]</text> Ловлю вылет. Что не так? Спойлер Изменено 7 июня, 2021 пользователем ian98 Нашел решение 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
AsuraH 80 Опубликовано 7 июня, 2021 (изменено) Подскажите пожалуйста сделал порт ТОZ-106 из EFT pack на ТЧ но анимации выстрелов не проигрываются Хотя в конфиге и анимациях из добавлял Подскажите в чем проблема. Вот пример проблемы Изменено 7 июня, 2021 пользователем AsuraH Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 8 июня, 2021 (изменено) Спойлер function remove_random_item() local important_objects = { -- Здесь предметы, которые нельзя удалять [ "bolt" ] = true, [ "device_pda" ] = true, } local tbl = {} local cnt = 0 db.actor:iterate_inventory( function( dummy, obj ) if obj and not important_objects[ obj:section() ] then cnt = cnt + 1 table.insert( tbl, obj:id() ) end end ) if cnt == 0 then return end local rnd = tbl[ math.random( table.getn( tbl ) ) ] local sobj = alife():object( rnd ) if sobj then news_manager.relocate_item( db.actor, "out", sobj:section_name() ) alife():release( sobj, true ) end end подскажите, как удалить сразу 10 предметов этим скриптом? Прощупать не могу, а по знаниям 0. Умею только таблицы заполнять, если они есть) Изменено 8 июня, 2021 пользователем ian98 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Alex Kireev 18 Опубликовано 8 июня, 2021 ian98 alife():release( sobj, true ) это строка отвечает за удаление, можно попробовать обернуть этот участок кода if sobj then news_manager.relocate_item( db.actor, "out", sobj:section_name() ) alife():release( sobj, true ) end в цикл, главное что бы точно было предметов больше 10 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
vader_33 1 142 Опубликовано 8 июня, 2021 ian98 10 штук одного предмета? Или 10 разных предметов? В беге за рассветом приближаешь свой закат Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
ian98 230 Опубликовано 8 июня, 2021 vader_33 10 разных Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Alex Kireev 18 Опубликовано 8 июня, 2021 (изменено) Как то так для 10 одинаковых for i=1, 10 do if sobj then news_manager.relocate_item( db.actor, "out", sobj:section_name() ) alife():release( sobj, true ) end end Дополнено 3 минуты спустя Если для разных то в цикл надо ещё добавить local sobj = alife():object( rnd ) Дополнено 4 минуты спустя local rnd = tbl[ math.random( table.getn( tbl ) ) ] Изменено 8 июня, 2021 пользователем Alex Kireev Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты