Пули и экраны

Тут разработчики недавно задвинули , что мол "мы хотим прострел хитскана после поникновения с 2х до трех метров поднять , но это нагрузит игру , вобщем потестируем , то да се , ба бла бла "

А я вот думаю - ну допустим в деталь с 25 хп попали две пули с уроном в 15 , одна встряла , а вторая вылетела с 5 урона дальше …ну и нафиг она нужна ? когда следом еще штуки три по 15ть туда летят ?
Мб хитскану прострел вообще не нужен , например тем же дробовикам ?
Убрал бы вообще или же сократил наоборт еще до 1 м или даже меньше .
Че мыслите ?
ПС вечно они мудрят на ровном месте , зато блин на простом спотыкаются …

ИМХО. Больше прострела богу прострела. Потому что если не дать прострел, привет лафет впитывающий неприлично много урона.

По предложению. Передавать урон по швам. Всё что превышает ХП детали, распределяется по прикрепленным пинам. Если урона получается меньше чем 1/пин - не наносить. Попутно даст эдакий микрорезист плотно лежащим панелям.

Хитскан кидает луч от орудия по вектору прицела.
Допустим, луч кидается каждые 0.33 секунды (3 тика в секунду - окей).
Итак, мы кидаем луч, в этот момент мы опрашиваем все объекты попадающие на луч, для удобства, длина луча фиксирована (т.к. хитскан орудия имеют конечную дальность).
Дальше возникает вопрос этой самой длины. Возьмем какие-нибудь сферические в вакууме 310 метров
(Почему 310? Мне так удобнее).
Отлично. Мы знаем конверсию пинов в метры (не суть важно какая она).
Дальше, привет поиск, для удобства, прямой. С шагом в 10 метров, нулевая точка - 5 метров от ствола.
На каждый шаг мы опрашиваем по 5 метров в каждую сторону, спрашивая “деталь есть?”. Спрашиваем с шагом в пин.
Исходя из на коленке видимых значений, метр это примерно 3-5 пинов. Соответственно на каждую процедуру поиска нам потребуется дополнительно 50 опросов (запомним это число).
Для отрезка в 310 метров нам потребуется сделать 30 шагов, что приведет нас к 1500 операциям по опросу в каждую сторону (исходя из того, что 1 пин ~20 см).
Отлично, 1500 операций, запомнили.
Для любой стрельбы это минимум. Вне зависимости от прострела.
Поскольку определяем мы в момент стрельбы и идем от ствола в среднем будет требоваться меньше операций (т.к. на предельную дистанцию лупят меньше).

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

То есть при стрельбе на 160 метров, для прострела в 15 пинов сложность расчета увеличится на 10%, относительно стандартного попадания.
И будет всё ещё меньше стокового просчета попадания.

Вывод? Прострел добавить максимально легко, привет трассировка лучей.

Допустим у нас 16 (!!!) игроков с 4 пулеметами каждый.
Они все стреляют.
Для каждого игрока требуется просчитать луч.
Как мы уже посчитали, предельная нагрузка 4500 (1500*3) операций на 1 ствол в секунду.
Всего у нас 64 ствола. 288000 операций.

Вывод? Движок говна, спасибо, расходимся.
Банальная дискретизация каста луча не до контакта, когда обсчитывается буквально каждый пиксель трехмерного матричного пространства, а с шагом в пин экономит дохуялиард расчетов.

Если исходить из стокового raycast, то после пробития, если урона хватило на то чтобы пробить деталь, мы снова вынуждены кастовать тот же луч, на предмет попадания в следующую деталь, передавая уже иной урон вместе с этим лучом.
Что как бы х2 требований по производительности, но никак не ограничивается по глубине, потому что луч.

Вывод? Движок говна, расходимся.

P.S.

