Jump to content
Korean Random
TurinDeNar

[Формула расчета шансов на победу / Chance to win formula]

Recommended Posts

А раньше так делали?

 

Вообще формулу по технике я вижу так: если на технике достаточно много боев, то для данного игрока берем xte, если мало, то xwn8 (ну или пропорцию делать в зависимости от количества боев). Но проблема в том, что на разных уровнях боев соотношение между рейтингом на аккаунте и рейтингом на танке разное. На высоких уровнях рейтинги на танках будут почти всегда ниже рейтинга в целом по аккаунту. В итоге в примерно равных командах шанс будет выше у той, где больше игроков с малым количеством боев на танках (у них идет в зачет глобальный рейтинг, а он скорее всего выше). Поэтому так делать нельзя. Хотя раньше может было также или хуже, я особо не смотрел.

Ну раньше по сути так и было...

if Et >0 then Eb = (((3/5 * Et* Krt) * (Krt + Кtb)) + ((2/5 * Ean * Kra) * (Kra + Кab))) * (Kra + 0,25 * Klvl); else Eb= ((Ean * Kra) * (Kra + Kab)) * (Kra + 0,25 * Klvl)

Если рейтинга по танку не было, то считалось только по общей эффективности по аккаунту.

Share this post


Link to post

Short link
Share on other sites

Я не против, давайте не просто смешивать 40 капель одного и 60 капель другого, а делать как Турист совмещал (не в курсе правда как). Но совмещать в любом случае нужно раз появилась такая возможность.

 

Ну как бы оно само и шло к этому. Турист делал так, он заранее формировал группы машин, по которым допустимо совмещать стату танков.

 

Грубый пример, берем например Т-54. Он входит условного говоря в группу СТ-9, включающую в себя все СТ 9-го уровня, это группа 0-уровня. Затем к его группе ближайшими являются группы СТ-8 и СТ-10, это группы 1-уровня. Остальные группы либо не имеет вообще ни чего общего с ним, например группа ПТ-10, либо слишком далеки по характеру боев, по уровню техники, по ттх техники и т.д. и т.п. 

 

Далее по акк игрока ишются все машины 0-группы СТ-9 и стата на них "усредняется на прямую" со статой на Т-54. В результате получается стата Т-54 с учетом общей статистики игрока на танках группы СТ-9.

 

Затем делается поиск танков в группых 1-уровня. И их стата тоже "усредняется" с рассчитанной ранее но уже с неким корректирующим коэф..

 

И вот в итоге на выходе мы получаем стату игрока на Т-54 с учетом его общего умения по акканту водить танки близкие к Т-54.

 

ЗЫ: Турист в свою очередь делал это с целью скорректировать % побед на танке с учетом похожих танков

Share this post


Link to post

Short link
Share on other sites

Ну как бы оно само и шло к этому. Турист делал так, он заранее формировал группы машин, по которым допустимо совмещать стату танков.

 

Грубый пример, берем например Т-54. Он входит условного говоря в группу СТ-9, включающую в себя все СТ 9-го уровня, это группа 0-уровня. Затем к его группе ближайшими являются группы СТ-8 и СТ-10, это группы 1-уровня. Остальные группы либо не имеет вообще ни чего общего с ним, например группа ПТ-10, либо слишком далеки по характеру боев, по уровню техники, по ттх техники и т.д. и т.п. 

 

Далее по акк игрока ишются все машины 0-группы СТ-9 и стата на них "усредняется на прямую" со статой на Т-54. В результате получается стата Т-54 с учетом общей статистики игрока на танках группы СТ-9.

 

Затем делается поиск танков в группых 1-уровня. И их стата тоже "усредняется" с рассчитанной ранее но уже с неким корректирующим коэф..

 

И вот в итоге на выходе мы получаем стату игрока на Т-54 с учетом его общего умения по акканту водить танки близкие к Т-54.

 

ЗЫ: Турист в свою очередь делал это с целью скорректировать % побед на танке с учетом похожих танков

Чета я если честно не совсем представляю, чем нам это может помочь в плане выработки решения по правильному смешиванию двух "исходных компонентов" в виде общей эффективности по аккаунту и эффективности по танку. Мне кажется это немного из другой области. Необходимости в корректировке рейтинга по танку у нас нет никакой, так как он в отличии от возможно "накрученного в взводах процента побед" (с чем в основном и боролся Турист) реально отображает эффективность использования игроком возможностей конкретного танка.  

 

