Сразу спасибо за столь подробный отчет. Ниже некоторые замечания и уточнения.
Частично это есть и сейчас. Так, у каждого командира отделения есть бинокль, через который он время от времени обозревает местность. К сожалению, данный функционал не отражен в интерфейсе, поэтому не очевиден, но сам процесс наблюдения через бинокль реализован. Кратность и поле зрения бинокля соответствуют прототипам. При этом сам алгоритм видимости и обнаружения оперирует не какими-то вероятностями, а угловыми размерам цели, т.е. если угловые размеры цели больше определенного порога она обнаруживается , если меньше , то нет.
Тут ведь есть какая заковыка - игрок. Он то вполне может запомнить точное расположение обнаруженных целей, и использовать стрельбу с закрытых позиций не по цели, а по рядом расположенной точке поверхности земли. В принципе можно говорить о введение дополнительных штрафов на стрельбу с ЗОП если данную точку поверхности не видит ни расчет, ни какой-то специальный "разведюнит".
Лично мне бы очень хотелось чтобы вышеописанное было у нас реализованно, но пока есть некоторые сложности.
Именно.
Вот тут не понял. Я расскажу как у нас осуществляется прицеливание и поражение, а вы если можно, поясните как вы видите улучшение данного алгоритма.
1. Обнаружение цели, оно происходит по вышеописанному алгоритму, угловые размеры больше предела- видим.
2. Прицеливание. Солдат наводит оружие на цель, ЕМНИП, в центр проекции цели (соответсвенно размеры проекции лежачей и стоячей фигуры разные). Далее, данная линия прицела сдвигается на величину ошибки прицеливания (зависит от используемого оружия и стрелковых навыков солдата, задается в настройках оружия и представляет собой кусочно-линейную функцию) . Ошибка прицеливания, при следующем цикле уменьшается, если цель до следующего выстрела осталась неподвижна.
3.Выстрел. При выстреле траектория пули также сдвигается на величину уже технической кучности оружия. Ошибка от выстрела к выстрелу не уменьшается. Функция линейна от расстояния.
Несколько не так, хотя смысл похожий. Мы не можем трассировать каждый осколок снаряда, так как их потребное количество помноженное на десятки и даже сотни взрывов введет в ступор любой комп.
Поэтому используется вероятностная модель. При взрыве каждый снаряд формирует 2 сферы поражения. Фугасную и осколочную, первая сфера наносит определенный урон всем объектам попавшим внутрь нее, но величина урона спадает от центра к краям сферы, за ее пределами повреждений не наносится. Вторая осколочная , наносит фиксированный урон, но с определенной вероятностью, которая также спадает от центра к краям. Кроме того на данные вероятности и величины влияют специальные коэффициэнты, так положение солдата (стоя , на колене, лежа) уменьшает вероятность нанесения осколочного урона , стоя и лежа различаются в три раза, насколько я помню. Если солдат в окопе также вероятности еще больше уменьшаются.
У игровой механики свои правила, поэтому простые решение не всегда самые лучшие.Полностью отключить возможность стрельбы по одиночным пехотинцам отключить просто, можно даже сделать небольшой мод, но это приведет к различным курьезам. Сейчас есть специальная 3х мерная таблица приоритетов каким снарядом по какой цели из какого оружия стрелять, и она корректировалась много раз, и результат есть некий компромисс между реалистичностью и играбельностью. Насчет формы осыпи написал выше. Ее корректировать тяжело, но можно менять вероятности поражения. Какие бы вы дали коэффициэнты в зависимости от положения пехотинца ? Если принять положение стоя за 1.
Вы имеете ввиду артподдержку из-за карты ? Там в зависимости орудия которое осуществляет поддержку разная техническая кучность. За КВО спасибо.
Если отдохнете и еще чего напишите, буду благодарен.