Для справки, напомню, “частота” процессора обозначает количество проводимых операций в секунду и измеряется в ГГц. ГигаГерцы. Для тех кто в танке, гига - это МИЛЛИАРДЫ.
Т.е. буквально 1 серверный xeon, со своими 2.8 ГГц, сможет на 1 ядре (из 8/16) обсчитывать примерно тысячу одновременно шмаляющих групп по 16 (!!!) игроков с 4 пулеметами.
64000 пулеметов. Сомневаюсь что у кросса есть такой онлайн.
(Повторюсь. 1 ядро. Одного проца. Привет, оптимизация кода)
(Да, технически нужно чуть больше взаимодействий т.е. это как бы не 4500 операций на каждый луч, но ещё выделение памяти, нахождение вектора прицеливания, проведение по нему необходимых проверок, нанесение урона и т.д., что по факту снижает итоговую производительность в разы (а скорее всего в десятки раз), но тем не менее, алгоритмическими упрощениями код хитскана можно довести до крайне примитивного и простого, иной разговор, что это сложно реализовать, но камон:
Найти вектор по начальной и конечной точке - алгебраическое соотношение координат.
Пройти по этому вектору с шагом в Х - элементарно.
Определить что опрашиваемая единица пространства не является “пустой” (буквально поймать коллизию) - тоже довольно просто (для удобства все модели коллизий можно сводить к базовым кривым).
Хранить на сервере данные о том, где находится крафт игрока и какие на нем детали и так необходимо.

Вопрос реализации. Красиво разлетающиеся ошметками пепла детали после лазерного луча намного сложнее чем элементарная стрельба.

а вот когда у тебя в секунду по 15 пуль попадает - там уже нехилая разница идет в потере урона, об этом ты не подумал?

подумал ,после отлома детали ( и потери ахтыжбожемой 5и урона ) - остальные летят дальше с полным уроном как бы , а вот почему ты не подумал ?

сложна , не читал …но решетки так же работают как и сейчас , речь идет о пустом пространстве , после прохождения детали

ок, еще раз. основная проблема тут заключается в решетках, а не в обычных, непростреливаемых деталях. решетки на тест-сервере (и на первой, и на второй итерации) все еще были крайне эффективны против пулемеов.

у тебя есть условных 3 пукомета - каждый наносит 8 урона с пульки и выстреливает по 6 пуль в секунду.
или же (8 × 6) × 3, получаем 144 урона в секунду
у того же лафетика (а обнова нацелена ИМЕННО на нерф решеточной брони) 38 хп, но из-за резиста в 90% (т.е. весь входящий урон, кроме таранного, делится на 10) мы наносим ему 14.4 урона в секунду вместо 144

а остальные 129.6 в секунду просто пропадают В НИКУДА

при этом скорпиончики там, автопушечки, да и вообще все оружие, у которого есть огнестрельный тип урона и которое не хитскан, дало бы этой решетке 10% урона, а потом начало адово разрывать все, что эта решеточка пыталась защитить. Но пулик в такое не сможет.

ну это конечно проблема неимоверная - нерф решеток мб ? не , ну нет …зачем
можно спокойно 50% резиста вместо 90 выдаь

к тому же пулеметы про точность , так что стрельба по решеткам , это при iq < 80 …проблема блее надуманная , нежели серьезная …в отличии от ситуации снаряд-решетка

решетки понерфили, но не против пуликов.

ты вообще в игру заходишь выше 6к ом, или так, по приколу на фарм-эмке катаешь? сейчас на высоких омах есть “клешнекрафты”, предположим, на каралках - это одни сплошные решетки в форме клешни с оружием посередине, их там тупо даже 1 на 1 не побрить, если у тебя аим не на золото. по ховерочкам ты ему тоже не можешь стрелять, тебе нужно сначала снять массив решеток, чтобы как-то добраться до оружки - и потом ты ловишь сюрприз в виде отвала, стоящего на омамори, который тоже защищает оружие

есть штука которую точно убирать не будут - упрощение коллизии , где всякие выемки считаются как плоскости , я же уже говорил тебе , сколько можно , все эти кепки , клешни , итд итп - следствие этого момента
ну скок можно то ? одно и тоже повторять
и я хз как тебе прострел в три метра поможет сбрить оружие за такими “клешнями” ? ты вобще зачем про это написал ? типа вот после решеток отвал больше получать будет урона , и нагиб пойдет ? потому давайте игру усложним всем , причем именно технически ? :clown_face:

1 лайк

Мыслить? А как это?

Предлагаю удалить ховеры

2 лайка

чисто в образовательных целях
пин в игре официально приравнен к имперскому футу, 30,42 см
зачем и почему, кто здесь британский шпигун, на кого работают тургемы - неизвестно
но про размерность в игре данные абсолютно точные

у меня есть такое чувство, что форумные дебилы соревнуются на номинацию “скажи как можно больше лютой дичи, при этом говорить её надо так, будто ты на 100% прав, а все остальные тебя не понимают ибо лой айкью”…

Спойлер

image

крафт чисто для примера, у некоторых там либо по 3, либо даже по 4 слоев решеточек.
так вот, 1 каратель наносит 12 урона, а 1 буря наносит 24, т.е. 2 карателя = 1 буря
чтобы ломануть чисто отвал, стоящий на омамори, с двух бурь мне нужно 15 тычек
какую-то часть урона заберут три слоя решеточек (конкретно - 27.1%), и в итоге мне нужно будет сделать всего 19 тычек

однако весь прикол, что все мои снаряды бурь пролетят сквозь решетки и я могу сразу хреначить этому билду по отвалу. а каралочкам уже нужно отхреначить СНАЧАЛА ЛАФЕТЫ, ибо снаряды каралки все равно будут пропадать

четырем копралочкам (которые по альфе равны двум бурям, к слову) нужно внезапно 17 тычек, чтобы сбить тот же самый отвальчик. а еще им нужно 9 тычек, чтобы сбить один (!!!) лафетик, учитывая что лафетиков на таких крафтах три слоя, то тебе нужно уже 44 тычек

парам пам пам

не читал , но заявляю , что даже если останется одна единственная такая сборка из всех экраносборок - плевать , это уже вин , остальным будет норм

Скорострельность бурь и каралок несколько разная)

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

все равно, суть в том, что 4 каралки и 2 бури по альфе одинаковы, но каралкам нужно в 2 раза больше тычек сделать по причине рефототьки) хавают весь урон

про 3 каралки vs 3 бури я вообще молчу, там даже скорострельность не поможет

Неужели ты скрафтил каралки? :wink:
Наконец-то, можно поздравить?

Так ты чем недоволен то?)

То что твой экранокрафт пробивать станут или что?)

там написано

Чётче пиши, оформи тему, а не как в флудилку закинул
Пока я вижу что тебе за 2 выстрела по 15 урона ( 30 урона ), где 5 урона тебе нужны, 1/6 урона
А в игре у нас 10 выстрелов ну 2-3 секунды у многих пуликов

Где в общей сумме ты достаточно урона потеряешь =)