sech_92 это уже точно из другой области:) Считаем что у нас для основы есть достаточно адекватные рейтинги xTE и xWN8. Вопрос лишь в том, как правильно совместить и учесть в формуле два рейтинга кроме как предложенного в шапке темы банального учета долей. 

 

Как мне кажется, если нас не устраивает предложенный принцип долевого смешивания компонентов, то нужно идти по пути предложенному seriych, и при наличии рейтинга на танке брать его за основу без учета общей эффективности по аккаунту, а если рейтинга по танку нет, то тогда по общей эффективности. Т.е. за основу расчета брать xTE, а для дополнительного расчета (в случае отсутствия xTE) брать xWN8. Все таки результат боя напрямую зависит от того, как игрок играет на том на чем вышел в бой "здесь и сейчас", чем от того как он играл/играет на другой технике. Как вариант вроде и неплохо, хз...

Edited by TurinDeNar

Share this post


Link to post

Short link
Share on other sites

Странника надо дополнить ссылкой, я думаю.

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

нужно идти по пути предложенному seriych, и при наличии рейтинга на танке брать его за основу без учета общей эффективности по аккаунту, а если рейтинга по танку нет, то тогда по общей эффективности

Но надо как-то решить описанную проблему с неравноценностью глобального и танкового рейтингов на разных уровнях боев. Хотя может проблема и не такая серьезная.

Share this post


Link to post

Short link
Share on other sites

 

 

Хотя может проблема и не такая серьезная.
 Значит надо её оценить. База данных же у тебя? Сделать какую-то минимальную выборку и посмотреть, есть ли разница между рейтингами на 5, на 10 уровнях и общим. Для обобщенного вывода уже хватит.

Share this post


Link to post

Short link
Share on other sites

Значит надо её оценить. База данных же у тебя? Сделать какую-то минимальную выборку и посмотреть, есть ли разница между рейтингами на 5, на 10 уровнях и общим. Для обобщенного вывода уже хватит.

Я не про это маленько. Я вообще подумал, что в боях на высоких уровнях почти все игроки будут с 100+ боями на танке.

Кстти, выборка по базе не покажет этого. Надо реальные бои смотреть.

Edited by seriych

Share this post


Link to post

Short link
Share on other sites

но почему ты считаешь что она не представляет из себя ничего хорошего? 

Я так не считаю. Просто с бухты-барахты быстро перед релизом менять нельзя, так как поведение новой формулы еще не известно. То что мы тестировали раньше не сильно поможет, надо тестировать заново.

Share this post


Link to post

Short link
Share on other sites

Я так не считаю. Просто с бухты-барахты быстро перед релизом менять нельзя, так как поведение новой формулы еще не известно. То что мы тестировали раньше не сильно поможет, надо тестировать заново.

Макс, а может дополнительно к текущей основной введем еще раз экспериментальную, а? Как предложил seriych. Считаем по xTE (при условии что количество боев на танке больше 100 например). Если количество боев на танке меньше 100, то тогда за основу расчета берем xWN8. Покрутим, потестим, посмотрим что игроки будут писать по реузультату. Реально жалко упускать возможность учета в формуле xTE:( Предпосылки на то, что экспериментальная формула будет более точная чем текущая все есть. 

 

Подумал тут, 100 боев наверно многовато будет, 50 вполне будет - рейтинг уже устаканится полюбому.

Edited by TurinDeNar

Share this post


Link to post

Short link
Share on other sites

Макс, а может дополнительно к текущей основной введем еще раз экспериментальную, а? Как предложил seriych. Считаем по xTE (при условии что количество боев на танке больше 100 например). Если количество боев на танке меньше 100, то тогда за основу расчета берем xWN8. Покрутим, потестим, посмотрим что игроки будут писать по реузультату. Реально жалко упускать возможность учета в формуле xTE:( Предпосылки на то, что экспериментальная формула будет более точная чем текущая все есть. 

 

Стоп! Что значит если кол-во боев меньше 100, то берем... ???

 

Если кол-во боев меньше 100, то данных нет - они не существуют. Вот тут я уже не первый месяц сижу на обсуждении темы. И сам Med433 советует планку в 100 боев увеличить до 300, по причине полнейшей ложности данных, получаемых при кол-во боев меньше 300.

Edited by StranikS_Scan
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

Стоп! Что значит если кол-во боев меньше 100, то берем... ???

 

Если кол-во боев меньше 100, то данных нет - они не существуют. Вот тут я уже не первый месяц сижу на обсуждении темы. И сам Med433 советует планку в 100 боев увеличить до 300, по причине полнейшей ложности данных, получаемых при кол-во боев меньше 300.

Если на технике меньше 100 боев то по рейтингу xTE не считаем, а считаем по xWN8.

300 наверно это уже перебор, я там грешным делом дополнил свой пост планку до 50 боев понизить:))) Но раз там идет такое обсуждение про 300, то понижать может и не стоит:)

