Teleporter
Игроки-
Публикации
123 -
Зарегистрирован
-
Посещение
-
Бои
63182 -
Клан
[BOR-P]
Портал игры
- Профиль Teleporter
Достижения пользователя Teleporter
Сержант (5/14)
70
Оценка
-
Если артоводы будут светиться после выстрела, то их существование будет ограничиваться несколькими первыми выстрелами, т.к. их сразу же будут уничтожать в ответ либо артоводы противника, либо любой танк в зоне отрисовки когда на открытых картах (таких как Прохоровка) нет укрытий. Это неразумно. Моё предложение - дать артиллерии режим стационарной позиции для перехода в которую (и из неё) тратится 3 секунды. У арты в стационарном режиме повышается точность стрельбы в 2 раза. Но соответственно и уйти от ответного выстрела по трассеру из стационарного режима быстро не получится. Т.е. повышение точности приводит и к повышению рисков. А то что арта станет имбовать после повышения точности - это заблуждение и объясню почему. У арты огромное время полёта снаряда (часто снаряд летит 3-4 секунды) за которое танк противника успевает отъехать от точки прицеливания достаточно чтобы не получить урона вообще. И второе - чтобы повысить значимость перка "звуковая разведка" - для тех экипажей, у которых этот перк отсутствует, убрать предварительный звук летящего снаряда арты, оставив его лишь за 0,5 секунды до попадания когда времени на отъезд уже не хватит. Тогда прокачка этого перка будет более значима, а так сейчас даже не прокачивая этот перк можно заранее услышать звук и отъехать.
-
После боя пополняются не только снаряды, но также ремки, аптечки, доп.паёк, инструкции (если вы их используете) и т.п. что у вас потратилось в бою. Если ремка или аптечка в бою не использованы, то они останутся, а к примеру доп.паёк потратится в любом случае.
-
А я увидев футбольное поле было обрадовался что снова запустят режим с танковым футболом. Но, к сожалению - нет! А мне он очень нравился.
-
Знания сила! Например, понимая как считается разброс, можно значительно уменьшить разброс своего орудия, применяя простое правило: одновременно двигать только чем-то одним - либо ехать, либо поворачивать корпус, либо водить стволом - в этом случае не будет происходить сложение разброса от каждого вида движения. Это особенно полезно применять на артиллерии и танках с большим разбросом или временем сведения - пока вы едете на позицию - зажимаете правую кнопку мыши (ПКМ), чтобы башня и ствол не двигались. Остановившись, всё ещё держите ПКМ и поворачиваете корпус в направлении цели (чтобы цель оказалась в секторе наведения орудия) и уже став неподвижно, отпускаете ПКМ и наводите орудие - такая методика позволяет примерно в 2 раза сократить разброс орудия и соответственно быстрее сводиться. По этой же причине опытные игроки заранее (ещё стоя за укрытием) наводят ствол на цель, дожидаются полного сведения и только потом выкатываются для выстрела так, чтобы уже не вращать корпусом (чтобы не добавлять разброс). По этой же причине выкатывают на 1-й скорости (т.к. разброс увеличивается пропорционально скорости). Ещё она фишка - когда у вас кританули башню (не орудие, а только башню) и она стала вращаться медленнее - не всегда есть смысл сразу же её чинить: Если у вас не динамичный ближний бой, когда важно успеть довернуть ствол за противником, а стоялово с выцеливанием дальнего противника - тогда медленный поворот башни наоборот уменьшает разброс орудия т.к. он пропорционален скорости поворота башни.
-
Вашу идею понял, но увидел как и у многих других игроков неправильное понимание того, что означает параметр "время сведения" в игре. Это не то время за которое танк полностью сведётся - а время, за которое круг разброса уменьшится в 2,718 раз (это число e=2,71828182845905..., вообще оно бесконечно но для расчетов достаточно округлённого значения). К примеру у танка время сведения =3 сек. Допустим круг разброса был в 20 раз больше - тогда через три секунды он станет меньше в 2,718 раз, т.е. станет кратен 7.36, через 6 сек (он станет ещё в 2,718 раз меньше, т.е. станет кратен 2.7, и лишь через 8,987 сек круг сведения уменьшится до 1, т.е. сведётся полностью. Таким образом время полного сведения определяется по формуле: время полного сведения = Ln(текущий разброс)*время сведения где Ln - это натуральный логарифм. Возьмём Ёлку (ELC Even 90) с базовыми характеристиками: (часть характеристик вы можете посмотреть в клиенте игры, но многие параметры, такие как коэффициенты разброса там не показываются - их вы можете посмотреть на сайте http://tanks.gg ). Когда она стоит неподвижно и полностью сведена, то круг разброса на дальности 100 метров у неё равен 0,36 м. Но стоит ей повести стволом - круг разброса увеличивается. Причём чем быстрее вы ведёте курсор тем больше он становится - если дёрнуть максимально резко, то ствол начнёт поворачивать за курсором с максимальной скоростью 47,98 градусов в секунду (смотри на сайте https://tanks.gg/v13800ru/tank/elc-even-90 параметр "Turret traverse (°/sec)", а в разделе "Dispersion factors" для "turret traverse (+)" указан коэффициент 0.16 - это значит что при максимальной скорости поворота ствола круг разброса станет больше в 7,68 раз ( 0,16*47,98). А если он при этом ещё и поедет то с каждым набранным км/ч скорости круг разброса будет увеличиваться на 0,19 - это значение параметра "moving (+)", т.е. если он наберёт скорость 70 км/ч то круг разброса станет больше ещё на 13.3 раз больше относительно базового. Т.е. если танк будет ехать 70 км/ч и максимально быстро при этом вращать стволом - разброс складывается 13.3 + 7.68 = 20,98 раз. Если он ещё и корпус будет поворачивать это ещё добавит разброс (см. коэффициент "tank traverse (+)" - он умножается на скорость поворота корпуса). При выстреле круг разброса увеличивается в 4 раза (см. параметр "after firing (+)" ). При повреждении орудия текущий разброс увеличивается в 2 раза - см. параметр damaged (× )" . Вот игра и считает в каждый момент времени какой текущий разброс добавляется в зависимости от всех этих факторов (скорость поворота ствола, скорость поворота корпуса, скорость движения, стрельба, состояние повреждения орудия) и если какой-либо из этих факторов становится меньше, то текущий разброс начинает уменьшаться в "е" раз за время сведения.
-
По поводу вашего предложения - вы его не развернули полностью, а по той короткой части, что вы написали - я его суть не понял. Объясните, пожалуйста, подробнее.
-
А вы последствия баланса по скилу осознаёте? Сейчас вас кидает в разные по скилу команды случайным образом, и в среднем половину боёв у вас более скиловый состав, а вторую половину - менее скиловый, но в среднем (при большом количестве боёв) распределение получается одинаковым. А если раскидывать по скилу - то самых скиловых игроков начнёт чаще балансить в самые слабые команды и их процент побед начнёт падать (потому что противоположная команда всегда сильнее а твоя всегда слабее) т.к. в одиночку они все бои не смогут вытянуть. А для слабых игроков будет обратная ситуация - они чаще будут попадать против слабых и чаще выигрывать т.к. в их команде будут для равновесия добавлять более сильных игроков. И в итоге через некоторое время процент побед у всех игроков станет выравниваться примерно к одному значению, и игроков с 75% и 34% побед уже просто не останется - всех подровняет под 48%+-5%. И это несмотря на то, какой вклад игрок делает в бою. Т.е. хоть ты укакайся и тащи бои - тебя всё равно уравняет. А те, игроки которые откровенно вредят собственной команде (34% игроки) их всё равно балансировщик будет поощрять - кидая в сильные команды и подтягивая их результат к средним значениям - это вы называете справедливым? Это однозначно отвадит сильных игроков от игры - кому захочется всегда играть в более слабой команде и наблюдать за тем, как его за все старания игра только наказывает, а бестолочей, не желающих учиться на своих ошибках, поощряет?
-
Так ведь так и сделано в данный момент (рассмотрите график внимательней) - видите первые 10% радиуса - вероятность попаданий в него в 2 раза ниже чем в кольцо от 10% до 50% радиуса - отсюда и частые промахи даже при полном сведении: https://forum-mt-prod.lesta.ru/monthly_09_2025/post-22519702-0-23425600-1758991540.png Именно поэтому и предлагаю чтобы при полном сведении и ещё секунды неподвижного выцеливания алгоритм распределения попаданий заменили на нормальный
-
Ага, и тут же рисует график https://forum-mt-prod.lesta.ru/emoticons/Smile_blinky.gif
-
Уважаемые разработчики! Прошу добавить в игру повышение точности попаданий в случае, когда круг сведения достиг минимума и после этого танк стоит неподвижно более секунды (т.е. когда и корпус и ствол неподвижны). При этом радиус круга разброса не нужно менять - достаточно сменить алгоритм разброса с текущего (с пониженным процентом попаданий вблизи центра) на нормальное распределение. Тем самым (оставив прежний алгоритм до полного сведения) вы исключите большое количество попаданий с вертух - а когда игрок полностью свёлся и хорошо прицелился - это вознаграждается попаданием туда, куда целился. https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-89328600-1759927359.pnghttps://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-58154300-1759927420.png
-
https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-97575200-1759727806.png Реализация трёх вариантов вычисления интеграла (методом трапеций, методом Симпсона (парабол), и разложением в ряд Маклорена) приведена в Excel-файле: http://cdn-frm-ru.lesta.ru/4.6l/style_extra/mime_types/doc.gif Вычисление интеграла 3 способами.xlsx 49,36К Функция на исследуемом отрезке рассматривается как сумма простых функций fi(x), каждая со своим коэффициентом aiт.е.: https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-48104000-1759792636.png Например, в виде многочлена: https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-88913200-1759792713.png В этом случае, взяв значения n-точек графика (xi, yi) и подставив их в уравнение вида: https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-85136800-1759792796.png Мы получим матрицу, решив которую мы найдём коэффициенты ai Решение возможно различными методиками – я для решения использовал метод Гаусса (макрос в xlsm-файле - https://cloud.mail.ru/public/Q5rV/NU2C2ubwd). Вместо функций xn можно подставлять и другие элементарные математические функции (1/x, Корень(x), Ln(x), ex, и т.д.) если вы видите по графику что эти функции больше подходят. Для случая с поиском функции R(x) для нормального распределения подобрать одно короткое уравнение для всего множества значений не удаётся, т.к. график при приближении к 1 резко стремится вверх (если бы мы рассматривали весь диапазон чисел, а не ограничивались значениями от 0 до 1 то график бы вообще стремился к бесконечности) и для получения значений с требуемой точностью потребуется многочлен как минимум из 25-30 элементов (я для пробы подобрал функцию по 16-ти точкам и даже с таким количеством элементов погрешность вблизи единицы достигала 0,05 (а это многовато – при проверке на графике нормального распределения эти погрешности заметны (см. на рисунке - R(x)=0,375671592765802*x+0,14110597611776*x^3-3,12888304182395*x^5+92,0450211965136*x^7-1440,47820247473*x^9+13983,7655249723*x^11-90454,7355840174*x^13+406763,967960942*x^15-1303717,17055792*x^17+3015459,36369667*x^19-5040848,11728308*x^21+6027759,54399308*x^23-5023191,85046759*x^25+2768931,5365855*x^27-906904,212700489*x^29+133569,954118672*x^31). https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-58472400-1759793260.png Поэтому, чтобы уравнение было коротким (дабы сервер игры не тратил много ресурсов на длинные вычисления), его следует разбить на несколько отрезков – в этом случае каждый из отрезков можно подобрать более точно. Но для того чтобы отрезки плавно переходили из одного в другой (без изломов/перегибов), следует в точке перехода подбирать одинаковую производную – тогда линии будут соединяться под одним углом (без излома). Например, на отрезке от 0,75 до 0,9 я использовал разложение по 3 точкам и двум производным (одну в начальной, а другую в конечной точке отрезка): https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-09566500-1759793444.png Производные вычислены благодаря второму свойству обратной функции.
-
Для тех, кто не в теме и любителей математики и программирования: Для имитации случайного отклонения снаряда от центра прицеливания чаще всего берут пару случайных чисел, на основе одного из которых выбирают радиус R(расстояние от центра мишени до точки попадания), а второго - угол отклонения α. https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-13045100-1759723447.png Стандартная функция генерации случайного числа формирует числа, равномерно распределённые по всему диапазону формирования. И если подставлять её напрямую как R=случайное число, то на всём диапазоне расстояний вы получите одинаковую плотность попаданий: https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-32897200-1759723511.png А в реальности распределение плотности попаданий имеет так называемое «нормальное распределение» - когда вблизи центра вероятность попаданий максимальна, а чем дальше от центра, тем меньшее количество попаданий. Функция «нормального распределения» описывается формулой: https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-76936200-1759723659.png Где µ - среднее значение, σ - среднеквадратическое отклонение Т.к. в нашем случае среднее значение µ равно 0, то упростив получаем функцию: https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-35587800-1759723766.png Если взять первообразную от функции φ(x) то получим функцию распределения Ф(x), показывающую сколько попаданий будет в пределах от 0 до X https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-95033500-1759723861.png Её график очень похож на график переходного процесса, хорошо знакомый студентам технических ВУЗов (но лишь похож):https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-59248300-1759723974.png m– это масштабирующий коэффициент, позволяющий привести площадь фигуры на диапазоне от -∞ до +∞ к 1. Если брать только половину графика от 0 до +∞, тогда для приведения к единице масштабирующий коэффициент следует брать в 2 раза больше, https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-87379500-1759724348.png Получить интеграл от φ(x) в виде конечной комбинации элементарных функций пока не удалось (кстати именно эту функцию рассматривали в фильме «Одарённая» 2017 г. - можете глянуть тот самый фрагмент фильма - https://www.youtube.com/watch?v=0Ne1R94mFrA&t=6s). Как же был получен его график? Это возможно несколькими путями: 1) Численное интегрирование: А) Методом трапеций (когда вся площадь разбивается на ряд трапеций): https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-59038500-1759724454.png https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-73851000-1759724518.png Вычитаемое в конце формулы - это примерная погрешность, где f´´( ξ ) - вторая производная функции в точке, где она максимальна. Например, в случае разбиения нормальной функции на 100 отрезков в промежутке от 0 до 1 мы получаем шаг h=0,01 – этим методом у меня получилась погрешность 0,00042 (4,42E-05) Б) Методом Симпсона (когда график на промежутке из каждых трёх равноотстоящих точек заменяется на параболу, т.е. уравнение вида y=Ax2+Bx+C https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-65333600-1759724618.png А площадь для параболы вычисляется по формуле: https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-56860900-1759724697.png Этот метод даёт лучшую погрешностьhttps://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-91495700-1759724760_thumb.png, в моём примере погрешность не превысила 0,000000007562 (7,56203E-09) В) Методом Ньютона-Котэса (в этом случае график на каждом из участков заменяется кривой по 7 точкам разложения): https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-58153100-1759724829.png 2) Но максимальную точность позволяет получить разложение исходной функции в ряд Маклорена: https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-21909500-1759724911.png https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-41570500-1759724955.png Тогда для нормального распределения мы получим: https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-82391800-1759725106.png https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-05978600-1759725190.png А уже от ряда интеграл вычисляется легко: https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-43390700-1759725313.png И в итоге получаем ряд для функции распределения, напомню, что https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-69095200-1759725478_thumb.png https://forum-mt-prod.lesta.ru/monthly_10_2025/post-22519702-0-33286100-1759725543.png А m-это масштабирующий коэффициент, который позволяет привести график к 1 когда x=∞. Но так как в нашем случае все случайные числа располагаются в диапазоне от 0 до 1, то нам нужно подобрать такой коэффициент m– чтобы график стал равен 1 при х=1. Как видно из уравнения ряда – коэффициенты ряда при увеличении n становятся всё меньше в результате деления на n! и когда величина очередного коэффициента станет меньше чем требуемая погрешность, дальнейшие вычисления можно остановить т.к. требуемая точность уже достигнута. Например, в Excel-е максимальная точность это 15 знаков, соответственно если я возьму σ=0.3, то требуемую точность я получу уже при n=35 (ну для различных значений σ я взял с запасом ряд из 45 элементов). Итак, график функции распределения y=Ф(х) мы получили. А теперь требуется найти обратную функцию y=R(x), такую, чтобы: R(y)=Ф(x). Эта функция и будет тем уравнением, в которое нужно будет подставлять случайное число чтобы получить нормальное распределение попаданий. У обратной функции есть такие свойства: 1) Она симметрична графику исходной функции относительно прямой y=x, т.е. её график мы можем построить, используя координаты точек графика исходной функции Ф(x), но поменяв местами Xи Y в каждой точке. 2) Производная обратной функции в точке Y, равна 1 делённой на производную исходной функции в точке X, т.е.: R´(y)=1/Ф´(x) А т.к. производной Ф´(x) является функция нормального распределения φ(x), то получаем: R´(y)=1/φ(x) Используя эти свойства, мы получим все координаты графика y=R(x) и производные функции R´(x) в каждой точке графика. Используя это, можно подобрать уравнение функции R(x). Как это делается?
-
Ежели это правда, тогда смысла действительно нет, единственная польза в тренировке мозгов
-
Может и так, но я сужу с точки зрения игрока и мне больше хочется чтобы больше снарядов попадало туда, куда я целю, а не куда-то рядом. И судя по всему разработчики тоже не против этого - сам патч 1.36.1 был именно шагом навстречу желаниям игроков, которые жаловались на то, что снаряды летят куда угодно (в землю, в воздух, в более бронированную часть танка), но не туда, куда целишь. А чтобы КВ-2 с вертух не попадал ему для этого напрямую в параметрах орудия круг разброса увеличили и скорость сведения снизили.
-
Уважаемый Rhot у меня всё в порядке, и вам того же желаю. А вы видимо не полностью всё прочитали и проанализировали (возможно не прошли по ссылке и не изучили график со статистикой попаданий). Та реализация распределения, которая была в патче 1.36.1 и которая как вы пишете вас устраивала, давала проседание по попаданиям вблизи центра, т.е. в круг примерно до 0,1 радиуса снаряды летели в 2,5 раза реже чем должны были бы при нормальном распределении. Для наглядности посмотрите как выглядит график "нормального распределения" - и сравните с собранной статистикой попаданий.https://forum-mt-prod.lesta.ru/monthly_09_2025/post-22519702-0-12626300-1758990899.png