Новое на сайте:
Новости:
Файлы:
Статьи:
Топ пользователей:
Обновления сайта:
Группа "Гости" не имеет права просмотра модуля
| Форум S.T.A.L.K.E.R. - Моддинг Разбираем S.T.A.L.K.E.R. Разборочная комната ТЧ (Задаем вопросы по скриптам/конфигам и другим файлам игры) |
| Разборочная комната ТЧ |
|
Дата: Вторник, 17.04.2012, 22:43
Сообщение #1
Вы задаёте интересующий вас вопрос и тот, кто может вам на него ответить, пишет свой ответ. Правила темы: 1. Прежде чем задать вопрос, желательно прочитать все предыдущие страницы темы. Даже если вы не найдете там нужного ответа - я уверен, вы узнаете много нового. Второй вариант - воспользоваться поиском по ключевому слову. 2. Вы можете задавать вопросы, только непосредственно касающиеся создания модификаций и редактирования файлов игры 3. Личные вопросы не допускаются 4. Отвечать на вопросы желательно достаточно развернуто, задевая все аспекты касающиеся конкретного вопроса 5. Отвечать вы можете только в том случае если уверены в правильности ответа, если не знаете - просто не отвечайте. Авторы неправильных, вводящих в заблуждение ответов будут наказываться. 6.Соблюдайте грамотность и правильность построения вопросов и ответов, во избежание их удаления. "Спасибо / пожалуйста / не знаю" и прочие односложные и не несущие смысловой нагрузки сообщения, будут удаляться немедленно, а их авторы - наказываться. Основная цель темы - помочь новичкам-модостроителям, второстепенная - свести на нет тенденцию создания новых тем по каждому интересующему новичков вопросу.
|
|
Дата: Четверг, 04.04.2013, 19:38
Сообщение #322
KADAR, Держи http://rghost.ru/45041984
ЗЫ: Все можно было сделать намного проще и кода было бы меньше раза в два. Для одного мода есть готовое решение, если надо - могу поделиться. Есть костюм и есть модули для него. Модули вставляются в пистолетный слот, имеют худ рук. При определенном условии и при наличии у ГГ спец. капсул - идет повышение здоровья/сил/пси-здоровья/понижение радиации. |
|
Дата: Пятница, 05.04.2013, 10:04
Сообщение #325
KADAR, Ф-ия брони:
Код function nano_armor() if db.actor:item_in_slot(6) and db.actor:item_in_slot(6):section() == "mon_nano_armor" then if db.actor:item_in_slot(6):condition() < 1 then local cond = db.actor:item_in_slot(6):condition() + 0.01 if cond > 1 then cond = 1 end db.actor:item_in_slot(6):set_condition(cond) end end end Можно расшифровать так: Код Если предмет в 6 слоте и в этом самом слоте находится предмет "mon_nano_armor" то Если состояние предмета в слоте меньше 1 то Переменная = состояние предмета + 0,01 Если переменная больше 1 то Переменная =1 Конец Запись состояния предмета Конец Конец Не работает только броня? Лечение например работает? При юзании модулей, кроме брони, предмет должен портится (db.actor:item_in_slot(6):condition() - 0.01) Также, в таких условиях как например db.actor.health < 1 я бы уменьшил границу лечения. Не 1, а например 0,5 поставил. |
|
Дата: Пятница, 05.04.2013, 10:19
Сообщение #327
Попробуйте заменить функцию брони nano_armor() на такую:
Код function nano_armor() local item = db.actor:item_in_slot(6) -- проверяем что нужный нам предмет в слоте, иначе будет чинится любая одетая броня if item and item:section() == "mon_nano_armor" then local cond = item:condition() if cond < 0.5 then -- если состояние костюма меньше 0.5 item:set_condition(1) -- чиним end end end |
|
Дата: Пятница, 05.04.2013, 10:35
Сообщение #329
Все так же, (таймеры восстановил)... Броня не работает. Вот, не ясно почему все-таки без изменения скриптов, но с bindstalker из вырезанного варианта для ТЧ..
Должно работать. Щас в игре проверю. vl Проверил в игре, все прекрасно работает. Единственная поправка - if cond < 0.5 then - влияет также на то, до какого состояния будет восстановлен костюм. Т.е если проверяем 0,5, то и восстановится не выше этого уровня. Для полного восстановления, ставим единицу. Попробуйте без таймеров. Или вынесите вообще на отдельный апдейт. В bind_stalker.script в функции update(delta) поставьте вызов: monnoroch.nano_armor() vl Сделал как вы сказали выше, все заработало, но слищком быстро тратится состояние костюма, попробую поколдовать еще. Не вышло... Сообщение отредактировал KADAR - Пятница, 05.04.2013, 15:32 |
|
Дата: Пятница, 05.04.2013, 15:45
Сообщение #330
По коду тратится 1/100 часть от всего "здоровья" костюма. Т.е любые 100 использований модулей - и костюм в хлам. На практике, стоя в аномалии, эти 100 использований можно заработать ОЧЕНЬ быстро. Апдейт в игре идет 1 раз в 0,25 сек. Можно попробовать поколдовать с убыванием "здоровья" костюма. Например в функции nano_heals() строка:
Код db.actor:item_in_slot(6):set_condition(db.actor:item_in_slot(6):condition() - 0.01) Значение 0.01 изменить в меньшую сторону. Ну или вообще отказаться от порчи костюма при применении модулей. |
|
Дата: Суббота, 06.04.2013, 06:51
Сообщение #335
При переходе на Радар или раньше,исчезла свд тигр, подозрение что ее спер Скряга при лечении. Нельзя ли ее как то в рюкзак прописать? Возвращение Шрама + кп 3
ЖИЗНЬ ДАЕТСЯ ЧЕЛОВЕКУ ОДИН РАЗ. И ПРОЖИТЬ ЕЕ НАДО ТАК, ЧТОБЫ ТАМ НАВЕРХУ ОФИГЕЛИ И СКАЗАЛИ: "НУ-КА ПОВТОРИ!" Сообщение отредактировал Серый_75 - Суббота, 06.04.2013, 06:55 |
|
Дата: Суббота, 06.04.2013, 12:12
Сообщение #336
|
|
Дата: Суббота, 06.04.2013, 12:24
Сообщение #337
volazar, а если написать так:
function nano_armor() if db.actor:item_in_slot(6) and db.actor:item_in_slot(6):section() == "mon_nano_armor" then db.actor:item_in_slot(6):set_condition(db.actor:item_in_slot(6):condition() + 0.001) end end может сработать? |
|
Дата: Суббота, 06.04.2013, 13:56
Сообщение #338
KADAR, Нет.
1 причина - отсутствие проверки на состояние костюма. Ф-ия будет истинна всегда, когда на акторе одет костюм. 2 причина - ф-ия будет работать единожды. При одевании костюма. Для полного восстановления костюма надо будет его снять/одеть n-ое кол-во раз. Можно конечно запоминать состояние костюма, удалять его, затем переспавнивать обратно актору, но после пары таких полных восстановлений зависнет биндер. Полнейшее извращение одним словом Серый_75, Создайте новый файл, например qwerty.script, откройте его и скопируйте туда следующее: Код function give_weap() local item = db.actor:object("предмет") if not item then alife():create ("предмет", db.actor:position(), db.actor:level_vertex_id (),db.actor:game_vertex_id (), db.actor:id()) end end В bind_stalker.script после строки: function actor_binder:update(delta) пишите строку: qwerty.give_weap() qwerty - имя файла, который создавали (где функция написана), give_weap() - имя функции. Сохраняете, заходите в игру, получаете пушку, сохраняетесь, выходите из игры и удаляете добавленную строку из bind_stalker.script ЗЫ: В функции написано "предмет". Вместо слова предмет надо вставить секцию вашей пушки. Назвать вам ее не смогу - файлов шрама нету. |
|
Дата: Суббота, 06.04.2013, 14:35
Сообщение #339
volazar, Спасибо за совет, но я уже в продажу Петренко прописал. Все получилось. У меня другой вопрос. Можно сохраниться через консоль, если да, то как и где потом находятся сохранки.
Можно. Команда: save имя_сейва. Сохранения будут там же, где и все другие. vl Спасибо, попробую сейчас. ЖИЗНЬ ДАЕТСЯ ЧЕЛОВЕКУ ОДИН РАЗ. И ПРОЖИТЬ ЕЕ НАДО ТАК, ЧТОБЫ ТАМ НАВЕРХУ ОФИГЕЛИ И СКАЗАЛИ: "НУ-КА ПОВТОРИ!" Сообщение отредактировал Серый_75 - Суббота, 06.04.2013, 14:44 |
|
Дата: Суббота, 06.04.2013, 16:41
Сообщение #340
volazar, вроде сейчас все с броней наладил, благодаря вам, теперь хочу спросить, как и куда можно прописать такие сообщения всплывающие при включении определенного режима костюма, как у СКАТ-15.
Типа: Режим брони активирован. Или там: Маскировка включена. А то костюм унылый) Кстати мгновенное восстановление брони, даже лучше. Сообщение отредактировал KADAR - Суббота, 06.04.2013, 16:44 |
| |||








можете пислать готовый файл? Буду признателен.






