Перейти к содержанию

Сергей Шубин

Сталкеры
  • Публикаций

    95
  • Зарегистрирован

  • Посещение

Весь контент Сергей Шубин

  1. Такие логи обычно бывают при ошибках в логике НПС. Было бы неплохо посмотреть спавн-секции и файлы логики этих товарищей. И заодно. Что скрывается под маской?
  2. Прописать ему в спавн-секцию СТОРИ-ИД. Затем воспользоваться стандартной функцией %=destroy_object(story:story_id_npc)%
  3. Добрый день. Возник вопрос. Допустим, есть смарт-террайн. mar_b1, например. Этот смарт может быть заселен враждебными ГГ сквадами, в том числе, находящимися в симуляции. Рядом со смартом укрытие от выброса. Как можно проверить, есть ли на смарте враждебные НПС?
  4. Добрый вечер. Тестирую функции передачи от игрока квестовых предметов. В оригинальном Зове Припяти происходит трансферт предметов. Когда мы приносим Тесаку 6 банок тушенки, то они у него и остаются. Если грохнуть Тесака, то в этом можно убедиться. Пробую функции для диалога, удаляющие квестовые предметы из игры. Получилось следующее. Для одиночного предмета работает отлично. Но если предметов два или несколько, то удаляется только один. Чтобы убрать два предмета, нужно в диалоге делать два экшена. Нашел такую функцию. Эта функция убирает все предметы с данным именем. Есть в рюкзаке 10 автоматов, то уберет все подчистую. Вопрос такой. Как доработать первую функцию? function relocate_object_ot_actor(item) local obj = db.actor:object(item) if obj ~= nil then alife():release(alife():object(obj:id()), true) end news_manager.relocate_item(db.actor,"out",item) end Чтобы можно было задать число удаляемых предметов.
  5. Доброе утро. Возник вопрос. В файле xr_statistic обрабатываются переменные статистики ГГ. Как использовать эти значения в игровом процессе. 1. Как составить функцию - прекондишион для диалога? Должна возвращать true, если ГГ убил, например, 20 монстров. 2. Как составить функцию для xr_conditions в общем виде? Вызывается из логики рестриктора. Если ГГ выполнил, допустим, 5 квестов, то рестриктор переключается на следующую секцию.
  6. Там уже прописано время отыгрывания разных анимаций. Посмотреть в бинокль, почесать пятую точку, постоять с оружием, посидеть. Два параметра времени?
  7. Добрый день. Написал для НПС такую работу. Он её выполняет. Можно ли как то задать время нахождения НПС на точках walk. Или это можно только сделать в логике?
  8. Тогда, вероятно, модель кривая. Надо настраивать её в актор эдитор. Смотрите тут. http://sigerous.ru/forum/322-208-992127-16-1356102148
  9. А при наведении курсора на Сидоровича надпись появляется? Типа сталкер такой то.
  10. Добрый день. Возник такой вопрос. У ГГ есть бустер - сканер телепортов. При использовании (активации) бустер подменяется другим предметом. Эта задача несложная. Но по моей задумке для успешной активации бустера нужен артефакт третьего ранга в рюкзаке ГГ. Как правильно написать функцию в общем виде? Функция должна вызываться из bind_stalker при использовании бустера. Функция должна проверить, есть ли в рюкзаке ГГ хотя бы один артефакт из списка (артефакт третьего ранга) и удалить этот артефакт из рюкзака. Если таких артефактов в рюкзаке несколько одинаковых или разных, то рандомно удалить один из них. Как правильно написать функцию в общем виде? Мне пока только последовательный перебор артефактов приходит в голову.
  11. Игра не может найти предмет ammo 12x76. Проверяйте файлы мода. Где-то должен упоминаться этот "коварный" патрон. В инвентаре НПС, в награде за квест, в тайнике, в качестве боеприпаса для оружия. Проверяйте везде. Когда найдете, исправьте ошибку, заменив патрон на ammo 12x76_zhekan. И вылет прекратится. Если лень искать, то можно добавить в игру патрон ammo 12x76.
  12. Добрый вечер. Я подключил к Зову Припяти локацию Кордон. Заселил её. Организовал симуляцию. Сделал, как в оригинале. Чтобы сталкеры утром уходили на прогулку а вечером шли на базу. Все работает как нельзя лучше. НПС утром дружно идут гулять, к ночи возвращаются на базы и ложатся в кроватки. Воодушевился успехом и решил в этом же скрипте запретить монстрам заходить на базовые смарты. И получил зеленое насекомое. 107 строка -- smart = { territory= { prec = function() return in_time_interval(6, 19) and target:name() ~= "esc_b1" and target:name() ~= "esc_b2" and target:name() ~= "esc_b4" and target:name() ~= "esc_b6" and target:name() ~= "esc_b7" end }, Чем то движку не приглянулось указание смартов. Вопрос - чем? Можно ли запретить в sim_board конкретным фракциям лезть на конкретные смарты?
  13. Предложили идею для сценария. Сделать локацию, какой она может быть. Со множеством трупов, сгоревшей техникой. И такую же локацию с нормальным заселением. Это пока так на уровне - наметки и прикидки. Если бы речь шла об одноразовом случае, то было бы просто. Расставил бы в СДК, то что надо. Потом убрал. А как спавнить то, что надо в процессе игры? Возможно, несколько раз. С другой стороны, разрабы мода Связь Времен два Лиманска делать не стали. У них там ГГ попадает в параллельную реальность. Вот и возник вопрос. Даст ли СДК собрать локпак с двумя одинаковыми локами, поймет ли этот фокус движок игры.
  14. Доброе утро. Встал такой вопрос. Возможно ли собрать локационный пак с двумя одинаковыми локациями? Например, Затон и Затон-2 Причем, Затон-2 копия Затона. Спавн ло копиях локаций предполагается разным. Движок и СДК поймут такой фокус? Или это напрасная трата времени?
  15. Добрый день. Возник вопрос по правильной работе этих диалогов. Скрипт, контролирующий диалог, в файле dialog_manager Добавил к традиционным для Зова Припяти пятую фракцию - военных. При попытке активации диалога с воякой ловлю жука. Со сталкерами диалог работает нормально. Где еще нужно прописать вояк, чтобы не вылетало?
  16. Добрый день. Возник вопрос. Есть идея - сделать патрульный вертолет. Чтобы летал над локацией и атаковал монстров, бандитов и зомбированнных. Как этого добиться и делалось ли это в каких то модах?
  17. С вертушкой разобрался. Сначала взял не ту модель. Теперь она красиво гудит и летает. Встала задача - НПС должен завалить её из РПГ. Выдал НПС РПГ. Вертушка у него над головой висит. И НПС палит не по вертушке, а куда то вдаль.
  18. Добрый вечер. Добавил в игру вертолет. При заходе на локацию с вертолетом имею жука stack trace: [error][ 87] : Параметр задан неверно. В чем может быть причина?
  19. Я бы написал так. Без рестрикторов. Неплохо было бы добавить функцию на передачу бутылки заказчику.
  20. В таком виде проверка не сработает. Надо разделить. Как то так. function has_item_task(first_speaker, second_speaker) -- проверка если у игрока есть предмет return db.actor:object("vodka") ~= nil end А поршень выдать отдельно. function has_item_task_1(first_speaker, second_speaker) db.actor:give_info_portion("plateau_quest_autobus_has_item") end Через рестриктор, например.
  21. Для начала. Во втором диалоге на передачу водки предусмотрено разветвление. Водка есть - водки нет А вот перехода на 4 фразу с первой нет. <phrase id="0"> <text>Насчет водки...</text> <next>1</next> </phrase> Должно быть что то вроде. <phrase id="0"> <text>Насчет водки...</text> <next>1</next> <next>4</next> </phrase>
  22. Добрый вечер. В Зове Припяти есть возможность скриптом задать ориентацию ГГ. Что то вроде. db.actor:set_actor_direction(0.035) Для НПС есть такая возможность? Нужно принудительно заставить НПС смотреть в заданном направлении. Логика валкер не подходит, НПС стоит не на сетке. Что нужно прописать в скрипте? Функция вызывается из логики этого самого НПС.
  23. Если ответ еще актуален, то можно сделать так. Сквад из уникальных НПС. У каждого НПС стори-ид. Команда на удаление =destroy_object(story:story_id_npc_1) =destroy_object(story:story_id_npc_2) =destroy_object(story:story_id_npc_3)
  24. Добрый вечер. В свойствах артефактов в вашем моде есть параметр. max_health_add = 0.00 ; Изменение величины здоровья 1 еденица = 0.01 (+ увеличение/- уменьшение) У артефакта af_black_angel он равен max_health_add = 0.15 ;+15 Здоровье должно вроде восстанавливаться. Но при помещении артефакта в слот разом отнимается 15% здоровья. Затем оно постепенно восстанавливается. Параметр в какую сторону работает?