Edited by TurinDeNar

Share this post


Link to post

Short link
Share on other sites
Если кол-во боев меньше 100, то данных нет - они не существуют. Вот тут я уже не первый месяц сижу на обсуждении темы.

%побед гораздо дольше устаканивается по сравнению с xTE. Во первых, в xTE гораздо меньше зависимости от остальных 29 игроков. Во вторых, в винрейте одно измерение за бой, в xTE несколько. Урон вообще быстро устаканивается. Фраги скачут побольше, но и влияние их меньше.

Edited by seriych

Share this post


Link to post

Short link
Share on other sites

Включил формулу по танкам. В логе можно сравнить со общей:

 

2015-04-24 21:25:44: [X:030] ========== begin chance calculation ===========
2015-04-24 21:25:44: [X:031] playerNames: Walkmannn, evgenician, 18fanat0694, sT3nz1K, DEDKOSOY, 81sergey666, OREL_S_PRIVETOM, Prapor52, shumaher237, 777WooKiee777, vihr057, Gluk1992, Anders0n, kobrae, 1233334423, melkii_86, DIMAS_TOPOR, NasarovIgor, Farrahabi, DimOneCupe, l_BoJILLle6HuK_l, SAHATKA, 18Ghost, Mity6699, CheckEngine, Zdaz79, Babaak, afonyka, VD_VBH, 3ppzxss
2015-04-24 21:25:44: [X:032] teamsCount=15/15
2015-04-24 21:25:44: [X:033] battleTier=10
2015-04-24 21:25:44: [X:034] Ka=78.04 Ke=79.30 raw=48.88470679535576 percent=49
2015-04-24 21:25:44: [X:035] Ka=63.01 Ke=60.49 raw=52.22863027643017 percent=52
2015-04-24 21:25:44: [X:036] RESULT=Шансы на победу: <font color='#fcfa80'>52%</font>. Уровень боя: 10
2015-04-24 21:25:44: [X:037] ========== end chance calculation ===========

49 - общая

52 - по танкам

Share this post


Link to post

Short link
Share on other sites

Включил формулу по танкам. В логе можно сравнить со общей:

2015-04-24 21:25:44: [X:030] ========== begin chance calculation ===========
2015-04-24 21:25:44: [X:031] playerNames: Walkmannn, evgenician, 18fanat0694, sT3nz1K, DEDKOSOY, 81sergey666, OREL_S_PRIVETOM, Prapor52, shumaher237, 777WooKiee777, vihr057, Gluk1992, Anders0n, kobrae, 1233334423, melkii_86, DIMAS_TOPOR, NasarovIgor, Farrahabi, DimOneCupe, l_BoJILLle6HuK_l, SAHATKA, 18Ghost, Mity6699, CheckEngine, Zdaz79, Babaak, afonyka, VD_VBH, 3ppzxss
2015-04-24 21:25:44: [X:032] teamsCount=15/15
2015-04-24 21:25:44: [X:033] battleTier=10
2015-04-24 21:25:44: [X:034] Ka=78.04 Ke=79.30 raw=48.88470679535576 percent=49
2015-04-24 21:25:44: [X:035] Ka=63.01 Ke=60.49 raw=52.22863027643017 percent=52
2015-04-24 21:25:44: [X:036] RESULT=Шансы на победу: <font color='#fcfa80'>52%</font>. Уровень боя: 10
2015-04-24 21:25:44: [X:037] ========== end chance calculation ===========

49 - общая

52 - по танкам

Макс, я правильно понимаю что "По танкам" там только xTE в основе?

RESULT=Шансы на победу: <font color='#fcfa80'>52%</font>. Уровень боя: 10

Это что "По танкам" отображается в окне загрузки боя?

Edited by TurinDeNar

Share this post


Link to post

Short link
Share on other sites

Макс, я правильно понимаю что "По танкам" там только xTE в основе?

Там наша старая формула, она использует и xTE, и xWN8:

 

