#- ///////////////////// ЮНИТ ///////////////////// > @Основное: - - Автор - параметр который показывает создателя и может быть изменен на что угодно - связан с именем папки в профили сервера Dayz BotMap_Unit - - Название - имеет 2 поля, текстовое и номерное, номерное нужно чтоб автоматически при копировании юнита менять цифру на + 1 тем самым создавать еще юнитов с теми же параметрами но другими именем - заспавнить 2 юнитов с 1 именем нельзя. - - Координаты - меняются если передвигаете его по карте, если нажать "set my pos" впишутся ваши координаты персонажа. - - Направление куда юнит смотрит - можно изменять через округление с права. - - Пол и Юнит - выбираем скин. - - Вражеские фракции - тем кого будет считать юнит врагами - - Группа / метка - обязательное поле, если вписать стимайди этот игрок станет главой, если боты в 1 группе они идут следуют за главным тот кто был создан первым, если вспутают в группу то тот кто вступил первым будет лидером. - - Группа врагов / метка - если вам выбрать конкретную группу или метку на кого бот будет нападать - - Дружественные группы / метка - перекрывают и вражеские фракции и вражеских групп и даже целей, бот их не считает целью - - ❗️Игнорировать дубликаты - включенная функция позволяет спавнить несколько юнитов с 1 и тем же айди - - Будет ли спавнится бот при старте сервера. не обязателен параметр если бот будет заспавнен через поинт или триггер.
#@Поведение - Выбор цели - кем будет считать бот цель - - "врагом" - будет стрелять если у бота есть цель через триггер или если на бота напали, - - "все"- по сути аналог функции фракции но со всеми галочками и игнорирует группы - - "вражеские франции" - все кто только вражеская фракция считается другом, - - "нет" - пацифист. - - "враг" - тот кто нанес урон ему или тем кто из его группы или нанес урон или стал целью через триггер и тд, а так же кто во вражеской фракции или группе - Тип поведения - - "нападение" - если появилась цель - будет приближаться и нападать. - - "преследование"- будет преследовать но не нападать, мелишник 2 метра - стрелок - 6 меров. - - "убегай" - если есть цель будет убегать как можно дальше пока не потеряет из виду. - - "продолжай работать" - игнорирование целей. - - "отступление" - будет отступать но будет атаковать. - - ❗️"обходить" - бот будет искать укрытия в радиусе действия параметра преследования и атаковать
#- Класс - - Мелишник- атакует холодным оружием. - - Стрелок - огнестрельным оружием. - Следовать за лидером -если в группе более 1 персонажа - будут держатся в месте и следовать за лидером. - Действие с оружием - всегда в руках или брать в руки когда есть цели или не брать в руки вообще. - Тип путевой точки: - - "зацикленный" - будет по кругу ходить от 1 до последней точки и снова 1.(требуется минимум 2 точки) - - "в перед назад"- будет идти 1 точка 2 и 3 и тд, а потом 3 точка 2 и 1...(требуется минимум 2 точки) - - "дойти докоца" - когда дойдет до конца остановится если нет интеллекта. (требуется минимум 1 точка) - "сменить интеллект через" - меняет интеллект через заданное время. - "интеллект" - вписываем имя интеллекта. - "тип стойки" в ожидании поинта
#@Дополнительное: - Возможность диалога - включает вызов на F диалог с ботом рядом с ним - Скрыть диалог - скрывает кнопку F у юнита рядом с игроком - Диалог - имя диалога из раздела диалоги - Имя бота - имя бота которое будет показываться в диалоге. - Возможность торговли - привязывает бота к ящику в который он будет класть и брать лут при торговле - ❗️Идентификатор контейнера - айди из раздела контейнеры, если поле пустое, бот кладет и берет лут из своего рюкзака. - Сет - лут который будет спавнится при спавне бота или при смене интеллекта с включенной функцией сета, если указать несколько сетов через знак ; будет выбран случайный сет из списка или выдавать случайны лут через триггер(других способов создать разный лут у одних и тех же ботов нельзя и не планируется добавлять в будущем) - Частота Голоса - пока не включено -Голосовой сет - заготовленные фразы из раздела голосовые сеты которые юнит будет произносить
#@Эффекты - Отключить кровотечение - отключает у юнита кровотечения от любых повреждений. - Отключить повреждение от - отключает повреждение от конкретного типа объекта - Отключить повреждение в - отключает повреждение на конкретное часть тела - Повреждение при смерти - когда юнит умирает выбранный слот и все что внутри слота получает 100% повреждение
#- @Расширенные - - Коэффициент точности -(старая стрельба) определяет на сколько большой разброс в метрах будет у выстрела - - Дальность видимости - дистанция в метрах при которых бот будет видеть цели - - Шанс промаха - процент нанесения урона если бот попал в цель где 100 это всегда промах.(старая стрельба) - - Случайные точки - куда бот будет стрелять: в руки, ноги, голова, туловище, если отключено стрельба всегда в торс(старая стрельба) - - ❗️Радиус столкновения - бот видит игрока путем стрельбы некого "лазера" из своих глаз в точку игрока, та же он и стреляет через старую стрельбу, если увеличить радиус то есть толщину лазера значит боту потребуется большая часть видимости игрока - - Убрать урон технике - если включено то бот не замечает технику к которой приклеен или не замечает технику в которой сидит игрок и урон наносится прям в персонажа.(старая стрельба) - - Дистанция преследования - универсальная функция которая используется в режиме преследования, в режиме отступания, в режиме идти в группе. - - Высота полета - вертолета если бот пилот, и не указаны поинты - - Враг очень близко - что бот будет делать в таком случаи - - Новая стрельба - если установлено "нет" то будут работать (Коэффициент точности, Шанс промаха, Случайные точки, Убрать урон технике), новая стрельба использует баллистику оружия, по этому невозможно точно определить место попадания из за кучи факторов - - отключить симуляцию - дальше от 1200 метров от игроков бот замирает и не нагружает сервер(фпс падает до 10-20 на 1 бота)
#- - скорострельность - скорость выстрелов(новая стрельба) - - Не враг - будут ли животные или зомби нападать на бота - - Коэффициент урона - можно увеличить или уменьшить урон(старая стрельба) от 0.0001 до 10000 https://sibnic.info/blog/botmap/botmap-memo-temp.html#1139955479431360512 - - ❗️Скорость паркура - через сколько секунд после того как бот упрется в объект он попытается через него перелезть или телепортироваться (если ставить меньше 1 секунды возможны ложные срабатывания) - - ❗️Маневрировать - на скорости "спринт" бот начинает отклоняться в разные стороны чтоб по нему было сложнее попасть. - - Debug - включает видимость точек меш путей через горящие фальшфейеры - - ❗️Ночной коэффициент - на сколько умножается дистанция в приоритетах целей ночью - - ❗️Осмотреться - бот начинает осматривается в разные стороны(так как бот не видит если кто то находится не в его поле видимости) - - ❗️Частота оглядывания - какое время в секундах он будет осматривается. - - Макс. дистанция от поинтов - пока не работает
#- - ❗️Актив QE - если у бота есть подходящая возможность, он выглядывает из за угла для стрельбы - - ❗️Update Targer - время реагирования бота на появление цели(можно использовать чтоб делать бота более вялым) - - Damage Reduction - пока не используется
#- ❗️@Другое - Приоритет целей (первый параметр с лева это дистанция, с права это балы) цель получившая больше балов становится приоритетной - - Copy - копирует приоритет целей в буфер, для копирования в другого юнита - - Paste - вставляет из буфера приоритет целей - - Default - приоритет целей ставит на стандартные параметры(те что были протестированы и выбраны как оптимальные) - - - Расстояние - чем ближе тем больше балов где 0 дистанция до бота это 100% балов - - - Звук шагов - игрока, прыжка, падения игрока - - - Звук выстрела - - - - Звук выстрела глушитель - - - - Звук перезарядки - игрока - - - Звук транспорта - факт работы двигателя - - - Звук голоса - звук из голосового чата игрока - - - Огнестрельное оружие в руках - - - - Оружие ближнего боя в руках - любое колющее и режущее - - - Боевая стойка - при прицеливании или замахе - - - Сближение - вражеская цель уменьшает дистанцию - - - Он смотрит на меня - вражеская цель смотрит в сторону бота - - - Часто прячется - то на виду то пропадает из видимости - - - Видит в транспорте - видит цель в транспорте - - - Видит зомби - видит зомби - - - Видит животное - видит животное
#- Создать - Редактировать - диалог: - - Автор - Тот на чьем прифеле будет диалог - - Название - Название диалога на английском которое нужно будет вписать в юнита. - - Текст Игрока - Текст игрока который появится при типе 2 - - Текст Бота - который появится после в приветствии бота. - - Тип Диалога - 1 и 2 тип(1 аля ведьмак, 2 аля персона) - - ❗️Движение с диалогом - дает возможность при открытом диалоге двигатся, лучше подходить для 3-го диалога - - Спавнить при запуске сервера - обязательное значение чтоб увидеть этот диалог.
#- Диалог - Structure: - - Добавить - добавляет под диалог - - Добавить в- добавляет под под диалог - - Удалить - удаляет под диалог - - Редактировать - редактирует под диалог - - Закрыть - закрывает меню без сохранения.
#- Создать - редактировать под диалог - Основное: - - Название - просто название выводится в списке - - Текст Игрока - то что выбирает игрок - - Текст Бота - то что показывается в типе 2 ответ бота.
#- Создать - редактировать под диалог - Условие: - - Метка - имя метки из раздела метки - - Имеется метка- если есть задание у игрока то под диалог показывается. - - Условия метки выполнены - если метка на лут и лут есть в инвентаре или руках. - - Всегда отображать - отображается или нет этот с условием метки - - Число - диапазон значения метки (если поставить -1 то метка будет уменьшатся) - - ❗️Текст - информацию смотрите в создании метки - - Условие выполнено скрыть - то есть если метка есть а надо скрыть диалог.
#- Создать - редактировать под диалог - Действие 1: - - Сменить интеллект - меняет интеллект бота - - Сменить диалог - меняет диалог бота - - Назначить игрока лидером - боту выдает группу игрока(группа игрока это его стим айди) и бот ходит и защищает игрока. - - Назначить таргет целью - бот начинает считать игрока целью - - Покинуть группу - бот покидает группу игрока и возвращается в свою - - Открыть меню торговли - показывает меню торговли - не реализовано. - - Тип торгового окна - выбираем тип меню из базовых. - - Уникальное меню - указываете полный путь на свое меню и используется оно. - - Трейдер - указываете имя трейд цены из раздела трейдер - - Метка - ищет метку у игрока - - Выдать метку - выдает метку игроку по полю "метка" - - Выдать награду - выдает награду игроку за метку в поле "метка " - - Сбросить метку - удаляет метку игрока в поле "метка" - - Число - число для метки(если метка уже есть то прибавляет это число работает только с выдать метку) - - ❗️Текст - текст для метки, метка может принимать параметры (time, target, target_class, target_hands, target_uid, slot=имя слота, target_hands_class, parent, parent_class, parent_uid, parent_hands, mark1=имя метки, mark2=имя метки) - - Вызвать функцию - выполняет скрипты enfusion - описание есть дополнительно - - Заспавнить триггер - спавнит триггер - - В координате юнита - спавнит триггер в координате того с кем открыт диалог(парент) - - Удалить триггер - удаляет триггер
#- Создать - редактировать под диалог - Действие 2: - - Открыть диалог - открывает другой диалог удобно если под диалогов много и таким образом диалогов может быть бесконечно - - Назад - возвращает на тот же выбор что нажат - - Назад назад - возвращает на 1 ступень назад. - - Начало - возвращает в начало - - Закрыть диалог - закрывает диалог.
#- ❗️///////////////////// Меню AI ///////////////////// - - Взять под контроль - выбираете бота и нажимаете на кнопку и вселяетесь в этого бота(все функции бота в это время засыпают) - - Обновить - обновление списка ботов - - Свободная камера - включается режим 3D карты где можно увидеть юнитов, поинты, триггеры и тд визуально в 3д(вернутся в режим 2D на кнопку "i" и на неё же снова включить 3D - - - если в 2D скопировать поинт на "ctrl + C" и в 3D его можно вставить "ctrl + V" на крестик в центре экрана - - - так же работает создание юнита, поинта триггера и тд - все что в режиме 3D видит админ не видит игрок(это локальное создание) - - - на пробел телепортируется тело админа на координату крестика - - Вернутся в свое тело
#- ///////////////////// ПОИНТЫ ///////////////////// > @Основное - Координаты - - Скорость - скорость с которой он будет двигаться до следующей точки. - - - Авто - бот выбирает сам. - - - Спринт - очень быстрый бег - - - Бег - бег трусцой - - - Ходьба - -Стойка - положение тела бота - - Лежа - - Сидя - вприсядку - - Стоя - Задержатся на месте на - время сколько бот будет ждать на точке (от 0.01 до 1 000 000) (задержка нужна если вы хотите выполнить звук, анимацию или эффект иначе бот сразу перейдет к следующему поинту и не будет выполнять что нужно) - Уникальное имя - имя для изменения конкретной точки через триггер - Осмотреться - бот не видит спиной по этому ему нужно увидеть цель глазами чтоб отреагировать - Радиус срабатывания - дистанция на которой сработает точка - Взять координаты юнита - если нужно чтоб точка выполнилась но бот не менял своих координат
#- Copy - все настройки путей можно скопировать в буфер. - Paste - вставить в любой поинт ране скопированные пути в буфер. - Default - выставить стандартные значения. - если убраны все галочки включается стандартное значение. - Типы меш путей - эти параметры отвечают по каким видам поверхности бот будет строить пути между точкам поинта. - - Нет - не генерировать пути вообще. - - Ходить- общая поверхность - - Отключенный полигон - вероятно где нет путей - - проходить через двери - - - перемещаться внутри зданий - - - плавать (в воде) - - - плавать (в морской воде) - - - взбирайтесь по лестницам - (боты не умеют пока этого делать) - - делать прыжки - через объекты - - прыгать в низ - спрыгивать - - подняться - подтянуться на вверх - - ползти - - - скорчится - приседать - - НЕДОСТИЖИМЫЙ - нет идей...
#- Приоритеты меш путей - эти параметры от 1 до 100 отучают за приоритет поверхностей, чем ниже число тем приоритетней будет путь, например если у воды стоит цифра 1 а у асфальта 2 то бот с большим шансом пойдет в плавь до нужного места. - - NONE - не генерировать пути вообще. - - Местность - Любая поверхность по которой можно построить путь - - ВОДА - - - Река глубокая - - Море- - - Море глубокое- - - Объекты отсутствуют- Местность без препятствий - - Объекты - - - ЗДАНИЕ - - - Дорога- - - Дерево- Лес с деревьями - - Движение в здании- - - Дверь открыта- Открытая дверь - - Дверь закрыта- Закрытая дверь - - Лестница - ЛЕСТНИЦА Вертикальная(боты пока не умеют по ним лазить) - - Ползти-узкие места где нужно ползти. - - Скорчится-узкие места где нужно в присяди идти. - - Стена забора - - - Прыгать-Места где нужно перепрыгнуть(паркур)
#- Создание путевой точки для юнита Действие: - - Радиус - радиус поиска. - - Задержка - время через сколько выполнить - должна быть меньше чем "Задержатся на месте на" - - Действие - что сделать с предметом - - - нет - - - взять - - - положить - - Откуда - где искать предмет - - - с земли - - - с контейнера - - - с мертвого тела - - - с инвентаря - - Куда - куда положить предмет - - - Руки - - - Инвентарь - - Контейнер - класс контейнера - - Предмет - класс предмета - - Сесть в транспорт - садится в любой транспорт указать имя класса (управлять можно только вертолетом сиб) - - Место в транспорте - от 0 (0 это водитель) - - Выйти из транспорта. - - Взаимодействовать с вертолётом - если бот на месте пилота он может управлять вертолетом. - - Действие в вертолете - пишете класс вертолета. - - Высота - примерная высота на которой вертолет будет находится(она может меняться в зависимости от скорости полета) - - Скорость - скорость с которой вертолет будет лететь(но стоит учитывать что перед резкими поворотами бот будет снижать скорость чтоб вписаться в поворот, и иногда надо увеличивать размер срабатывания поинта чтоб бот не проскочил поинт и ему не пришлось возвращаться) (так же скорость умножается на 2, по этому если вам нужная 50км/ч пишите 25) - - Стрелять по координатам - бот стреляет в заданные координаты - - Количество выстрелов
#- - Прикрепить - дает возможность приклеить бота к объекту или объект к боту - количество приклеивании не ограничено. - - Имена объектов - через запятую, имя классов - - Тип - - - К объекту - приклеивает бота к объекту, например к вертолету для имитации режима гуннера. - - - К игроку - приклеивает какой то объект к боту, например к невидимому боту приклеить акулу - и заставить его плавать - будет казаться что плавает акула. - - Кость - получает координаты любого селекта внутри п3д модели или бота или объекта и приклеивается к этой точке. - - Координаты - координаты по отношению к центру объекта или бота где начальное число 0 0 0 - - Направление - выставляет градус приклеивания(может работать не корректно) - - Открепить - отклеивает объект или бота от объекта - - Объекты - к какому объекту применить - - - Анимация объекта - - Объекты телепорт в - - Заспавнить триггер - имя триггера который нужно заспавнить. - - В координате точки - сменить координату триггера на ту что указана в точке(если указана координата бота то будет координата бота) - - Удалить триггер - удаляет триггер по имени - - Заспавнить ботов - спавниит ботов с именами - - В координате путевой точки - спавнит в координате точки - - Удалить Ботов - удаляет ботов по имени с карты - - ❗️Заспавнить Объект - спавнит любой объект в центре поинта(чтоб бот находидся дальше от центра, ставьте больше размер поинта - - Вызвать функцию - работает с кодом enfusion(есть подробное описание отдельно)
#- Создание путевой точки для юнита Анимации: - - Название - выставляется после выбора, чтоб убрать нажимаем на красный крестик с права. - - Задержка - через какое время начать выполнять - - Зацикленный - нужно ли повторять - работает не на всех анимациях - - Тип - выбирайте тот который работает(проверит какой подойдет для конкретной анимации программно не возможно) - - Поиск - ищет по совпадению без учета регистра
#- Создание путевой точки для юнита Звук: - - Проиграть звук - выбирается 1 или несколько файлов - (если несколько то проигрывается случайны из списка выбранных) - - Задержка - время перед запуском. - - Продолжительность - время выполнения. - - Зацикленный - повторять - - Voice - громкость - - Частота голоса - скорость проигрывания(ниже более низкий, выше более высокий) - - Up Y - высота точки звука
#- Создание путевой точки для юнита Эффекты: - - Поиск - имя дяя поиска эффекта - - Название - выбирается нажатием на "найденные эффекты" - - Задержка - время перед выполнением. - - Продолжительность
#- Создание путевой точки для юнита Эффекты настройки: - - Cone angle - - Limit Offset - - Random Angle - - Random Rot - - Sort - - Wind - - Repeat - - LifeTime By Anim - - Anim Once - - Rand Frame - - - LifeTime - - LifeTime RnD - - Effect Time - - Current Time - - Active Particles - - Avelocity - - - Velocity - - Velocity RrD - - Air Resistance - - Air Resistance RrD - - Size - - Stretch - - - Birth Rate - - Birth Rate Rnd - - Gravity Scale - - Gravity Scale Rnd - - Spring - - Up
#- ///////////////////// Триггер ///////////////////// - - Автор. - - Название. - - Координаты. - - Тип формы. - - Ось Х - - Ось Z - - Ось Y - - Высота срабатывания - высота формы по оси Y - то есть высота при которой если выше координат Y что то появляется и условие совпадает то срабатывает - - Тип - - - - Статический - установлен и может сменить позицию только если его заспавнили через другой триггер или поинта или диалог с условие спавн в центе, - - - ❗️Динамический - привязан к координатам бота, чье имя написано, двигается в месте с ботом, если поле пустое то динамический триггер можно привязать к перенту(любой двигающийся объект) - - Имя Бота - - Смещение высоты - по умолчанию координата бота это координата на уровне ступней.
#- - Время активации - создает задержку выполнением после того как сработало условие. - - Активация после N срабатываний - не выполняет действия триггера пока не будет нужного количества активаций по условию - - Повтор на тот же объект - если в условиях выставлено поиск объекта, количества или других условий которые не требуют изменений то триггер будет выполняться бесконечно через каждый промежуток времени установленный здесь. - - Задержка перед запуском - через сколько триггер начнет работает после спавна. - - Авто удаление триггера после - через сколько удалить триггер после спавна. - - Координаты смещены по цели - центр триггера смещается на координату таргета на который сработало условие - - Координаты центра триггер смещены случайным образом при выполнении условия, не меняя расположение триггера - - Время на сервере Dayz - время на вашем хостинге. - - Время спавна - в какое время по вашему времени хостинга надо заспавнить триггер - - День спавна - по вашему хостингу когда надо заспавнить - - ❗️Частота выполнения - как часто триггер будет выполнятся после срабатывания, в не зависимости тот же таргет или другой - - Спавнить при запуске сервера.
#- @ Создать триггер - Условие: - - Активируется на ... - на кого сработает триггер в блоках ниже, учитывайте букву в скобках - - - A- животное - - - Z - зомби - - - P - Player - - - B - Бот - - Зашел - Зашел в область триггера - - Боевая стойка - встал в боевую стойку удара или прицеливания - - Выбросил предмет - использовал бросок на предмет - связан с полем предметы - - Сдвинулся с места - расстояние до центра триггера изменилось - - Отслеживание Анимации - у предметов проверяется еще и анимация и выполняется при совпадении условий. - - - Вышел - вышел из облости триггера - - Получил урон - - - Взял Предмет - поднял предмет с земли - - Предмет в инвентаре - есть ли предмет в инвентаре проверяется поле предметы - - Объекты внутри - проверяется количество объектов внутри триггера(работают на A,Z,P,B и объекты) - - - Выстрелил - выстрелил из оружия. - - Активировал вейпоинт - бот наступил на вейпоинт с именем в поле "уникальное имя вейпоинта" - - Убрал предмет - положил предмет на землю. - - Пуля - пуля попала в область триггера - таргет тот кто выстрелил - - Цель - если у бота появилась цель на него срабатывает триггер. - - - Умер - - - Обновился слот рук - если в руках появилось что то новое или пропало. - - Никаких условий - триггер просто выполнится без таргета и перента. - - - Убил - и выбор кого. - - Нанес урон -и выбор кого. - - Труп - и выбор кого. - - Количество объектов - цифра количество живых внутри триггера, при 0 он срабатывает сразу при спавне и повторяется по условию "Повторное выполнение в триггере"
#- - Предметы - список предметов на которые срабатывает триггер по условию, (выбросил, взял, в инвентаре, убрал, обновил слот рук) - - Анимация предмета - анимация предмета имя анимации и положение - - Объекты - имя объекта на которого сработает триггер(нужен класс) - - Анимация объекта(если у объекта есть нужная анимация и её положение) - - Уникальное имя вейпоинта - для поля "Активировал вейпоинт" - - Активные метки - имя квеста который есть у игрока - - Число - количество активных меток равно или больше - - ❗️Текст - информация в метках - - Активные слоты - активные слоты, например в руках что то есть или есть повязка или на голове есть что то.
#- - Сообщение - условие выполняется если фраза совпадает с этим полем(если в чат написать перед сообщением % то сообщение не будет видно другим игрокам) - - Точное совпадение - если фраза совпадает в точности. - - Инверсия Перент и Таргет - перент и таргет меняются местами(таргет это тот на кого срабатывает триггер) - - Наследовать Таргет - если этот триггер был создан создан через другой триггер, диалог или поинт, то наследование идет от туда, если из триггера(то наследуется таргет из прошлого триггера) если из диалога(то наследуется тот у кого открыт диалог) если из поинта(то наследуется цель бота) - - Унаследовать перент - как и с наследованием таргета, только перент должен присутствовать, в диалогах это бот, в триггере это прошлый перент. - - Совпадение таргета - эта функция позволяет создавать несколько условий путем последовательно спавна триггеров друг другом, (получается цепочка в виде условий где таргет может быть только тем кто был в 1 триггере) - - Таргет класс - условие где можно написать класс таргета(например класс животного) то таргет сработает только на этот класс животного. - - Нет - обратное по таргет класс - будет все кроме этого класса. - - Перент класс - в тех случаях когда есть перент проверяется его класс. - - Нет - обратное по перент класс - будет все кроме этого класса. - - Клавиша нажата - если игрок нажмет клавишу на клавиатуре которую вы выбрали, сработает триггер на него.
#- Создать триггер - Действие таргета: - - Повреждать - нанести урон - - Сменить интеллект - сменить интеллект на бота - - Сменить диалог - сменить диалог на бота - - Симптом - на таргет передать симптом из списка - - Убить - - Удалить - удаляет любой таргет как объект - - ТТелепортировать в + сдвиг - телепорирует в координату, если стоит галочка сдвиг в базовом меню то с учетом сдвига - - Заспавнить в инвентарь - лут. - - Неуязвимый - включается неуязвимость у таргета пока он не перезайдет или не выключат через таргет. - - Боевая стойка - отключает возможность вставать в боевую стоку и целится пока не перезайдет или не выключат через триггер - - Возрождение - создает точно такого же таргета, если это у бота, животного и зомби есть айди то спавнит с учетом айди, если просто класс то спавни просто по классу - - В координате триггера - спавнит в центре триггера + если есть режим сдвига то может на месте таргета может в рандом точке триггера - - Не враг животным - хищники перестают нападать на таргета - - Не враг зомби - зомби перестают нападать на таргета - - ❗️Lock slot - заблокировать слот внутри тарета так что со слота нельзя снять лут
#- Создать триггер - Действие ботов: - - Имя бота - через запятую - - Повреждать - - Сменить интеллект - - Сменить диалог - - Симптом - - Убить - - Удалить бота - - Пропустить вейпоинт - если бот идет по вейпоинтам он пропустит 1 если условие сработает - - Назначит таргет целью - по условию на кого реагирует триггер становится целью для всех ботов кто в списке имя бота - - Сброс назначенных целей - обнуляет список целей - - Назначить таргет целью - всем кто в триггере- все боты кто в триггеры получают цель того кто выполнил условия триггера - - Стрелять по координатам - центра триггера или по смещению центра - - Количество выстрелов - - ❗️Поинт в центре триггера - таким способом можно сменить координату именного вейпоинта
#- Создать триггер - Другие действия: - - Создать юнитов - создает ботов по списку - - В координате триггера - - Заспавнить контейнер - нужно имя класса или имя из графы контейнеры - - В координате триггера - - Удалить контейнер - нужно имя класса внутри триггера - - Заспанвить объект - спавнит любой обьект(если это животные или зомби то и включает им симуляцию) - - В координате триггера - - Координаты - - Анимация объекта - - Удалить объект
#- - Заспавнить триггер - имя триггера или триггеров через запятую, если через знак ; то спавнится 1 из списка - - В координате триггера - - Спавн при старте сервера - после спавна триггера с этим параметром он будет спавниться после рестарта сервера. - - Удалить триггер - если поле пустое триггер удалит сам себя после выполнения - - Объекты - имена классов или айди зомби или животных - - Анимация объекта - меняет анимацию нужному объекту - - Объект телепорт в - - Предметы телепорт в - предметы из условий. - - Проиграть звук - если звук больше 1 выполняется случайный из списка - - Выдать метку- имя метки.
#- - Число - метки (если поставить -1 то метка будет уменьшатся) - - ❗️Текст - описание в метках - - Удалить метку - - Спавн при запуске сервера- после выполнения триггера сохраняется эти данные то есть если триггер заспавнил не запуск сервера Dayz а другой триггер или поинт с включенным сохранением после выполнении он будет спавниться при старте сервера Dayz - - Отправить сообщение - в чат - - Вызвать функции - описан отдельной инструкцией ниже, можно вызывать код скриптов Enfusion
#- - Интеллект - работает с галочкой "эвент" не требует спавнить юнита, спавнится автоматически невидимый юнит, после выполнения поинтов интеллекта сам удаляется. - -Открыть диалог открывает диалог между 2 объектами, таргетом и перентом - - Имя бота - назначает бота перентом для диалога. - - Перент - берет перент из триггера для диалога - перентом может быть другой игрок - - ❗️Спавн из файла - указываете на файлы json и dze от мода dayz editor который находятся в папке сервера(если файлы находятся в папке ботмап то путь будет такой $profile:/BotMap_sib/1.dze на сервере Dayz и клиенте должны быть установлены все PBO, которые были на сервере, где вы создали файл json или dze. Если файлов нет, сервер Dayz не будет знать, что создавать.
#Галочки в триггере которые не нагружают сервер Dayz вообще так как отслеживаются на стороне клиента, можно ставить хоть 1000 хоть на 10 000 метров, нагрузка будет только когда сработает триггер только в момент срабатывания: - Игрок: - - Зашел - - вышел - - активный слот - - предмет в инвентаре - - анимация предмета - - сдвинулся с места - - метка
- Эвенты выполняются только когда событие случается так же не нагружают сервер Dayz пока не случится событие хоть 1000 хоть на 10 000 метров, нагрузка будет только сработает эвент для выполнения триггера - - убил - - умер - - получил урон
#- ///////////////////// Метки ///////////////////// - - Добавить - - Удалить - - Редактировать - - Сохранить - если файл не сохранить то файл не будет работать - - Закрыть.
#- Создать и редактировать метку - - Автор - - Название - название на английском - - Тип метки - - - Принести предмет - метка будет выполнено когда у игрока в руках или инвентаре будет предмет нужный и в диалоге выбрано выполнить метку. - - - Простая метка- если в диалоге или триггере выбрано выполнить или удалить метку. - - Принести предмет - имя класса предмета или через запятую - - Награда - имя класса предмета или через запятую - - ❗️ Награда сет - имя сета для награды - - ❗️ Число - начальная цифра в метке - - ❗️Текст - текст для метки, метка может принимать параметры (time, target, target_class, target_hands, target_uid, slot=имя слота, target_hands_class, parent, parent_class, parent_uid, parent_hands, mark1=имя метки, mark2=имя метки) - - ❗️ Время жизни - время жизни метки после получения - - Спавнить при запуске сервера Dayz - обязательный параметр если нужно включить метку в том числе и без рестарта.
#- ///////////////////// Сеты ///////////////////// - - Добавить - - Удалить - - Редактировать - если нажать редактировать сет, сменить имя и сохранить, то старый сет можно загрузить из загрузок в итоге это способ копирования сета - - Сохранить - - Закрыть
#- Создание и редактирование сета: - - Название - связано с полем сеты в юните, контейнере, технике. - - Поиск - ищет по имени класса или описанию - - Найденные предметы - кнопка добавить добавляет если в инвентаре у бота есть место, кнопка "C" копирует в буфер имя класса. - - Одетые предметы - учитывайте очередность для оружия, сначала спавниться само оружие потом его обвесы - - Автор - - Тип - - - Юнит - лут будет спавниться на юните при спавне. - - - Контейнер - в контейнере. - - - Машина - спавнится в инвентаре - - - Лодка - спавнится в инвентаре - - - Вертолет - спавнится в инвентаре - - М-Ж он же класс - чтоб определить вместимость если и внешний вид. - - ❗️Цифра возле буквы C - означает количество в мл и в шт
#- ///////////////////// Голосовые Сеты ///////////////////// ❗️то что помечено (off) еще не работает - - Смерть - - Hit - - Hit Friend - - Тревога - - Обход - - Прикрывающий огонь - - Перезарядка - - Тревога граната (офф) - - Тревога дружественная граната - - Panic Human - - Panic Monster - - Союзник был убит - - Убивать раненых - - Враг тяжело ранен - - Враг убит - - Атаковать без союзников - - Атаковать с союзниками одного врага - - Атаковать нескольких врагов вместе - - Поиск без союзников
#- - Поиск в месте сс союзниками - - враг потерян - - враг потерян есть союзники - - Бросить гранату - - Выбрана цель - - Присоединился к группе - - Покинул группу - - Сменился Интеллект - - idie - - Убирайся от сюда - - Убери свое оружие - - Наезжать - - Talk NO - - Никого го холодного оружия - - без оружия - - Talk leader - - Post combat wait - - Post combat relax - - Я услышал какой то шум
#- ///////////////////// Удаление объектов ///////////////////// - - Поле с типами объектов - - - Поле с типом "все" показывает всех кто заспавнен через мод, система dayz сделана так что нельзя заспавнить юнита с таким же именем если на сервере Dayz уже есть живой юнит с таким именем. так же почти со всеми пунктами. - - - Поле Задание - показывает все задание которые взяты у игроков - можно удалять их если вы решили обнулить задание, не показывается в поле "все"
#/////////////////////////////////// Вызвать функцию ///////////////////////////// один и тот же параметр в 3 местах 1. Другие действия в триггере 2. В диалогах выполнение 1 3. в Вейпоинте. По сути это прямой код игры DayZ Enscript и по сути это язык программирования, а значит это сложно и не просто нажать кнопки но это debag функция, до того как добавить кнопку мы тестируем её здесь.
#теги для «вызова функции» target - как правило, на кого срабатывает триггер parent - противоположность цели — или, если убийца является целью, то родитель убит, и наоборот, и т. д. child - если целью является транспортное средство, то ребенок - пилот 1, если нет, то пилот 2 hands - руки target , или parent , или child crewarray - массив всех, кто находится в транспортном средстве, если транспортное средство является целевым или родительским или дочерним Creuparray[0] itemarray - массив контейнеров, если добыча является целью, родительским или дочерним элементом или примером рук itemarray[0] text_array — текстовый массив, если триггер ловли фразы в чате работает по принципу разделения слов пробелом 1 слово text_array[0] , второе слово text_array[1] и так далее это для отдельного выполнения функции мода Botfunctions AIfunctions
For example Botfunctions.Add_Task_Server("kill",uid,"76561198197506368",1); - поставить метку kill - имя метки uid - идентификатор человека, который получает "76561198197506368" -тег автора 1 - номер метки
но вам нужно знать его UID, а это значит, что вам нужно выполнить этот код перед меткой
PlayerBase user = PlayerBase.Cast(child); PlayerIdentity identity=user.GetIdentity(); string uid=identity.GetPlainId(); Botfunctions.Add_Task_Server("kill",uid,"76561198197506368",1);
Да, это сложнее, чем нажать кнопку, но это быстрее, чем ждать, пока мы добавим нужный вам вариант исполнения. Я добавлю больше параметров и примеров
#///////////// Трейдер //////////// Он же бартерный трейдер - Название - Имя для сохранения - Автор - автор на кого трейд меню сохранится - ❗️Размер предмета - размер предмета для меню 3 где визуально они видны, минимум 3 - ❗️Контейнер - трейдер продает лут создавая временный контейнер и кидая в него лут, контейнер может открыть только купивший, контейнер исчезает через 15 минут или если контейнер стал пустым(исключая вариант где купленный лут может пропасть если у игрока в инвентаре мало места) - ❗️Другой контейнер - можно указать любой другой класс контейнера но у него не будет функций удаления и видимости только купившему, так же если оставить поле пустым, лут будет кидаться в инвентарь игрока но если места нет лут пропадет.
#- Название - отвечает за параметр в диалогах когда вы включаете трейд меню - Поиск - показывает лут о котором знает сервер Dayz в том числе и базовые классы - Search type - ищет по классу, если вписать класс с этой галочкой то поиск найдет весь лут где имя вписанное в поиск будет классом от которого наследуются все классы - Price Buy - цена товаров которые покупает бот у игрока - Damage Buy - уровень повреждения который бот может купить - Price sell - цена за которую бот продает игроку лут из своего контейнера - Damage sell - уровень повреждения лута который бот может продать игроку - Limit Sell - максимальное количество лута которое бот может продать(влияет на Limit Coef Sell) - Limit Coef Sell - процент на сколько цена может упасть при продаже игроку связано с Limit Sell(чем больше у бота лута чем дешевле он его продает) если значение 0 не доступно для покупки но видно, -1 скрыть - Limit Buy - максимальное количество лута которое бот может купить у игрока(влияет на Limit Coef Buy) - Limit Coef Buy - процент на сколько цена может упасть при покупки у игрока при приближении к Limit Buy, значение 0 нельзя купить, -1 скрыть - Тип лута - весь лут, еда, одежда, магазины, боеприпасы, все остальное что не вписывается в список. - Продает - - Add - добавляет все что в разделе поиска(использовать лучше в месте с поиском, иначе добавится весь лут что знает сервер) - - Remove - удаляет все что есть в писке из поля цен(использовать лучше с поиском иначе удалит все из списка) - Покупает - - Add - добавляет все что в разделе поиска(использовать лучше в месте с поиском, иначе добавится весь лут что знает сервер) - - Remove - удаляет все что есть в писке из поля цен(использовать лучше с поиском иначе удалит все из списка) - Search - поиск по меню выставленных цен - - зеленый цвет - это коэффициент лимита - - красный цвет - это лимит
#- - белый цвет - это цена - Примечание - - Трейдеру нужен контейнер, для этого нужно создать контейнер в разделе контейнеров, а айди контейнера указать в нутри бота в разделе "дополнительное" в поле "идентификатор контейнера", чтоб контейнер не исчезал укажите в нем время жизни например 30 дней и поставьте галочку "спавнить при старте сервера* контейнер должен находится не дальше 1км от бота - - Вещи для продажи - трейдер продает лут только из контейнера, в контейнер можно положить лут самому или через сет, так же контейнеру можно задать владельца который сможет доставать и класть туда лут. - - Limit Coef - эта функция полезна тем чтоб бот давал скидки на лут которого у него очень много одного типа и чтоб очень сильно снижал цену когда покупает лут которого у него много у игроков. - - Разные цены - так как имя трейд меню указывается в диалоге, можно разным игрокам показывать разные цены у учетом например меток. - - Трейдер это бот - трейдер это полноценный бот он может так же атаковать, бегать, брать ящик и все что захочет админ чтоб бот сделал.