Перейти к контенту

Скриптование


Svoboда

Рекомендуемые сообщения

7 часов назад, _Sk8_AsTeR_ сказал:

Кажется нашел, что искал. se_smart_terrain:register_npc( obj )

А зачем городить огород и делать это напрямую через скрипты управления смарт-террейнами? Ведь в кастомдате непися (еще перед его спавном) _зарнее_ можно прописать все доступные ему  гулаги, переключение между которыми должно осуществляться взаимоисключающим набором инфопоршней ( как выше АндрейСол и написал ).

Причем в таком варианте сразу  проверяется, не нарушаются ли где правила отправки в гулаги, чтоб не получить вылетов на голову ( хватает ли там места для этого нпс, не сидят ли там одни эксклюзивы, которых невозможно выгнать, есть ли доступные работы и т.д.).

Если же все это делать  "вручную" через скрипты  - это будет восход солнца вручную, и шансов где-то да накосячить - офердофига.
Нет, это конечно можно сделать - в ДШ-моде, например, сделано - но  потребуется уйма доп. работы.

Изменено пользователем Okichi
  • Согласен 1
  • Полезно 1

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение
24 минуты назад, Zander_driver сказал:

хочет сделать ПОЛНУЮ динамику перемещений нпс.

Во-первых, судя по тому, что человек только вот "прям щас" нашел/увидел  ф-ю, отвечающую за регистрацию нпс в гулаге, _полную_ он пока сделать не сможет. )
И каждому НПС это вряд ли  нужно( ибо НАФИГА какому-то первому встречному Васе Пупкину говорить, куда ему идти...), а имелось в виду некоторым "квестовым". 
Для десятка квестовиков - проще именно что не городить огорода.
 

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение
1 час назад, Stalkersof сказал:

Получается скрипт рабочий полностью.

Ну так а в логе-то при этом что написано?  Может, там и не в скрипте Выброса дело, а в том, что совпадает одновременно несколько событий, и какое-то крашит движок.

  • Полезно 1

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение

@phalcor емнип, чтобы зомби при ранении роняли оружие, в state_lib.script их секция должна выглядеть как-то так:

wounded_zombie = {weapon = "drop", -- вот это отвечает за дроп оружия на землю
                movement = move.stand,
                mental = anim.danger,
                bodystate = move.crouch,
                direction = look.cur_dir,
                animstate = "stand",
                animation = "wounded_zombie"
            },
 

Изменено пользователем Okichi
  • Нравится 1

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение
4 часа назад, mikelik сказал:

Чтобы не разбираться сильно в расстояниях "видимости" артов

Миша, у тебя сборка на основе 3.7 - а это значит, что все необходимое в скриптах там уже есть, я делала.
И в вотчере, и в амк_оффлайн_алайф добавлена обработка нового параметра из конфига, который говорит неписям " не сметь это трогать, оно тебе не надо от слова совсем".
Взято из ДШ-мода, само собой.
 
Единственное, что тебе нужно  сделать - это в базовой для всех твоих артов секции добавить вот такой параметр:
watcher_act.bad_item = true

Пример можешь посмотреть в artefacts_unique.ltx, там я вставляла этот параметр для  единственного квестового арта, который спавнился после диалога с Юриком как награда , чтоб этот арт тут же не воровали сидящие в лесочке сталки.
Ты же можешь добавить его прямо в секцию af_base

Изменено пользователем Okichi
  • Спасибо 1
  • Нравится 1
  • Полезно 2

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение
53 минуты назад, DenVer сказал:

Значит, разрабы накосячили с движком.

Ну при чем тут "накосячили с движком"? Уникальный ID ( а это в имени таки ID!) всегда добавляется в имя  _любому_ ( исключая специальные) создаваемому в игре  объекту.
Все тут нормально.

Причина вылета скорее всего в том, что при открытии инвентаря нпс срабатывает какой-то скрипт, который принудительно удаляет этот объект.
В НЛС - это бывает от работы скриптового " уборщика", тоже сталкивалась. 
@Капрал Хикс Вот что именно это такое в твоем случае - уже невозможно сказать без отладки и не ковыряясь собственно в используемых скриптах. 

  • Нравится 1
  • Согласен 4

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение

Наоборот же ) Если пачка - как раз проще удалить у актора и заспаунить где надо. А вот если что-то  уникальное (с  еще где-то используемым id и/или story_id, например, или с неудобочитаемой кастомдатой) - тогда уж трансфер. 

  • Согласен 1

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение

@ted.80 И еще очень интересно узнать - зачем  ЭТО вот надо автору исходного поста)

  • Согласен 1
  • Сомнительно 2

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение

@Zander_driver Затем, что если знать, ЧТО именно человеку нужно - можно иногда подсказать более рациональный и" нормальный" способ сделать что-либо. 
А не городить странных конструкций только потому, что человек думает, будто то, что он просит - _единственный_ способ решения его проблемы.

Посмотрите хоть в соседней теме по ковырянию - там просили (прости господи) анимки для ручного указания стэйтов мутанту. Вместо нормального использования моб_хоума с логикой.
Или в этой же теме  -  эпопея с пачкой патронов.
Всегда, чтоб продуктивно помочь -  надо знать, какая конечная цель.
 

  • Согласен 3
  • Полезно 1

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение

@Zander_driver , ну, например - в данном случае полезно бы знать, является ли искомый предмет ( который надо найти в инвентаре непися ) - уником, или это снова "пачка патронов". Если это уник - совсем не надо цикл на 65 тыс, достаточно получить серверный объект этого уника ( по ид, по стори_айди, по имени, по хранимой переменной - как там он изначально определялся ) - и проверить ТОЛЬКО для него его текущего парента. 

Вряд ли подобные данные можно считать военной тайной, не раскрываемой ни при каких условиях...

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение

@Black_Raven_03 если удаление двух вполне конкретных _статичных_ аномалий нужно сразу после отключения О-сознания, то зачем здесь такие сложности с вычислением расстояний и перебором всех объектов, да еще все это повешенное на биндер?

Две эти  аномалии имеют вполне конкретные гейм и левел вертексы, и однозначно заданные имена, если они прописаны в аллспавне. 

Почему не сделать обычный экшн по получению инфопоршня на отключения О-Сознания ( там такие в оригинале, емнип, и так выдаются, ну если не выдаются - выдать самому).

Т.е. как только выдан поршень - автоматически выполняется скрипт на отключение/удаление объектов аномалий по их именам.

 

Может, конечно, я неправильно поняла задачу - но если это аномалии из аллспавна, то и удалять их можно по именилокации-именианомалии-гейм-левелвертексуаномлии. И никакие другие проверки не потребуются.

  • Спасибо 1
  • Нравится 1
  • Согласен 4
  • Полезно 1

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение
10 часов назад, Zander_driver сказал:

Есть script vars storage.

Тут вопрос возник - а разве в движке  ОГСР нельзя делать любых ( нужных автору ) неписей совершенно неуязвимыми для любых аномалий? В версии ОГСР в dsh-моде такое было, емнип. Потому что когда перетаскивала в NLC обходчик аномалий оттуда, то вот именно этот кусочек скрипта был "движково-ориентированный", и его  адаптировать не удалось.

Или там  в чистом ОГСР своя версия движка? А то, может, человеку просто надо добавить в какой-нибудь конфиг имя своего уникального механика, и поплевывать этот механик будет с высокой колокольни на все аномалии, будь их хоть миллион...

Изменено пользователем Okichi

След от кругов на воде - это тоже след (с)

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...