var T:Number = Chance.battleTier == 0 ? 8 : Chance.battleTier; // command battle tier = 8
        var Tmin:Number = vdata.tierLo;
        var Tmax:Number = vdata.tierHi;
        var Bt:Number = stat.v.b || 0;
        var Et:Number = stat.v.xte || 0;
        var Rt:Number = stat.v.winrate || 0;
        var AvgW:Number = stat.v.data.avgR || Config.config.consts.AVG_GWR;
        var Ea:Number = isNaN(stat.xwn8) ? Config.config.consts.AVG_XVMSCALE : stat.xwn8;
        var Ean:Number = Ea + (Ea * (((stat.lvl || T) - T) * 0.05));
        var Ra:Number = stat.winrate || Config.config.consts.AVG_GWR;
        var Ba:Number = stat.b || Config.config.consts.AVG_BATTLES;
        // 1
        var Klvl:Number = (Tmax + Tmin) / 2 - T;
        // 2
        var Ktb:Number = (Bt <= 50) ? 0                    //    0..50   => 0
            : (Bt <= 500) ? (Bt - 50) / 1000               //   51..500  => 0..0.45
            : (Bt <= 1000) ? 0.45 + (Bt - 500) / 2000      //  501..1000 => 0.45..0.7
            : (Bt <= 2000) ? 0.7 + (Bt - 1000) / 4000      // 1001..2000 => 0.7..0.95
            : 0.95 + (Bt - 2000) / 8000;                   // 2000..     => 0.95..
        var Kab:Number = (Ba <= 500) ? 0                   //    0..0.5k => 0
            : (Ba <= 5000) ? (Ba - 500) / 10000            //   1k..5k   => 0..0.45
            : (Ba <= 10000) ? 0.45 + (Ba - 5000) / 20000   //   5k..10k  => 0.45..0.7
            : (Ba <= 20000) ? 0.7 + (Ba - 10000) / 40000   //  10k..20k  => 0.7..0.95
            : 0.95 + (Ba - 20000) / 80000                  //  20k..     => 0.95..
        // 3
        var Krt:Number = (100 + Rt - AvgW) / 100;
        var Kra:Number = (100 + Ra - 48.5) / 100;
        // 4
        var Eb:Number = (Et > 0)
            ? (((3 / 5 * Et * Krt) * (Krt + Ktb)) +
                ((2 / 5 * Ean * Kra) * (Kra + Kab))) * (Kra + 0.25 * Klvl)
            : ((Ean * Kra) * (Kra + Kab)) * (Kra + 0.25 * Klvl);
        // 5
        return Math.max(0, Math.min(Config.config.consts.MAX_EBN, Eb));
  • Upvote 1

Share this post


Link to post

Short link
Share on other sites

 

Там наша старая формула, она использует и xTE, и xWN8:

 

Извини что отвлекаю, я там свой пост выше дополнил еще одним вопросом. Если 52% это по этой формуле (по танкам), то она сейчас что, в окно загрузки боя выводится?

Пока не могу загрузить бой - на этом компе где сейчас нахожусь нет клиента.

Share this post


Link to post

Short link
Share on other sites

Извини что отвлекаю, я там свой пост выше дополнил еще одним вопросом. Если 52% это по этой формуле (по танкам), то она сейчас что, в окно загрузки боя выводится?

Да

Если на технике меньше 100 боев то по рейтингу xTE не считаем, а считаем по xWN8.

300 наверно это уже перебор, я там грешным делом дополнил свой пост планку до 50 боев понизить:))) Но раз там идет такое обсуждение про 300, то понижать может и не стоит:)

даже 50 для песка совершенно бесполезен, там xTE вообще не будет влиять на результат

пока что сделал минимум 10 боев для учета xTE

Share this post


Link to post

Short link
Share on other sites

Да

даже 50 для песка совершенно бесполезен, там xTE вообще не будет влиять на результат

пока что сделал минимум 10 боев для учета xTE

Не нужно бояться большого ограничения для песка. Во первых в песке может быть что угодно. А во-вторых, те кто играет там постоянно будут влиять на  результат даже если планку и в 50 боев поставить, а те кто просто его проходит, тех учтет по их XWN8 и все. Вообще песок особая категория в которой бои в основном тащат те, кто там играет постоянно:) А вот для хайлвл, принимать в расчет стату игрока у которого только 10 боев на танке и крайне велика погрешность из-за малого количества боев в силу удачной/неудачной сессии точно не стоит. Были бы крайне интересны мнения других форумчан, но как мне кажется меньше 50 точно ставить не нужно:) Пока чел прокачает стоковый танк, выведет его в топ, станет делать больше дамага чисто из-за топовой пухи 10 боев ему явно не хватит:)

Ну может хотя бы 30 как вариант...

Edited by TurinDeNar
  • Upvote 2

Share this post


Link to post

Short link
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...