Jump to content

BAntDit

Members
  • Posts

    983
  • Joined

  • Last visited

  • Days Won

    4

Everything posted by BAntDit

  1. Я хотел сказать, что дальность обнаружения для одного и того же юнита - это не какая-то постоянная величина, а меняющаяся от кучи всяких условий - зависит много от чего и для разных сенсоров, и для разных юнитов. Сказать точно от чего как зависит я не могу, могу только на примерах говорить: Вот, например, вышка вертолетная, у которой сенсоров нет вообще, есть только тип обнаружения Detection.VISUAL (типа то, что визуально видно) - вот такая вышка на ровном месте видит БТР-80 с расстояния примерно 1200 метров, если этот БТР раньше не спалился, а вот после того как БТР она засекла - можешь уезжать на нем на километров пять запросто, вышка все равно его видеть будет (именно видеть, а не просто знать о его существовании). Плюс ещё зависит от времени, которое БТР будет находится за пределами минимальной дальности видимости, т.е. если не будешь вокруг вышки круги нарезать, а уедешь от неё далеко, то через некоторое время вышка снова будет видеть только на 1200 метров. А вот поставишь вместо БТР-а вертолет в тех же условиях и дальности обнаружения уже будут другие.
  2. Да, можно. Но я сам пока не могу за это взяться. Мне нужно закончится вот это: http://forums.eagle.ru/showpost.php?p=1922118&postcount=294. Вот у меня план работ до выходных (минимальный): Просто очень хочется закончить на этой неделе хотя бы минимум запланированного.
  3. Позволю себе вмешаться: 1. Во-первых, у ботов нет такого стояния видит \ не видит противника. (вернее сказать оно есть, но знание бота о юните противника не ограничивается видимостью этого юнита одним из сенсоров). 2. Во-вторых, нет такого понятия как дистанция обнаружения - нет такого расстояния, которое пересек, и бот начал видеть, пересек обратно и бот перестал видеть. 3. В-третьих, боты в наземных группах имеют общий ИИ на всю группу - знает о цели один юнит группы, значит знают и остальные, даже если юниты далеко друг от друга (это не очень хорошо, но можите воспринимать это как работу средств связи :) ). ---- Знание юнита о другом юните - о конкретном юните противника описывается множеством параметров (и это совсем не те параметры, которые вы видите в Lua-файлах настройки сенсоров - это только аргументы для их вычисления), зависимостей настолько много, что абсолютно бессмысленно на наблюдениях делать выводы о корректности поведения ботов. Бот может не знать о цели и не видеть её, может знать и видеть, может знать, но при этом не видеть (ни одним из сенсоров причем)..., может на время увидеть, а потом от точки последнего контакта предполагать её положение от скорости и направления цели в момент контакта в течение определенного времени и это только очень-очень малая часть из возможных вариантов... --- Существует 100% без всяких кажется. ----- P.S.: если уж хотите обсуждать то как видят боты, лучше сводите разговор в область того как с сенсоры смоделированы. Разговор тогда интересней получится :)
  4. Он был на будущее, т.е. минами я займусь как закончу с ПВО.
  5. Можно передавать любым нужным группам, в том числе наземным. В видео ролике в частности я сижу в БТР-е )
  6. Сейчас сообщения передаются группам используя trigger.action.outSoundForGroup(). Использовать радио эфир для передачи сообщений на нужной частоте тоже можно, но с этим связаны некоторые проблемы: 1. В SSE есть баг с функцией передачи сообщений в радиоэфире, пока этот баг не исправят, возможности передачи в радиоэфире сильно ограничены. 2. Передавая сообщения конкретным группам, можно передавать информацию персонально для нужной группы - вот например азимут на цель я сейчас передаю относительно юнита получающего сообщения и расстояние тоже, а если передавать сообщение в радиоэфир, то его будут слышать все, кто настроен на эту частоту, соответственно азимут и удаление нужно будет уже задавать относительно некоторой контрольной точки (т.е. какого-то общего для всех ориентира). Т.е. сейчас пользователь получив сообщение сразу может понять положение противника относительно себя, а если оно будет относительно контрольной точки, то ему придется соображать, где контрольная точка, как цель расположена относительно её и только потом как цель расположена относительно его самого. 3. Сообщение передаваемые будут слышны для всех - в том числе и для вражеской коалиции, им нужно будет только узнать на каких частотах общается противник и подслушивать :)
  7. Можно и округлить, по сути можно задать любой формат сообщения, сейчас для примера я сделал такой подробный.
  8. Немножко видео, о том как идет работа над новой версией MSF. Сегодня научил ПВО передавать голосом воздушную обстановку и целеуказания любым, каким потребуется, дружественным силам как по событиям, так и по запросу. Сделал, чтобы голосом могла быть воспроизведена любая информация. (Сейчас пока использую стандартную озвучку, которая есть в игре для этого, но её не хватает - пока, конечно, обойдусь тем что есть, потом может займусь переозвучкой.) Получилось прикольно, вот записал немного видео для примера: ---- Фуф..., седне у меня был день впервые за долгое время по настоящему свободный, очень много получилось сделать, если следующие пару выходных выдадутся таким же - выложу новую версию MSF, по крайне мере тот минимум, который должен быть в новой версии, а потом просто буду допиливать постепенно :) По сути сейчас из необходимого минимума все уже реализовано, осталось это дотестировать, дополнить документацию новыми возможностями и изменениями старых и сделать миссию-демонстратор новых возможностей. Тестирование и миссия-демонстратор, это самые крупные задачи, которые осталось сделать, чтобы можно был выложить новую версию.
  9. 1. Уникальным должно быть прежде всего имена групп и имена юнитов, т.к. если произойдет колизия имен, то ранее существовавшие группы или юниты с такими именами будут удалены из игры в момент создания. 2. Идентификаторы групп и юнитов тоже должны быть уникальными, но об этом может позаботится сам движок. Группе можно смело присвоить ИД = 1, юнитам можно присвоить ИД от 1 до N по порядку. Если в момент создания группы произойдет колизия идентификаторов, то движок сам заменит повторяющиеся ИД-шники на уникальные (по факту в этом случае просто происходит замена ИД на имена).
  10. Позже сделаю, пока другие задачи нужно закончить. Триггерную зону можно не создавать, координаты можно получить в момент катапультирования. В ините тоже ничего не надо прописывать , динамические созданные группы через MSF сами добавляются в MSF. Описанный пример перевозки катапультированных пилотов уже обсуждался в этой теме выше, Hitryi его уже даже реализовал вроде: http://forums.eagle.ru/showpost.php?p=1897551&postcount=251
  11. Должна содержаться таблица с описанием группы в том же формате, в котором группы описываются внутри файлов миссии. Если делать все руками: можешь создать новую миссию, в ней разместить нужную группу и сохранить миссию, потом переименовать файл миссии в .zip-архив, вытащить из него файл mission.lua, внутри него найти таблицу с описанием созданной тобой группы - вот эту таблицу можешь скопировать и это и будет той таблицей, которую нужно передать в функцию для динамического создания группы. Если хочешь получить таблицу с описанием программно: можно через env.mission прочитать таблицу любой существующей в миссии группой, скопировать её и передать копию в функцию как аргумент (позже сделаю пример).
  12. По просьбам трудящихся скрипт, создающий дополнительный урон при применении ПТАБ-ов. ptab_hits.lua cluster_bombs_hits.miz
  13. У скрипта доступ не стало к одному из транспортных юнитов. Может кто-то из транспортников неожиданно в зрители вышел или его выкинуло. А часто такое появляется и какая у вас версия MSF - точно последняя?
  14. Нет, в данном случае мы подписались на событие onHit, аргументы данного события не содержат информацию о высадившейся группе. Для того, чтобы группа укрывалась после высадки, нужно подписываться на событие onUnloadCargo, аргументы только этого события несут информацию о высаженной группе. Кстати,в приложенной миссии-примере на это событие подписан один из юнитов-вертолетов, можно точно также подписать БТР-ы и для них тоже будет работать, тогда группа высаженная из БТР-а побежит прятаться, если рядом есть враг.
  15. В прошлый раз, когда выкладывал обновление, случайно перенес в новый файл MSF.lua не все исправления. Из-за этого могут быть глюки (не появляться меню высадки у вертолетов). ----------- Сейчас все исправил, перенес нужные исправления. Исправленная версия доступна для скачивания у меня в подписи. Тем кто уже успел скачать прошлую версию, рекомендую скачать заново.
  16. А я не говорю, про пилотажные сервера, а именно про боевые. Сам на неделе вышел полетать, чтобы увидеть эти знаменитые краши - Итог: зашел на RAF, который к тому времени работал уже два часа, сам отлетал час в итоге так называемых стабильных крашей так и не дождался. На сервере кстати было полно народу: Слово стабильный означает 100% воспроизведение, чего собственно я и не вижу. RLY? - одно дело согласится что краши иногда бывают, другое дело говорить что они стабильно через каждые 10 мин. каталог Saved Games\DCS\Logs из этого каталога сразу поле креша нужно брать файлы: dcs.log и файл с расширением .crash (имя файла выглядит так обычно DCS-<дата и время>.crash) Если при падении сервера на экран ошибка какая-то вылетела, то лучше заскринить и её. + если будет описание хоть какое-то, которое позволит воспроизвести ситуацию предшествующую крашу, то ещё лучше. -------------- P.S.: Стабильность сетевой игры это беда почти всех игр с режимом по сети, а не только DCS-а.
  17. О каких таких стабильных падениях серверов, тем более через каждые 10 мин. идет речь?! По времени работы серверов видно, что большинство из них работает часами. Это вообще от имени владельцев серверов заявление? У владельцев серверов с нестабильной работой есть какие то проблемы с тем, чтобы прикладывать сюда dcs.log-и + краш логи + хоть какие-то наблюдения когда происходят краши? Кроме эмоций ничего больше и не видно.
  18. Обещал сделать пример, реализации автоматической высадки юнитов через обработчики события. Пример, готов. -------- Суть решения: в MSF реализована функция msfUnit.getCargo(self), позволяющая получить ссылку на перевозимый юнитом груз. Условия высадки перевозимого груза хранятся вместе с самим грузом в отдельном свойстве conditions. Суть решения заключается в том, чтобы перехватить момент обстрела транспортного юнита, получить перевозимый им груз через метод getCargo и в это момент записать в conditions такие значения, как будто все условия высадки уже выполнены => группа автоматически начнет высадку. Пример того как это сделать приведен в прикрепленном скрипте с подробными комментариями + прикрепил миссию-пример. В миссии два БТР-а можете погрзить пехоту в них, потом обстрелять БТР и пехота высадится. on_transport_hit.lua cargo_moving_example.miz
  19. Очередной небольшой fix MSF: исправлена ошибка, из-за которой иногда могли не срабатывать обработчики событий onHit (попадания) и onShot (стрельба). ------------ См. пост: http://forums.eagle.ru/showpost.php?p=1911102&postcount=274
  20. Мне для этого нужно оказаться дома за своим домашним компом, а я не знаю когда за ним окажусь - у меня сейчас дома большой ремонт ------ ----- На следующей неделе предположительно....
  21. Я все тестировал на Хью, на Ми-8 тоже должно работать, но у меня нет возможности на нем проверять.
  22. Небольшой fix. Вот эта ошибка: http://forums.eagle.ru/showpost.php?p=1898518&postcount=258 исправлена. Новая версия MSF доступна для скачивания. Ссылка у меня в подписи.
  23. Потому что у вас не обрабатывалось событие S_EVENT_PILOT_DEAD, а в MSF оно всегда обрабатывается.
  24. пока не было времени - в следующие выходные сделаю пример. Мины - это не группы, а стат. объекты их можно будет пачками перевозить и по сколько угодно загружать и выкладывать.
  25. Локализовал. К счастью, это мой баг :) - не придется баг репорт писать )) -------------------- Ошибка в MSF в обработчике S_EVENT_PILOT_DEAD. Происходит следующее: 1. Фигурка пилота остается живой после катапультирования до тех пор пока ты не возьмешь новый Л\А. 2. В момент выхода с сервера эта фигурка дохнет и вызывается событие S_EVENT_PILOT_DEAD. 3. Обработчик события пытается получить ID инициатора события, но поскольку сам инициатор ушел с сервера он этого сделать не может - в результате ошибка. 1. Перед тем как выйти из игры сядь в какой-нибудь Л\А. 2. Завтра постараюсь сделать fix для MSF, чтобы этой ошибки никогда не возникало, ато боюсь что она может вешать сервак и при выходе клиента тоже.
×
×
  • Create New...