SoprachevAK Posted August 11, 2021 Share Posted August 11, 2021 (edited) Мод по сбору внутриигровой статистики Версия 1.0 Сервис который собирает события боя и сохраняет их в базу данных. Любой бой будет начинаться с события загрузки боя, заканчиваться его результатом. Сайт со всей информацией: wotstat.info, там же актуальная версия мода. Просмотр инфографики. Что собирается Событие входа в бой. Время в очереди, в загрузке Выстрел и его результат. Откуда, куда, как полетел трассер, какой результат у выстрела (это урон, куда и в кого попал, поджог ли кого то) Результаты боя. Подробная информация о результатах боя с результатами каждого игрока, его командой Интересная инфографика Распределение выстрелов для серверного и клиентского прицела. 67% снарядов попадает в первую половину сведения. Анализ времени боя по картам, в среднем бои на 8-10 уровнях длятся 7 минут В среднем в ожидании боя (очередь + загрузка + таймер) игроки тратят 36 секунд, что целых 9% от времени игры Анализ урона. Распределение, как будто бы, нормальное, в отличии от выстрелов урон по шотным танкам проходит так же нормально, без подкруток в пользу засейвить шотного. В любом случае на больших дистанциях танки с 1хп остаются так же часто как и с 2хп, так и с 3хп. При победах, топ1 по фрагам делает в среднем 3.5 фрага Турбобои (я определил как бой быстрее 5 минут с разницей во фрагах более 10) случаются, бывает что 4 боя из 10, но в среднем 1 бой из 10 Можно посмотреть лично для себя разбивку по картам, сколько времени вы на них выживаете, сколько урона/фрагов/света делаете Анализ "стримснайперов" даже обычным игрокам довольно часто в бои попадаются одни и те-же люди, но больше полезно конечно стримерам. Исходные данные База данных со всеми актуальными исходными данными открыта на чтение, так что кому интересно, можно прямо на SQL писать любые запросы. А интересных графиков из этих данных можно ещё много построить Подробнее про подключение на сайте, а поиграться можно тут: db.wotstat.info/play?user=public Немного скриншотов графиков Микросервисная архитектура полностью в опенсорс. Список событий github.com/WOT-STAT/Description. (возможно частично устарел) Исходник мода github.com/WOT-STAT/WOTMOD. Чтоб не потерялось Пересечение трассера и разброса url url url Связь выстрела и попадания url Механика отрисовки сведения url Edited February 7 by SoprachevAK 12 @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 11, 2021 Author Share Posted August 11, 2021 (edited) Оглавление (актуально для старой версии < 1.0) Прошлая тема с техническими вопросами Не доказательство подкрутки Генератор случайных чисел как в танках Edited February 7 by SoprachevAK 2 @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 11, 2021 Author Share Posted August 11, 2021 Было бы круто если бы вы покидали сюда функций для хукания (как ссылку на исходный код) которые могли бы быть интересны, на основе их параметров соберу таблицы Я многого могу просто не знать, например как в текущей версии я не знал, что можно через код включить получение серверного прицела, оставив при этом отрисовку клиентского у игрока, и из за этого писал костыли для работы с любым прицелом 2 @ Quote Link to comment Short link Share on other sites More sharing options...
vivikar701 Posted August 11, 2021 Share Posted August 11, 2021 11 часов назад, SoprachevAK сказал: Сегодня я релизнул мод в опенсорс А где? Не нашёл репозиторий. 11 часов назад, SoprachevAK сказал: Посмотреть Как понимать вот эти выстрелы за пределы круга? 11 часов назад, SoprachevAK сказал: я не молодел Мы все не молодеем @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 11, 2021 Author Share Posted August 11, 2021 18 minutes ago, vivikar701 said: Как понимать вот эти выстрелы за пределы круга Таких выстрелов по всей бд 4%, из них 2.3% с дистанции < 50м, и 0.6% с дистанции < 10м, выстрелы полетевшие вне круга исключены из аналитических графиков. Причин их появления может быть 5 Не совсем корректная формула расчёта точки попадания, сейчас круг параллелен плоскости монитора в снайперском прицеле, а надо немного не так Пулемётные танки, когда на одно нажатие ЛКМ вылетает более 1 снаряда, причём первый летит правильно, а остальные хрен знает как, и прицел можно отвести, и сидение может поменяться Рассинхрон между сервером и клиентом, сейчас я записываю трассер снаряда и току в которую человек целился в момент нажатия ЛКМ, если мод записал снаряд непонятно куда, значит человек на клиенте увидел, что он летит непонятно куда, и как говорил Панков "Это нормально" (когда играл часто замечал, что такое случается при стрельбе в упор, круг сведения не совпадает с местом куда смотрит пушка, и не совпадает с тем, куда попадает выстрел) Выстрелы со старой версии мода на серверном прицеле (был баг с его записью, из за этого распределение арты отличается от верного, тк большинство боёв на арте сделано на старой версии) Неверная отрисовка трассера, в новой версии буду считать по точке попадания Quote Трассер это примерная визуализация и рисуется он условно и часто приближенно (тык) 19 minutes ago, vivikar701 said: А где? Не нашёл репозиторий. Забыл добавить, обновил. https://github.com/SoprachevAK/wot-stat 2 @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 19, 2021 Author Share Posted August 19, 2021 (edited) Не доказательство подкрутки Есть различные метрики анализа случайных последовательностей, отличие метрики отдельно взятого игрока от серверного значения может являться следствием подкрути. Сейчас мод умеет записывать траекторию трассера, и считать точку пересечение трассера с маркером прицела на момент перед выстрелом. Точка попадания считается в том месте, где её видит человек из снайперского прицела (разброс -- круг в плоскости параллельной монитору), такой способ не совсем правильный с точки зрения механики разброса, однако близок к нему, и отображает то, что видит человек на мониторе. Хранятся точки в полярных координатах, далее оценивается относительное расстояние (0 означает что снаряд попал ровно в центр прицела, 1 -- снаряд попал ровно на границу сведения). Дальнейшие вычисления проводятся на выборке с 01.06.2021 по 18.08.2021, выстрелы артиллерии исключены (старая версия мода записывала их с багом), режим боя: стандартный 1. Гистограмма распределения: Отображает распределение снарядов внутри круга разброса, на горизонтальной оси -- секции прицела (как на стрелковых мишенях), на вертикальной -- относительное количество выстрелов, попавших в эту секцию (чем выше левые столбики, тем чаще снаряды летели в центр) Я выбрал игрока JlOnATKA, у него 3294 выстрела, построил график распределения и сравнил его со среднесерверным распределением на (58773 выстрелов) Распределения почти совпадают, в пределах погрешности, так что примитивной подкрутки тут нет. В среднем все выстрелы этого игрока летели ровно так же, как летят в среднем по серверу. Постоянная ссылка на интерактивный график 2. Скользящее среднее по подряд идущим выстрелам одного аккаунта Можно предположить, что выстрелы сначала "откручивают", а потом "подкручивают", согласно общему представлению патента кислого "чем лучше играешь, тем хуже летит, чем хуже играешь, тем летит лучше". В среднем будет всё верно, однако должны быть серии подряд идущих "неудач", для этих целей есть график скользящего среднего. Он выбирает N выстрелов, берёт расстояние от центра до точки попадания, и строит среднее по W элементам (точка, стоящая на X месте будет равна среднему от промежутка [X-W, X]. На графике индекс означает сколько выстрелов назад случился текущей выстрел, то есть самый последний выстрел был 0 выстрелов назад, находится справа) Всё по тому же игроку При окне усреднения = 30 уже винды некоторе пики и падения. Что если увеличить окно усреднения: Уже больше похоже на подкрутку, с 715 по 623 выстрел летело "плохо", в среднем в 43% разброса, зато с 577 по 508 выстрел летело "хорошо" в среднем в 36% разброса Постоянная ссылка на группу этих графиков На этом мои познания в мат статистике закончились, и я не нашел ничего лучшего, чем сгенерить выстрелы вручную и посмотреть чё там у заведомо честного генератора. И у него всё примерно так же, для окна в 100 элементов значения прыгают от 0.31 до 0.48, значит этот промежуток можно считать пределами нормы. Синим танки, красным моё. Окно = 100 3. Анализ генератора псевдослучайных чисел. Прошлый способ даёт визуально понять подкрутку по времени путём выявления пиков, выходящих за пределы допустимой зоны, однако если пики внутри допустимой зоны, и частота пиков вверх чаще "нормы", это тоже является подкруткой. Для таких случаев разработаны различные способы анализа качества генераторов случайных чисел, к сожалению, кроме того что они разработаны, я о них не знаю ничего. PS. Я вот писал всё это, и хотел в качестве примера взять аккаунт, на котором настреляно максимум выстрелов, однако топ2 игрока по количеству выстрелов в моём моде это игроки с NA и EU клиентов игры. И вот у них чёртова подкрутка есть даже на распределение. Вот график. И я не знаю, как это объяснить. Сравнить распределение серверов я не могу, тк слишком мало пока что играет не на RU PS2. Прикладываю два csv файла. Full (189к строк) полные данные о выстрелах, Filtered (98к строк) выстрелы за 7 версию мода (исправлены баги), без арты с которой есть погрешность и с убранными выстрелами когда снаряд полетел за пределы круга сведения, для анализа советую использовать именно эту. wot-stat-filtered.csvwot-stat-Full.csv Edited August 21, 2021 by SoprachevAK 2 @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted August 19, 2021 Share Posted August 19, 2021 (edited) 8 часов назад, SoprachevAK сказал: общему представлению патента кислого "чем лучше играешь, тем хуже летит, чем хуже играешь, тем летит лучше" В патенте ничего такого нет, ты зря это пишешь. 8 часов назад, SoprachevAK сказал: PS. Научите меня делать сворачиваемые спойлеры, и я дополню пост алгоритмом генерации чисел с распределением танков. Вручную в своем посте пишешь тэги и после сохранения поста вебсайт сделает спойлер. [SPOILER] [/SPOILER] 8 часов назад, SoprachevAK сказал: И я не знаю, как это объяснить. Красные кривые для EU, NA, RU разные наверно. 8 часов назад, SoprachevAK сказал: Можно предположить, что выстрелы сначала "откручивают", а потом "подкручивают" Надо корреляции искать. Например между разбросом и % побед за сессию. 8 часов назад, SoprachevAK сказал: Уже больше похоже на подкрутку, с 715 по 623 выстрел летело "плохо", в среднем в 43% разброса, зато с 577 по 508 выстрел летело "хорошо" в среднем в 0.36% разброса Если даже исключить все посторонние факторы, то все равно будет также, т.к. неравномерность в графике - это и есть проявление случайности. Что и было доказано тобой путем симуляции. А вот если бы её не было или в графике прослеживалась бы четкая зависимость, то это как раз указывало бы на предопределенность, т.е. не случайные подкрутки - запрограммированные зависимости. Edited August 19, 2021 by StranikS_Scan @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 19, 2021 Author Share Posted August 19, 2021 10 hours ago, StranikS_Scan said: В патенте ничего такого нет, ты зря это пишешь. Знаю. Читал его, по этому и написал согласно общему представлению, а в общем представление патент виноват во всех бедах жизни 10 hours ago, StranikS_Scan said: Вручную в своем посте пишешь тэги и после сохранения поста вебсайт сделает спойлер. Понял. Спасибо. Мне конечно уже рассказали что спойлеры лучше не юзать, они вредны для SEO, но пригодится 10 hours ago, StranikS_Scan said: Красные кривые для EU, NA, RU разные наверно. Ну звучит как единственное логичное объяснение, но конечно странно, что распределение выстрелов разное на серверах, но можно будет потом проверить, когда сделаю новую версию мода, напишу Европейским стримерам, может быть попиарят. 11 hours ago, StranikS_Scan said: Надо корреляции искать. Например между разбросом и % побед за сессию. В новой версии опять таки будет можно, а ещё можно искать корреляции между разбросом, уроном и пробитием. Если предположить, что все выстрелы всегда летят без учёта рандома, всегда в 0.395 от сведения, то для отклонения выборки из 100 выстрелов до 0.43 понадобится 5 выстрелов в самый край, ровно как и для отклонения до 0.36 понадобится 5 выстрелов ровно в центр. Весьма периодичные перепады графика от 0.36 до 0.43, означают разницу в 10 выстрелов полетевших вместо идеального центра в идеальный край. Понятное дело что на самом деле разница будет не в 10 выстрелах центр/край, а в 20+ выстрелах полетевших почти в центр/почти в край Возможно именно это и вызывает ощущение "подкрутки", когда есть серия в которой много выстрелов летят почти в центр, а потом серия, в которой много выстрелов летит в край. Лично для меня всё ещё странно, что бегущее среднее по рандому получись не прямой с шумом, а пилообразным графиком с шумом (я пытался найти ответ, и даже спрашивал знающих людей, но так и не понял) 10к выстрелов -> бегущее среднее по 100 -> фильтр нижних частот И синусоида, так что пики и впадины весьма периодичны @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 19, 2021 Author Share Posted August 19, 2021 (edited) Генератор случайных чисел как в танках Задача. Написать генератор случайных чисел чтоб получить распределение как в танках, каким либо общеизвестным методом оно не описывается. Шаг 1. Берём много выстрелов, можем от сюда и строим по ним гистограмму распределения, пусть на N = 100 столбцов data = readtable("./server.csv", opts); data = data{:,[1,2,3]}; N = 100; h = hist(data(:,3), N); Шаг 2. Находим аппроксимацию полученной гистограммы, экспериментальным путём лучше всего описывается с помощью функции вида a*exp(b*x) + c*exp(d*x) fitResult = fit(linspace(0, 1, N)', h', 'exp2'); [a, b, c, d] = deal(fitResult.a, fitResult.b, fitResult.c, fitResult.d) vpa([a, b, c, d], 30) F = @(x) (a*exp(b*x) + c*exp(d*x)); Шаг 3. Нормируем получившуюся плотность. Интеграл плотности от 0 до 1 = 1, для этого делим функцию на интеграл PDF = @(x) (a*exp(b*x) + c*exp(d*x)) / integral(F, 0, 1); Шаг 4. Находим функцию распределения как интеграл от плотности. В качестве константы при интегрирование вычитаем значение интеграла в 0, чтоб распределение имело значения от 0 до 1 CDF = matlabFunction(int(sym(PDF))); CDF = matlabFunction(sym(CDF) - CDF(0)); Шаг 5. Находим функцию обратную данной, аналитически не вышло, делаем численно. xx = linspace(0, 1, 100); yy = CDF(xx); revCDF = @(x) interp1(yy, xx, x); Шаг 6. Аппроксимируем обратную функцию. Тут хоть сколько нибудь адекватной аппроксимацией получился полином 9 степени (p1*x^9 + p2*x^8 + p3*x^7 + p4*x^6 + p5*x^5 + p6*x^4 + p7*x^3 + p8*x^2 + p9*x + p10) X = linspace(0, 1, N); revCDF = fit(X', revCDF(X)', 'poly9', 'Robust', 'Lar'); [p1, p2, p3, p4, p5, p6, p7, p8, p9, p10] = deal(revCDF.p1, revCDF.p2, revCDF.p3, revCDF.p4, revCDF.p5, revCDF.p6, revCDF.p7, revCDF.p8, revCDF.p9, revCDF.p10) revCDF = matlabFunction(p1*x^9 + p2*x^8 + p3*x^7 + p4*x^6 + p5*x^5 + p6*x^4 + p7*x^3 + p8*x^2 + p9*x + p10); Шаг 7. Готово. Теперь для получение случайных чисел достаточно вызвать revCDF(Rand()), где Rand() генерирует случайное число равномерно распределённое от 0 до 1. Чтоб убедиться строим гистограмму от 10 миллионов случайных чисел и сравниваем с исходной гистограммой histogram(data(:,3), 50,'Normalization','probability'); hold on histogram(revCDF(rand(10e6, 1)), 50,'Normalization','probability'); Результат: Коэффициенты формул: PDF: a = 170303.75999096324085 b = -3.9596481004599288767 c = -169770.0697609304043 d = -4.0490033841995565211 a*exp(b*x) + c*exp(d*x) invCDF: p1 = 60.643177737472981903 p2 = -268.4866364087093870 p3 = 511.04790264076154926 p4 = -545.3738964542347957 p5 = 358.28863739253199583 p6 = -150.0669928063029487 p7 = 40.683377765003896798 p8 = -7.116679640521884842 p9 = 1.3780439852440364845 p10 = 0.0024099699685065862 p1*x^9 + p2*x^8 + p3*x^7 + p4*x^6 + p5*x^5 + p6*x^4 + p7*x^3 + p8*x^2 + p9*x + p10 PDF = 171.67590541705826929*exp(-3.9596481004599288767*x) - 171.13791521967221624*exp(-4.0490033841995565211*x) CDF = 42.266676261003986781*exp(-4.0490033841995574093*x) - 43.356354166199118083*exp(-3.9596481004599288767*x) + 1.0896779051951310802 revCDF = 60.643177737472981903*x^9 - 268.48663640870938707*x^8 + 511.04790264076149242*x^7 - 545.37389645423479578*x^6 + 358.28863739253199583*x^5 - 150.06699280630289195*x^4 + 40.683377765003896798*x^3 - 7.116679640521884842*x^2 + 1.3780439852440360404*x + 0.0024099699685065862145 Полный код в матлаб: clear clc close all syms x opts = delimitedTextImportOptions("NumVariables", 4); opts.DataLines = [1, Inf]; opts.Delimiter = ","; opts.VariableNames = ["VarName1", "VarName2", "VarName3", "VarName4"]; opts.VariableTypes = ["double", "double", "double", "datetime"]; opts.ExtraColumnsRule = "ignore"; opts.EmptyLineRule = "read"; opts = setvaropts(opts, "VarName4", "InputFormat", "yyyy-MM-dd HH:mm:ss.SSS"); data = readtable("./wot-stat-filtered.csv", opts); data = data{:,[1,2,3]}; N = 100; h = hist(data(:,3), N); fitResult = fit(linspace(0, 1, N)', h', 'exp2'); %Исходная аппроксимация [a, b, c, d] = deal(fitResult.a, fitResult.b, fitResult.c, fitResult.d) vpa([a, b, c, d], 30) F = @(x) (a*exp(b*x) + c*exp(d*x)); %Нормируем PDF = @(x) (a*exp(b*x) + c*exp(d*x)) / integral(F, 0, 1); %CDF = integral(PDF) CDF = matlabFunction(int(sym(PDF))); CDF = matlabFunction(sym(CDF) - CDF(0)); %Находим численно обратную xx = linspace(0, 1, 100); yy = CDF(xx); revCDF = @(x) interp1(yy, xx, x); %Аппроксимируем обратную X = linspace(0, 1, N); revCDF = fit(X', revCDF(X)', 'poly9', 'Robust', 'Lar'); [p1, p2, p3, p4, p5, p6, p7, p8, p9, p10] = deal(revCDF.p1, revCDF.p2, revCDF.p3, revCDF.p4, revCDF.p5, revCDF.p6, revCDF.p7, revCDF.p8, revCDF.p9, revCDF.p10) revCDF = matlabFunction(p1*x^9 + p2*x^8 + p3*x^7 + p4*x^6 + p5*x^5 + p6*x^4 + p7*x^3 + p8*x^2 + p9*x + p10); %Рисуем хистограмму для сравнения histogram(data(:,3), 50,'Normalization','probability'); hold on histogram(revCDF(rand(10e6, 1)), 50,'Normalization','probability'); rng(0) window = 100; smooth = smoothdata(data(:,3), 'movmean', window); smoothCorrect = smoothdata(revCDF(rand(length(data(:,3)), 1)), 'movmean', window); figure plot(data(:,1), smooth) hold on plot(data(:,1), smoothCorrect) PDFCDF.m Edited August 19, 2021 by SoprachevAK 4 @ Quote Link to comment Short link Share on other sites More sharing options...
KPOT2338 Posted August 21, 2021 Share Posted August 21, 2021 (edited) Лично мне кажется, что для арты распределение вполне правдоподобно Причина малых отклонений - вырождение круга разброса в эллипс и далее в линию при предельных дистанциях стрельбы Т.е. практически разброс только по одной координате Слева - все выстрелы за 10 боёв Справа - бой с самым сжатым по У распределением снарядов ---------------------------------------------------------------------------------- А вместо 9-й степени Рэлей со смещением от нуля тоже не подходит? Edited August 21, 2021 by KPOT2338 @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 21, 2021 Author Share Posted August 21, 2021 (edited) 5 hours ago, KPOT2338 said: Лично мне кажется, что для арты распределение вполне правдоподобно Причина малых отклонений - вырождение круга разброса в эллипс и далее в линию при предельных дистанциях стрельбы Т.е. практически разброс только по одной координате Слева - все выстрелы за 10 боёв Справа - бой с самым сжатым по У распределением снарядов ---------------------------------------------------------------------------------- А вместо 9-й степени Рэлей со смещением от нуля тоже не подходит? Да, сейчас у меня считается круг разброса как будто это снайперский прицел обычного танка, а надо считать так, тогда и с артой всё будет хорошо Вот подогнанный Рэлей с возможностью масштабироваться и двигаться во всех направлениях General model: f(x) = h*((x-w)/r^2 * exp(-(x-w)^2/(2*r^2)))+t Coefficients (with 95% confidence bounds): h = 0.006437303073 (0.006011, 0.006864) r = 0.3088765974 (0.295, 0.3227) t = 0.003736078162 (0.003328, 0.004144) w = -0.05779067884 (-0.07109, -0.04454) Тоже так себе. Сейчас такое распределение стало, что и экспонентой плохо аппроксимируется, но когда я начинал тот пост писать, экспонентой было норм Наверное аппроксимацию гистограммы надо вообще просто сплайном искать да и всё. Такое падение на 0.05-0.1 тяжело чем то адекватным описать Edited August 21, 2021 by SoprachevAK @ Quote Link to comment Short link Share on other sites More sharing options...
KPOT2338 Posted August 21, 2021 Share Posted August 21, 2021 Вопрос А игроки по серверам разделены или функция общая для всех? А то на картинке с NA и EU графики гладкие, без резких скачков, но явно разные Возможно когда экспонента подходила все игроки были с одного сервера @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 21, 2021 Author Share Posted August 21, 2021 12 minutes ago, KPOT2338 said: А игроки по серверам разделены или функция общая для всех? В этой выборке нет, но во вложениях есть файл с исходными данными в том числе и регионом. Мне кажется сомнительным, что на разных регионах разное распределение рандома внутри одной игры. Это можно будет проверить когда будет больше боёв на других регионах 15 minutes ago, KPOT2338 said: то на картинке с NA и EU графики гладкие Они гладкие пока в них всего 10 секций, если секуции увеличивать появляется сильный шум, и к тому же, это графики не NA и EU сервера, а одного игрока с NA и однго игрока с EU @ Quote Link to comment Short link Share on other sites More sharing options...
KPOT2338 Posted August 22, 2021 Share Posted August 22, 2021 (edited) 23 часа назад, SoprachevAK сказал: В этой выборке нет, но во вложениях есть файл с исходными данными в том числе и регионом. Мне кажется сомнительным, что на разных регионах разное распределение рандома внутри одной игры. Это можно будет проверить когда будет больше боёв на других регионах Странно. Средний разброс отличается для разных танков Например ЕБР-90 44,72% (при 42,16% на РУ и 48,55% на НА) (всего 275 выстрелов (165+110)) А Удес-03 34,64% (при 37,82% на РУ и 32,17% на ЕУ) (всего 370 выстрелов (162+208)) При среднем 39,64% (всего 98703 выстрела) Как погрешность посчитать? Возможно вот у этих разброс лежит за пределом погрешности - у красных хуже, у зелёных лучше Edited August 22, 2021 by KPOT2338 @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 23, 2021 Author Share Posted August 23, 2021 10 hours ago, KPOT2338 said: Странно. Средний разброс отличается для разных танков Например ЕБР-90 44,72% (при 42,16% на РУ и 48,55% на НА) (всего 275 выстрелов (165+110)) А Удес-03 34,64% (при 37,82% на РУ и 32,17% на ЕУ) (всего 370 выстрелов (162+208)) При среднем 39,64% (всего 98703 выстрела) Как погрешность посчитать? Возможно вот у этих разброс лежит за пределом погрешности - у красных хуже, у зелёных лучше Думаю тут всё ещё мало выстрелов, как показали мои эксперименты, среднее для 100 выстрелов может колебаться от 0.36 до 0.43 (погрешность = 7%) для 1000 не пробовал, но допустим в 10 раз меньше, стало быть 0.7% и тогда внутри РУ сервера вроде бы никто сильно и не выбивается Тут есть нюанс доверительного интервала, тк я эти 7% получил на глаз, и хрен знает какова вероятность такой погрешности, так что небольшие отклонения в редких случаях допустимы В принципе методика оценки интересная, надо будет подумать в каком виде её можно внедрить на сайт, но это КТТС, в первую очередь разработка новой версии мода, как только зарелижу, постараюсь договориться с разрабами модпаков, чтоб они добавили. Есть идея дать возможность из других модов добавлять теги на события, а на сайте по тегам фильтровать, получится такая вот бесплатная и достоверная подробная аналитика. Никакая гугл аналитика не скажет с каким разбросом играют на модпаке джова @ Quote Link to comment Short link Share on other sites More sharing options...
KPOT2338 Posted August 24, 2021 Share Posted August 24, 2021 (edited) 23.08.2021 в 03:06, SoprachevAK сказал: Думаю тут всё ещё мало выстрелов, как показали мои эксперименты, среднее для 100 выстрелов может колебаться от 0.36 до 0.43 (погрешность = 7%) для 1000 не пробовал, но допустим в 10 раз меньше, стало быть 0.7% и тогда внутри РУ сервера вроде бы никто сильно и не выбивается Тут есть нюанс доверительного интервала, тк я эти 7% получил на глаз, и хрен знает какова вероятность такой погрешности, так что небольшие отклонения в редких случаях допустимы (0,43+0,36)/2=0,395 0,36/0,395=0,9114 1-0,9114=0,0886=8,86% Т.е. формула для 95% (2 сигмы) вполне подходит: 1/N^0.5 для 100: 1/100^0.5=10% для 1000: 1/1000^0.5=3.2% ----------------------------------------------------------------------------------- А картинка точно ступенчатая Edited August 24, 2021 by KPOT2338 @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 24, 2021 Author Share Posted August 24, 2021 13 hours ago, KPOT2338 said: А картинка точно ступенчатая Выглядит как будто бы да Вообще с увеличением количества выстрелов распределение становится весьма странной формы. @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 24, 2021 Author Share Posted August 24, 2021 Обновил шапку темы, релизнул на гитхаб основу новой версии. Можете глянуть на общую архитектуру и покритиковать её. А можете добавить новые события, по идеи это должно быть изи ту юз. @ Quote Link to comment Short link Share on other sites More sharing options...
SoprachevAK Posted August 24, 2021 Author Share Posted August 24, 2021 А ещё там на WGMods предложили поколлаборировать с другими модниками, так что какие есть предложения по этому поводу? Я думаю что можно добавить возможность другим модам устанавливать теги на события, и тогда можно будет строить графики в зависимости от тегов, что даст как минимум бесплатную аналитику модам. Например можно будет посмотреть с какой дистанции стреляют игроки с тегом "JOVEMODPACK" и сравнить со среднесервеным. На какую нибудь битву блоггеров было бы интересно кто сколько и как играет. @ Quote Link to comment Short link Share on other sites More sharing options...
StranikS_Scan Posted August 25, 2021 Share Posted August 25, 2021 6 часов назад, SoprachevAK сказал: Я думаю что можно добавить возможность другим модам устанавливать теги на события, и тогда можно будет строить графики в зависимости от тегов, что даст как минимум бесплатную аналитику модам. Гугл аналитик у них и там у всех подключен. Не думаю, что раскрывать свою статистику кто-то будет. Иначе бы давно её публиковали бы. Я думаю тебе стоит не распыляться, а сосредоточится на первоочередных задачах. @ Quote Link to comment Short link Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.