Closed MrTGN closed 7 years ago
Так. Что хотел, написал. Осталось только разобраться с одним нюансом. В оригинальном Killing Floor разработчики увеличивали увод ствола от скорости перемещения игрока и от количества HP. Причем так же как и со скоростью, делалось это очень тупо: в зависимости от уровня HP прибавлялось от 5 и аж до 500 единиц к углу поворота камеры при уводе ствола. Это у них получалось путем деления HealthMax / Health и умножением на 5.0. Если у игрока Health = 50, при HealthMax = 100, то ему накидывается 10 единиц. А если Health = 1, то как раз и получается 100 / 1 * 5.0 = 500. При этом, изначальные параметры увода ствола самого оружия не учитывались вовсе. Получалось что у MP5SD по-умолчанию увод ствола вверх 125, в сторону 50. А с этими прибавлениями в крайнем случае становилось аж 625 и 550, что вовсе не соответствует изначальному соотношению величин.
Со скоростью перемещения у них было тоже самое, но я это переписал. Сейчас у меня со скоростью перемещения увод ствола увеличивается на указанный множитель, умноженный на результат деления нынешней скорости перемещения игрока на максимальную скорость ходьбы VSize(AdjustedVelocity) / Instigator.GroundSpeed * (RecoilVelocityScale - 1.0). Единицу я вычитаю из множителя потому что увод ствола будет прибавляться к уже существующему значению по-умолчанию, дабы не уменьшить его, а лишь увеличить на полученный коэффициент.
И вот остается вопрос: стоит ли вообще менять увод ствола от количества HP? Ведь если это делать, то это будет мешать игроку. Так же слишком сильно увеличивать тоже нельзя, ибо это вообще не даст нормально играть. Т.е. получается, что можно увеличивать в пределе 25%. А в этом случае на оружие с маленьким уводом ствола вообще человек не увидит разницы. А самое забавное, что теперь и так есть рандомный диапазон увода ствола, и при рандом чисел из него эти 25% могут перекрыться, и человек не увидит разницы.
В общем очень нужно ваше мнение на этот счет.
Нужно переработать так называемый увод ствола при выстреле. Изначально логику я взял из оригинальной игры и просто оптимизировал её. Теперь же понял, что в ней много недостатков и реши переписать.
Исходя из этого решил написать увод ствола с параметрами минимального и максимального увода ствола вверх, влево и вправо. А так же ввести знание шанса на увод ствола влево. Если значение равно 0,0, то ствол всего уводит в право, иначе есть шанс увода ствола влево. А если это значение равно 1,0, то ствол всегда будет уводить влево.
С одной стороны параметров стало больше и настраивать оружие станет сложнее, зато и сами настройки получаются довольно гибкие. Можно вполне точно описать поведение ствола и его минимальный и максимальный увод ствола в разных направлениях, а так же указать склонность к уводу в ту или иную строну.